目录

  • 注意事项
  • 一、硬件介绍
    • 1.1、硬件准备
      • 1.1.1、SimpleMotor方案
      • 1.1.2、SimpleFOCShield V2.0.3方案
    • 1.2、硬件连接
      • 1.2.1、原理图
      • 1.2.2、SimpleMotor接线
      • 1.2.3、STM32接线
  • 二、控制原理
    • 2.1、SVPWM
    • 2.2、极对数
    • 2.3、开环控制
  • 三、软件操作和程序下载
    • 3.1、Keil编译生成hex文件
    • 3.2、FlyMcu下载
    • 3.3、SimpleMotor准备
  • 四、程序演示
    • 4.1、开环速度控制
      • 4.1.1、打开工程
      • 4.1.2、修改参数
      • 4.1.3、编译下载
      • 4.1.4、串口发送指令
    • 4.2、开环位置控制
      • 4.2.1、打开工程
      • 4.1.2、修改参数
      • 4.1.3、编译下载
      • 4.1.4、串口发送指令

SimpleFOC的教程比较多,做了一个总的链接,欢迎点击阅读:SimpleFOC教程链接汇总

注意事项

  • 1、电机的三根线可以任意接在驱动器的ABC三相上,不用区分;
  • 2、开环控制最好选择Ω级的电机,尽量不要用mΩ级的航模电机,容易烧MOS和电机。开环控制在实际中也就启动时用用,这不是电机控制的一个常态。
  • 3、电机控制要尽快操作,不要停留时间太久,时刻注意电机和驱动器的发热情况,一旦过热立即断电。

一、硬件介绍

本节实验适合运行在SimpleMotor和SimpleFOCShield V2.0.3上。

1.1、硬件准备

1.1.1、SimpleMotor方案

序号 名称 数量
1 驱动器 1
2 云台电机 1
3 12V电源 1
4 USB转串口 1


带编码器云台电机可以是AS5600,也可以是TLE5012B。
电机 购买链接:某宝购买
SimpleMotor 购买链接:某宝购买

1.1.2、SimpleFOCShield V2.0.3方案

序号 名称 数量
1 STM32核心板 1
2 SimpleFOCShield V2.0.3 1
3 云台电机 1
4 12V电源 1
5 5V电源 1
6 USB转串口 1
7 杜邦线 若干


带编码器云台电机可以是AS5600,也可以是TLE5012B。
电机 购买链接:某宝购买
simpleFOCShield V2.0.3购买链接:某宝购买

1.2、硬件连接

1.2.1、原理图

1.2.2、SimpleMotor接线

1.2.3、STM32接线

对于SimpleFOCShield V2.0.3,需要杜邦线连接主板和驱动板,记得共地。

对照 Shield V2.0.3 的原理图:

STM32核心板 V2.0.3
PA0 5
PA1 9
PA2 6
PB9 8
GND GND

注意事项:
①、无刷电机的三根相线不用区分顺序,任意接在端子上即可,调整其中任意两根电机反转。
②、12V先不要上电,开环控制电机会发热,上电时间过久容易烧坏。最好等到程序编译上传后再上电,上电尽快操作。
③、最好使用大电阻的云台电机(比如10Ω),如果使用mΩ级的航模电机,操作不当,容易烧毁驱动器MOS和电机。

二、控制原理

2.1、SVPWM

  SVPWM的原理请看这篇文章:SimpleFOC(八)—— 理论+实践 深度分析SVPWM。

  Uq为交轴,Ud为直轴,角度angle_e1是电机的电角度。
  一般应用直接设置Ud=0,通过控制Uq来控制磁场大小,控制angle来控制磁场方向;
  开环控制中,直接设置Uq = voltage_limit,按照固定的速度递增angle就是速度模式;递增angle到设定值就是角度模式。
  闭环控制中,angle来自编码器,根据编码器计算实际速度和位置,如果速度大于设定值,PID调小Uq降低速度,如果速度小于设定值,程序调大Uq增加速度。

