Milestone 3 Complete

Controlling BLDC Motor for Vehicle with CTUCAN

This is to update on completion of Milestone 3 of the project which involved controlling a motor on the CAN network with CTUCAN device. We would need to have a motor contoller to interface with our CAN bus and control the motor.

The ODrive is a motor control board based on the STM32 microcontroller. It can be used with BLDC motors (brushless DC motors), over a CAN bus to set acceleration, braking, and other parameters for motor control systems.

Hardware for ODrive is available for sale on online shop: https://odriverobotics.com/shop

The entire firware and GUI software to interface with Odrive is available on GitHub: https://github.com/odriverobotics/ODrive/

Image8

Hardware Requirements

  1. A brushless motor.
  2. Odrive S1
  3. FPGA device with CAN controller/transceiver
  4. A >12V power supply or battery.

Hardware Connections

  • Connect screw terminals representing the motor phases to A/B/C of Odrive S1 Power Pads.
  • Connect the power supply cables to Odrive S1 solder pads that are labelled +/- and Arty A7 board

Since CAN bus is not isolated, use power supply to power both. To run Arty A7 board with same DC source, below accesories can be used :

Image

Image1

  • Connect Odrive S1 with FPGA board over CAN bus.
  • Connect motor to Odrive S1 via 3 phase wire.

Complete setup can be illustrated in below daigram

Image6

In reality, it resemebles like seen in below image:

Image2

Controlling Motor Controller with CAN bus

  • Power up Arty board with CTUCAN driver enabled

Image4

  • Use GUI Wizard of Odrive to calibrate the motor.

Image3

  • Check if any data is recevied on CAN bus with candump

Image7

To make sense of this data we would use CAN Simple protocol provided by Odrive.

https://github.com/odriverobotics/ODriveResources/blob/master/examples/can_simple.py

Motor should start rotating with torque of 1 turns per second.

Image5

Show Comments