SimpleFOC移植STM32(三)—— 角度读取 (AS5600、AS5047P、TLE5012B、MA730、MT6701、ABZ)
目录
- 说明
- 一、硬件介绍
- 1.1、硬件准备
- 1.1.1、SimpleMotor方案
- 1.1.2、STM32方案
- 1.2、硬件连接
- 1.2.1、原理图
- 1.2.2、接线
- 二、代码编译下载
- 2.1、代码解析
- 2.2、下载验证
- 2.3、其它说明
- 三、百度网盘代码说明
- 3.1、AS5600
- 3.2、AS5047P
- 3.3、TLE5012B
- 3.4、MA730
- 3.5、MT6701
- 3.6、ABZ
SimpleFOC的教程比较多,做了一个总链接,欢迎点击阅读:SimpleFOC教程链接汇总
说明
本节比较简单,主要是演示I2C接口和SPI接口读取编码器角度。
为增加大家对编码器的理解,后面介绍常用编码器并提供原理图和源代码。
一、硬件介绍
本节实验适合运行在SimpleMotor和STM32最小系统板上(Bluepill)。
20230323更新,增加了MT6701编码器说明
1.1、硬件准备
1.1.1、SimpleMotor方案
序号 | 名称 | 数量 |
---|---|---|
1 | SimpleMotor | 1 |
2 | 带编码器云台电机 | 2 |
3 | USB转串口 | 1 |
4 | 12V电源 | 1 |
两个编码器可以是两个AS5600,也可以是两个TLE5012B,或者一个是AS5600,一个是TLE5012B。
电机 购买链接:某宝购买
SimpleMotor 购买链接:某宝购买
1.1.2、STM32方案
序号 | 名称 | 数量 |
---|---|---|
1 | STM32核心板 | 1 |
2 | 带编码器云台电机 | 2 |
3 | USB转串口 | 1 |
4 | 5V电源 | 1 |
5 | 杜邦线 | 若干 |
两个编码器可以是两个AS5600,也可以是两个TLE5012B,或者一个是AS5600,一个是TLE5012B。
电机 购买链接:某宝购买
simpleFOCShield V2.0.3购买链接:某宝购买
1.2、硬件连接
1.2.1、原理图
1.2.2、接线
或者
二、代码编译下载
本节代码只演示AS5600和TLE5012B两种编码器,其它编码器请自行移植代码。
2.1、代码解析
1、主循环读角度值,每隔1秒打印一次。可以同时读两个编码器,只需读一个的屏蔽另一个。
如果需要打印速度,可以把屏蔽打开。
2、“MyProject.h”文件中选择编码器型号,1表示使用,0表示不用。只用一个编码器的,可以把不用的都设置为0。
3、上电初始化,根据“MyProject.h”中的宏定义编译。
4、需要说明的是I2C读编码器的代码,本节代码采用硬件I2C,支持I2C1和I2C2。STM32的硬件I2C代码网上有很多参考,但是写的比较乱,移植了几个都不能用,在ST官网上找了一个例程,因年代久远,与现在常用的库函数风格不同,都是直接操作寄存器,不过做为底层代码,不会影响大家的体验。
5、ST官网I2C例程,我放在网盘了,有需要的可以下载看看。
6、I2C的波特率是400KHz,SPI波特率是9MHz。
2.2、下载验证
1、根据实际连接的编码器类型,设置“MyProject.h”中的参数,
2、编译下载。串口或者SWD,
3、转动电机,观察角度变化。(角度的单位是rad,速度单位是rad/s)
2.3、其它说明
1、I2C和SPI速度对比:
- 两个编码器都使用AS5600,主循环3420Hz,
- 两个编码器都使用TLE5012B,主程序15200Hz,
- M1是AS5600,M2是TLE5012B,主程序5530Hz,
- M1是TLE5012B,M2是AS5600,同上
以上数据来自实际测试,会有误差。
2、不同编码器工作电压电流对比:
- AS5600:3.3-5V,6.5mA @max
- TLE5012B:3-5.5V,14mA @Type,
- AS5047/AS5048:3.3-5V,15mA @max
- MA730:3.3V,11.7mA @Type,
以上数据来自各芯片的数据手册。
三、百度网盘代码说明
3.1、AS5600
①、原理图
②、SimpleMotor的I2C2连接
③、也可以用STM32最小系统板连接
④、串口打印角度0—360°
3.2、AS5047P
3.3、TLE5012B
3.3.1、STM32ReadTLE5012B_spi2_m2
①、原理图
②、SimpleMotor的M2接口连接
③、也可以用STM32最小系统板连接
④、串口打印角度0—360°
3.3.2、STM32ReadTLE5012B_spi2_m1
①、原理图
②、SimpleMotor的M1接口连接
③、也可以用STM32最小系统板连接
3.3.3、STM32ReadTLE5012B_spi1
①、原理图
②、不支持SimpleMotor,用STM32最小系统板连接
3.4、MA730
3.5、MT6701
电机 购买链接:某宝购买
每个代码的压缩包解压后有接线图片,可以参考,
每个main.c文件,最上面有单片机的引脚使用说明。
3.6、ABZ
main.c文件,最上面有单片机的引脚使用说明。
(完)
本节源码下载:
链接:https://pan.baidu.com/s/1ueR9a9_uL-Zce_CKTwhawQ
提取码:9qls
欢迎加入simpleFOC技术交流群:923734429 群已满根据提示添加新群 (入群申请写:CSDN)
请继续阅读相关文章:
SimpleFOC移植STM32(一)—— 简介
SimpleFOC移植STM32(二)—— 开环控制
SimpleFOC移植STM32(三)—— 角度读取
SimpleFOC移植STM32(四)—— 闭环控制
SimpleFOC移植STM32(五)—— 电流采样及其变换
SimpleFOC移植STM32(三)—— 角度读取 (AS5600、AS5047P、TLE5012B、MA730、MT6701、ABZ)相关推荐
- SimpleFOC移植STM32(六)—— 双电机控制和力矩反馈
目录 一.说明 二.硬件介绍 2.1.原理图 2.2.准备清单 2.3.接线 三.程序演示 3.1.设置参数 3.2.编译下载 3.3.根据设置的控制模式操作 四.双电机控制总结 五.力矩反馈 5.1 ...
- SimpleFOC移植STM32(五)—— 电流采样及其变换
目录 一.原理说明 1.1.电流采样 1.1.1.为什么要采样电流 1.1.2.电流采样方式 1.1.2.1.低侧电流采样 1.1.2.2.高侧电流采样 1.1.2.3.内置电流采样 1.2.电流变换 ...
- SimpleFOC移植STM32(二)—— 开环控制
目录 注意事项 一.硬件介绍 1.1.硬件准备 1.1.1.SimpleMotor方案 1.1.2.SimpleFOCShield V2.0.3方案 1.2.硬件连接 1.2.1.原理图 1.2.2. ...
- SimpleFOC移植STM32(八)—— 霍尔电机
目录 说明 一.霍尔电机 1.1.电机的种类 1.2.霍尔传感器 1.3.SimpleFOC的霍尔电机控制原理 二.电机驱动板103 2.1.读取霍尔角度 2.2.驱动霍尔电机M1 2.3.驱动霍尔电 ...
- SimpleFOC移植STM32(七)—— 移植STM32F405RGT6
目录 说明 一.点亮LED 1.1.原理图 1.2.硬件准备 1.3.烧写 二.开环控制 2.1.硬件准备 2.2.硬件连接 2.3.打开工程 2.4.修改参数 2.5.编译下载,观察运行 三.角度读 ...
- SimpleFOC移植STM32(九)—— ABZ编码器电机
目录 说明 一.ABZ编码器介绍 1.1.ABZ信号 1.2.光电式编码器 1.3.磁编码器 1.4.差分信号 二.电机驱动板103 2.1.读ABZ信号的cpr 2.1.1.接线 2.1.2.编译, ...
- IIC读取AS5600磁编码器并计算相对角度与圈数代码移植
芯片F103CBT6,使用cubeide+hal库,驱动部分源码移植于: (22条消息) STM32使用模拟I2C读取AS5600(深入讲解:带波形图)_yizeni的博客-CSDN博客_as5600 ...
- 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植AS5600 软件IIC
[FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植 [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植 一.编码器选择 二.通讯方式 ...
- 对于STM32F103三轴机械臂控制器进行基本功能测试-关节角度读取
➤01 机械臂调试 1.简介 对 基于STM32对于三轴机械臂控制器设计 中对应的控制电路读取肩部和肘部两个 角度编码器 ST-3806-15-RS 数据进行调试. 2.接口电路1 ▲ 角度读取的相关 ...
最新文章
- Java设计模式之五大创建型模式(附实例和详解)
- 极客Web前端开发资源大荟萃#007
- silverlight后台加载本地图片
- SpringBoot2 集成测试组件,七种测试手段对比
- 警惕!有“庄家”“大V”联合诱骗投资者,忽悠式荐股
- Spring入门(四):使用Maven管理Spring项目
- (PotPlayer)Windows视频播放神器
- 32位 java8u_java8下载 Java8.0U181官方正式版(32位/64位)
- JSP编程技术4-登录与注销(静态)
- 如何避免gradle插件下载:Gradle、Android Plugin、Build Tools
- MTK 如何更换开机 LOGO?
- 哈佛引用格式(Harvard referencing system)
- 怎么把.nii文件转成.dcm文件
- ps怎么为指定区域填充指定背景色图案?
- matlab画简谐振动图,基于MATLAB的简谐振动合成图形的动态演示.pdf
- docke网络之bridge、host、none
- uni-app 封装接口 405错误
- Cadence改背景色
- Luckysheet导出excel
- 天津成考计算机水平考试,天津市成考《计算机基础考试大纲》(高中起点)