...
The new telemetry system uses a Raspberry Pi to collect CAN messages from the vehicle along with metrics such as GPS coordinates. We use Node-Red to collect this data and also send it to FRED’s Node-Red which will store our data in the cloud and allow us to pull data from InfluxDB which is hosted by FRED. We also have a DBC file that helps us translate what each CAN message-id and data mean.
...
Setup
The link below shows how to generate the DBC file used to translate all the CAN messages. It also shows how to set up AWS so our scripts will work.
https://uwmidsun.atlassian.net/wiki/spaces/ELEC/pages/1395032080/Telemetry%2BSet%2BUp
...
Property | Sample Value |
---|---|
Datetime | 2020-01-20 03:14:07 |
Name | MOTOR_CONTROLLER_VC |
Sender | MOTOR_CONTROLLER |
Data | {'mc_voltage1':1234, ‘mc_current1’:1} ) |
GPS Data
Property | Value | Decoded |
---|---|---|
Datetime | 030620 044747.0 | June 3, 2020 4:47:47.0 |
Latitude | 3722.117666 | 37° 22.117666' |
Latitude Direction | N | North |
Longitude | 12200.011971 | 122° 00.011971' |
Longitude Direction | W | West |
Altitude (meters) | 11.6 | 11.6 |
Speed (knots = 1.852 km/h) | 0.0 | 0.0 |
Course (degrees) | 0.0 | 0.0 |
...
In terms of storing data locally on the Raspberry Pi, the Python script aggregate_can_data.py can directly output the data to a CSV file locally on the Raspberry Pi. These files can be manually moved to Google Drive if necessary.
...