国旗升降自动控制系统

合集下载

自动控制升降旗系统设计

自动控制升降旗系统设计

自动控制升降旗系统的设计目录引言 (1)1.方案论证及选择 (2)1.1 采用STC89C52单片机设计自动升降旗控制系统 (2)1.2采用数字电路设计自动控制升降旗系统 (2)1.3采用PIC16F877A单片机设计自动控制升降旗系统 (3)1.4 总方案的选择 (3)2系统硬件的设计 (4)2.1 单片机最小系统的设计 (4)2.1.1 晶振电路的设计 (5)2.1.2 复位电路设计 (5)2.2 电机驱动模块的设计 (5)2.2.1 28BYJ-48步进电机 (5)2.2.2 ULN2003芯片 (6)2.3语音模块的设计 (7)2.4液晶显示模块的设计 (9)2.5无线遥控模块的设计 (9)2.6 旗杆的设计 (10)2.7 电源电路的设计 (11)3系统软件设计 (12)3.1 系统总程序流程图 (12)3.2 子程序流程图 (13)3.2.1 升降小旗运动子程序 (13)3.2.2 LCD1602液晶实时显示子程序的设计 (14)3.2.3语音播放子程序的设计 (15)3.3软件的调试与编译 (16)3.4程序的下载 (17)4.电路的与调试与结果分析 (19)4.1电路的调试 (19)4.1.1单片机最小系统的调试 (19)4.1.2 声音模块调试 (19)4.1.3 电机绕线的调试处理 (19)4.2电路结果分析 (20)4.2.1国旗升降高度的结果分析 (20)4.2.2 液晶显示高度结果分析 (20)结论 (22)致谢.............................................................. 错误!未定义书签。

参考文献.. (23)附录A 英文文献原文 (24)附录B 英文文献译文 (36)附录C 硬件总设计图 (45)附录D 设计源程序............................................ 错误!未定义书签。

自动控制升降旗系统设计方案分析

自动控制升降旗系统设计方案分析

自动控制升降旗系统设计方案分析摘要:本文主要针对自动控制升降旗系统的设计方案进行了分析和探讨。

首先介绍了自动控制升降旗系统的基本原理和作用,然后对系统的设计要求进行了详细的说明,并提出了相应的解决方案。

接着,分析了系统设计中的关键技术和难点,并提出了解决这些问题的方法和思路。

最后,给出了系统测试和优化的建议,以及未来的发展方向。

1.介绍自动控制升降旗系统是一种用于控制旗帜的升降的装置,可以实现对旗帜的自动升降。

该系统主要由传感器、控制器、电机和旗杆等组成。

其作用是提高升降旗的效率,减少人工操作,实现自动化。

2.设计要求在设计自动控制升降旗系统时,需考虑以下几个方面的要求:2.1 稳定性要求系统需要具备良好的稳定性,能够在各种环境条件下正常运行,以保证旗帜的合理升降。

2.2 快速度要求系统需要具备较快的升降速度,能够在短时间内完成旗帜的升降操作,提高效率。

2.3 灵活性要求系统需要具备较高的灵活性,能够根据不同的需求进行调整,满足不同场合下的升降旗要求。

2.4 安全性要求系统需要具备良好的安全性能,能够在升降旗过程中避免事故的发生,保证人员和设备的安全。

3.设计方案为了满足上述设计要求,我们提出了以下设计方案:3.1 传感器选择选用高精度的旗帜位置传感器,用于检测旗帜的升降位置,并将信号传输给控制器进行处理。

3.2 控制器设计设计一个高效可靠的控制器,用于接收传感器的信号,判断旗帜的位置,并控制电机的运行,实现旗帜的自动升降。

3.3 电机选型选用适合的电机,具有较高的转速和扭矩,以确保旗帜的快速升降。

3.4 旗杆设计设计合理的旗杆结构,确保旗帜的稳定升降,并考虑到安全因素,防止旗帜在风力较大时晃动或倒下。

4.关键技术和难点分析在自动控制升降旗系统的设计过程中,存在以下几个关键技术和难点:4.1 传感器信号处理传感器信号的准确处理是保证旗帜升降准确性的关键,需要设计合适的算法进行信号处理。

