彭承榮
摘要:隨著科學(xué)技術(shù)不斷發(fā)展,技術(shù)更新日新月異。CAN總線技術(shù)憑借自身靈活等優(yōu)勢,在實踐應(yīng)用中,不僅能夠?qū)崿F(xiàn)對數(shù)據(jù)測量的高效控制,還能夠提高工業(yè)現(xiàn)場可操作性、可控制性。本文將從CAN總線技術(shù)發(fā)展及特點入手,從總體結(jié)構(gòu)、軟硬件角度對基于CAN總線技術(shù)智能節(jié)點設(shè)計進行深入探討,最后對系統(tǒng)進行了測試,證明該智能節(jié)點具有靈活、穩(wěn)定等優(yōu)勢,值得廣泛推廣。
關(guān)鍵詞:CAN總線技術(shù);智能節(jié)點;設(shè)計
中圖分類號TP2 文獻標識碼A 文章編號2095-6363(2016)06-0121-01
現(xiàn)場總線作為工業(yè)自動化領(lǐng)域發(fā)展的基礎(chǔ),能夠通過分布式控制方式,構(gòu)建工業(yè)級局域網(wǎng),在實踐應(yīng)用中,滿足各個節(jié)點實時數(shù)據(jù)的傳輸和通信,具有較強的可靠性,受到了廣泛關(guān)注。CAN總線作為現(xiàn)場總線的重要組成部分,具有高性能特點,在航天航空、工業(yè)控制等領(lǐng)域得到了應(yīng)用。因此加強對CAN總線技術(shù)智能節(jié)點設(shè)計的研究具有非常重要的現(xiàn)實意義。
1.CAN總線技術(shù)概述
CAN總線最早出現(xiàn)在20世紀80年代,是由現(xiàn)代汽車中眾多測控儀器之間的數(shù)據(jù)交換而設(shè)計的一種支持分布式實施控制數(shù)據(jù)的通信網(wǎng)絡(luò)。它將數(shù)據(jù)傳輸機制作為基礎(chǔ),通過雙絞線、同軸電纜實現(xiàn)信息傳輸目標。CAN總線在實際應(yīng)用的特點表現(xiàn)在以下幾個方面:一是多主技術(shù),網(wǎng)絡(luò)上任何一點都能夠在不同的時刻,主動向網(wǎng)絡(luò)上其他節(jié)點傳輸信息,并實現(xiàn)對優(yōu)先級的劃分,以此來滿足多元需求,提高控制力度;二是可靠性較高,節(jié)點出現(xiàn)錯誤時,能夠自動關(guān)閉輸出功能,與總線斷開聯(lián)系,確保其他節(jié)點依然處于健康運行狀態(tài);三是監(jiān)測特點,系統(tǒng)內(nèi)部采用短幀結(jié)構(gòu),能夠有效縮短時延、降低干擾,在一定程度上降低數(shù)據(jù)錯誤率。上述優(yōu)勢成為汽車、機械及醫(yī)療等領(lǐng)域引入CAN總線的重要原因。
2.基于CAN總線技術(shù)智能節(jié)點的設(shè)計
2.1總體結(jié)構(gòu)設(shè)計
將CAN總線技術(shù)作為核心的系統(tǒng)中包含了不同的分布式控制系統(tǒng),由遍布整個控制系統(tǒng)中的獨立節(jié)點,完成對系統(tǒng)主機的常規(guī)測試及控制。因此,在結(jié)構(gòu)設(shè)計中,我們對主機不需要考慮監(jiān)控底層設(shè)備,便能夠達到高性能控制及管理。通常來說,系統(tǒng)主要由主機、數(shù)據(jù)轉(zhuǎn)換器及智能節(jié)點3部分構(gòu)成,如圖1所示。
觀察系統(tǒng)總體結(jié)構(gòu)能夠發(fā)現(xiàn)主機與智能節(jié)點將CAN總線作為連接載體,其中主機選擇LabVIEW設(shè)計的檢測軟件、硬件資源共同構(gòu)成,在系統(tǒng)運行中,能夠?qū)χ悄芄?jié)點進行動態(tài)監(jiān)測,及時獲取數(shù)據(jù),并將其存儲于系統(tǒng)數(shù)據(jù)庫中。同時,數(shù)據(jù)轉(zhuǎn)換器通過串口轉(zhuǎn)CAN總線,能夠?qū)崿F(xiàn)數(shù)據(jù)的高效轉(zhuǎn)換,從而實現(xiàn)轉(zhuǎn)發(fā)目標。智能節(jié)點作為系統(tǒng)中數(shù)量最多的一部分,與總線相連,能夠?qū)⒉杉臄?shù)據(jù)信息發(fā)送至總線,并由總線進行統(tǒng)一處理,它由微控制器、收發(fā)器及接口構(gòu)成。作為整個系統(tǒng)的關(guān)鍵,本文選擇STM32F107作為主控芯片,該芯片具有較強的ROM、RAM,尤其是針對程序量較大的嵌入式系統(tǒng)具有較好的支持,能夠顯著提升工業(yè)控制水平。收發(fā)器選擇德州儀器生產(chǎn)的SN65HVD230,該器件具有較高的速率、抗干擾能力等優(yōu)勢,在CAN總線中具有廣泛的應(yīng)用。
2.2硬件設(shè)計
一般CAN總線智能節(jié)點由微控制器、總線控制器及收發(fā)器構(gòu)成。針對智能節(jié)點系統(tǒng)中的總線部分來看,其中PDO與PDl腳分別為CANRX、CANTX引腳,為總線輸入輸出提供一定支持,在系統(tǒng)運行中,將總線收發(fā)器與物理總線連接到一起,便能夠滿足運行需求。
針對CAN收發(fā)器來說,本文采用SN65HVD230,憑借其高達1Mbps的差分進行發(fā)送、接收,滿足信息發(fā)送和接受要求。由于該設(shè)備具有較強的短路、失地保護等功能,能夠減少系統(tǒng)運行故障。另外,針對收發(fā)器第8引腳經(jīng)過10k電阻與PDl5連接后,能夠滿足微控制器控制要求,并隨著具體情況而發(fā)生變化。如當PDl5處于低電情況下,系統(tǒng)將處于高速工作模式,反之則處于待機模式。另外,在硬件設(shè)計環(huán)節(jié),在CAN總線輸入端與大地之間設(shè)置防雷擊管,能夠避免雷擊的干擾。復(fù)位電路中由復(fù)位電路、上電自動復(fù)位電路構(gòu)成,提高系統(tǒng)集成度的同時,還能夠增強其可靠性,從而促使系統(tǒng)能夠更好地發(fā)揮積極作用。
2.3軟件設(shè)計
基于CAN總線智能節(jié)點主程序在運轉(zhuǎn)時具備固定的流程。詳細來說,系統(tǒng)發(fā)送方式通過查詢實現(xiàn),發(fā)送數(shù)據(jù)則通過中斷方式達到目標。一般而言,智能節(jié)點主程序由系統(tǒng)、及其外設(shè)初始化等多個部分構(gòu)成。當cAN控制器處于初始狀態(tài)時,需要將控制器復(fù)位到較高的位置,才能夠訪問寄存器。因此在初始化寄存器之前,應(yīng)處于復(fù)位狀態(tài)當中。而總線定時寄存器的初始化值應(yīng)結(jié)合控制器晶振頻率完成設(shè)計目標。當系統(tǒng)處于運行狀態(tài)時,針對數(shù)據(jù)發(fā)送來說,控制器能夠?qū)?shù)據(jù)發(fā)送到總線中,并由控制器自主完成,而發(fā)送主程序則需要將信息幀發(fā)送至發(fā)送緩沖區(qū),最后傳遞命令即可。而針對數(shù)據(jù)接收而言,控制器能夠從總線當中,讀取到數(shù)據(jù)信息,完成數(shù)據(jù)信息的接收。因此,在具體設(shè)計過程中,針對CAN控制器的設(shè)計,我們應(yīng)適當提高緩存位,以此來提高系統(tǒng)運行有效性。
2.4系統(tǒng)測試
針對系統(tǒng)測試,本文選擇了兩個智能節(jié)點,將他們分別稱為節(jié)點A和節(jié)點B,同時設(shè)置相應(yīng)的接口板。該接口具備上文描述的輸入及輸出等功能。因此在智能節(jié)點設(shè)計中,我們既能夠接收信息、還能夠發(fā)送信息,更具便捷性。在測試中,我們將兩個節(jié)點分別置于實物當中,連接完成后,按照如下程序進行測試。
在輸入端,隨機選擇數(shù)據(jù)信號,測試輸出端是否能夠獲取對應(yīng)的信號。而節(jié)點B通過中斷按鍵向節(jié)點A發(fā)送數(shù)據(jù)信息,測試節(jié)點A能夠通過顯示模塊進行技術(shù)。經(jīng)過測試后,我們能夠發(fā)現(xiàn)輸入端口指示燈亮,輸出端端口燈亮,由此可以證明節(jié)點A成功采集數(shù)據(jù),并對數(shù)據(jù)進行處理后發(fā)送至節(jié)點B,同時,節(jié)點B也能夠接受到經(jīng)過CAN總線傳輸過來的信息。綜上來看,本文設(shè)計的系統(tǒng)通信正常,能夠滿足工業(yè)控制要求,確保工業(yè)生產(chǎn)等工作處于良好的狀態(tài)中。
3.結(jié)論
本文將STM32F107微處理器作為核心,設(shè)計了CAN總線智能節(jié)點,使得系統(tǒng)不僅具備CAN總線優(yōu)勢,且能夠有效發(fā)揮可靠性、抗干擾性等優(yōu)勢,為相關(guān)領(lǐng)域提供了極大的支持。另外,智能節(jié)點能夠滿足分布式節(jié)點測試,促使控制工作朝著智能化、網(wǎng)絡(luò)化方向發(fā)展,為CAN總線技術(shù)在工業(yè)測控領(lǐng)域中的推廣和普及奠定了堅實的基礎(chǔ),特別是在數(shù)據(jù)處理方面更具優(yōu)勢。隨著科學(xué)技術(shù)不斷發(fā)展,我們還應(yīng)加大對CAN總線技術(shù)的研究,不斷優(yōu)化技術(shù),從而促使其積極作用得到最大限度發(fā)揮。