《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 基于CAN總線的數(shù)據(jù)采集與控制系統(tǒng)設計
基于CAN總線的數(shù)據(jù)采集與控制系統(tǒng)設計
摘要: 為了保證數(shù)據(jù)傳輸?shù)膶崟r性、可靠性,解決數(shù)據(jù)傳輸過程中易受干擾的問題,并保證數(shù)據(jù)采集和控制系統(tǒng)的性能,采用CAN總線作為現(xiàn)場總線來實現(xiàn)數(shù)據(jù)傳輸。經(jīng)過對系統(tǒng)軟硬件在不同環(huán)境下的多次測試,驗證了該系統(tǒng)的性能,同時也體現(xiàn)了CAN總線在通信能力、可靠性和實時性等方面的明顯優(yōu)勢。
Abstract:
Key words :

摘要:為了保證數(shù)據(jù)傳輸?shù)膶崟r性、可靠性,解決數(shù)據(jù)傳輸過程中易受干擾的問題,并保證數(shù)據(jù)采集" title="數(shù)據(jù)采集">數(shù)據(jù)采集和控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)的性能,采用CAN" title="CAN">CAN總線作為現(xiàn)場總線來實現(xiàn)數(shù)據(jù)傳輸。經(jīng)過對系統(tǒng)軟硬件在不同環(huán)境下的多次測試,驗證了該系統(tǒng)的性能,同時也體現(xiàn)了CAN總線在通信能力、可靠性和實時性等方面的明顯優(yōu)勢。
關鍵詞:CAN總線;數(shù)據(jù)采集;控制系統(tǒng);串行通信

0 引言
    隨著計算機網(wǎng)絡上的高速發(fā)展,使得信息的交流與共享變得空前廣泛和自如,而這項技術也滲入到自動化領域的變革當中,現(xiàn)場總線(Fieldbus)由此應運而生,開創(chuàng)了工業(yè)控制的新篇章。現(xiàn)場總線是一種應用于生產(chǎn)現(xiàn)場,在現(xiàn)場設備之間、現(xiàn)場設備和控制裝置之間實行雙向、串形、多結(jié)點的數(shù)字通信技術,在當今自動化領域中具有廣闊的發(fā)展前景。本文給出了一種基于CAN總線的數(shù)據(jù)采集與控制系統(tǒng)設計" title="設計">設計方案,實現(xiàn)對開關量的數(shù)據(jù)采集和對外部設備的控制功能。
    控制器局域網(wǎng)(Controller Area Network,CAN)總線是現(xiàn)場總線的一種,是一種有效支持分布式控制或?qū)崟r控制的串行網(wǎng)絡通信,已經(jīng)被廣泛地應用于工業(yè)自動化、船舶、醫(yī)療設備、工業(yè)設備等方面,并被公認為最有前途的現(xiàn)場總線之一,其主要特點如下:
    (1)CAN是有國際標準的現(xiàn)場總線。
    (2)CAN為多主工作方式,網(wǎng)絡上的任意一節(jié)點都可在任意時刻向網(wǎng)絡上的其他節(jié)點發(fā)送信息,且不分主從。
    (3)CAN采用非破壞總線仲裁技術。當多個節(jié)點同時向總線發(fā)送信息出現(xiàn)沖突時,優(yōu)先級低的節(jié)點將主動退出發(fā)送,而優(yōu)先級高的節(jié)點不受影響繼續(xù)發(fā)送。
    (4)CAN節(jié)點在錯誤嚴重的情況下具有自動關閉輸出功能,使總線上其他節(jié)點的操作不受影響。
    (5)報文采用短幀結(jié)構(gòu),傳輸時間短,受干擾概率低,而且每幀都有CRC校驗及其他校驗措施,具有極好的檢錯效果。
    (6)CAN的直接最遠通信距離可達10 km,最高通信速率可達1 Mb/s。

1 系統(tǒng)總體結(jié)構(gòu)設計
    系統(tǒng)主要由上位機(PC機)和數(shù)據(jù)采集和控制模塊組成。系統(tǒng)總體結(jié)構(gòu)設計如圖1所示。

a.jpg


    上位機是整個系統(tǒng)的核心,實現(xiàn)系統(tǒng)的監(jiān)控和管理功能。CAN總線智能適配卡的作用是收集各個CAN節(jié)點上的數(shù)據(jù),然后轉(zhuǎn)發(fā)到上位機,同時把上位機的命令轉(zhuǎn)發(fā)到各個節(jié)點。由于CAN總線特有的多主傳輸方式,各個節(jié)點根據(jù)需要自主地向總線發(fā)送數(shù)據(jù),而且在上位機監(jiān)聽各個節(jié)點的同時,節(jié)點也實時監(jiān)聽總線并接收自己需要的數(shù)據(jù)。數(shù)據(jù)采集和控制模塊采用微處理器和可編程的CAN控制芯片,主要用于完成現(xiàn)場數(shù)據(jù)的采集、數(shù)據(jù)的傳送以及各個現(xiàn)場設備運行的控制。

