1、实验原理
步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。本实验就是通过控制脉冲个数来控制角位移量,从而达到准确定位的目的。
所需元器件:步进电机、驱动板、电位器、面包板、跳线若干、Arduino控制板。
实验原理图如图所示:
减速步进电机直径:28mm电压:5V步进角度:5.625 x 1/64减速比:1/64;5线4相 可以用普通uln2003芯片驱动,也可以接成2相使用。
该步进电机空载耗电在50mA以下,带64倍减速器,输出力矩比较大,可以驱动重负载,极适合开发板使用。注意:此款步进电机带有64倍减速器,与不带减速器的步进电机相比,转速显得较慢,为方便观察,可在输出轴处粘上一片小纸板。
2、硬件电路接线
3、程序设计
/**************************************************** 步进电机实验程序 步进电机随着电位器转动而摆动 http://www.landzo.com/ This example code is in the public domain. ****************************************************/ //使用arduino IDE自带的Stepper.h库文件 #include <Stepper.h> // 这里设置步进电机旋转一圈是多少步 #define STEPS 100 // attached to设置步进电机的步数和引脚 Stepper stepper(STEPS, 8, 9, 10, 11); // 定义变量用来存储历史读数 int previous = 0; /**************************************************** 初始化部分_setup()函数 ****************************************************/ void setup() { // 设置电机每分钟的转速为90步 stepper.setSpeed(90); } /**************************************************** 执行部分_loop()函数 ****************************************************/ void loop() { // 获取读数使用0号模拟口输入 int val = analogRead(0); // 移动步数为当前读数减去历史读数 stepper.step(val - previous); // 保存历史读数 previous = val; }
程序读入后,试着旋转电位器,看电机转动角度有什么变化,如果电机来回转动就说明实验成功了。
4、实验操作
1) 按照图4-18-4将电路连接到Arduino开发板上。
2) 插上编程线,把程序下载到Arduino控制板。步进电机控制板的输入分别是Arduino PIN8到11,电位计的输入是A0。
3) 观察运行情况。
5、实验结果
通过本实验,可以实现步进电机转动随着电位器的变化而变化。在做实验前要留意的就是你用的步进电机是四相还是二相的,注意接口的对应。本实验的关键还在于调节脉冲的变化控制电机的转动角度的变化。
发表评论
要发表评论,您必须先登录。