《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計(jì)應(yīng)用 > 基于CAN總線的數(shù)控系統(tǒng)測控模塊設(shè)計(jì)
基于CAN總線的數(shù)控系統(tǒng)測控模塊設(shè)計(jì)
微計(jì)算機(jī)信息
孫健
摘要: " /> <link href="http://1.eewimg.cn/js/lib/jquery.cluetip.css" rel="stylesheet" type="text/css
Abstract:
Key words :

1 引言  

    用計(jì)算機(jī)或微控制器通過一種或多種總線方式,實(shí)現(xiàn)與現(xiàn)場各種設(shè)備的通信,并通過總線實(shí)現(xiàn)對(duì)現(xiàn)場設(shè)備進(jìn)行必要控制的計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)稱為底層測控通信網(wǎng)絡(luò)系統(tǒng),簡稱底層測控網(wǎng)絡(luò)。本文是針對(duì)數(shù)控系統(tǒng)方面來展開研究的,提出了一種基于CAN總線的數(shù)控系統(tǒng)底層測控網(wǎng)絡(luò), 現(xiàn)場設(shè)備就是數(shù)控機(jī)床等數(shù)控設(shè)備,。  

2 CAN總線的基本工作原理  

    CAN總線的拓?fù)浣Y(jié)構(gòu)是一個(gè)典型的串行總線的結(jié)構(gòu)形式,。CAN總線中一個(gè)節(jié)點(diǎn)發(fā)送信息,多個(gè)節(jié)點(diǎn)接收信息;但CAN總線的信息存取方式采用的是一種廣播式的存取工作方式。在CAN總線的通信協(xié)議中支持的是基于報(bào)文的工作方式,。也就是說加入或撤銷節(jié)點(diǎn)設(shè)備都不會(huì)影響網(wǎng)絡(luò)的工作,十分適用于控制系統(tǒng)要求快速,、可靠、簡明的特點(diǎn),。CAN總線的數(shù)據(jù)通信具有突出的可靠性,、實(shí)時(shí)性和靈活性。CAN采用了CRC校驗(yàn)并可提供相應(yīng)的錯(cuò)誤處理功能,保證了數(shù)據(jù)通信的可靠性,。為了清楚地說明數(shù)控系統(tǒng)遠(yuǎn)程測控儀的工作原理,我們以結(jié)構(gòu)方框圖的形式表示如圖1所示,。輸入信號(hào)來自于數(shù)控機(jī)床電機(jī)編碼器的光電編碼器,輸出信號(hào)可以去伺服驅(qū)動(dòng)或控制其它需要的信號(hào),下面是它的工作原理:  


  圖1 基于CAN總線的數(shù)控系統(tǒng)遠(yuǎn)程測控儀的工作原理圖  

    由伺服電機(jī)編碼器的脈沖輸出信號(hào)進(jìn)入測控儀的輸入端,后經(jīng)計(jì)數(shù)器濾波、倍頻,、鑒相,、計(jì)數(shù)等;微處理器對(duì)采來的數(shù)據(jù)進(jìn)行一定較簡單處理,再轉(zhuǎn)發(fā)到CAN控制器的緩存器里面;時(shí)機(jī)成熟CAN控制器再進(jìn)一步發(fā)給CAN收發(fā)器(驅(qū)動(dòng)),最后CAN收發(fā)器把數(shù)據(jù)轉(zhuǎn)發(fā)給CAN總線、總管CAN節(jié)點(diǎn)的收發(fā)器,、CAN控制器;總管CAN節(jié)點(diǎn)充當(dāng)網(wǎng)關(guān)的作用,把底層CAN節(jié)點(diǎn)的數(shù)據(jù)取出來以便自己或其它對(duì)其進(jìn)行進(jìn)一步的復(fù)雜分析處理,相反上面來的數(shù)據(jù)依照同樣的道理可以通過CAN網(wǎng)關(guān)下傳到底層的CAN節(jié)點(diǎn),。就這樣底層和中間層進(jìn)行了數(shù)據(jù)信息的交流。底層的CAN節(jié)點(diǎn)也可以接受CAN總管節(jié)點(diǎn)發(fā)來的信息,通過輸出信號(hào)通道把命令傳給相應(yīng)的接口電路,、伺服系統(tǒng),以便對(duì)數(shù)控設(shè)備進(jìn)行控制,。  

