为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

基于单片机的步进电机细分驱动控制系统的设计

2017-09-16 50页 doc 383KB 22阅读

用户头像

is_882336

暂无简介

举报
基于单片机的步进电机细分驱动控制系统的设计基于单片机的步进电机细分驱动控制系统的设计 本科学生毕业论文(设计) 题目(中 文) 基于单片机的步进电机细分驱动 控制系统的设计 The Design of Stepping Motor Subdivided 题目(英 文) Driving Control Based on MCU 姓 名 学 号 院 (系) 电子工程系 专业、年级 电子信息工程 级 指导教师 湖南科技学院本科毕业论文(设计)诚信声明 本人郑重声明:所呈交的本科毕业论文,设计,~是本人在指导老师的指导下~独立进行研究工作所取得的成果~成果...
基于单片机的步进电机细分驱动控制系统的设计
基于单片机的步进电机细分驱动控制系统的设计 本科学生毕业论文(设计) 题目(中 文) 基于单片机的步进电机细分驱动 控制系统的设计 The Design of Stepping Motor Subdivided 题目(英 文) Driving Control Based on MCU 姓 名 学 号 院 (系) 电子工程系 专业、 电子信息工程 级 指导教师 湖南科技学院本科毕业论文(设计)诚信声明 本人郑重声明:所呈交的本科毕业论文,设计,~是本人在指导老师的指导下~独立进行研究工作所取得的成果~成果不存在知识产权争议~除文中已经注明引用的内容外~本论文不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 本科毕业论文,设计,作者签名: 年 月 日 毕业论文(设计)任务书 课题名称 基于单片机的步进电机细分驱动控制系统的设计 学生姓名 系 别 电子工程系 专 业 电子信息工程 指导教师 湖南科技学院本科毕业论文(设计)任务书 1、主题词、关键词: 步进电机 单片机 细分驱动控制 2、毕业论文(设计)内容要求: 1)请说明步进电机的发展优缺点及目前现状和发展趋势; 2)请详细介绍有关步进电机的基础知识及其研究意义; 3)请根据现实情况提出合理的建议; 4)论文应严格遵循撰写规范; 5)论文摘要和关键词应反映论文内容; 6)论文在内容和格式上的规范化与统一化; 7)论文应层次分明,数据可靠,文字简练,说理透彻,推理严整,立论正确; 8)论文结论简练概括,充分表达论文主旨。 A 3、文献查阅指引: [1] 刘宝延.程树康.步进电机及驱动控制系统[M].哈尔滨:哈尔滨工业大学出版社, 1997,45-48. [2] 陈理壁.步进电机及其应用[M].上海:上海科技技术出版社,1989,33-45. [3] 季维发,过润秋等.机电一体化技术[M].北京:电子工业出版社,1995,35-39. [4] 史敬灼.步进电动机伺服控制技术[M].北京:科学出版社,2006,77-79. [5] Larson, L.E. Full-bridge DC motor driver for consumer apps[J]. Portable Design,2005,30-34. [6] 刘国永, 陈杰平. 单片机控制步进电机系统设计[N]. 安徽:安徽技术师范学 院学报, 2002,56-58. [7]何立民. 单片机应用系统设计[M].北京:北京航空航天大学出版社, 1993,45-50. [8] 戴胜华等.单片机原理与应用[M].北京:清华大学出版社,2005,33-38. [9] 李海滨、片春媛、许瑞雪.单片机技术课程设计与项目实例[J]. 中国电力出版 社, 2009,56-65. [10]刘国永, 陈杰平等.单片机控制步进电机系统设计[N]. 安徽:安徽技术师范学 院学报,2002,61-63. [11]王晓明,电动机的单片机控制[M](北京:京航空航天大学出版社,2002,66-69. [12] Isao Takahashi,Toshihiko Noguchi.A new responese and high-efficiency control strategy of an motor[J].IEEE Trans on IAppl,1986,820-827. 4、毕业论文(设计)进度安排: 1)2013年3月初日----2013年3月底 根据毕业论文题目查阅单片机、编程语言、步进电机相关资料,写好开题; 2)2013年4月初----2013年4月底 完成毕业论文关于步进电机的初步功能设计; 3)2013年5月初------2013年5月8日 对论文排版,完成毕业论文初稿; 4) 2013年5月10号——答辩前 根据导师要求完成论文修改并最终定稿。 教研室意见: 负责人签名: 注:本任务书一式三份~由指导教师填写~经教研室审批后一份下达给学生~一份交指导教师~一份留系里存档。 B 湖南科技学院本科毕业论文(设计)开题报告书 论文(设计)题目 基于单片机的步进电机细分驱动控制系统的设计 作 者 姓 名 钱社军 所属系、专业、年级 电子工程系 电子信息工程专业 2009年级 指导教师姓名、职称 梁晓琳(讲师) 预计字数 25000 开题日期 2012-12-25 选题的根据:1)说明本选题的理论、实际意义 2)综述国内外有关本选题的研究动态和自己的见解 理论意义: 步进电机经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。 实际意义: 步进电机还具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。 研究动态: 目前,生产步进电机的厂家的确不少,但具有专业技术人员,能够自行开发,研制的厂家却非常少,大部分的厂家只一、二十人,连最基本的设备都没有。仅仅处于一种盲目的仿制阶段。这就给户在产品选型、使用中造成许多麻烦。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。 本人见解: 虽然步进电机已被广泛地应用,但步进电机并不能像普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。这次以基于单片机的步进电机细分控制系统设计为题,相对来说具有蛮大的挑战性。但是,对于细分驱动的步进电机越来越应用于生活中的各个领域,本选题还是不错的。 C 主要内容: 本文将主体分为五个部分: 第一部分,绪论 在绪论部分详细表述了关于步进电机的背景及研究意义、目前发展现状及发展趋势的内容,另外还有关于步进电机的应用中的优缺点。 第二部分,步进电机基础知识 在该部分详细介绍了概念、常用术语、特点及功能、分类、结构及工作原理以及其它一些相关的知识。 第三部分,步进电机#设计#的确定 在此部分通过对步进电机的驱动、单片机控制及运行控制等部分的分析,确定了比较理想的方案,是本选题毕业论文重要组成部分。 第四部分,步进电机的硬件系统设计 关于对步进电机人硬件系统设计,第四部分通过对系统芯片介绍和硬件电路设计两大模块入手,详细阐述了本论文的硬件部分所需的芯片和原理图布局。 第五部分,步进电机人软件设计 该部分是汇编语言程序设计的思路部分,在本论文中占有重要的地位;这里列出了程序的相关功能,对于那些对汇编语言陌生人来说,也能够比较清楚程序的功能。 研究方法: 本文的研究方法有文献索引法、查阅资料法等 完成期限和采取的主要措施: 完成期限: 1)2013年3月初日----2013年3月底 根据毕业论文题目查阅单片机、编程语言、步进电机相关资料,写好开题报告; 2)2013年4月初----2013年4月底 完成毕业论文关于步进电机的初步功能设计; 3)2013年5月初------2013年5月8日 对论文排版,完成毕业论文初稿; 4) 2013年5月10号——答辩前 根据导师要求完成论文修改并最终定稿。 主要措施: 1) 在图书馆查阅、借阅各种相关书籍学术期刊。 2) 通过指导老师指引,查阅相关文献。 3) 网上搜索相关资料,与老师讨论相关问题。 4) 阅览室查阅相关资料。 5) 仔细阅读研究并综合各种相关信息,展开论述。 D 主要参考资料: [1] 刘宝延.程树康. 步进电机及驱动控制系统,M,.哈尔滨:哈尔滨工业大 学出版社,1997( [2] 陈理壁. 步进电机及其应用[M].上海:上海科技技术出版社,1989. [3] 季维发,过润秋,研武升等.机电一体化技术[M].北京:电子工业出版社, 1995. [4] 史敬灼. 步进电动机伺服控制技术[M].北京:科学出版社,2006. [5]Larson, L.E.. Full-bridge DC motor driver for consumer apps[J]. Portable Design,2005.11(12):30-34 [6] 刘国永, 陈杰平. 单片机控制步进电机系统设计. 安徽: 安徽技术师范 学院学报, 2002. [7]何立民. 单片机应用系统设计,M,(北京: 北京航空航天大学出版社, 1993( [8]戴胜华等(单片机原理与应用[M](北京:清华大学出版社,2005( [9] 李海滨片春媛、 许瑞雪.单片机技术课程设计与项目实例[J]. 中 国电力出版社, 2009版:56-65 [10]李萍,51单片机C语言及汇编语言实用程序设计[M].北京:中国电力出 版社,2010. 指导教师意见: 指导教师签名: 教研室意见: 签 名: 年 月 日 E 开 题 报 告 会 纪 要 时间 2012年12月25日 地点 三教103 与 姓 名 职务(职称) 姓 名 职务(职称) 姓 名 职务(职称) 会 张新安 教授 潘海军 高级实验师 唐 云 讲师 人 梁晓琳 讲师 李 荣 讲师 张 丹 硕士 员 会议摘要: 1(为什么要选这个题,有何意义,(张新安老师) 答:随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。近年来由于微型计算机方面的快速发展,优点明显的步进电机被广泛应用在电子计算机的许多外围设备中,例如打印机,纸带输送机构,存储器存取机构等,步进电机也在军用仪器,通信和雷达设备,数控机床,医疗设备及自动绘图仪,数字控制系统,以及许多航天工业的系统中得到应用。因而,对于步进电机控制的研究具有明显的现实意义和实用价值。 2(介绍一下你的设计的思路,(梁晓琳老师) 答:本论文应用单片机AT89C51、键盘编码器MM74C922芯片、双全桥步进电机专用驱动芯片L298N等,构建了步进电机控制器和驱动器为一体的步进电机控制系统,实现步进电机在两相四拍的工作方式下的正反转0—999任意角度控制和加减速1—8级调速等各种控制。 3(介绍一下论文原理图采用什么设计,(潘海军老师) 答:整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。该系统可应用于步进电机在机电一体化控制等大多数场合。 会议主持人: 记 录 人: 年 月 日 指 系导部 小 意组 意见 见负责人签名: 负责人签名: 年 月 日 年 月 日 注:此表由学生本人填写,一式三份,一份留系里存档,指导老师和本人各保存一份 F 湖南科技学院毕业论文(设计)中期检查表 毕业论文(设计) 基于单片机的步进电机细分驱动控制系统的设计题 目 学生姓名 钱社军 学 号 200906002315 系 别 电子工程系 专 业 电子信息工程 指导教师 梁晓琳 检查日期 2013.4.12 指导教师检查情况记载及修改意见: 已经完成的工作: 1、了解和初步掌握了步进电机细分控制的工作原理; 2、确定步进电机细分控制的相关功能模块设计; 3、完成了单片机与两外围电路的连接和设计原理图的仿真; 4、初步完成了论文的结构的设计; 5、论文大部分内容已经完成。 下一步的工作: 1、进一步完善步进电机细分控制的功能模块设计; 2、完成步进电机的相关功能的程序设计编写; 3、进行调试和仿真,实现既定功能和要求; 4、在不影响总体的基础上,用相关步进电机试验箱进行仿真演示; 5、同时继续论文的写作工作,找出错误,完善论文; 存在问题: 1、全文的字体、大小、行距某些地方还存在不足,请认真阅读《撰写规范》。 2、全文都应该设置页码,都应该居中。 3、注意中英文中的标点符号、空格,请认真修改。 4、目录里面章节后面都应该有页码,并且要与文中的页码保持一致。 5、文中中文摘要、英文摘要的篇幅太长,应保持在300至500字左右; 6、参考文献格式不对,请认真阅读《撰写规范》。 7、目录的排版有缺陷; 签名: 注:此表用于指导教师在学生毕业论文,设计,初稿完成后对学生执行任务书情况进行中期检查时用~由指导 教师填写。 G 湖南科技学院毕业设计(论文)指导过程记录表 毕业论文(设计)题目 基于单片机的步进电机细分驱动控制系统的设计 学生姓名 钱社军 学号 200906002315 专业班级 电信0903班 电子工程系 指导教师 梁晓琳 职称 讲师 系(教研室) (信息技术教研室) 指讨论设计的实现方案,所需要掌握的知识并收集相关资料。 指导内容 记录(一) 学 生 签 名: 2013年1月5日 导 指导教师签名: 2013年1月5日 完成设计的概要设计和详细设计。 指导内容 记录(二) 过学 生 签 名: 2013年2月5日 指导教师签名: 2013年2月5日 下任务书,指导、检查开题报告书。 程指导内容 记录(三) 学 生 签 名: 2013年2月21日 指导教师签名: 2013年2月21日 记 画出整个设计的相关流程图,并且完成相关功能模块的程序设计 指导内容 记录(四) 学 生 签 名: 2013 年3月18日 指导教师签名: 2013 年3月18日 录 H 指 指导完成电路图硬件设计,并且对硬件和软件进行调试和仿真 指导内容 记录(五) 学 生 签 名: 2013年4月8日 指导教师签名: 2013年4月8日 导 指导论文的整体结构设计,指导如何撰写论文、组织材料。 指导内容 记录(六) 学 生 签 名: 2013年4月20日 过 指导教师签名: 2013年4月20日 进行中期检查,检查论文撰写情况,主要就其内容提出修改意见。 程指导内容 记录(七) 学 生 签 名: 2013年5月10日 指导教师签名: 2013年5月10日 记 确定答辩时间,交待答辩工作及注意事项,检查论文整体情况,定稿打 印。 指导内容 记录(八) 学 生 签 名: 2013 年5月15日 指导教师签名: 2013 年5月15日 录 答辩小组组长 意见 组长(签名): 年 月 日 注:本表与毕业论文一起装订存档。 I 湖南科技学院本科毕业论文,设计,评审表 论文题目 基于单片机的步进电机细分驱动控制系统的设计作者姓名 所属系、专业、年级 钱社军 电子工程 系 电子信息工程 专业 2009年级 指导教师 字 数 25000 定稿日期 2013.5.8 梁晓琳 讲师 姓名、职称 步进电机是一种纯粹的数字控制电机~是将电脉冲信号转变为角位 移或线位移的开环控制元件。 中 本论文应用单片机AT89C51、键盘编码器MM74C922芯片、74HC00四 2输入与非门、双全桥步进电机专用驱动芯片L298N等~构建了步进电机 控制器和驱动器为一体的步进电机控制系统。通过AT89C51和双全桥步 进电机专用驱动芯片L298N完成步进电机的各种运行控制方式~实现步文 进电机在四相八拍的工作方式下的正反转0—999任意角度控制和加减速 1—8级调速等各种控制。并通过步进电机丝杠连动~带动XY工作台的直摘 线运动~实现从起点A点到预定点B点的位移控制~以实现基于XY轴坐 标的步进电机的运动控制。 关键词 要 步进电机 单片机 细分驱动控制 ,3-5个, Stepper motor is a kind of pure digital control, which coverts the electrical pulse signal into angular displacement or line open loop control elements of displacement. 英 This paper applies single-chip microcomputer AT89C51, keyboard encoder chip, 74 HC00 four two input not gate, both bridge special stepper motor driver chip L298N etc., built a stepper motor controller and driver as 文 one of the stepping motor control system. Both AT89C51 and bridge for stepper motor driver chip L298N complete various operation control mode of stepper motor, and realize the stepping motor under the works of four phase 摘 eight positive &negative 0-999 arbitrary Angle control and deceleration 1-8 speed adjustment and control. And through the stepper motor screw gearing, it drives the linear motion of the XY worktable and implements schedules 要 displacement control from start point A to point B, in order to realize the XY coordinates based motion control of step motor. 关键词 stepper motor MCU subdivided driving control (3-5个) J 指导教师评定成绩 评审指导教基元 评审要素 评审内涵 满分 师 实评分 选题符合专业培养目标~体现学科、专业特点和教学目的明确 计划的基本要求~达到毕业论文,设计,综合训练的10 符合要求 目的。 选题 符合本学科的理论发展~有一定的学术意义,对经济建质量理论意义或 设和社会发展的应用性研究中的某个理论或方法问题进10 实际价值 25% 行研究~具有一定的实际价值。 选题恰当 题目规模适当~难易度适中,有一定的科学性。 5 查阅文献 能独立查阅相关文献资料~归纳总结本论文所涉及的10 资料能力 有关研究状况及成果。 综合运用 能运用所学专业知识阐述问题,能对查阅的资料进行整10 知识能力 理和运用,能对其科学论点进行论证。 能力研究方案的 整体思路清晰,研究方案合理可行。 5 设计能力 水平 能运用本学科常规研究方法及相关研究手段,如计算机、40% 研究方法和手实验仪器设备等,进行实验、实践并加工处理、总结信10 段的运用能力 息。 外文应用 能阅读、翻译一定量的本专业外文资料、外文摘要和外5 能力 文参考书目,特殊专业除外,体现一定的外语水平。 文题相符 较好地完成论文选题的目的要求。 5 论文写作水平 论点鲜明,论据充分,条理清晰,语言流畅。 15 质量符合学术论文的基本要求。用语、格式、图表、数据、量写作规范 10 和单位、各种资料引用规范化、符合。 35% 论文篇幅 10000字左右。 5 实评总分 成绩等级 指导教师评审意见: 指导教师签名: 说明:评定成绩分为优秀、良好、中等、及格、不及格五个等级~实评总分90—100分记为优秀~80—89分记为良好~70—79分记为中等~60—69分记为及格~60分以下记为不及格。 K 评阅教师评定成绩 评审评阅教师 评审要素 评审内涵 满分 基元 实评分 选题符合专业培养目标~体现学科、专业特点和教学目的明确 计划的基本要求~达到毕业论文,设计,综合训练的10 符合要求 目的。 选题 符合本学科的理论发展~有一定的学术意义,对经济建质量理论意义或 设和社会发展的应用性研究中的某个理论或方法问题进10 实际价值 25% 行研究~具有一定的实际价值。 选题恰当 题目规模适当~难易度适中,有一定的科学性。 5 查阅文献 能独立查阅相关文献资料~归纳总结本论文所涉及的10 资料能力 有关研究状况及成果。 综合运用 能运用所学专业知识阐述问题,能对查阅的资料进行整10 知识能力 理和运用,能对其科学论点进行论证。 能力研究方案的 整体思路清晰,研究方案合理可行。 5 设计能力 水平 研究方法和能运用本学科常规研究方法及相关研究手段,如计算机、40% 手段的运用实验仪器设备等,进行实验、实践并加工处理、总结信10 能力 息。 外文应用 能阅读、翻译一定量的本专业外文资料、外文摘要和外5 能力 文参考书目,特殊专业除外,体现一定的外语水平。 文题相符 较好地完成论文选题的目的要求。 5 论文写作水平 论点鲜明,论据充分,条理清晰,语言流畅。 15 质量符合学术论文的基本要求。用语、格式、图表、数据、量写作规范 10 和单位、各种资料引用规范化、符合标准。 35% 论文篇幅 10000字左右。 5 实评总分 成绩等级 评阅教师评审意见: 评阅教师签名: 说明:评定成绩分为优秀、良好、中等、及格、不及格五个等级~实评总分90—100分记为优秀~80—89分记为良好~70—79分记为中等~60—69分记为及格~60分以下记为不及格。 L 湖南科技学院本科毕业论文,设计,答辩记录表 论文题目 基于单片机的步进电机细分驱动控制系统的设计作者姓名 钱社军 所属系、专业、年级 电子工程系 电子信息工程专业 2009年级 指导教师 梁晓琳 (讲师) 姓名、职称 答 辩 会 纪 要 时间 2013年5月18日 地点 电子工程系三教103 答 姓 名 职务(职称) 姓 名 职务(职称) 姓 名 职务(职称) 辩 张新安 教授 潘海军 高级实验师 唐 云 讲师 小 梁晓琳 讲师 李 荣 讲师 张 丹 硕士 组 成 员 答辩中提出的主要问题及回答的简要情况记录: 1(设计是采用n细分控制步进电机有什么作用,(潘海军老师) 答:此设计采用步进电机的细分控制,主要作用是提高步进电机的精确率和电机的运行性能。细分驱动的n细分最主要的优点是步距角变小,分辨率提高,且提高了电机的定位精度、启动性能和高频输出转矩:其次,减弱或消除了步进电机的低频振动,降低了步迸电机在共振区工作的几率。 2(介绍一下步进电机细分控制的电路设计,(张新安老师) 答:细分控制的电路一般分为两类,一类是采用线性模拟功率放大器的方法获得阶梯形电流,这种方法简单,但效率低;另一类是用单片机采用数子脉宽调制的方法获得阶梯电流,这种方法需要复杂的计算可使细分后的步距角一致。在本论文中采用了第二类细分控制电路设计。 3(介绍一下本次设计是如何实现整个系统设计的,(唐云老师) 答:整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。该系统可应用于步进电机在机电一体化控制等大多数场合。 会议主持人: 张新安 记 录 人: 唐 云 2013年 5 月 18 日 M 评语: 答 辩 小 组 意 见 评定等级: 负责人(签名): 年 月 日 评语: 系 学 位 委 员 会 意 论文(设计)最终评定等级: 见 负责人(签名): 系部(公章) 年 月 日 评语: 校 学 位 委 员 会 评定等级: 意 负责人(签名): 年 月 见 日 N 目 录 绪论 ....................................................... 错误~未定义书签。错误~未定义书签。 1 步进电机概述 ........................................................................................................ 2 1.1 步进机的背景与研究意义 ........................................................................... 2 1.2 步进机的现状以及发展趋势 ..................................................................... 3 1.2.1 步进电机的现状 ................................................................................. 3 1.2.2 步进电机的发展趋势 ......................................................................... 4 1.3 步进电机的优点 .......................................................................................... 5 1.4 步进电机的缺点 .......................................................................................... 6 1.5 步进电机应用中的注意点 ........................................................................... 7 2 步进机的基础知识 ................................................................................................ 8 2.1 步进机的概念 .............................................................................................. 8 2.2 步进电机的特点及功能 ............................................................................... 8 2.2.1 步进电机的特点 ................................................................................. 8 2.2.2 步进电机的功能 ................................................................................. 9 2.3 步进电机工作原理....................................................................................... 9 2.4 步进电机的分类 .......................................................................................... 9 2.5 步进电机的技术参数 ................................................................................. 10 2.5.1 步进电机的基本参数 ....................................................................... 10 2.5.2 步进电机动态指标 ........................................................................... 11 2.5.3 步进电机的静态指标 ..................................................................... 12 2.6 步进电机详细调速原理 ............................................................................. 12 3 步进电机设计方案确定 ...................................................................................... 14 3.1 步进电机的驱动 ........................................................................................ 14 3.1.1 单电压功率驱动 ............................................................................... 14 3.1.2 双电压功率驱动 ............................................................................... 14 3.1.3 高低压功率驱动 ............................................................................... 14 3.1.4 细分驱动 .......................................................................................... 15 I 3.2 步进电机的单片机控制 ............................................................................. 15 3.2.1 步进电机控制系统组成 ................................................................... 15 3.2.2 步进电机控制系统原理 ................................................................... 16 3.3 步进电机的运行控制 ................................................................................. 17 3.3.1 步进电机速度控制 ........................................................................... 17 3.3.2 步进电机位置控制 ........................................................................... 18 3.3.3 步进电机加减速度控制 ................................................................... 18 4 步进电机的硬件系统设计 ................................................................................... 20 4.1 系统芯片介绍 ............................................................................................ 20 4.1.1 单片机AT89C51功能介绍 ............................................................... 20 4.1.2 芯片L298功能介绍 ......................................................................... 22 4.1.3 芯片MM74C922功能介绍 .............................................................. 23 4.1.4 LM041L功能介绍.......................................................................... 24 4.2 硬件电路设计 ............................................................................................ 26 4.2.1 单片机复位电路 ............................................................................. 26 4.2.2 单片机的晶振电路 ......................................................................... 27 4.2.3 4×4矩阵键盘的工作原理............................................................. 28 5 进电机的软件程序设计 ...................................................................................... 29 5.1 系统软件主流程图..................................................................................... 30 5.2 按键子程序 ................................................................................................ 30 5.3 显示功能程序流程图 ................................................................................. 31 结 论 ................................................... 错误~未定义书签。错误~未定义书签。 附录A 程序主控制部分 ....................................................................................... 34 附录B 正转子程序 .............................................................................................. 36 附录C 反转子程序 .............................................................................................. 38 附录D LCD显示子程序 ...................................................................................... 40 附录E 步进电机原理图 ......................................................................................... 42 II 附录F 8051系列单片机汇编语言指令速查表 .................................................... 43 参考文献 ........................................................... 49 致 谢 ............................................................. 50 III 基于单片机的步进电机细分驱动控制系统的设计 摘 要 步进电机是一种纯粹的数字控制电机,是将电脉冲信号转变为角位移或线位移的开环控制元件。 本论文应用单片机AT89C51、键盘编码器MM74C922芯片、74HC00四2输入与非门、双全桥步进电机专用驱动芯片L298N等,构建了步进电机控制器和驱动器为一体的步进电机控制系统。通过AT89C51和双全桥步进电机专用驱动芯片L298N完成步进电机的各种运行控制方式,实现步进电机在四相八拍的工作方式下的正反转0—999任意角度控制和加减速1—8级调速等各种控制。并通过步进电机丝杠连动,带动XY工作台的直线运动,实现从起点A点到预定点B点的位移控制,以实现基于XY轴坐标的步进电机的运动控制。 【关键词】:步进电机 单片机 细分驱动控制 IV The Design of Stepping Motor Subdivided Driving Control Based on MCU Abstract Stepper motor is a kind of pure digital control, which coverts the electrical pulse signal into angular displacement or line open loop control elements of displacement. This paper applies single-chip microcomputer AT89C51, keyboard encoder chip, 74 hc00 four two input not gate, both bridge special stepper motor driver chip L298N etc., built a stepper motor controller and driver as one of the stepping motor control system. Both AT89C51 and bridge for stepper motor driver chip L298N complete various operation control mode of stepper motor, and realize the stepping motor under the works of four phase eight positive &negative 0-999 arbitrary Angle control and deceleration 1-8 speed adjustment and control. And through the stepper motor screw gearing, it drives the linear motion of the XY worktable and implements schedules displacement control from start point A to point B , in order to realize the XY coordinates based motion control of step motor. 【Key words】stepper motor MCU subdivided driving control V 绪论 步进电机最早是在1920年由英国人所开发。1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易。以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。 步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可以直接用数字信号驱动,使用非常方便。一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。因此非常适合于单片机控制。步进电机还具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。 1 1 步进电机概述 1.1 步进机的背景与研究意义 步进电动机又称脉冲电动机或阶跃电动机,国外一般称为Steppingmotor、 Pulse motor或Stepper servo,其应用发展已有约80年的历史。步进电机是一种把电脉冲信号变成直线位移或角位移的控制电机,其位移速度与脉冲频率成正比,位移量与脉冲数成正比。步进电机在结构上也是由定子和转子组成,可以对旋转角度和转动速度进行高精度控制。当电流流过定子绕组时,定子绕组产生一矢量磁场,该矢量场会带动转子旋转一角度,使得转子的一对磁极磁场方向与定子的磁场方向一着该磁场旋转一个角度。因此,控制电机转子旋转实际上就是以一定的规律控制定子绕组的电流来产生旋转的磁场。每来一个脉冲电压,转子就旋转一个步距角,称为一步。根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,在供给连续脉冲时,就能一步一步地连续转动,从而使电机旋转。步进电机每转一周的步数相同,在不丢步的情况下运行,其步距误差不会长期积累。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,同时步进电机只有周期性的误差而无累积误差,精度高,步进电动机可以在宽广的频率范围内通过改变脉冲频率来实现调速、快速起停、正反转控制等, [1]这是步进电动机最突出的优点。 正是由于步进电机具有突出的优点,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。比如在数控系统中就得到广泛的应用。目前世界各国都在大力发展数控技术,我国的数控系统也取得了很大的发展,我国已经能够自行研制开发适合我国数控机床发展需要的各种档次的数控系统。近年来由于微型计算机方面的快速发展,使步进电机的控制发生了革命性变革。优点明显的步进电机被广泛应用在电子计算机的许多外围设备中,例如打印机,纸带输送机构,卡片阅读机,主动轮驱动机构和存储器存取机构等,步进电机也在军用仪器,通信和雷达设备,摄影系统,光电组合装置,阀门控制,数控机床,电子钟,医疗设备及自动绘图仪,数字控制系统,工具机控制,程序控制系统以及许多航天工业的系统中得到应用。因而,对于步进电机控制的研究也就显得尤为重要了。 为了得到良好的控制性能,对步进电机的控制的研究就一直没有停止过,许多重大的技术得以实现。上世纪80年代以后,由于微型计算机以多功能的姿态出现,步进电动机的控制方式变得更加灵活多样。原来的步进电机控制 2 系统采用分立元件的控制回路,或者集成电路,不仅调试安装复杂,要消耗大量元器件,而且一旦定型之后,要改变控制方案就一定要重新设计电路,不利于系统的改进升级。基于微型单片机的控制系统则通过软件来控制步进电机,能够更好地发挥步进电机的潜力。因此,用微型单片机控制步进电机己经成为了一种必然的趋势,也符合数字化的时代发展要求。还比如为了适应一些领域中高精度定位和运行平稳性的要求,出现的步进电机细分驱动技术,就包括振荡器、环行分配器控制的细分驱动、基于单片机斩波恒流驱动、基于单片机的直流电压驱动三种常见驱动方式,除上述三种步进电机的驱动方案之外,目前报道的驱动方案还有根据汇编语言或C语言进行软件开发,通过串行或并行通行的方式实现PC机与步进电机控制器之间的数据通信,最终实现由PC机直接控制步进电机的方法。 但在有些应用场合,并不需要高精度的控制,而需要在满足一般工作要求的情况下,尽量使控制系统做到:1、系统硬件结构简单,成本低;2、功能较为齐全;3、适应性强;4、电机各种运行状态指示一目了然,操作方便; [2]5、系统抗干扰能力强,可靠性高等要求。本论文就是采用这个思路进行设计。一般步进电机控制器都用硬件实现,虽然电路可以做到了高集成度,可价格较贵,功能相对较单一,并且设计要求有所改变,就得改变整个硬件电路,比较麻烦。而采用单片机的软件和硬件结合进行控制,运用其强大的可编程和运算功能,充分利用单片机的各种资源,能灵活的对步进电机进行控制,实现其不同模式、步数、正反转、转速等控制,如果需改变控制要求,一般只需改变软件就能适应新的环境,并且在本设计中利用动态扫描技术,把显示电路和键盘电路有机的结合起来,能做到一定的人机交换,而且为了抗干扰,提高可靠性,具有一定的应用价值。 1.2 步进机的现状以及发展趋势 1.2.1 步进电机的现状 我国步进电机的研究及制造起始于本世界50年代后期,从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用或开发少量产品。我国在文化大革命中开始大量生产和应用步进电机,例如江苏、浙江、北京、南京、四川等各地都有投入生产,而且都在各行业使用,其中的驱动电路所有半导体器件都是完全国产化的,当时是全分立元器件构成的逻辑运算电路,还有电容耦合输入的计数器,触发器,环形分配器。中等耐压的大功率半导体器件也完全国产化。70年代初期,步进电机的生产和研究都有所突破,除反映在驱动器设计方面的长足进步以外,对反应式步进电机本 3 体的设计研究发展到一个较高的水平。70年代中期至80年代中期为成品发展阶段,新品种高性能电动机不断被开发。至80年代中期以来,由于步进电机精确模型做了大量研究工作,各种混合式步进电机及驱动器作为产品广泛利用。 目前,生产步进电机的厂家的确不少,但具有专业技术人员,能够自行开发,研制的厂家却非常少,大部分的厂家只一、二十人,连最基本的设备都没有。仅仅处于一种盲目的仿制阶段。这就给户在产品选型、使用中造成许多麻烦。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、 [3]电子及计算机等许多专业知识。 1.2.2 步进电机的发展趋势 步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。可是在人类社会进入自动化时代的今天,传统电动机的功能已不能满足工厂自动化和办公自动化等各种运动控制系统的要求。为适应这些要求,发展了一系列新的具备控制功能的电动机系统,其中较有自己特点,且应用十分广泛的一类便是步进电动机。 步进电动机的发展与计算机工业密切相关。自从步进电动机在计算机外围设备中取代小型直流电动机以后,使其设备的性能提高,很快地促进了步进电动机的发展。另一方面,微型计算机和数字控制技术的发展,又将作为数控系统执行部件的步进电动机推广应用到其他领域,如电加工机床、小功率机械加工机床、测量仪器、光学和医疗仪器以及包装机械等。 任何一种产品成熟的过程,基本上都是规格品种逐步统一和简化的过程(专、精度)。现在,步进电动机的发展—(结构的发展)已归结为单段式结构的磁阻式、混合式和爪极结构的永磁式三类。爪极电机价格便宜,性能指标不高,混合式和磁阻式主要作为高分辨率电动机,由于混合式步进电动机具有控制功率小,运行平稳性较好而逐步处于主导地位。最典型的产品是二相8极50齿的电动机,步距角1.8?,0.9?(全步,半步);还有五相10极50齿和一些转子100齿的二相和五相步进电动机,五相电动机主要用于运行性能较高的场合。到目前,工业发达国家的磁阻式步进电动机已极少见。 步进电动机最大的生产国是日本,如日本伺服公司、东方公司、SANYO DENKI和MINEBEA及NPM公司等,特别是日本东方公司,无论是电动机性能和外观质量,还是生产手段,都堪称是世界上最好的。现在日本步进电 4 动机年产量(含国外独资公司)近2亿台。 另外的结论是HB型电动机更适合于低速大转矩用途;RM型适用于平稳运行以及转速大于1000r/min的用途;而PM型成本低,在低转速时的振动和高转速时的大转矩方面,三相PM型电动机比两相电动机的性能要好。 因此,当前最有发展前景的当属混合式步进电动机,而混合式电动机又向以下四个方向发展: 发展趋势之一,是继续沿着小型化的方向发展。随着电动机本身应用领域的拓宽以及各类整机的不断小型化,要求与之配套的电动机也必须越来越小,在57、42机座号的电动机应用了多年后,现在其机座号向39、35、30、25方向向下延伸。瑞士ESCAP公司最近还研制出外径仅10mm的步进电动机。 就编码器本身而言,24位高精度、高速度(处理速度—刷新速率--DSP)、矩阵式—原理创新、超小型(工艺创新)、智能型(软件创新—智能识别、上位机等、多圈—耦合扩展发展方向)。 发展趋势之二,是改圆形电动机为方形电动机。由于电动机采用方型结构,使得转子有可能设计得比圆形大,因而其力矩体积比(性价比)将大为提高。同样机座号的电动机,方形的力矩比圆形的将提高30,,40,。 发展趋势之三,对电动机进行综合设计。即把转子位置传感器(相对编码器),减速齿轮(减速机)等和电动机本体综合设计在一起,这样使其能方便地组成一个闭环系统,因而具有更加优越的控制性能。 发展趋势之四,向五相和三相电动机方向发展。目前广泛应用的二相和四相电动机,其振动和噪声较大,而五相和三相电动机具有优势性。而就这两种电动机而言,五相电动机的驱动电路比三相电动机精密且复杂,因此三 [4]相电动机系统的价格比要比五相电动机更低一些。 1.3 步进电机的优点 基于电机的运动控制技术作为自动化领域的关键部分,在国民经济当中起着重要的作用。随着现代科学技术的进步,尤其是集成电路、电力电子器件、自动化控制理论等方面的进展,电机在其实际应用中已由过去简单地控制转动停止、以提供动力为目的应用上升到对速度、加速度、位移和转矩等进行精确控制阶段,以便使被驱动的机械运动准确符合预想的要求。 步进电机正好能够很好地符合这种需求,它是一种将数字脉冲信号转化为机械角位移或者线位移的数模转换控制电机。通常所说的步进电机一般是指机电一体化设备包括步进电机及其驱动器,当步进电机驱动器接受到一个脉冲之后就驱动步进电机转动一个固定的角度即步距角。步进电机不像其它电机那样连续旋转而是以一定的步距角一步一步做增量运动因此而得名。所 5 以通过控制脉冲个数来控制步进电机转动的角位移,达到精确定位的目的;同时也可以通过控制脉冲的频率来控制步进电机转动速度和加速度,达到调 [5]速的目的。除此之外步进电机还具有以下一些优点: (1)无刷:步进电机是无刷结构电机,与带有换向器和电刷等易损部件的传统有刷电机相比而言可靠性更高,因此电机的寿命仅仅取决于轴承的命; (2)与负载无关:不超载时步进电机能够按照设定的速度运行; (3)动态响应快:易于启动、停止和反转; (4)保持转矩:停止时能够自锁; (5)无累积误差:虽然步进电机每转动一步的角位移与标称的步距角具有一定的误差(3,5%),由于每步的精度在百分之三到百分之五,而且不会将一步的误差积累到下一步因而有较好的位置精度和运动的重复性,转动一周后累积的误差和为零; (6)步距角与环境无关:步进电机的固有步距角是由本身构造决定的,与温度、电压、电流等使用环境无关; (7)易于控制:只需控制脉冲的频率和个数,即可达到定位、调速目的; (8)价格低廉:步进电机相对于同样用于定位领域交、直流伺服电机而言具有较高的性价比; (9) 电机旋转的角度正比于脉冲数。 1.4 步进电机的缺点 正是由于这些优点,使得由步进电机及其驱动控制器构成的开环数控定位系统,既具有较高的控制精度,良好的控制性能,又能稳定可靠地工作。与同样应用于定位领域的交、直流伺服电机构成闭环伺服系统相比较而言,主要优势在于性价比高和驱动控制简单,但是性能上却具有以下明显的不足之处: (1)低速转动时振动和噪声都比较大; (2)输出力矩随着转动速度的升高而降低; (3)启动频率不能太高,否则会堵转并伴随有呼啸声; (4)速度突变较大时存在丢步和过冲现象; (5)最高运动速度较低,且高速运转时输出力矩小; (6)开环控制,不能保证实际转动的角度与设想的完全一致。 虽然步进电机有这些缺点,但是并不影响其在经济型的数控装置上的使用。现在比较常用的步进电机主要有反应式步进电机、永磁式步进电机和混合式步进电机。永磁式步进电机一般为两相,转矩和体积较小,步进角一般为7.5度 或15度,振动和噪音小;反应式步进电机一般为三相,可实现大转 6 矩输出,步进角一般为1.5度,但噪声和振动都很大;混合式步进电机混合了永磁式和反应式的优点,步距角小、转矩大且振动、噪音小,它主要又分为两相和五相:两相步距角一般为1.8度,而五相步进角一般为 0.72度。 1.5 步进电机应用中的注意点 . 步进电机应用于低速场合---每分钟转速不超过1000转,(0.9度时1 6666PPS),最好在1000-3000PPS(0.9度)间使用,可通过减速装置使其在此间工作,此时电机工作效率高,噪音低; 2. 步进电机最好不使用整步状态,整步状态时振动大; 3. 由于历史原因,只有标称为12V电压的电机使用12V外,其他电机的电压值不是驱动电压伏值 ,可根据驱动器选择驱动电压(建议:57BYG采用直流24V-36V,86BYG采用直流50V,110BYG采用高于直流80V),当然12伏的电压除12V恒压驱动外也可以采用其他驱动电源, 不过要考虑温升; 4. 转动惯量大的负载应选择大机座号电机; 5. 电机在较高速或大惯量负载时,一般不在工作速度起动,而采用逐渐升频提速,一电机不失步,二可以减少噪音同时可以提高停止的定位精度; 6. 高精度时,应通过机械减速、提高电机速度,或采用高细分数的驱动器来解决,也可以采用5相电机,不过其整个系统的价格较贵,生产厂家少,其被淘汰的说法是外行话; 7. 电机不应在振动区内工作,如若必须可通过改变电压、电流或加一些阻尼的解决; 8. 电机在600PPS(0.9度)以下工作,应采用小电流、大电感、低电压来驱动; 9. 应遵循先选电机后选驱动的原则。 7 2 步进机的基础知识 2.1 步进机的概念 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。我们可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时我们也可以通过控制脉冲频率来控制电机转动的速 [6]度和加速度,从而达到调速的目的。 在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控制变的非常的简单。从原理上讲,步进电机是一种低速同步电动机。 2.2 步进电机的特点及功能 2.2.1 步进电机的特点 1. 一般步进电机的精度为步进角的3-5%,角位移与输入脉冲数严格成正比,没有累计误差,具有良好的跟随性。 2. 步进电机外表不允许较高的温度。步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在摄氏130度以上,有的甚至高达摄氏200度以上,所以步进电机外表温度在摄氏80-90度完全正常。 3. 步进电机的力矩会随转速的升高而下降。当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。 4. 步进电机自身的噪声和振动较大,带惯性负载的能力较差。 5. 由步进电机与驱动电路组成的开环数控系统,既非常简单、廉价,又非常的可靠。同时,它也可以与角度反馈环节组成高性能的闭环数控系统。 6. 步进电机的动态响应快,易于启停,正反转及变速。 7. 速度可在相当宽的范围内平滑调节,低速下仍能保证获得大转矩,因此,一般可以不用减速器而直接驱动负载。 8. 步进电机只能通过脉冲电源供电才能运行,它不能直接使用交流电源和直流电源。 8 2.2.2 步进电机的功能 在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,同时步进电机只有周期性的误差而无累积误差,精度高,步进电动机可以在宽广的频率范围内通过改变脉冲频率来实现调速、快速起停、正反转控制等。 2.3 步进电机工作原理 步进电机也叫步进器,它利用电磁学原理,将电能转换为机械能,步进电机在结构上也是由定子和转子组成,可以对旋转角度和转动速度进行高精度控制。当电流流过定子绕组时,定子绕组产生一矢量磁场,该矢量场会带动转子旋转一角度,使得转子的一对磁极磁场方向与定子的磁场方向一着该磁场旋转一个角度。因此,控制电机转子旋转实际上就是以一定的规律控制定子绕组的电流来产生旋转的磁场。每来一个脉冲电压,转子就旋转一个步距角,称为一步。根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,在供给连续脉冲时,就能一步一步地连续转动,从而使电机旋转。电机将电能转换成机械能,步进电机将电脉冲转换成特定的旋转运动。每个脉冲所产生的运动是精确的,并可重复,这就是步进电机为什么在定位应用中如此有效的原因。 通过电磁感应定律我们很容易知道激励一个线圈绕组将产生一个电磁场,分为北极和南极,见图2.1所示。定子产生的磁场使转子转动到与定子磁 [6]场对直。通过改变定子线圈的通电顺序可使电机转子产生连续的旋转运动。 图2.1 激励线圈产生电磁场 2.4 步进电机的分类 步进电动机的种类很多,从广义上讲,步进电机的类型分为机械式、电磁式和组合式三大类型。按结构特点电磁式步进电机可分为反应式(VR)、永 9 磁式(PM)和混合式(HB)三大类;按相数分则可分为单相、两相和多相三种。目前使用最为广泛的为反应式和混合式步进电机。 (1)反应式步进电机(Variable Reluctance,简称VR)反应式步进电机的转子是由软磁材料制成的,转子中没有绕组。它的结构简单,成本低,步距角可以做得很小,但动态性能较差。反应式步进电机有单段式和多段式两种类型; (2)永磁式步进电机(Permanent Magnet,简称PM)永磁式步进电机的转子是用永磁材料制成的,转子本身就是一个磁源。转子的极数和定子的极数相同,所以一般步距角比较大。它输出转矩大,动态性能好,消耗功率小(相比反应式),但启动运行频率较低,还需要正负脉冲供电; (3)混合式步进电机(Hybrid,简称HB)混合式步进电机综合了反应式和永 磁式两者的优点。混合式与传统的反应式相比,结构上转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。 2.5 步进电机的技术参数 2.5.1 步进电机的基本参数 1. 空载启动频率:即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率更低。如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后一定加速度升到所希望的高频(电机转速从低速升到高速)。 2. 电机固有步距角:它表示控制系统每发一个步进脉冲信号,电机所转动的角度。电机出厂时给出了一个步距角的值,如86BYG250A型电机给出的值为0.9?/1.8?(表示半步工作时为0.9?、整步工作时为1.8?),这个步距角可以称之为‘电机固有步距角’, 它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关。 3. 步进电机的相数:是指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机。电机相数不同,其步距角也不同,一般二相电机的步距角为0.9?/1.8?、三相的为0.75?/1.5?、五相的为0.36?/0.72?。在没有细分驱动器时,用户主要靠选 择不同相数的步进电机来满足自己步距角的要求。如果使用细分驱动器,则“相数”将变得没有意义,用户只需在驱动器上改变细分数,就可以改变步距角。 4. 保持转矩(HOLDING TORQUE):是指步进电机通电但没有转动时,定子锁住转子的力矩。它是步进电机最重要的参数之一,通常步进电机在低 10 速时的力矩接近保持转矩。由于步进电机的输出力矩随速度的增大而不断衰减,输出功率也随速度的增大而变化,所以保持转矩就成为了衡量步进电机最重要的参数之一。比如,当人们说2N.m的步进电机,在没有特殊说明的情况下是指保持转矩为2N.m的步进电机。 2.5.2 步进电机动态指标 1. 步距角精度: 步进电机每转过一个步距角的实际值与理论值的误差用百分比表示,误差步距角*100%。不同运行拍数其值不同,四拍运行时应在5%之内,八拍运行时应在15%以内。 2. 失步:电机运转时运转的步数,不等于理论上的步数,称之为失步。 3. 失调角:转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。 4. 最大空载起动频率: 电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。 5. 最大空载的运行频率: 电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。 6. 运行矩频特性:电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据,图2.2所示是力矩频率曲线。 力矩频率曲线 图2.2 7. 电机的共振点: 步进电机均有固定的共振区域,二、四相感应子式步进电机的共振区一般在180-250pps之间(步距角1.8度)或在400pps左右(步距角为0.9度),电机驱动电压越高,电机电流越大,负载越轻,电机体积越小,则共振区向上偏移,反之亦然,为使电机输出电矩大,不失步和整个系统的噪音降低,一般工作点均应偏移共振区较多。 其它特性还有惯频特性、起动频率特性等。电机一旦选定,电机的静力矩确定而动态力矩却不然,电机的动态力矩取决于电机运行时的平均电流(而 11 非静态流)平均电流越大,电机输出力矩越大,即电机的频率特性越硬。力矩频率特性曲线见图2.3所示。 图2.3 力矩频率特性曲线 其中,曲线3电流最大、或电压最高;曲线1电流最小、或电压最低,曲线与负载的交点为负载的最大速度点,要使平均电流大,尽可能提高驱动 [7]电压。 2.5.3 步进电机的静态指标 1. 相数:产生不同对极N、S磁场的激磁线圈对数。常用m表示。 2. 拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A. 3. 步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。 2.6 步进电机详细调速原理 步进电机的调速一般是改变输入步进电机的脉冲的频率来实现步进电机的调速,因为步进电机每给一个脉冲就转动一个固定的角度,这样就可以通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而实现步进电的调速。具体的延时时间可以通过软件来实现。 这就需要采用单片机对步进电机进行加减速控制,实际上就是改变输出脉冲的时间间隔,单片机控制步进电机加减法运转可实现的方法有软件和硬件两种。软件方法指的是依靠延时程序来改变脉冲输出的频率,其中延时的长短是动态的,软件法在电机控制中,要不停地产生控制脉冲,占用了大量的CPU时间,使单片机无法同时进行其他工作;硬件方法是依靠单片机内部的定时器来实现的,在每次进入定时中断后,改变定时常数,从而升速时使脉 12 冲频率逐渐增大,减速时使脉冲频率逐渐减小,这种方法占用CPU时间较少, 在各种单片机中都能实现,是一种比较实用的调速方法。 13 3 步进电机设计方案确定 3.1 步进电机的驱动 步进电动机上个世纪就出现了,它的组成、工作原理和今天的反应式步进电动机没有什么本质区别,也是依靠气隙间的磁导变化来产生电磁转矩。上世纪80年代以后,由于廉价的微型计算机以多功能的姿态出现,步进电动机的控制方式变得更加灵活多样。步进电机驱动技术指的是用步进电机驱动器的驱动级来实现对步进电机各相绕组的通电和断电,同时也是对绕组承受的电压和电流进行控制的技术。到目前为止,步进电机驱动技术通常分为单电压驱动、单电压串电阻驱动、高低压驱动、斩波恒流驱动、升频升压驱动和细分驱动等。 3.1.1 单电压功率驱动 单电压驱动是指电动机绕组在工作时,只用一个电压电源对绕组供电。 单电压驱动是通过改变电路的时间常数以提高电机的高频特性。该驱动方式早在六十年代初期国外就已大量使用,它的优点是结构简单、成本低;缺点是串接电阻器的做法将产生大量的能量损耗,尤其是在高频工作时更加严重,因而它只适用于小功率或对性能指标要求不高的步进电机驱动。 单电压串电阻驱动是在单电压驱动技术的基础上为电枢绕组回路串入电阻,用以改善电路的时间常数以提高电机的高频特性。它提高了步进电机的高频响应、减少了电动机的共振,也带来了损耗大、效率低的缺点。这种驱动方式目前主要用于小功率或启动、运行频率要求不高的场合。 步进电机使用脉冲电源工作,脉冲电源的获得可通过下图说明,开关管T是按照控制脉冲的规律“开”和“关”,使直流电源以脉冲方式向绕组L供电,这一过程我们称为步进电机的驱动。 3.1.2 双电压功率驱动 用提高电压的方法可以使绕组中的电流上升波形变陡,这样就产生了双电压驱动。双电压驱动有两种工作方式:双电压法和高低压法。 双电压驱动的基本思路是在较低(低频段)用较低的电压UL驱动,而在高速(高频段)时用较高的电压UH驱动。这种功率接口需要两个控制信号,Uh为高压有效控制信号,U为脉冲调宽驱动控制信号。 3.1.3 高低压功率驱动 高低压驱动是指不论电动机的工作频率是多少,在导通相的前沿用高电压供电来提高电流的上升沿斜率,而在前沿过后采用低电压来维持绕组的电 14 流,即采用加大绕组电流的注入量以提高出力,而不是通过改善电路的时间常数来使矩频性能得以提高。这种驱动方式目前在实际应用中还比较常见。 高低压驱动的设计思想是,不论电机工作频率如何,均利用高电压UH供电来提高导通相绕组的电流前沿,而在前沿过后,用低电压UL来维持绕组的电流。这一作用同样改善了驱动器的高频性能,而且不必再串联电阻Rs,消除了附加损耗。高低压驱动功率接口也有两个输入控制信号Uh和Ul,它们应保持同步,且前沿在同一时刻跳变,高压管VTH的导通时间tl不能太大,也不能太小,太大时,电机电流过载;太小时,动态性能改善不明显,一般可取1~3ms(当这个数值与电机的电气时间常数相当时比较合适)。 3.1.4 细分驱动 细分驱动是指在每次脉冲切换时,不是将绕组的全部电流通入或切除,而是只改变相应绕组中电流的一部分,电动机的合成磁势也只旋转步距角的一部分。细分驱动时,绕组电流不是一个方波而是阶梯波,额定电流是台阶式的投入或切除。比如:电流分成n个台阶,转子则需要n次才转过一个步距角,即n细分细分驱动最主要的优点是步距角变小,分辨率提高,且提高了电机的定位精度、启动性能和高频输出转矩:其次,减弱或消除了步进电机的低频振动,降低了步迸电机在共振区工作的几率。可以说细分驱动技术是步进电动机驱动与控制技术的一个飞跃。 细分驱动是用脉冲电压来供电的,对于一个电压脉冲,转子就可以转动一步,一般会根据电压脉冲的分配方式,步进电机各相绕阻会轮流切换,固可以使步进电机的转子旋转。细分控制的电路一般分为两类,一类是采用线性模拟功率放大器的方法获得阶梯形电流,这种方法简单,但效率低。另一类是用单片机采用数子脉宽调制的方法获得阶梯电流,这种方法需要复杂的 [8]计算可使细分后的步距角一致。 3.2 步进电机的单片机控制 3.2.1 步进电机控制系统组成 与传统步进控制器相比较有以下优点: 1. 用微型机代替了步进控制器把并行二进制码转换成串行脉冲序列,并实现方向控制。 2. 只要负载是在步进电机允许的范围之内,每个脉冲将使电机转动一个固定的步距角度。 15 3. 根据步距角的大小及实际走的步数,只要知道初始位置,便可知道步进电机的最终位置。 图3. 1所示是步进电机控制系统组成图。 图3.1 步进电机控制系统图 3.2.2 步进电机控制系统原理 脉冲序列的生成如图3.2所示。 图3.2 脉冲的生成 脉冲幅值:由数字元件电平决定。 TTL 0 , 5V CMOS 0 , 10V 接通和断开时间可用延时的办法控制。要求:确保步进到位。 方向控制: 步进电机旋转方向与内部绕组的通电顺序相关。 四相八拍,通电顺序为: 正转:AB—B—BC—C—CD—D—DA—A—AB 反转:AD—D—DC—C—CB—B—BA—A—AD 改变通电顺序可以改变步进电机的转向。 16 3.3 步进电机的运行控制 3.3.1 步进电机速度控制 步进电机的速度控制是通过单片机发出的步进脉冲频率来实现,对于软脉冲分配方式,可以采用调整两个控制字之间的时间间隔来实现调速,对于硬脉冲分配方式,可以控制步进脉冲的频率来实现调速。控制步进电机的速度的方法可有两种: 1. 软件延时法:延时方法是在每次换向之后调用一个延时子程序,待延时结束后再次执行换向,这样周而复始就可发出一定频率的CP脉冲或换向周期。延时子程序的延时时间与换向程序所用的时间和,就是CP脉冲的周期,该方法简单,占用资源少,全部由软件实现,调用不同的子程序可以实现不同速度的运行。但占用CPU时间长,不能在运行时处理其他工作。因此只适合较简单的控制过程。 2. 定时器中断法:定时方法是利用单片机系统中的定时器定时功能产生任意周期的定时信号,从而可方便的控制系统输出CP脉冲的周期。当定时器启动后,定时器从装载的初值开始对系统及其周期进行加计数,当定时器溢出时,定时器产生中断,系统转去执行定时中断子程序。将电机换向子程序放在定时中断服务程序中,定时中断一次,电机换向一次,从而实现电机的速度控制。由于从定时器装载完重新启动开始至定时器申请中断止,有一定的时间间隔,造成定时时间增加,为了减少这种定时误差,实现精确定时,要对重装的计数初值作适当的调整。调整的重装初值主要考虑两个因素一是中断响应所需的时间。二是重装初值指令所占用的时间,包括在重装初值前中断服务程序重的其他指令因。综合这两个因素后,重装计数初值的修正量取8个机器周期,即要使定时时间缩短8个机器周期。用定时中断方式来控制电动机变速时,实际上是不断改变定时器装载值的大小。在控制过程中,采用离散办法来逼近理想的升降速曲线。为了减少每步计算装载值的时间,系统设计时就把各离散点的速度所需的装载值固化在系统的ROM中,系统在运行中用查表法查出所需的装载值,这样可大幅度减少占用CPU的时间,提高系统的响应速度愿大多数步进电机运动控制系统都运行在开环状态下,因为成本较低,并可提供运动控制技术固有的位置控制,无须反馈。但是,在某些应用中,需要更多的可靠性、安全性或产品质量的保证,因此,闭环控制也是一种选择。 17 3.3.2 步进电机位置控制 步进电机的位置控制,指的是控制步进电机带动执行机构从一个位置精确地运行到另一个位置,步进电机的位置控制是步进电机的一大优点,它可以不用借助位置传感器而只需要简单的开环控制就能达到足够的位置精度,因此应用很广。步进电机的位置控制需要两个参数: 1. 第一个参数:步进电机控制执行机构当前的位置参数(我们称为绝对位置),绝对位置时有极限的,其极限时执行机构运动的范围,超越了这个极限就应报警。 2. 第二个参数:从当前位置移动到目标位置的距离 我们可以用折算的方式将这个距离折算成步进电机的步数,这个参数是外界通过键盘或可调电位器旋钮输入的,所以折算的工作应该在键盘程序或A/D转换程序中完成。 对步进电机位置控制的一般作法是:步进电机每走一步,步数减1,如果没有失步存在,当执行机构到达目标位置时,步数正好减到0。因此,用步数等于0来判断是否移动到目标位,作为步进电机停止运行的信号。 3.3.3 步进电机加减速度控制 步距角和转速大小不受电压波动和负载变化的影响,也不受各种环境条件诸如温度、压力、振动、冲击等影响,而仅仅与脉冲频率成正比,通过改变脉冲频率的高低可以大范围地调节电机的转速,并能实现快速起动、制动、正反转、加减速,而且有自锁的能力,不需要机械制动装置,不经减速器也可获得低速运行。它每转过一周的步数是固定的,只要不丢步,角位移误差不存在长期积累的情况,主要用于数字控制系统中,精度高,运行可靠。如采用位置检测和速度反馈,亦可实现闭环控制。 步进电机驱动执行机构从A点到B点移动的时,要经历升速,恒速,减速过程,如果启动时一次将速度升到给定速度,由于启动频率超过极限启动频率,步进电机就有失步现象,因此会造成不能正常启动,如果到终点时突然停下来,由于惯性作用,步进电机会发生过冲现象,会造成位置精度降低。如果升速非常缓慢的升降速,步进电机虽然不会发生失步和过冲现象,但影响执行机构的工作效率,所以,对步进电机的加减速要有严格的要求,那就是保证在不失步和过冲的前提下,用最快的速度(或最短的时间)移动到有可能指定位置。为满足加减速要求,步进电动机运行通常按照加减速曲线进行。图3.3是加减速运行曲线。加减速运行曲线没有 一个固定的模式,一般根据经验和实验得到的。最简单的是匀加速和匀减速曲线。 18 图3.3 加减速曲线图 其加减速曲线都是直线,因此容易编程实现。按直线加速时,加速度是不变的,因此要求转矩也应该是不变的。但由于步进电动机的电磁转矩玉转速时非曲线关系,因而加速度玉频率也应该是非曲线关系。因此,实际上当转速增加时,转矩下降,所以按直线加速时,有可能造成因转矩不足而产生失步的现象。 19 4 步进电机的硬件系统设计 4.1 系统芯片介绍 4.1.1 单片机AT89C51功能介绍 AT89C51是一种带4K字节闪烁可编程可擦除只读存储(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。图4.1所示是AT89C51 [9]芯片图。 图4.1 AT89C51芯片图 主要特性: ?与MCS-51 兼容 ?4K字节可编程闪烁存储器 ?寿命:1000写/擦循环 ?数据保留时间:10年 ?全静态工作:0Hz-24MHz ?三级程序存储器锁定 ?128×8位内部RAM 20 ?32可编程I/O线 ?两个16位定时器/计数器 ?5个中断源 ?可编程串行通道 ?低功耗的闲置和掉电模式 ?片内振荡器和时钟电路 管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 21 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H- FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 [10]XTAL2:来自反向振荡器的输出。 4.1.2 芯片L298功能介绍 L298N为SGS-THOMSON Microelectronics 所出产的双全桥步进电机专用驱动芯片,内部包含4 信道逻辑驱动电路,是一种二相和四相步进电机的专用驱动器,可同时驱动2个二相或1个四相步进电机,内含二个H-Bridge 的高电压、大电流双全桥式驱动器,接收标准:TTL逻辑准位信号,可驱动46V、2A以下的步进电机,且可以直接透过电源来调节输出电压;此芯片可直接由单片机的IO端口来提供模拟时序信号。L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5,7 V电压。4脚VS接电源电压,VS电压范围VIH为,2.5,46 V。输出电流可达2.5 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。 L298N 之接脚如图 4.2所示,Pin1 和Pin15 可与电流侦测用电阻连接来控制负载的电路; OUTl、OUT2 和OUT3、OUT4 之间分别接2 个步进电机;input1~input4 输入控制电位来控制电机的正反转;Enable 则控制电机停转。 图4.2 L298管脚图 引脚功能介绍: 1. 1、15脚(Sense A;Sense B):电流检测端,分别为两个H桥的电流反馈脚,不用时可以直接接地; 2. 2、3脚(Output1;Output2):1Y1、1Y2输出端; 22 3. 4脚(VS):功率电源电压,此引脚与地必须连接 100nF电容器; 4. 5、7脚(Input 1; Input):1A1、1A2输入端,TTL 电平兼容; 5. 6、11脚(Enable A;Enable B):TTL 电平兼容输入 1EN、2EN 使能端,低电平禁止输出; 6. 8脚(GND):GND接地端; 7. 9脚(VSS):逻辑电源电压。此引脚必须与地连接100nF电容器; 8. 10、12脚(Input3;Input4):2A1,2A2输入端,TTL电平兼容; 9. 13、14脚(Out3;Out4):2Y1、2Y2 输出端,监测引脚15; 本论文选用四相八拍电动机。5,7,10,12脚接输入控制电平,控制电 [11]机的正反转。EnA,EnB接控制使能端,控制电机的停转。 4.1.3 芯片MM74C922功能介绍 4×4的键盘,在单片机系统中是很常见的。一般占用一个单片机的8位接口。对于这种输入设备,通常是由单片机来识别某行某列的按键是否按下,还需要延时抖动等等。为了节省单片机的IO接口,也可以使用外接芯片来驱动4×4的键盘,MM74C922就是一块较好的4×4的键盘编码芯片。它能够自己独立的进行键盘检测、消抖,以8421码给出键值。它还能给出按键是否按下的标志,其数据线还具有三态输出的功能,便于进行总线连接。总之,这块芯片功能很全面。其中不足的是:它是以输出1来代表有键按下。如果用来向51单片机申请中断,还需要加上一个反相器。图4.3所示就是利用MM74C922驱动的4×4的键盘的电路图。 图4.3 4×4的键盘的电路图 16键译码器MM74C922的特点及管脚功能: 23 MM74C922具有以下特点:1.功耗低,电压为3—5V;2.三态门输出,与LPTTL兼容;3.用一个电容器就可以消除键盘抖动;4.两键轮回;5.行具有上拉功能;6.具有芯片内或芯外时钟;7.最大开关电阻为50K。 MM74C922采用18脚双列直插封装,其图形如4.4所示。 图4.4 MM74C922采用18脚双列直插封装图 Y1—Y4为行健输入端,X1—X4为列键输入端,OSC为振荡器的外接引线端,可用外部的输入脉冲或电容器; OE为数据输出允许端,低电平有效;DA为数据有效输出端,高电平有效。键盘扫描可采用外部时钟或外接电容来执行,该译码器具有芯片内的上拉电阻,使开关阻抗可以达到50k。开关矩阵中不需要二极管就可以梢除多重开关,内部消颤电路仅需要一个单一电容就可实现。当有键按下时,数据输出有效为高电平;当键释放后,数据输出有效返回到低电平。即使有另外一个键按下,在正常消颤期间之后,数据输出有效返回至高电平表示接受新的键输入。在任何两个开关期间备有两键轮回功能。即使某一键释放,内部锁存器仍能存住按下的最后的键值,三态门输出便于总线扩展和运行。 4.1.4 LM041L功能介绍 LM041L是Protus ISIS中的一个4行*16列字符液晶显示器件,其原理图如图4.5所示。 24 4.5 4行*16列字符液晶显示器件图 LM041L液晶模块采用HD44780控制器,HD44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,LM041L与单片机MCU通讯可采用8位或4位并行传输两种方式,HD44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码,CGROM由8位字符码生成5*7点阵字符160中和5*10点阵字符32种.8位字符编码和字符的对应关系,CGRAM是为用户编写特殊字符留用的,它的容量仅64字节,可以自定义8个5*7点阵字符或者4个5*10点阵字符,AC可以存储DDRAM和CGRAM的地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或CGRAM但愿,LM041L液晶模块的引脚功能如下表所示。 LM041L字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中各引脚功能如表4.1所示。 对LCD中RS端口进行选择可实现指令和数据功能的控制,对R/W端口 [12]进行选择可实现读写功能的控制,其寄存器选择控制如表4.2所示。 25 表4.1 LM041L各引脚功能表 引脚 符号 功能说明 1 VSS 一般接地 2 VDD 接电源(+5V) 液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比3 VEE 度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的 电位器调整对比度)。 RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令4 RS 寄存器。 R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操5 R/W 作。 6 E E(或EN)端为使能(enable)端,下降沿使能。 7 DB0 底4位三态、 双向数据总线 0位(最低位) 8 DB1 底4位三态、 双向数据总线 1位 9 DB2 底4位三态、 双向数据总线 2位 10 DB3 底4位三态、 双向数据总线 3位 11 DB4 高4位三态、 双向数据总线 4位 12 DB5 高4位三态、 双向数据总线 5位 13 DB6 高4位三态、 双向数据总线 6位 14 DB7 高4位三态、 双向数据总线 7位(最高位)(也是busy flang) 15 BLA 背光电源正极 16 BLK 背光 电源负极 表4.2寄存器选择控制表 RS R/W 操作说明 0 0 写入指令寄存器(清除屏等) 0 1 都busy flag(DB7),以及读取位址计数器(DB0~DB6)值 1 0 写入数据寄存器(显示各字型等) 1 1 从数据寄存器读取数据 注:关于E=H脉冲——开始时初始化E为0,然后置E为1,再清0。 4.2 硬件电路设计 4.2.1 单片机复位电路 复位电路的作用是复位。在单片机接上电源以后,或电源出现过低电压时,将单片机存储器复位,使其各项参数处于初始位置,即处于开机时的标准程序状态,以消除由于某种原因的程序紊乱。 单片机的复位电路有上电复位和手动复位两种形式,RST端的高电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高电平复位信号则称为手动复位。上电复位是利用电容充电来实现复位。其工作原理是:上电 26 瞬间RST端的电位与VCC相同,随着电容C6充电电流的减小,+5V的电压立即加到了RST端,该高电平使得单片机复位。 手动复位是利用开关K来实现复位,此时电源Vcc经两电阻分压,在RST端产生一个高电平,使得单片机复位。当RST由高变低后复位结束,CPU从初始状态开始工作。 单片机的复位都是靠外部电路实现的,在本次设计中采用手动复位,图4.6所示是单片机复位电路。 图4.6单片机复位电路 4.2.2 单片机的晶振电路 晶振电路由晶振元件与单片机内部电路组成,产生的振荡频率为单片机提供时钟信号,供单片机信号定时和计时。 在AT89S51单片机内部有一个高增益反相放大器,其输入端引脚为XTAL1,其输出端为XTAL2。只要在两引脚之间跨接晶体振荡器和微调电容C4、C5,就可以构成一个稳定的自激振荡器。本设计采用图4.7 所示电路。 一般地,电容C1和C2取33pf左右;晶体振荡器,简称晶振,频率范围是1.2~12MHz。晶振频率越高,系统的时钟频率也就越高,单片机的运行速度也就越快。在通常情况下,使用振荡频率为6MHz或12MHz的晶振。如果系统中使用了单片机的串行口通信,则一般使用频率为11.0592MHz的晶振。而在本次设计中采用的是频率为11.0592MHz的晶振。 27 图4.7晶振电路 4.2.3 4×4矩阵键盘的工作原理 矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。图4.8所示为矩阵键盘电路图,从图可知该矩阵键盘的行接MM74C922的Y1—Y2输出端,列接该矩阵键盘行接MM74C922的X1—X2输出端。 图4.8 矩阵键盘电路 28 按键的识别可采用行扫描法和线反转法,这里采用简单的线反转法,只需三步。 第一步,执行程序使Y1~Y4均为高电平,此时读取各列线X1~X4的状态即可知道是否有键按下。当无键按下时,各行线与各列线相互断开,各列线仍保持为低电平;当有键按下时,则相应的行线与列线通过该按键相连,该列线就变为告电平,此时读取X0X1X2X3的状态,得到列码。 第二步,执行程序使X1~X4均为高电平,当有键按下时,Y1~Y4中有一条行线为高电平,其余行线为低电平,读取Y0Y1Y2Y3的状态,得到行码。 第三步,将第一步得到的列码和第二步得到的行码拼合成被按键的位置码,即X1X2X3X4Y1Y2Y3Y4(因为行线和列线各有一条为高电平,其余为高电平,所以位置码低四位和高四位分别只有一位高电平,其余为低电平)。也就是说,当某个键按下时,该键两端所对应的行线和列线为低电平,其余行线和列线为高电平。 29 5 进电机的软件程序设计 本系统的软件设计主要分为系统初始化、延时子程序、按键响应程序,液晶显示器显示程序,读步进电机控制子程序等几部分,事实上每一部分都是紧密相关的,每个功能模块对于整体设计都是非常重要,单片机AT89C51通过软件编程才能使系统真正的运行起来,软件设计的好坏也直接决定了系统的运行质量。 程序流程图的设计遵循自顶向下的原则,即从主体遂逐步细分到每一个模块的流程。在流程图中把设计者的控制过程梳理清楚。 5.1 系统软件主流程图 当给系统供电以后,通过单片机复位电路对系统进行上电复位系统经过初始化以后,便开始执行按键查询等待相应的操作,当有按键按下的时候程序便调用并执行相应的子程序,其具体的主流程图5.1如下所示。 Y N 图5.1 主程序流程图 5.2 按键子程序 1(延时子程序:在本延时子程序当中每调用一次延时子程序延时时间是1毫; 30 2(按键响应子函数:在本设计当中按键的一端接地,另一端接单片机的 对应端口,所以当按键按下,既是将单片机对应端口电平拉低。所以在编程 的时候判断按键按下是低电平有效。图5.2画出的是电机增速和减速的子程序 框图。 N Y N Y N Y 图5.2 增速减速子程序流程图 5.3 显示功能程序流程图 当给系统供电以后,通过单片机复位电路对系统进行上电复位系统经过 初始化以后,便开始执行按键查询等待相应的操作,当有按键按下的时候程 31 序便调用并执行相应的子程序,液晶显示屏显示相应按键操作效果。其液晶 显示流程图5.3所示。 N Y 图5.3 液晶显示流程图 32 结 论 经过一段时间学习和努力,本次设计终于顺利完成,具体结论如下: (采用AT89C51单片机作为控制核心,利用其强大的功能,把4×4键1 盘控制电路和液晶显示电路,电机驱动电路结合起来,组成一个操作方便,交互性强的简单系统。 2(通过系统的设计实现了预期的设计目标,完成了全部的设计任务,具体功能如下:完成了整个系统的硬件设计和软件(汇编语言)编程,能通过键盘电路控制步进电机的转速控制,能实现启动、停止、正转、反转、加速、减速等控制,实现控制四相步进电机正反转0—999任意角度,八级调速等功能;通过编程实现了通过单片机能输出四相八拍脉冲控制序列。驱动电路能提供12V,0.3A的驱动信号;整个电机的转速级数,转动的角度,等都能通过液晶显示器管显示出来;整个的成果形式是最终以步进电机控制电路板的形式展示出来了。 3(在本设计中作为电机正常工作比较重要的电机驱动模块,本设计中是采用驱动芯片L298及其外围电路来实现的,其特点是成本低,可靠性高,出现问题容易维护,实现相对容易等特点。 4(在电机工作模式上本设计实现了电机的四相八拍两种脉冲控制方式。 后续工作: 1(在本次设计中更多的是注重整体功能的实现,注重的是操作简单,所以本系统采用了开环控制的方式,电机也是选用的最常用的反应式步进电机。通过在本设计中的学习和查阅资料,想要得到更高性能的控制,可以选用混合式步进电机,采用闭环的细分驱动电路。 2(本系统在设计的过程中由于考虑到所需的按键较多,所以在本设计中键盘扫描部分采用了4×4键盘,并且考虑到单片进的端口有限,所以就出现了一个通过MM74C922键盘控制芯片来控制按键,以实现按键相应的操作及 16个按键全部应用到步进电机细分驱动控制电路系统的设计当中,并功能。 且每个按键只实现相应的单一功能。比如某一个键只能实现对电机开始/停止,正/反转,加速/减速等控制,那么这样的情况在实际生产生活中操作起来相对比较方便,所以建议以后有做类似设计任务的时候,预先考虑全面,争取一个键控制一个功能。 33 附录A 程序主控制部分 ORG 0000H LJMP MAIN ORG 0003H ;外部中断0入口地址 LJMP KEY_PAD ORG 0030H MAIN: ;主控制部分 MOV SP,#35H ;修改堆栈 CLR KEY_PRESS ;KEY_PRESS清零 CLR CHG_PRESS ;CHG_PRESS清零 SETB REV_FOR ;REV_FOR置1 SETB STOP_FLAG ;同上, MOV TIME,#INITIME ;将地址单元224给TIME MOV KEYCODE,#00H MOV KEY_CNT,#00H MOV CURSTEP,#00H MOV CNTH,#00H MOV CNTL,#00H MOV TIME,#128 MOV RATE,#31H SETB EX0 ;开外部中断INT0允许位 SETB IT0 ;外部中断0下降沿触发方式,低电平有效 SETB EA ;开中断总开关位 MOV P0,#STOPVAL MOV P2,#0FFH LCALL INI_LCD ;调用液晶显示初始化子程序 MOV P1,#80H LCALL ENABLE_LCD ;调用LCD使能控制信号子程序 MOV DPTR,#ANG_TAB ;DPTR专用地址寄存器,指向数据存放着的地址 LCALL WRITE_LCD ;调用LCD写命令控制子程序 MOV P1,#88H LCALL ENABLE_LCD MOV DPTR,#TRU_TAB LCALL WRITE_LCD MOV P1,#90H LCALL ENABLE_LCD MOV DPTR,#STA_TAB LCALL WRITE_LCD 34 MOV P1,#8EH LCALL ENABLE_LCD MOV DPTR,#DOC_TAB LCALL WRITE_LCD MOV P1,#98H LCALL ENABLE_LCD MOV DPTR,#SPD_TAB LCALL WRITE_LCD MOV P1,#9CH LCALL ENABLE_LCD MOV A,#31H LCALL WRITE ;调用写数据子程序 35 附录B 正转子程序 FORWARD: ;FORWARD按钮功能控制,步进电机正转子程 序 LCALL ENTER MOV A,STEPCNTL CJNE A,#00H,FOR1 MOV A,STEPCNTH CJNE A,#00H,FOR1 LJMP FR_OUT FOR1: CLR STOP_FLAG MOV P1,#94H LCALL ENABLE_LCD MOV DPTR,#FOR_TAB LCALL WRITE_LCD MOV P1,#97H LCALL ENABLE_LCD MOV A,#20H LCALL WRITE MOV R0,#00H FR_GOON: MOV P1,#8BH LCALL ENABLE_LCD MOV DPTR,#STEP_FOR FR_NEXT: MOV A,R0 MOVC A,@A+DPTR MOV P0,A INC R0 MOV A,R0 CJNE A,#STEPNUM,FR_NOT MOV R0,#00H FR_NOT: LCALL DELAY JB STOP_FLAG,FR_OUT DEC STEPCNTL LCALL WINC MOV A,STEPCNTL CJNE A,#00H,FR_GOON MOV A,STEPCNTH 36 CJNE A,#00H,FOR2 LJMP FR_OUT FOR2: DEC STEPCNTH LJMP FR_GOON R_OUT: MOV STEPCNTH,#00H F MOV STEPCNTL,#00H MOV FIR,#00H MOV SED,#00H MOV THR,#00H MOV CNTH,#00H MOV CNTL,#00H LCALL CLEARLCD MOV P1,#94H LCALL ENABLE_LCD MOV DPTR,#STOP_TAB LCALL WRITE_LCD RET 37 附录C 反转子程序 REVERSE: ;REVERSE按钮功能控制,步进电机反转子程序 LCALL ENTER MOV A,STEPCNTL CJNE A,#00H,RE1 MOV A,STEPCNTH CJNE A,#00H,RE1 LJMP REV_OUT RE1: CLR STOP_FLAG MOV P1,#94H LCALL ENABLE_LCD MOV DPTR,#REV_TAB LCALL WRITE_LCD MOV P1,#97H LCALL ENABLE_LCD MOV A,#20H LCALL WRITE MOV R0,#00H REV_GOON: MOV P1,#8BH LCALL ENABLE_LCD MOV DPTR,#STEP_REV REV_NEXT: MOV A,R0 MOVC A,@A+DPTR MOV P0,A INC R0 MOV A,R0 CJNE A,#STEPNUM,REV_NOT 38 MOV R0,#00H REV_NOT: LCALL DELAY JB STOP_FLAG,REV_OUT DEC STEPCNTL LCALL WINC MOV A,STEPCNTL CJNE A,#00H,REV_GOON MOV A,STEPCNTH CJNE A,#00H,RE2 LJMP REV_OUT RE2: DEC STEPCNTH LJMP REV_GOON REV_OUT: MOV STEPCNTH,#00H MOV STEPCNTL,#00H MOV FIR,#00H MOV SED,#00H MOV THR,#00H MOV CNTH,#00H MOV CNTL,#00H LCALL CLEARLCD MOV P1,#94H LCALL ENABLE_LCD MOV DPTR,#STOP_TAB LCALL WRITE_LCD RET 39 附录D LCD显示子程序 DISBCD: ;LCD显示子程序 PUSH DPH ;保护现场 PUSH DPL MOV P1,#8BH LCALL ENABLE_LCD MOV R6,#00H MOV R7,#9 LCALL MULD MOV A,R4 MOV R6,A MOV A,R5 MOV R7,A LCALL HB2 MOV TESTH,R4 MOV TESTL,R5 MOV DPTR,#NUM_TAB MOV A,R4 ANL A,#0F0H SWAP A ;A中高四位和低四位交换 MOVC A,@A+DPTR LCALL WRITE MOV A,R4 ANL A,#0FH MOVC A,@A+DPTR LCALL WRITE MOV A,R5 ANL A,#0F0H ;取出低四位 SWAP A MOVC A,@A+DPTR LCALL WRITE MOV P1,#8FH LCALL ENABLE_LCD 40 MOV A,R5 ANL A,#0FH MOVC A,@A+DPTR LCALL WRITE POP DPL ;恢复现场 POP DPH RET 41 附录E 步进电机原理图 42 附录F 8051系列单片机汇编语言指令速查表 编号 指令名称 指令助记符 指令说明 数据传送类指令 1 MOV A, #data 将立即数#data送累加器A 将立即数#data送片内RAM direct地址单元2 MOV direct, #data 内 3 Mov Rn, #data 将立即数#data送寄存器Rn 寄存器Ri内为RAM地址,将立即数#data4 Mov @Ri, #data 送该地址单元内 将direct1地址单元的数据送 direct2地址单5 Mov direct2, direct1 元内 6 Mov direct, rn 将Rn的数据送 direct地址单元内 7 Mov Rn, direct 将direct地址单元内的数据送Rn寄存器 寄存器Ri内为RAM地址,将该地址单元内8 一般传送 Mov direct, @Ri 的数据送direct地址单元内 寄存器Ri内为RAM地址,将direct地址单9 Mov @Ri, direct 元内的数据送该地址单元内 10 Mov A, Rn 将寄存器Rn内的数据送累加器A 11 Mov Rn, A 将累加器A内的数据送寄存器Rn 12 Mov A, direct 将direct地址单元内的数据送累加器A 13 Mov direct, A 将累加器A内的数据送direct地址单元内 寄存器Ri内为RAM地址,将该地址单元内14 Mov A, @Ri 的数据送累加器A 寄存器Ri内为RAM地址,将累加器A的15 Mov @Ri , A 数据送该地址单元内 16 目的地址传送 Mov DPTR, #data16 将16位立即数送数据指针DPTR寄存器 17 SWAP A 累加器A高低4位数据交换 18 XCH A, Rn 将累加器A数据和寄存器Rn内的数据交换 将累加器A数据和direct地址单元内的数据19 XCH A, direct 交换 字节交换 寄存器Ri内为RAM地址,将该地址单元20 XCH A, @Ri 内的数据与累加器A的数据交换 寄存器Ri内为RAM地址,将该地址单元内21 XCHD A, @Ri 的数据低4位与的低4位交换 将累加器A的数据送数据指针DPTR寄存22 MOVX @DPTR, A 器所指外部RAM地址单元内 与外部RAM传送 将DPTR寄存器所指外部RAM地址单元内的23 MOVX A , @DPTR 数据送累加器A 43 寄存器Ri内为片外RAM地址,将该地址24 MOVX A, @Ri 单元内的数据送累加器A 寄存器Ri内为片外RAM地址,将该地址25 MOVX @Ri, A 单元内的数据送累加器A A+DPTR构成ROM地址,将该地址内的数据26 MOVC A, @A+DPTR 送累加器A内 与ROM传送 A+PC构成ROM地址,将该地址内的数据送27 MOVC A, @A+PC 累加器A内 堆栈指针SP自加1后,将direct地址单元28 PUSH direct 的数据压进堆栈, 栈操作 堆栈的数据送direct地址单元中,后堆栈指29 POP direct 针减1, 算术运算指令 将寄存器Rn与累加器A的数据相加后,结30 ADD A, Rn 果保存到累加器A 将direct地址单元内的数据与累加器A的数31 ADD A, direct 据相加后结果保存到累加器A 寄存器Ri内位地址,将该地址单元内的数加法指令 32 ADD A, @Ri 据与累加器A的数据相加后结果保存到累 加器A 将立即数与累加器A的数据相加后结果保33 ADD A, #data 存到累加器A 将寄存器Rn与累加器A的数据相加,再加34 ADDC A, Rn 上进位标志内的值后,结果保存到累加器A 将direct地址单元内的数据与累加器A的数35 ADDC A, direct 据相加,再加上进位标志内的值后,结果保 存到累加器A 带进位加法 寄存器Ri内为RAM地址,将该地址单元内36 ADDC A, @Ri 的数据与累加器A的数据相加,再加上进位 标志内的值后,结果保存到累加器A 将立即数与累加器A的数据相加,再加上进37 ADDC A, #data 位标志内的值后结果保存到累加器A 将与累加器A的数据减去寄存器Rn的数据,38 SUBB A, Rn 再减去进位标志内的值,结果保存到累加器 A 将与累加器A的数据减去direct地址单元39 SUBB A, direct 内的数据,再减去进位标志内的值,结果保 存到累加器A 带借位减法 寄存器Ri内为RAM地址,将累加器A的数40 SUBB A, @Ri 据减去该地址单元内的数据,再减去进位标 志内的值后,结果保存到累加器A 将累加器A的数据减去立即数,再减去进位41 SUBB A, #data 标志内的值后,结果保存到累加器A 44 42 INC A 累加器A的值自加1 43 INC Rn 寄存器Rn的值自加1 44 INC direct direct地址单元内值自加1 加1指令 寄存器Ri内为RAM地址,该地址单元内的45 INC @Ri 值自加1 46 INC DPTR 数据指针寄存器DPTR内的值自加1 47 DEC A 累加器A的值自减1 48 DEC Rn 寄存器Rn的值自减1 减1指令 49 DEC direct direct地址单元内的值自减1 寄存器Ri内为RAM地址,该地址单元内的50 DEC @Ri 值自减1 累加器A与寄存器B内的值相乘,乘积的高51 乘法 MUL AB 8位保存在B寄存器,低8位保存在累加器 A中 累加器A的值除以寄存器B的值,商保存在52 除法 DIV AB 累加器A中,余数保存在B寄存器 53 二-十进制调整 DA A 对累加器A的结果进行十进制调整 逻辑运算指令 将累加器A的值和寄存器Rn的值进行与操54 ANL A, Rn 作,结果保存到累加器A中 将累加器A的值和direct地址单元内的值55 ANL A, direct 进行与操作,结果保存到累加器A中 寄存器Ri内为RAM地址,将累加器A的值和56 ANL A, @Ri 该地址单元内的值进行与操作,结果保存到 累加器A中 逻辑与 将累加器A的值和立即数进行与操作,结果57 ANL A, #data 保存到累加器A中 将累加器A的值和direct地址单元内的值58 ANL direct, A 进行与操作,结果保存到direct地址单元 内 将立即数和direct地址单元内的值进行与59 ANL direct, #data 操作,结果保存到direct地址单元内 将累加器A的值和寄存器Rn的值进行或操60 ORL A, Rn 作,结果保存到累加器A中 将累加器A的值和direct地址单元内的值61 ORL A, direct 进行或操作,结果保存到累加器A中 逻辑或 寄存器Ri内为RAM地址,将累加器A的值和62 ORL A, @Ri 该地址单元内的值进行或操作,结果保存到 累加器A中 将累加器A的值和立即数进行或操作,结果63 ORL A, #data 保存到累加器A中 45 将累加器A的值和direct地址单元内的值64 ORL direct, A 进行或操作,结果保存到direct地址单元 内 将立即数和direct地址单元内的值进行或65 ORL direct, #data 操作,结果保存到direct地址单元内 将累加器A的值和寄存器Rn的值进行异或66 XRL A, Rn 操作,结果保存到累加器A中 将累加器A的值和direct地址单元内的值67 XRL A, direct 进行异或操作,结果保存到累加器A中 寄存器Ri内为RAM地址,将累加器A的值和68 XRL A, @Ri 该地址单元内的值进行异或操作,结果保存 到累加器A中 逻辑异或 将累加器A的值和立即数进行异或操作,结69 XRL A, #data 果保存到累加器A中 将累加器A的值和direct地址单元内的值70 XRL direct, A 进行异或操作,结果保存到direct地址单 元内 将立即数和direct地址单元内的值进行异71 XRL direct, #data 或操作,结果保存到direct地址单元内 72 按位取反 CPL A 累加器A的值按位取反 73 累加器清零 CLR A 累加器A清0 74 逻辑右移 RR A 累加器A的值循环右移1位 75 逻辑左移 RL A 累加器A的值循环左移1位 76 带进位右移 RRC A 累加器A的值带进位循环右移1位 77 带进位左移 RLC A 累加器A的值带进位循环左移1位 控制转移指令 rel为地址偏移量,PC加2后的地址加上78 SJMP rel rel作为目标地址,程序跳到目标地址继续 运行 addr11为11位地址,PC加2后的地址高579 AJMP addr11(a10- a0) 位与指令中的低11位地址构成目标地址, 程序跳到目标地址继续运行 无条件转移 将addr16的16位地址送程序计数器PC,80 LJMP addr16 使机器执行下一条指令时无条件转移到 addr16处执行程序 目标地址的基地址放在DPTR中,目标地址81 JMP @A+DPTR 对基地址的偏移量放在累加器A中,它们相 加构成目标地址 If(累加器A=0)则PC加2再加上rel作82 JZ rel 为目标地址 条件转移 If(累加器A!=0)则PC加2再加上rel作83 JNZ rel 为目标地址 46 If(累加器A!= direct地址单元的值)则84 CJNE A, direct, rel PC加2再加上rel作为目标地址 If(累加器A!= 立即数)则PC加2再加上85 CJNE A, #data, rel rel作为目标地址 If(寄存器Rn的值!= 立即数)则PC加286 CJNE Rn, #data, rel 再加上rel作为目标地址 寄存器Ri内为RAM地址,If(该地址单元87 CJNE @Ri, #data, rel 的值!= 立即数)则PC加2再加上rel作为 目标地址 寄存器Rn的值减1后,If(寄存器Rn的88 DJNZ Rn, rel 值!=0)则PC加2再加上rel作为目标地址 循环转移 Direct地址单元的值减1后,If(该值!=0)89 DJNZ direct, rel 则PC加3再加上rel作为目标地址 If(CY=1)则PC加2再加上rel作为目标90 JC rel 地址 If(CY=0)则PC加2再加上rel作为目标91 JNC rel 地址 If(bit位=1)则PC加3再加上rel作为92 布尔条件转移 JB bit, rel 目标地址 If(bit位=0)则PC加3再加上rel作为93 JNB bit, rel 目标地址 If(bit位=1)则PC加3再加上rel作为94 JBC bit, rel 目标地址,且bit位清0 addr11为11位地址,PC加2后的地址PUSH 进堆栈,再将PC的地址高5位与指令中的95 ACALL addr11 低11位地址构成目标地址,程序跳到目标 地址继续运行 调用指令 PC加3后的地址PUSH进堆栈,再将16位96 LCALL addr16 地址送PC作为目标地址,程序跳到目标地 址继续运行 子程序返回指令,把堆栈中的地址恢复到97 RET PC中使程序回到调用处 返回指令 中断程序返回指令,把堆栈中的地址恢复到98 RETI PC中使程序回到调用处 99 空操作 NOP 空操作 位操作指令 将bit位地址中的值送PSW中的进位标志位100 MOV C, bit CY 布尔传送 将PSW中的进位标志位CY的值送bit位地101 MOV bit, C 址中 102 位清0 CLR C 将进位标志位CY清0 103 位清0 CLR bit 将bit位地址内清0 47 104 SETB C 将进位标志位CY置1 位置1 105 SETB bit 将bit位地址内置1 将Cy和bit位地址中的值进行与操作后,106 ANL C, bit 结果送Cy 位与 bit位地址中的值取反后再与Cy进行与操107 ANL C, /bit 作,结构送Cy 将Cy和bit位地址中的值进行或操作后,108 ORL C, bit 结果送Cy 位或 bit位地址中的值取反后再与Cy进行或操109 ORL C, /bit 作,结构送Cy 110 CPL C 将Cy取反 位取反 111 CPL bit 将bit位地址的值取反 说明: 1)Ri, Rn指当前工作寄存器,i,n = 0 – 7,当前工作寄存器由程序 状态字寄存器PSW的2个位RS1, RS0决定 48 参考文献 [1]刘宝延.程树康.步进电机及驱动控制系统[M].哈尔滨:哈尔滨工业大学出 版社,1997,45-48. [2]陈理壁. 步进电机及其应用[M].上海:上海科技技术出版社,1989,33-45. [3]季维发,过润秋,研武升等.机电一体化技术[M].北京:电子工业出版社, 1995,35-39. [4]史敬灼. 步进电动机伺服控制技术[M].北京:科学出版社,2006,77-79. [5] Larson,L.E.Full-bridge DC motor driver for consumer apps[J]. Portable Design,2005,30-34. [6]刘国永, 陈杰平. 单片机控制步进电机系统设计[N]. 安徽:安徽技术师 范学院学报, 2002,56-58. [7]何立民. 单片机应用系统设计[M](北京:北京航空航天大学出版社,1993, 45-50. [8]戴胜华等(单片机原理与应用[M](北京:清华大学出版社,2005,33-38. [9]李海滨、片春媛、许瑞雪.单片机技术课程设计与项目实例[J]. 中国电力出 版社, 2009,56-65. [10]刘国永, 陈杰平. 单片机控制步进电机系统设计[N]. 安徽:安徽技术师 范学院学报,2002,61-63. [11]王晓明,电动机的单片机控制[M](北京:京航空航天大学出版社,2002, 66-69. [12] Isao Takahashi,Toshihiko Noguchi.A new responese and high-efficiency control strategy of an motor[J].IEEE Trans on IAppl,1986,820-827. 49 致 谢 在论文完稿之际,首先要感谢我的指导老师对我的辛勤培养和精心指导。老师学识渊博、治学严谨、经验丰富,特别是忘我工作的科研精神都使我受益匪浅。在老师的悉心指导和大力帮助下,我的毕业设计才得以顺利完成。 论文的完成还得感谢一起学习的同学,感谢他们在平时的学习生活中给予我的热心帮助与支持!再次感谢我的母校,在这片净土读书四载,无形中塑造了我生命的气质、生活的方式,也练就了我乐观的心态和一颗感恩的心,没有你们悉心的指导和讲解,我不可能完成此次比较专业的设计。最后,我要感谢多年来一直支持我、爱护我的父母和亲人,谨此向他们致以最由衷的感恩和敬意~ 50
/
本文档为【基于单片机的步进电机细分驱动控制系统的设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索