2 數(shù)據(jù)采集和控制模塊硬件設計
    基于CAN總線的數(shù)據(jù)采集與控制系統(tǒng)將功能盡可能地分散到各個控制模塊中,各個模塊以微處理器為核心,完成數(shù)據(jù)采集和控制功能。為了使信息能在CAN協(xié)議的標準下進行通信,各個模塊都設有CAN總線接口電路。該模塊的微處理器(MCU)選用宏晶科技的STC89C52RC單片機。STC89C52RC是新一代超強抗干擾、高速、低功耗的8位單片機,指令代碼完全兼容傳統(tǒng)的8051單片機,36個通用I/O口,3個16位定時器/計數(shù)器,4路外部中斷。根據(jù)實際需求分析,STC89C52RC單片機完全滿足本設計的需求。數(shù)據(jù)采集和控制模塊的結(jié)構(gòu)如圖2所示。

b.jpg


2.1 CAN總線接口硬件設計
    CAN總線接口硬件結(jié)構(gòu)如圖3所示。

c.jpg


    在本系統(tǒng)中CAN總線控制器選用SJA1000。SJA1000是Philips公司生產(chǎn)的獨立的CAN總線控制器,可以應用于一般的工業(yè)環(huán)境中和移動目標的CAN總線網(wǎng)絡控制。SJA1000是Philips半導體PCA82C200 CAN總線控制器BasicCAN的替代產(chǎn)品,而且增加了一種新的工作模式PeliCAN,這種模式能支持具有很多新特性的CAN 2.0B協(xié)議。基本特性如下:兼容BasicCAN模式;擴展地接收緩沖器(64 B,先進先出FIFO);同時支持11位和29位識別碼;位速率可達1 Mb/s;24 MHz時鐘頻率;對不同微處理器的接口兼容;可編程的CAN輸出驅(qū)動器配置。PeliCAN模式擴展功能包括;可讀/可訪問的錯誤計數(shù)器;可編程的錯誤報警器;對每一個CAN總線錯誤進行中斷;單次發(fā)送無重發(fā);驗收濾波器控制4 B代碼、4 B屏蔽等。
    CAN總線收發(fā)器選用Philips公司生產(chǎn)的專用CAN總線收發(fā)器PCA82C250,提供CAN總線協(xié)議控制器和物理總線接口,而且對CAN總線控制器提供差動接收能力。基本特性如下:高速率(最高達1 Mb/s);具有抗瞬間干擾和保護總線的能力;利用斜率控制,可降低射頻干擾;使用差分接收器,可抗寬范圍的共模干擾,以及抗電磁干擾;熱保護;低電流待機模式;未上電的節(jié)點對總線無影響;可以支持多達110個節(jié)點。
    為了增強CAN總線節(jié)點的抗干擾能力,并不是在SJA1000與PCA82C250之間直接相連,而是加入了高速光耦隔離器。這樣能很好地實現(xiàn)總線上各個CAN總線節(jié)點之間的電氣隔離。在該系統(tǒng)中高速光耦采用6N137。6N137兼容TTL和COMS電平,可通過信號的寬度為10 MHz,完全可滿足CAN總線信號1 Mb/s通信速率的要求。
2.2 開關量數(shù)據(jù)采集單元硬件設計
    該單元用于采集現(xiàn)場的開關量數(shù)據(jù)的采集。硬件電路圖如圖4所示。

d.jpg


    該單元將采集到的開關量數(shù)據(jù)傳送到微處理器,并傳送到CAN總線上,然后通過CAN總線智能適配卡轉(zhuǎn)發(fā)給上位機進行處理。外界環(huán)境以及電路、器件本身對系統(tǒng)引入了干擾和噪聲,為了提高單片機系統(tǒng)的性能,保證其穩(wěn)定性,采用光耦器件進行隔離,抑制干擾。光耦器件將電信號轉(zhuǎn)變?yōu)楣庑盘枺庑盘杺魉偷浇邮軅?cè)再轉(zhuǎn)換為電信號。由于光信號的傳送不需要共地。可以將光耦器件兩側(cè)的地加以隔離。因此在加入光耦器件后,在傳輸信的同時能有效地抑制尖脈沖和各種噪聲干擾,大大提高通道上的信噪比。需要注意的是光耦器件兩端的電源不能共用,否則起不到隔離的作用。
2.3 控制單元硬件設計
    該單元用于控制現(xiàn)場外部設備的運行。該單元硬件電路如圖5所示。