4.2 控制器的稳定性控制器的稳定性对系统的性能和安全性至关重要,需要选用高品质的元器件,并进行稳定性测试和优化。

自动控制升降旗系统设计报告中的传感器选择与应用

自动控制升降旗系统设计报告中的传感器选择与应用

自动控制升降旗系统设计报告中的传感器选择与应用摘要:本文旨在探讨自动控制升降旗系统设计报告中传感器的选择与应用。

在设计过程中,传感器的选用对系统的性能和稳定性至关重要。

本文首先介绍了自动控制升降旗系统的工作原理和设计要求。

然后,分析了常见的传感器类型,并根据系统要求选择了最适合的传感器,并详细阐述了各传感器的特点和应用场景。

最后,总结了传感器选择与应用的关键问题,并展望了未来的发展方向。

1. 引言自动控制升降旗系统是一种通过自动化技术实现国旗升降的系统,广泛应用于政府机关、学校等场合。

传感器作为系统中的重要组成部分,具有感知环境、传递信号的功能,对系统的性能和稳定性有着至关重要的影响。

在本章节中,我们将探讨传感器在自动控制升降旗系统设计报告中的选择与应用。

2. 自动控制升降旗系统的工作原理自动控制升降旗系统通常由电动机、传动装置、控制单元和传感器等组成。

其工作原理如下:控制单元接收外部信号,通过传感器检测环境变化,根据设定的规则判断是否需要升降旗,并通过控制信号控制电动机的启停和转动方向,从而实现自动升降旗的功能。

3. 设计要求在选择传感器之前,我们首先需要明确系统的设计要求。

自动控制升降旗系统的设计要求通常包括以下几个方面:1) 系统的稳定性和可靠性要求高;2) 对环境变化敏感,能够快速准确地检测到气象因素等外部条件的变化;3) 对传感器的精度和灵敏度有要求;4) 适应各种工作环境,并且能够抵抗恶劣的气象条件。

4. 传感器类型与特点在自动控制升降旗系统设计中,常用的传感器类型包括光电传感器、温度传感器和风速传感器等。

根据系统要求,我们选择了以下几种传感器进行介绍。

4.1 光电传感器光电传感器是一种能够将光信号转化为电信号的传感器。

其特点包括速度快、精度高、响应时间短、不受环境干扰等。

在自动控制升降旗系统中,光电传感器可以用于检测光线强度,根据光线的强弱判断是否需要升降旗。

4.2 温度传感器温度传感器是一种能够测量环境温度的传感器。

自动控制升降旗系统的设计论文

自动控制升降旗系统的设计论文
图3.1系统硬件方框图
3.1
传统的单片机学习硬件方案是"编程器+开发系统+仿真器",由于这些设备相互之间各自独立,在做毕业设计时,需要反复不停地拔插电缆、芯片、电源等,其繁琐的连线和复杂的操作,极大的降低了毕业设计的效率,如稍有不慎就有可能造成器件和设备的损坏,会带来不必要的麻烦或损失。而且备齐这些设备往往需要一笔昂贵的费用。
凌阳科技的μ'nSP系列 16 位单片机主要产品有:带语音功能的 SPCE 通用单片机系列,工业控制级控制型的SPMC通用单片机系列,应用于视频游戏类产品的SPG系列单片机,带有LCD显示驱动的SPL16系列单片机、专用于通讯产品的SPT系列单片机,应用于高档电子乐器、和弦发声的SPF系列单片机等等。凌阳科技新近又推出了以μ'nSP为内核的SPMC75F系列单片机,用于变频马达驱动控制,广泛应用于变频家电、工业变频器、工业控制等领域。
凌阳科技的 16位单片机的CPU内核采用凌阳自主知识产权的μ'nSP(Microcontroller and Signal Processor)16位微处理器(以下简称μ'nSP)。而围绕μ'nSP所形成的16位μ'nSP系列单片机采用的是模块化集成结构,以μ'nSP内核为中心,集成不同规模的ROM、RAM和功能丰富的各种外设接口部件,将单片机应用引领到SOC(System on Chip)领域。
综上所述,本次毕业设计采用方案二。
2.2
电机在本系统中是国旗升降的主要控制部件,它为系统提供动力支持。从以下几个方面阐述本系统的方案。
方案一:采用直流电机控制升降旗运动,直流电机力量大,能获得较大的启动转矩,相应快,但控制复杂,不能自锁。
方案二:采用步进电机控制升降旗运动,步进电机是一种作为控制用的特种电机, 它的旋转是以固定的角度(称为“步距角”)一步一步运行的, 其特点是没有积累误差(精度为100%), 所以广泛应用于各种开环控制。步进电机的运行要有一电子装置进行驱动, 这种装置就是步进电机驱动器, 它是把控制系统发出的脉冲信号转化为步进电机的角位移, 或者说: 控制系统每发一个脉冲信号, 通过驱动器就使步进电机旋转一步距角。所以步进电机的转速与脉冲信号的频率成正比。所以,控制步进脉冲信号的频率,可以对电机精确调速;控制步进脉冲的个数,可以对电机精确定位目的。

