© 2024 EasyEDA Some rights reserved ISO/IEC
1.Easy to use and quick to get started
2.The process supports design scales of 300 devices or 1000 pads
3.Supports simple circuit simulation
4.For students, teachers, creators
1.Brand new interactions and interfaces
2.Smooth support for design sizes of over 5,000 devices or 10,000 pads
3.More rigorous design constraints, more standardized processes
4.For enterprises, more professional users
PRO BLDC driver v5
Participate: OSHWLab Stars
Mode:
Powerful BRUSHLESS Motor Driver version 5 is a small brushless motor driver intended to drive motors up to 250W, a great fit for many robotics projects. Everything uses connectors for quick and easy wiring, and no soldering is required. The design is optimised for low power dissipation, with less than 5W power dissipation under all operating conditions. The current sensing circuitry uses RDS(on) based current sensing with temperature compensation for high efficiency. I2C and CAN bus is available for communication with the main microcontroller. Up to 200mA at 3.3V can be sourced from the I2C port, which can be used to power external circuitry.
Input voltage: 8-25V (30V surge), Continuous Output Current: 15A (Peak), 10.6A (RMS)
Small size: L: 47mm, W: 30mm, T: 7mm.
Connectors: Power: XT30, Motor: MR30, CAN: GH-2P, I2C: GH-4P, DEBUG: GH-2P.
Maximum PWM frequency: 50KHz
Maximum Motor Speed: 160000 ERPM
Supported Encoders: Sin/Cos Encoder (Recommended), Incremental Encoder optical or magnetic
Supported Motors:
PCB specs: 6 layer, 2oz copper on all layers, 1.2mm thickness, epoxy filled vias, min via hole 0.2mm, components on both sides.
Main parts:
STM32G431 microcontroller, 170MHz M4 CPU, optimised for motor control, with internal temperature sensor.
DRV8323S gate driver, 3x half bridge, with current sense amplifiers configured in RDS(on) mode.
BSZ0901NS MOSFET, ultra low RDS(on) of 1.7 milliohms at 25degc and 2.7 milliohms at 150 degc.
600uF onboard low ESR tantalum polymer capacitors, much smaller than similar electrolytic capacitors.
TJA1462A CAN transciever with signal improvement capability, operating at high speed of 8 mbps.
TPS54302 buck converter VCC -> 5V, TPS62A02 buck converter 5V -> 3.3V, AP7343D LDO 5V -> analog 3.3V.
Ordering Notes:
WARNING: The DRV8323S chip on this board has offset calibration issues, which will result in a significant offset in the measured currents (500mA). The issue is currently being worked on, please check https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1378175/drv8323-offset-calibration-issues for details.
You must choose 1.2mm PCB thickness and 2oz copper on all layers when ordering. If these options are not chosen then the board may overheat, and the temperature sensor compensation function will not work. The PCB is designed to be a heat spreader.
The XT30 connector stocked by JLCPCB is the 3mm lead height version. If you choose to use it, then the PCB will be thicker than expected. If you want the advertised PCB size, you can either use the 2mm lead height XT30 connector, or use sandpaper to remove the excess lead length.
The MR30 motor connector and XT30 power connector are connected to the PCB without thermal reliefs for maximum heat dissipation. This means that these components need special care when soldering, and there is a chance JLCPCB wave soldering could produce poor results. When ordering please leave a remark that the connectors in wave soldering need higher temperature than normal otherwise they may not be soldered properly. It is also recommended that you have access to high quality PCB rework equipment in case of any problems with JLCPCB wave soldering process.
PCB from JLCPCB The solder on the connectors has not filled the hole, so it is making a bad electrical connection to the inner layers and top layer. |
Fixed PCB The solder on the connectors fills the hole completely and a solder fillet can be seen from the top. |
![]() |
![]() |
Panelisation:
When ordering the PCB it is recommended to order panels instead of single pieces, as the accuracy of the PCB edges is higher when you order panels. Please refer to the diagram on the right for an example panel configuration, where the top 3 PCBs have been rotated by 180 degrees (otherwise during assembly the components will overlap). Please note that V cut is not allowed on the long edge of the PCB, it is only allowed on the short edge. |
![]() |
Usage Notes:
To avoid short circuits, it is recommended to place a heat shrink over the PCB. The recommended heatshrink diameter is 30mm (+- 3mm).
The MOSFETs on the motor driver are designed to switch extremely quickly. The recommend IDRIVE settings are 260/520mA. Using these settings, the VDS switching time is around 30ns and the VGS switching time is around 200ns. However, if the fast switching generates too much electromagnetic interference, you can reduce the IDRIVE settings to make the MOSFETs switch slower, but doing this will increase power losses and cause the motor driver to heat up more.
The onboard capacitors can generate significant inrush current. Consider using an inrush current limiting solution, such as XT90S connector.
The 3.3V 200mA outputs do not have overcurrent protection, and the board could be damaged by short circuits on the output. Please be careful.
The motor driver is compatible with SimpleFOC library software.
Regenerative braking:
The motor driver by default has regenerative braking enabled. This means current will flow from the motor driver into the power supply when the motor is slowing down. This reverse current can damage the power supply if you are not careful. To avoid this, you need to add a TVS diode with breakdown voltage slightly (5-10%) higher than your power supply output voltage. This does not apply when using a battery to power the motor driver.
CAN Bus:
The motor driver uses a CAN SIC transciever, which means you can get away with not using a termination resistor for short cable runs under 50cm when all nodes use CAN SIC transcievers. This mode of operation also saves power, and does not require careful consideration of the cables.
For longer cable runs, a termination resistor is required to prevent signal reflections in the cable from causing problems. The value of the termination resistor needs to be as close as possible to the characteristic impedance of the cable. Do not just put a 120 ohm resistor as the termination resistor without knowing the characteristic impedance of the cable, it will not work.
The choice of cable is also very important, as it needs to have a constant characteristic impedance, and preferably be a differential pair. Some sources of cable you can use:
The performance the CAN Bus has been tested using a 30m long jumper wire ribbon cable. The characteristic impedance of the cable was measured to be 200 ohms using trial and error method with an oscilloscope. A 200 ohm termination resistor was installed at both ends. The signal integrity was measured with the oscilloscope and was excellent, and there were no issues communicating at 8mbit/s.
Demo Video:
Featuring Robomaster M2006 P36 motor, motor driver in position control mode, position command sent every 500ms. Real time motor position is displayed on the screen.
Loading...
Do you need to add this project to the album?