一种自适应三种工业总线协议的工业总线系统的制作方法

文档序号:11561119阅读:249来源:国知局
一种自适应三种工业总线协议的工业总线系统的制造方法与工艺

本实用新型涉及工业总线领域,特别是涉及一种自适应三种工业总线协议的工业总线系统。



背景技术:

随着我国工业控制领域技术的不断发展,工业总线信号已成为工业设备之间进行通信的必不可少的途径。对于各种各样的工业总线协议,例如RS232、RS485、RS422等,一种设备可能具备多种工业总线协议,或者多种设备具备的工业总线协议各不相同,用户在把控制端与这些受控设备连接时,往往需要注意区分不同工业总线协议的连接,避免把不同的总线协议接到一起,但即使这样,也还存在接错的可能性,同时也影响了一定的操作便捷性。

因此,目前迫切需要开发出一种系统,其可以以单一接口的形式,兼容多种工业总线协议,并可自动识别工业总线协议的类型,将其转换为微控制器能识别的通用串行通信协议。由于采用了单一接口的形式,用户在接线时,可将不同工业总线协议的信号接到相同的端子上,完全避免了接线错误的可能性,并提升了操作便捷性。



技术实现要素:

鉴于现有技术存在的问题,本实用新型提供一种自适应三种工业总线协议的工业总线系统,可以自动识别RS232/485/422这三种工业总线协议的类型,将其转换为通用串行通信协议UART,供微控制器与受控工业设备通信使用;

所采用的技术方案是,一种可自适应三种工业总线的系统,包括微处理单元(101)、UART信号切换单元(102)、协议检测单元(103)、协议转换单元(104);所述的微处理单元(101)包括微处理器和电源管理模块,用于接收UART_RX信号,发送UART_TX信号,并接收来自协议检测单元(103)的协议检测信号,同时分别向UART信号切换单元(102)、协议检测单元(103)和协议转换单元(104)发送UART切换控制信号、协议检测单元控制信号和RS485收发控制信号;所述的UART信号切换单元(102),由多路选择器及其周边电路组成,用于接收来自微处理单元(101)的UART_TX信号,经来自微处理单元(101)的UART切换控制信号的控制,选择将其发送至协议转换单元(104)的UART-RS232转换器或UART-RS485转换器;同时接收来自协议转换单元(104)中UART-RS232转换器的UART_RX信号和UART-RS485转换器的UART_RX信号,经来自微处理单元(101)的UART切换控制信号的控制,选择二者之一发送至微处理单元(101);所述的协议检测单元(103),包括多路选择器和检测模块;检测模块接收来自DB9接口的未知信号A,经检测模块判断未知信号到底是RS232还是RS485信号后,输出协议检测信号至微处理单元(101);多路选择器接收来自DB9接口的未知信号A和未知信号B,受到来自微处理单元(101)的协议检测单元控制信号的控制,把未知信号A和未知信号B做为RS232协议的TX和RX信号与协议转换单元(104)的UART-RS232转换器连通,或者把未知信号A和未知信号B做为RS485协议的A和B信号与协议转换单元(104)的UART-RS485转换器连通;所述的协议转换单元(104),包括UART-RS232转换器和UART-RS485转换器;其中UART-RS232转换器接收来自协议检测单元(103)的RS232_RX信号,将其转换为UART_RX信号发送至微处理单元(101),同时接收来自微处理单元(101)的UART_TX信号,将其转换为RS232_TX信号发送至协议检测单元(103);UART-RS485转换器受到来自微处理单元(101)的RS485收发控制信号的控制,将来自微处理单元(101)的UART_TX信号转换为与协议检测单元(103)相连的RS485_A信号和B信号,也可将与协议检测单元(103)相连的RS485_A信号和B信号转换为UART_RX信号,发送至微处理单元(101)。

所述微处理单元(101)中的微处理器,接收来自协议检测单元(103)的test信号,test信号是协议检测单元(103)检测外部信号属于哪种协议后,输出的判断信号; UART_RX是UART信号切换单元(102)的输出信号,输入至微处理器,UART_TX 是微处理的输出信号,输入至UART信号切换单元(102);微处理器会输出两个协议检测单元控制信号SA0/SB0和SA1/SB1,输入至协议检测单元(103),用于控制协议检测单元(103)中的切换电路; DE是微处理输出的RS485收发控制信号,输入至协议转换单元(104);微处理器会输出两个UART切换控制信号S0和S1,输入至UART切换单元(102),用于控制UART切换单元(102)中的切换电路。

