新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于CAN總線的智能繼電器研究

基于CAN總線的智能繼電器研究

作者: 時(shí)間:2012-05-22 來源:網(wǎng)絡(luò) 收藏

摘要:為解決電氣系統(tǒng)中控制距離短,開關(guān)響應(yīng)實(shí)時(shí)性不強(qiáng),一般節(jié)點(diǎn)容易受到外界干擾,系統(tǒng)掉電后數(shù)據(jù)丟失等一些列問題,結(jié)合微電子技術(shù)、微處理器的特點(diǎn),以及的優(yōu)勢(shì),對(duì)以AT89C51和SJA1000為控制核心,采用模塊化編程設(shè)計(jì)的進(jìn)行了。結(jié)果表明,能更進(jìn)一步提高系統(tǒng)的控制距離,有效檢測(cè)系統(tǒng)中的大電流,并及時(shí)通斷開關(guān),對(duì)突發(fā)性電源故障能進(jìn)行可靠檢測(cè),并及時(shí)保存重要數(shù)據(jù),提高了系統(tǒng)的抗干擾性,也可以接入網(wǎng)絡(luò),使得對(duì)的控制變得更為靈活。

本文引用地址:http://butianyuan.cn/article/171425.htm

關(guān)鍵詞:CAN總線;;微電子技術(shù);模塊化編程

0 引言

過去的幾十年里,在很多電氣設(shè)備中,比如車輛、艦船、飛機(jī)等中的電氣用電設(shè)備,它們一直采用保險(xiǎn)絲盒斷路器等被動(dòng)防護(hù)裝置,致使無法故障預(yù)警,故障診斷起來也比較困難,嚴(yán)重影響了設(shè)備的整體性能;同時(shí),由于總線類設(shè)備能提供信息查詢、故障記錄、參數(shù)保護(hù)等功能。因此在一些底層器件中引入總線技術(shù),能更方便用戶配置系統(tǒng),就像設(shè)備中多了很多對(duì)眼睛,可以很好地把握設(shè)備的工作情況。所以研發(fā)具有預(yù)警和診斷功能的新器件勢(shì)在必行。

本文中主要是在繼電器中引入總線技術(shù),使得繼電器具有總線通信功能。通過總線繼電器控制模塊可以將具有智能化、網(wǎng)絡(luò)化功能的電器節(jié)點(diǎn)模塊有機(jī)的組合起來,構(gòu)成一種新的電氣負(fù)載管理系統(tǒng),即針對(duì)系統(tǒng)發(fā)出的指令進(jìn)行邏輯切換和信息反饋,以實(shí)現(xiàn)數(shù)據(jù)采集、過載保護(hù)、狀態(tài)檢測(cè)及故障記錄等功能,大大提高了系統(tǒng)的可靠性、可維護(hù)性、可擴(kuò)展性。下面將結(jié)合總線智能繼電器的功能從5個(gè)方面來它的軟件設(shè)計(jì):系統(tǒng)初始化、報(bào)文的收發(fā)處理、信號(hào)的數(shù)據(jù)采集、看門狗程序的軟件設(shè)計(jì)及數(shù)據(jù)保護(hù)等5部分。

1 系統(tǒng)的初始化

系統(tǒng)的初始化包括2部分:一部分是單片機(jī)初始化;另一部分是SJA1000的初始化。

1.1 單片機(jī)的初始化

文中使用的單片機(jī)是美國Atmel公司生產(chǎn)的AT89C51單片機(jī),該款單片機(jī)的特點(diǎn)是低電壓、高性能、CMOS工藝、片內(nèi)含有4 KB可反復(fù)擦寫只讀存儲(chǔ)器和128 B的隨機(jī)存儲(chǔ)器,兼容MCS-51指令集,片內(nèi)還含有8位的CPU和FLASH存儲(chǔ)單元,廣泛靈活運(yùn)用于各種控制領(lǐng)域。設(shè)計(jì)中使用該單片機(jī)完成和SJA1000的端口初始化、外部中斷設(shè)置、定時(shí)器設(shè)置。其中和SJA1000的端口初始化用來片選SJA1000,外部中斷0用來檢測(cè)電源故障,外部中斷1用來讀取SJA1000收到的報(bào)文,定時(shí)器0用來看門狗定期復(fù)位,定時(shí)器1用來記錄繼電器觸點(diǎn)接通時(shí)間。圖1是單片機(jī)初始化流程圖。

a.JPG

1.2 SJA1000的初始化

SJA1000是一款總線控制器,它的作用是為了保證總線控制器局域網(wǎng)絡(luò)中的網(wǎng)絡(luò)層次結(jié)構(gòu)中數(shù)據(jù)鏈路層和物理層的可靠通信,這一功能的實(shí)現(xiàn)主要得益于該芯片上具有可編程的邏輯電路,并且還有和微處理器相連接的接口。它內(nèi)部由很多寄存器,微控制器通過對(duì)這些寄存器控制,可以設(shè)置它的工作方式、工作狀態(tài)、報(bào)文的收發(fā)格式。