自动控制升降旗系统的设计

自动控制升降旗系统的设计

自动控制升降旗系统的设计升降旗系统在各种场合都具有广泛的应用,例如学校、企业、政府机关等。

传统的升降旗方式存在着很多问题,如人力投入大、升旗时间不准确、升旗高度不统一等。

因此,设计一种自动控制升降旗系统成为了必要。

本文将介绍如何设计一个自动控制升降旗系统,包括系统设计、实现过程和结果分析。

在自动控制升降旗系统中,我们需要确定系统的功能和性能要求。

功能上,系统需要实现自动控制升降旗,包括自动识别旗杆位置、自动控制电机升降、自动控制旗帜悬挂在指定位置等。

性能上,系统需要保证升旗时间的准确性、升旗高度的统一性、系统的稳定性和可靠性等。

为了实现上述功能和性能要求,我们需要选择合适的技术和设备。

具体包括:传感器:采用光电传感器、限位传感器等,用于检测旗杆的位置和旗帜的悬挂在指定位置;电机:采用伺服电机或其他调速电机,用于控制旗帜的升降;控制电路:采用单片机或其他控制器,用于接收传感器的信号并控制电机的运动;在确定系统结构和流程时,我们需要考虑以下步骤:传感器检测旗帜是否到达指定位置并反馈给控制电路;控制电路根据反馈信号调整电机的运动,确保旗帜悬挂在指定位置。

在按照系统设计构建电路和软件时,我们需要以下事项:电路设计:根据系统功能和性能要求,设计电路的原理图和印刷电路板图;软件开发:采用C语言等编程语言编写程序,实现系统的各项功能;传感器的安装与调试:根据现场环境和实际情况,选择合适的位置安装传感器并进行调试;电机的选型与调试:根据实际情况,选择合适的电机并进行调试;控制电路与电机的连接:将控制电路与电机连接起来,并调试系统的整体运行。

在电路和软件进行仿真和实验时,我们需要验证以下内容:仿真分析:利用仿真软件对电路和程序进行模拟分析,检查系统功能和性能是否达到设计要求;实验验证:根据仿真分析的结果,对系统进行实验验证。

在实验过程中,需要以下事项:实验条件的稳定性、实验数据的可靠性、系统的鲁棒性和可靠性等。

通过实验验证,我们可以分析和讨论实验结果。

国旗自动升降系统

国旗自动升降系统

目 录设计任务设计一个国旗自动升降系统。

该系统为半自动式:按下上升键国旗上升;按下下降键国旗下降。

升旗时,在旗杆的最顶部可以手动停止,在旗杆的最下部手动停止。

基本功能1. 按下上升键后,国旗匀速上升,同时流畅的演奏国歌,上升到最高端时,国旗手动停止,国歌停奏;按下下降键后,国旗匀速下降,降旗时不播放国歌,下降到最底端时自动停止。

2. 国旗在最高端时,按上升键不起作用;国旗在最低端时,按下降键不起作用。

3. 升降旗的时间均为43秒,与国歌的演奏时间相等。

具体设计1.设计思路:题目要求设计一自动控制升降旗系统,该系统能自动升降旗,升降旗的时间在43秒左右,并且在升旗时能够与电机配合,做到升旗与音乐的同步。

