Clear Filters
Clear Filters

CAN Signal (Receive/Transmit) Error on Simulink Desktop Real-Time With Vector Device. Simulink Desktop Real-Time에서 Vector 장비 사용시 CAN 신호 송수신 에러

5 views (last 30 days)
Im running Simulink Model by using 'Simulink Desktop Real-Time' and transmitting/receiving CAN-FD signals through 'Vector' Hardware and 'Packet Input/Output blocks'.
I don't know what the problem is, but there seems to be a problem with the Recieving CAN signal, and after the problem, no signal is transmitted or received by 'Packet Input/Output blocks'.
I thought the model might have stopped, but when I checked the value calculated through the 'Scope block' in 'Run Model In Connected I/O mode', the model was running normally.
To artificially simulate an error situation, I removed CAN cable from the Vector hardware during real-time simulation. and i reconnected cable, no signal was received so.
While looking at various options, I found 'Packet Input -> Board Setup -> Enable Silent Mode'.
after checked 'Silent Mode' ,disconnect and reconnected the CAN cable while on realtime simulation.
and it was confirmed that the signal was recieved correctly, but in 'Silent Mode' did not seem to be transmitting the calculated signal so 'Silent Mode' is not the solution for me.
I would appreciate it if you could tell me the solution for stable CAN Communication after Any distubance.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Simulink Desktop Real-Time 기능을 사용하여 실시간 으로 Simulink 모델을 실행하고 있습니다.
Vector 사의 장비와 Packet Input/Ouput 블럭을 통해 CAN-FD 신호를 송신 및 수신을 하고있는데요,
무슨문제인지는 모르겠으나 간헐적으로 송신받는 CAN 신호에 문제가 생기는것 같고, 문제가 생긴 이후에는 Packet Input/Output으로 어떤 신호도 송수신이 되지 않습니다.
모델이 멈춘것은 아닐까 했지만 Run Model In Connected I/O 모드에서 Scope 블럭을 통해 계산되는 값을 확인해보니 모델은 정상적으로 실행중이였습니다.
오류가 난 상황을 인위적으로 모사하고자 실시간 시뮬레이션 중 Vector 장비에서 CAN 케이블을 탈거하였더니 동일한 현상이 나타났고 케이블을 다시 연결했으나 신호가 들어오지 않습니다.
여러가지 옵션을 살펴보던중 Packet Input -> Board Setup -> Enable Silent Mode 를 체크하여 시뮬레이션을 실행한 후 CAN 케이블을 탈거 후 다시 연결하니 신호가 들어오는것을 확인했으나 Silent Mode에서는 계산된 신호가 송신되지 않는것 같습니다.
송신신호의 오류, 혹은 CAN 케이블을 탈거->연결 후에도 정상적으로 신호를 송신 및 수신을 하기위한 해결 방법을 알려주시면 감사하겠습니다.

Accepted Answer

Riya
Riya on 13 Dec 2023
Hello hyunseok,
As per my understanding, it seems like you are encountering issues with stable CAN (Controller Area Network) communication after a disturbance.
Please note that there are some suggestions to ensure stable CAN communication after any disturbance:
  • Implement error handling and recovery mechanisms in your Simulink model to handle disruptions in CAN communication. This could involve reinitializing the communication interface or resetting the CAN hardware after a disturbance.
  • Introduce heartbeat mechanisms in your model to monitor the status of the CAN communication. If communication is disrupted, the system can attempt to re-establish the connection or take appropriate recovery actions.
  • Implement diagnostic logging to capture information about communication disruptions, including timestamps, error codes, and recovery actions taken. This can help in diagnosing the cause of disruptions and fine-tuning recovery strategies.
  • Consider using hardware redundancy, if possible, to ensure that a backup CAN interface can take over in case of a disruption in the primary interface.
By incorporating these strategies, you can work towards achieving stable and reliable CAN communication even after disturbances.
For more information you can refer following articles regarding more information about Controller Area Network:
I hope it helps!

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!