SJA1000的初始化主要是完成一些寄存器的配置。要完成這些配置,該控制器必須處于復(fù)位模式下。它進(jìn)入復(fù)位模式的情況通常有3種:上電復(fù)位、硬件復(fù)位和軟件復(fù)位。復(fù)位后,需要設(shè)置的寄存器通常有以下幾個(gè):控制寄存器、模式寄存器、時(shí)鐘分頻寄存器、驗(yàn)收濾波器、中斷使能寄存器、總線定時(shí)器和輸出控制器。完成這些寄存器的配置后,就要退出復(fù)位模式,進(jìn)入工作模式。它的初始化流程圖如圖2所示。

2 報(bào)文的收發(fā)處理

對(duì)SJA1000的操作通常有2種方案,一種是時(shí)序模擬模式;另一種便是用擴(kuò)展RAM的模式來完成。該控制器通常有2種讀寫模式,一種是Intel模式;另一種是Motorola模式,由于它的管腳設(shè)置和普通的RAM管腳設(shè)置相似,因此文中采用擴(kuò)展RAM的模式來實(shí)現(xiàn)總線的報(bào)文收發(fā)??偩€繼電器的報(bào)文的處理包括2部分,即數(shù)據(jù)的接收處理,報(bào)文的發(fā)送處理。

2.1 報(bào)文的接收

報(bào)文的接收是由該控制器自動(dòng)完成,文中要做的就是要把信息從接收緩存中讀出來,然后將讀出來的信息存放在數(shù)據(jù)存儲(chǔ)器中。一條數(shù)據(jù)報(bào)文能否被成功地接收由驗(yàn)收濾波器模式控制位、驗(yàn)收代碼寄存器、驗(yàn)收代碼屏蔽寄存器、報(bào)文標(biāo)識(shí)符共同決定。只有通過驗(yàn)收濾波器的過濾的報(bào)文才能被接收,否則是不能送到控制器接收緩沖區(qū)的。當(dāng)報(bào)文成功通過驗(yàn)收濾波器并被送入接收緩沖中后,會(huì)置位接收緩沖區(qū)狀態(tài)位,如果這個(gè)時(shí)候使能接收中斷RIE,就會(huì)產(chǎn)生接收中斷,使得控制器的INT的電平發(fā)生變化,此時(shí)中斷微控制器。接下來微處理器的任務(wù)大致由下面三步分組成,首先要監(jiān)視控制器的狀態(tài),確定一下是否有需要讀取的報(bào)文;其次便是將接收緩沖區(qū)中的數(shù)據(jù)讀出來存放到數(shù)據(jù)存儲(chǔ)器中并需要置位接收處理標(biāo)志;最后便是處理接收到的報(bào)文。需要注意的是處理接收?qǐng)?bào)文的目的主要是為驅(qū)動(dòng)繼電器做準(zhǔn)備。報(bào)文的接收處理流程圖如圖3所示。

b.JPG

2.2 報(bào)文的發(fā)送

報(bào)文的發(fā)送負(fù)責(zé)將待發(fā)數(shù)據(jù)發(fā)到總線上。第一屏蔽相關(guān)中斷,避免收到的數(shù)據(jù)對(duì)發(fā)送的影響;第二要對(duì)和報(bào)文發(fā)送相關(guān)的數(shù)據(jù)寄存器進(jìn)行設(shè)置,確定通信的目標(biāo)節(jié)點(diǎn),同時(shí)準(zhǔn)備好要發(fā)送的數(shù)據(jù);第三在發(fā)送之前要對(duì)SJA1000發(fā)送緩沖區(qū)是否有待發(fā)送的數(shù)據(jù)進(jìn)行檢查,如果沒有待發(fā)送的數(shù)據(jù)或者正在發(fā)送的數(shù)據(jù),則可以將準(zhǔn)備好的數(shù)據(jù)發(fā)送到控制器發(fā)送緩沖區(qū)做好發(fā)送準(zhǔn)備,否則新的報(bào)文是不能寫入發(fā)送緩沖區(qū)的;第四就是把要發(fā)送的報(bào)文寫入控制器發(fā)送緩沖區(qū),準(zhǔn)備發(fā)送;第五就是置位發(fā)送請(qǐng)求標(biāo)志位,之后控制器會(huì)自動(dòng)完成報(bào)文的發(fā)送。信息的發(fā)送流程圖如圖4所示。

c.JPG

繼電器相關(guān)文章:繼電器工作原理


時(shí)間繼電器相關(guān)文章:時(shí)間繼電器



上一頁 1 2 3 下一頁

關(guān)鍵詞: 繼電器 研究 智能 總線 CAN 基于

評(píng)論


相關(guān)推薦

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

關(guān)閉