• 机器人控制器编程实践指导书旧版-实践四 步进电机(执行器)


    适用于UNO/2560/DUE/ESP8266/ESP32,2021年之前使用版本。


     

    4.1 实践目的

    • 掌握Arduino[ESP32]对步进电机控制的软硬件测试

    4.2 实践设备

    • PC机一台
    • Arduino[ESP32]开发板及配件等
    • 万用表和示波器等

    4.3 实践原理

    • 初级:无
    • 中级:步进电机调速。

    原理图

    示意图

    • 高级(ROS选修):

    使用电脑键盘按键控制步进电机转速。

    4.4 实践内容

    阅读4.3中示意图、原理图和代码,在Arduino[ESP32]平台上完成实践。

    4.5 实践问题

    4.5.1 步进电机转速如何调节?

    改变极对数变数

    变频调速

    换向器电机调速

    串子调速

    定子调压调速

    电磁转离合器调速

    转子串电阻调速

    4.5.2 步进电机转速如何精确控制?

    可以采用专用的步进电机驱动器。电脑只需向驱动器输出两个信号:脉冲和调向信号。脉冲信号的频率控制步进电机的转速,脉冲的个数控制步进电机的转角;调向信号控制步进电机的转向。

    步进电机只能够由数字信号控制运行的,当脉冲提供给驱动器时,在过于短的时间里,控制系统发出的脉冲数太多,也就是脉冲频率过高,将导致步进电机堵转。要解决这个问题,必须采用加减速的办法。就是说,在步进电机起步时,要给逐渐升高的脉冲频率,减速时的脉冲频率需要逐渐减低。所以步进电机在高速启动时,需要采用脉冲频率升速的方法,在停止时也要有降速过程,以保证实现步进电机精密定位控制。

    4.6 实践总结

    回顾本次实践,遇到哪些问题,如何解决,经验和启发有哪些?

    使用ESP32 驱动步进电机

    void setup() {

      //设置转速

      myStepper.setSpeed(120);

      Serial.begin(115200);

    }

    void loop() {

      Serial.printf("顺时针");

      myStepper.step(2048);

      delay(500);

      Serial.printf("逆时针");

      myStepper.step(-1024);//倒转半圈

      delay(500);

    }

    评分:                                                         

                                                                   

  • 相关阅读:
    【rar密码】WinRAR整理密码,如何使用?
    MVMD(多元变分模态分解)
    pandas学习笔记
    Sndroid开发设置Settings
    宝塔FTP提示:553 Can‘t open that file: Permission denied的解决方案
    Bridge 模式
    Redis GEO 类型与 API 结合,地理位置优化的绝佳实践
    力扣(LeetCode)799. 香槟塔(C++)
    Web Component-处理数据
    Hadoop----Azkaban的使用与一些报错问题的解决
  • 原文地址:https://blog.csdn.net/ZhangRelay/article/details/126260762