所述UART信号切换单元(102)使用2组4路多路选择器,UART_RXD_232和UART_TXD_232分别是来自协议转换单元(104)的UART-RS232转换芯片的UART_RX信号和发送至协议转换单元(104)的UART-RS232转换芯片的UART_TX信号,连接至此多路选择器;UART_RXD_485和UART_TXD_485分别是来自协议转换单元(104)的UART-RS485转换芯片的UART_RX信号和发送至协议转换单元(104)的UART-RS485转换芯片的UART_TX信号,连接至此多路选择器;此多路选择器的共用输入输出引脚,分别与发送至微处理单元(101)的UART_RX信号和来自微处理单元(101)的UART_TX信号连接;此多路选择器的逻辑选择输入引脚,分别连接来自微处理单元(101)的UART切换控制信号S0和S1。

所述的协议检测单元(103)包含接口模块、检测模块和多路选择器模块。

所述协议检测单元(103)接口模块的接口端子作为系统与外部设备通信的接口,为DB9形式,接口端子的第2引脚连接外部的未知信号A,它可以是RS232协议中的RX信号或RS485协议中的A信号;接口端子的第3引脚连接外部的未知信号B,它可以是RS232协议中的TX信号或RS485协议中的B信号;接口端子的第5引脚连接至地平面,接口端子的其他引脚均悬空。

所述协议检测单元(103)多路选择器模块使用双重4选1多路选择器,是MAXIM公司的MAX14778芯片,此芯片仅靠3~5.5V单电源供电,即可保证±25V峰峰值的信号无失真地输入输出;其第5引脚和第1引脚分别为多路选择器的公共端A和公共端B,分别连接接口端子上的未知信号A和未知信号B;此多路选择器的第6引脚、20引脚和第7引脚、19引脚分别为双向模拟端A0、B0和A1、B1,协议转换单元(104)中UART-RS232转换芯片的RS232_RX和RS232_TX信号,分别与此多路选择器的第6引脚、20引脚连接;协议转换单元(104)中UART-RS485转换芯片的信RS485_A和RS485_B信号,分别与此多路选择器的第7引脚、19引脚连接; SA0/SB0、SA1/SB1是来自微处理单元(101)的协议检测单元控制信号,此多路选择器的第11引脚和15引脚同时连接至SA0/SB0,第12引脚和14引脚同时连接至SA1/SB1。

所述协议检测单元(103)检测模块的具体电路为:因RS232/RS485/RS422信号电压范围为-12V~+12V,所以需要由电阻R7、R8、R9和晶体管Q1组成的高电平信号检测电路;晶体管Q1作为NPN型三极管,其基极B极连接至电阻R8和电阻R9的一端,电阻R8的另一端连接至权利要求4所述的接口端子的第2引脚,即未知信号A,电阻R9的另一端和晶体管Q1的发射极E极都连接至地平面,晶体管Q1的集电极C极连接至电阻R7的一端和检测信号test,电阻R7的另一端连接至3.3V,检测信号test连接至权利要求1所述的微处理单元(101)中的微处理器。

所述协议转换单元(104)的具体电路分为UART-RS232转换电路和UART-RS485转换电路;UART-RS232转换电路使用UART-RS232转换芯片,此芯片把与协议检测单元(103)连接的RS232_RX和RS232_TX信号和与UART切换单元(102)连接的UART_RX_232和 UART_TX_232信号进行相互转换;UART-RS485转换电路使用UART-RS485转换芯片,此芯片把与协议检测单元(103)连接的RS485_A和RS485_B信号和与UART切换单元(102)连接的UART_RX_485和 UART_TX_485信号进行相互转换,同时此芯片的接收信号使能端和发送信号使能端同时连接至来自微处理单元(101)的DE信号。

本实用新型的有益效果是,首创了以相同单一接口接线端子的形式连接工业总线信号,无需用户做任何辅助操作就能实现工业总线协议的自动识别和转换,进一步提升了用户的操作便捷性,有利于扩大工业控制领域的市场应用前景。

