一种plc扩展总线的动态调频方法及其控制系统的制作方法

文档序号:6310352阅读:169来源:国知局
专利名称:一种plc扩展总线的动态调频方法及其控制系统的制作方法
技术领域
本发明涉及工业控制技术领域,特别涉及一种PLC扩展总线的动态调频方法及其控制系统。
背景技术
目前,PLC (Programmable Logic Controller,可编程逻辑控制器)控制器和多个输入/输出扩展模块通信时,通常将各输入/输出扩展模块串接在一起,并以一定的时钟频率的信号逐个进行数据交换。例如,控制器与扩展模块之间进行同步串行通信时使用固定的通信频率(通常此频率设置的较高)。控制器连接的扩展模块越多,信号传输时经过的IC芯片就越多,由于IC芯片电容节点的延时作用,使得时钟信号和数据信号的相对时序关系发生了改变,控制器使用原本设置好的通信速率可能会出现无法与各扩展模块进行正常通信的情况,而这种情况的出现,会严重影响到控制器与各扩展模块的通信稳定性,很可能造成控制器系统所控制的设备不能正常工作。·如图I所示,控制器通过串行通信总线202向扩展模块201交换数据时,传输的信号包括CLKO (时钟)203、DAT0 (数据)204等,其中CLKO (时钟)203、DAT0 (数据)204存在一定的时序关系。其时序关系如图2所示,当控制器需要与某一扩展模块交换数据时,先由控制器在特定的时钟发送命令,如第00个下降沿开始发送第一个数据D7。当发完命令后经过一定个数的时钟周期,控制器则读取模块的应答,如发出第11个下降沿时控制器读取模块的应答。只有当特定的时钟与数据一一对应时,才能保证控制器与扩展模块交换数据的准确性。而当模块收到控制器的命令信号时,模块在第11个时钟上升沿返回和时钟对应关系的数据信号,数据信号经过若干个IC芯片205后返回到CPU中;由于IC芯片205节点电容的延时作用,使时钟信号与数据信号出现了错位关系,导致控制器不能读取到正确的应答值。因此,其实际输出的时序如图3所示,第11个时钟下降沿到来时控制器读取模块的应答,数据信号经过若干个IC芯片后,由于IC芯片节点电容的延时作用,导致时钟信号和数据信号对应关系发生改变,控制器读到错误的应答值,导致控制器不能与扩展模块正常通信。从上述分析可见,在通信系统中,由控制器输出的总线控制时序虽然对与其紧连的扩展模块没有较大影响,但是由于通信时钟频率是固定不变的,不能进行频率调节,使得这种影响将根据扩展模块通信的顺序逐层递增,如果控制器读到错误的应答,则控制器将不对该扩展模块操作或者可能对扩展模块进行误操作,导致后面的扩展模块无法正常工作。当系统通信总线比较长,更加增加了延时的不确定性,极容易出现部分扩展模块不能工作或不能通信的情况。有鉴于此,本发明提供一种PLC扩展总线的动态调频方法及其控制系统。