2.功能框图设计:3.电路图及相关图:键盘模板:同步同步同步 电机转动 国歌播放与否位置检测国旗的升降发光二极管1 2位置检测开关上升按键下降按键电路图:成型图:4.详细制作步骤:○1对国旗的上下连接处做特殊处理,使得能形成电路图中的功效。

○2当电路图一中的位置检测开关闭合式,会出现三种情况:一是上升按键对应的发光二极管会亮;二是下降按键对应的发光二极管会发亮;三是两个二极管都不亮。

分别说明了国旗的位置,即在顶端、下端、中间。

这时,就可以按自己的需求进行升降旗。

○3当按下上升键时,电动机会带动国旗上升,同时国歌响起,直到顶端,这时发光二极管就会亮起,国歌停止,提醒你国旗已到达顶端,应该关闭电源。

当按下下降键时,电动机会带动国旗下降,直到底端,这时发光二极管就会亮起,提醒你国旗已到达底端,应该关闭电源。

○4若对于不同长度的旗杆,可遵循这一公式:R=(ER1L)/Tk – r – R1其中:R为滑动电阻器的电阻,R1为电机的电阻,r为直流电源的内阻,L为旗杆的长度,T为国歌时间,E为电源电动势。

所以,根据旗杆长度调节滑动变阻器的电阻就可以使该国旗自动升降系统适应不同旗杆长度的要求了。

5.产品检验:为了使产品的功能更好,应做一些检验试验,即对产品的时间进行校对。

自动控制升降旗系统1

自动控制升降旗系统1
4系统测试………………………………………………………………………………………22
4.1测试仪器…………………………………………………………………………………22
4.2指示测试……………………………………………………………………………………23
4.2.1升国旗精度测试…………………………………………………………………………24
在此方案中可以省去霍尔传感器的使用,由电机运行的转数可精确计算得电机需转过的距离进而确定旗帜的点位置(起始点与终点之间的若干点)。由此即可实现使物块沿预定的位置移动。虽然此方案同方案一一样都是开环控制,但由于可以精确控制电机的运行转数,此精度可以满足题目的要求。为了在规定时间内完成规定距离的移动,可以通过提高控制脉冲的频率提高步进电机的运行速度,即可达到对时间的要求,该方案可取。
其中驱动可用图1-5实现,通过Ui输入控制脉冲,即可控制电机的转速。使用该方案基本上可以实现题目要求的功能,思路是使电机的转速较低,不能使电机的总转速数超过对应值。该方案优点是电路简单,电路性能容易保证。但是,当物块达到指定位置后,可根据该点位置计算得到平衡时各电机应输入的电压,使用PWM脉冲调制技术输出对应占空比脉冲即可。而对于平衡点的稳定可通过软件编程实现,具体见方框图1-4。难以实现对直流电机停转的控制。考虑到实际中极有可能会有超调,在超调之后,该方案不能进行调节,因此精度不易保证,平衡点有可能需要连续正反转,影响电机寿命,故不采取该方案。
1.2.2键盘/显示模块
键盘显示模块主要用按键来控制电机实现其功能且显示相应的数值。可考虑以下两种方案。
方案一
使用液晶(LCD)显示屏显示数据以及影像稳定不闪烁,微功耗、平板化、无射线和电磁辐射等优势,可视面积大、画面效果好、分辨率高、抗干能力强、寿命长、被动显示。LCD本身不发光,而是靠调制外界光进行显示,因此适合人的礼堂习惯,不会使人眼睛疲劳,显示信息量大等特点。但控制芯片较为复杂,资源占用较多,其成本也高。在使用时,不能有静电干扰,否则易烧坏液晶的显示芯片,不易维护。

基于STCC单片机的国旗自动升降系统设计

基于STCC单片机的国旗自动升降系统设计

基于STCC单片机的国旗自动升降系统设计1.引言国旗作为一种象征国家主权和民族尊严的标志,经常在特殊场合、庆典活动中使用。

为了方便、准确地升降国旗,设计了一种基于STCC单片机的国旗自动升降系统。

本设计旨在通过电机控制和传感器检测,实现对国旗的自动升降功能。

本文将详细介绍该系统的整体设计和关键部分的实现。

