Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Motivation

The motor controllers (MC) are a third party board with a custom CAN communication protocol. The MC must send and receive messages to the driver controls (DC), however because the MC protocol is strict and thorough it requires abstraction from the rest of the system. The motor controller interface (MCI) handles this abstraction.

Components

The MC connects to its own CAN bus in order to communicate with the MCI. The MCI connects to the system CAN bus in order to communicate with DC. 

Message Types

Broadcast

The MC requires a message from the MCI every 250 ms. If the MC does not receive a message in this time period it will shut down. So the MCI must transmit a periodic message to the MC over CAN. The message will consist of the target velocity and target current percentage requested by the DC.

Handle Drive

The DC will send a message to the MCI through the system CAN bus requesting to set the car in either cruise, throttle, or regenerative breaking mode. The MCI will set its targets to the values requested, which will be transmitted to the MC during the next periodic broadcast message.

Measurements

The MC will send updates on measurements of voltage and current to the MCI through the system CAN bus. These measurements will be forwarded to the DC through the system CAN bus.

Tasks

  • The MC board has changed from WaveSculptor 20 to WaveSculptor 22. Translate changes in data sheets to change required in the firmware
  • How does pre-charging work?
  • What statuses need to be logged by the MCI?

Meeting Notes

Motor Controller Interface/Precharge:

  • separate can network to tell motor controllers to drive
  • Precharge completed happens through hardware, we need to know that only from CAN 
  • when capacitors are charged, it’ll send “precharge completed” message 
  • motor controller status logging
  • nice: motor controller restarting in firmware 
  • nice: limiting motor controller’s current sink by controlling it via firmware
  • nice: log motor stuff: all errors, and temperature over can 
  • nice: motor current access.