-
B-G431B-ESC Brushless Servo Controller - March Update
03/03/2022 at 21:08 • 0 commentsA new quadruped, using twelve motors, controlled by the B-G431B-ESC and firmware V3.
-
B-G431B-ESC Brushless Servo Controller - January Update
01/20/2022 at 00:34 • 7 commentsTesting new release with a mini gimbal motor...
-
B-G431B-ESC Brushless Servo Controller - January Update
01/16/2022 at 18:14 • 0 commentsOne year ago, I have developped a very fist revision of a custom FOC firmware on the B-G431B-ESC Discovery Kit. The code has been improved and a new firmware revision (V2) will be released soon.
The firmware is tested with a 8108 and a 5008 bruhsless motors. The AS5048A (PWM input) and the AS5600 (I2C) are also tested.
List of improvements :
- 40KHz PWM with CSVPWM
- 40KHz FOC loop
- Current limiter
- 4KHz position and velocity control loop
- Dynamic change of KP and KD when torque enable
- Min/max position limiter
- Maximum velocity limiter
- Thermal protection
- Low voltage protection
A field-weakeming algorithm has been tested, but it will not be in the next release. The ESC is able to spin the motors at their base speed (Kv*Vdc). I think there is no need to spin faster for a hobby robotic application at the moment.
Patrick.
-
Bandwidth of position and torque PID controller
04/08/2021 at 01:39 • 0 commentsThe latest firmware update improves the bandwidth of the position and torque PID controller.
This test was performed with my robot powered by Lipo 4S battery. The robot is under development. It is a 8-dof quadruped using MAD 5008 240kV motors, B-G431B-ESC board, 3D printed planetary gearbox (ratio: 1:4.5) and a M5Stack Fire.
Patrick.
-
Encoders
03/29/2021 at 16:21 • 0 commentsWelcome Kai ! He has joined the project as a contributor, and we are working on the third alpha firmware release, with some improvements :
- support of encoders I2C et PWM
- self calibration of motor / encoder
- faster FOC update (up to 16KHz)
- faster Position / Velocity / Torque PID loop
- 1Mbps CAN-FD user interface for control and feedback (position, torque, temperature, voltage, error)
- Fail-safe (brake when encoder error, over-heating, or under/over-voltage)
- new operating mode "Position control with torque limit and velocity & acceleration profile".
We have tested the current firmware with two different hardware configurations :
- A 40xx brushless motor and an absolute position sensor AS5600 with a I2C interface (1Mbps)
- A 50xx brushless motor and an absolute position sensor AS5048a with a PWM interface (1Khz)
Here is the pinout of the ESC, with both I2C and PWM interface for encoders :
There are so many things to add and to improve.
Bye,
Patrick.
-
5-bar leg (2x B-G431B-ESC)
02/10/2021 at 00:03 • 0 commentsThis is a very fist test of an home-made 5-bar leg.
Power supply : 24V @ 2A limitation
Motors : 2x MAD 5008 240KV
Encoder : 2x AS5048A (14bit absolute position, PWM output)
ESC : B-G431B-ESC1 discovery kit by ST
https://www.st.com/en/evaluation-tool...3d printed planetary gear box (1:4.25). Gear Module 1 (ABS and PLA)
3d printed legs (PETG)
28 ball bearings
Femur 100mm
Tibia 160mmHome-made FOC algorithm with position / velocity / torque control running at 10KHz (36us processing time, using STM32G4 CORDIC)
Velocity limited to 20000dps
Motor current limited to 500mA (max Iq). -
Thermal dissipation
02/09/2021 at 18:08 • 0 commentsThis compact ESC was designed by ST for drones, with a strong forced convection.
At zero-altitude, zero-speed, without propellers, thermal dissipation remains an issue.
Problem solved ! (Joke) ^_^
I have absolutely no experience in implementing FOC algorithm. This is my very first project, about brushless motor controller. I will do my best to release and share something basic but usable soon.
Patrick.
-
4-bar leg dual motor servo
02/08/2021 at 22:45 • 0 commentsNew hardware configuration !
Each motor are driven by one G431 ESC running sensored FOC with position control mode.
This is an example of application of such an ESC in robotics.