2.系统设计2.1系统结构国旗自动升降系统主要由以下部分组成:电机驱动模块、传感器模块、控制模块和电源模块。

2.1.1电机驱动模块:电机驱动模块根据控制模块的指令,通过控制电机的正反转、定时转动等功能,实现对国旗的升降操作。

在设计中可以采用直流电机或步进电机作为驱动电机。

2.1.2传感器模块:传感器模块用于检测国旗的当前状态,包括升降位置和升降速度等。

常用的传感器有限位开关、光电开关、光电编码器等。

2.1.3控制模块:控制模块采用STCC单片机作为核心,根据传感器模块的反馈信号,控制电机的运行状态和转动角度。

同时,控制模块还与用户交互,接收用户输入的指令,如升降控制、速度调节等。

2.1.4电源模块:电源模块为系统提供所需的直流电源,包括电压稳定和过载保护等功能。

2.2关键部分设计2.2.1电机驱动设计:在电机驱动模块中,需要通过电机驱动器来控制电机的运动。

可以选择L298N模块作为电机驱动器,实现电机的正反转和速度调节功能。

为了保证电机运行的平稳性,可以通过PWM技术控制电机的转速。

2.2.2传感器选择和位置布置:根据实际情况选择合适的传感器,并合理布置在国旗自动升降系统的关键位置。

通过限位开关检测国旗的升降位置,通过光电开关或光电编码器检测国旗的升降速度。

2.2.3控制算法设计:控制算法主要包括运动控制和用户交互处理两部分。

在运动控制方面,可以通过PID控制算法控制电机的转动,实现对国旗升降位置的精确控制。

在用户交互方面,可以通过LCD显示屏和按键设计,接收和处理用户输入的指令。

3.系统实现在实现方面,可以按照以下步骤进行:3.1硬件搭建根据设计要求,搭建国旗自动升降系统的硬件结构,包括电机、传感器和控制模块等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Protues电路设计与仿真结课论文姓名吕雪锋学号**********学院信息工程学院专业计算机科学与技术班级计算机16-2班指导老师孟洪兵国旗升降自动控制系统目录设计任务........................................................2摘要.............................................................4 第 1 节系统方案论证与比较..................................51.1 设计思路...............................................51.2 方案选择与论证.........................................51.2.1、电机的选择与论证.....................................51.2.2、电机驱动方案的选择与论证.............................51.2.3、显示部分方案的选择与论证.............................6第 2 节电路框图设计.......................................82.1 总体框图设计..........................................82.2 整体程序流程图........................................9第 3 节系统的具体设计...............................103.1 系统的硬件设计........................................103.1.1、电机驱动模块.........................................103.1.2、键盘与显示模块.......................................11 3.2 系统的软件设计.......................................123.2.1、主体电路图.....................................12第 4 节结论.................................................13 第 5 节心得.................................................14 参考文献...........................................................14 附录.........................................................15国旗升降系统控制设计报告设计任务设计一个国旗升降旗系统,该系统能够控制升旗和降旗,升旗时,在到固定时间时自动停止;降旗时,在到达固定时间自动停止。

旗帜的升降由电动机驱动,该系统有三个控制按键,一个是上升键,一个是下降键,一个是复位按键。

基本功能1.按下上升按键后,电机随着时间匀速顺时针转动;上升到固定时间时自动停止上升,电机停止转动;按下下降按键后,电机随着时间匀速逆时针下降,下降到固定时间时电机停止转动。

2.能在上升到最大时间后复位,动态时间清零。

3.为避免误动作,国旗在上升到固定时间时,按上升键不起作用;国旗在下降到时,按下降键不起作用。

4.升降旗的时间均为43秒,升国旗时,电机顺时针转动到时间最大值;降国旗时,电机逆时针转动到最大值5.数字即时显示电机转动的时间,以秒为单位,误差不大于1秒。

摘要本系统采用单片机A T89C51作为自动控制升降旗系统的检测和控制核心,采用由单片机控制的步进电机带动国旗升降,实现对国旗升降的自动控制。

该电路主要分为电机驱动控制模块、键盘与显示模块、语音模块及无线遥控电路模块等几个部分。

