色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

電子設(shè)計 ? 來源:現(xiàn)代電子技術(shù) ? 作者:郝壽朋;劉瑞玲 ? 2020-03-14 08:05 ? 次閱讀

引言

隨著計算機(jī)網(wǎng)絡(luò)上的高速發(fā)展,使得信息的交流與共享變得空前廣泛和自如,而這項技術(shù)也滲入到自動化領(lǐng)域的變革當(dāng)中,現(xiàn)場總線(Fieldbus)由此應(yīng)運(yùn)而生,開創(chuàng)了工業(yè)控制的新篇章。現(xiàn)場總線是一種應(yīng)用于生產(chǎn)現(xiàn)場,在現(xiàn)場設(shè)備之間、現(xiàn)場設(shè)備和控制裝置之間實(shí)行雙向、串形、多結(jié)點(diǎn)的數(shù)字通信技術(shù),在當(dāng)今自動化領(lǐng)域中具有廣闊的發(fā)展前景。本文給出了一種基于CAN總線的數(shù)據(jù)采集與控制系統(tǒng)設(shè)計方案,實(shí)現(xiàn)對開關(guān)量的數(shù)據(jù)采集和對外部設(shè)備的控制功能。

控制器局域網(wǎng)(Controller Area Network,CAN)總線是現(xiàn)場總線的一種,是一種有效支持分布式控制或?qū)崟r控制的串行網(wǎng)絡(luò)通信,已經(jīng)被廣泛地應(yīng)用于工業(yè)自動化、船舶、醫(yī)療設(shè)備、工業(yè)設(shè)備等方面,并被公認(rèn)為最有前途的現(xiàn)場總線之一,其主要特點(diǎn)如下:

(1)CAN是有國際標(biāo)準(zhǔn)的現(xiàn)場總線。

(2)CAN為多主工作方式,網(wǎng)絡(luò)上的任意一節(jié)點(diǎn)都可在任意時刻向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,且不分主從。

(3)CAN采用非破壞總線仲裁技術(shù)。當(dāng)多個節(jié)點(diǎn)同時向總線發(fā)送信息出現(xiàn)沖突時,優(yōu)先級低的節(jié)點(diǎn)將主動退出發(fā)送,而優(yōu)先級高的節(jié)點(diǎn)不受影響繼續(xù)發(fā)送。

(4)CAN節(jié)點(diǎn)在錯誤嚴(yán)重的情況下具有自動關(guān)閉輸出功能,使總線上其他節(jié)點(diǎn)的操作不受影響。

(5)報文采用短幀結(jié)構(gòu),傳輸時間短,受干擾概率低,而且每幀都有CRC校驗及其他校驗措施,具有極好的檢錯效果。

(6)CAN的直接最遠(yuǎn)通信距離可達(dá)10 km,最高通信速率可達(dá)1 Mb/s。

1 、系統(tǒng)總體結(jié)構(gòu)設(shè)計

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

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

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

2、 數(shù)據(jù)采集和控制模塊硬件設(shè)計

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

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

2.1 CAN總線接口硬件設(shè)計

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

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

在本系統(tǒng)中CAN總線控制器選用SJA1000。SJA1000是Philips公司生產(chǎn)的獨(dú)立的CAN總線控制器,可以應(yīng)用于一般的工業(yè)環(huán)境中和移動目標(biāo)的CAN總線網(wǎng)絡(luò)控制。SJA1000是Philips半導(dǎo)體PCA82C200 CAN總線控制器BasicCAN的替代產(chǎn)品,而且增加了一種新的工作模式PeliCAN,這種模式能支持具有很多新特性的CAN 2.0B協(xié)議。基本特性如下:兼容BasicCAN模式;擴(kuò)展地接收緩沖器(64 B,先進(jìn)先出FIFO);同時支持11位和29位識別碼;位速率可達(dá)1 Mb/s;24 MHz時鐘頻率;對不同微處理器的接口兼容;可編程的CAN輸出驅(qū)動器配置。PeliCAN模式擴(kuò)展功能包括;可讀/可訪問的錯誤計數(shù)器;可編程的錯誤報警器;對每一個CAN總線錯誤進(jìn)行中斷;單次發(fā)送無重發(fā);驗收濾波器控制4 B代碼、4 B屏蔽等。

CAN總線收發(fā)器選用Philips公司生產(chǎn)的專用CAN總線收發(fā)器PCA82C250,提供CAN總線協(xié)議控制器和物理總線接口,而且對CAN總線控制器提供差動接收能力。基本特性如下:高速率(最高達(dá)1 Mb/s);具有抗瞬間干擾和保護(hù)總線的能力;利用斜率控制,可降低射頻干擾;使用差分接收器,可抗寬范圍的共模干擾,以及抗電磁干擾;熱保護(hù);低電流待機(jī)模式;未上電的節(jié)點(diǎn)對總線無影響;可以支持多達(dá)110個節(jié)點(diǎn)。 [page]

