您现在的位置是:首页 > PLC技术 > PLC技术

用七段位数码管显示灯运行次数的变化值实例

来源:艾特贸易2017-06-04

简介1 .内容与要求 启动后,绿灯、黄灯、红灯顺序轮流发光 1s ,连续反复 9 次后熄灭。要求: 1) 用七段数码管实时显示绿灯、黄灯、红灯顺序轮流发光的次数。 2) 用按钮 SB1 作显示的启

    1.内容与要求    启动后,绿灯、黄灯、红灯顺序轮流发光1s,连续反复9次后熄灭。要求:    1)用七段数码管实时显示“绿灯、黄灯、红灯顺序轮流发光”的次数。    2)用按钮SB1作显示的启动控制,    3)用开关SA2作显示的关闭控制。    4)用开关SA3作“0”显示控制。    5)当开关SA1SA2闭合时,各灯熄灭,只有开关SA1SA2断开时才能启动灯的发光运行。    2.学习重点    1)了解七段数码管及其接线与运用。    2)认识高级指令“F91 (SEGT)”并学习其运用。    3)认识计数器的设定值区(EV)    4)学习用七段数码管显示计数器的实时值。    3.实训步骤    (1)计数器的设定值区(EV) 在计数器运算操作的过程中,经过值被储存放在与计数器具有相同编号的经过值区。当经过值达到0时,与计数器具有相同编号的触点变为ON。计数器的经过值区(EV)是一个16位数据,可以储放从K0~ K32767的十进制数。计数器的经过值区( EV),如图7-1所示。
计数器的经过值区(EV)
    7-1    计数器的经过值区(EV)    (2)了解七段数码管七段数码管是通过不同的组合形成数字“0~9”和字母“AF”的数码显示管。表7-1中列出了数码管显示各个数字与字母发光段的组合(发光为高电平“1”),如:当发光段“bc”发光时,即显示“1”,而要显示“7”,则需要有“abcf4个发光段同时发光。    7-1    七段数码管不同的组合关系
七段数码管不同的组合关系
    (3)用高级指令“F91 (SEGT)”实现七段数码管的显示高级指令“F91 (SEGT)”具有七段码译码功能,其指令格式和运用举例见表7-2。当XOON时,该指令能将“S.”指定十六进制的0~F(十进制010)的数据译成七段码显示的数据存入“D.”中,并通过与七段数码显示管相接的“Y0~ Y6”的编码输出,使七段数码显示管显示出十六进制的0F    7-2    F91 (SEGT)的指令格式与运用举例
F91 (SEGT)的指令格式与运用举例
    执行“七段码译码”只有16位指令,连续执行型为“F91 (SEGT)”,脉冲执行型为“P91 (PSEGD)”,指令执行步数为5步。    操作数:    [s.]:WXWYWRWL(*1)SVEVDTLD(*1)FL*2)、IX(*3)IY*4)、KH、索引变址。    [D]WYWRWL*1)、SVEVDTLD*1)、FL*2)、IX*3)、IY*4)、索引变址。    操作数WL*1)是继电器中的一种,LD(*1)FL*2)、IX*3)、IY*4)是数据寄存器和索引寄存器中的一种,还有索引变址这些都是要在以后的深入学习中才会学到的,现在只须要知道有这些软元件就可以了,不需要掌握。    要用高级指令“F91(SEGT)”实现七段数码管的显示,需将一个七段数码管的七段发光管分别接到PLC输出端,每个发光段要用一个输出地址,共占用连续编号的七个外部输出继电器。如发光段“a”接Y0,则“a~g”要连续接PLC输出端的“Y0~ Y6”,如图7-2所示。
七段数码管的PLC接线
    7-2    七段数码管的PLC接线    (4) PLCI/O分配与接线 本实训任务可用PLC实训装置(TVT-90HC)的“天塔之光”实训模块上的七段数码管进行。PLCI/O分配见表7-3    7-3    PLCI/O分配
 PLC的I/O分配
   请按表7-1与图7-2完成接线。   (5) PLC程序的编写PLC的控制程序如图7-3所示(供参考)。   (6) PLC程序的执行与调试按图7-3编写程序,传送到PLC执行,并进行程序调试,直至满足以下的控制要求:
PLC的控制程序
    7-3    PLC的控制程序    1)绿灯、黄灯、红灯的运行。按下按钮SB1,绿灯发光1s→黄灯发光1s→红灯发光1s,连续反复运行9次后停止;可按SB1可再次运行。    2)七段数码管对发光次数的显示。通电后,数码管的显示处于关闭状态,按下按钮SB1,绿灯、黄灯、红灯按顺序发光1s;当绿灯、黄灯、红灯每完成一次顺序发光过程,数码管就累加“1”,直到累加到“0”为止。    3)数码管“0”显示。在启动前将清零开关SA2闭合,数码管立刻显示“0”(此时若将开关SA2断开,数码管仍会显示“0”),然后在运行中将开关SA2闭合,数码管也立刻显示“0”,同时各个灯熄灭;要恢复数码管的显示,应在重新运行前先将开关SA2断开。    4)停止控制。在灯的运行中将开关SA1闭合,各个灯立刻熄灭,数码管显示停止;要重新启动,需将开关SA1断开。    4.分析与思考    (1)用高级指令“F91 (SEGT)”实现七段数码管对计数器实时值的显示如图7-3所示程序“39”行部分,程序中使用了高级指令“F91 (SEGT)”来实现七段数码管对计数器实时值的显示。方法是:将计数器“C1008”的计数经过值区EV1008通过“F91 (SEGT)”的译码功能,使数码管多个发光段发光并组合为数字显示。对七段数码管来说,可显示的数字范围为十进制数“0~9”。当然也可用“F91 (SEGT)”指令实现十六进制数的显示。    (2)用直接驱动方式实现七段数码管的显示 如果不使用高级指令“F91 (SEGT)”, 也可以通过直接驱动数码管的发光段来显示数字“0~9”。从表7-1中七段发光管所显示的数字与发光段的关系可知,如要显示0,就要使数码管的发光段abcdef发光;要显示“1”,则要数码管的发光段bc发光,如此类推,则可实现数码管的显示了。图74为实现七段数码管显示“0”和“1”的例子。
用直接驱动方式实现七段数码管的显示
    7-4    用直接驱动方式实现七段数码管的显示    a)显示“0”和“1”的步进梯形图程序b)数码管接线    (3)数码管的关闭与清零图7-3所示程序中,“0”行部分是实现数码管关闭的控制,“15”行部分则是实现数码管“0”显示的控制。对比两部分不同之处可知,要关闭数码管的显示,则要将接数码管发光段的输出继电器Y0~ Y6全部复位。而要数码管显示“0”,Y0~Y6仍需保持接通,但要用高级指令“F91 (SEGT)”将“0”传送到数码管。