-
Notifications
You must be signed in to change notification settings - Fork 2
Communication Systems
LCM (Lightweight Communications and Marshalling) is a communication protocol developed by MIT on top of UDP Multicast. It’s targeted at real-time systems, where low latency and high bandwidth is critical, and so proves incredibly useful to a system like the Hyperloop. All data is transferred through “channels”. It is based on the Publish/Subscribe communications model, where recipients can “subscribe” to a channel they wish to receive data from. The data gets sent to every member in the network, but only the subscribers of the channel accept the data. Figure 1 demonstrates this concept.

A list and description of our channels are yet to be decided.
The System Health Monitor, works collaboratively with the Network and Channel monitors to ensure that all data being obtained from sensors is error-free. Errors are being accounted for in the actual data itself and the frequency of data being transmitted.
We have established a list of maximum and minimum values for each channel, which describe the acceptal range the data can lie in. Every time data is received from a sensor, it is compared against this range. Based on priority of the channel, appropriate action is taken (E-Stop, restart sensor, etc.)
For our system, it is also integral for data to be transmitted at a fast-rate. The Health Monitor continually monitors the rates data is being sent / received for each channel, and action is also taken appropriately taken to recover from this.
Ethernet is currently used for physical transmission of data between the Arduinos and the Odroid.