Hi guys!
I am trying to design a simple FOC-based pcb for an extremely small spherical balancing robot, in which I have to control two gimbal motors (https://store.tmotor.com/product/gb2208-gimbal-type.html).
until now I have decided to go with the stm32g431 for the microcontrollerr, and ma730 spi absolute encoder for feedback, and TMC6300’s as motor drivers.
I am going to use two 18500 Panasonic cells in series to power the robot (voltage range 6V-8.4V).
I have a few questions,
-
I want the best control possible and cost is not an issue, but space is,
so will current sensing help me to control the motors better?
I am planning to use low-side current sensing with external OPAMPS (LMV321 data sheet, product information and support | TI.com) one for each tmc6300.
Also, I want to have the maximum torque possible at the lowest speed in my application, as the two wheels are very close in my design. -
Is it any better to have dedicated microcontrollers (G431) for each motor(both of them running independent FOC loops), and both of them controlled by a separate microcontroller via some kind of communication like CAN,SPI? I have seen the storm boards where one microcontroller can control 3 motors simultaneously but I think that affects performance. I tried mapping all the pinouts in one G431 on the stm32CubeMX and got all the pins required for controlling the two motors on a single stm32g431cbu6.
-
The TMC 6300 is rated till 11v, and the 2s configuration range is only (6V-8.4V), I tested the motors with tmc6300 and the current draw for the motor only reaches 0.80 Amps max @11V(stalling condition), and the current draw and torque reduces when I decrease the voltage, should I design a boost-conveter within the PCB to get 11V supply for the motor drivers or directly supply the driver with the variable battery voltage.