過程分析儀器CAN網(wǎng)絡(luò)通信設(shè)計(jì)
智能節(jié)點(diǎn)分析儀器端的編程采用 C 語言與匯編語言相結(jié)合的方式,采用結(jié)構(gòu)化程序設(shè)計(jì)方案,可讀可移植性好。流程如圖3 和4 所示。
圖3 分析儀器主節(jié)點(diǎn)程序流程圖
主節(jié)點(diǎn)在接收到從節(jié)點(diǎn)傳送過來的數(shù)據(jù)后,在接收成功引起的中斷處理程序中對數(shù)據(jù)進(jìn)行處理,然后轉(zhuǎn)存到主節(jié)點(diǎn)的發(fā)送郵箱中,等待發(fā)送給上位機(jī)。在進(jìn)行數(shù)據(jù)處理的時候要把接收郵箱中的數(shù)據(jù)賦給中間變量,處理完后再把中間變量的值賦給發(fā)送郵箱,這個過程中要注意借助指針來完成。如下所示:
Mailbox = ECanaMboxes.MBOX0 + n; // n 為郵箱號
receiveboxl = Mailbox->MDRL.all;
receiveboxh = Mailbox->MDRH.all;
圖4 分析儀器從節(jié)點(diǎn)程序流程圖
3 實(shí)驗(yàn)結(jié)果及分析
使用 KPCI-8110 的測試程序向分析儀器周期發(fā)送一幀數(shù)據(jù)時,查看測試程序和分析儀器存儲器可以看出,分析儀器端正確地接收到PC 發(fā)送來的數(shù)據(jù),CAN 網(wǎng)絡(luò)運(yùn)行良好。圖5為自己開發(fā)的接收界面試驗(yàn)狀態(tài)下成功接收到數(shù)據(jù),分析儀器網(wǎng)絡(luò)分析周期為20s,發(fā)送速率為100Kbps。
圖5 上位機(jī)接收界面
在對節(jié)點(diǎn)和上位機(jī)的通信進(jìn)行試驗(yàn)的時候發(fā)現(xiàn),在單獨(dú)使用eCAN 模塊發(fā)送和接收數(shù)據(jù)時,通信情況良好,發(fā)送和接收的幀數(shù)相同。
需要注意的是,在運(yùn)行DSP 多組分氣體分析平臺的整個軟件程序時,在較短時間內(nèi)要以較大速率發(fā)送大批量數(shù)據(jù),故將A/D 采樣之后的數(shù)據(jù)濾波和處理部分放在主程序中執(zhí)行,盡可能減少A/D 中斷服務(wù)子程序的處理時間,這樣就可以減少對CAN 發(fā)送中斷程序的影響。
經(jīng)實(shí)驗(yàn)證明,以上分析和判斷是正確的,網(wǎng)絡(luò)通信狀況良好,無丟幀現(xiàn)象。
4 總結(jié)
該網(wǎng)絡(luò)通信系統(tǒng)在試驗(yàn)中得到了良好的效果,滿足了多組分分析儀器的設(shè)計(jì)要求。
高效液相色譜儀相關(guān)文章:高效液相色譜儀原理
評論