1

I need to design a HMI protocol for ECUS in cars which are connected to a CAN bus.
I have basically 3 tasks to consider.

The system consists of some Application control units and a HMI control unit and these all are connected to a same CAN bus.

  1. I have to make simultaneous communication of application CUs with HMI possible.

    • In my idea this is not possible since CAN protocol does not support the Simultaneous communication on a same BUS. What I can do is to add more CAN buses. one for each of Application CUs to be able to receive more than one message at a time.
  2. I need to control the access to the HMI so at each time HMI can process the request of one of the Application CUs.

    • I believe CSMA/CD which is designed in the Datalink Layer of CAN makes this possible for me and gives the HMI enough time to process task of each CU.
  3. Here is the part which I'm really confused. I have to design it in a way that the answer from HMI goes to the corresponding Application CU.

    • CAN ID of each message is different and I can't get how a message can go to a wrong Control Unit. Maybe the problem is here that How does HMI understand if the driver pushes OK button , this OK belongs to which task (MP3 or navigation or ...)

Also, I see a conflict in the first and second task. make communication simultaneous but the HMI can process only one task at a time.

I have a question to this myself too that How does the communication happen in vehicles? Is it like this that HMI sends a message every 2ms and inside is the status of the buttons on the HMI? Is it possible to embed status of all buttons in HMI in one message? If possible then how is it possible that all CUs read it and know which bit in the message belongs to their task. Or maybe the communication is totally different and each CU sends a CAN request frame to the HMI and HMI responds to that? Or maybe some other methods are used?

Please Let me know where you think I'm making mistake and also your Ideas

Thanks a lot :)

Vojtech Ruzicka
  • 16,384
  • 15
  • 63
  • 66
nikoli
  • 11
  • 1

0 Answers0