newrudeman

[First Edition] Low-cost high-power bldc foc driver based on ch32

 
Overview

This is the first version. There are some minor problems with the circuit. Please do not proof it. I will reply if it is updated after commenting. The code and hardware are all open source. Please be sure to watch the attached video for the effect. (Current version number v0.97a)
 
This is a foc driver based on ch32v203. The hardware uses eg2133. The motor uses tmotor's u12 kv90, and the power can reach 2500w. At present, the hardware and software need to be improved, but closed loop has been implemented. The basic functions of foc (four transformations and three-ring pid, encoder, can communication, etc.), the driver cost is only 55 yuan, and the encoder is not very expensive, and it will definitely continue to be updated in the future.
The code is accelerated using iqmath, which can achieve effects comparable to fpu on mcu without fpu. It is powered by an isolated power supply and supports full PWM duty cycle (if a diode is used, the upper tube is continuously turned on or the bootstrap capacitor cannot be charged when the duty cycle is high). The board also only requires two 2-layer boards.
 
 
When the speed is 900rpm, the 30v current is only 500ma, 15w, and when the speed loop is 50rpm, the power is only 1.5w, which fully demonstrates the high-efficiency characteristics of foc. However, the phase resistance of the tmotor motor is very small, only 38 milliohms, and the kv value It's only 90, so it's very difficult to adjust.
 
Note: Please fly the wires to connect uvw and uvw_m by yourself. I originally connected them on the schematic diagram and asked my junior to draw the pcb. He changed my schematic diagram, but this is good because it will not interfere with the current sampling and
 
known bugs. : 1. When the current loop output changes greatly, the bus voltage will be lowered, causing the 3.3v voltage to be pulled to 0, causing the microcontroller to reset, and the speed will not reach the rated speed due to this reason. (The power is supplied by a digital power supply. I don’t know if the output power of the power supply is not enough. I will try to buy a battery next time) (Main problem) (Problem has been located)
                 2. The current sampling lag time is long, and we will try to reduce the operational amplifier Resistor, it is not ruled out that it is the fault of ch32.
 
Update plan: 1. Fix known bugs
                   2. Add mt6816 driver (cheaper, less jitter than 5047)
                   3. Replace the can port, kf3.96 is a bit small, and the cable cannot fit in. . .
                   4. Improve the code and add motor parameter self-detection function
                   5. Optimize the hardware layout
                   6. Improve performance and speed up response. By then it will be a low-profile, high-power, high-performance foc driver (
 
picture:
see the attached video for the effect (current loop, speed respectively) ring, position ring), the code is opened with WCH's moonriver studio.
 
                 
参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2025-06-23 03:02:58

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
community

Robot
development
community

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号