电机驱动控制模块采用集成驱动芯片L298,控制与显示部分分别采用键盘作为控制和液晶RT1602C作为显示。

基于这些完备而可靠的硬件设计,使用了一套完善的软件编程,实现了自动升降旗的基本功能及发挥部分的一些功能。

关键字:步进电机自动控制液晶显示接近开关具体设计第 1 节系统方案论证与比较1.1思路题目要求设计一自动控制升降旗系统,该系统能够自动升降旗和自动升降半旗,能够在指定位置停止,升降旗的时间可在30—120秒的范围内自行调整,标准的升降旗时间与国歌演奏时间相等,即为43秒,且具有数字即时显示旗帜所在的高度和无线遥控升、降旗及停止功能。

根据题目要求由一个步进电机来控制旗帜的升降情况,由接近开关来防止旗帜在最高点或最低点停止时出现的误动作,由液晶来显示旗帜所在的高度及升降旗所用的时间,无线遥控电路使用无线发射接收模块SP,语音模块采用集成语音芯片ISD2560。

1.2 方案选择与论证1.2.1、电机的选择与论证方案一:采用普通的直流电机。

普通直流电动机具有优良的调速特性,调速平滑、方便,调整范围广,过载能力强,能承受频繁的冲击负载,可实现频繁的无级快速启动、制动和反转。

方案二:采用步进电机。

步进电机的一个显著特点是具有快速的启停能力,如果负荷不超过步进电机所能提供的动态转矩值,就能够立即使步进电机启动或反转。

另一个显著特点是转换精度高,正转反转控制灵活。

因为在本系统中需要精确的转换速度和转换时间且启停要迅速,所以在本设计中我们选择方案二1.2.2、电机驱动方案的选择与论证方案一:采用继电器对电动机的开或关进行控制,通过控制开关的切换速度实现对电机的运行速度进行调整。

这个电路的优点是电路结构简单,其缺点是继电器的响应时间长,易损环,寿命短,可靠性不是很高。

方案二:采用由达林顿管组成的H桥型PWM电路。

用单片机控制达林顿管使之工作在占空比可调的开关状态,可精确调整电动机的运动状态(前进,后退,左转,右转)。

这种电路由于工作在管子的饱和截至模式下,效率很高。

H 桥电路保证了可以简单的实现转速和方向的控制,但不能很精确的控制步距和速度。

方案三:采用集成ULN2003A 。

在自动化密集的场合会有很多被控元件如继电器,风机,空调等,这些设备通常由CPU 集中控制,由于控制系统不能直接驱动被控元件,这与要有功率来扩展输出电流以满足被控元件的电流与电压。

而ULN2003A 功能性强、应用范围广。

所以综上所述我们采用方案三。

1.2.3、显示部分方案的选择与论证方案一:采用LED 数码管显示旗帜所在的高度以及升降旗所用的时间。

在本系统中需要用到6只LED 数码管进行动态显示才可以达到要求。

采用LED 的优点是亮度高,醒目,价格便宜,寿命长;缺点是只能显示0~9的数字和一些简单的字符,电路复杂,占用资源较多且信息量小。

方案二:用LCD AMPIRE12864液晶显示,其优点是能显示更多的字符,工作电流比LED 小几个数量级,故其功耗低,且有着良好的人机界面,体积小,功耗极低。

基于上述考虑,所以我们选择方案二第 2 节 电路框图设计2.1 总体框图设计根据设计要求,本系统可由图所示的几个部分组成:根据设计要求,可得本系统的程序主流程图如图2-2-1所示:本系统的控制器采用ATMEL公司的AT89C52。

2.2 整体程序流程图第 3 节系统的具体设计3.1 系统的硬件设计本系统由单片机AT89C52作为升降旗系统的控制核心,实现键盘控制、液晶显示以及无线遥控等几个部分,即该系统主要包括电机驱动模块、键盘与显示模块及晶振电路模块等几个部分。

现分别对各模块进行分析。

3.1.1、电机驱动模块在本设计中采用ULN2003A来驱动电机。

其电路原理图如图所示。

电机驱动电路其步进电机的控制原理为:为了准确实现可调节的时间和高度控制的匀速升降,需要精确计算在人眼不能识别的时间内的步进电机的脉冲数。

