stm32驱动ssd1306配置_自制FOC控制驱动器
点击上方“嵌入式基地”,选择“置顶/星标公众号”
福利干货,第一时间送达!
声明:这个项目是国外的一个开源项目,文章末尾会提供原项目地址。
本文只是介绍下重点部分。
这个项目分为软件与硬件部分,首先介绍硬件部分。
1. 电路板
1.1 特点:
驱动板引脚接口兼容Arduino UNO、Arduino Mega2560、ST Nucleo...
最大功率:120W;电压:12V-24V;最大电流5A。
电机驱动:L6234PD013TR。
编码器接口:具备3.3KΩ上拉电阻(可选)。
IIC接口:具备4.7KΩ上拉电阻(可选)。
可套娃使用:可同时运行2台电机。
1.2 原理图:
1.2 3d图:
1.3 硬件配置
由上图可知,在PCB反面提供了一些可配置的焊点。
这些焊点作用:
禁用/使能上拉电阻
配置A、B、I使能引脚
配置BLCD电机引脚(PWM A、PWM B、PWM C)与使能引脚
1.3.1 3.3KΩ上拉电阻说明
3.3KΩ上拉电阻的配置焊点:Pull A、Pull B、Pull I,分别作用于编码器通道A、B、I(或霍尔传感器U、V、W)。
1.3.2 4.7KΩ上拉电阻说明
IIC上拉电阻配置焊点:Pull SCL、Pull SDA。在使用arduino时,iic基本不需要上拉电阻;当使用STM32时,需要使用上拉电阻。
当使用俩快驱动板叠加时,建议使用上拉电阻。
1.3.3 可配置引脚
可配置信号与引脚对照表
信号 | 引脚 |
---|---|
PWM A | 3、9 |
PWM B | 6、11、13 |
PWM C | 5、10 |
使能引脚 | 7、8 |
Encoder A | 3、A2、A3 |
Encoder B | 2、A1 |
Encoder I | 4、A0 |
2. foc程序库
2.1 支持的硬件
2.1.1 电机
BLDC电机
步进电机
2.1.2 驱动板卡
BLDC驱动器
步进电机驱动器
云台电机驱动器
2.1.3 位置传感器
编码器
磁性传感器
霍尔传感器
开环控制
2.1.4 主控
Arduino
STM32
ESP32
Teensy
2.3 简单程序
由于我是用的是AS5600磁编码器,程序就以AS5600为例
#include MagneticSensorI2C sensor = MagneticSensorI2C(0x36, 12, 0x0E, 4);// Motor instanceBLDCMotor motor = BLDCMotor(9, 5, 6, 11, 8);void setup() { sensor.sda_pin = 14; // change i2c data pin - OPTIONAL sensor.scl_pin = 15; // change i2c clock pin - OPTIONAL // initialise magnetic sensor hardware sensor.init(); // link the motor to the sensor motor.linkSensor(&sensor); // initialize motor motor.init(); // align encoder and start FOC motor.initFOC(); // set the initial target value motor.target = 2; _delay(1000);}void loop() { // iterative setting FOC phase voltage motor.loopFOC(); // iterative function setting the outer loop target // velocity, position or voltage // if target not set in parameter uses motor.target variable motor.move(); }
开源地址
点击阅读原文,查看演示视频
推荐阅读
一个灵魂提问:单片机有什么用?
STM32:独立看门狗、窗口看门狗的配置.....
常见的11种滤波算法
干货 | BLDC电机原理和正确使用方法
一个故事看懂单片机中的堆栈
STM32掌握到什么程度,才可以去学Linux?
PID调节:看大神是如何整定参数
男人最爱的hub网站,速度起飞!
免费分享海量学习资源
stm32驱动ssd1306配置_自制FOC控制驱动器相关推荐
- 自制FOC控制驱动器
关注v-x-公-众-号:[嵌入式基地] 后-台-回-复:[电赛] 即可获资料 回复[编程]即可获取 包括有:C.C++.C#.JAVA.Python.JavaScript.PHP.数据库.微信小程序. ...
- stm32驱动ssd1306配置_STM32 OLED 屏幕 驱动芯片SSD1306 IIC代码
#include "oled.h" #include "stdlib.h" #include "oledfont.h" #include & ...
- stm32驱动ssd1306配置_STM32F7片上硬件I2C驱动OLED(SSD1306),寄存器配置的。
最近在学习STM32F7的片上I2C硬件,看到原子哥的OLED模块可以用I2C来驱动,于是就试了下.现在将试验结果与大家分享,目前还没有毕业经历过的项目比较少,只是为了抛砖引玉,有什么不合理的地方,请 ...
- stm32驱动ssd1306配置_stm32 ssD1306 OLED驱动架构
#include "oled.h" #include "stdlib.h" #include "oledfont.h" #include & ...
- [ 电子]STM32驱动28BYJ-48步进电机实现外网控制
新人博主Github==>https://github.com/MartinxMax 这个项目能做什么? 用到了哪些编程语言? 需要什么硬件? 硬件接线 配置SIM900A STM32 C语言代 ...
- 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(2)-SVPWM波实现
[FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(2)-SVPWM波实现 SVPWM波实现就是无数电机foc控制的核心,所以这一节就如何在英飞凌无刷驱动上时间互补pwm波形做讲解 [F ...
- 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(3)-FOC控制原理矢量控制
英飞凌TC264无刷驱动方案simplefoc移植(3)-FOC控制原理矢量控制 无刷电机是矢量控制,是交流电机调速的核心,也是Foc控制的核心 以下内容学习自[自制FOC驱动器]深入浅出讲解FOC算 ...
- STM32驱动串口屏,STM32F103C8T6串口发送指令控制HMI串口屏
STM32驱动串口屏,STM32F103C8T6串口发送指令控制HMI串口屏 串口屏 基础指令集 硬件和接线 接线 实验前准备 STM32程序 串口程序 主函数 实验现象 总结 串口屏 串口屏是一个集 ...
- STM32—4线SPI驱动SSD1306 OLED
文章目录 一.OLED简介 二.驱动SSD1306所需知识 1.引脚介绍 2.通信时序 3.显存GRAM 4.字库 5.SSD1306基本命令 三.代码讲解 1.相关引脚配置 2.模拟SPI通信 3. ...
- 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(6)- foc速度闭环控制
[FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(6)- foc速度闭环控制 [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(6)- foc速度闭环控制 一.电机选择 ...
最新文章
- Spring Cloud应用开发(四:服务容错保护)
- R读取json文件并转化为dataframe
- 《web全栈工程师的自我修养》阅读笔记
- CSS设置段落的水平对齐
- deepin如何布署python_【玩转deepin】简单三步,教你在deepin15.11上安装Python3.7.4
- C++中的IPv6网络程序设计
- manage key mysql_mysql相关操作
- ubuntu安装文泉驿字体
- mysql的应用领域_面向应用领域的数据库新技术汇总(干货)
- 软件智能:aaas系统中AI众生的“世”和“界” 之11 认知水平的假想supposition
- 计算机-库win10,Win10如何在资源管理器中显示“库”
- Django项目实战——12—(Docker和FastDFS上传和下载文件、浏览器下载并渲染图片(nginx)、录入商品数据和图片数据、首页广告)
- vue限制只能输数字
- TOREX | 如何延长设备的电池寿命?——充电IC
- 企业微信工作台集成CAS实现单点登录
- 学习笔记——进程间通信之管道详解
- 数学基础——矩阵学习
- IPC分类—2018最新版IPC分类查询工具
- SpringBoot 优雅实现动态数据源切换配置
- 人大听讲座感想---星空,宇宙,我们太渺小了!