2.2、极对数

  无刷电机转子中磁铁的对数就是极对数。

  电机转子转一圈,称为360°(或者叫2Pi)机械角度,转子转过一对磁极,称为360°电角度。
  如上图的7对极,电机需要转7X360电角度 = 360机械角度。SVPWM控制的angle为电角度,而编码器读到的是机械角度,所以需要把机械角度转为SVPWM可用的电角度。

2.3、开环控制

  SVPWM+设定的角度angle = 开环控制,

三、软件操作和程序下载

3.1、Keil编译生成hex文件

选择生成hex文件。如果用STlink下载可忽略此步。

3.2、FlyMcu下载

如果用STlink下载可忽略此步。

3.3、SimpleMotor准备

- 如果用STlink下载,SWCLK接驱动板的SDK、SWDIO接驱动板的SWD,GND接GND。- 如果用串口下载:1、USB转串口的TXD接驱动板的RX1,USB转串口的RXD接驱动板的TX1,GND接GND,2、按住Boot键不松手,按下RST键松开,然后再松开Boot键,单片机进入Boot模式,(如果你手头的驱动板Boot键是跳线帽,短接跳线帽相当于按住Boot键)3、点击FlyMcu的开始编程,等待下载完成。

四、程序演示

开环控制尽快操作,注意电机发热情况,发热严重要立即断电
1、电机抖动转不起来把voltage_limit设置的大一点,
2、电机发热严重的把voltage_limit设置的小一点,
3、电机能转就表示一切正常,可以学习下一章了,开环不是电机控制的常态,不要纠结太久。20211224

4.1、开环速度控制

4.1.1、打开工程


4.1.2、修改参数

- 选择controller=Type_velocity_openloop;
- 电源电压和极对数根据实际情况设置;电源电压增加voltage_limit也要相应的增大
- voltage_limit在不了解电机性能的情况下从小逐渐增加,每次修改后注意工作电流和电机发热;
- 如果电机功率较小而voltage_limit偏小,电机会转不动;
- 如果电机功率较大而voltage_limit偏大,电机会发热严重。

4.1.3、编译下载

  FlyMcu通过串口下载或者STlink通过SWD接口下载。
  串口下载需先进入Boot模式,下载完以后按复位键运行。

4.1.4、串口发送指令

  常用的串口调试软件,在发送区敲回车,对应的16进制数据为0D 0A,也就是回车换行;Arduino IDE自带的串口监视器,输入指令点发送,只有16进制的0A。所以不能用Arduino IDE的软件给当前代码发送指令。
  发送指令,从低速开始逐渐增加,速度设置过快电机容易失步变成振动。速度单位为rad/s,6.28表示一圈每秒。

4.2、开环位置控制

4.2.1、打开工程

  和开环速度为同一个工程

4.1.2、修改参数

  选择controller=Type_angle_openloop;

4.1.3、编译下载

4.1.4、串口发送指令

  设定目标值,单位为rad,一圈=6.28rad。


本节源码下载:
链接:https://pan.baidu.com/s/1mvd5Wh1uBZz0FNXgE44tVA
提取码:d4q7

(完)

欢迎加入simpleFOC技术交流群:923734429 群已满根据提示添加新群 (入群申请写:CSDN)


请继续阅读相关文章:
SimpleFOC移植STM32(一)—— 简介
SimpleFOC移植STM32(二)—— 开环控制
SimpleFOC移植STM32(三)—— 角度读取
SimpleFOC移植STM32(四)—— 闭环控制
SimpleFOC移植STM32(五)—— 电流采样及其变换

