基于調制解調器與vb的plc遠程通訊系統設計
1引言
隨著計算機和通訊技術的發展,在工業測量和控制中廣泛需要遠程通訊。遠端plc等下位機做生產控制,本地計算機需要實時監測或參與控制生產現場的參數。實現以上要求的一個簡便的途徑是利用覆蓋面廣泛的公用電話網,使plc等下位機利用調制解調器(modem)和計算機的調制解調器連接通訊,即可完成硬件上的連接。如圖1所示。在軟件方面,由遠端下位機軟件控制和遠程監控站軟件兩部分組成。考慮到本地監控站軟件只做數據監測或少許控制且編程相對簡單,所以本地監控站的編程軟件可以直接用高級語言。
2系統概述
本文以一個實際的小水電站的瀉水閘門程控工程為例,著重敘述永宏plc和pc做遠程通訊的實現細節。系統的下位機控制采用永宏公司的fbs系列plc對水庫瀉水閘門進行開度檢測和開度控制,監控站的界面編程采用vb6.0編寫。
硬件配置:遠端fbs-cb25+ fbs-10mau+ecom外置modem+pws1711
本地pc(含普通內置modem)
該系統主要控制要求,通過fbs-10ma外接一個旋轉編碼器檢測閘門所在位置,然后跟據現場人機界面或者pc端(下游5km處)的設定位置來控制牽引閘門的馬達正反轉,從而使閘門上升或下降到指定的位置。fbs-cb25所擴展得到的通訊口2(rs485)用于pws1711的通訊,通訊口1(rs232)用于連接modem,另外,主機上的可usb口用于連接調試用的筆記本電腦。
圖1系統組成
3調制解調器工作方式和設定
3.1 調制解調器工作原理
調制解調器分成兩種模式,命令模式和聯機模式。當調制解調器沒有和其它設備連接時,其處于命令模式,這時下達給調制解調器的指令時作調制解調器本身設定或者動作用的。當調制解調器已經和其它的設備連接上時,此時調制解調就是處于聯機模式,所有在此時由計算機送到調制解調器的訊息都將由經電話線傳送到其它設備上。
用于控制調制解調器的特定指令集被稱為“at指令集”,通過該指令集,從 基本的音量控制到內建參數設置的改變,都可以由vb經過串行端口而對調制解調器下達控制指令。at命令集是調制解調器通訊接口的工業標準。所有的at命令都以字符at開始,作為前綴。前綴at用以引起調制解調器的注意(attention)檢測計算機串行通訊口發送信號的速率,識別字符格式,包括字符長度和奇偶設定等。
調制解調器撥號之后,等待對方調制解調器送來的載波信號。如果在一給定時間內沒有檢測到載波, 調制解調器自動釋放線路并送回結果碼nocarrier,如果檢測到載波信號, 調制解調器即送結果碼connect + 波特率,就進入聯機狀態,即可與遠方系統進行通訊。
3.2 plc連接調制解調器原理及其設置
在該系統中, pc做為主站,必須控制調制解調器主動撥號,另外,在確認調制解調器和plc的調制解調器聯機成功后控制它進入聯機模式,開始存取plc數據。主站控制調制解調器撥號連接細節見下節,這里詳述plc端對調制解調器的設置方法。
plc端plc上電后必須初始化調制解調器,設置成自動應答來電狀態。在這里把plc初始化調制解調器的at指令組合稱為“modem驅動程序”。永宏plc通過port1來控制調制解調器,并把這種軟件界面稱為調制解調器專用界面。如圖2設定或者設定特殊暫存器r4149的高八位為55h就可以把port1設置為調制解調器專用界面,在該界面下plc會啟用“modem驅動程序”,此時,雖cpu仍然使用永宏〝標準通訊驅動程序〞來管理port1的通訊,但必須通過調制解調器來聯機,在通訊進行前,por t1主控權是交由〝modem驅動程序〞管理,此時無法對plc作任何存取動作。“modem驅動程序”即將調制解調器設為接收模式,并等待遠方調制解調器撥號進來,一旦收發雙方調制解調器聯機成功,則plc立即脫離接收模式,而進入聯機狀態,port1控制權交由永宏〝標準通訊驅動程序〞管理。此時遠方調制解調器便可任意存取或控制此plc主機了。
圖2 本地調制解調器設置
調制解調器設置如圖2所示,在plc聯機狀態下,選取菜單中的“plc”→“設定”→“port1設定”來到圖2,選擇單選框的第二項“透過modem作遠程cpu_bbbb”,該plc一上電就通過自帶的“modem驅動程序”把port1設置為調制解調器專用界面。另外,通訊格式設置為同調制解調器相同的n,8,1,為提高通訊效率可以把通訊速率設置為38400bps,或者更高( 高為115200bps)。