王达业

Dual FOC motor drive control PCB board

 
Overview

    I saw that MIT had open sourced the brushless Big Dog, so I wanted to make my own brushless Teddy. Unfortunately, the dog’s brain is too complex, so let’s start with the dog’s legs.

    This is a dual-channel motor drive control integrated board based on Simple FOC, and the hardware is controlled by ATmega328pb. It supports two I2C inputs and can be connected to two encoders that support I2C at the same time (yes, it is the cheapest AS5600, which is forced by the single I2C address of the 5600). The motor driver uses L6234, with a single-channel peak current of 5A. In actual use, it is recommended not to exceed 3A/channel. The board supports 8~24VDC input voltage.

    The board is designed with FT232 USB to UART, which can be compiled and downloaded directly using Arduino IDE. But if you want to use 328pb, you need to configure the environment. The specific tutorial will be shared after it is written.

    The current loop design on the board uses INA240 to be compatible with the official example of simple foc. However, actual use is limited by the running speed and dynamic memory of mega328pb. When running two FOC motor controls at the same time, the memory has reached about 80%. If you add a current loop, it may not be able to run (it may be just enough if you do the code optimization yourself) .

 

    For specific usage tutorials, you can follow my Bilibili: Controller Usage Tutorial

    It doesn’t matter if you prostitute for free, just give me a like~

 

    In addition, most of the components on the board are SMD, and the resistors and capacitors are all in 0603 packages, so you can easily reflow them using an oven at home. Jiali Bandage patches cost more than 500. . .

Here are some photos of the debugging:

3D picture frontback

Dual motor debugging

 

-------------------------------------------------- ----------------------------------------

2021.7.3 Update:

Since the dynamic memory of ATMEGA328pb is too small (poor 2k), it is barely OK to run two voltage/speed/position loops, but it can only run one current loop at most. If the two loops are run at the same time, the memory will overflow, and the ROM space will be almost used up at this time. Light. So this plan has now been abandoned. But this does not mean that this board cannot be used to continue to prototype and learn simple foc. Atmel's microcontroller has a natural advantage in using arduino, which is still very important for getting started with learning arduino and simple foc.

Interested students can move to my other simpleFOC driver controller project based on ESP32 without worrying about memory and ROM issues:

Dual FOC controller based on Simple FOC and ESP32

 

参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2025-05-23 23:22:30
  • Understanding design engineers from a system perspective
  • MCU timer and AD acquisition
  • Questions about the minimum system version of LPC812
  • Moderators! Starting from June, ChipCoin will be distributed regularly every month
  • How to compile this cm7 to u8500
  • 1

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号