收藏 分销(赏)

哈工大PLC课程设计说明书..doc

上传人:可**** 文档编号:10134376 上传时间:2025-04-22 格式:DOC 页数:13 大小:127.54KB
下载 相关 举报
哈工大PLC课程设计说明书..doc_第1页
第1页 / 共13页
哈工大PLC课程设计说明书..doc_第2页
第2页 / 共13页
点击查看更多>>
资源描述
Harbin Institute of Technology 课程设计说明书(论文) 课程名称: 逻辑与可编程控制器 设计题目:交通信号协调控制系统 院 系: 电气工程及其自动化 班 级: 设 计 者: 学 号: 指导教师: 陈宏钧 设计时间: 2014年3月 哈尔滨工业大学教务处 哈尔滨工业大学课程设计任务书 姓 名: 院 (系): 专 业:电气工程及其自动化 班 号: 任务起至日期: 2014 年 4 月 1 日至 2014 年 4 月 7 日 课程设计题目: 交通信号协调控制系统 已知技术参数和设计要求: 以“交通灯模型"为被控对象,以S7 200 PLC-CPU224XP为控制器,设计交通信号灯控制系统。实现孤立路口的固定配时和适应性控制两种方案,及两组交通信号的协调控制. 工作量: 1)根据项目的技术指标,项目组成员通过集体讨论共同制定系统的总体设计方案。 2)我们小组的具体分工为: 第1小组:由XXX、XXX组成,完成交通灯的控制程序设计及协调工作 第2小组:由XXX、XXX组成,完成交通灯的控制程序设计 3)在实验设备上进行系统的局部调试和联合调试。 4)整理设计文件,撰写设计说明书。 工作计划安排: (学时安排为1周,但考虑实验的安排,需分散在2~3周内完成) 第1阶段:立题和辅导 全体开会,下达设计题目,成立项目组(每组4人)。参加课程设计辅导讲座。 第2阶段:设计和调试 查阅有关文献,制定系统的总体设计方案;根据设计分工开展系统的软、硬件设计工作.同时进入实验室,在实验装置上进行调试和改进。 第3阶段:整理和总结 调试成功后,全面总结设计工作,撰写设计说明书。 第4阶段:项目验收 设计工作全部完成后,将集中时间进行项目验收。 同组设计者及分工: 本设计由2个设计小组协作完成: 设计小组1的任务:交通灯的控制程序设计及协调工作; 设计小组2的任务:交通灯控制系统设计; 本人与张巍共同组成第2设计小组,合作完成设计任务。 指导教师签字___________________ 年 月 日 教研室主任意见: 教研室主任签字___________________ 年 月 日 *注:此任务书由课程设计指导教师填写 哈尔滨工业大学课程设计说明书(论文) 1 项目的技术要求及总体设计方案 1.背景及目的介绍 作为保障城市交通正常运作和畅通的主要设备,交通信号灯在当代城市中扮演着必不可少的角色,随着计算机、通信和自动化技术在道路交通控制与管理中的广泛应用,人们已经逐渐意识到要适应现代化的发展需要,道路交通控制与管理系统要实现智能化,即不单纯的实现定时放行、停止车辆的功能,而且要根据实际情况调节放行时间使得道路资源得到充分的利用。并且在特殊的情况实现特殊控制,这也是我们进行逻辑与可编程控制器所要达到的目的. 在进行课程设计的过程中,使得我们能够充分学习西门子公司S7-200型PLC的功能及编程。将逻辑与可编程控制器这门课中所学到的知识溶汇于实际应用中。 2.基本功能 本次课程设计的基本功能是实现某十字路口的正常交通信号运作,即“红灯停、绿灯行”。由于该路口可能是干道十字路口,因此车流量可能较大,在东西或南北方向通行时,可能使得左转弯的车辆与相反方向通行的直行车辆发生交叉,即两个车流发生交叉.这将导致交通事故的可能性增加,同时会影响车辆通过十字路口的速度。如果司机争抢通行权将导致路口堵塞,使得交通堵塞。为了解决该问题,我们决定使用直行方向与左转弯方向轮换放行的交通信号,来减少交通事故的发生率及提升通过路口的车辆的速度. 具体措施如下:由实验板上两个拨码盘实现控制信号的时间长度设定,具体实现方法将在软件设计中阐述.由拨码盘可以得到直行方向的绿灯、黄灯及左转方向的绿灯、黄灯时间长度。而红灯的时间长度将由程序的算术算法和逻辑算法得到。 具体功能为:1。 直行方向亮绿灯时间通行 2.直行方向亮黄灯时间 3.直行方向亮红灯禁止通行,左转弯方向亮绿灯时间左转弯车辆通行 4.左转方向亮黄灯时间 5.左转方向亮红灯 6.等待相交路口方向车辆通行,设时间与所设定方向时间一直。 3.特殊功能 3。1夜间省电模式 由于夜间道路上车辆行人较少,在穿越路口的时候只需要行人或司机注意观察道路状况,自行穿越即可.因此在夜间我们使用夜间模式,即两个方向的黄灯以1秒为周期闪烁,以起到警示作用即可. 这样做的好处在于,首先,只使用了两个黄灯闪烁,可以节省电力的消耗,并且使得交通灯的寿命得到延长.其次,这样能有效利用交通道路资源,使得车辆在经过路口的时候只需减速,而不用完全停下等待绿灯信号即使垂直方向没有车辆通行。最后,这样能节省燃油能源,据了解车辆停止到启动将消耗大量的能源,使得燃油消耗大大增加。因此这样做能节省宝贵的燃油资源. 3.2强制通行模式 当遇到紧急情况时,需要优先放行某方向的车辆,例如有救护车需要通过路口或者重要人员乘坐的车辆需要优先通过道口的情况。因此我们采取了强制通行模式,即当遇到上述情况时将直行方向设为绿灯,加快该方向的车辆通行.我们设置了强制通行键,当按键被按下后,进入强制通行模式,直行方向设为绿灯,并将其他方向的信号灯设为红灯以保证通行者的安全。 3.3数码管提示功能 数码管提示功能主要用于提示直行方向的车辆绿灯将要到来的时间。我们知道,汽车启动需要一定的时间,因此,如果提示司机绿灯的时间能够减少由于启动带来的时间损失.由于受限于,数码管管脚数目不够的实际状况,因此我们的数码管只能显示到最大为3的数字。但是该功能以及能够满足提示司机提前启动的目的。 2 系统的硬件设计 1.实验面板介绍 新交通灯模型由八个指示灯:L1、L2、L3、L4、L5、L6、L7、L8,三个按钮:Enter、Crosswalk、Detector,两个拨码盘及两个通道的连线接口组成,如下图: 图2-1交通灯模型面板 其中,L1为左转方向红灯、L2为左转方向绿灯信号、L3为左转方向绿灯信号、L4为直行方向红灯信号、L5为直行方向黄灯信号、L6为直行方向绿灯信号、L7为行人过街红灯指示信号、L8为行人过街绿灯指示信号、数码管通过数字显示提示等待红灯的司机剩余的等待时间长度。Enter键为时间设定输入键,W1、W2为两个拨码盘,通过拨码盘上下两个“+"“—”按键我们可以设定拨码盘的数值,以提供控制时间的长短。Crosswalk键在我们的项目设计中被指定为强制通行按键。Detector键在本项目中没有被利用,有待其他功能时使用,作为备用按键. 从图中我们可以看到,以上指示灯、按钮、数码管、拨码盘都连接到面板的两个通信通道Cn1和Cn2上.其中Cn1为输入电缆接口,Cn2为输出电缆接口。硬件连线图见附件。 2.SIEMENS S7-200 PLC介绍 西门子公司的SIMATIC S7—200 CPU 224XP的基本参数为:外形尺寸;程序存储器:可在运行模式下编辑12288字节,不可在运行模式下编辑16384字节;数据存储区10240字节;掉电保护时间100小时;本机I/O数字量:14入/10出、模拟量:2入/1出;扩展模块数量:7个模块;高速计数器单相:4路30kHz2路200kHz两相3路20kHz1路100kHz;脉冲输出(DC)2路100kHz;模拟电位器2个;实时时钟内置;通讯口:2个RS—485;支持浮点数运算;I/O映象区256(128入/128出);布尔指令执行速度。 3.本项目的I/O口映射表及其功能 由于本项目任务没有明确规定PLC的I/O口电气连接规定,因此我们自行进行连线并组成如下的电气连接表 表2-1 PLC I/O映射地址及其对应电气元件和用途 I/O映射地址 对应面板序号 连接元件 用途 I0.0 Cn1。1 拨码盘W1输出脚1(低位) 绿灯、黄灯选择拨盘(0为直行绿灯、1为直行黄灯、2为左转弯绿灯、3为左转弯黄灯) I0。1 Cn1.2 拨码盘W1输出脚2 I0.2 Cn1。3 拨码盘W1输出脚4 I0.3 Cn1。4 拨码盘W1输出脚8(高位) I0。4 Cn1。5 拨码盘W2输出脚1(低位) 时间设定拨码盘,设定时间的输出分为0~9得到的黄灯时间为所设数字两倍秒,绿灯时间为所设数字五倍秒 I0.5 Cn1.6 拨码盘W2输出脚2 I0。6 Cn1.7 拨码盘W2输出脚4 I0.7 Cn1。8 拨码盘W2输出脚8(高位) I1.0 Cn1。10 Enter键 用于确认拨码盘的输入 I1.1 Cn1。9 Crosswalk 强制通行请求按钮 I1。2 纽子开关 Ordinary子程序Restart I1.3 纽子开关 备用 I1.4 纽子开关 备用 I1.5 纽子开关 Day控制(日夜控制) Q0。0 Cn2.11 L7 行人过道红灯信号 Q0。1 Cn2.12 L8 行人过道绿灯信号 Q0.2 Cn2。9 L5 直行方向黄灯信号 Q0.3 Cn2.1 数码管管脚1 数码管低位控制 Q0。4 Cn2.5 L1 左转弯方向红灯 Q0。5 Cn2。6 L2 左转弯方向黄灯 Q0。6 Cn2。7 L3 左转弯方向绿灯 Q0。7 Cn2.8 L4 直行方向红灯 Q1。0 Cn2。10 L6 直行方向绿灯 Q1.1 Cn2.2 数码管管脚2 数码管高位控制 由于我们所使用的PLC型号为SIMATIC S7-200 CPU 224XP,其数字两输出口只有10个,不能满足我们预期的数目(12个)。因此我们在保证交通灯控制的完整性需要的前提下不得不牺牲了数码管的部分功能。这样,我们的数码管提示时间从9秒倒计时减少到3秒倒计时。 3 系统的软件设计 1.设计思路 作为交通信号灯控制程序,首要的任务是实现十字路口的正常运作,即红绿灯正常运行。我们通过五个计数器来完成不同时间的逻辑控制,并且通过算术运算得到与该方向垂直方向车辆通行的时间,来获得红灯的时间。 同时为了实现智能配时功能我们要通过拨码盘设定直行、左转车道绿灯黄灯时间输入.因此我们设置拨码盘数据读取子程序读取设定的时间。 为了实现强制通行功能,我们还设定了强制通行的子程序。通过该子程序实现一段时间内对交通灯的强制控制,以达到使得直行方向的保持绿灯,加快该方向车辆通行的目的。 以下将通过程序流程图和程序概述阐述软件设计的过程. 2.程序流程图 图3-1主程序Main流程图 图3-2 白天正常情况下 Ordinary子程序流程图 图3—3强制通行 图3-4拨码盘数据读取 子程序流程图 子程序流程图 3.程序概述 3。1主程序(Main) 主程序实现的主要功能为根据各种输入状态例如昼夜状态、强制通行请求状态来调用相应的子程序,并且实现夜间省电模式的黄灯闪烁功能.在这个基础上,每次扫描周期都将调用拨码盘数据读取子程序、状态传递准备子程序和从机PLC控制的交通灯状态。从而使得触摸屏能够从主机PLC读取两个交通路口的交通信号状态。 当Day触点,即I1。5(闭合时状态为白天、断开时状态为夜间).当其闭合时,程序将跳过黄灯闪烁功能程序段及其他信号灯赋值程序段,进入Ordinary子程序。实现白天的交通信号控制。 同时通过Enter触点,即I1。1(控制板模型上的Enter键)来控制是否读取拨码盘上的输入数值。该功能只在白天时有效,因此在调用拨码盘数据读取子程序的网络中还串连加入昼夜状态标志位M1。7。 为了实现特殊情况下,强制通行的需要,主程序中将根据触点I1。0即连接于控制板模型上的crosswalk键实现强制通行请求。当有强制通行请求发生时,主程序将对强制通行标志位M0。1实现置一,并且实现自锁,当设定的强制通行时间到时将自动解除自锁。并恢复正常运行. 3.2白天程序(Ordinary) Ordinary主要实现白天正常情况下的交通信号控制功能。 首先,该子程序将由主程序中的拨码盘输入子程序中读取的四个时间值(直行绿灯、直行黄灯、左转弯绿灯、左转弯黄灯时间)进行字节整型变换,由于我们假设垂直方向的交通信号与该方向的时间设定相同,因此我们通过将直行绿灯VW0、直行黄灯VW16、左转弯绿灯VW32、左转弯黄灯VW48的时间做算术相加得到我们控制方向上红灯的等待时间VW96。 由于拨码盘的数字限制(只能输入0~9),因此我们加入乘法运算来使得我们的控制时间更加灵活。由乘法运算得到直行绿灯时间VW100、直行黄灯时间VW102、左转弯绿灯时间VW104、左转弯黄灯时间VW106及红灯等待时间VW108 为了后续能够进行程序升级,我们在该子程序的计数器部分加入了计时器,如果将来需要可以升级成具有延时功能的控制方法。 最后通过五个计数器的不同状态值进行逻辑运算,赋给相应的信号灯输出端. 3.3强制通行(Force_Pass) 强制通行子程序主要实现对信号灯的正确置位功能。 主要功能是直行绿灯及行人过道绿灯信号的置1而其他信号的清零。同时加入定时器进行定时,使得当主程序中强制通行请求按键放开时依然能够实现一定时间内的强制通行状态。 当计时器计满预定时间时,对强制通行标志位进行清零处理。从而恢复正常的通行信号控制. 3.4拨码盘数据读取(KEY) 拨码盘数据读取程序的主要功能是将由I0.0~I0。7的拨码盘数据读入,进行分析并将数据传入相应的VB地址段。 由于I0。0~I0。4为W1的数值,我们设定W1为选取功能,即选择所设定时间赋值给直行绿灯、直行黄灯、左转弯绿灯还是左转弯黄灯。并通过判断功能选择相应的赋值程序。(I0。0~0.4为0000时:直行绿灯时间;I0。0~0.4为0001时:直行黄灯时间;I0。0~0。4为0010时:左转弯绿灯时间;I0。0~0.4为0011时:左转弯黄灯时间) 而W2为时间设定功能实现由0~9的数字输入,以供Ordinary子程序使用。具体地址为VB5:直行绿灯;VB6:直行黄灯;VB7:左转弯绿灯;VB8左转弯黄灯 4 调试过程及结果 1.主机PLC调试 在编制程序时,我们由简单的功能开始扩展为功能较为全面的功能.开始只是实现正常状态下红绿灯的信号控制。然后将该程序作为子程序,由主程序调用。并且添加了夜间功能、强制通行功能。 在调试过程较为顺利.偶尔遇到一些诸如某些标志位无法清零等问题也一一被解决。主要问题在于之前没有学习过如何在PLC的编程中调用子程序,存储空间范围不明确,因而在键值传输子程序的调试时花费较多时间,不过最终攻克。 2.主机PLC与从机PLC的联机调试 开始阶段为两个路口小组共同开发基本程序,因为两个路口实现的功能基本相同.因此在联机调试的过程中只是在网络设置上存在一些小问题,但是很快得到老师的帮助并解决.而读取数据段通过协调完成。 3.调试过程中的问题及解决方案 在测试的过程中我们发现最初的程序由于没有加入乘法器,因此设定的时间只能在0~9秒之间,不能设置超过10秒的时间。无法达到正常路口信号控制要求,由于上述问题的发生,我们在程序Ordinary中加入了现在所用程序所包含的乘法器,以达到正常控制功能. 4.结果 试验结果符合预期设计要求,实现了该路口的交通信号控制。通过拨码盘能够智能调节路口信号时间长度.同时该路口具有强制通行功能。 5 设计存在的问题及改进方案 在我们的设计中我们发现现在用的程序比较复杂,难以看懂.原因在于我们没有建立内部寄存器的说明表,同时有些触点没有采取标志的方式进行命名,这将给后续修改程序或者程序升级带来很大的麻烦.因此,我们将在附录中添加有关中间变量的意义表。 同时,由于对S7—200PLC的内部寄存器不是特别了解。因此在使用的过程中产生了浪费的现象,特别是在数值转换、传递的过程中占用了大量的寄存器,开来了浪费.因此,在这方面还可以进行后续优化。 在程序中我们采用某些不用的内部寄存位作为常闭触点,在现实工作中是不可靠的,我们应该采用SM0。0来代替实现同样的功能. 最后,由于编程经验的限制,我们的程序的一些地方比较累赘,某些程序可以用一句程序代替。而在我们的程序中却用了许多判断语句。势必在程序运行的过程中造成处理器的资源浪费。 以上就是我们这次课程设计中还存在的问题。可能还有问题没有发现,请老师批评指正。 6 课程设计心得体会 这次针对交通信号灯模型的课程设计,让我进一步学习了S7—200的通讯方式和相应程序的编写过程,学会了如何将具体问题与程序编写、调试结合起来,实践了分析与编写复杂程序的过程。同时,PLC程序的编写与调试的过程让我对PLC工作的原理有了进一步的认识,更加深入、全面地了解了PLC的功能。PLC在工业中的运用极为广泛,这次课程设计,也为我以后的学习工作打下了基础。 在本次课程设计过程中,通过分工合作,我们比较高效地完成了任务,也让我更加深刻的体会到了小组合作的重要性.在调试程序过程中我们也遇到一些问题,感谢老师和师兄的帮助,让我们的问题很快得到解决,较顺利的完成了这次课程设计。 7 附录 1程序清单 1主程序Main 2子程序Ordinary 3子程序Force_Pass 4子程序KEY 2程序内部变量及I/O端口意义 符号 地址 意义 左拨码盘0位 I0.0 用于选择设定的灯 左拨码盘1位 I0。1 用于选择设定的灯 左拨码盘2位 I0。2 用于选择设定的灯 左拨码盘3位 I0。3 用于选择设定的灯 右拨码盘0位 I0。4 用于设定时间长度 右拨码盘1位 I0.5 用于设定时间长度 右拨码盘2位 I0.6 用于设定时间长度 右拨码盘3位 I0.7 用于设定时间长度 Crosswalk I1。0 强制通行请求键,按下执行强制通行 Enter I1。1 拨码盘数据输入按键,按一次执行当前状态下数据输入一次 I1.2 用于将正常工作时计数器计时器清零功能 Day I1。5 昼夜控制按钮1为白天0位夜晚 SN_walk_Red Q0。0 行人过街红灯 SN_walk_Green Q0。1 行人过街绿灯 SN_Yellow Q0。2 直行方向黄灯 数码管控制位0 Q0。3 用于控制数码管数字输出低位 EW_Red Q0。4 左转弯方向红灯 EW_Yellow Q0.5 左转弯方向黄灯 EW_Green Q0。6 左转弯方向绿灯 SN_Red Q0.7 直行方向红灯 SN_Green Q1.0 直行方向绿灯 数码管控制位1 Q1.1 用于控制数码管数字输出高位 Ordinary运行控制标志位 M0。0 该标志位用于实现在Ordinary状态下自程序自动循环功能 强制通行标志位 M0。1 表示强制通行状态1位强制通行0为非强制通行 昼夜状态标志位 M1.7 表示昼夜状态1位白天0为晚上 直行方向绿灯状态标志位 M2。0 直行方向绿灯状态 直行方向黄灯状态标志位 M2。1 直行方向黄灯状态 直行方向红灯状态标志位 M2。2 直行方向红灯状态 左转弯方向绿灯状态标志位 M2.3 左转弯方向绿灯状态 左转弯方向黄灯状态标志位 M2.4 左转弯方向黄灯状态 左转弯方向红灯状态标志位 M2.5 左转弯方向红灯状态 行人过街绿灯状态标志位 M2。6 行人过街绿灯状态 行人过街红灯状态标志位 M2.7 行人过街红灯状态 M3.0 被用于常开触电,保持状态0 左拨码盘输入位0数据 V12。0 用于输出一个字型数据 左拨码盘输入位1数据 V12。1 用于输出一个字型数据 左拨码盘输入位2数据 V12.2 用于输出一个字型数据 左拨码盘输入位3数据 V12.3 用于输出一个字型数据 右拨码盘输入位0数据 V13。0 用于输出一个字型数据 右拨码盘输入位1数据 V13.1 用于输出一个字型数据 右拨码盘输入位2数据 V13.2 用于输出一个字型数据 右拨码盘输入位3数据 V13.3 用于输出一个字型数据 直行绿灯输入数据 VB5 直行绿灯输入数据 直行黄灯输入数据 VB6 直行黄灯输入数据 左转弯绿灯输入数据 VB7 左转弯绿灯输入数据 左转弯黄灯输入数据 VB8 左转弯黄灯输入数据 直行方向绿灯时间整型数据 VW0 字型数据 直行方向黄灯时间整型数据 VW16 字型数据 左转弯方向绿灯时间整型数据 VW32 字型数据 左转弯方向黄灯时间整型数据 VW48 字型数据 中间数据 VW64 为VW0与VW16的和 中间数据 VW80 为VW32与VW48的和 红灯等待时间 VW96 逻辑红灯等待时间为VW64与VW80的和 直行方向绿灯时间整型最终数据 VW100 被赋值给直行方向绿灯计数器 直行方向黄灯时间整型最终数据 VW102 被赋值给直行方向黄灯计数器 左转弯方向绿灯时间整型最终数据 VW104 被赋值给左转弯方向绿灯计数器 左转弯方向黄灯时间整型最终数据 VW106 被赋值给左转弯方向黄灯计数器 最终红灯等待时间 VW108 被赋值给红灯等待计数器 中间数据 VW110 用于实现数码管显示的中间数据 直行方向绿灯计数器数值 VW120 用于数据传递 直行方向黄灯计数器数值 VW122 用于数据传递 左转弯方向绿灯计数器数值 VW124 用于数据传递 左转弯方向黄灯计数器数值 VW126 用于数据传递 红灯等待计数器数值 VW128 用于数据传递 中间数据 MW5 为将数码管数据实现位操作而存放数据的寄存器 3 硬件连线 10
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服