本站小編為你精心準備了LabVIEW的SVG遠程監控探析參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
《電氣時代雜志》2014年第五期
一、硬件設計與實現
通信硬件電路的合理設計是提高RS485通信可靠性的基礎,如果硬件電路存在不足,則RS485通信的可靠性很難得到保證。圖1中,DSP控制電路選用TI公司的32位定點處理器TMS320F2812,工作主頻最高可達150MHz,片上集成兩路SCI接口,64K種可編程通信速率,支持16級接收和發送FIFO;RS485收發電路選用多點RS485收發器DS75176,小型封裝,有利于節省空間;22ns驅動傳送延時;單5V供電;總線上允許-7~+12V電壓出現,熱保護;允許高達32個收發器掛在總線上。RS485通信的硬件電路如圖2所示,主要包括信號隔離電路和RS485總線輸出電路。
1.信號隔離電路
RS485收發器DS75176通過RXD、TXD及RDE引腳與DSP接口。為避免DSP與DS75176間的相互損傷,這些引腳不能與DSP直接連接。通過DC/DC變換將DSP電源和DS75176的電源隔離,通過光耦6N135將引腳信號隔離,徹底消除共模干擾電壓的影響。
2.RS485總線輸出電路
RS485總線輸出電路要充分考慮線路上各種干擾及線路特性阻抗的匹配。為降低輸出浮動特性,采用抗浪涌的瞬態抑制二極管D1。輸出端A、B分別串接一個保護電阻R49和R44,減少器件損壞對通信總線的影響;A、B間跨接電阻R42,減少線路上因傳輸電阻的不匹配造成的傳輸反射。同時A、B輸出端分別接上拉、下拉電阻R41、R40,使A端電位高于B端電位,RXD的電平在RS485總線不發送期間呈現高電平,DSP不會被誤中斷而收到亂碼。
二、軟件設計與實現
1.DSP部分
DSP和上位機間的數據發送和接收采用Modbus通信協議,協議格式包括地址碼、功能碼、數據信息碼和校驗碼等十六進制信息。主要用到的Modbus功能碼是03H、04H和10H,其格式大致相同。例如功能碼03H的格式如表1、表2所示。DSP作為從機,主要任務是接收上位機發送的數據報文,完成數據發送,程序流程如圖3所示。DSP接收到數據報文后首先校驗從機地址是否一致,若相同,則將接收到的數據進行CRC計算并與接收到的數據報文中CRC校驗碼比較,如果CRC相同,表明接收到的數據正確,并繼續查看數據報文中的功能碼,按照功能碼調用相應的子程序。如果CRC值不同,表明接收到的數據錯誤,給出出錯應答并退出中斷。調用相應功能碼的子程序后,要判斷數據報文中的數據地址、數據長度是否正確,如果正確就給主機按照通信協議格式發送數據;如果錯誤則出錯應答并退出中斷。
2.上位機監控labview部分
上位機采用LabVIEW進行上位機監控。傳統的串口通信軟件使用VC++或VB編寫,這些高級語言程序代碼冗長復雜,不便進行功能拓展;如果要進行串口數據分析則需推翻原有程序結構,重新編制代碼。而LabVIEW提供了各種圖形化程序,用戶不必熟悉串口總線,利用提供的圖形化驅動程序就可以驅動串口通信。考慮到軟件的實用性和開放性采用VISA接口模塊進行編程。VISA是應用于儀器編程的標準I/O應用程序接口,是工業界通用的儀器驅動器標準應用程序接口,采用面向對象編程,具有很好的兼容性、擴展性和獨立性。當外部設備變更時,只需要更換幾個程序模塊即可,很方便而且開發效率高。(1)串口初始化LabVIEW可以通過軟件前面板方便地完成串口初始化設置,如波特率、數據位、奇偶位和停止位的設置,如圖4所示。圖4(a)為串口設置的前面板部分,圖4(b)為串口設置的程序框圖部分。(2)數據發送和接收LabVIEW根據Modbus通信協議格式發送和接收數據報文,為VISA寫入和讀取函數,為內部編寫的CRC校驗函數和數據校驗函數。首先將數據報文按通信協議格式打包進行CRC校驗,校驗完成后連同校驗碼一起生成發送報文,利用VISA寫入函數將數據發送,經過一段時間延時,利用VISA讀取函數接收數據報文。對接收到的數據報文首先要進行校驗分析,判斷這部分數據是否正確,如果正確則進行數據提取和處理。在數據發送和接收過程中,由于VISA寫入/讀取的是字符串類型的數據,所以要用將字節數組轉換至字符串才能發送,同時接收到的字符串通過轉換至字節數組再進行數據分析和處理。LabVIEW數據發送和接收如圖5所示。(3)數據存儲LabVIEW可以將接收到的數據存儲為.xls或.txt文件,方便用戶調用這些數據。如圖6所示,數據存儲為.txt文件,根據用戶需要利用創建路徑函數靈活設置文件保存路徑,利用寫入文本文件函數將數據寫入.txt文件,能隨時查看歷史數據。
作者:段海雁單位:天津市先導倍爾電氣有限公司