- The "CAN Receive" block receives raw CAN messages. It can not inherently understand or manipulate the data content within these messages. To use the received signals in Simulink the "CAN Unpack" block is used.
- In the "CAN Unpack" the individual signal from the CAN messages are read with the functionality of selecting start bit, length , byte order etc which can be error-prone and complex if done manually.
- A CAN message from "CAN Receive" can carry signals from multiple CAN message IDs. With the "CAN Unpack" block the the data for individual IDs can be read. You can refer to the following example model to understand more on its usage with multiple message IDs received from "CAN Receive" block: https://www.mathworks.com/help/vnt/ug/implement-can-network-for-robotic-arm-in-simulink.html
Why can't I receive the signal data normally when I use the CAN Receive block
2 次查看(过去 30 天)
显示 更早的评论
These are my test configurations:
Results below:
Sample Time: 0.01
Fixed Step Discrete
0 个评论
回答(1 个)
Sayan
2024-9-17
Hi 审言,
I assume you are asking about the requirement of using an additional block i.e. "CAN Unpack" block with the "CAN Receive" block to read the received data. The "CAN Unpack" block is used for the following reasons:
Hope this answers the query.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Outputs 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!