附图说明

图1为本发明的电路连接框图;

图2为本发明微处理单元的电路连接框图;

图3为本发明UART信号切换单元的电路连接框图;

图4为本发明协议检测单元的电路连接框图;

图5为本发明协议转换单元的UART-RS232转换器电路连接框图;

图6为本发明协议转换单元的UART-RS485转换器电路连接框图;

图7为本发明微处理单元的电路图;

图8为本发明UART信号切换单元的电路图;

图9为本发明协议检测单元的电路图;

图10为本发明协议转换单元的电路图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本实用新型作进一步的详细说明。

如图1至图10所示,一种自适应三种工业总线协议的工业总线系统,包括微处理单元101、UART信号切换单元102、协议检测单元103、协议转换单元104,微处理单元101分别与UART信号切换单元102、协议检测单元103和协议转换单元104连接,同时协议转换单元104分别与UART信号切换单元102和协议检测单元103连接,微处理单元101安装控制程序。

微处理单元101,包括微处理器和电源管理模块,微处理器可以选用STC公司的STC89C52,用于存储控制程序;电源管理模块可根据实际情况选用不同厂商的兼容型号芯。

UART信号切换单元102,由多路选择器及其周边电路组成;用于接收来自微处理单元101的UART_TX信号,经来自微处理单元101的UART切换控制信号的控制,选择将其发送至协议转换单元104的UART-RS232转换器或UART-RS485转换器;同时接收来自协议转换单元104中UART-RS232转换器的UART_RX信号和UART-RS485转换器的UART_RX信号,经来自微处理单元101的UART切换控制信号的控制,选择二者之一发送至微处理单元101;具体实现上,多路选择器可以选用NXP公司的74HC4052芯片或者其他支持至少2组2路信号输入的切换芯片;多路选择器由微处理单元101通过2个GPIO(通用输入输出)信号S0和S1进行控制。

协议检测单元103,包括多路选择器、协议检测模块和DB9端子;用于检测来自DB9接口的未知信号到底是RS232还是RS485信号,输出协议检测信号至微处理单元101,同时多路选择器受到来自微处理单元101的协议检测单元控制信号的控制,把未知信号作为RS232协议的TX和RX信号与协议转换单元104的UART-RS232转换器连通,或者把未知信号作为RS485协议的A和B信号与协议转换单元104的UART-RS485转换器连通;具体实现上,多路选择器可以选用MAXIM公司的MAX14778芯片或者其他可保证±25V峰峰值的信号无失真地输入输出的,且支持至少2组2路信号输入的切换芯片;晶体管Q1可以选用NXP公司的NPN型晶体管MMBT3904;DB9端子可以选用通用DB9端子或其他便于接线的端子;多路选择器由微处理单元通过2个GPIO(通用输入输出)信号SA0/SB0和SA1/SB1进行控制。

协议转换单元104,包括UART-RS232转换器和UART-RS485转换器;UART-RS232转换器用于把与协议检测单元103相连的RS232协议信号,转换为UART协议信号并发送至微处理单元101;UART-RS485转换器用于把与协议检测单元(103)相连的RS485协议信号,UART协议信号并发送至微处理单元101;具体实现上,UART-RS232转换器可以选用ST公司的ST232CTR芯片或其他相同的协议转换芯片,UART-RS485转换器可以选用TI公司的SN65HVD78D或其他相同的协议转换芯片。

参见图7,微处理单元的具体电路为:微处理器U3选用STC89C52芯片,其第6、9、10引脚是输入引脚,test是协议检测单元103的输出信号,输入至芯片STC89C52的第6引脚,UART_RX是UART信号切换单元102的输出信号,输入至芯片STC89C52的第10引脚,芯片STC89C52的第9引脚同时与电容C13的一端、电阻R19的一端连接,电阻R19的另一端接地,电容C13的另一端连接5V电源;芯片STC89C52的第1、2、5、11、21、22引脚是输出引脚,SA0/SB0、SA1/SB1是协议检测单元103的输入信号,分别与芯片STC89C52的第1、2引脚连接,DE是协议转换单元104的输入信号,与芯片STC89C52的第5引脚连接,UART_TX、S0、S1是UART切换单元102的输入信号,分别与芯片STC89C52的第11、21、22引脚连接;芯片STC89C52的第18、19引脚分别与晶振Y1的两端连接,第18引脚与电容C14的一端连接,电容C14的另一端接地,第19引脚的与电容C15的一端连接,电容C15的另一端接地;芯片STC89C52的第31引脚和第40引脚连接,第40引脚与电容C4连接,第40引脚与5V电源连接,电容C4接地;芯片STC89C52的其他引脚均悬空,没有任何连接;需要说明的是,电容C4和C13可以是耐压6.3V容量为100nF的贴片电容,电容C14和C15可以是耐压50V容量为20pF的贴片电容,电阻R19可以是5%精度4.7千欧姆的贴片电阻,晶振Y1可以是精度20ppm频率为11.0592MHz的贴片晶振。

