基于CAN總線模塊的網(wǎng)絡(luò)測(cè)控系統(tǒng)的實(shí)現(xiàn)
CAN總線控制網(wǎng)絡(luò)和因特網(wǎng)采用統(tǒng)一的協(xié)議標(biāo)準(zhǔn)是 CAN總線控制網(wǎng)絡(luò)和因特網(wǎng)集成的方式之一,目前,它還是一個(gè)探索性的工作。雖然嵌入式控制的應(yīng)用已經(jīng)十分廣泛,但是 CAN總線控制網(wǎng)絡(luò)和因特網(wǎng)采用統(tǒng)一的協(xié)議標(biāo)準(zhǔn)還是一個(gè)嶄新的課題。這種方式將成為控制網(wǎng)絡(luò)和因特網(wǎng)絡(luò)完全集成的最終解決方案。由于分布式控制網(wǎng)絡(luò)采用了面向不同應(yīng)用的協(xié)議標(biāo)準(zhǔn),因此二者集成時(shí)需要某種數(shù)據(jù)格式的轉(zhuǎn)換機(jī)制,這將使系統(tǒng)復(fù)雜化,而且也不能確保數(shù)據(jù)的完整性。本文給出了基于 CAN總線模塊的網(wǎng)絡(luò)測(cè)控系統(tǒng)的各個(gè)硬件模塊,以及 CAN通信的軟件編程思想。
2 硬件系統(tǒng)的邏輯結(jié)構(gòu)模塊
2.1 分布式測(cè)控系統(tǒng)結(jié)構(gòu)
圖 1 基于 CAN總線的分布式測(cè)控系統(tǒng)結(jié)構(gòu)網(wǎng)絡(luò)測(cè)控系統(tǒng)擴(kuò)展 CAN總線模塊,要擔(dān)負(fù)至少兩個(gè)方面的任務(wù):一是支持現(xiàn)場(chǎng)操作,包括數(shù)據(jù)采集、人機(jī)對(duì)話等;二是與上級(jí)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)交互,作為網(wǎng)絡(luò)測(cè)控系統(tǒng)的底層設(shè)備。本文針對(duì)實(shí)驗(yàn)室的過(guò)程控制設(shè)備模擬工業(yè)現(xiàn)場(chǎng)設(shè)計(jì)了基于現(xiàn)場(chǎng)總線 CAN的分布式數(shù)字測(cè)控卡,系統(tǒng)結(jié)構(gòu)框圖如圖 1所示。本文引用地址:http://m.butianyuan.cn/article/163528.htm
基于 CAN總線的分布式測(cè)控卡主要由單片機(jī) C8051F060,輸入/輸出電路、電源電路、人機(jī)接口和通信接口幾部分組成。測(cè)控卡的工作原理如下:C8051F060單片機(jī)是完全集成的混合信號(hào)片上系統(tǒng)型 MCU,是數(shù)據(jù)采集與實(shí)施控制的理想微型控制器。它集成了兩個(gè) 16位、1Msps的模擬/數(shù)字轉(zhuǎn)換器,且?guī)в?DMA控制器 ;集成有兩個(gè) 12位數(shù)字/模擬轉(zhuǎn)換器,具有可編程數(shù)據(jù)更新方式;集成有控制器局域網(wǎng)(CAN2.0B)控制器,具有 32個(gè)消息對(duì)象,每個(gè)消息對(duì)象有自己的標(biāo)識(shí)掩碼。工業(yè)現(xiàn)場(chǎng)設(shè)備的狀態(tài)參數(shù)通過(guò) I/V轉(zhuǎn)換成電壓信號(hào), C8051F060單片機(jī)采集此信號(hào)后,通過(guò) CAN總線發(fā)送給上級(jí)網(wǎng)絡(luò)節(jié)點(diǎn),同時(shí)上級(jí)網(wǎng)絡(luò)節(jié)點(diǎn)下傳的命令和參數(shù)經(jīng) DAC和 V/I轉(zhuǎn)換電路轉(zhuǎn)換成 0-20mA的電流信號(hào),控制現(xiàn)場(chǎng)設(shè)備。人機(jī)界面提供系統(tǒng)狀態(tài)與操作人員的友好交流平臺(tái),且備用了一路 RS-232異步串行通信總線。
本測(cè)控卡的微處理器是新華龍公司生產(chǎn)的單片機(jī) C8051F060,該系列芯片是集成在一塊芯片上的混合信號(hào)系統(tǒng)級(jí)單片機(jī),其內(nèi)核是與 MCS-51指令集完全兼容的 CIP-51微控制器內(nèi)核,可以使用標(biāo)準(zhǔn) 803x/805x的匯編器和編譯器進(jìn)行軟件開(kāi)發(fā)。
在設(shè)計(jì)該測(cè)控卡時(shí),為了增加系統(tǒng)的靈活性,將測(cè)控卡設(shè)計(jì)成了兩塊 PCB插接在一起的方式。C8051F060,JTAG接口及其晶振獨(dú)立出來(lái),設(shè)計(jì)在一塊板子上稱為核心板,系統(tǒng)的其他應(yīng)用設(shè)計(jì)在另一塊板子上稱為應(yīng)用板。核心板已構(gòu)成了最簡(jiǎn)單片機(jī)系統(tǒng),可以在不需要外圍電路的基礎(chǔ)進(jìn)行程序的下載和調(diào)試;而應(yīng)用板則可根據(jù)系統(tǒng)的需要靈活設(shè)計(jì)外圍電路,這樣,對(duì)于不同系統(tǒng)的應(yīng)用需要只需修改應(yīng)用板就可以了。
2.2 JTAG調(diào)試接口與晶振電路
在 C8051F系列單片機(jī)片內(nèi)都有一個(gè) JTAG接口和邏輯,在上位機(jī)軟件的支持下,PC機(jī)通過(guò) JTAG接口直接對(duì)控制系統(tǒng)進(jìn)行在系統(tǒng)仿真調(diào)試。它不僅支持 FLASH ROM的讀/寫(xiě)操作以及非侵入式在系統(tǒng)調(diào)試,而且還為 JTAG邏輯在系統(tǒng)測(cè)試提供了邊界掃描功能。 C8051F系列單片機(jī)上的四個(gè)引腳 TDI, TDO, TMS, TCK與調(diào)試工具串口適配器(RS232到 JTAG的接口模塊)直接相連,進(jìn)行程序的下載和調(diào)試。圖 2 (a)是 JTAG調(diào)試接口。
C8051F060單片機(jī)包括一個(gè)可編程內(nèi)部振蕩器和外部振蕩器驅(qū)動(dòng)電路,系統(tǒng)可以由外部振蕩器電路或內(nèi)部振蕩器分頻提供。系統(tǒng)復(fù)位后可編程內(nèi)部振蕩器被默認(rèn)為系統(tǒng)時(shí)鐘,且對(duì)應(yīng) 24.5MHz的基頻。而外部振蕩器電路可以驅(qū)動(dòng)外部晶體、陶瓷諧振器、電容或 RC網(wǎng)絡(luò),也可以使用一個(gè)外部 CMOS時(shí)鐘提供系統(tǒng)時(shí)鐘。為了使串行通信接口的波特率精確更高,本測(cè)控卡使用了外部 11.0592MHz的晶振,并可用 l0MΩ電阻并聯(lián)到晶振的兩端,使系統(tǒng)更容易起振,如圖 3(b)所示。
2.4 電源電路
C8051F060單片機(jī)的工作電壓為+3.3V,測(cè)控系統(tǒng)中還使用了 5V器件,本文設(shè)計(jì)了如圖 3所示的電源電路。首先 220V交流電經(jīng)濾波器進(jìn)行共模濾波和差模濾波,為了降低電源工作時(shí)的電磁輻射,將交流電整流成高壓直流電,然后進(jìn)入電源模塊 HAT15-05H12-WFCI得到輸出+5V和一個(gè)+12V的兩路直流電壓。+12V供 ADC電路和 DAC電路單元使用,另一路 5V電源供 MAX202等 5V器件使用。3.3V電源部分采用了 LDO芯片 SPX1117M3-3.3,其特點(diǎn)是輸出電流大,輸出電壓精度高,穩(wěn)定性高。
評(píng)論