四通道位置控制的CAN總線節(jié)點(diǎn)設(shè)計(jì)與實(shí)現(xiàn)
出處:tuwen 發(fā)布于:2007-04-29 11:52:35
關(guān)鍵詞:CAN總線;位置隨動(dòng)系統(tǒng);D/A轉(zhuǎn)換;多路模擬開關(guān)
概述
根據(jù)課題要求,并經(jīng)充分考慮CAN總線數(shù)據(jù)通訊的特點(diǎn)、四個(gè)通道位置控制規(guī)律及實(shí)際工程的環(huán)境與條件之后,設(shè)計(jì)了一個(gè)CAN總線節(jié)點(diǎn),并利用四個(gè)通道的控制信號(hào)來實(shí)施四路位置控制。該系統(tǒng)的結(jié)構(gòu)關(guān)系如圖1所示,根據(jù)該圖可以把本文中要描述的系統(tǒng)劃分為三個(gè)部分:CAN總線接口電路、單片機(jī)系統(tǒng)、D/A轉(zhuǎn)換電路。CAN總線接口電路主要提供CAN總線物理層通訊協(xié)議所要求的電氣連接,保證可靠通訊;單片機(jī)系統(tǒng)是本CAN總線節(jié)點(diǎn)的中樞,主要是控制和協(xié)調(diào)各部分的正常工作,并按算法計(jì)算形成四通道的控制信號(hào);D/A轉(zhuǎn)換電路則要把單片機(jī)所形成的四個(gè)通道的數(shù)字控制信號(hào)轉(zhuǎn)化為四路模擬控制信號(hào)去驅(qū)動(dòng)四路的電機(jī)控制系統(tǒng),同時(shí)要保證系統(tǒng)允許的延時(shí)和信號(hào)的線性度,終完成對(duì)四通道的位置控制。
硬件設(shè)計(jì)
CAN總線接口電路設(shè)計(jì)
完整的接口電路原理圖如圖2所示,該電路包含了CAN總線協(xié)議控制芯片SJA1000(與PCX82C200兼容)和CAN總線驅(qū)動(dòng)芯片82C250以及它們各自的外圍電路。在此只討論實(shí)現(xiàn)過程中幾個(gè)具體問題。
片選信號(hào):總體方案設(shè)計(jì)中確定了本系統(tǒng)地址空間的分配,CAN總線接口電路占用了C000~DFFF。為了有效利用已有的邏輯芯片,采用線選法產(chǎn)生片選信號(hào)CanSelt。片選信號(hào)CanSelt低電平有效。
總線連接:由于SJA1000本身具有分時(shí)復(fù)用的8位地址數(shù)據(jù)總線,并且引腳3、引腳5以及引腳6分別對(duì)應(yīng)單片機(jī)地址鎖存信號(hào)ALE、讀信號(hào)和寫信號(hào),因此可以直接與80C196KC單片機(jī)的地址數(shù)據(jù)總線、控制總線對(duì)應(yīng)連接。
中斷信號(hào):當(dāng)SJA1000進(jìn)行總線通信,需要單片機(jī)參與處理時(shí),就在引腳16產(chǎn)生一個(gè)中斷信號(hào)。這些觸發(fā)中斷的事件包括總線上成功接收到有效數(shù)據(jù)幀、成功發(fā)送數(shù)據(jù)幀、CAN協(xié)議芯片被其它CAN節(jié)點(diǎn)喚醒、接收緩沖區(qū)超限以及總線狀態(tài)出錯(cuò)等。引腳16平時(shí)維持高電平,中斷時(shí)產(chǎn)生一個(gè)負(fù)跳變信號(hào)。由于80C196KC單片機(jī)的外部中斷正跳變信號(hào)有效,所以SJA1000的中斷信號(hào)要經(jīng)過一個(gè)非門再送到單片機(jī)的外部中斷引腳。但在實(shí)際電路中,無中斷產(chǎn)生時(shí),SJA1000的引腳16是觀察不到高電平的,只能觀察到0.7V~0.8V的電平信號(hào)。這是因?yàn)楦唠娖奖幌录?jí)的非門導(dǎo)通拉低所致,不影響正常使用。
多路D/A轉(zhuǎn)換通道電路設(shè)計(jì)
CAN總線是一種串行總線,總線上傳輸?shù)男畔⑹菙?shù)字信號(hào),而已有的電機(jī)控制系統(tǒng)是模擬控制系統(tǒng),因此需要設(shè)計(jì)D/A轉(zhuǎn)換電路來解決這一問題。在D/A轉(zhuǎn)換接口設(shè)計(jì)中主要考慮的問題是D/A轉(zhuǎn)換芯片的選擇、數(shù)字量的碼輸入及模擬量的極性輸出、參考電壓電流源、模擬電量輸出的調(diào)整與分配等?;谏鲜鲆蛩?,本設(shè)計(jì)電路結(jié)構(gòu)如圖3所示。在該結(jié)構(gòu)中采用同一個(gè)D/A轉(zhuǎn)換芯片分時(shí)、分別對(duì)各路信號(hào)進(jìn)行D/A轉(zhuǎn)換,再由一個(gè)多路采樣保持電路將轉(zhuǎn)換結(jié)果分時(shí)提取,并送到各路模擬信號(hào)通道。
由于電機(jī)模擬控制系統(tǒng)的性能指標(biāo)如下:
輸入/輸出關(guān)系:輸入為±10V;對(duì)應(yīng)電機(jī)輸出齒輪軸轉(zhuǎn)動(dòng)為±250;位置控制:角度誤差≤±0.10;
則0.1雜Φ男藕諾繆?:
又知D/A轉(zhuǎn)換分辨率頻畝ㄒ邐?
另外,雙極性輸出情況下,有效位MSB用作符號(hào)位,決定輸出電壓的極性。由以上則可得出,為了滿足電機(jī)模擬控制系統(tǒng)要求的D/A器件所需位數(shù)為9位。但是在實(shí)際中電路器件或電源的誤差是不可避免的,所以根據(jù)經(jīng)驗(yàn)應(yīng)選用12位D/A轉(zhuǎn)換器件,以保證實(shí)際D/A轉(zhuǎn)換的結(jié)果滿足系統(tǒng)指標(biāo)的要求。
在圖3中,多路模擬開關(guān)與保持電路實(shí)際上構(gòu)成的是一個(gè)采樣保持器,該采樣保持器的設(shè)計(jì)在本文所述的多路D/A轉(zhuǎn)化電路設(shè)計(jì)中是至關(guān)重要的。采樣保持器一般由模擬開關(guān)、存儲(chǔ)元件(保持電容)和緩沖放大器組成,保持電容在實(shí)際應(yīng)用中還起到了信號(hào)濾波的作用。如果在模擬開關(guān)之后不加保持電容或加得不當(dāng),都會(huì)在終模擬輸出的波形上出現(xiàn)尖峰脈沖。根據(jù)調(diào)試經(jīng)驗(yàn)該保持電容取0.01mF時(shí)的效果較好。取得太小,則“毛刺”不能有效被去除,取得太大則影響D/A轉(zhuǎn)換電路的速度。另外,當(dāng)采樣開關(guān)(多路模擬開關(guān))斷開后,保持電容進(jìn)入信號(hào)電壓保持狀態(tài)。由于采樣開關(guān)、保持電容、輸出緩沖放大器都存在漏電流,所以會(huì)造成保持電容中電量的流失。如設(shè)保持電壓U=10V,保持電容C取0.01mF,則可以計(jì)算出放電時(shí)間t=1s。可見,控制模擬開關(guān)的關(guān)斷時(shí)間要大于20ms,小于1s。
軟件設(shè)計(jì)
軟件設(shè)計(jì)是圍繞CAN總線通訊進(jìn)行的,它包括CAN總線通訊初始化、CAN總線數(shù)據(jù)幀的定義和通訊中斷服務(wù)程序設(shè)計(jì)。
CAN總線通訊初始化
在系統(tǒng)上電復(fù)位后,程序?qū)⑼瓿上旅鎯身?xiàng)工作:
1)根據(jù)硬件系統(tǒng)的連接方式和要求確定微處理器的設(shè)置。
2)在SJA1000復(fù)位后,需要設(shè)置與通信相關(guān)的參數(shù):模式的選擇、接收碼寄存器、接收屏蔽寄存器和總線定時(shí)等。
在系統(tǒng)運(yùn)行的過程中,也可以發(fā)出一個(gè)復(fù)位請(qǐng)求,根據(jù)實(shí)際情況重新確定系統(tǒng)的通信參數(shù)。初始化的流程圖如圖4所示。
另外,在調(diào)試的過程中確定出了一套CAN總線通信參數(shù)。決定CAN總線波形的寄存器有下面幾個(gè):CAN_TIMER1(總線定時(shí)器0)、CAN_TIMER2(總線定時(shí)器1)、CAN_OUT_CTRL(輸出寄存器)??偩€定時(shí)器0的內(nèi)容決定波特率預(yù)分頻器(BRP)和同步跳轉(zhuǎn)寬度(SJW)的數(shù)值;總線定時(shí)器1的內(nèi)容決定位周期寬度、采樣點(diǎn)位置和在每個(gè)采樣點(diǎn)獲取采樣點(diǎn)的數(shù)目。經(jīng)過實(shí)際調(diào)試,采用如下設(shè)置參數(shù):
ldb T1,#81h
;設(shè)置總線定時(shí)器0
stb T1,CAN_TIMER1
ldb T1,#0c1h
;設(shè)置總線定時(shí)器1
stb T1,CAN_TIMER2
ldb T1,#0aah
;設(shè)置輸出寄存器
stb T1,CAN_OUT_CTRL
CAN總線數(shù)據(jù)幀的定義
Basic模式下,CAN總線幀包含10個(gè)字節(jié)。其中前兩個(gè)字節(jié)是描述符,后八個(gè)字節(jié)是數(shù)據(jù)長。本軟件設(shè)計(jì)中采用的數(shù)據(jù)幀結(jié)構(gòu)的特點(diǎn)是:
1)指令動(dòng)作類型由11位的標(biāo)識(shí)符定義,可滿足不同類型的控制要求。
2)各通道的控制指令由幀數(shù)據(jù)長中的16位雙字節(jié)給出,滿足系統(tǒng)12位要求。
3)每次數(shù)據(jù)幀傳送,同時(shí)給出4個(gè)通道的控制指令與動(dòng)作類型,單幀信息容量大,節(jié)約系統(tǒng)通信資源。
通訊中斷服務(wù)程序
如果SJA1000收到一個(gè)報(bào)文,通過接收碼寄存器和接收屏蔽寄存器,并放到接收緩存中后,控制器就會(huì)產(chǎn)生一個(gè)接收中斷。這樣,微處理器可以很快的響應(yīng),接收緩沖區(qū)的數(shù)據(jù),并根據(jù)實(shí)際的數(shù)據(jù)進(jìn)行相應(yīng)的處理,然后通過設(shè)置命令寄存器釋放接收緩沖區(qū)。接收緩存新的報(bào)文到來將產(chǎn)生一個(gè)新的接收中斷。
在CAN總線節(jié)點(diǎn)的軟件設(shè)計(jì)過程中還要注意數(shù)據(jù)超載,當(dāng)接收緩沖區(qū)已經(jīng)滿了,但又收到了一個(gè)新的報(bào)文信息,這時(shí),就會(huì)產(chǎn)生一個(gè)數(shù)據(jù)超載中斷。同時(shí),狀態(tài)寄存器中的“數(shù)據(jù)超載位”將被置位,用以通知微處理器,必須有相應(yīng)的程序?qū)@種情況進(jìn)行處理。
結(jié)語
本文所介紹的方案中,用單CAN總線節(jié)點(diǎn)及一路D/A轉(zhuǎn)換器件與模擬選擇開關(guān)相結(jié)合來實(shí)現(xiàn)對(duì)四路位置的隨動(dòng)系統(tǒng)控制。與其它方案相比有結(jié)構(gòu)簡單、實(shí)現(xiàn)容易,課題開銷少等優(yōu)點(diǎn)。對(duì)其它類似設(shè)計(jì)有可借鑒性?!?/P>
參考文獻(xiàn)
1 孫涵芳. intel 16位單片機(jī). 北京航空航天大學(xué)出版社,1995
2 鄔寬明. CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì). 北京航空航天大學(xué)出版社,1997
3 張松春,竺子蘭. 電子控制設(shè)備抗干擾技術(shù)及其應(yīng)用. 機(jī)械工業(yè)出版社,1994
4 SJA1000 datasheet http://www.hbjingang.com/datasheet/SJA1000_609075.html.
5 80C196KC datasheet http://www.hbjingang.com/datasheet/80C196KC_103576.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開發(fā)實(shí)踐指南2026/1/6 10:40:19
- 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計(jì)實(shí)踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時(shí)代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識(shí)2025/7/14 16:59:04
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測(cè)試方法
- PCB電磁兼容(EMC)設(shè)計(jì)與干擾抑制核心實(shí)操規(guī)范
- 用于相位噪聲測(cè)量的低通濾波器設(shè)計(jì)與本振凈化技術(shù)
- MOSFET在高頻開關(guān)中的EMI問題
- 電源IC在便攜式設(shè)備中的設(shè)計(jì)要點(diǎn)
- 連接器結(jié)構(gòu)設(shè)計(jì)常見問題分析