参见图8,UART信号切换单元的具体电路为:集成电路芯片U4作为2组4路多路选择器,可以选用NXP公司的74HC4052芯片,其第12引脚、1引脚、14引脚、5引脚、15引脚、2引脚、11引脚、4引脚为独立输入输出引脚,其中第15引脚、2引脚、11引脚、4引脚为冗余引脚均悬空,UART_RXD_232和UART_TXD_232分别是来自协议转换单元104的UART-RS232转换芯片的UART_RX信号和发送至协议转换单元104的UART-RS232转换芯片的UART_TX信号,分别与集成电路芯片U4的第12引脚、1引脚连接;UART_RXD_485和UART_TXD_485分别是来自协议转换单元104的UART-RS485转换芯片的UART_RX信号和发送至协议转换单元104的UART-RS485转换芯片的UART_TX信号,分别与集成电路芯片U4的第14引脚、5引脚连接;集成电路芯片U4的第13引脚、3引脚为共用输入输出引脚,分别与发送至微处理单元101的UART_RX信号和来自微处理单元101的UART_TX信号连接;集成电路芯片U4的第7引脚、8引脚都连接至地平面;集成电路芯片U4的第6引脚串联电阻R18后连接至地平面;集成电路芯片U4的第10引脚、9引脚为逻辑选择输入引脚,分别连接来自微处理单元101的UART切换控制信号S0和S1;集成电路芯片U4的第16引脚为供电引脚,连接至3.3V,同时连接至滤波电容C11的一端,电容C11的另一端连接至地平面;需要说明的是,电容C11是耐压6.3V容量为100nF的贴片电容,用于过滤3.3V上的噪声,电阻R10、电阻R11和电阻R18可以是5%精度4.7千欧姆的贴片电阻,也可以适当减小或增大阻值。

参见图9,协议检测单元的具体电路为:接口模块的接口端子J1的第2引脚连接外部的未知信号A,它可以是RS232协议中的RX信号或RS485协议中的A信号;接口端子J1的第3引脚连接外部的未知信号B,它可以是RS232协议中的TX信号或RS485协议中的B信号;接口端子J1的第5引脚连接至地平面,接口端子J1的其他引脚均悬空;需要说明的是接口端子J1的形式可以为DB9形式,也可以是其他便于接线的端子,只要满足信号完整性即可。

协议检测单元的多路选择器模块中,集成电路芯片U2作为2组4路多路选择器,可以选用MAXIM公司的MAX14778芯片,此芯片仅靠3~5.5V单电源供电,即可保证±25V峰峰值的信号无失真地输入输出;其第5引脚和第1引脚分别为多路选择器的公共端A和公共端B,分别连接接口端子J1上的未知信号A和未知信号B;集成电路芯片U2的第6引脚、20引脚和第7引脚、19引脚分别为双向模拟端A0、B0和A1、B1,协议转换单元104中UART-RS232转换芯片的RS232_RX和RS232_TX信号,分别与集成电路芯片U2的第6引脚、20引脚连接;协议转换单元104中UART-RS485转换芯片的信RS485_A和RS485_B信号,分别与集成电路芯片U2的第7引脚、19引脚连接; SA0/SB0、SA1/SB1是来自微处理单元101的协议检测单元控制信号,集成电路芯片U2的第11引脚和15引脚同时连接至SA0/SB0,并通过电阻R2与3.3V电源相连,第12引脚和14引脚同时连接至SA1/SB1,并通过电阻R3与3.3V电源相连;集成电路芯片U2的第2引脚、4引脚分别为正负电荷泵输出引脚,还需串联旁路电容C8和C9到地平面,即电容C8和电容C9的一端分别连接至集成电路芯片U2的第2引脚、4引脚,另一端连接至地平面;集成电路芯片U2的第3引脚、21引脚都连接至地平面;集成电路芯片U2采用5V供电,所以集成电路芯片的第1引脚连接至5V,同时连接至电容C1的一端,电容C1的另一端连接至地平面;集成电路芯片U5的第10引脚、16引脚同时连接到电阻R1的一端,电阻R1的另一端连接至3.3V电源;需要说明的是,电容C8和电容C9是耐压50V容量100nF的贴片电容,电容C1为耐压6.3V容量1uF的贴片电容,用于过滤5V上的噪声,上拉电阻R1、R2、R3可以是5%精度4.7千欧姆的贴片电阻,且阻值可以适当减小或增大。

