摘要:本文以用PIC16F877加少量外围电路构成的LED数字显示表头为例,介绍PIC单片机智能表头的硬件电路原理和软件编程方法,并给出了用三菱公司的FX系列PLC编制的单表显示例程和PIC的控制显示流程图。
关键词:数码显示表;PIC单片机;PLC
1引言
在工业控制应用中,常规的PLC一般公有开关量输入、输出状态指示而没有模拟量数码显示功能。这给需要显示PLC内部程序中运行的某些数据(如温度、压力、流量、速度、角度、位置、频率、转速、电压、电流、功率、时间、故障代码等)带来不便,解决这类问题的方法通常有如下几种:
a.采用带锁存的BCD码并行显示器;
b.采用触措屏的人机器面;
c.采用微机系统+组态软件。
为了显示4位数据,方法a至少需要占用PLC8个晶体管输出点,而b\c方式则由于价格太高,在很多项目中被限制使用。为了节省PLC的输出点,我们用PIC单片机实现了一种智能的、带有输入接口的4线串行BCD码通讯方式的数码显示表头。
2数码显示表头硬件电路原理

图1是一个4位的LED数字显示表头的电路原理图。PLC的4点输出端通过节个TLP521-4光耦与单片机的PB端口的高深莫测位进行信号的隔离传输。光电隔离电路如图2所示,当PLC输出断开时发光二极管截止,光耦输出端PB为低电平;当PLC输出导通时,发光二极管导通,光耦输出端变为高电平,对PB端口进行读操作,即可实现数据的输入。

图中光耦电路的接法能够保证两种结构的晶体管的输出PLC与数字显示表的正常使用。在软件中读到的PB端口高4位的数据与PLC输出信号的逻辑是一致的。数值显示采用4只共阴的七段LED数码管,由PIC16F877以动态扫描方式驱动,在动态扫描方式下,可以保证有足够的显示亮度和较长的使用寿命。CS作为多表连接使用时的片选信号,以确认传送的数据是那一块表头的。PIC16F877使用RC振荡工作。单块表头与PLC的接线图见图3。

3数码显示表头软件设计
由于工业现场的干扰,不能确保PLC每20ms或更长的时间发送的数据能够可靠地接收,所以应在程序中使用循环方法对PB端口不断地读数据,并进行判断、转换及显示。
考虑到PLC输出存在的干扰,编制软件时必须采取抗干扰措施。在读数据中断处理子程序中,设置读5次PB端口,当读到的个数据中有4个相等,即认为读到的数据有效。读到有效数据之后,首先读取三个脉冲的数据,判断是否是F、O、E这三个报头数据,不是就重新开始,是就继续读取后续10个脉冲数据。这10个脉冲数据在整个13个脉冲数据序列中,处于偶数位置的是同步脉冲F,处于奇数位的脉冲数据为BCD码,否则按出错处理并清除接收缓冲区(数码显示表接收4位串行BCD码的传输通信协议如图4)。

如果是正常的就把对应位的BCD码送入显示缓冲区,之后清除接收缓冲区,准备接收下一轮肪冲数据。其软件流程图如图5和图6。

4结束语
本文所设计的位LED数显表头系统在实验室里已通过了验证,系统运行良好。图7给出了三菱FX系列PLC单块表头的输出数据的梯形图。


一沙一世界 一花一天堂 掌中握無……

网络编程技术、多媒体技术、PC应用技术

| 我爱研发网 | 中电华信 | 阿里西西 | JAVA爱好者 | 北京英才网 | 全球大学查询网 |
| 中国人的网站导航 | 中国电脑论坛 | 信息产业部 | 新浪科技 | 搜狐IT | 信息产业部电子教育与考试中心 |
| IT世界网 | 软件项目交易网 | 中国软件交易网 | 国信培训网 | 亚远景科技 | ....[更多] |