基于虛擬儀器的CANopen協(xié)議監(jiān)控面板設計
數(shù)據(jù)發(fā)送模塊CANwrite.vi使用VISA Write節(jié)點予以實現(xiàn),并將該發(fā)送模塊作為子VI調(diào)用。在labview平臺控制的串行通信過程中,數(shù)據(jù)格式是以字符串的格式組成的,字符串中的每個字符實際上對應大家熟悉的ASCII字符,即計算機能夠識別的數(shù)據(jù)代碼是ASCII代碼,所以在傳送到串口發(fā)送數(shù)據(jù)之前要經(jīng)過代碼轉換,這就意味著以十進制、二進制、十六進制表示的數(shù)據(jù)必須轉化為ASCII字符串才能進行傳送和接收。數(shù)據(jù)發(fā)送模塊如圖5所示,其中,以0xAA作為握手信號
數(shù)據(jù)接收模塊CANRead.vi使用VISA Read節(jié)點讀取數(shù)據(jù),如圖6所示,從緩沖器接收到的數(shù)據(jù)是ASCII字符串,經(jīng)過ASCII字符串轉換為十六進制字節(jié)數(shù)組的模塊處理后,最終得到正確的數(shù)據(jù)。
4.3 監(jiān)控面板
使用虛擬儀器labview開發(fā)的監(jiān)控面板如圖7所示??梢钥吹?,左側為數(shù)據(jù)發(fā)送部分,首先設置NodeID,選擇主從節(jié)點類型,根據(jù)用戶需要選擇待發(fā)送的報文類型,并設置幀類型(數(shù)據(jù)幀/遠程幀)以及具體的發(fā)送數(shù)據(jù)。右側為數(shù)據(jù)接收部分,顯示從CAN總線上監(jiān)聽到的CANopen報文。
5 結語
本文將虛擬儀器技術與現(xiàn)場總線高層通信協(xié)議CANopen相結合,實現(xiàn)了現(xiàn)場總線上位機監(jiān)控面板的開發(fā),為分布式網(wǎng)絡控制系統(tǒng)提供了高效、全面的監(jiān)控環(huán)境,不僅解決了工業(yè)現(xiàn)場不同設備同步監(jiān)控的問題,而且提供了較強的在線可控性。同時,利用labview提供的各類專業(yè)工具軟件包,可以進一步對工業(yè)數(shù)據(jù)進行處理,完成波形顯示、信號濾波和頻譜分析等功能。
評論