协议检测单元的检测模块中,因为RS232/RS485/RS422信号电压范围为-12V~+12V,所以需要由电阻R7、R8、R9和晶体管Q1组成的高电平信号检测电路;晶体管Q1作为NPN型三极管,可以选用NXP公司的MMBT3904,晶体管Q1的基极B极连接至电阻R8和电阻R9的一端,电阻R8的另一端连接至权利要求4所述的接口端子J1的第2引脚,即未知信号A,电阻R9的另一端和晶体管Q1的发射极E极都连接至地平面,晶体管Q1的集电极C极连接至电阻R7的一端和检测信号test,电阻R7的另一端连接至3.3V,检测信号test连接至权利要求1所述的微处理单元101的第6引脚;需要说明的是:电阻R7、R8、R9可以是5%精度10千欧姆的贴片电阻,且电阻值均可以适当减小或增大;晶体管Q1还可以是其他型号的NPN型三极管,只需电气参数满足要求即可。

参见图10,协议转换单元的具体电路为:UART-RS232转换电路采用的集成电路芯片U1为ST公司的ST232CTR芯片,其第11引脚、13引脚为信号的输入引脚,RS232_RX是协议检测单元103输出的信号,与第13引脚连接,UART_TX_232是UART切换单元102输出的信号,与第11引脚连接;集成电路芯片U1的第12引脚、14引脚为信号的输出引脚,UART_RX_232是UART切换单元102的输入信号,与集成电路芯片U1的第12引脚连接,RS232_TX是协议检测单元103的输入信号,与集成电路芯片U1的第14引脚连接;集成电路芯片U1的第1脚和第3脚分别连接电容C2的两端,第4脚和第5脚分别连接电容C3的两端,第2脚连接电容C6的一端,电容C6的另一端连接5V电源,第6脚连接电容C7的一端,电容C7的另一端接地,第16脚连接5V电源,同时连接电容C5的一端,电容C5的另一端接地,第15脚接地;需要说明的是,电容C2、C3、C5、C6和C7可以是耐压50V容量100nF的贴片电容。

协议转换单元的UART-RS485转换电路采用的集成电路芯片U5为TI公司的SN65HVD78D芯片,其第6引脚、第7引脚为RS485的差分信号,即RS485_A和RS485_B信号,其中RS485_B信号与电阻R13的一端连接,电阻R13的另一端与集成电路芯片U5第6脚连接,RS485_A信号与电阻R14的一端连接,电阻R14的另一端与集成电路芯片U5第7脚连接,RS485_A和RS485_B信号与协议检测单元103的多路选择器模块相连。集成电路芯片U5的第1引脚为信号的输出引脚,其与电阻R12的一端连接,电阻R12的另一端与UART_RX_485信号连接,UART_RX_485输入至UART切换单元102,集成电路芯片U5第4引脚为信号的输入引脚,其与电阻R16的一端连接,电阻R16的另一端与UART_TX_485信号连接,UART_TX_485来自UART切换单元102;集成电路芯片U5的第2引脚和第3引脚分别是接收信号使能端和发送信号使能端,这两个引脚同时与电阻R20的一端和R15的一端连接,电阻R20的另一端接地,电阻R15的另一端与DE信号连接,DE信号来自微处理单元101;需要说明的是,电阻R12、R15和R16可以是5%精度0欧姆的贴片电阻,阻值可适当增加,电阻R13和R14可以是5%精度10欧姆的贴片电阻,用于保护RS485信号对集成电路芯片U5的冲击,阻值可适当增加或减小,电阻R20可以是5%精度10千欧姆的贴片电阻,阻值可适当增大或减小,电容C12可以是耐压50V容量100nF的贴片电容,用于过滤3.3V上的噪声。