為了增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,并不是在SJA1000與PCA82C250之間直接相連,而是加入了高速光耦隔離器。這樣能很好地實(shí)現(xiàn)總線上各個CAN總線節(jié)點(diǎn)之間的電氣隔離。在該系統(tǒng)中高速光耦采用6N137。6N137兼容TTL和COMS電平,可通過信號的寬度為10 MHz,完全可滿足CAN總線信號1 Mb/s通信速率的要求。

2.2 開關(guān)量數(shù)據(jù)采集單元硬件設(shè)計

該單元用于采集現(xiàn)場的開關(guān)量數(shù)據(jù)的采集。硬件電路圖如圖4所示。

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

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

2.3 控制單元硬件設(shè)計

該單元用于控制現(xiàn)場外部設(shè)備的運(yùn)行。該單元硬件電路如圖5所示。

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

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

3、 軟件設(shè)計

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

3.1 數(shù)據(jù)采集與控制模塊程序設(shè)計

數(shù)據(jù)采集與控制模塊程序設(shè)計流程圖如圖6所示。

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

3.2 CAN總線通信程序設(shè)計

CAN總線通信程序設(shè)計分為三個部分:CAN總線初始化、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收。

(1)CAN總線初始化。CAN總線初始化主要是設(shè)置一些通信參數(shù),保證通信的正常進(jìn)行。初始化主要包括工作方式的設(shè)置、驗收濾波方式的設(shè)置、驗收屏蔽寄存器和驗收代碼寄存器的設(shè)置、波特率參數(shù)設(shè)置、中斷允許寄存器的設(shè)置等。特別需要注意的是,初始化只有在復(fù)位模式下才可以進(jìn)行,因為SJA1000配置信息的寄存器只有在復(fù)位模式下才可以進(jìn)行寫操作。

(2)數(shù)據(jù)發(fā)送。數(shù)據(jù)發(fā)送前,微處理器周期查詢狀態(tài)寄存器,查看發(fā)送緩沖器是否被鎖定。若沒有鎖定,則把從現(xiàn)場取得的開關(guān)量數(shù)據(jù)發(fā)向CAN總線控制器的發(fā)送緩沖區(qū),然后啟動CAN總線控制器發(fā)送命令,此時CAN總線控制器自動向總線發(fā)送數(shù)據(jù)。數(shù)據(jù)發(fā)送的流程圖如圖7所示。

基于STC89C52RC單片機(jī)和SJA1000總線控制器實(shí)現(xiàn)采集與控制模塊的設(shè)計

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

4、 結(jié)語

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

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6039

    文章

    44583

    瀏覽量

    636571
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16404

    瀏覽量

    178632
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2891

    瀏覽量

    88186
