Setting up HIL using Xpack4 and ECU via CAN

Hello everyone,

We want to make closed loop HIL setup connecting Xpack4 with Texas Instruments F28379D ECU board via CAN. We have completed the controller part on the ECU board but are stuck on how to send CarMaker data/ variables like velocity from Xpack4 to ECU board via CAN and then later from ECU to Xpack4.

We have been told that using IO Configurator it can be done but we are unable to do it. So if someone can provide some steps/ screenshots to how to do it, it will be very helpful.

Thanks & Regards
Akash Bhattacharya
MS (Research), IIT Kharagpur

Hi Akash,

When using CarMaker HIL or CarMaker Office Extended you can find an additional document "User’s Guide (Rela-time applications)
grafik
You’ll find there a detailed description of the IO Configurator with step by step instructions.

1 Like

We’ve gone through the “IO Configuration for M-Modules & Virtual Bus Interfaces” chapters in the Users Guide HIL document of CarMaker 12 and set it up (as shown in the image). In slot 5 M410 CAN module is connected, and we activate all the m410 nodes or channels we need to use.

Following the next chapter of the doc “RBS Configuration for CAN” in Rest Bus Configurator, we’ve selected CANIOgenGeneric.dbc file, and in Rest Bus Configurator (see picture) under ESP/ E_Data1 we mapped “Car.v” with DDict type (Expecting to send Velocity Data via CAN. We saved and ran one test run in CarMaker HIL. Simulation is running and can be visualized in IPGMovie. But we are unable to figure out

  1. Whether we’ve done this properly or not, are there any mistakes in our steps of configuring this?

  2. Is there any provision in Xpack4 or CarMaker GUI for viewing what data/ CAN message flows, as we can’t visualize the exact data flow of velocity coming through CAN?

  3. How can we utilize the Texas Instruments C2000 LAUNCHXL-F28379D board(where the control law is written) and send /receive variables from Xpack4 to the TI board using IO configuration (or other methods) via CAN to complete the close loop?