一种自适应三种工业总线协议的工业总线系统,其工作原理及切换流程如下:当在DB9接口的第2引脚上连接的未知信号A是RS232协议中的RX信号时,由于RS232协议中的RX信号在无数据传输时处于逻辑1状态,且RS232协议的逻辑1状态的电压值介于-3到-12V之间,因此三极管Q1的基极B极电压小于发射极E极电压,集电极C极无法与发射极E极导通,所以Q1的集电极C极为高电平,也就是test信号为逻辑1;集成电路芯片U3接收到逻辑1的test信号后,判断外部受控设备的通信总线为RS232协议,于是使其第1、2引脚变为低电平,即把SA0/SB0和SA1/SB1置为逻辑0,这样就能控制集成电路芯片U2把未知信号A和B切换至与RS232_RX和RS232_TX连通,从而连接至协议转换单元中的集成电路芯片U1,U1将RS232协议的信号转换为UART协议的信号;同时集成电路芯片U3使其第21、22引脚变为低电平,即把S0和S1置为逻辑0,这样就能控制集成电路芯片U4把与集成电路芯片U1连接的UART_RX_232和UART_TX_232信号切换至与UART_RX和UART_TX连通,从而连接至集成电路芯片U3微处理器,这样集成电路芯片U3微处理器就能识别外部受控设备的RS232协议信号了;

另一种情况下,当在DB9接口的第2引脚上连接的未知信号A是RS485协议中的A信号时,由于RS485协议中的A信号在无数据传输时,其电压值通常介于+1到+12V之间,因此三极管Q1的基极B极电压大于发射极E极电压,集电极C极则与发射极E极导通,所以Q1的集电极C极为低电平,也就是test信号为逻辑0;集成电路芯片U3接收到逻辑0的test信号后,判断外部受控设备的通信总线为RS485协议,于是使其第1引脚变为高电平,第2引脚变为低电平,即把SA0/SB0置为逻辑1,把SA1/SB1置为逻辑0,这样就能控制集成电路芯片U2把未知信号A和B切换至与RS485_A和RS485_B连通,从而连接至协议转换单元中的集成电路芯片U5,U5将RS485协议的信号转换为UART协议的信号;同时集成电路芯片U3使其第21引脚变为高电平,第22引脚变为低电平,即把S0置为逻辑1,把S1置为逻辑0,这样就能控制集成电路芯片U4把与集成电路芯片U5连接的UART_RX_485和UART_TX_485信号切换至与UART_RX和UART_TX连通,从而连接至集成电路芯片U3微处理器,这样集成电路芯片U3微处理器就能识别外部受控设备的RS485协议信号了。

关于RS422协议的自适应,因为RS422协议的信号电压规格与RS485协议相同,但信号线数量比RS485协议多了2个,因此只需在本系统的DB9接口上再接入两个信号,同时再增加一个UART-RS485转换器及相应的检测电路,即可兼容RS422协议,由于工作原理和切换流程与上述流程类似,在此不赘述。

综上所述,与现有产品和技术相比较,当用户把不同受控设备的工业总线通信信号接到本系统对外端口的相同引脚上时,本系统的协议检测单元会自动检测出受控工业设备的工业总线协议类型,把检测信号传送给微处理单元,微处理单元再控制UART信号切换单元、协议检测单元和协议转换单元,进行相应的协议转换和UART信号切换工作;本发明首创了以单一接口相同接线端子的形式连接工业总线信号,并根据不同工业总线协议的规范设计了工业总线协议识别电路,且无需用户做任何辅助操作就能实现工业总线协议的自动识别和转换,进一步提升了用户的操作便捷性,有利于扩大工业控制领域的市场应用前景,从而具有重大的生产实践意义,无论在技术领域还是操作领域都给用户带来了较好的体验。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1