发明内容
鉴于上述现有技术的不足之处,本发明的目的在于提供一种PLC扩展总线的动态调频方法及其控制系统,能动态调节控制器与各输入/输出扩展模块的通信频率,使得控制器与扩展模块通信不会受到扩展模块的连接数量或延长线的长度的影响;以解决现有技术只能以固定频率通信,造成通信不稳定,甚至不能正常工作的问题。为了达到上述目的,本发明采取了以下技术方案
一种PLC扩展总线的动态调频方法,其包括
A、由控制器采用第一握手频率扫描,根据响应确定输入/输出扩展模块的数量,并根据排列先后给输入/输出扩展模块从第一序号开始顺序分配序号;并将握手计数器的值清零;
B、找到第一序号的输入/输出扩展模块,以第二握手频率与当前序号的输入/输出扩展模块进行握手;
C、判断控制器是否能够与当前序号的输入/输出扩展模块成功握手;如果是,则将第 二握手频率作为最佳握手频率,再将当前输入/输出扩展模块的序号及第二握手频率存储在控制器中,然后执行步骤E ;否则,执行步骤D ;
D、改变握手频率,与当前序号的输入/输出扩展模块进行至少I次握手,直至得到最佳握手频率,并将当前输入/输出扩展模块的序号及相应的最佳握手频率存储在控制器中,然后执行步骤E ;
E、将握手计数器的值加I;判断握手计数器的值是否等于输入/输出扩展模块的数量;如果是,控制器完成与所有输入/输出扩展模块的握手;否则,将当前握手的输入/输出扩展模块的序号加1,找到该序号的输入/输出扩展模块,并以第二握手频率进行握手,然后,再执行步骤C。所述的PLC扩展总线的动态调频方法中,在控制器完成与所有输入/输出扩展模块的握手之后,所述的方法还包括
F、在控制器与各输入/输出扩展模块通信时,由控制器查找相应输入/输出扩展模块的最佳握手频率,并采用该频率与相应的输入/输出扩展模块进行通信。所述的PLC扩展总线的动态调频方法中,所述输入/输出扩展模块的数量至少为I个。所述的PLC扩展总线的动态调频方法中,所述的方法还包括在控制器上电时,重新与各输入/输出扩展1吴块握手。 所述的PLC扩展总线的动态调频方法中,所述第一握手频率为通信频率范围内的最低频率,第二握手频率为通信频率范围内的最高频率。一种PLC扩展总线的动态调频控制系统,包括控制器,所述控制器包括
握手模块,用于与所述控制器连接的所有输入/输出扩展模块握手;
频率设置模块,用于设置控制器与各输入/输出扩展模块握手时的握手频率;所述握手频率包括控制器与输入/输出扩展模块第一次握手时采用的第一握手频率,以及改变握手频率与当前输入/输出扩展模块进行多次握手后得到的最佳握手频率;
判断模块,用于判断输入/输出扩展模块的应答响应是否正确;
存储模块,用于存储控制器与当前输入/输出扩展模块进行多次握手后得到的最佳握手频率,以及得到最佳握手频率时,当前输入/输出扩展模块的序号;
握手计数器,用于对握手次数进行计数。
所述的PLC扩展总线的动态调频控制系统中,所述控制器还包括
通信模块,用于与各输入/输出扩展模块通信;
频率调用模块,用于在通信模块与各输入/输出扩展模块通信时,调用存储模块中的相应输入/输出扩展模块的最佳握手频率。相较于现有技术,本发明提供的一种PLC扩展总线的动态调频方法及其控制系统,其控制方法通过控制器采用最低握手频率与各输入/输出扩展模块握手来确定输入/输出扩展模块的数量,之后控制器采用最高握手频率逐一向各输入/输出扩展模块进行握手,在握手不成功时改变握手频率再次进行握手直到握手成功,并分别存储当前输入/输出扩展模块的序号和最佳的握手频率。在完成与所有扩展模块的握手后,控制器在通信时只需在存储区中找出相应的最佳握手频率进行通信,确保了通信的长期稳定性和正确性。



