减速电机和步进电机小车

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hqy2000c/article/details/82954333
在制作智能小车的时候,也许会纠结我该选择哪种电机,常见的电机有减速电机、步进电机、伺服电机等,那么本次主要讨论一下减速电机和步进电机
  1. 首先了解一下什么是减速电机和步进电机各自工作方式的区别
  2. 在控制不同的电机上开发板有什么区别
  3. 减速电机和控制步进电机的控制代码有什么区别
一、首先介绍一下减速电机和步进电机:

减速电机是由减速器(齿轮箱)和电机组成而成,电机提供的是高速转速,但力矩很小,惯性大;减速器的功能则是降低转速、提升扭矩,降低惯性,已到达理想的转速和力矩;比如常见的有电动窗帘、电动卷闸门,都采用了减速电机,转速慢、力矩大。
在这里插入图片描述

步进电机是将脉冲信号转变为角位移或线位移的开环控制电机。电机的转速、停止位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向旋转一个固定的角度,成为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲的个数来控制角位移量,从而达到准确定位的目的。也可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
在这里插入图片描述

那么简单来说
减速电机工作方式就是通过简单的输入高低电平来决定它是否转动
步进电机的转动则是通过脉冲信号进行控制的,步进电机将电脉冲转换成特定的旋转运动,每个脉冲的旋转角度是精确的,假设一次脉冲输入可以让电机转动1.8°,那么给电机200次脉冲输入就可以让它转动360°

二、在控制不同的电机下不同的开发板有什么区别

我在使用减速电机的情况下 用树莓派 + L298N电机驱动板来控制
在这里插入图片描述
而使用步进电机的情况下 则用Arduino + 步进电机驱动板来控制
在这里插入图片描述
树莓派可以用来控制减速电机,但不能精确控制步进电机
因为树莓派是一台装载linux系统的微型电脑,如果CPU陷入停顿,程序可能会发生延迟,而操作系统本身也需要不停的调度各种进程,导致操作GPIO的进程并不是实时独占整个cpu时间的,命令可能不会在第一时间执行
而Arduino实际上是一个微控制器,拥有直接执行代码的灵活性,当对传感器数据或其他输入可以做到即时响应,但arduino却无法像树莓派那样去处理复杂的问题

所以可以把需要即时响应的传感器和电机等硬件接到Arduino上 而把复杂的程序处理放到树莓派里去计算运行(例如使用摄像头进行图像识别)

三、减速电机和控制步进电机的控制代码

树莓派控制减速电机

通过高低电平对减速电机进行控制

# 减速电机旋转
def forward():
    GPIO.output(IN1, GPIO.HIGH)
    GPIO.output(IN2, GPIO.LOW)
    GPIO.output(IN3, GPIO.HIGH)
    GPIO.output(IN4, GPIO.LOW)
    pwm_ENA.ChangeDutyCycle(80)
    pwm_ENB.ChangeDutyCycle(80)
Arduino控制步进电机代码

而arduino对电机输入一个高低电平完成一次脉冲,循环输入200次脉冲信号完成一圈转动

// 步进电机旋转
void forward() {
  // 200个脉冲 * 细分 = 1圈
  int pulse = 200 * xifen;
  
  digitalWrite(dir1, HIGH);
  digitalWrite(dir2, LOW);
  
  if (flag == 1) {
  	// 循环输入200次脉冲让电机转一圈
    for(x = 0; x < pulse; x++) {
      digitalWrite(stp1, HIGH);
      digitalWrite(stp2, HIGH);
      //设置时间间隔
      delayMicroseconds(1000);
      digitalWrite(stp2, LOW);
      digitalWrite(stp1, LOW);
      delayMicroseconds(1000);
    }
  }

  flag = 0;
}

那么,相对于减速电机,步进电机因为高精确性,能够胜任更多的场景
因为步进电机每个脉冲产生的运动都是精确的,那么在一些特定的场景下要比减速电机更适合
假设当小车在一个较窄迷宫中移动时,小车的每次移动和转弯都需要非常精确,不然小车很容易就会撞上墙壁
步进电机小车的话 就可以做出较精确的行为,比如标准的90°转弯,向前移动30cm等。

最后附上两张小车图
在这里插入图片描述
在这里插入图片描述

展开阅读全文

没有更多推荐了,返回首页