3 基于DSP" rel="http://www.eeworld.com.cn/my/keyad/ti.html" target="_blank">DSP的CAN測控儀的設(shè)計(jì)與開發(fā)  

     本文選用的微處理器是由TI公司生產(chǎn)的TMS320LF2407?;?a class="jt" href="http://forexkbc.com/search/?q=DSP" rel="http://www.eeworld.com.cn/my/keyad/ti.html" target="_blank">DSP的CAN測控儀的系統(tǒng)原理框圖如圖2所示:  


  圖2 基于DSP的CAN測控儀的系統(tǒng)原理框圖  

    DSP用的CPU用TI公司的2000系列的TMs320LF2407實(shí)現(xiàn),光電隔離用6N137實(shí)現(xiàn),CAN驅(qū)動(dòng)器用PCA820C250實(shí)現(xiàn),。因?yàn)門MS320LF2407自帶有CAN控制器,所以這里就不用加控制器。  

3.1測控模塊硬件設(shè)計(jì)  

    智能結(jié)點(diǎn)包括信號(hào)采集,、信號(hào)處理及信號(hào)傳輸三大部分,根據(jù)所選用的微處理芯片所帶的外圍接口的不同,整個(gè)智能結(jié)點(diǎn)的結(jié)構(gòu)有所不同,。本系統(tǒng)所選用的TMS320LF2407帶有豐富的外圍接口,所以整個(gè)智能結(jié)點(diǎn)結(jié)構(gòu)簡潔,系統(tǒng)的可靠性極強(qiáng)。以TMS320LF2407為核心的智能結(jié)點(diǎn)電路包括以下部分:電源電路,、時(shí)鐘復(fù)位電路,、CAN總線接口電路、信號(hào)調(diào)理部分及外擴(kuò)存儲(chǔ)電路,其結(jié)構(gòu)框圖如圖3:  


  圖3 智能結(jié)點(diǎn)總體結(jié)構(gòu)圖  

    由于TMS320LF2407內(nèi)嵌CAN模塊,所以通過一個(gè)CAN驅(qū)動(dòng)器就可以與CAN總線相連。為了增強(qiáng)CAN總線結(jié)點(diǎn)的抗干擾能力,CANTX與CANRX并不直接與CAN驅(qū)動(dòng)器82C250的TXD和RXD相連,而是通過高速光耦6N137進(jìn)行電氣隔離后,再與82C250相接,。這樣就很好的實(shí)現(xiàn)了總線上各CAN節(jié)點(diǎn)間的電氣隔離,避免了相互之間的電氣干擾,。本系統(tǒng)中6N137所采用的電源3.3v、5V及5V-CAN是相互隔離的,保證了光耦器件的電氣隔離功能,。82C250與CAN總線的接口部分也采用了一定的安全和抗干擾措施,。82C250的CANH和CANL引腳各自通過一個(gè)5歐的電阻與CAN總線相接,電阻起到限制電流的作用,保護(hù)82C250免受過流的沖擊。CANH與CANL與地之間并聯(lián)了兩個(gè)30pF的小電容,可以起濾除總線上的高頻干擾,并具有一定的防電磁輻射的能力,。另外在兩根CAN總線輸入端與地之間分別接了一個(gè)防雷擊管,當(dāng)輸入端與地之間出現(xiàn)瞬變干擾時(shí),通過防雷擊管的放電可以起到一定的保護(hù)作用,。  

3.2 時(shí)鐘和復(fù)位電路設(shè)計(jì)  

