PLC电子时钟三级项目
- 格式:doc
- 大小:1.42 MB
- 文档页数:8
PLC时钟显示控制
摘 要: 本项目主要通过FX-1N型PLC控制七段代码管,实现时钟的显示。在GX DEVELOPER软件环境下,
主程序采用编程方式为顺序流程图,解码子程序采用梯形图。
一、 项目介绍
1、项目内容
本项目通过PLC对四个七段代码管进行控制,实现以24小时制显示时间,具有
秒的闪烁显示,并可对显示时间进行设置。
2、主要问题
①
实现分钟的个位满十进一,满六十分钟向小时进一并置零分钟,小时的个位
满十进一,满二十四小时全置零。
②
实现片选端的轮流选中,并保证在某个代码管被选中时,欲显示的数与其同
步。
③可对最初值进行设置
二、 模拟方案
1、硬件
①三菱FX1N系列PLC一台
②实验面板一个
③装有GX DEVELOPER软件的计算机一台
④导线若干
2、控制原理
循环1控制秒的亮灭
循环2用于计时
循环3用于求出各个位上应显示的数字
循环4控制片选,调用解码子程序进行解码
子程序用于解码
3、实验IO接口安排
X0:启动程序
Y0—Y7:七段管的a—g
Y10:秒的亮灭
Y11—Y14:片选
4、其余用到的软元件及其功能
D0:记录分钟数
D1:记录小时数
(D2:没有用到)
D3:D0传给D3用于除法求分钟个位十位
D4:存放分钟的十位
D5:存放分钟的个位
D6:D1传给D6用于除法求小时个位十位
D7:存放小时的十位
D8:存放小时的个位
(D9:没有用到)
D10:0的七段管代码值
D11:1的七段管代码值
D12:2的七段管代码值
D13:3的七段管代码值
D14:4的七段管代码值
D15:5的七段管代码值
D16:6的七段管代码值
D17:7的七段管代码值
D18:8的七段管代码值
D19:9的七段管代码值
4、实验线路图
4、 连线图
三、 控制程序
流程图
详细程序
注:几个重要状态器的内容
S0:将0-9的对应七段码存入D10-D19
T0
T1
M2 M3
M5
M6
S15:分钟加一,并判断跳转方向
S16:小时加一,并判断跳转方向
S17:求出每位应显示的数字
S19-S22为控制片选
S19:
S20:
S21:
S22:
子程序:用DECO解码
下面为转换成的梯形图形式的程序:
四、 运行结果
在调试过程中,开始时错将片选端的COM连接到了高电平,程序和接线不符,数
字钟显示三位或不显示。在老师的指导下,改成了低电平,并进一步修改了程序。数字
时钟的秒位每隔0.5s亮一次,同时开始计分,经过一分D0加一,经过一小时D1加一,
D0、D1分别除以十求得各位所应显示的数。最终成功显示。
五、改进意见
数字时钟从00:00开始计时,通过改变D0和D1的初值可以使其从任何时间开始显
示,基本上完成了实验要求。但是,由于设定的片选循环频率不合适,因此显示亮度不
是高,在一定距离以外才可分辨出显示的数字。可以通过改变片选循环频率来改善显示
效果。
六、 感言
每一门课程的学习,都是一个由浅入深的过程。在没有做实验之前,觉得对PLC
挺了解的,但真正到应用的时候,发现自己根本就不懂PLC接口到底是怎么接的,
所学的东西仅仅停留在感性认识上。后来通过几个比较简单的实验初步了解了怎么编
程,程序的写入及调试。有了这个基础,在项目中我们才真正能克服困难一步步走下
来。
在编写程序时,所采用的基本思路应该说得益于微机原理项目中相类似的一个
模块,因为我在那个项目中碰了好多次壁,在做这个项目时,我才避免了好多弯路。
可以说,学习在很多时候是相通的。通过这次项目,我们学到的东西虽然不一定能让
我们获得很高的考试分数,但它真正教给我们一门实用的技术。我敢说,如果没有这
次项目,在半年之后很多同学就会将PLC的用法忘得一干二净,但现在,恐怕我们
三五年之后依然记得怎么去用它。
最后,我特别想感谢实验室的老师。本应下班了,但她们仍然陪我们一直到晚上
十点多,直到我们调试成功。如果没有她们的付出,我们也学不到这么多的知识。