RS485多機加密通信
--武漢波仕電子
在同一條RS485總線中,只有密碼設置相同的2個RS485之間才可以通信,無需設置加密和解密軟件,只需跳線設置密碼。本文介紹如何利用波仕DIZ485地址轉換器的地址碼作為密碼可以實現多機之間的加密通信。
1、RS485多機加密通信的原理

RS485加密通信必須要用到波仕DIZ485地址串口轉換器。產品外形為DB-9/DB-9轉接盒大小,如圖,產品左邊為主串口,包括DB-9孔的RS-232口,和標明為A1、B1的RS485口。右邊為從串口,包括DB-9針的RS-232口,和標明為A2、B2的RS485口。左上側J2、J1、J0為波特率設置的跳線,右上側K2、K1、K0為地址編碼設置的跳線,下面中間為5V電源接線端子。主串口與從串口之間并不隔離,它們公用GND地線和+5V電源。
DIZ485通過跳線J2、J1、J0設置波特率,通過跳線K2、K1、K0設置密碼。 密碼值為K2K1K0的二進制數字或者等值的十進制數字。斷開=0,短路=1。
2、 如何進行RS485的加密和解密
波仕DIZ485本來是一種帶地址的RS232/RS485中繼轉換器,現在我們把DIZ485的地址當作密碼來使用。在同一條RS485總線中,只有密碼設置相同的2個RS485之間才可以通信
DIZ485 使用非常方便。首先根據用戶通信程序的波特率進行波特率設置,比如9600bps,則將J2斷開、J1短接、J0短接。然后設置本產品的密碼,比如設置密碼為1,則將K2斷開、K1斷開、K0短接。左側的A1、B1的RS485以及DB-9孔RS-232稱為“主串口”;右側A2、B2的RS485以及DB-9針RS-232稱為“從串口”。
通信規則:主串口數據=密碼串+從串口數據
如果主串口收到 ###1:1234567,那么密碼為1的產品的從串口發送出 1234567(密碼不是1的產品的從串口不發送任何數據),就是去幀頭。整個密碼串就是在K2、K1、K0跳線設置值的前面加3個井號(###)和后面加一個冒號(:)的英文字符。
通信規則:從串口數據=主串口數據—密碼串
如果地址為1的產品的從串口收到abcdefg ,則主串口發送出###1:abcdefg 就是加幀頭。
3、如何進行RS485多機加密通信的設置和接線

假設在上圖中,我們要實現主機1與從機1之間的加密通信,它們之間的數據無法被主機2和從機2收到。同樣,主機2與從機2之間的加密通信,它們之間的數據無法被主機1和從機1收到。
要做到這一點,必須主機1與從機1的密碼設為一樣,主機2與從機2的密碼設置為一樣。特別注意,主機1接到RS485總線的端子是位于右側的端子,從機1接到RS485總線的端子上位于左側的端子。同樣,主機2與從機2也是一個接右側端子、另外一個接左側端子。
在RS485總線中傳輸的數據均為帶有密碼的數據,這些密碼由從機加入(加密)而有相應的主機去除(解密)。DIZ485接受定制開發。超過8個地址要求的可以定制擴展地址編碼,最多可以達到32個。默認密碼為0、1、2、3、4、5、6、7、8、9、a、b、……、t、u、v。
|