BLDC Gate Driver Breakout
Motor Controller Scope:
Main purpose(s) of the board:
Make an ODrive that is tailored towards our rover (BLDC controller using a 3 phase H-bridge controller for each motor)
Communicate with the rover using CAN
Provide encoder support and additional GPIO support
Criteria & constraints of the board:
CAN support
1 or 2 motors/encoders per board:
With 1 motor per board, power distribution is easier, control lines are more isolated and easier to handle, layout in general is much simpler, more freedom with wiring and mounting in-house assembly would likely be less difficult and more forgiving, especially since this is mainly a prototype board
This would use a lot of MCUs, not good
2 motors per board: Less expensive, more efficient use of microcontrollers and any power architecture
Would probably be best to start here for the first revision, only populate one side during initial prototype testing
45 degree orientation for MCU is a must
This number may change based on the results of the first prototype revision
Encoder support: Requires discussion with firmware and mechanical to determine what are the most likely protocols used with the encoders
Having just CAN support would be easier & cheaper but causes delay with correction from encoders
Providing support for all the protocols of the MCU used (i.e. I2C, SPI, UART, PWM, Quadrature, etc.) would probably be best and cover the widest range of encoders
Need to determine electrical specs needed: Voltage rating, current rating, PWM switching speed for H-bridge
Power architecture of controller needs to be determined - most likely will supply both motor power (48V) and encoder/logic power (5V) from PDB, onboard voltage conversion to 5V and low current would probably be too inefficient
PWM switching speed, max current/power consumption is the most important to determine, would simply require speccing for the biggest motor used - this will determine the MOSFET selection
48V (Battery Voltage)
15A continuous | 40A peak (RMS)
24 kHz PWM frequency
Current sensing is important
Other GPIOs
Coordinate with mechanical and firmware to determine how many would be needed for hall effect sensors, limit switches, etc.
Might want to do some MOSFET tuning/testing to practice before
For example, select a motor driver and a MOSFET, practice driving one phase and look at rigging on gate, peak current, tuning gate resistor and RC snubber, making sure the gate driver isn’t killed, general stability
Could be done on a proto board, very small & simple setup
Could design the board and only populate MOSFET/motor driver to tune and test with before purchasing the rest of the parts and quantities - not recommended, restricts package choices and requires layout rework if testing fails
Who is involved with this board?
Electrical:
Farris Matar @Farris Matar - Electrical Team Lead, Power Distribution Board designer
Jason Gao @Jason Gao - BLDC board designer
Mechanical: Mechanical team lead, representative for the arm, drivetrain, science, and gimbal mechanisms (and any other mechanisms that may use a BLDC motor)
Firmware: Firmware team lead, other firmware members??