SimpleFOC移植STM32(二)—— 开环控制相关推荐

  1. SimpleFOC移植STM32(六)—— 双电机控制和力矩反馈

    目录 一.说明 二.硬件介绍 2.1.原理图 2.2.准备清单 2.3.接线 三.程序演示 3.1.设置参数 3.2.编译下载 3.3.根据设置的控制模式操作 四.双电机控制总结 五.力矩反馈 5.1 ...

  2. SimpleFOC移植STM32(七)—— 移植STM32F405RGT6

    目录 说明 一.点亮LED 1.1.原理图 1.2.硬件准备 1.3.烧写 二.开环控制 2.1.硬件准备 2.2.硬件连接 2.3.打开工程 2.4.修改参数 2.5.编译下载,观察运行 三.角度读 ...

  3. SimpleFOC移植STM32(九)—— ABZ编码器电机

    目录 说明 一.ABZ编码器介绍 1.1.ABZ信号 1.2.光电式编码器 1.3.磁编码器 1.4.差分信号 二.电机驱动板103 2.1.读ABZ信号的cpr 2.1.1.接线 2.1.2.编译, ...

  4. 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.代码解 ...

  5. SimpleFOC移植STM32(八)—— 霍尔电机

    目录 说明 一.霍尔电机 1.1.电机的种类 1.2.霍尔传感器 1.3.SimpleFOC的霍尔电机控制原理 二.电机驱动板103 2.1.读取霍尔角度 2.2.驱动霍尔电机M1 2.3.驱动霍尔电 ...

  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.电流变换 ...

  7. 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植AS5600 软件IIC

    [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植 [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植 一.编码器选择 二.通讯方式 ...

  8. 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(6)- foc速度闭环控制

    [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(6)- foc速度闭环控制 [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(6)- foc速度闭环控制 一.电机选择 ...

  9. 【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(2)-SVPWM波实现

    [FOC控制]英飞凌TC264无刷驱动方案simplefoc移植(2)-SVPWM波实现 SVPWM波实现就是无数电机foc控制的核心,所以这一节就如何在英飞凌无刷驱动上时间互补pwm波形做讲解 [F ...

最新文章

  1. ClientScriptManager.RegisterStartupScript.
  2. 利用74LS161计数器芯片分别实现模12,模20的计数器,并在QuartusⅡ上进行仿真
  3. JSONP简单入门介绍
  4. AAAI2020录用论文汇总(一)
  5. xib和storyboard小谈,
  6. php项目打开快捷方式,PHP_克隆一个新项目的快捷方式,有没想过最土的项目如何快速 - phpStudy...
  7. arduino连接12864LCD方法
  8. 价值800新视界影视源码全开源源码
  9. 域名是如何变成IP的
  10. matlab 并联机器人,MATLAB在并联机器人运动仿真中的应用
  11. 《A Relation-Specific Attention Network for Joint Entity and Relation Extraction》论文
  12. 陶哲轩实分析 命题7.4.3 (级数的重排) 证明
  13. excel取消隐藏_excel批量取消工作表隐藏,困绕我们N年的问题终于有了答案!
  14. ES6(ES2015)
  15. python实现汇率转换
  16. 数组转这种格式 county_list:{ 110101: “东城区“, 110102: “西城区“, 110105: “朝阳区“, 110106: “丰台区“,
  17. Q1成绩:华为可穿戴设备增幅亮眼,Uber亏损10亿美元!
  18. PE启动如何解除BitLocker硬盘锁
  19. 弥散磁共振成像在神经科学中的应用
  20. .NET实现工资管理系统

热门文章

  1. Tensorflow环境搭建
  2. 从LeNet-5 CNN模型入门PyTorch
  3. 【微信小程序】rpx
  4. C/C++游戏项目完整教程:《坦克大战》
  5. ROS学习笔记-用脚本发布cmd_vel话题
  6. Win10 Ubuntu16.04 时间同步问题
  7. 阿里云生活物联网平台搭建
  8. OSPF你懂多少之经典问题50个
  9. 微信朋友圈点赞测试用例
  10. python爬取58同城租房信息