SimpleFOC(二)—— 快速入门 (开环控制)


  

●一、硬件介绍

  

◆1、驱动板版本说明

  1、V1.3.3         2、V2.0.3        3、V0.2
在这里插入图片描述
    V1.3.3没有电流采样,这样做的好处是硬件成本低,控制程序简单,但缺点是力矩控制是开环的,直接输出电压(也就是PWM的占空比)来调节力矩。升级后的第二代V2.0.x增加了电流采样,可以做到力矩闭环,当然代价就是增加了采样电阻和运放,成本提高了。
    V2.0.x的板载驱动芯片是L6234,工作电压7-52V,峰值电流5A,官方推荐工作电压<24V,电流<3A,负载电机的内阻要>10欧姆。主要是针对小功率云台电机。
    V0.2是大功率驱动器。主要是更换了驱动芯片,其控制方法与小功率类似。板载驱动芯片是BTN8982TA,工作电压可达40V,电流55A。
    程序学习先从小功率云台电机开始。
  

◆2、驱动板跳线

    按照创作者的设计,Arduino主板可以同时控制两个电机,但是V2.0.3驱动板只能接一个电机,所以需要手动把控制引脚和驱动电路连接起来。本节只演示开环控制程序,只需要把9、5、6、8引脚连接即可。直接用焊锡短接或者0欧姆电阻连接。
在这里插入图片描述

  

◆3、硬件准备

序号 名称 数量
1 Arduino UNO 1
2 simpleFOCShield V2.0.3 1
3 云台电机 1
4 12V电源 1
5 方口USB线 1

在这里插入图片描述
● simpleFOCShield V2.0.3购买链接:淘宝购买
●电机购买链接:淘宝购买
  

◆4、硬件连接

    ①、SimpleFOCShield V2.0.3主板与Arduino UNO主板堆叠连接,
    ②、USB线连接Arduino UNO主板,与主板通信并提供5V电压,
    ③、12V电源连接主板TB_PWR接口,注意正负极,
    ④、电机三根相线连接至V2.0.3主板TB_M1的3个接口。三根相线不用区分,任意接在端子上。


  12V先不要上电,开环控制电机会发热,上电时间过久容易烧坏。最好等到程序编译上传后再上电,上电尽快操作。
  开环控制的目的主要是建立对电机控制的初步认识,以及验证电机和驱动板功能是否正常,不要停留太久!

    硬件连接如下图:
在这里插入图片描述

  
  

●二、软件操作

  

◆1、安装Arduino IDE

    SimpleFOC是完全基于Arduino的一个开源项目,所以对这个项目有兴趣的同学要先熟悉Arduino。
    Arduino IDE下载地址:https://www.arduino.cc/en/software
在这里插入图片描述
在这里插入图片描述
    此软件免安装,下载的文件,放到不包含中文路径的文件夹中,解压后双击图标 打开软件,如果打开失败,可能是需要安装JDK,请先安装Java的JDK。
  

◆2、安装SimpleFOC library

    ◎打开软件后,点击 工具—>管理库
在这里插入图片描述
    ◎在打开的小窗口中输入Simple FOC,选择最新版本,点击安装。
在这里插入图片描述
    安装完以后关闭软件,重新打开Arduino IDE。
  

◆3、打开示例程序

在这里插入图片描述
  

●三、电机控制

  

◆1、程序下载

◎例程打开后程序不需要做任何改动,只要驱动板的跳线是按照《2、驱动板跳线》9、5、6、8连接,电机极对数虽然不一定刚好正确,但是开环情况下并没有影响。
在这里插入图片描述
  
◎点击 工具,查看端口是Arduino所用接口(主要针对电脑上连接有多个USB转串口)。
在这里插入图片描述
  
◎点击“上传”,等待上传成功,
在这里插入图片描述
  

◆2、开环速度控制

◎开环速度控制需要通过串口发送指令,所以先打开“串口监视器”,
在这里插入图片描述
◎修改波特率为115200,Arduino初始化后会上传信息,如下图:
在这里插入图片描述
◎输入速度“T5”(T表示这是一个速度指令,5的单位是rad/s),然后点击“发送”,
在这里插入图片描述
◎收到指令后电机开始转动,并回复当前速度,
在这里插入图片描述
◎输入不同的速度指令,可观察到电机转速随指令变化,速度不能设置太快,会导致电机失步,由转动变成震动。
  
开环速度演示视频:https://www.bilibili.com/video/BV1KK4y1R7dm/
  
注意:
1、不同电机KV值不同,可以设置的最大速度不同,
2、开环控制时间不能太久,电机会发热。此程序主要为演示,正常使用一般采用闭环模式。

  

◆3、开环位置控制

◎打开示例程序
在这里插入图片描述
◎修改电机极对数,当前所用电机极对数为7。极对数就是电机的外转子中的磁钢数,当前电机有14片磁钢,也就是7对。simpleFOC的程序可以自动检测极对数,在稍后章节中会给大家讲解。
在这里插入图片描述
◎编译,上传。示例代码为只读文件,修改后的程序不能保存,如需保存要另存为。
在这里插入图片描述
◎打开 串口监视器,
在这里插入图片描述
◎等待程序完成初始化,
在这里插入图片描述
◎输入位置信息,点击 发送
在这里插入图片描述
◎可以看到电机转了一圈后停止,并回复位置信息。
在这里插入图片描述
◎输入不同的位置指令,可观察到电机转动到不同位置。
  
开环位置演示视频:https://www.bilibili.com/video/BV1q44y1z7jj/
  

◆4、程序说明

  ⑴、SimpleFOC中,所有的速度、角度和位置信息都是弧度制,180°=π=3.14,所以360°=6.28。
  ⑵、在开环速度例程中:
  因为电机极对数不正确,可能会导致设置速度与实际速度不一致,如果修改为当前使用的电机极对数7,输入6.28,电机会按照6.28rad/s的速度转动,也就是一秒一圈。
  ⑶、在开环位置例程中:
  上电后电机复位为0度(电角度),角度计算采用累加的方式,比如输入角度为10,电机转动10rad到指定位置,再输入11,则沿着刚才的方向再转动1rad到11rad,再输入0,电机反转回到起始位置。
  如果电机极对数设置不正确,比如当前使用的电机极对数为7,程序中为11,输入6.28,电机会转动11个极对数,也就是一圈半多一点。关于电角度和机械角度的区别请自行百度。


(完)

欢迎加入simpleFOC技术交流群:923734429 (入群申请写:CSDN)

请继续阅读相关文章:
SimpleFOC(一)—— 简介(附有文件下载链接)
SimpleFOC(三)—— AS5600角度读取
SimpleFOC(四)—— 闭环控制
SimpleFOC(五)—— 双电机控制
SimpleFOC(六)—— PowerShield和AS5047P
SimpleFOC(七)——STM32(Bluepill)的应用
SimpleFOC(八)—— 理论+实践 深度分析SVPWM
SimpleFOC(九)—— 霍尔电机控制

Guess you like

Origin blog.csdn.net/loop222/article/details/115766408