袁邵祎 曾文 胡彬


摘 要:本文介紹了一種實用簡單的RS-232光電隔離通訊接口設計方法,通過光電耦合器對信號進行濾波,實現防干擾能力;并設計出一個AT89C2051單片機和PC機通訊的硬件連接電路、完整的通訊協議和軟件設計流程,最后在實現在云臺控制器上應用的實例。
關鍵詞:光電隔離;通信;RS-232;云臺
RS-232是EIA(美國電子工業協會)在上世紀60年代設計的一種串行通訊接口標準,一直廣泛應用于通訊領域[ 1 ]。然而,面對復雜多變的電氣環境,RS-232通信極不穩定,受環境干擾大;而且RS-232通信距離也不是很長。為了提高通信的抗干擾能力,本設計在RS-232通信模塊中添加光電隔離技術,實現電氣隔離,對信號進行過濾處理。本文將RS-232串行通信接口應用于云臺控制器上進行實例檢測應用,詳細介紹如何利用MAX232串行通信接口芯片給AT89C2051單片機進行光電隔離RS-232串行接口通訊[ 2 ]。
1 設計目標
本文的目標是設計一個當下實際通訊應用下開放、通用的系統,因此采用了通用通訊標準去設計方案。本設計的目的是實現基于RS-232總線上的數據通訊與控制的系統,利用單片機對數據采集而后進行處理控制。可采集電壓、電流、脈沖等信號,即收集即將輸入云臺各種數據信號,送給光耦對信號進行篩選,再將信號提供給單片機,單片機根據光耦過濾的信號對外部裝置發出相應指令(單片機程序設計好的),從而實現對裝置的控制。
技術指標要求:(1)工作電源,輸入電壓5V直流±10%,電流不大于300mA。(2)通迅接口符合RS232電平標準,波特率高達250KB。(3)兩路獨立RS-232通迅,輸入、輸出間電路相互間隔離,兩路輸入端地相互間隔離,兩路輸出端地相互間隔離,通迅地與工作電源地相互間隔離,隔離電阻1000M歐以上。(4)通迅端口輸入端抗干擾峰值電壓可達15KV。(5)開關K1、K2、K3、K4、K5的通斷負載電壓/電流為300V/300mA,接通時間0~24小時可調(默認為1秒)。
2 電路設計說明
根據單片機基本原理設計如下電路圖:
基于RS232通信光電隔離通訊電路設計圖
電路工作原理:
通過AT89C2051單片機來對電路信號處理和控制,同時利用MAX232芯片來實現TTL電平(計算機輸出信號電平5v)和RS232電平(電路傳輸工作電平12v)之間轉換,以達到用RS232電平來傳輸信息,實現抗干擾和遠距離傳輸信號的效果;同時通過光耦實現輸入端和輸出端電信號隔離,并且對輸入信號進行濾波。電路中還利用DS1232(看門狗芯片)對電路自檢和保護作用。最終實現計算機對設備的控制。
通過過設計好RS-232的通信模塊,實現基于RS-232總線的數據通信與控制;而后加入繼電器控制模塊電路,實現單片機主從機之間的數據通信,從而達到PC端對設備的控制;接著,設計出PC端和設備端進行數據采集與控制的模塊,單片機都按自己的任務進行相關數據采集或者控制。在硬件都設計好后,調試通過,這時要跟據整個系統編制出一定的通信協議,選擇最優方案,實現PC端和設備端的數據通信[ 3 ]。這些在程序設計中實現,軟件采用Keil軟件進行編程。PC端和設備端在實現數據通信后,按照擬定的通信協議,提取有用數據信息,從而按照這個信息,進行相關操作,以達到基于RS-232總線上的數據通信與控制的目的。
本設計硬件電路部分主要包括MAX232電平轉換、單片機最小系統、五路光電轉換電路、RS-232通訊電路、五路信息傳輸電路等;軟件部分主要包括系統初始化、RS-232通訊協議、AD/DA驅動等[ 4 ]。
3 基于RS232通信光電隔離通訊在云臺控制器的運用
3.1 通信協議設置
晶體11.0592M下RS232串行通迅方式,波特率9600,校驗位PNONE。
3.2 對外接口設置
(1)5V+、GND電路板工作電源,輸入5V直流電壓;
(2)K1+、K1- 通道一控制,閉合時開啟,斷開時停止;
K2+、K2- 通道二控制,閉合時開啟,斷開時停止;
K3+、K3- 通道三控制,閉合時開啟,斷開時停止;
K4+、K4- 通道四開啟,閉合時開啟,斷開時停止;
K5+、K5- 通道五開啟,閉合時開啟,斷開時停止;
(3)通迅1輸入:TX1、GND1、RX1;通迅2輸入:TX2、GND1、RX2;
(4)通迅1輸出:TX1、GND、RX1;通迅2輸出:TX2、GND2、RX2;
(5)指示燈POW1、POW2分別指示內部兩路隔離電源的工作狀態;點亮表示工作正常。指示燈K1、K2、K3、K4、K5指示相對應的開關狀態,點亮時表示接通。
(6)測試按扭S1,按下時K1、K2、K3、K4接通,相對應的指示燈點亮。
3.3 通迅協議設置
(1)通道1、通道2輸入指令33A6同時控制K1、K2、K3、K4接通時間一秒,相對應的指示燈亮。
(2)通道1、通道2分別輸入指令33A1、33A2、33A3、33A4、33A5,分別控制K1、K2、K3、K4接通,接通時間一秒,相對應的指示燈亮。
(3)單片機上電開啟或熱啟動時,通過RS232通道1返饋信息66 D9 20 13 06 15。
(4)S1鍵盤按下后立即釋放,測試K1、K2、K3、K4開關性能,接通時間一秒,相對應的指示燈亮,同時通過RS232通道1返饋信息66 DA A1 A2 A3 A4。S1鍵盤按下保持時間超過2秒以上時,測試K1、K2、K3、K4、K5開關性能,接通時間一秒,相對應的指示燈亮,同時通過RS232通道1返饋信息66 DA A1 A2 A3 A4A5。
(5)通道1、通道2在超過24小時后,無任何通迅時,關機復位。
(6)系統受干擾頻繁通迅時,關機復位。
(7)168小時(一周)后同時收到關主機的命令“30H”后,關機復位。
4 產品測試
(1)插入好測試插座(測試插座圖紙R232TEST.S01),接入+5V電源,觀察指示燈狀態,POW1、POW2常亮,RUN省爍。觀察電流消耗應小于200mA。
(2)測試端與電腦串口連接,打開串口調試軟件(見圖)。
設置波特率為9600bit/S,校驗位:PNone,數據位8,停止位為1,十六進制收發及顯示,做以下操作:輸入指令33后,系統復位,接收窗口應能接收到字符66 D9 20 13 06 15。發送十六進制任意字符(33以外),接收窗口應能接收到同樣的字符。輸入指令33A6后,K1、K2、K3、K4點亮1秒后熄滅。輸入指令33A5后,K5點亮1秒后熄滅。
(4)S1鍵盤按下保持時間超過2秒以上時,K1、K2、K3、K4、K5相對應的指示燈亮一秒后熄滅,接收窗口應能接收顯示66 DA A1 A2 A3 A4 A5。
(5)通過以上測試,產品合格。
5 結語
根據本設計理論分析與實驗表明:從對云臺控制器的實例應用來看,本文所采用的原理和方法是正確的,達到了題目設計要求。本設計的信息通訊只能完成單向的數據傳輸和控制等基本功能,系統設計比較簡單。因此,本設計可在多方面進行充實和完善。
參考文獻:
[1] 肖海榮光電隔離的RS-232串行接口設計[J].單片機與嵌入式系統應用,2001,(8):38.
[2] 幸國全單片機系統的光電隔離式RS-232接口設計[J].測控技術,2001,20(1):62.
[3] 南華大學基于RS485的遠程采集與控制系統的設計[D].畢業論文,2013.
[4] 何立民.MCS-51系列單片機應用系統設計[M].北京:北京航空航天大學出版社,1990
[5] 楊將新.單片機程序設計及應用從基礎到實踐[M].北京:電子工業出版社,2006.
*通信作者:胡彬