《基于单片机的电梯仿真程序课程设计 武汉科技大学》由会员分享,可在线阅读,更多相关《基于单片机的电梯仿真程序课程设计 武汉科技大学(57页珍藏版)》请在金锄头文库上搜索。
1、二一四二一五学年 第一学期信息科学与工程学院自动化系课程设计报告书姓 名: 余义 学 号: 201204134019 班 级: 自动化 1201 班 课程名称: 微机原理与应用课程设计 指导教师: 程磊 目录目录(1)前言.1 (2)现代电梯概述.3 (3)硬件部分设计.6 (4)软件部分设计.12 (5)电梯运行界面.52 (6)设计总结与感悟.56 (7)参考文献.57电梯仿真程序电梯仿真程序一、前言:一、前言:本电梯仿真程序采用的是一个基于单片机及其相关外 设,编程语言采用汇编与 C 语言结合的方式,通过矩阵键 盘线反选法输入楼层,上、下行等控制信号,经 IO 口读 入,进行相关实时控制
2、,软硬件结合的仿真系统,输出设 备包括由 CD4511 驱动显示楼层的 7 段数码管,显示实时信 息的显示屏 LCD12864,由 PWM 控制显示电梯门开关的舵机, 以及由 IO 口间接控制的驱动电机正反转双桥驱动电路等 几个部分组成。可以实现真实电梯中,任意层呼叫,目的 层到达按要求顺序到达,开关门,无输入自动回 1 层等一 系列功能,并实时显示当前电梯运行状态,关于真实电梯 门控光幕装置,电机自动抱闸平层等部分,由于知识不足, 没有足一实现,但会在接下来的专业知识学习过程中不断 完善,同时也希望得到程老师的指导。二、现代电梯概述:二、现代电梯概述:电梯是一种以电动机为动力的垂直升降机,装
3、有箱状吊舱,用于多层建筑乘人或载运货物。也有台阶式,踏步板装在履带上连续运行,俗称自动电梯。 服务于规定楼层的固定式升降设备。它具有一个轿厢,运行在至少两列垂直的或倾斜角小于 15的刚性导轨之间。轿厢尺寸与结构形式便于乘客出入或装卸货物,本次微机课程设计电梯仿真选用的是垂直升降梯。2.1、电梯功能现代电梯主要由曳引机(绞车)、导轨、对重装置、安全装置(如限速器、安全钳和缓冲器等)、信号操纵系统、轿厢与厅门等组成。这些部分分别安装在建筑物的井道和机房中。通常采用钢丝绳摩擦传动,钢丝绳绕过曳引轮,两端分别连接轿厢和平衡重,电动机驱动曳引轮使轿厢升降。电梯要求安全可靠、输送效率高、平层准确和乘坐舒适
4、等。电梯的基本参数主要有额定载重量、可乘人数、额定速度、轿厢外廓尺寸和井道型式等。简单使用方法(紧急情况下面有解决方法)载人电梯都是微机控制的智能化、自动化设备,不需要专门的人员来操作 电梯电梯结构图 电梯内部结构图驾驶,普通乘客只要按下列程序乘坐和操作电梯即可。2.2、运行过程:、运行过程:1、在乘梯楼层电梯入口处,根据自己上行或下行的需要,按上方向或下方向箭头按钮,只要按钮上的灯亮,就说明你的呼叫已被记录,只要等待电梯到来即可。2、电梯到达开门后,先让轿厢内人员走出电梯,然后呼梯者再进入电梯轿厢。进入轿厢后,根据你需要到达的楼层,按下轿厢内操纵盘上相应的数字按钮。同样,只要该按钮灯亮,则说
5、明你的选层已被记录;此时不用进行其他任何操作,只要等电梯到达你的目的层停靠即可。3、电梯行驶到你的目的层后会自动开门,此时按顺序走出电梯即结束了一个乘梯过程。三、硬件部分设计三、硬件部分设计3.1、总电路图:3.23.2、单片机最小系统:、单片机最小系统:单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统.对 51 系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路.下面给出一个 51 单片机的最小系统电路图.3.3、矩阵键盘:、矩阵键盘:在键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键排列成矩阵形式。在矩阵 式键盘中,每条水平线和垂直
6、线在交叉处不直接连通,而是通过一个按键加以连接。这样, 一个端口(如 P1 口)就可以构成 4*4=16 个按键,1键盘的工作原理: 按键设置在行、列线交点上,行、列线分别连接到按键开关的 两端。行线通过上拉电阻接到+5V 电源上。无按键按下时,行线处 于高电平的状态, 而当有按键按下时, 行线电平与此行线相连的列 线电平决定。2行列扫描法原理:第一步, 使行线为编程的输入线,列线是输出线,拉低所有的列线, 判断行线的变化,如果有按键按下,按键按下的对应行线被拉低,否则 所有的行线都为高电平。第二步, 在第一步判断有键按下后, 延时 10ms 消除机械抖动,再次读取行值,如果此行线还处于低电平
7、状态则进入下 一步,否则返回第一步重新判断。第三步,开始扫描按键位置,采用逐 行扫描,每间隔 1ms 的时间,分别拉低第一列,第二列,第三列,第四 列,无论拉低哪一列其他三列都为高电平,读取行值找到按键的位置, 分别把行值和列值储存在寄存器里。3.4、CD4511 当前楼层显示当前楼层显示CD4511 是一片 CMOS BCD-锁存/7 段译码/驱动器,用于驱动共阴极 LED (数码管) 显示器的 BCD 码-七段码译码器。它具有 BCD 转换、消隐和锁存控制、七段译码及驱动 功能的 CMOS 电路能提供较大的拉电流。可直接驱动共阴 LED 数码管。 以下是 CD4511 数码管驱动原理电路图
8、。是 CD4511 实现 LED 与单片机的并行接口 方法。3.5、LCD12864不带中文字库的 128X64 是一种具有 4 位/8 位并行、2 线或 3 线串行多种接口方式,内部含有国标一级、二级简体 中文字库的点阵图形液晶显示模块;其显示分辨率为 12864, 内置 8192 个 16*16 点汉字,和 128 个 16*8 点 ASCII 字符 集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示 84 行 1616 点 阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶 显示模块相比,不
9、论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。3.6、电机双桥驱动系统、电机双桥驱动系统一、H 桥驱动电路图 4.12 中所示为一个典型的直流电机控制电路。电路得名于“H 桥驱动电路”是因为它的形状酷似字母 H。4 个三极管组成 H 的 4 条垂直腿,而电机就是 H 中的横杠(注意:图 4.12 及随后的两个图都只是示意图,而不是完整的电路图,其中三极管的驱动电路没有画出来)。如图所示,H 桥式电机驱动电路包括 4 个三极管和一个电机。要使电机运转,必须导通对角线上的一对三极管。根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机
10、的转向。图 4.12 H 桥驱动电路要使电机运转,必须使对角线上的一对三极管导通。例如,如图 4.13 所示,当 Q1管和 Q4 管导通时,电流就从电源正极经 Q1 从左至右穿过电机,然后再经 Q4 回到电源负极。按图中电流箭头所示,该流向的电流将驱动电机顺时针转动。当三极管 Q1 和 Q4 导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)。图 4.13 H 桥电路驱动电机顺时针转动图 4.14 所示为另一对三极管 Q2 和 Q3 导通的情况,电流将从右至左流过电机。当三极管 Q2 和 Q3 导通时,电流将从右至左流过电机,从而驱动电机沿另一方向转动
11、(电机周围的箭头表示为逆时针方向)。图 4.14 H 桥驱动电机逆时针转动二、使能控制和方向逻辑驱动电机时,保证 H 桥上两个同侧的三极管不会同时导通非常重要。如果三极管Q1 和 Q2 同时导通,那么电流就会从正极穿过两个三极管直接回到负极。此时,电路中除了三极管外没有其他任何负载,因此电路上的电流就可能达到最大值(该电流仅受电源性能限制),甚至烧坏三极管。基于上述原因,在实际驱动电路中通常要用硬件电路方便地控制三极管的开关。图 4.155 所示就是基于这种考虑的改进电路,它在基本 H 桥电路的基础上增加了4 个与门和 2 个非门。4 个与门同一个“使能”导通信号相接,这样,用这一个信号就能控
12、制整个电路的开关。而 2 个非门通过提供一种方向输人,可以保证任何时候在 H 桥的同侧腿上都只有一个三极管能导通。(与本节前面的示意图一样,图 4.15 所示也不是一个完整的电路图,特别是图中与门和三极管直接连接是不能正常工作的。)图 4.15 具有使能控制和方向逻辑的 H 桥电路采用以上方法,电机的运转就只需要用三个信号控制:两个方向信号和一个使能信号。如果 DIRL 信号为 0,DIRR 信号为 1,并且使能信号是 1,那么三极管 Q1 和 Q4导通,电流从左至右流经电机(如图 4.16 所示);如果 DIRL 信号变为 1,而 DIRR信号变为 0,那么 Q2 和 Q3 将导通,电流则反
13、向流过电机。四、软件部分设计:四、软件部分设计:4.1、程序框图、程序框图否是否否是是硬件上电待命显示提示,开发者、版本信息键盘输入目的楼层结束键是否按下记录并该楼层标志位程序开始运行 While(1).电机运行,到达下一层当前楼层标志位加一并 与存储楼层对比若相等电机停转,电梯门开,延时 lcd 显示,7 段数码管显示电梯门,电机运行,延时 lcd 显示,7 段数码管显示运行至最后目 的楼层键盘扫描继续否结束待命4.2、C51 单片机汇编、单片机汇编、C 语言混编程序:语言混编程序:; 电梯。SRC generated from: 电梯.c; COMPILER INVOKED BY:; C:
14、KeilC51BINC51.EXE 电梯.c BROWSE DEBUG OBJECTEXTEND$NOMOD51NAME电梯P0DATA080HP1DATA090HP2DATA0A0HP3DATA0B0HT0 BIT 0B0H.4AC BIT 0D0H.6T1 BIT 0B0H.5T2 BIT 090H.0EA BIT 0A8H.7IEDATA0A8HclockBIT 0B0H.0EXF2BIT 0C8H.6RD BIT 0B0H.7ES BIT 0A8H.4IPDATA0B8HRIBIT 098H.0INT0BIT 0B0H.2CY BIT 0D0H.7TIBIT 098H.1INT1BIT
15、 0B0H.3RCAP2HDATA0CBHPS BIT 0B8H.4SP DATA081HT2EXBIT 090H.1OV BIT 0D0H.2RCAP2LDATA0CAHC_T2BIT 0C8H.1WR BIT 0B0H.6RCLKBIT 0C8H.5TCLKBIT 0C8H.4SBUFDATA099HPCONDATA087HSCONDATA098HTMODDATA089HTCONDATA088HIE0 BIT 088H.1IE1 BIT 088H.3BDATA0F0HCP_RL2 BIT 0C8H.0ACCDATA0E0Hservo_doorBIT 0B0H.7ET0BIT 0A8H.1ET1BIT 0A8H.3TF0 BIT 088H.5ET2BIT 0A8H.5TF1 BIT 088H.7TF2