七段数码显示在S7-200中的实现
2020-11-05李俊
李 俊
(临汾职业技术学院,山西 临汾 041000)
0 引言
七段数码管在PLC编程中经常使用,如在实现四位或六位抢答器电路设计时,就需要用到七段数码管进行台号的显示;再比如十字路口红绿灯程序的编写过程中也要用到七段数码管进行倒计时的显示。本文就同一个控制要求采用不同的方法去实现数码显示,并对比各种编程方法的使用特点。
1 七段数码显示管及控制要求
图1 七段数码管的数显外形
2 使用基本指令实现显示
基本指令是以触点、线圈、定时器、置位指令、复位指令等作为梯形图的组成部分来进行程序编写的编程方法。在用基本指令实现七段数码显示时,将每一个发光二极管作为一个输出,用线圈表示来进行程序的编写。首先需要列写控制要求中所有的I/O地址,并填写到表1中。然后统计出每一段发光二极管点亮所对应的输入端的全部情况,并将其在梯形图中并联用于驱动对应的线圈,这样就可以得到用基本指令编写的梯形图。图2为用基本指令实现a段和b段发光二极管发光的梯形图。
表1 I/O地址分配表
图2中,网络1:统计SB1按键按压的次数;网络2:SB2键驱动辅助继电器M0.0并自锁;网络3:a段发光二极管的控制程序;网络4:b段发光二极管的控制程序。
图2 基本指令实现a段和b段发光二极管发光的梯形图
采用基本指令对七段数码管进行程序编写比较适合S7-200编程的初学者,其特点是容易理解,无论是想显示数字还是特殊的英文字母,程序中所需的输出线圈的网络最多只有7个,只是在输出线圈前端所加的控制条件不同而已,且输出端口I/O地址随机不受约束。
3 使用传送指令实现显示
传送指令用于存储区之间或存储区与过程输入、输出之间交换数据,分为数据传送指令和数据块传送指令。数据传送指令又包括一次传送8位的字节传送指令MOV-B、一次传送16位的字传送指令MOV-W、一次传送32位的双字传送指令MOV-D和实数传送指令MOV-R。对于七段数码显示而言,我们选择的是字节传送指令MOV-B,其梯形图格式如图3所示,功能是:当EN使能输入端有有效信号输入时,MOV-B指令会把IN输入端的数据传送给OUT输出端所指定的地址,此时目标地址中的相应位就会有对应的输出,同时ENO使能输出端存在有效信号。其中IN输入端输入的数字可以是十进制数(此时不需标注进制符号),也可以是二进制(需标注“2#”)和十六进制(需标注“16#”)。
图3 字节传送指令的梯形图
当我们选择使用传送指令来实现七段数码显示时,首先确定其I/O地址中的输出必须是一个整字节,并列写出要显示的符号与对应位的数值关系,即真值表,如表2所示。
表2 真值表
图4 显示数字“”的三种传送进制数的梯形图
图5 传送指令实现数码显示“”、“”、“”、“”的梯形图
4 使用SEG指令实现显示
SEG指令是专门进行数字显示的指令,其梯形图如图6所示。
图6 SEG指令的梯形图
图7 SEG指令实现数码显示“”、“”、“”、“”的梯形图
5 结语
七段数码显示在PLC编程控制中经常使用,根据控制要求可以选择适当的方式去进行程序的编写,尽可能使程序简单有效,降低程序所占内存,提高反应速度和可靠性。在日常的实训中应多加练习,尽量尝试多种方法去实现以便今后能更加灵活的使用。