基于RS 485總線的蓄電池充放電裝置遠程控制系統
3.2 單片機程序設計
在主程序中,先將單片機及其存儲器初始化,進入死循環,等待中斷程序。中斷程序包括:A/D采集中斷,他主要是將采集到的電壓,電流瞬時信號值處理并保存;另外1個就是串口通信中斷程序,他的主要作用是:當接收一個地址時,判斷是否是本機地址,若是則判斷控制命令,否則結束。繼續執行PC機接收的數據命令,分別表示停機、充電、放電等命令。通過字符串比較,判斷出執行的命令。具體流程如圖5所示。

3.3 PC機程序設計
PC機的人機交互界面由C++Builder語言開發實現的,他主要包含通信模塊,數據顯示和處理模塊。在綜合考慮開發效率和程序功能后,選擇了Win32API函數來編寫通信程序。此函數在C++Builder里面中均已被聲明,直接引用即可。為了提高通信程序的響應速度,程序通過Thread類實現多線程通信。在主線程中打開串口并發送數據,另外再建立1個線程來監聽串口,若接收到數據后就調用數據分析和處理線程,顯示狀態曲線并且將數據錄入數據庫。部分程序代碼如下:

以3個站點的充放電實時監測為例,在PC機上可顯示如圖6所示的實時信息。

4 結 語
基于RS 485的遠程充放電裝置控制系統可以實現1臺PC機上最多可控制32個站點。由于RS 485采用的是平衡驅動和差分接收的方法,因此能從根本上消除信號地線,有很強的抗共模干擾信號的能力。他還具有一對線路驅動器和接收器,能夠作長距離的信號傳輸,最長為1 200 m。且傳輸結構簡單、成本低、實用性強。可以廣泛應用與工作環境惡劣,耗時勞民的充放電現場。
評論