simpleFOC
文章平均质量分 95
loop222
单片机,硬件设计
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SmartKnob移植ESP32和STM32——棘轮手感
SmartKnob 利用电机模拟机械旋钮的效果,且模式灵活多变,自带高级感,据说宝马的车内旋钮就是这样的。github网址:https://github.com/scottbez1/smartknob。原创 2023-05-17 14:01:02 · 8900 阅读 · 4 评论 -
SimpleFOC移植STM32(九)—— ABZ编码器电机
ABZ或者ABI,叫法不同但指的都是同一种编码器,也叫增量式编码器。ABZ编码器最大的优点就是接口统一,兼容性好。不像SPI接口的磁编码器,不同厂家的芯片甚至同一厂家的不同型号,通信协议各不相同,换个编码器就要重新写代码。光电编码器的信号输出有开漏和推挽多种形式,不确定信号类型情况下,在单片机接口上最好能接 上拉电阻,光电编码器的工作电压一般为5V,接3.3V后不工作。驱动板103没有5V电源输出。磁编码器输出的ABZ信号一般为推挽输出,有一定的驱动能力,所以有没有上拉电阻不重要。原创 2023-04-10 18:06:49 · 15844 阅读 · 2 评论 -
SimpleFOC移植STM32(八)—— 霍尔电机
假如霍尔电机是2对极,那么cpr=12,示意图刚好相当于一个钟表,假如当前电机的电角度在12点,q轴如上图,电机的转矩将一直保持这个状态,直到触发到下一个霍尔跳变,代码检测到新的角度,产生新的矢量q1并持续到下一个状态,所以simpleFOC对霍尔电机的控制效果等同于六步换相法。当然SimpleFOC提供了一个最简单的控制方法,保证电机能够转起来,你不要一看它的控制效果不好扭头就走,你知道了原理下一步就可以把ODrive的角度插值法移植过来,电机就可以实现ODrive的效果,是不是很简单。原创 2023-04-07 18:15:18 · 9462 阅读 · 2 评论 -
ESP32的CAN通信
上面的库里都提到了MCP2515,所以简单介绍下。在Arduino中,考虑到跨平台的兼容性,这个芯片被拿出来频繁使用。在一些没有CAN外设的单片机上,比如UNO上古老的MEGA328P就没有CAN功能,还必须使用MCP2515。MCP2515简单来说是一个把SPI接口转换为CAN接口的转换芯片,在单片机普遍没有集成CAN外设的年代,他可以做为外挂实现CAN通信。原创 2023-03-20 16:05:39 · 19849 阅读 · 28 评论 -
SimpleFOC移植STM32(七)—— 移植STM32F405RGT6
SimpleFOC移植STM32原创 2022-12-22 11:27:14 · 15031 阅读 · 6 评论 -
ESP32直接烧写bin文件
flash_download_tool 下载bin文件到ESP32drive原创 2022-10-05 17:50:31 · 10335 阅读 · 3 评论 -
ODrive的操作演示——控制AS5047P、霍尔电机和轮毂电机
应该跟ODrive的电源是通过M0的DRV8301降压有关,或者单片机和两路DRV8301通过SPI通信,导致SPI复用过多。SPI接M0端子,进入闭环后电机稍微动一下就报错,查看错误:ENCODER_ERROR_ABS_SPI_COM_FAIL,本店改版后的ODrive,使用单独的电源芯片,并且SPI接口没有过多复用,不存在这个问题,M0/M1都能很好的转动。本文主要是结合本店的驱动器和电机,通过配置的参数,快速实现对电机的控制。用M1接口控制好点,但是转速不能过高,否则也报错。原创 2022-05-24 11:34:32 · 21712 阅读 · 0 评论 -
SimpleFOC之ESP32(八)—— ABZ编码器电机
目录 SimpleFOC教程目录:请点击原创 2022-02-03 22:51:32 · 29679 阅读 · 3 评论 -
SimpleFOC之ESP32(七)—— 霍尔电机
目录一、霍尔电机介绍二、ESP32drive控制霍尔电机2.1、原理图2.2、读霍尔角度2.3、控制霍尔电机三、ESP32drive-D控制霍尔电机3.1、原理图3.2、读霍尔角度3.3、控制霍尔电机 SimpleFOC教程目录:请点击 一、霍尔电机介绍霍尔电机就是带霍尔传感器的直流无刷电机,下图 霍尔有两种安装方式,120度和60度,120度安装方式的稍微常见一些,下图 主要应用于车轮,特别是电动自行车,几乎都是霍尔电机,下图如果是做机器人底盘,霍尔电机是个很好的选择;如果是原创 2022-01-31 15:30:12 · 21637 阅读 · 5 评论 -
SimpleFOC之ESP32(十)—— ESP-NOW和力矩反馈
目录说明一、ESP-NOP1.1、简介 SimpleFOC教程目录:请点击 说明一 开始并没打算做ESP32的产品和教程,在B站无意中看到了老外的触觉控制(Haptic Control),觉得非常炫酷,甚是心动。仔细研究了Dagor这个项目,国内貌似没有销售这个产品,板子上用的TI芯片正缺货,我就想能不能用分立元件搭建电路,实现同样的功能,凭借十几年的经验我觉得应该可以拿下。过程还算顺利,两个月做了四版PCB,实现了Dagor的全部功能。这个产品借鉴了老外的创意,参考了老外的代码,只能算半个原原创 2022-01-29 18:00:23 · 13150 阅读 · 4 评论 -
SimpleFOC之ESP32(九)—— WIFI、UDP和TCP
目录说明 SimpleFOC教程目录:请点击 说明你一般是怎么看教程的,是不是直接往下翻,找到接线图和代码比划一番结束,所以你也看不到这段话是不是!这让我想起了电影《卧虎藏龙》里碧眼狐狸偷了武功秘籍,但是不识字只能看图比划,而她的徒弟识字,不仅看图还读了心经所以武功超越了师父。文字往往才是核心技术,图片不过是外在的表现形式。simpleFOC的官方代码到上一篇就结束了,网上相关的教程也很少提到无线通信这块。电机控制是个很硬件的技术,无论是硬件设计还是嵌入式编程;而无线通信因为协议的复杂性,更适原创 2022-01-28 12:00:20 · 14092 阅读 · 3 评论 -
SimpleFOC之ESP32(五)—— 电流闭环控制Lowside
目录说明一、原理说明1.1、为什么要采样电流1.2、电流检测方式 LowsideCurrent1.3、运放电路设计二、硬件介绍2.1、原理图2.2、准备清单2.3、硬件连接三、程序演示3.1、打开示例3.2、修改代码3.3、验证上传3.4、串口发送指令3.5、观察电机运行 SimpleFOC教程目录:请点击 说明本文教程只适配ESP32drive,注意区分电流采样模式。 一、原理说明1.1、为什么要采样电流 FOC(Field-Oriented Control),即磁场定向控制,磁原创 2022-01-25 14:51:54 · 12940 阅读 · 6 评论 -
SimpleFOCStudio安装使用说明及PID调试
目录说明一、SimpleFOCStudio安装1.1、为什么要采样电流 SimpleFOC的教程比较多,做了一个总链接,欢迎点击阅读:SimpleFOC教程链接汇总 说明一、SimpleFOCStudio安装1.1、为什么要采样电流原创 2022-01-23 14:05:25 · 15725 阅读 · 0 评论 -
SimpleFOC移植STM32(六)—— 双电机控制和力矩反馈
目录一、说明二、硬件介绍1.1、原理图 SimpleFOC的教程比较多,总链接方便查找阅读:SimpleFOC教程链接汇总 一、说明二、硬件介绍1.1、原理图原创 2022-01-11 14:33:28 · 16767 阅读 · 3 评论 -
SimpleFOC之ESP32(六)—— 双电机控制
目录一、硬件介绍1.1、原理图1.2、准备清单1.3、硬件连接二、代码演示2.1、I2C接口说明2.2、速度模式2.3、其它模式 SimpleFOC的教程比较多,做了一个总链接,欢迎点击阅读:SimpleFOC教程链接汇总 一、硬件介绍1.1、原理图1.2、准备清单序号名称数量1ESP32-DevKitC12simpleFOCShield V2.0.323云台电机24USB线1512V电源16杜邦线若干Sim原创 2021-11-20 18:10:37 · 14509 阅读 · 0 评论 -
SimpleFOC之ESP32(四)—— 电流闭环控制Inline
目录说明一、硬件介绍1.1、原理图1.2、硬件清单1.3、硬件连接二、程序演示 说明 SimpleFOCShield板载电流采样为Inline模式,所以本章只讲SimpleFOCShield的操作,ESP32drive为Lowside模式,稍后另起一章讲解。一、硬件介绍1.1、原理图1.2、硬件清单序号名称数量1ESP32-DevKitC12simpleFOCShield V2.0.313云台电机14USB线1512V电源原创 2021-11-20 16:03:48 · 13268 阅读 · 4 评论 -
SimpleFOC之ESP32(三)—— 闭环控制
目录一、硬件介绍1.1、原理图1.2、ESP32drive方案1.2.1、准备清单1.2.2、硬件连接1.3、SimpleFOCShield方案1.3.1、准备清单1.3.2、硬件连接二、代码演示 — I2C接口2.1、I2C接口说明2.2、速度模式2.3、位置模式三、代码演示 — SPI接口3.1、SPI接口说明3.2、修改示例 一、硬件介绍1.1、原理图 1.2、ESP32drive方案1.2.1、准备清单序号名称数量1USB转串口12ESP32driv原创 2021-11-18 14:31:38 · 12557 阅读 · 2 评论 -
SimpleFOC、ODrive和VESC 教程链接汇总
一、SimpleFOC系列教程SimpleFOC(一)—— 简介(附有文件下载链接)SimpleFOC(二)—— 快速入门 (开环控制)SimpleFOC(三)—— AS5600角度读取SimpleFOC(四)—— 闭环控制SimpleFOC(五)—— 双电机控制SimpleFOC(六)—— PowerShield和AS5047PSimpleFOC(七)——STM32(Bluepill)的应用SimpleFOC(八)—— 理论+实践 深度分析SVPWMSimpleFOC(九)——原创 2021-11-10 13:48:16 · 108094 阅读 · 20 评论 -
SimpleFOC之ESP32(二)—— 开环控制
目录注意事项一、硬件介绍1.1、原理图1.2、ESP32drive方案1.2.1、准备清单1.2.2、硬件连接1.3、SimpleFOCShield方案1.3.1、准备清单1.3.2、硬件连接二、修改底层代码三、程序演示3.1、开环速度模式3.2、开环位置模式 注意事项1、电机的三根线可以任意接在驱动器的ABC三相上,不用区分;2、开环控制最好选择Ω级的电机,尽量不要用mΩ级的航模电机,容易烧MOS和电机。开环控制在实际中也就启动时用用,这不是电机控制的一个常态。3、电机控制要尽快操作,不要停留原创 2021-11-07 21:20:48 · 17271 阅读 · 0 评论 -
SimpleFOC之ESP32(一)—— 搭建开发环境
目录说明一、ESP32介绍二、Arduino IDE的ESP32开发环境搭建2.1、安装Arduino IDE2.2、下载ESP库文件2.3、安装ESP32库文件2.4、安装ESP32编译器2.5、Python安装2.6、选择ESP32开发板三、点亮LED3.1、硬件准备3.2、示例演示 说明 2016年春天的时候第一次接触ESP8266,用的ESP-12的模块,串口转wifi通信。本来是很简单的工作,串口发送数据完事,按照习惯看下手册,这一看把我绕晕了,它的与众不同的Xtensa内核,Free原创 2021-11-07 15:11:05 · 46237 阅读 · 7 评论 -
SimpleFOC(九)—— 霍尔电机控制
目录一、原理说明1.1、霍尔电机 一、原理说明1.1、霍尔电机霍尔电机就是带霍尔传感器的直流无刷电机。通过霍尔传感器判断电机当前运动状态,控制器根据霍尔采集的信号控制三相输出,让电机持续正常的工作,霍尔传感器的优点是便宜,而且几乎可以安装在任何无刷直流电机上,缺点是,由于角度测量的量化相对较高,因此低速运行不够平滑,使用霍尔传感器的另一个原因是,在无法接近电机轴,或者无法将传感器安装到电机轴上的情况下,霍尔传感器安装在电机转子周围,这使得它们非常非侵入性且易于集成,最常见的应用就是电动自原创 2021-10-05 18:23:46 · 49742 阅读 · 6 评论 -
SimpleFOC移植STM32(五)—— 电流采样及其变换
目录一、原理说明1.1、电流采样1.1.1、为什么要采样电流1.1.2、电流采样方式1.1.2.1、低侧电流采样1.1.2.2、高侧电流采样1.1.2.3、内置电流采样1.2、电流变换1.2.1、AD转换1.2.2、clark变换1.2.3、Park变换1.2.4、PID运算二、硬件说明2.1、SimpleFOC V2.0.3 的参数2.2、PowerShield V0.2 的参数2.3、SimpleMotor 的参数2.4、电流实际波形 一、原理说明1.1、电流采样1.1.1、为什么要采样电流原创 2021-09-28 17:54:50 · 56667 阅读 · 25 评论 -
SimpleFOC移植STM32(四)—— 闭环控制
目录说明一、电机的三种控制模式1.1、力矩控制模式1.2、速度控制模式1.3、位置控制模式二、硬件介绍2.1、硬件准备2.1.1、SimpleMotor方案2.1.2、STM32方案2.2、硬件连接2.2.1、原理图2.2.2、SimpleMotor接线2.2.3、STM32接线三、程序演示3.1、代码解析3.1.1、零点检测3.1.2、参数设置3.2、下载验证3.2.1、力矩模式3.2.2、速度模式3.2.3、位置模式, 说明 阅读此文,可对照之前这篇文章:SimpleFOC(四)—— 闭环控制原创 2021-09-25 16:30:59 · 38537 阅读 · 29 评论 -
SimpleFOC移植STM32(三)—— 角度读取 (AS5600、AS5047P、TLE5012B、MA730、MT6701、ABZ)
目录说明一、硬件介绍1.1、硬件准备1.1.1、SimpleMotor方案 说明 本节比较简单,主要是演示I2C接口和SPI接口读取编码器角度。为增加大家对编码器的理解,本节后半部提供四种常用编码器的操作说明,并提供源代码。一、硬件介绍 本节实验适合运行在SimpleMotor和STM32最小系统板上(Bluepill)。1.1、硬件准备1.1.1、SimpleMotor方案序号名称数量1驱动器12带编码器云台电机2312V电源14U原创 2021-09-23 15:24:02 · 35834 阅读 · 25 评论 -
SimpleFOC移植STM32(二)—— 开环控制
目录说明一、硬件介绍1.1、硬件准备1.1.1、SimpleMotor方案1.1.2、SimpleFOCShield V2.0.3方案1.2、硬件连接1.2.1、原理图1.2.2、接线二、控制原理2.1、SVPWM2.2、极对数2.3、开环控制三、软件操作和程序下载3.1、Keil编译生成hex文件3.2、FlyMcu下载3.3、SimpleMotor准备3.4、串口发送指令四、程序演示4.1、开环速度控制4.2、开环位置控制 说明 学习本节之前,建议先看《SimpleFOC(二)—— 快速入门 (原创 2021-09-05 18:26:21 · 45513 阅读 · 29 评论 -
SimpleFOC移植STM32(一)—— 简介
目录一、代码移植说明二、程序原理2.1、有感FOC控制原理2.2、有感FOC(不带电流采样)控制原理2.3、SVPWM(heart function)三、适配硬件3.1、Bluepill3.2、SimpleMotor四、程序架构五、演示功能 一、代码移植说明 多年前第一次听说“开源”这个事儿的时候非常不理解,自己辛苦写的代码让别人随意下载研究多吃亏呀,后来见的多了,发现开源也有它自身的一套商业逻辑。但是无论如何开源促进了技术的进步,避免大家重复造轮子,所以这是一件好事! 网上很多文章讲FOC都是原创 2021-07-29 21:14:57 · 70456 阅读 · 13 评论 -
SimpleFOC(八)—— 理论+实践 深度分析SVPWM
目录说明一、有感FOC控制原理二、SVPWM原理三、SimpleFOC(不带电流采样)的控制原理:四、simpleFOC核心代码五、代码实验5.1、实验目的5.2、硬件准备5.3修改代码 第一阶段5.3.1 打开例程5.3.2 修改代码5.3.3、验证上传5.3.4 电机观测5.3.5 修改力矩5.3.6 修改转速5.4修改代码 第二阶段5.4.1 修改代码5.4.2 验证上传5.4.3 电机观测5.4.4 串口操作5.4.5 观察三相波形说明 SimpleFOC的基本操作在前几节都已经演示过了,虽然原创 2021-06-20 13:34:17 · 33964 阅读 · 7 评论 -
SimpleFOC(七)——STM32(Bluepill)的应用
目录说明一、Bluepill说明1.1、最小系统板1.2、下载模式说明二、软件安装2.1、安装库文件和示例2.2、放入安装文件夹2.3、重新打开IDE2.4、选择上传方式为串口2.5、安装编译器2.6、安装SAM三、点亮LED3.1、硬件准备3.2、示例演示四、I2C读取编码器4.1、硬件准备4.2、示例演示五、双I2C读取编码器5.1、硬件准备5.2、示例演示六、SPI读取编码器6.1、硬件准备6.2、示例演示七、PWM输出7.1、硬件准备7.2、示例演示八、Bluepill+simpleFOCShiel原创 2021-06-18 17:24:52 · 25226 阅读 · 18 评论 -
SimpleFOC(六)—— PowerShield和AS5047P
目录一、PowerShield驱动板1.1、硬件准备1.2、速度闭环模式二、AS5047P2.1、硬件准备2.2、示例演示三、大功率电机驱动3.1、硬件准备3.2、示例演示一、PowerShield驱动板 1.1、硬件准备◆1.1.1、PowerShield介绍 板载三个BTN8982功率MOS管,最大电流55A,最大耐压40V,芯片自带电流检测和故障诊断功能IS,分别接在A2和A3引脚。 板载内置电流检测电路,分别接在A0和A1引脚。 PWM输入引脚为D9/D6/D5,使能引脚为原创 2021-06-18 14:44:48 · 11736 阅读 · 5 评论 -
SimpleFOC(五)—— 双电机控制
目录一、硬件说明1、硬件清单2、硬件连接二、程序演示三、其他控制模式1、速度模式2、速度和力矩混合模式 一、硬件说明1、硬件清单序号名称数量1Arduino UNO12simpleFOCShield V2.0.323带磁编码器的云台电机2412V电源15方口USB线1如下图所示: 2、硬件连接 ⑴、驱动板背面跳线 两个驱动板,一个接9、5、6、8,另一个接3、10、11、7。 ⑵、编码器连接 Arduin原创 2021-05-08 09:52:39 · 10530 阅读 · 3 评论 -
SimpleFOC(四)—— 闭环控制
目录一、电机的三种控制模式1、力矩控制模式2、速度控制模式3、位置控制模式二、硬件说明1、硬件清单2、硬件连接三、程序演示1、力矩控制2、速度控制3、角度控制 一、电机的三种控制模式1、力矩控制模式 ◎电机在运行过程的电流,始终等于给定的值。 ◎比如使用电机来拉伸弹簧,设定电流值越大,弹簧被拉伸的长度越长。设定电流越小,弹簧被拉伸的长度越短。设定电流为零,弹簧不被拉伸。 ◎在SimpleFOC项目中,受限于Arduino UNO的运行速度,大部分例程没有使用电流采样,所以设定电压值代替设定原创 2021-05-07 10:04:51 · 24243 阅读 · 9 评论 -
SimpleFOC(三)—— AS5600角度读取
目录一、硬件介绍1、磁编码器说明:2、硬件连接二、程序演示1、模拟电压获取角度2、I2C通信获取角度三、程序拓展一、硬件介绍1、磁编码器说明: ◆AS5600与两极磁铁配对,可以输出12位分辨率的磁性旋转位置,支持IIC通信,还可以输出模拟电压和PWM信号。官方例程中主要演示了模拟电压和IIC通信两种角度获取方式。 ◆模拟电压模式,Aout引脚输出0—5V对应0°—360°, ◆I2C模式,读取0x0C/0x0D两个寄存器,获取12bits的角度值,0—4096对应0°—360°,2原创 2021-04-26 09:56:18 · 42689 阅读 · 14 评论 -
SimpleFOC(二)—— 快速入门 (开环控制)
目录●一、硬件介绍◆1、驱动板版本说明◆2、驱动板跳线◆3、硬件准备◆4、硬件连接●二、软件操作◆1、安装Arduino IDE◆2、安装SimpleFOC library◆3、打开示例程序●三、电机控制◆1、程序下载◆2、开环速度控制 ●一、硬件介绍 ◆1、驱动板版本说明 1、V1.3.3 2、V2.0.3 3、V0.2 V1.3.3没有电流采样,这样做的好处是硬件成本低,控制程序简单,但缺点是力矩控制是开环的,直接输出电压(也就是PWM原创 2021-04-21 09:39:02 · 35628 阅读 · 5 评论 -
SimpleFOC(一)—— 简介(附有文件下载链接)
●前言我们生活在一个非常激动人心的时代????! 无刷直流电机正进入越来越多的爱好社区,许多伟大的项目已经出现利用其远远优越的动态和功率能力。无刷直流电动机比普通直流电动机有许多优点,但有一个很大的缺点,即控制的复杂性。尽管PCB的设计和制造已经变得相对容易,并且我们自己创造了驱动无刷直流电机的硬件解决方案,但是合适的低成本解决方案还没有出现。其中一个原因是编写BLDC驱动算法的明显复杂性,磁场定向控制(FOC)是最有效的算法之一。可以在线找到的解决方案对于某些硬件配置和所使用的微控制器体系结构几乎都非常原创 2021-04-07 16:48:21 · 58242 阅读 · 4 评论
分享