回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

arduino控制步进电机【mind+】 简单

头像 影子白 2025.12.17 28 0

一个步进电机突然的闯进我生活,告诉我他的存在,可是我拥有了你,你确对我爱答不理

图片.png
图片.png

了解了别人对你的介绍

打个比方,四相是四个足球运动员,对应的是数字口11,10,9,8,均匀站在圆圈的四个位置,11号球员将球踢给10号(11号口高电平,其他低电平),10号再踢给9号(10号口高电平,其他低电平),9号再踢给8号(9号口高电平,其他低电平),8号再踢给11号(8号口高电平,其他低电平),依次循环,步进电机正转,每个球员踢给下一个球员所用时间代表了速度(脉冲),时间越短,步进电机转动越快。

从mind+搜到了你的驱动库

图片.png

图片.png

那就这样慢慢的动起来 刚开始还没发现你会转的这么慢 上面的几个参数可以调整速度

但是移动步数 1和100 好像没有区别 有大神知道吗

感觉可以做时钟

代码

/* 
找了arduino的代码到
 通过电压输入控制步进电机转动步数
 使用的电机不同,得到的参数不同,可以选用官方推荐的电机。

 官方参考信息
 http://www.arduino.cc/en/Reference/Stepper
 */
 
#include <Stepper.h>

const int stepsPerRevolution = 512;  // 电机每一转动一圈所需要的步数,这个因不同的电机有差别
//这里使用5线单极型电机,带机械减速齿轮,减速比1/16,步进角度是5.625/16

// 初始化引脚
Stepper myStepper(stepsPerRevolution, 8,10,9,11);            

void setup() {
  // 设置转速
  myStepper.setSpeed(5);
  // 初始化串口
  Serial.begin(9600);
}

void loop() {
  // 正向转一圈
   Serial.println("clockwise");
  myStepper.step(stepsPerRevolution);
  delay(500);
  
   // 反向转一圈
  Serial.println("counterclockwise");
  myStepper.step(-stepsPerRevolution);
  delay(500); 
}

1766040600572.gif

评论

user-avatar