图I为现有技术中控制器与扩展模块通信示意图。图2为现有技术中通信时钟和交换数据理想的时序关系示意图。其中,CLK0、DAT0为控制器端的时序关系;CLK1、DAT1为|旲块端的时序关系。图3为现有技术中通信时钟和交换数据错误的时序关系示意图。其中,CLK0、DAT0为控制器端的时序关系;CLK1、DAT1为|旲块端的时序关系。图4为本发明PLC扩展总线的动态调频方法的流程图。图5为本发明PLC扩展总线的动态调频方法中控制器与输入/输出扩展模块握手成功的时序示意图。图6为本发明PLC扩展总线的动态调频方法中控制器与输入/输出扩展模块握手失败的时序示意图。图7为本发明PLC扩展总线的动态调频控制系统的系统框图。
具体实施例方式本发明提供一种PLC扩展总线的动态调频方法及其控制系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。请参阅图4,本发明提供的PLC扩展总线的动态调频方法,包括
S110、由控制器采用第一握手频率扫描,根据响应确定输入/输出扩展模块的数量N,并根据排列先后给输入/输出扩展模块从第一序号开始顺序分配序号;并将握手计数器M的值清零;其中,所述第一握手频率为控制器与输入/输出扩展模块通信时的最低通信频率,该最低通信频率为O. 1M-2. 9M。S210、找到第一序号的输入/输出扩展模块,以第二握手频率与当前序号的输入/输出扩展模块进行握手;
S310、判断控制器是否能够与当前序号的输入/输出扩展模块成功握手;如果是,则将第二握手频率作为最佳握手频率,再将当前输入/输出扩展模块的序号及第二握手频率存储在控制器中,然后执行步骤S510 ;否则,执行步骤S410。其中,所述第二握手频率为控制器与输入/输出扩展模块通信时的最高通信频率,一般为3M-12M。S410、改变握手频率,与当前序号的输入/输出扩展模块进行至少I次握手,直至得到最佳握手频率,并将当前输入/输出扩展模块的序号及相应的最佳握手频率存储在控制器中,然后执行步骤S510。在具体实施时,通过二分查找法等算法依次降低握手频率与当前输入/输出扩展模块进行多次握手,直到得到最佳的握手频率,在得到最佳握手频率后,将当前模块序号及相应的最佳握手频率存储在控制器中。S510、将握手计数器M的值加I ;判断握手计数器M的值是否等于输入/输出扩展模块的数量N ;如果是,控制器完成与所有输入/输出扩展模块的握手;否则,将当前握手的输入/输出扩展模块的序号加1,找到该序号的输入/输出扩展模块,并以第二握手频率进行握手,然后,再执行步骤S310。本发明实施例中,在控制器完成与所有输入/输出扩展模块的握手之后,所述的方法还包括在控制器与各输入/输出扩展模块通信时,由控制器查找相应输入/输出扩展模块的最佳握手频率,并采用该频率与相应的输入/输出扩展模块进行通信,使得控制器与扩展模块通信不会受到扩展模块的连接数量或延长线的长度的影响,确保了通信的长期稳定性和正确性。本发明实施例中,所述输入/输出扩展模块的数量至少为I个,当输入/输出扩展模块为2个或2个以上时,可将各输入/输出扩展模块串接后与控制器连接。首先由控制器与各输入/输出扩展模块进行多次握手确定最佳握手频率并存储,在存储了各个输入/输出扩展模块的最佳握手频率之后便可进行通信。其中,在控制器与各输入/输出扩展模块通信时,由控制器查找相应输入/输出扩展模块的最佳握手频率,并采用该最佳握手频率与相应的输入/输出扩展模块进行通信。并且,当输入/输出扩展模块为2个或2个以上时,所述控制器根据一定的次序,依次与相应的输入/输出扩展模块通信。
在具体实施时,为了提高通信效率和通信的稳定性,在控制器与各输入/输出扩展模块通信时,由控制器采用最低频率扫描,根据响应确定模块个数,并给模块顺序分配序号,然后以二分查找法等算法确定控制器与输入/输出扩展模块的最佳握手频率,可以动态调节控制器与各输入/输出扩展模块的通信频率,使得控制器与扩展模块通信不会受到连接数量或延长线的长度的影响。本发明实施例中,在控制器上电时,重新与各输入/输出扩展模块握手,重新确认控制器与各输入/输出扩展模块的最佳握手频率。其中,所述第一次握手频率为通信频率范围内的最低频率,所述第二握手频率为通信频率范围内的最高频率。当然,在其它实施例中,所述第一次握手频率为通信频率范围内的最高频率,所述第二握手频率为通信频率范围内的最低频率,具体可根据实际情况进行设置。以下以最低频率/■,
最高频率f丽,特定的频率间隔为应用实施例,对本发明的PLC扩展总线的动态调
频方法进行详细说明
控制器需要与每个输入/输出扩展模块进行握手扫描,确定输入/输出扩展模块的数量和最佳握手频率,并在控制器内部建立一个存储区域,分别存储控制器与每一个输入/输出扩展模块通信的最佳频率,以便与该输入/输出扩展模块通信时分别调用。在控制器与各输入/输出扩展模块握手前,先以/—逐一与每个输入/输出扩展
模块尝试握手,在握手成功时根据响应确定输入/输出扩展模块的数量N,并给输入/输出扩展模块顺序分配序号。在控制器与各输入/输出扩展模块握手时,从第一序号的输入/
输出扩展模块开始,控制器以与所有扩展模块握手,如果握手成功,则将/;■作为最
佳握手频率;否则,控制器在j频率范围内以特定的频率间隔Mmr从高到低选
取若干个频率值,再取当前频率范围的中间频率值进行尝试握手;接下来再次判断握
手是否成功,如果握手成功则将的值赋给/imn,进行下一轮查找;如果握手不成功则
将/ra(i的值赋给/max ,进行下一轮查找;重复上述步骤,直到查找到最后一个频率值时,·如果握手成功则将当前的的值作为最佳握手频率;如果握手不成功则将当前的/■的值作为最佳握手频率,以此确定当前模块的最佳握手频率。当控制器与一个输入/输出扩展模块握手时,输入/输出扩展模块收到特定的信号后响应应答。如果控制器能够收到正确的应答信号,则其时序图如图5所示,例如,如果第11个时钟信号下降沿到来时开始读取的应答R7至RO的值及校验位Jl和J0,则当应答和校验位能够匹配时,说明控制器与此输入/输出扩展模块能够以当前的频率进行通信,控
制器将再从当前频率范围[/#&/胃]取下一轮查找的中间频率值/Ia进行握手。如果输
入/输出扩展模块对控制器发出的命令响应后,其响应的数据不能及时的传送到CPU端,则其时序图如图6所示,例如,如果第11个时钟信号下降沿到来时,控制器开始读取到由扩展模块应答的数据R7至RO的值及校验位Jl和J0,由于数据信号和时钟信号对应关系已经错
位,控制器将读到不确定的错误值,即握手失败。则控制器将从当前频率范围
取下一轮查找的中间频率值进行握手。控制器重复以上所述的步骤,最终得到一个合适值作为最佳握手频率。在系统每次上电时,控制器都将在频率范围内,根据二分查找法等算法改变通信频率逐一与不同序号的输入/输出扩展模块尝试握手,按照上述方式直到握手计数器M的值等于输入/输出扩展模块的数量N确定每个输入/输出扩展模块的最佳握手频率。当最佳握手频率确定好后,控制器便可与各输入/输出扩展模块进行通信。在进行通信工作时,控制器每次只与其中一个输入/输出扩展模块进行数据传输。当控制器需要与其中一个扩展模块进行通信时,控制器从存储区域调用该输入/输出扩展模块相应的最佳握手频率,用此频率的通信时钟与其交换数据,以保证控制器与每一个输入/输出扩展模块的正常通信。由于输入/输出扩展模块排列顺序不同,因此输入/输出扩展模块通信时受到的IC电容节点的延时作用存在不确定性。本发明可以动态地采用较高通信频率与排列在前的输入/输出扩展模块通信,提高通信效率;在较高通信频率不能通信时也可以降低通信频率,保证控制器读取排列在后的输入/输出扩展模块应答值的准确性。基于上述的PLC扩展总线的动态调频方法,本发明还相对提供一种PLC扩展总线的动态调频控制系统如图7所示,其包括控制器和至少一个输入/输出扩展模块,其中,所述控制器包括频率设置模块、握手模块、判断模块和存储模块。其中,频率设置模块用于设置控制器与各输入/输出扩展模块握手时的握手频率;所述握手频率包括控制器与输入/输出扩展模块第一次握手时采用的第一握手频率,以及改变握手频率与当前输入/输出扩展模块进行多次握手后得到的最佳握手频率。握手模块用于与所述控制器连接的所有输入/输出扩展模块握手;判断模块用于判断输入/输出扩展模块的应答响应是否正确,在应答响应正确时将最高握手频率作为最佳握手频率及当前输入/输出扩展模块的序号存储在控制器中,在应答响应错误时,由频率设置模块根据二分查找法等算法依次发出握手频率再与输入/输出扩展模块多次握手,直到得到最佳的握手频率。存储模块用于存储控制器与当前输入/输出扩展模块进行多次握手后得到的 最佳握手频率,以及得到最佳握手频率时,当前输入/输出扩展模块的序号。握手计数器,用于对握手次数进行计数。本发明实施例中,所述控制器还包括通信模块和频率调用模块。频率调用模块用于在通信模块与各输入/输出扩展模块通信时,调用存储模块中的相应输入/输出扩展模块的最佳握手频率;通信模块用于与各输入/输出扩展模块通信。综上所述,本发明提供的一种PLC扩展总线的动态调频方法及其控制系统,其控制方法通过控制器采用最低握手频率与各输入/输出扩展模块握手以确定扩展模块的数量,之后控制器逐一向各输入/输出扩展模块发出不同通信频率进行握手,并根据二分查找法等算法确定各模块的最佳握手频率,并分别存储。在完成所有扩展模块握手后,控制器在通信时只需在存储区中找出相应的最佳频率进行通信,确保了通信的长期稳定性和正确性。另外,本发明在输入/输出扩展模块数量较多或延长线较长时,采用不同的频率与各输入/输出扩展模块进行握手扫描,来动态的调节总线通信频率,从而找到与各输入/输出扩展模块相应的最佳的、最稳定的通信时钟频率,使控制器与每一个输入/输出扩展模块都能正常通信,并且保证了通信的稳定性和准确性;在输入/输出扩展模块数量较少或延长线较短时,控制器可以采用最高频率与各输入/输出扩展模块进行通信来提高整个系统的实时性和通信效率。可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种PLC扩展总线的动态调频方法,其特征在于,包括 A、由控制器采用第一握手频率扫描,根据响应确定输入/输出扩展模块的数量,并根据排列先后给输入/输出扩展模块从第一序号开始顺序分配序号;并将握手计数器的值清零; B、找到第一序号的输入/输出扩展模块,以第二握手频率与当前序号的输入/输出扩展模块进行握手; C、判断控制器是否能够与当前序号的输入/输出扩展模块成功握手;如果是,则将第二握手频率作为最佳握手频率,再将当前输入/输出扩展模块的序号及第二握手频率存储在控制器中,然后执行步骤E ;否则,执行步骤D ; D、改变握手频率,与当前序号的输入/输出扩展模块进行至少I次握手,直至得到最佳握手频率,并将当前输入/输出扩展模块的序号及相应的最佳握手频率存储在控制器中,然后执行步骤E ; E、将握手计数器的值加I;判断握手计数器的值是否等于输入/输出扩展模块的数量;如果是,则控制器完成与所有输入/输出扩展模块的握手;否则,将当前握手的输入/输出扩展模块的序号加1,找到该序号的输入/输出扩展模块,并以第二握手频率进行握手,然后,再执行步骤C。
2.根据权利要求I所述的PLC扩展总线的动态调频方法,其特征在于,在控制器完成与所有输入/输出扩展模块的握手之后,所述的方法还包括 F、在控制器与各输入/输出扩展模块通信时,由控制器查找相应输入/输出扩展模块的最佳握手频率,并采用该频率与相应的输入/输出扩展模块进行通信。
3.根据权利要求I所述的PLC扩展总线的动态调频方法,其特征在于,所述输入/输出扩展模块的数量至少为I个。
4.根据权利要求I所述的PLC扩展总线的动态调频方法,其特征在于,所述的方法还包括在控制器上电时,重新与各输入/输出扩展模块握手。
5.根据权利要求I所述的PLC扩展总线的动态调频方法,其特征在于,所述第一握手频率为通信频率范围内的最低频率,第二握手频率为通信频率范围内的最高频率。
6.一种PLC扩展总线的动态调频控制系统,包括控制器,其特征在于,所述控制器包括 握手模块,用于与所述控制器连接的所有输入/输出扩展模块握手; 频率设置模块,用于设置控制器与各输入/输出扩展模块握手时的握手频率;所述握手频率包括控制器与输入/输出扩展模块第一次握手时采用的第一握手频率,以及改变握手频率与当前输入/输出扩展模块进行多次握手后得到的最佳握手频率; 判断模块,用于判断输入/输出扩展模块的应答响应是否正确; 存储模块,用于存储控制器与当前输入/输出扩展模块进行多次握手后得到的最佳握手频率,以及得到最佳握手频率时,当前输入/输出扩展模块的序号; 握手计数器,用于对握手次数进行计数。
7.根据权利要求6所述的PLC扩展总线的动态调频控制系统,其特征在于,所述控制器还包括 通信模块,用于与各输入/输出扩展模块通信;频率调用模块,用于在通信模块与各输 入/输出扩展模块通信时,调用存储模块中的相应输入/输出扩展模块的最佳握手频率。
全文摘要
本发明公开了一种PLC扩展总线的动态调频方法及其控制系统,其中控制系统包括握手模块用于与控制器连接的所有模块(即输入/输出扩展模块)握手;频率设置模块用于设置控制器与各模块握手时握手频率;握手频率包括控制器与模块第一次握手时采用的第一握手频率,以及改变握手频率与当前模块进行多次握手后得到的最佳握手频率;判断模块用于判断模块的应答响应是否正确;存储模块用于存储控制器与当前模块进行多次握手后得到的最佳握手频率,以及得到最佳握手频率时,当前模块的序号。本发明通过在通信之前,先确认控制器与各模块之间的最佳握手频率,在通信时只需查找相应模块的最佳握手频率进行通信,确保了通信的长期稳定性和正确性。
文档编号G05B19/05GK102722132SQ201210165898
公开日2012年10月10日 申请日期2012年5月25日 优先权日2012年5月25日
发明者盛旭 申请人:深圳市亿维自动化技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1