在此我们选用步距角0.9度,则走一圈所需的步数为400步,因为用于固定绳子的轴的直径为2.5cm,则平均每步拉出的线长便可计算出来约为L=0.0234cm,在整个上升或下降过程中,high为总高度,可通过公式计算出在此段距离中步进电机需走的步数,即为,步进电机要转动的总步数:总步数=高度(high)/0.0234, 在此,时间可调时间间隔为1s。

3.1.2、键盘与显示模块在本设计中使用了四个按键,分别用来控制升降旗和随意停止及其复位,时间的调节,其键盘摸板如图,显示部分采用液晶LCD AMPIRE12864,因为在本设计中只要求显示时间与汉子字符,其键盘与显示模块的电路原理图如图所示。

图3-1-2 键盘摸板键盘与显示电路3.2 系统的软件设计整个系统的主要任务是执行升降旗、时间调整两种运动。

主体软件电路图:此电路包括按键控制部分、单片机控制部分、步进电机驱动控制电路部分。

电路采用AT89C52单片机作为控制系统的核心。

单片机通过对按键的扫描,识别出外部命令,并通过I/O口输出的具有时序的方波作为步进电机的控制信号,信号经过驱动电路来驱动步进电机运转。

当按上升键时,步进电机正转;当按下降键时,步进电机反转;按停止键时,步进电机停转第 4 节结论本系统的特色:本设计在硬件上,使用了步进电机控制和利用接近开关实现停止的双重保险,在软件上,利用C语言的简单精练特点,实现起来更加简单,现将题目要求指标及系统实际性能列表如下:第 5 节心得课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。

作为二十一世纪的大学来说单片机的开发技术是十分重要的。

回顾起此次单片机课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了许多在书本上所学到过的知识。

通过这次课程设计使我懂得了理论与实际相结合是重要要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

这次设计也让我发现自己的知识严重不足,所以一定要不断充实自己的知识。

这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在老师的辛勤指导下,终于游逆而解。

