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