如何監(jiān)控RS485網(wǎng)絡(luò)環(huán)境
壹:前言
在現(xiàn)實(shí)生活環(huán)境中,我們可能要用到很多的攝像頭來(lái)實(shí)時(shí)監(jiān)控環(huán)境以及記錄影像。于是在某些情況下,我們事后就可以回播影像記錄來(lái)還原某些事件發(fā)生時(shí)的情形。
在工業(yè)控制環(huán)境中,RS485是一種相當(dāng)普遍的數(shù)據(jù)傳輸方式。這些數(shù)據(jù)可能是下達(dá)給某個(gè)設(shè)備的控制命令,也可能是某個(gè)設(shè)備所回傳的監(jiān)控狀態(tài)(溫度、壓力、濕度、氧氣濃度…等)。如果我們可以實(shí)時(shí)的監(jiān)看及記錄RS485網(wǎng)絡(luò)上面的數(shù)據(jù)傳輸狀態(tài),則如果整個(gè)控制環(huán)境出現(xiàn)某些異常,我們也可以對(duì)這些被記錄的數(shù)據(jù)進(jìn)行解析,來(lái)找出可能的原因。是因?yàn)槊畎l(fā)送錯(cuò)誤,還是狀態(tài)回報(bào)錯(cuò)誤造成誤判,或是其它原因造成問(wèn)題。擁有這個(gè)能力對(duì)于判斷事件可能發(fā)生的原因會(huì)有極大的幫助,對(duì)于系統(tǒng)提升可靠度有相當(dāng)大的幫助。本文將介紹幾種瑞旺科技的產(chǎn)品來(lái)幫助大家來(lái)達(dá)成這個(gè)工作。
貳:TWIN485盒的使用
1. 在TWIN485盒的橋接式模式底下,我們可以把兩個(gè)RS485網(wǎng)絡(luò)進(jìn)行信號(hào)橋接工作,而此時(shí)所有RS485網(wǎng)絡(luò)的數(shù)據(jù)可以送到RS232串口上面。只要我們監(jiān)控及記錄RS232串口上面的數(shù)據(jù)(例如PC的COM1串口與TWIN485盒的RS232串口連接,并且在PC上面執(zhí)行瑞旺科技所提供的免費(fèi)RAYMON軟件就可以實(shí)時(shí)顯示接受到的數(shù)據(jù)并且貯存之)。
2. 由于瑞旺科技提供RAYMON的源程序,任何使用者可以依據(jù)自己的應(yīng)用需求自行修改源程序來(lái)符合自己專用的應(yīng)用環(huán)境。
參:ULOG485盒的使用
1. 在ULOG485盒,我們提供有兩組RS232對(duì)地電位隔離RS422/485界面轉(zhuǎn)換器。同時(shí)經(jīng)由USB電纜連接,我們可以在PC上面產(chǎn)生4個(gè)串口,所有在RS232接口或RS485接口所接收的數(shù)據(jù)都會(huì)傳到USB串口上面。于是我們只要監(jiān)控及記錄這些USB串口的接收資料就可以知道RS485網(wǎng)絡(luò)的工作情形。
2. 在一些RS232設(shè)備必須利用RS232對(duì)RS485界面轉(zhuǎn)換器才可以連上RS485網(wǎng)絡(luò)的應(yīng)用環(huán)境,我們可以同時(shí)紀(jì)錄RS232端及RS485端的數(shù)據(jù)傳輸狀態(tài)。
3. 瑞旺科技提供有免費(fèi)的RAYREAL軟件,這個(gè)軟件可以顯示在不同時(shí)間點(diǎn)上面兩個(gè)COM端口的接收數(shù)據(jù)。當(dāng)我們?cè)谄渲幸粋€(gè)COM端口接收RS232界面端的數(shù)據(jù),另一個(gè)COM端口接收RS485界面端的數(shù)據(jù),則我們就可以看到RS232界面端設(shè)備與RS485界面端設(shè)備的對(duì)話過(guò)程。這就好像兩個(gè)人的電話交談過(guò)程,被電話錄音一樣。當(dāng)發(fā)生某些事件,我們可以由電話錄音來(lái)發(fā)現(xiàn)某些可能問(wèn)題所在。在一個(gè)RS485網(wǎng)絡(luò)控制環(huán)境中,如果出現(xiàn)某些異常,則我們可以經(jīng)由RS485網(wǎng)絡(luò)數(shù)據(jù)記錄的回播來(lái)解析可能的問(wèn)題原因。這就好像飛機(jī)的黑盒子一樣,如果飛機(jī)出現(xiàn)問(wèn)題,事后要找出可能原因,也是要依靠這個(gè)黑盒子來(lái)解析可能問(wèn)題所在。
4. 由于瑞旺科技提供RAYREAL軟件的全部源程序,使用者可以依據(jù)自己的應(yīng)用環(huán)境需求來(lái)修改源程序以符合自己的期望應(yīng)用。
5. 目前ULOG485提供兩組RS232對(duì)RS485轉(zhuǎn)換器功能,所以每一組RS232對(duì)RS485轉(zhuǎn)換器要有兩個(gè)COM端口來(lái)接收數(shù)據(jù)加以監(jiān)控及記錄。所以兩組轉(zhuǎn)換器共要有4個(gè)COM端口來(lái)工作。很幸運(yùn)的,我們只要利用USB電纜的連接就可以產(chǎn)生4個(gè)COM端口來(lái)完成工作。
肆:iLOG101盒的使用
1. 在iLOG101盒,我們提供有一組RS232對(duì)地電位隔離RS422/485界面轉(zhuǎn)換器。同時(shí)經(jīng)由IP網(wǎng)絡(luò)的連接,我們可以在遠(yuǎn)程連網(wǎng)的PC上面產(chǎn)生2個(gè)串口。所有在RS232接口或RS485接口所接收到的數(shù)據(jù)都會(huì)傳到IP網(wǎng)絡(luò)的串口上面。于是我們可以在遠(yuǎn)方利用IP網(wǎng)絡(luò)來(lái)監(jiān)控及記錄這些在RS485網(wǎng)絡(luò)的工作情形。
2. 所以在一些RS232設(shè)備必須利用RS232對(duì)RS485轉(zhuǎn)換器才可以連上RS485網(wǎng)絡(luò)的應(yīng)用環(huán)境,我們利用iLOG101盒就可以同時(shí)完成轉(zhuǎn)換器的功能,又可以同時(shí)紀(jì)錄RS232端口及RS485端口的數(shù)據(jù)傳輸狀態(tài)。而且利用IP網(wǎng)絡(luò),我們的監(jiān)控地點(diǎn)可以在任何IP網(wǎng)絡(luò)可到達(dá)的地方。特別是被監(jiān)控的RS485網(wǎng)絡(luò)環(huán)境如果是人類不適合長(zhǎng)期存在的地方,iLOG101盒更是******選擇。我們可以把數(shù)據(jù)如同影像或聲音一樣,實(shí)時(shí)監(jiān)控及紀(jì)錄。
3. 瑞旺科技提供免費(fèi)的RAYREAL軟件可以同時(shí)顯示及記錄兩個(gè)COM端口的資料,于是所有RS232設(shè)備與RS485網(wǎng)絡(luò)端的對(duì)話過(guò)程,都可以被我們掌握及記錄。而且利用iLOG101盒,所有的應(yīng)用環(huán)境都不必改變就可以達(dá)成所期望的監(jiān)控與紀(jì)錄工作。飛機(jī)的黑盒子只記錄在飛機(jī)上,事后才能尋找出黑盒子來(lái)解析。iLOG101盒則可以實(shí)時(shí)利用IP網(wǎng)絡(luò)來(lái)記錄。
伍:監(jiān)控的重要性
1. 當(dāng)我們的生活環(huán)境中,出現(xiàn)愈來(lái)愈多的影像攝像頭,希望可以盡快的發(fā)現(xiàn)問(wèn)題、解決問(wèn)題,或者在事件發(fā)生后可以經(jīng)由影像記錄來(lái)找出問(wèn)題。可是這些都是實(shí)體的影像功能。
2. 對(duì)于數(shù)據(jù)傳輸而言,我們無(wú)法像實(shí)體一樣來(lái)記錄嗎?即然我們?cè)趯?shí)體世界有必要用攝像頭來(lái)記錄,則我們當(dāng)然有必要對(duì)數(shù)據(jù)傳輸進(jìn)行記錄。
3. 在現(xiàn)代化的工業(yè)控制環(huán)境中,由于缺少對(duì)數(shù)據(jù)傳輸?shù)挠涗洠谑窃诔霈F(xiàn)控制異常時(shí)并不容易找出問(wèn)題所在。當(dāng)一個(gè)軟件程序因?yàn)槟承┻壿嬋笔В谡G闆r下,可能不會(huì)出錯(cuò),可是在符合特定環(huán)境條件下,可能就會(huì)送出錯(cuò)誤指令而造成巨大災(zāi)難。但是這些環(huán)境問(wèn)題要如何在事后找出原因呢?如果不找出原因,又如何保證以后不會(huì)發(fā)生呢?一個(gè)機(jī)器,一個(gè)零件是實(shí)體的東西,我們可能由事情發(fā)生后的殘骸來(lái)推論或發(fā)現(xiàn)其異常原因。但是軟件或者數(shù)據(jù)是看不到,摸不著的東西,如果我們不記錄數(shù)據(jù)傳輸?shù)膬?nèi)容,則要發(fā)現(xiàn)或推論其異常原因是不容易的。所以要提供系統(tǒng)的安全性,在未來(lái)一定要提供數(shù)據(jù)傳輸?shù)谋O(jiān)控功能。
陸:實(shí)際案例
1. 我們自己在DOS系統(tǒng)對(duì)兩個(gè)串口進(jìn)行控制。
2. 傳統(tǒng)上PCI卡是由主機(jī)板指定I/O地址空間給每個(gè)UART控制器,每個(gè)UART控制器會(huì)占有8字節(jié)空間。
3. 由于I/O地址是由主機(jī)板動(dòng)態(tài)給定其值,而且要在位?給予值1來(lái)指示此地址為I/O空間。所以我們的應(yīng)用軟件會(huì)在取得此值時(shí),把位?清為?以取得UART的真正起始地址。
IOADDR = IOMAP & 0xfffe;
4. 當(dāng)我們有一行程序誤打成
IOADDR = IOMAP & 0xfff0;
5. 在多年的使用過(guò)程中,我們都沒(méi)有出現(xiàn)問(wèn)題,直到有一天有人反應(yīng)某塊新主機(jī)板不能工作,可是相同PCI卡在所有其它主機(jī)板上面都沒(méi)有問(wèn)題。
6. 我們發(fā)現(xiàn)這塊有問(wèn)題的主機(jī)板給予UART的地址分別為0xfff1及0xfff9。大家可以發(fā)現(xiàn)經(jīng)過(guò)錯(cuò)誤的IOADDR=IOMAP & 0xfff0過(guò)程,則兩個(gè)UART的起始地址變成相同的0xfff0,而不是正確的0xfff0及0xfff8。
7. 現(xiàn)在大家可以了解為何軟件的問(wèn)題不容易找到的原因。因?yàn)樵趶V大的I/O地址空間中,主機(jī)板廠商給予I/O地址相當(dāng)寬松,雖然每個(gè)UART只要求8個(gè)字節(jié),可是主機(jī)板給不同的UART I/O地址時(shí)相鄰距離可能是256字節(jié),或者16字節(jié)以上我們都不會(huì)出問(wèn)題。在發(fā)現(xiàn)問(wèn)題的主機(jī)板上面,偏偏它就把16字節(jié)空間指定給兩個(gè)UART來(lái)使用。于是在我們有問(wèn)題的軟件程序行的邏輯動(dòng)作下,錯(cuò)誤就顯現(xiàn)了。如果沒(méi)有這件事情發(fā)生,我們可能也不會(huì)發(fā)現(xiàn)上述程序錯(cuò)誤,但大家也都工作的相安無(wú)事。