e.jpg


    該單元是上位機按照預先設定好的程序自動控制輸出,上位機通過CAN總線智能適配卡傳送開關量到CAN總線,然后數(shù)據(jù)采集和控制模塊根據(jù)需要接受CAN總線上的開關量,以控制現(xiàn)場設備。在該單元中,開關量通過單片機的I/O端口輸出,但I/O端口的驅(qū)動能力有限,一般不足以驅(qū)動繼電器,此時需要添加驅(qū)動電路。同時,為了避免單片機受到干擾,在驅(qū)動電路設計時,必須采取隔離措施。

3 軟件設計
    該系統(tǒng)軟件設計主要分為兩個部分:數(shù)據(jù)采集與控制模塊程序設計和CAN總線通信程序設計。
3.1 數(shù)據(jù)采集與控制模塊程序設計
    數(shù)據(jù)采集與控制模塊程序設計流程圖如圖6所示。

f.jpg


3.2 CAN總線通信程序設計
    CAN總線通信程序設計分為三個部分:CAN總線初始化、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收。
    (1)CAN總線初始化。CAN總線初始化主要是設置一些通信參數(shù),保證通信的正常進行。初始化主要包括工作方式的設置、驗收濾波方式的設置、驗收屏蔽寄存器和驗收代碼寄存器的設置、波特率參數(shù)設置、中斷允許寄存器的設置等。特別需要注意的是,初始化只有在復位模式下才可以進行,因為SJA1000配置信息的寄存器只有在復位模式下才可以進行寫操作。
    (2)數(shù)據(jù)發(fā)送。數(shù)據(jù)發(fā)送前,微處理器周期查詢狀態(tài)寄存器,查看發(fā)送緩沖器是否被鎖定。若沒有鎖定,則把從現(xiàn)場取得的開關量數(shù)據(jù)發(fā)向CAN總線控制器的發(fā)送緩沖區(qū),然后啟動CAN總線控制器發(fā)送命令,此時CAN總線控制器自動向總線發(fā)送數(shù)據(jù)。數(shù)據(jù)發(fā)送的流程圖如圖7所示。

g.jpg


    (3)數(shù)據(jù)接收。數(shù)據(jù)接收采用中斷方式。系統(tǒng)中的CAN控制器檢測到總線上有數(shù)據(jù)時會自動接收總線上的數(shù)據(jù),存入其接收緩沖區(qū),并向微控制器發(fā)送接收中斷,啟動中斷接收服務程序,通過執(zhí)行中斷接收服務程序,從CAN控制器的接收緩沖區(qū)讀取數(shù)據(jù),并對其進行進一步處理工作。數(shù)據(jù)接收流程圖如圖8所示。

4 結(jié)語
    通過對系統(tǒng)的軟硬件的反復調(diào)試表明,該數(shù)據(jù)采集和控制系統(tǒng)的設計方案是成功的。該系統(tǒng)能高速有效地采集、傳遞和處理現(xiàn)場數(shù)據(jù),并且能在惡劣環(huán)境下保證通信速率和極低的出錯率,運行效果很好,體現(xiàn)了CAN總線高性能和高可靠性的優(yōu)點。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 欧美性大战XXXXX久久久√| 香蕉视频禁18| 成人在线视频一区| 亚洲一本之道高清乱码| 精品一区二区三区在线播放| 国产对白受不了了| 97国产在线视频公开免费| 成人欧美一区二区三区的电影| 亚洲AV日韩AV高潮无码专区| 激情在线小说图片视频区| 四虎影视永久费观看在线| 欧美另类精品xxxx人妖换性 | 日本一区二区三区高清在线观看| 亚洲欧美成aⅴ人在线观看| 精品国产免费观看久久久| 国产婷婷色一区二区三区 | 再深点灬舒服灬太大了岳| 高清一本之道加勒比在线| 国产精品香蕉成人网在线观看| 一级做a爱片特黄在线观看免费看| 日韩日韩日韩日韩日韩| 亚洲欧美一区二区三区综合| 精品久久久久久国产| 国产乱子影视频上线免费观看| 男女xx动态图| 在线播放亚洲精品| 一本精品99久久精品77| 日本亚洲精品色婷婷在线影院| 亚洲人av高清无码| 波多野结衣免费在线观看| 午夜久久久久久| 虎白女粉嫩尤物福利视频| 国产成人精品无码片区在线观看| 777国产偷窥盗摄精品品在线| 天天躁日日躁狠狠躁人妻| 中文字幕人成无码免费视频| 日韩av激情在线观看| 亚洲www在线| 欧美日韩一级二级三级| 亚洲美女综合网| 看大片全色黄大色黄|