单片机实验二 步进马达试验

实验二 步进马达试验

一、实验目的

1.熟悉实验软件和硬件,进行正确的接线;
2.编程使得马达转动;

二、实验软硬件

1.Keil uVision4
2.PZISP自动下载软件
3.HC6800S开发板

三、实验原理

在这里插入图片描述

四线双极性步进电机
UDN2916LB是SANKEN公司推出的一款两相步进电机双极驱动集成电路,能够驱动双绕组双极步进电机,特别适用于目前国内税控市场双步进微型打印机电机的控制。
UDN2916LB适用的电机电压范围为10~45V,逻辑电压不能超过7V;通过内部脉宽调制控制器(PWM)可实现最大750mA的输出电流;内置1/3和2/3分割器;逻辑输入实现1相/2相/W1-2phase激励模式;内置过热和交叉电流保护功能;集成钳位二极管;内置防止低压误操作等保护功能。UDN2916LB芯片有两组电路构成,每组电路由PWM控制器、电桥及辅助电路组成。
2916中集成的两片PWM控制器(A,B或1,2)
PHASE为输出电流方向控制端:
PHASE1控制A线圈的输出电流方向,PHASE2控制B线圈的输出电流方向。(1为正向电流,0为反向电流)。

电机驱动管脚图

控制电流输出真值表

四、软件流程图

在这里插入图片描述

电机旋转程序流程图

五、实验代码

1.#include "reg52.h"  
2.  
3.#define speed 2  
4.sbit PH1 = P1^0;      //定义管脚  
5.sbit PH2 = P1^1;  
6.sbit I01 = P1^2;  
7.sbit I11 = P1^3;  
8.sbit I02 = P1^4;  
9.sbit I12 = P1^5;  
10.  
11.void delay(int time);  
12.  
13.void Go()  
14.{    //A  
15.    PH1 = 0;  //PH1为0 则A线圈为反向电流  
16.    I01 = 0;  
17.    I11 = 0;   //以最大电流输出    
18.    PH2 = 0;  //PH2为0 则B线圈为反向电流  
19.    I02 = 1;  
20.    I12 = 1;   //输出0  
21.    delay(speed);  
22.      
23.    PH1 = 0;  //PH1为0 则A线圈为反向电流  
24.    I01 = 1;  //输出0  
25.    I11 = 1;   
26.    PH2 = 1;  //PH2为1 则B线圈为正电流  
27.    I02 = 0;  //以最大电流输出  
28.    I12 = 0;  
29.   delay(speed);
30.     
31.    //B  
32.    PH1 = 1;   //PH1为1 则A线圈为正向电流  
33.    I01 = 0;   //以最大电流输出  
34.    I11 = 0;  
35.    PH2 = 1;  //PH2为1 则B线圈为正向电流  
36.    I02 = 1;   //输出为零
37.    I12 = 1;  
38.    delay(speed);  
39.     
40.    PH1 = 1;   //PH1为1 则A线圈为正向电流  
41.    I01 = 1;  //输出为零
42.    I11 = 1;  
43.    PH2 = 0;   //PH2为0 则B线圈为反向电流  
44.    I02 = 0;  //以最大电流输出
45.    I12 = 0;  
46.    delay(speed);                  
47.}    
48.void delay(int time)  
49.{   
50.  int i,j;      
51.  for(j=0; j <= time; j++)  
52.   for(i =0 ; i <= 120; i++);  
53.}    
54.void main()  
55.{  
56.  while(1)  
57.  {    
58.    Go();  //步进电机运行  
59.  }  
60.} 

六、实验步骤

1.连接试验相关模块连线
在这里插入图片描述
在这里插入图片描述
硬件接线图
P1.0 P1
P1.1 P2
P1.2 IO1
P1.3 IO2
P1.4 II1
P1.5 II2
2.编写二相四线步进马达相关程序
对PH1、I01、I11、PH2、I02、I12口编程,先A线圈为正向最大电流,然后B线圈为正向最大电流,然后A线圈为反向最大电流,最后B线圈为反向最大电流。这样循环就可以使电机转动,但
是需要注意的是:换电流的时候需要延时。
3.下载二相四线步进马达相关程序

程序下载界面
4.调试验证试验效果
调节换相间隔时间可以调整步进电机速度,调整相序输入顺序可以调整电机旋转方向。整体来说,步进电机,旋转稳定,噪音小,控制简单,非常适合实验。

七、实验思考

本次实验让我熟悉了步进电机的使用方法,并可以通过延时控制步进电机的速度,也可以通过编程控制步进电机的方向。大三上学期学习了电机课程,知道了常用电机的原理,却没有机会去真正地控制一台电机。单片机的实验让我可以真正使用了电机。
电机并不能直接插在单片机的管脚上,因为IO口的驱动能力有限。电机是一个感性原件,具有保持电流或者储存电能的作用,如果直接用IO口驱动,有可能电机会向芯片灌电流而烧坏芯片。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

石去皿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值