带时钟信号的半双工串行总线通信方法及通信系统的制作方法

文档序号:7596709阅读:231来源:国知局
专利名称:带时钟信号的半双工串行总线通信方法及通信系统的制作方法
技术领域
本发明涉及一种小型工业控制网络的通信系统及其方法。
背景技术
目前,在小型工业控制网络中,RS-232、RS-422与RS-485标准是应用最广泛的串行数据接口标准,是由电子工业协会(EIA)制订并发布的,是串行数据接口的工业标准。
RS-232标准是单端一对一连接的全双工通信方式,计算机上的串行通信口就是这种标准。
为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种单机发送、多机接收的单工、平衡传输规范,被命名为TIA/EIA-422-A标准。
为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,使用半双工通信方式。
由于RS-232、RS-422与RS-485标准只对接口的电气特性做出规定,而不涉及通信协议,在此基础上用户可以建立自己的高层通信协议。
对RS-232、RS-422与RS-485标准的简要分析1)RS-232、RS-422与RS-485标准中串行总线只包括数据线,总线上的多节点采用异步方式完成同步,并且在总线上传输的信息的最小单位只能是标准的ASCII码字符。
2)在RS485标准中,总线上的节点数量是有限制的,最多255个,通常在实际使用中因为传输距离、传输速率等方面的限制,总线上的节点数量还要少。
3)在RS485标准中,主机与某个从机进行通信时,要先发送从机的地址码,建立与从机之间的连接,然后再传输数据。
4)在RS485标准中,进行一主多从的多节点间的通信时,如果主机发往每个从机的数据不同,那么主机需要与每个从机分别建立一次连接,然后再传输数据。这样当从机节点数量多时,主机与某个从机通信等待时间会比较长,对时间延迟要求严格的场合不适用。
5)在小型的工业控制网络中,总线上传输的多是数字化的控制信息,比如接近开关、限位开关的输入信号有无,温度、流量传感器检测到的温度值、流量值等等。这些信息如果转换成标准的ASCII码传送,转换和还原过程非常烦琐。因此,RS485标准总线不十分适合这种工业控制场合。
通过对RS-232、RS-422与RS-485标准的分析,我们可以发现基于这种标准建立的通信系统存在如下不足
1)总线上传输的ASCII字符信息,不适合工业控制中的数字量信息的传输。
2)总线上接点数量较多时,接点间通信的延迟时间长,并且延迟时间是变化的,通信系统的实时性差。

发明内容本发明是针对基于RS485标准建立的通信系统存在不适合工业控制中的数字量信息的传输,接点间通信的延迟时间长,通信系统的实时性差的缺陷,提供一种简单、高效,适合小型工业控制网络中数字信息传输的带时钟信号的半双工串行总线通信方法,以及应用该方法的通信系统。
本发明所述的带时钟信号的半双工串行总线通信方法,包括以下步骤——确定用于通信的共享式串行总线;——确定共享式串行总线上接入的N个通信从机中的每个从机以地址号作为从机唯一的识别码,其中N为整数,且N≥1;——由通信主机按帧结构向串行总线上发送并接收周期性交换信息;——各从机根据主机发送的帧结构中的对应识别码与主机进行数据交换;——结束一次通信周期过程。
其中主机发送的帧结构包括同步段、功能段、数据段、结束段;——同步段为持续一定时间的逻辑值=1的时钟信号,宽度设定为W1=a*T,T为总线定时的基准信号周期,a为整数,且a≥1;用于表示一个通信周期的开始,由主机发出,连接在总线上的所有从机在检测到同步信号后,开始一个新的通信周期;——功能段为事先定义好的总线命令,由主机发出,所有的从机都会接收和响应;功能段的宽度设定为W2=b*T,b为整数,且b≥1,宽度系数b代表功能段所占用的数据位的多少;——数据段用于完成主机与从机之间的数据交换,包括N个子数据段,每个子数据段与一个从机的地址对应,通信从机个数的最大值为N=2n,n为从机地址码的宽度;子数据段包括主机发送给从机的c位数据和校验位以及从机发送给主机的c位数据和校验位两部分;单个子数据段的宽度W3=2(c+1)*T,c为整数,且c≥1,整数c代表主机与从机之间每次数据交换的数据位数;——结束段表示一次通信周期的结束,由主机发出的逻辑值=0的时钟信号,宽度W5=d*T,d为整数,且d≥1;
一种带时钟信号的半双工串行总线通信系统,包括主机、从机、串行通信总线,串行通信总线包括电源线、公共地线、数据线和时钟线4根导线,串行通信总线两端分别连接终端电路,主机与从机分别通过接口电路接入串行通信总线上。
本发明的优点和积极效果1)本通信系统的网络结构是共享式串行总线,总线中包括时钟信号和数据信号;2)本通信系统由多个通信接点控制器构成;3)本通信系统中有且只有一个通信主机;4)本通信系统中可以有一个或多个通信从机,每个从机有唯一的地址号作为从机的识别码;5)本通信系统中主机与从机之间采用带有时钟信号的同步传输协议。6)本通信系统采用半双工式的数据通信。7)本通信系统中的数据通信的发起和结束由主机控制。8)总线上的通信是周期性的,接点间的通信延迟是确定的。9)每个通信周期中,主机可以与全部从机交换数据。10)总线上传输的信息格式是二进制的0、1比特流。11)总线上传输的二进制数据的实时性有保证,适合工业控制需要。

