新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AT89C52的CAN總線分布式測控系統(tǒng)的研制

        基于AT89C52的CAN總線分布式測控系統(tǒng)的研制

        作者: 時間:2012-02-20 來源:網(wǎng)絡(luò) 收藏

        數(shù)據(jù)采集模塊的工作原理:各類傳感器采集到數(shù)據(jù)后將0—5V的模擬量傳送到ADC0809,0809將轉(zhuǎn)換成的數(shù)字量傳給89C52,最后單片機(jī)將采集到的數(shù)據(jù)送到SJA1000通過收發(fā)器82C250傳上總線,完成數(shù)據(jù)采集工作。

        (3)控制模塊

        是一個帶有CAN通信功能的隔離型控制器。該模塊有一個數(shù)據(jù)輸入點(diǎn),可以是命令或其他信號,有一個模擬量輸出,供輸出執(zhí)行機(jī)構(gòu)是連續(xù)變化的控制系統(tǒng)使用,例如控制步進(jìn)電機(jī);還有一路是數(shù)字量輸出,供執(zhí)行機(jī)構(gòu)是兩位式的控制系統(tǒng)使用,例如開關(guān)設(shè)備。這個控制器可以單獨(dú)作為一個調(diào)節(jié)器使用,因為在該模塊上提供了完整的顯示窗口和操作按鈕,可以設(shè)定溫度設(shè)定值、PID調(diào)節(jié)參數(shù)等運(yùn)行過程中可以顯示被控對象的PV值和SV值。該模塊可以根據(jù)設(shè)定的控制點(diǎn)及升、降的時間實現(xiàn)自動調(diào)節(jié)。帶有CAN通信口,可以與微機(jī)實現(xiàn)通信,也就是說控制模塊可以接入CAN網(wǎng)絡(luò)系統(tǒng)。通過上位機(jī)實現(xiàn)對多個節(jié)點(diǎn)上的控制模塊設(shè)定各控制點(diǎn)的上下限控制點(diǎn)、PID值、實現(xiàn)時間等控制參數(shù),并實時記錄各控制器的測量值,描繪出變化曲線,供實驗人員對實驗結(jié)果進(jìn)行分析。如圖4所示。

        4系統(tǒng)軟件設(shè)計

        (1)通訊模塊

        測控系統(tǒng)的通信軟件分為3部分:CAN初始化、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收。

        ①CAN初始化

        其主要是設(shè)置CAN的通信參數(shù)。需要初始化的寄存器有:模式寄存器(PeliCAN模式)、時分寄存器、接收代碼寄存器、屏蔽寄存器、總線定時寄存器、輸出控制寄存器等。需要注意的是,這些寄存器僅能在復(fù)位期間可寫訪向,因此,在對這些寄存器初始化前,必須確保系統(tǒng)進(jìn)入了復(fù)位狀態(tài),并且系統(tǒng)中各CAN控制器的總線定時寄存器的初始化字必須相同。

        ②數(shù)據(jù)發(fā)送

        現(xiàn)場的各傳感器把環(huán)境多參數(shù)的檢測信號(數(shù)字量、模擬量、開關(guān)量)進(jìn)行轉(zhuǎn)換處理后,發(fā)向CAN控制器的發(fā)送緩沖區(qū),然后啟動CAN控制器的發(fā)送命令,此時CAN控制器將自動向總線發(fā)送數(shù)據(jù),不再需傳感器的微控制器進(jìn)行干預(yù)。若系統(tǒng)中有多個傳感CAN控制器同時向總線發(fā)送數(shù)據(jù),則CAN控制器通過信息幀中的標(biāo)識符來進(jìn)行仲裁,標(biāo)識符數(shù)值最小的CAN控制器具有對總線的優(yōu)先使用權(quán)。

        ③數(shù)據(jù)接收

        整個溫室微機(jī)測控系統(tǒng)中的CAN控制器檢測到總線上有數(shù)據(jù)時會自動接收總線上的數(shù)據(jù),存入其接收緩沖區(qū),并向89C52微控制器發(fā)送接收中斷,啟動中斷接收服務(wù)程序,89C52通過執(zhí)行中斷接收服務(wù)程序,從CAN控制器的接收緩沖區(qū)讀取數(shù)據(jù),并對其進(jìn)行進(jìn)一步處理工作。

        (2)監(jiān)控模塊

        集成了所有的數(shù)據(jù)采集、參數(shù)設(shè)定、數(shù)據(jù)統(tǒng)計分析等功能。同時,為了實現(xiàn)操作人員對生產(chǎn)過程的人工干預(yù),如修改給定值、控制參數(shù)和報警限等,添加了參數(shù)的修改功能;為了建立人機(jī)信息聯(lián)系,并且能將各節(jié)點(diǎn)傳輸來的數(shù)據(jù)以圖形、圖表或其它動態(tài)方式顯示出來,本系統(tǒng)可以使用任何具有DDE(DynamicDataExchange)接口的MMI(Man-Machineinterface)軟件;為了更好的管理各種數(shù)據(jù),采取了組態(tài)控制方式,能夠接收來自MMI軟件以及用戶軟件的DDE連接請求,并將該請求傳遞給通信驅(qū)動部分,由通信驅(qū)動轉(zhuǎn)換為通信信號通過傳輸媒體傳遞給智能模塊的固化軟件。并將模塊的應(yīng)答作為DDE操作的結(jié)果返回給MMI軟件及用戶軟件。

        5結(jié)論

        將先進(jìn)的現(xiàn)場總線技術(shù)(CANBUS)應(yīng)用于智能測控系統(tǒng),大大提高了系統(tǒng)的可靠性;自主開發(fā)了符合國際標(biāo)準(zhǔn)的基于單片機(jī)的智能節(jié)點(diǎn),不僅大量節(jié)約了資金,而且可以購置通用的同類設(shè)備,可節(jié)約大量的研發(fā)費(fèi)用;基于工控機(jī)的上位機(jī)提供了良好的人機(jī)界面,使操作更加方便,直觀。


        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 扎赉特旗| 东方市| 普陀区| 鹤山市| 青海省| 鄂托克旗| 无极县| 保康县| 扎兰屯市| 莲花县| 湾仔区| 霍城县| 阜新市| 南昌市| 肇庆市| 民权县| 德清县| 定结县| 若羌县| 门源| 阿克苏市| 通榆县| 拉孜县| 阿图什市| 彭山县| 宕昌县| 开江县| 漯河市| 阳城县| 纳雍县| 青冈县| 贵港市| 绥棱县| 宜城市| 平顺县| 磐石市| 新营市| 赤壁市| 河池市| 梅州市| 若尔盖县|