教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 基础教育 >

机电控制实习(二)指导书(学生用) - 图文(4)

来源:网络收集 时间:2026-03-28
导读: 软件设计: 时钟频率是12MHz,机器周期是1us,采用定时器T0定时,定时周期设为1000×1us=1ms,此时,T0的初值为T0初值=216-1000=64536=0xFC18。若已知转子齿数为10,步进电机工作于双四拍方式,则步距角=360/(10×4

软件设计:

时钟频率是12MHz,机器周期是1us,采用定时器T0定时,定时周期设为1000×1us=1ms,此时,T0的初值为T0初值=216-1000=64536=0xFC18。若已知转子齿数为10,步进电机工作于双四拍方式,则步距角=360/(10×4)=9°。Tmd表示步进间隔,nr表示步进电机转速,n0表示计时因数,则:

nr?6096091500 ????Tmd360n0?0.001360n0各档转速对应的计时因数分别如下:

1500 =25rpm,n=60,步进间隔为60×1ms=0.06s;

1档:步进电机的转速nr= 0

n02档:步进间隔为 3档:步进间隔为 4档:步进间隔为 启动档:步进间隔为0.2s。

程序:

预处理(定义变量):定义步进相序变量、速度档位变量以及方向、启停开关变量。

主程序

初始化:P0、P3口输入准备,P1口输出高电平使步进电机的所有相断电;设定外部中断0和外部中断1的触发方式(下降沿触发);开外部中断和定时器0中断;定时器0的模式和初值设置,开定时器0。

循环检测档位信号:

如果P0=0xfe(P0.0=0),设定速度档位变量为1档(n0=60),P2口输出档位信号; 如果P0=0xfd(P0.1=0),设定速度档位变量为2档(n0=90),P2口输出档位信号; 如果P0=0xfb(P0.2=0),设定速度档位变量为3档(n0=120),P2口输出档位信号; 如果P0=0xf7(P0.3=0),设定速度档位变量为4档(n0=150),P2口输出档位信号; 否则,循环检测档位信号。

外部中断0服务程序(启停开关) 启停变量step的值加1; 如果step>=2,step=0。(限定值为0或1)

外部中断1服务程序(正反转开关) 方向变量flag的值加1; 如果flag>=2,flag=0。(限定值为0或1)

定时器0中断服务程序(步进间隔为T0×n0) 重装定时器T0的初值

如果启停变量step=1,则转下一步,否则停止步进电机(计时变量n清0); 如果计时变量n>=档位变量n0,即步进间隔时间到,

如果转向变量flag=0,则根据步进相序变量index的值输出正转相序;否则根据步进相序变量index的值输出反转相序。(注意:index加1,n清0)

在step=1的情况下,每次定时器T0中断,n的值加1。

10

主程序和定时器0中断服务程序的流程图如下:

开 始步进电机初始化:P1口输出高电平使步进电机的所有相断电;系统初始化:P0、P3口输入准备;设定外部中断0和外部中断1的触发方式;开外部中断和定时器0中断;定时器0的模式和初值设置,开定时器0。P0=0xfe(P0.0=0)?否是n0=60;P2=1;//1档P0=0xfd(P0.1=0)?否是n0=90;P2=2;//2档否P0=0xfb(P0.2=0)?是n0=120;P2=3;//3档否P0=0xf7(P0.3=0)?是n0=150;P2=4;//4档结 束主函数流程图

11

项目3 单个步进电机的控制实习

一、实习目的

掌握步进电机的单双节拍控制方法、正反转以及加减速控制方法。

二、实习器材

﹙5﹚ 计算机一台;

﹙6﹚ HC6800E单片机开发板一套(含接线与步进电机)。

三、项目要求

采用HC6800E开发板控制单个步进电机转动,用开发板上M1-M5五个接口中的某一个接口外接一个步进电机,步进电机驱动芯片ULN2003D的输入端口与单片机的P1管脚连接。项目3分为4个子项目,各个子项目的要求如下:

1、绕组为四相八拍工作方式A-AB-B-BC-C-CD-D-DA-A,采用switch语句或相序数组输出各相的状态,查询工作方式。步进电机逆时针旋转(正转),转速为125rpm。

2、绕组为四相双四拍工作方式AB-BC-CD-DA,中断工作方式。步进电机逆时针旋转(正转),转速为125rpm。

3、编程实现让电机正转2圈,而后反转2圈,然后停止,并要求步进电机满足下面两个要求:① 单双八拍方式A-AB-B-BC-C-CD-D-DA;② 正反转时,步进电机的转速为125rpm。

4、编程实现让电机在1圈内加速到625rpm,然后以625rpm的转速匀速转动5圈,接着在1圈内从625rpm减速,然后停止,并要求步进电机满足下面两个要求:① 单双八拍方式A-AB-B-BC-C-CD-D-DA;② 加速、匀速、减速的过程中,步进电机始终向一个方向转动。

将以上4个子项目依次命名为单双八拍控制、双四拍控制、正反转控制、加减速控制。

四、实习方法与步骤

项目3的仿真模型如下:

图3-1 项目3的仿真模型

HC6800E开发板步进电机控制电路的原理见图3-2,接线方法见图3-3。

12

图3-2

图3-3

13

3.1 单双八拍控制实习

项目要求:绕组为四相八拍工作方式A-AB-B-BC-C-CD-D-DA,采用switch语句或相序数组输出各相的状态,查询工作方式。步进电机逆时针旋转(正转),转速为125rpm。 软件原理:

四相八拍工作方式的正转相序为:FFZ[8]={0xfe,0xfc,0xfd,0xf9,0xfb,0xf3,0xf7,0xf6}。 已知转子齿数为12,步进电机工作于单双八拍方式A-AB-B-BC-C-CD-D-DA,则步距角=360/(12×8)= 3.75 度。

若步进间隔为Tstepms,步进电机的转速为:

60?1000ms3.75?625Vn = ×= rpm ?TstepTstep360Vn =125rpm,Tstep=5ms

时钟频率是11.0592MHz,设定定时周期为5ms,T0工作于方式1即16位定时器方式,则

1T0初值为:5ms/(12×11.0592)=4608,T0初值=216-4608=60928=EE00H MHz程序思想:

预处理:定义步进相序变量MotorStep、计时查询变量TIM。 主程序

步进电机初始化:P1口输出高电平使步进电机的所有相断电;

系统初始化:定时器0的模式和初值设置,开定时器0中断,开定时器0。 循环检测计时查询变量TIM:

如果TIM=1,则根据步进相序变量MotorStep的值输出步进电机相序; 调整MotorStep的值;

否则,循环检测计时查询变量TIM。 定时器0中断服务程序 重装定时器T0的初值; 计时查询变量TIM置1。

思考题:

① 改为中断工作方式应该如何编写程序?

② 如何使步进电机顺时针旋转(反转)?

③ 试画出主程序的程序流程图。

④ 如何将步进电机设为四相四拍工作方式AB-BC-CD-DA?

14

…… 此处隐藏:913字,全部文档内容请下载后查看。喜欢就下载吧 ……
机电控制实习(二)指导书(学生用) - 图文(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/566101.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)