收藏 人收藏

    評論

    相關(guān)推薦

    關(guān)于STC89C52RC單片機(jī)問題

    大家好!我是新手如何實(shí)現(xiàn)STC89C52RC單片機(jī)數(shù)碼管交替顯示時間與溫度,請?zhí)峁╇娐芳俺绦?
    發(fā)表于 11-12 11:25

    CAN控制器SJA1000片選基址怎么確定?

    初學(xué)CAN總線,在學(xué)習(xí)SJA1000時不知道怎樣確定其片選基址,書上說將SJA1000當(dāng)做外部存儲來對待,其基址根據(jù)具體的硬件電路來確定,用的是S
    發(fā)表于 07-03 20:53

    基于STC89C52RC單片機(jī)與MATLAB的PM2.5數(shù)據(jù)采集系統(tǒng)設(shè)計

    摘要:本文設(shè)計了基于STC89C52RC單片機(jī)與MATLAB的PM2.5數(shù)據(jù)采集系統(tǒng)。通過STC89C52RC單片機(jī)與夏普GP2Y1010A
    發(fā)表于 07-20 06:12

    初識STC89C52RC單片機(jī)

    怎樣去使用STC89C52RC單片機(jī)的定時呢?怎樣去使用STC89C52RC單片機(jī)的串口呢?
    發(fā)表于 10-20 07:32

    SJA1000控制器在多電機(jī)綜合保護(hù)中的應(yīng)用

    介紹了基于獨(dú)立CAN總線控制器SJA1000的井下多電機(jī)綜合保護(hù)的設(shè)計過程。圍繞綜合保護(hù)核心控制器
    發(fā)表于 12-08 16:43 ?45次下載

    STC89C52RC單片機(jī)或AT89S52單片機(jī)串口發(fā)送溫濕度數(shù)據(jù)的程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是STC89C52RC單片機(jī)或AT89S52單片機(jī)串口發(fā)送溫濕度數(shù)據(jù)的程序免費(fèi)下載。
    發(fā)表于 07-11 17:40 ?37次下載
    <b class='flag-5'>STC89C52RC</b><b class='flag-5'>單片機(jī)</b>或AT<b class='flag-5'>89S52</b><b class='flag-5'>單片機(jī)</b>串口發(fā)送溫濕度數(shù)據(jù)的程序免費(fèi)下載

    STC89C52RC單片機(jī)實(shí)現(xiàn)模擬路燈控制系統(tǒng)的詳細(xì)資料說明

    模擬路燈控制系統(tǒng)由信號采集電路、定時電路、控制電路、顯示電路、輸入電路組成。系統(tǒng)的控制部分由STC89C52RC
    發(fā)表于 09-06 08:00 ?1次下載
    由<b class='flag-5'>STC89C52RC</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>實(shí)現(xiàn)</b>模擬路燈<b class='flag-5'>控制</b>系統(tǒng)的詳細(xì)資料說明

    使用STC89C52RC單片機(jī)實(shí)現(xiàn)的流水燈代碼和工程文件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用STC89C52RC單片機(jī)實(shí)現(xiàn)的流水燈代碼和工程文件免費(fèi)下載。
    發(fā)表于 11-15 08:00 ?26次下載
    使用<b class='flag-5'>STC89C52RC</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>實(shí)現(xiàn)</b>的流水燈代碼和工程文件免費(fèi)下載

    基于STC89C52RC單片機(jī)的智能定時開關(guān)電源

    基于STC89C52RC單片機(jī)的智能定時開關(guān)電源
    發(fā)表于 05-25 11:50 ?74次下載

    51單片機(jī)入門模板(STC89C52RC

    模板STC89C52RC單片機(jī)使用11.0592MHz的晶振,若使用12MHz晶振可修改定時相關(guān)位置STC89C52RC原理圖模板及分析1.主要結(jié)構(gòu)#include <reg
    發(fā)表于 11-17 09:51 ?46次下載
    51<b class='flag-5'>單片機(jī)</b>入門模板(<b class='flag-5'>STC89C52RC</b>)

    8051單片機(jī)實(shí)戰(zhàn)分析(以STC89C52RC為例) | 10 - 外部中斷的使用

    在前面九篇博文中,我們認(rèn)識到了一些基于IO口輸入與輸出的基礎(chǔ)電子器件使用:8051單片機(jī)實(shí)戰(zhàn)分析(以STC89C52RC為例) | 01 - 點(diǎn)亮一個LED8051單片機(jī)實(shí)戰(zhàn)分析(以
    發(fā)表于 11-22 14:06 ?33次下載
    8051<b class='flag-5'>單片機(jī)</b>實(shí)戰(zhàn)分析(以<b class='flag-5'>STC89C52RC</b>為例) | 10 - 外部中斷的使用

    【51單片機(jī)】基于STC89C52RC的心型燈

    【51單片機(jī)】基于STC89C52RC的心型燈
    發(fā)表于 11-23 17:06 ?29次下載
    【51<b class='flag-5'>單片機(jī)</b>】基于<b class='flag-5'>STC89C52RC</b>的心型燈

    【51單片機(jī)】基于STC89C52RC的電子秒表

    【51單片機(jī)】基于STC89C52RC的電子秒表
    發(fā)表于 11-23 17:21 ?51次下載
    【51<b class='flag-5'>單片機(jī)</b>】基于<b class='flag-5'>STC89C52RC</b>的電子秒表

    【轉(zhuǎn)】STC89C52RC單片機(jī)實(shí)現(xiàn)串口打印功能

    【轉(zhuǎn)】STC89C52RC單片機(jī)實(shí)現(xiàn)串口打印功能
    發(fā)表于 11-25 16:06 ?19次下載
    【轉(zhuǎn)】<b class='flag-5'>STC89C52RC</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>實(shí)現(xiàn)</b>串口打印功能

    單片機(jī)STC89C52RC病床呼叫控制系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《單片機(jī)STC89C52RC病床呼叫控制系統(tǒng).pdf》資料免費(fèi)下載
    發(fā)表于 10-11 09:20 ?4次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>STC89C52RC</b>病床呼叫<b class='flag-5'>控制</b>系統(tǒng)
    主站蜘蛛池模板: 亚洲高清在线视频| 忘忧草在线影院WWW日本动漫| 俄罗斯黄色大片| jizz非洲| 99无人区码一码二码三| 506070老熟肥妇bbwxx视频| 艺术片 快播| 国内国外精品影片无人区| 国产GV无码A片在线观看| 边做边爱播放3免费观看| xxxjapanese丰满奶水| MELODY在线播放无删减| write as 跳蛋| 不知火舞vs精子| 高清无码中文字幕影片| 国产国语在线播放视频| 国产精品青草久久福利不卡| 国产精品嫩草影院在线观看免费| 国产成人自拍视频在线观看| 国产精品爽黄69天堂A片| 国产精品一库二库三库| 国产一区二区三区国产精品| 好色女博士| 久久亚洲精品成人综合| 蜜柚视频高清在线| 青青精品视频国产| 手机国产视频福利| 校草让我脱了内裤给全班看| 亚洲精品无码专区在线播放| 在线播放成人无码日| 97无码欧美熟妇人妻蜜桃天美| ebc5恐怖5a26房间| 国产成人综合高清在线观看| 国产私拍福利精品视频| 久久国产精品萌白酱免费| 蜜桃久久久亚洲精品成人| 欧洲馒头大肥p| 忘忧草直播| 一本道久在线综合道| 99精品电影| 国产成人免费在线|