同时,在老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!参考文献:[1] 扬立,微型计算机原理与接口技术[M].北京.中国铁道出版社.2008[2] 陈伯时,电力拖动自动控制系统[M].北京.机械工业出版社.2009[3] 莫正康,电力电子应用技术[M].北京.机械工业出版社.2007[4] 赵瑞林,单片机原理与应用教程[M].北京.北京大学出版社.2005[1][5] 张旭涛,单片机原理与应用[M].北京.北京理工大学出版社.2008[6] 赵建领,51单片机开发与应用技术详解[M].北京.电子工业出版社.2009[7] 康维新,MCS-51单片机原理与应用[M].北京.中国轻工业出版社.2009[8] Yokogawa.Models UT550/UT520 Digital Indicating Controllers UsersManunal.Tokyo.Yokogawa.2003[9] 陈爱萍,何智勇,羊四清,电子显示屏的单片机控制系统[M].北京.自动化与仪表[J].1999(7):54~57[10] 楼然苗,李光飞,51系列单片机设计实例[M].北京.北京航空航天大学出版社.2003[11] 卢艳君,单片机原理与应用[M].北京.机械工业出版社.2008[12] Kavanagh R C. Improved Digital Tachometer with Reduced Sensitivity to SensorNonideality. IEEE Trans.Ind. Elect ron. , 2000 ,47 (4) : 890 – 897[13] Prokin M. Ext remely Wide range Speed Measurement Using a Double2buffered Method.IEEE Trans. Ind. Electron. , 1994 ,41 (5) :550 – 559[14] 吴丙申,卞祖富,模拟电路基础[M].北京.北京理工大学出版社.2007[15] 李响初, 数字电路基础与应用[M].北京.机械工业出版社.2008附录材料清单LCD AMPIRE12864AT89C52BUTTONCAPCAP-ELECCRYSTALMOTOR-STEPPERPOT-HG(主要用于调节液晶屏的背光) RESRESPACK-8UNL2003A部分程序#include<reg52.h>#include<intrins.h>#include<source.h>#include<LCD12864.h>#define uchar unsigned char#define uint unsigned intsbit KEY2=P3^0;sbit KEY3=P3^1; //三个按键控制口char min,sec,tt=0,flag=0;int num=0; //相序存放处bit dir=1; //方向标志(默认为顺时针)uchar code forward[]={0x0e,0x0c,0x0d,0x09,0x0b,0x03,0x07,0x06};//正转uchar code reveser[]={0x0e,0x06,0x07,0x03,0x0b,0x09,0x0d,0x0c};//反转void delay(uint i){while(--i);}void key_scan(void){if(KEY2==0) //按键2按下,升旗{delay(5000);if(KEY2==0){while(!KEY2);ClearScreen(0);flag=1;sec=0;min=0;dir=1;TR0=1; TR1=1; //启动定时器Display_HZ(1,0,3,sheng);Display_HZ(2,0,0,qi);Display_SZ(1,4,32,0);Display_SZ(1,4,40,0);Display_HZ(1,4,3,fen);Display_SZ(2,4,0,4); // 屏(1左2右) 页(0 2 4 8)列(0 1 2 3)Display_SZ(2,4,8,3);Display_HZ(2,4,1,miao);}}if(KEY3==0) //按键3按下,降旗{delay(5000);if(KEY3==0){while(!KEY3);ClearScreen(0);flag=2;sec=0;min=0;dir=0;TR0=1; TR1=1; //启动定时器Display_HZ(1,0,3,jiang);Display_HZ(2,0,0,qi);Display_SZ(1,4,32,0);Display_SZ(1,4,40,0);Display_HZ(1,4,3,fen);Display_SZ(2,4,0,4); // 屏(1左2右) 页(0 2 4 8)列(0 1 2 3)Display_SZ(2,4,8,3);Display_HZ(2,4,1,miao);}}}void main(){init_LCD(); //初始12864ClearScreen(0); //清屏Set_line(0); //显示开始行EA=1; //开启总中断IT0=1;EX0=1;ET0=1; //允许定时器0中断ET1=1;TMOD=0x11; //设置定时器工作方式1 16位计数TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-60000)/256;TL1=(65536-60000)%256;TR0=0; //启动定时器TR1=0;Display_HZ(1,0,2,kai);Display_HZ(1,0,3,shi);Display_HZ(2,0,0,sheng);Display_HZ(2,0,1,qi); //上电显示:“开始升旗”Display_SZ(1,4,32,0);Display_SZ(1,4,40,0);Display_HZ(1,4,3,fen);Display_SZ(2,4,0,4); // 屏(1左2右) 页(0 2 4 8)列(0 1 2 3)Display_SZ(2,4,8,3);Display_HZ(2,4,1,miao);while(1){if(tt==20) //1秒时间到{tt=0; //把重新赋值为0 等待下一秒(tt=20)sec++; //if(sec==60){min++;sec=0;}}if(min==0&&sec==43){TR0=0;TR1=0;Display_HZ(1,0,2,yi);Display_HZ(1,0,3,shii);Display_HZ(2,0,0,wan);Display_HZ(2,0,1,bi); //上电显示:“开始升旗”}if(flag==1) //升旗计时显示{Display_SZ(1,6,32,min/10);Display_SZ(1,6,40,min%10);Display_HZ(1,6,3,fen);Display_SZ(2,6,0,sec/10); // 屏(1左2右) 页(0 2 4 8)列(0 1 2 3)Display_SZ(2,6,8,sec%10);Display_HZ(2,6,1,miao);}if(flag==2) //降旗计时显示{Display_SZ(1,6,32,min/10);Display_SZ(1,6,40,min%10);Display_HZ(1,6,3,fen);Display_SZ(2,6,0,sec/10); // 屏(1左2右) 页(0 2 4 8)列(0 1 2 3)Display_SZ(2,6,8,sec%10);Display_HZ(2,6,1,miao);}key_scan();}}void key() interrupt 0 //定时器0中断服务程序{TR0=!TR0;TR1=!TR1;}void timer0() interrupt 1 //定时器0中断服务程序{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;}void timer1() interrupt 3 //定时器1中断服务程序{TH0=(65536-60000)/256;TH0=(65536-60000)/256;if(num>=8) num=0;if(dir==1) P1=forward[num++]; //正转else P1=reveser[num++]; //反转}。

相关文档
最新文档