Replay logged CAN messages
Vehicle Network Toolbox: CAN Communication
The CAN Replay block replays logged messages from a
to a CAN network or to Simulink®. You need a CAN
Configuration block to replay to the network.
To replay messages logged in the MATLAB® Command window
in your Simulink model, convert them into a compatible format
vntslgate and save it to a separate file.
Refer to the Log and Replay CAN Messages example
Note: You need a license for both Vehicle Network Toolbox™ and Simulink software to use this block.
When you replay logged messages, Simulink uses the original
timestamps on the messages. When you replay to a network, the timestamps
correlate to real time, and when you replay to the Simulink input
port it correlates to simulation time. If the timestamps in the messages
0, all messages are replayed as soon as
the simulation starts, because simulation time and real time will
be ahead of the timestamps in the replayed messages.
The CAN Replay block supports the use of Simulink Accelerator™ Rapid Accelerator mode. Using this feature, you can speed up the execution of Simulink models.
For more information on this feature, see the Simulink documentation.
The CAN Replay block supports the use of code generation along with the packNGo function to group required source code and dependent shared libraries. For more information, see Code Generation.
Vehicle Network Toolbox Simulink blocks allow you to generate code, enabling models containing these blocks to run successfully in Accelerator, Rapid Accelerator, External, and Deployed modes.
You can use Vehicle Network Toolbox, Simulink Coder™, and Embedded Coder®products together to generate code (on the host end) that you can use to implement your model for a practical application. For more information on code generation, see Program Builds.
The block generates code with limited portability. The block
uses precompiled shared libraries, such as DLLs, to support I/O for
specific types of devices. With this block, you can use the
supported by the Simulink Coder, to set up and manage the build
information for your models. The
allows you to package model code and dependent shared libraries into
a zip file for deployment. You do not need MATLAB installed on
the target system, but the target system needs to be supported by MATLAB.
To set up
set_param(gcs, 'PostCodeGenCommand', 'packNGo(buildInfo)');
In this example,
gcs is the current model
that you wish to build. Building the model creates a zip file with
the same name as model name. You can move this zip file to another
machine and the source code in the zip file can be built to create
an executable which can be run independent of MATLAB and Simulink.
The generated code compiles with both C and C++ compilers. For more
Use the Source Block Parameters dialog box to select your message replay options.
Tip Configure your CAN Configuration block before you configure the CAN Receive block parameters.
Specify the name and path of the file that contains logged CAN messages that you can replay. You can click Browse to browse to a file location and select the file.
Specify the variable saved in the MAT-file that holds the CAN message information.
Specify the number of times you want the message replayed in
your model. You can specify any positive integer, including
Inf continuously replays messages until
Specify if the model is replaying messages to the CAN network or an output port. Select a device to replay to the CAN network.
Select the device on the CAN network to replay messages to.
This filed is unavailable if you select
Input port for Replay
message to option.
Specify the sampling time of the block during simulation, which is the simulation time as described by the Simulink documentation. This value defines the frequency at which the CAN Replay block runs during simulation. If the block is inside a triggered subsystem or to inherit sample time, you can specify –1 as your sample time. You can also specify a MATLAB variable for sample time. The default value is 0.01 (in seconds).