基于PIC单片机的自动控制升降旗系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于PIC单片机的自动控制升降旗系统设计
王同宏刘霞
[文章摘要] 自动控制升降旗系统是以单片机(PIC16F877A)为中心的自动控制系统。该系统由键盘输入模块、液晶显示模块、步进电机、步进电机驱动器、旋转编码器、无线遥控模块、语音模块、时钟芯片DS1302等部分组成。该系统能够自动实现:国旗的自动升降控制、在指定位置自动停止、在上下极限位置具有防超限功能、升降旗的时间与国歌的演奏时间吻合。除此之外本系统还可通过键盘上的数字按键,可以预置国旗在旗杆上的停止位置;键盘上设置了升降旗的时间调整按键,可以调整升降旗的速度;使用液晶显示屏可以直观的看到升、降旗的高度变化过程及工作时间;使用编码器进行高度测量,其控制精度上可以达到毫米级。
[关键词] PIC16F877A 旋转编码器无线遥控语音模块DS1302
一、系统组成及方案论证
1.系统组成
该系统由键盘输入模块、显示模块、电机及驱动器、旋转编码器、无线遥控模块、语音模块、时钟芯片等部分组成。
2.方案论证
⑴显示方式的选择与论证
方案①:采用液晶显示器(LCD)显示。液晶屏功能强大,可显示各种字体的数字、汉字、图象,还可以自定义显示内容,显示内容也较丰富;方便操作者读取信息,及一些扩展功能的实现。
方案②:采用LED数码管显示。数码管具有编程简单,夜间显示效果好,但只能显示有限的符号和数码字,但显示内容有限,完成题目中的基本要求还可以,但还要增加具体功能的提示比较困难。
分析以上的两种方案的优缺点,选择第一种方案。
⑵电动机的选择与论证
方案①:采用直流电动机。直流电动机具有良好的启动性能和调速性能,但直流电动机的运转速度及运行的平稳性难以控制,很难达到本设计的要求。
方案②:采用交流电动机。交流电动机具有结构简单、运行可靠、成本低廉等优点;但对交流电动机进行调速需要比较高的技术和成本。
方案③:采用步进电动机。步进电动机是纯粹的数字控制电动机,它将电脉冲信号转变为角位移,即给一个脉冲,步进电机就转一个角度,因此非常合适单片机控制,在轻载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,累积误差小,控制精度高。
分析以上的三种方案的优缺点,显然第三方案更为方便实用。所以选择第三种方案。
⑶单片机的选择与论证
方案①:采用的MCS-51系列单片机,其驱动能力较弱,速度较慢,附加功能少。
方案②:采用由美国Microchip公司推出的PIC16F877A单片机,首先采用了RISC结构的嵌入式微控制器,其高速度、低电压、低功耗、大电流LCD驱动能力和低价位OTP技术。具有丰富的I/O 控制功能,具有片内256B的EEPROM,可以完成掉电保存数据的功能。
本设计要求升降旗与播放国歌同步,同时要求具有比较多的接口驳接时间、显示和控制接口以及具有掉电保持功能,所以采用第二种方案。
3.系统结构原理图见下页图1。
二、单元电路设计
1.主控制电路
这部分电路的核心是单片机PIC16F877A 。它具有强大的数据处理功能及较快的数据处理速度。通过单片机可以发出控制脉冲,经过电机驱动器带动步进电机转动,从而带动国旗的升降。单片机还能
在的高度,并控制液晶显示器显示。
2.步进电动机驱动及编码器
步进电机是把电脉冲信号变换成角位移以控制转子转动。在自动控制装置中作为
实现高频斩波,恒流驱动,具有很强的抗干扰性、高频性能好、起动频率高、控制信号与内部信号实现光电隔离。
图2.步进电机驱动电路
系统采用ZSP3.806-001G500BZ1/12C 光电编码器,如图 2.由于其能准确的检测出步进电机的转速,并把检测到的信号反馈给单片机。然后单片机把这个转速信息与已设定并存在RAM 中的标准转速相比较,从而可以控制电机平稳地运转。
3.键盘及液晶显示电路(略)
4.时钟电路
在本系统测试及数据分析中,需要记录升降旗的时间。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一
其软硬件设计简单,时间记录准确,既避免了连续记录的大工作量,又避免了定时记录的盲目性,给连续长时间的测量、控制系统的正常运行及检查都来了很大的方便。 5.语音模块
语音模块采用ISD2560,它是ISD 系列单片语音录放集成电路的一种。这是一种永久记忆型语音录放电路,录音时间为60秒,可重复录放10万次。在语音录放系统中的实际应用效果非常好,而且编程也比较简单,自己设计电路实现录音操作十分方便。
三、系统软件设计
本系统软件设计了特殊的功能键,通过对键盘的简单操作,便可实现升降旗、半旗状态、国旗位置的预设置以及升降旗速度的调整等功能。
本系统软件采用结构化程序设计方法,功能模块各自独立。软件主体流程图如图:
图4.语音模块电路
系统初始化:加电后完成系统硬件和系统变量的初始化。其中包括变量设置、标志位设定、置中断和定时器状态、设置控制口的状态、设置功能键等。
控制检测:由单片机读取所设定的数值,进行
数据处理。
等待功能键输入及显示测量结果:PIC16F877A 控制8279键盘显示接口芯片,由键盘输入命令,使用4位数码管显示测量的数据。
四、 结束语
自动控制升降旗系统采用了以上的硬软件设计后,经过样机测试,不仅能完成升降旗并伴奏国歌、预置位置、遥控等功能,而且在精度上达到了毫米级以上,功能先进,技术领先具有较好的市场推广价值。
参考文献
[1].全国大学生电子设计竞赛训练教程.黄智伟主编.北京.电子工业出版社.2005年6月第2次印刷
[2].单片机原理及应用.张洪润张亚凡.北京.清华大学出版社.2005年4月第一版
[3].单片机C语言编程与实例.赵亮侯国锐编著.北京.人民邮电出版社.2003年9月第一版
[4]. PIC单片机原理与接口技术.陈国先主编北京.电子工业出版社2005年8月第2次印刷