机电控制实习(二)指导书(学生用) - 图文(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字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [基础教育]2016-2022年中国钢芯铝绞线市场现状调
- [基础教育]语文部编版初一语文下册练习题 句式变
- [基础教育]南京继续教育参考答案--深入学习贯彻习
- [基础教育]国旗下讲话稿——珍惜时间好读书
- [基础教育]北师大版六年级数学下册圆锥的体积教学
- [基础教育]人教版-音乐-四年级下册-四年级下册音
- [基础教育]乔布斯2019年斯坦福大学毕业典礼致辞.d
- [基础教育]2015年加油站安全知识竞赛试题及答案
- [基础教育]2020年教师年度考核个人工作总结
- [基础教育]2019年中考历史试题-2019年大庆市初中
- [基础教育]初三仁爱英语第一轮总复习教案
- [基础教育]SG-A094电气配管安装工程隐蔽验收记录
- [基础教育]冀教版小学数学三年级下册第六单元教材
- [基础教育]青岛版(五制)小学科学二年级下册16《制
- [基础教育]2018-2019年初中科学初一中考真卷测试
- [基础教育]幼儿园大班期末简短评语精选
- [基础教育]2018云南临沧公务员考试申论技巧:这样
- [基础教育]学校食堂经营管理方案
- [基础教育]新中国砥砺奋进的七十年原文
- [基础教育]真空泵的选型及常用计算公式
- 高职田径课程教学现状与对策
- 全髋关节置换术在老年股骨颈骨折患者中
- 青人社厅函〔2016〕576号(附件)工资
- cp101-07砂子检验作业指导书 - secret
- 微观经济学 第八章 博弈论 习题
- 2014高考真题(词语运用)汇编及答案
- 2018年人教版七年级语文下册《第三单元
- 苏教版数学四年级上册第一单元试题 - M
- 四川大学新闻与传播考研2000-2010年真
- 浙江万里学院英语专业四年制本科教学计
- 最新2018马年事业祝福语-范文word版(2
- 最全模具行业术语英文翻译
- 皮亚杰的发展心理学理论
- 64篇高考情景式默写 练习题及答案
- 仿写(学生稿)
- 《SQL Server数据库技术》试卷A
- 第七章作业答案
- 江苏省赣榆县海头高级中学高中语文必修
- 浙江省2001年10月自考正常人体解剖学答
- 2012英语重点短语