3.2.1 時(shí)鐘電路設(shè)計(jì)  

    本文采用6M的晶體振蕩器,晶振的輸出直接連接到X2引腳,并將DSP的X1引腳懸空。在設(shè)計(jì)程序時(shí),設(shè)置DSP內(nèi)部的時(shí)鐘鎖相環(huán)為4倍頻,則CPU的工作時(shí)鐘就可達(dá)到24M,。  

3.2.2 復(fù)位電路設(shè)計(jì)  

    在設(shè)計(jì)中,使用了上電復(fù)位和按鍵復(fù)位相結(jié)合的簡單電路.在上電的瞬時(shí),電容相當(dāng)于短路,在上電的瞬時(shí),電容C16相當(dāng)于短路,此時(shí)RST為低電平,對(duì)芯片進(jìn)行復(fù)位處理,。經(jīng)這一段時(shí)間后,電容的電壓達(dá)到2V,則復(fù)位過程結(jié)束,芯片進(jìn)入正常工作區(qū)。當(dāng)按下K1時(shí),RST直接與地相連接,芯片進(jìn)行復(fù)位處理,。因此操作者可以根據(jù)自己的需要隨時(shí)對(duì)系統(tǒng)進(jìn)行復(fù)位操作,。  

3.3 電源電路設(shè)計(jì)  

    TM3S20LF2407A的工作電壓是.33v,而設(shè)計(jì)中用到的晶體振蕩器、光耦隔離器件6N137,、CAN驅(qū)動(dòng)器均為SV供電,因此以TMS320LF2407A為核心所構(gòu)成的應(yīng)用系統(tǒng)是一個(gè)混合電壓系統(tǒng),需要對(duì)電壓進(jìn)行轉(zhuǎn)換.系統(tǒng)中采用TI公司的甘57333Q電壓轉(zhuǎn)換芯片為DSP轉(zhuǎn)換.33V電壓,。  

3.4 外擴(kuò)存儲(chǔ)電路設(shè)計(jì)  

    TMs320LF2407片內(nèi)帶有4K程序/數(shù)據(jù)RAM,32KFLASH程序存儲(chǔ)器,芯片自帶的數(shù)據(jù)和程序存儲(chǔ)器己經(jīng)滿足了本監(jiān)控系統(tǒng)的要求,所以在實(shí)際應(yīng)用中硬件設(shè)計(jì)時(shí)不用擴(kuò)展數(shù)據(jù)和程序存儲(chǔ)器。但是作為初期的電路設(shè)計(jì),為了方便在線調(diào)試,設(shè)計(jì)了一片64K靜態(tài)隨機(jī)讀寫存儲(chǔ)器,在線調(diào)試時(shí)供程序,、數(shù)據(jù)共同使用,。  

3.5 信號(hào)調(diào)理電路設(shè)計(jì)  

    從傳感器傳來的信號(hào)均為電壓或電流信號(hào),在本智能結(jié)點(diǎn)上,設(shè)計(jì)了放大電路及濾波電路,對(duì)初始信號(hào)進(jìn)行放大處理和濾波處理。為了保證測量的精度,對(duì)于精度要求較高的信號(hào)采用儀用放大器AD6523來進(jìn)行放大,。而對(duì)于精度要求不高的信號(hào),則采用價(jià)格低廉的LM324來進(jìn)行放大處理,。  

    AD623可工作于單電源方式下,此時(shí)AD623的供電電壓范圍為3V-12V;DS623也可以工作在雙電源方式下,此時(shí)的電壓范圍為±5V到±6V。在本智能結(jié)點(diǎn)中,電源電路只提供3.3V和5V的電壓,且DSP的工作電壓為3.3V,所以采用單電源方式,。為了去藕,在靠電源腳處加了10μf的電容,。  

