一种通过i/o端口实现两plc之间单向单线通信的方法

文档序号:9765528阅读:1177来源:国知局
一种通过i/o端口实现两plc之间单向单线通信的方法
【专利说明】
[技术领域]
[0001]本发明涉及一种通过I/O端口实现两PLC之间单向单线通信的方法。
[【背景技术】]
[0002]随着科技的不断发展,要求自动化设备的功能以及灵活性不断增强,传统的PLC之间通信主要靠通信模块或I/O端口一对一传送信号。通信模块可以实现大量信号的传送,准确度比较高,但费用较高;I/O端口一对一传送信号准确度极高,传送速度较快,但随着传送信号量的增加,两PLC间通信所需要的I/O端口数量不断增加,其耗用大量PLC端口、增加设备成本。
[0003]因此,有必要解决如上问题。
[
【发明内容】
]
[0004]本发明克服了上述技术的不足,提供了一种通过I/O端口实现两PLC之间单向单线通信的方法,其通信简单控制方便,实用性好。
[0005]为实现上述目的,本发明采用了下列技术方案:
[0006]一种通过I/O端口实现两PLC之间单向单线通信的方法,其中,第一PLC的一个I/O发送端口与第二 PLC的一个I/O接收端口通过一根通讯线进行连接,其特征在于所述方法包括有第一 PLC发送信号步骤、第二 PLC接收处理信号步骤、以及第二 PLC确认信号步骤,
[0007]所述第一PLC发送信号步骤包括有:第一PLC发送通信信号时,同时启动定时器Tl和定时器T2,定时器Tl作为发送信号时间开始,定时器T2作为发送信号截止时间,定时器T2与定时器Tl之间的定时时间差记为单位最大发送时间AT,第一 PLC采用GPffM指令向外发送某一数量脉冲,单位最大发送时间AT内一定数量范围的脉冲表示某一信号,设定发送脉冲的脉冲输出宽度与脉冲输出周期,脉冲输出宽度指定为Dl 1: O?32767ms,脉冲输出周期指定为012:1?327671^,其中011$012$厶1',
[0008]即该GPffM指令为:GPffM Dll D12 Y13,其中Y13为I/O发送端口;
[0009]所述第二PLC接收处理信号步骤包括有:第二 PLC的I/O接收端口采用DHSCS比较置位指令来接收计数所述第一 PLC在每个单位最大发送时间AT内所发送脉冲的数量并且启动一个定时器T232,S卩DCNT C236AT,C236是DHSCS指令所指定的一个用于脉冲计数的高速计数器,AT为定时器T232定时时间,当C236计数变化时,DHSCS指令进行比较动作,
[0010]S卩DHSCS比较置位指令为:DHSCS K(n)C236M(n),其中,η为自然数,K(n)为预设的第η个比较值且Κ(η)<Κ(η+1),Μ(η)为对应的比较结果,当C236 = K(n)即C236接收到Κ(η)个脉冲数时,将Μ(η)从OFF置为ON以表示比较结果,当C236 = K(n+l)即C236接收到Κ(η+1)个脉冲数时,将Μ(η+1)从OFF置为ON并将Μ(η)从ON置为0FF,如此执行直到定时器Τ232时间到,将C236清零;
[0011]第二PLC确认信号步骤:定时器T232时间到,第二PLC检测M(I)?M(n)的值来确定第一 PLC发送脉冲数量范围,并根据与第一 PLC的协定来确定第一 PLC所发送的信号,然后将M(I)?M(n)置OFF。
[0012]如上所述的一种通过I/O端口实现两PLC之间单向单线通信的方法,在第二PLC接收处理信号步骤中,K(n)与K(n+1)的差值固定。
[0013]与现有技术相比,本发明的有益效果是:
[0014]1、本案通信简单控制方便,实用性好,第一 PLC发送信号步骤中单位最大发送时间AT内一定数量范围的脉冲表示某一信号,其具有一定的通讯容错功能,第二 PLC接收处理信号步骤中计数到Κ(η)数量脉冲时输出结果Μ(η),其能够防止接收信号定时器时间到时将高速计数器清零而造成数据丢失的发生。
[0015]2、第一 PLC发送信号步骤中采用两个定时器,定时器Tl作为发送信号时间开始,定时器Τ2作为发送信号截止时间,便于控制脉冲发送时间,并且当第一PLC要连续发送信号时,定时器Tl还起到时间间隔的作用,有利于第二 PLC接收处理信号和确认信号。
[0016]3、第二 PLC接收处理信号步骤中,Κ(η)与Κ(η+1)的差值固定,当差值越大时,通讯容错性越好,具体实施时选择适当的差值以将脉冲数量范围分为宽度相等的若干段,在有一定的通讯容错性的情况下保证一定的信号传输效率。
[【附图说明】]
[0017]图1是本发明的流程图。
[【具体实施方式】]
[0018]以下结合附图通过实施例对本发明特征及其它相关特征作进一步详细说明,以便于同行业技术人员的理解:
[0019]一种通过I/O端口实现两PLC之间单向单线通信的方法,其中,第一PLC的一个I/O发送端口与第二PLC的一个I/O接收端口通过一根通讯线进行连接,所述方法包括有第一PLC发送信号步骤、第二 PLC接收处理信号步骤、以及第二 PLC确认信号步骤,
[0020]所述第一PLC发送信号步骤包括有:第一PLC发送通信信号时,同时启动定时器Tl和定时器Τ2,定时器Tl作为发送信号时间开始,定时器Τ2作为发送信号截止时间,定时器Τ2与定时器Tl之间的定时时间差记为单位最大发送时间AT,第一 PLC采用GPffM指令向外发送某一数量脉冲,单位最大发送时间AT内一定数量范围的脉冲表示某一信号,设定发送脉冲的脉冲输出宽度与脉冲输出周期,脉冲输出宽度指定为Dl 1: O?32767ms,脉冲输出周期指定为012:1?327671^,其中011$012$厶1',
[0021]即该GPffM指令为:GPffM Dll D12 Y13,其中Y13为I/O发送端口;
[0022]所述第二PLC接收处理信号步骤包括有:第二 PLC的I/O接收端口采用DHSCS比较置位指令来接收计数所述第一 PLC在每个单位最大发送时间AT内所发送脉冲的数量并且启动一个定时器T232,S卩DCNT C236AT,C236是DHSCS指令所指定的一个用于脉冲计数的高速计数器,AT为定时器T232定时时间,当C236计数变化时,DHSCS指令进行比较动作,
[0023]S卩DHSCS比较置位指令为:DHSCS K(n)C236M(n),其中,η为自然数,K(n)为预设的第η个比较值且Κ(η)<Κ(η+1),Μ(η)为对应的比较结果,当C236 = K(n)即C236接收到Κ(η)个脉冲数时,将Μ(η)从OFF置为ON以表示比较结果,当C236 = K(n+l)即C236接收到Κ(η+1)个脉冲数时,将Μ(η+1)从OFF置为ON并将Μ(η)从ON置为0FF,如此执行直到定时器Τ232时间到,将C236清零;
[0024]第二PLC确认信号步骤:定时器T232时间到,第二PLC检测M(I)?M(n)的值来确定第一 PLC发送脉冲数量范围,并根据与第一 PLC的协定来确定第一 PLC所发送的信号,然后将M(I)?M(n)置OFF。
[0025]如上所述,具体实施时,在第二PLC接收处理信号步骤中,K(n)与K(n+1)的差值固定,当差值越大时,通讯容错性越好,具体实施时选择适当的差值以将脉冲数量范围分为宽度相等的若干段,在有一定的通讯容错性的情况下保证一定的信号传输效率。
[0026]如上所述,本案通信简单控制方便,实用性好,第一PLC发送信号步骤中单位最大发送时间AT内一定数量范围的脉冲表示某一信号,其具有一定的通讯容错功能,第二 PLC接收处理信号步骤中计数到Κ(η)数量脉冲时输出结果Μ(η),其能够防止接收信号定时器时间到时将高速计数器清零而造成数据丢失的发生;在第一 PLC发送信号步骤中采用两个定时器,定时器Tl作为发送信号时间开始,定时器Τ2作为发送信号截止时间,便于控制脉冲发送时间,并且当第一PLC要连续发送信号时,定时器Tl还起到时间间隔的作用,有利于第二PLC接收处理信号和确认信号。
[0027]如上所述,本案保护的是一种通过I/O端口实现两PLC之间单向单线通信的方法,一切与本案相同或相近的技术方案都应示为范入本案的保护范围内。
【主权项】
1.一种通过I/O端口实现两PLC之间单向单线通信的方法,其中,第一PLC的一个I/O发送端口与第二PLC的一个I/O接收端口通过一根通讯线进行连接,其特征在于包括有第一PLC发送信号步骤、第二 PLC接收处理信号步骤、以及第二 PLC确认信号步骤, 所述第一PLC发送信号步骤包括有:第一PLC发送通信信号时,同时启动定时器Tl和定时器T2,定时器Tl作为发送信号时间开始,定时器T2作为发送信号截止时间,定时器T2与定时器Tl之间的定时时间差记为单位最大发送时间AT,第一 PLC采用GPffM指令向外发送某一数量脉冲,单位最大发送时间AT内一定数量范围的脉冲表示某一信号,设定发送脉冲的脉冲输出宽度与脉冲输出周期,脉冲输出宽度指定为Dll:0?32767ms,脉冲输出周期指定为012:1?327671118,其中011$012$厶1', 即该GPffM指令为:GPffM Dll D12 Y13,其中Y13为I/O发送端口; 所述第二 PLC接收处理信号步骤包括有:第二 PLC的I/O接收端口采用DHSCS比较置位指令来接收计数所述第一 PLC在每个单位最大发送时间AT内所发送脉冲的数量并且启动一个定时器T232,S卩DCNT C236 AT,C236是DHSCS指令所指定的一个用于脉冲计数的高速计数器,AT为定时器T232定时时间,当C236计数变化时,DHSCS指令进行比较动作, SPDHSCS比较置位指令为:DHSCS K(n)C236 M(n),其中,η为自然数,K(n)为预设的第η个比较值且Κ(η)<Κ(η+1),Μ(η)为对应的比较结果,当C236 = K(n)即C236接收到Κ(η)个脉冲数时,将Μ(η)从OFF置为ON以表示比较结果,当C236 = K(n+l)即C236接收到Κ(η+1)个脉冲数时,将Μ(η+1)从OFF置为ON并将Μ(η)从ON置为OFF,如此执行直到定时器Τ232时间到,将C236清零; 第二PLC确认信号步骤:定时器Τ232时间到,第二PLC检测Μ( I)?Μ(η)的值来确定第一PLC发送脉冲数量范围,并根据与第一 PLC的协定来确定第一 PLC所发送的信号,然后将M(I)?Μ(η)置OFF。2.根据权利要求1所述的一种通过I/O端口实现两PLC之间单向单线通信的方法,其特征在于在第二 PLC接收处理信号步骤中,K(n)与K(n+1)的差值固定。
【专利摘要】本发明公开了一种通过I/O端口实现两PLC之间单向单线通信的方法,包括第一PLC发送信号步骤、第二PLC接收处理信号、以及第二PLC确认信号步骤,在第一PLC发送信号步骤中单位最大发送时间△T内一定数量范围的脉冲表示某一信号,其具有一定的通讯容错功能,第二PLC接收处理信号步骤中计数到K(n)数量脉冲时输出结果M(n),其能够防止接收信号定时器时间到时将高速计数器清零而造成数据丢失的发生,而第一PLC发送信号步骤中采用两个定时器,定时器T1作为发送信号时间开始,定时器T2作为发送信号截止时间,便于控制脉冲发送时间,并且当第一PLC要连续发送信号时,定时器T1还起到时间间隔的作用,有利于第二PLC接收处理信号和确认信号。
【IPC分类】G05B19/05
【公开号】CN105527918
【申请号】CN201510922674
【发明人】张宝, 蔡斌, 李全宗, 孔祥锐, 肖阳阳
【申请人】中山联合光电科技股份有限公司
【公开日】2016年4月27日
【申请日】2015年12月11日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1