图1、带时钟信号的半双工串行总线通信系统结构示意图;图2、帧结构示意图;图3、主机通信工作流程图;图4、功能码发送流程图;图5、主机依次执行与每个从机的数据发送与接收流程图;图6、子数据段的工作流程图;图7、从机i通信工作流程图;图8、从机接收功能码流程图;图9、从机i的寻址过程流程图;图10、从机i与主机交换数据过程的流程图;图11、串行总线接口电路;图12、主机控制器原理图;图13、从机控制器原理图。
图14、从机外部接口电路图;图15、本发明在电梯外部输入输出信号中的应用框图。
具体实施方式实施例1带时钟信号的半双工串行总线通信方法如图1~10所示,本发明主要阐述现场总线的数据链路层的通信协议,对于底层物理层硬件电路的设计原理没有明确的规定,即使用本通信协议的人员可以使用不同的方法来实现硬件电路的设计。
同样本发明对上层的协议没有明确的规定,即使用本通信协议的人员可以根据实际使用的情况来定义总线上传输的数据的含义。
本发明通信系统结构如图1所示,其通信方法包括第一、定义(一)串行总线信号的定义基本时钟周期总线定时的基准信号,它的周期设定为T,并且规定前半周期为逻辑值0,后半周期为逻辑值1。
串行总线中包括两个脉冲信号时钟信号和数据信号;时钟信号时钟信号有两个基本功能产生总线的同步信号和串行数据的移位脉冲。
总线上的时钟信号的实际周期是变化的,但是它的大小是基本时钟周期T的整数倍。
数据信号表示串行数据的逻辑值是1,还是0;(二)串行总线通信周期(帧)结构的定义串行总线上的通信是按(帧)周期性的进行组织的,见图2。
帧结构同步段、功能段、数据段、结束段。1)同步段持续一定时间的逻辑值=1的时钟信号,它的宽度设定为W1=a*T,(a为整数,且a≥1)。同步段的功能表示一个通信周期的开始,由主机发出,连接在总线上的所有从机在检测到同步信号后,复位串行数据移位计数器C,开始一个新的通信周期。
2)功能段事先定义好的一些总线命令,它是由主机发出的,所有的从机都会接收和响应的。例如,从机正常运行命令、从机紧急停止命令、从机复位命令、从机测试命令等等。
功能段的宽度设定为W2=b*T,(b为整数,且b≥1)。宽度系数b的大小代表了功能段所占用的数据位的多少,也就代表了功能段所能够定义功能的多少。,3)数据段完成主机与从机之间的数据交换,包括若干个子数据段,每个子数据段与一个从机的地址对应。
子数据段包括主机发送给从机的c位数据及校验位和从机发送给主机的c位数据及校验位两部分。
单个子数据段的宽度W3=((c+1)+(c+1))*T=2(c+1)*T,(c为整数,且c≥1),整数c的大小代表了主机与从机之间每次数据交换的数据位多少,例如c=8,表示总线上数据的宽度是8位。
数据子段的数目N等于从机的数目,从机的数目决定于从机地址码的宽度,从机地址码采用二进制编码,因此N=2n,例如2位地址码对应的从机数目最多为4,3位地址码对应的从机数目最多为8,依次类推,8位地址码对应的从机数目最多为256等等。
校验位可以三种校验方式偶校验、奇校验、无校验。
主机数据校验对主机发送给从机的数据进行奇偶校验。
从机数据校验对从机发送给主机的数据进行奇偶校验。
数据段的宽度W4=N*W3=(2n)*W3,其中n表示从机地址码的宽度。
4)结束段表示一次通信周期的结束,由主机发出的宽度为W5的逻辑值=0的时钟信号。设定结束段的宽度W5=d*T,(d为整数,且d≥1)。
第二、工作过程——包括两部分主机通信流程和从机通信流程。
(一)串行总线上主机通信算法(见图3)1)同步段主机在时钟信号线上持续输出逻辑值为1的信号。同时启动内部定时器t1,比较t1与设定的同步段宽度值W1的大小关系,直到t1=W1,表示同步信号有效。
同步信号完成后,时钟信号切换为逻辑值0。
在同步阶段,总线上的数据信号保持为逻辑值0。
2)功能段主机发送功能码阶段,总线上的时钟信号周期=基本时钟周期,即时钟信号线上是固定周期T的脉冲信号。主机功能码发送流程,见图4。
功能码是按照由低位到高位的顺序发送的。每个时钟周期发送1位。因此数据宽度为b的功能代码,发送过程要持续b个时钟周期。
3)数据段在数据段完成主机与从机之间的数据交换,主机对于总线上的多个从机的寻址方式是依靠从机地址号来识别的,见图5。
在每个通信周期中,主机按照从机地址号的顺序依次执行与每个从机的数据发送与接收,在本通信系统中有多少个从机,就有多少个子数据段。因此在一次通信周期中主机重复执行子数据段的操作,直到与全部从机都完成数据的交换。
在子数据段中,分为主机发送给从机i(i表示从机地址号,为整数,且N≥i≥1)的c位数据及校验位和接收从机i发送的c位数据及校验位两部分,见图7。
4)结束段主机在时钟信号线上持续输出逻辑值为0的信号。同时启动内部定时器t2,比较t1与设定的结束段宽度值W5的大小关系,直到t2=W5,表示结束信号有效。
在结束段,总线上的数据信号保持为逻辑值0。
(二)串行总线上从机通信算法
连接在总线上的多个从机按照通信协议与主机进行通信。从机i通信工作流程,见图6。
1)同步段从机检测到时钟信号线上逻辑值为1的信号。同时启动内部定时器t3,记录时钟信号保持为逻辑值1的时间,比较t3与设定的同步信号宽度值W1的大小关系,如果t1≥W1,表示同步信号有效。
2)功能段串行总线上的所有从机在检测到有效的同步时钟信号后,当时钟信号由逻辑值1切换到逻辑值0时,自动进入接收功能码阶段。
由主机发出的功能码不区分从机的地址号码,而是面对所有连接在总线上的从机的,因此,所有从机接收相同的功能码,从机接收功能码后,执行相同的操作。
从机接收功能码流程,见图8。
3)数据段在进入数据段后,从机开始记录串行时钟脉冲的计数值C1,与本身的地址号i比较,并以此判断主机是否与本从机交换数据。这样的地址判断过程,我们称为从机地址寻址过程。
地址号为i的从机寻址过程见图9(i表示从机地址号,为整数,且N≥i≥1)。
如果本机地址号与被寻址从机号相同,那么本从机将执行数据的接收和发送操作。地址号为i的从机与主机交换数据的过程如图10。
4)结束段从机检测到时钟信号线上逻辑值为0的信号。同时启动内部定时器t4,记录时钟信号保持为逻辑值0的时间,比较t4与设定的结束信号宽度值W5的大小关系,如果t4≥W5,表示结束信号有效。
实施例2、带时钟信号的半双工串行总线通信系统一)本发明设计的串行总线通信系统装置的构成,参见图1。
1)四线制,即两对非屏蔽双绞线,定义如下1号线第一对双绞线的第一根线直流电源+24V;2号线第一对双绞线的第二根线直流电源地,即0V;3号线第二对双绞线的第一根线串行时钟信号SCLK;4号线第二对双绞线的第二根线串行数据信号SDAT;2)总线电源为连接在总线上的通信接点提供工作电源。
3)终端电路在总线中传输的信号是数字量,为防止信号在电路终端发生反射,造成干扰,可以使用终端吸收电路来抑制信号在电路终端发生反射。常见的终端电路可以用电阻充当,比如阻值为120欧的电阻基本上可以起到终端吸收的作用。
二)本发明设计的串行总线接口电路,参见图11。
串行总线接口电路包括两部分串行通信发送信号转换电路、串行通信接收信号转换电路。
串行总线接口电路功能为提高传输的距离和可靠性,串行总线上的时钟和数据信号的传送格式是差分形式。通常要传递一个差分信号需要两根线路来形成一个电流环路,例如RS485标准就是这样规定的。如果这样,本发明中的时钟和数据信号要实现差分传输,就必须用四根线路来构成两个电流回路。
为此,本发明设计了专用的串行总线接口电路,它的特点是在一对双绞线路上完成两个差分信号的传输。它的工作原理是时钟信号和数据信号交替传输,时钟信号和数据信号相互作为比较基准,可以消除共模干扰造成的信号电压浮动。
本发明中的主机控制器和从机控制器所使用的串行接口电路就是按照上述原则设计的。
三)主机控制器原理图,参见图12。
主机控制器组成通信协议处理器、串行通信发送信号转换电路、串行通信接收信号转换电路、电源转换电路。其中通信协议处理器是主机控制器的核心部分,它通常是一个带固化程序的微处理器或单片机,按照本发明设计的串行通信协议对发送和接收的数据信息进行处理和存储。
主机控制器功能通过并行数据总线与中央控制器(例如电梯控制器的电脑板、其它应用中系统原有的可编程序控制器等等)交换数据,这里的并行数据总线包括四个主机输出的信号E1OUT、E2OUT、E3OUT、E4OUT,四个主机输入的信号E5IN、E6IN、E7IN、E8IN。主机控制器将中央处理器发送来的并行数据,通过主机内的协议处理,转换成串行数据发送到串行总线上去,传送给总线上的指定的从机。主机控制器将串行总线上从机发送来的串行数据,通过主机内的协议处理,转换成并行数据发送到并行总线上,传送给中央控制器。
四)从机控制器原理图,参见图13。
从机控制器组成与主机控制器的组成相同,不同点是从机的通信协议处理器中的固化程序。从机通信协议处理器中固化的是本发明设计的从机通信协议。
从机控制器功能通过并行数据总线与外部接口电路(例如电梯的大厅呼梯按钮指示灯、其它应用中的开关信号等等)交换数据,这里的并行数据总线包括四个从机输出的信号E1B、E2B、E3B、E4B,四个主机输入的信号E5B、E6B、E7B、E8B。从机控制器将外部接口电路发送来的并行数据,通过从机内的协议处理,转换成串行数据发送到串行总线上去,传送给总线上的主机。从机控制器将串行总线上主机发送来的串行数据,通过从机内的协议处理,转换成并行数据发送到并行总线上,传送给外部接口电路。
五)从机的外部接口电路,参见图14。
从机外部接口电路组成输出驱动电路和输入采集电路。输出驱动电路用于驱动外部执行器件,如指示灯、继电器、接触器等等,输出驱动电路主要由三极管9013完成信号灯的驱动。输入采集电路使用电阻分压电路完成输入信号的采集,并传送给从机。
从机外部接口电路功能将从机控制器输入输出的信号进行电平转换,以适应从机控制和外部实际控制信号的需要。本实例设计的电路是电梯大厅呼梯按钮指示电路,可以完成四个按钮信号的输入和四个指示灯信号的输出。
实施例3、本发明在电梯外部信号控制中的应用本发明在电梯外部输入输出信号中的应用框图,参见图15。
通常一部电梯有多个楼层(用整数M表示,M≥2),每个楼层大厅有一些输入或输出信号,例如在最低层有上行呼梯按钮和指示器(称为外呼按钮指示器)、消防开关、锁梯开关等,在中间层有上行/下行呼梯按钮和指示器,在最高层有下行呼梯按钮和指示器等。
与电梯楼层数目M相对应,电梯的轿厢内操纵盘上有M个内选按钮和指示器。
电梯在运行时需要连续采集和更新外呼和内选信号,因为这些信号都是离散开关信号,如果使用传统的接线方式,每个按钮指示器至少接2根信号线,M层的电梯共计有M个内选按钮和(M-2)*2+2个外呼按钮,那么需要从电梯控制柜中并行引出至少2M+(M-2)*4+4=6M-4根信号线,当楼层数目M较大时(通常M≥10),所需的信号线数量明显增大,布线工艺复杂,稳定性差,维护难度加大。
对于这种情况使用本发明设计的串行通信系统,只需要从电梯控制柜引两组串行总线,其中一组接电梯轿厢内选,另一组去楼层外呼,可以明显简化布线工艺,提高信号传输的稳定性,方便运行维护。
权利要求
1.一种带时钟信号的半双工串行总线通信方法,其特征是该方法包括以下步骤——确定用于通信的共享式串行总线;——确定共享式串行总线上接入的N个通信从机中的每个从机以地址号作为从机唯一的识别码,其中N为整数,且N≥1;——由通信主机按帧结构向串行总线上发送并接收周期性交换信息;——各从机根据主机发送的帧结构中的对应识别码与主机进行数据交换;——结束一次通信周期过程。
2.根据权利要求1所述的带时钟信号的半双工串行总线通信方法,其特征是主机发送的帧结构包括同步段、功能段、数据段、结束段;其中——同步段为持续一定时间的逻辑值=1的时钟信号,宽度设定为W1=a*T,T为总线定时的基准信号周期,a为整数,且a≥1;用于表示一个通信周期的开始,由主机发出,连接在总线上的所有从机在检测到同步信号后,开始一个新的通信周期;——功能段为事先定义好的总线命令,由主机发出,所有的从机都会接收和响应;功能段的宽度设定为W2=b*T,b为整数,且b≥1,宽度系数b代表功能段所占用的数据位的多少;——数据段用于完成主机与从机之间的数据交换,包括N个子数据段,每个子数据段与一个从机的地址对应;子数据段包括主机发送给从机的c位数据和校验位以及从机发送给主机的c位数据和校验位两部分;单个子数据段的宽度W3=2(c+1)*T,c为整数,且c≥1,整数c代表主机与从机之间每次数据交换的数据位数;——结束段表示一次通信周期的结束,由主机发出的逻辑值=0的时钟信号,宽度W5=d*T,d为整数,且d≥1;
3.根据权利要求1或2所述的通信方法,其特征是通信从机个数的最大值为N=2n,n为从机地址码的宽度。
4.一种带时钟信号的半双工串行总线通信系统,包括主机、从机、串行通信总线,其特征是串行通信总线包括电源线、公共地线、数据线和时钟线4根导线,串行通信总线两端分别连接终端电路,主机与从机分别通过串行总线接口电路接入串行通信总线上。
5.根据权利要求4所述的半双工串行总线通信系统,其特征是串行总线接口电路包括串行通信发送信号转换电路和串行通信接收信号转换电路两部分,发送转换电路的输入端和接收转换电路的输出端分别连接主机或从机,发送转换电路的输出端和接收转换电路的输入端分别连接串行总线。
6.根据权利要求4或5所述的半双工串行总线通信系统,其特征是主机控制器包括通信协议处理器——用于将外部控制中央处理器发送来的并行数据,转换成串行数据发送到串行总线上去,传送给总线上的指定的从机,以及将串行总线上从机发送来的串行数据,转换成并行数据发送到并行总线上,传送给中央控制器;串行通信发送信号转换电路——用于将通信协议处理器发送的串行数据发送到串行总线上去;串行通信接收信号转换电路——用于接收串行总线上从机发送来的串行数据,并送入通信协议处理器;电源转换电路——用于提供各部分所需的电源。
7.根据权利要求4或5所述的半双工串行总线通信系统,其特征是从机控制器包括通信协议处理器——用于将串行总线上主机发送来的串行数据,转换成并行数据发送到外部并行总线上,通过外部接口电路传送给外部应用单元,以及将外部应用单元发送来的并行数据,转换成串行数据发送到串行总线上,传送给总线上的主机;串行通信接收信号转换电路——用于接收串行总线上主机发送来的串行数据,并送入从机通信协议处理器;串行通信发送信号转换电路——用于将通信协议处理器发送的串行数据发送到串行总线上去;电源转换电路——用于提供各部分所需的电源。
8.根据权利要求7所述的半双工串行总线通信系统,其特征是从机的外部接口电路包括输出驱动电路用于驱动外部执行器件;和输入采集电路,用于完成输入信号的采集并传送给从机。
全文摘要
本发明涉及一种小型工业控制网络的通信系统及其方法。带时钟信号的半双工串行总线通信系统,包括主机、从机、串行通信总线,串行通信总线包括电源线、公共地线、数据线和时钟线4根导线,串行通信总线两端分别连接终端电路,主机与从机分别通过接口电路接入串行通信总线上。其通信方法是确定共享式串行总线上接入的N个通信从机中的每个从机以地址号作为从机唯一的识别码;由通信主机按帧结构向串行总线上发送并接收周期性交换信息;各从机根据主机发送的帧结构中的对应识别码与主机进行数据交换。本通信系统采用半双工式的数据通信,数据通信的发起和结束由主机控制,并可与全部从机交换数据,其通信是周期性的,接点间的通信延迟星确定的。
文档编号H04L5/16GK1662008SQ20041007234
公开日2005年8月31日 申请日期2004年10月20日 优先权日2004年10月20日
发明者张德军, 张德民 申请人:天津市英克瑞电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1