4 測控儀的軟件設(shè)計(jì)  

    智能結(jié)點(diǎn)的軟件包括系統(tǒng)的初始化模塊、數(shù)據(jù)采集模塊,、數(shù)據(jù)處理模塊和系統(tǒng)的傳輸模塊,。初始化模塊完成以下工作:根據(jù)芯片本身的功能和特征,所用的寄存器清零,程序FLASH區(qū)和數(shù)據(jù)RAM區(qū)初始化,中斷口設(shè)置等為主程序運(yùn)行準(zhǔn)備工作;還要檢查和保護(hù)系統(tǒng)電源,利用本身自帶的看門狗(WATCHDOG)監(jiān)視DSP芯片的各資源的硬件運(yùn)行情況。在DSP芯片能正常運(yùn)行后,進(jìn)入數(shù)據(jù)采集軟件的主程序運(yùn)行,。使用默認(rèn)配置參數(shù)分配數(shù)據(jù)采集卡系統(tǒng)的通道資源,、存儲(chǔ)器資源和總線占用資源.數(shù)據(jù)采集模塊以EMA中斷(事件管理中斷)中的定時(shí)器軟中斷啟動(dòng)LS7266R1采集一幀數(shù)據(jù);與其同時(shí),數(shù)據(jù)處理模塊對(duì)已采集完前一幀各通道數(shù)據(jù)做處理。數(shù)據(jù)的傳輸是通過CAN總線來完成的,所以數(shù)據(jù)傳輸模塊必須完成CAN總線通信功能,。在下面的兩節(jié)里,將根據(jù)TMS320LF2407的特點(diǎn)詳細(xì)介紹數(shù)據(jù)采集,、處理和傳輸模塊的設(shè)計(jì)。  

    CAN通信軟件的功能主要有兩個(gè):把智能結(jié)點(diǎn)的數(shù)據(jù)包裝成有效的CAN信息幀發(fā)給目標(biāo)結(jié)點(diǎn);從CAN總線上接收有效的數(shù)據(jù)幀,并將信息幀還原為原始數(shù)據(jù),供給CPU進(jìn)行下一步的操作,。數(shù)據(jù)幀的包裝和還原都是由DSP內(nèi)的CAN控制器來完成的,在通信軟件中,只需設(shè)置CAN控制器中的相應(yīng)寄存器就可以了,。TMS320LF2407的CAN控制器是一個(gè)完全的CAN控制器,。整個(gè)軟件流程如圖4:  


  
圖4 軟件流程圖  


圖5 CAN總線通信流程圖  

    有了CAN控制器的支持,CAN通信軟件的設(shè)計(jì)就變得簡潔明了。本系統(tǒng)CAN通信軟件設(shè)計(jì)思想是:將本系統(tǒng)向其它節(jié)點(diǎn)發(fā)送數(shù)據(jù)設(shè)計(jì)成函數(shù),當(dāng)本系統(tǒng)發(fā)送數(shù)據(jù)時(shí)調(diào)用此函數(shù),將數(shù)據(jù)發(fā)送到CAN總線上;本系統(tǒng)接收數(shù)據(jù)采用中斷方式,當(dāng)CAN控制器接收到數(shù)據(jù)后,向微控制器發(fā)出中斷響應(yīng)信號(hào),微控制器在中斷程序中將接收到的數(shù)據(jù)讀入,。整個(gè)系統(tǒng)對(duì)CAN總線通信軟件管理的流程圖如圖5所示,。  

    本文作者創(chuàng)新點(diǎn):  

    本文設(shè)計(jì)的基于CAN總線的數(shù)控系統(tǒng)底層測控模塊, 對(duì)數(shù)控機(jī)床的運(yùn)動(dòng)精度進(jìn)行測試。實(shí)現(xiàn)了與現(xiàn)場各種設(shè)備的通信,并通過總線實(shí)現(xiàn)對(duì)現(xiàn)場設(shè)備進(jìn)行必要控制, 使本地各設(shè)備的信息交互更加迅速,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。