基于CAN總線的智能控制器設(shè)計(jì)
摘要:隨著計(jì)算機(jī)技術(shù)、微處理器技術(shù)以及通訊技術(shù)的不斷發(fā)展,傳統(tǒng)儀表已經(jīng)不能適應(yīng)工控的要求。而CAN總線控制器的出現(xiàn)為工業(yè)控制系統(tǒng)向分散化、網(wǎng)絡(luò)化發(fā)展等開辟了新的空間。CAN控制器具有良好的穩(wěn)定性、高可靠性、較快的通訊速率以及低成本等特點(diǎn),且能夠有效支持實(shí)時(shí)、分布式控制,從而應(yīng)用于許多領(lǐng)域,本設(shè)計(jì)針對(duì)內(nèi)嵌CAN的STM32 F103RC處理器進(jìn)行深入研究,并以它為核心部件進(jìn)行CAN控制器軟硬件的設(shè)計(jì),該控制器兼容模擬量數(shù)字量的輸入,保證了通用性并具有較大的應(yīng)用范圍。在采集與輸出通道數(shù)量方面也得到了保障。例如由于工業(yè)需求要增加監(jiān)測(cè)點(diǎn)或執(zhí)行點(diǎn),本控制器可以解決此問題。從長(zhǎng)遠(yuǎn)考慮會(huì)降低用戶的投資成本,本控制器可以與其他CAN節(jié)點(diǎn)及上位機(jī)組成CAN總線遠(yuǎn)程監(jiān)控系統(tǒng),實(shí)現(xiàn)儀表網(wǎng)絡(luò)化,智能化。
本文引用地址:http://m.butianyuan.cn/article/201609/303576.htm關(guān)鍵詞:CAN總線;數(shù)據(jù)采集;數(shù)據(jù)處理;數(shù)據(jù)輸出;Stm32F103RC
現(xiàn)如今工業(yè)生產(chǎn)針對(duì)現(xiàn)場(chǎng)數(shù)據(jù)的采集與控制的要求在日益提高,生產(chǎn)實(shí)現(xiàn)自動(dòng)化處理,若繼續(xù)使用傳統(tǒng)的一對(duì)一連線式或“各自為戰(zhàn)”式集散系統(tǒng),企業(yè)的生存和發(fā)展將面臨著極大的挑戰(zhàn)。
為實(shí)現(xiàn)整個(gè)系統(tǒng)設(shè)備之間以及系統(tǒng)與外界之間的信息交換,就必須搭建一種性能優(yōu)越、可靠性高、造價(jià)低廉的通信系統(tǒng),并且要求該系統(tǒng)可運(yùn)行于工業(yè)環(huán)境中,實(shí)現(xiàn)底層系統(tǒng)與外界信息的交換,再者工業(yè)的發(fā)展也對(duì)現(xiàn)場(chǎng)控制器的性能也提出了更高的要求。在現(xiàn)場(chǎng)總線控制系統(tǒng)中,各個(gè)分散的測(cè)控設(shè)備作為獨(dú)立的網(wǎng)絡(luò)節(jié)點(diǎn),通過現(xiàn)場(chǎng)總線聯(lián)系起來,進(jìn)而實(shí)現(xiàn)信息互通,共同完成自動(dòng)化控制任務(wù)。工業(yè)CAN控制器的發(fā)展,推進(jìn)儀器儀表系統(tǒng)的數(shù)字化、智能化、網(wǎng)絡(luò)化進(jìn)程,所以基于CAN 總線的現(xiàn)場(chǎng)總線控制器的研究與開發(fā)具有非?,F(xiàn)實(shí)的意義。
本課題設(shè)計(jì)的CAN總線控制器,由技術(shù)角度出發(fā)可以總結(jié)為儀表系統(tǒng)。儀表系統(tǒng)是由各個(gè)功能模塊集合而成,但也可以分離組合,其由結(jié)構(gòu)劃分為集成式、混合式和模塊式3種形式。其中集成式儀表是將傳感器與微處理器、信號(hào)調(diào)理電路做在同一塊芯片上。集成度高、體積小,此傳感器在目前技術(shù)水平上實(shí)現(xiàn)較難。而混合式集成儀表系統(tǒng)是將傳感器的微處理器、信號(hào)調(diào)理電路做在不同芯片上,目前此結(jié)構(gòu)儀表系統(tǒng)結(jié)構(gòu)較多。而初級(jí)智能儀表系統(tǒng)可用相互獨(dú)立的模塊組成,如將微計(jì)算機(jī)、信號(hào)調(diào)理電路模塊,輸出電路模塊,顯示電路模塊與傳感器裝配在同一殼體內(nèi),組成模塊式傳感器,本系統(tǒng)將對(duì)模塊化的控制器進(jìn)行研究。
1 總體方案設(shè)計(jì)
本課題針對(duì)工業(yè)現(xiàn)場(chǎng)的數(shù)據(jù)采集設(shè)計(jì)了基于STM32的CAN總線的控制器,根據(jù)功能結(jié)構(gòu)的不同,該控制器將分為四大部分即現(xiàn)場(chǎng)數(shù)據(jù)采集、數(shù)據(jù)輸出、實(shí)時(shí)數(shù)據(jù)處理以及CAN總線控制器。此系統(tǒng)CAN總線控制器采用STM32F103RC為主芯片,作為數(shù)據(jù)處理、存儲(chǔ)及控制部分,考慮該控制器的通用性,在數(shù)據(jù)輸入部分設(shè)計(jì)采集8路模擬量和4路數(shù)字量信號(hào),8路模擬量通道可以接收由現(xiàn)場(chǎng)傳感器信號(hào)經(jīng)調(diào)理電路傳輸過來的標(biāo)準(zhǔn)電壓電流信號(hào)。輸出部分設(shè)計(jì)了4路模擬量和2路數(shù)字量輸出通道,其中4路模擬量的輸出通道,考慮到電壓輸出信號(hào)在傳輸過程中的損耗,這里采用了V/I轉(zhuǎn)換電路,在第一章已經(jīng)說明 Stm32f103rc內(nèi)嵌CAN控制器,只需在外部接入CAN收發(fā)器,就可以完成與上位機(jī)通訊功能。系統(tǒng)硬件框圖如圖1所示。
2 系統(tǒng)硬件電路設(shè)計(jì)
2.1 系統(tǒng)模擬量采集電路
本設(shè)計(jì)要求做成通用的CAN控制器,設(shè)計(jì)中要采集8路模擬信號(hào)(電壓信號(hào)0~5 V,電流信號(hào)4~20 mA),經(jīng)過對(duì)模擬信號(hào)的處理再傳輸?shù)街餍酒腁DC進(jìn)行轉(zhuǎn)換,STM32F103RC的電壓輸入范圍在2.4~3.3 V之間,所以在采集電壓信號(hào)時(shí)我們要經(jīng)過分壓電阻進(jìn)行分壓處理,針對(duì)電流信號(hào),要將電流轉(zhuǎn)換為電壓,所以在此引入精密電阻,即R=250 Ω,經(jīng)過轉(zhuǎn)換處理得到理想的電壓符合AD的輸入范圍??紤]到STM32F103RC:芯片內(nèi)部有2個(gè)12位的A/D轉(zhuǎn)換模塊,是一種逐次逼近式A/D轉(zhuǎn)換器,在模擬信號(hào)輸入時(shí)將分別用2個(gè)A/D模塊各采集4路模擬信號(hào)。
在選取運(yùn)放的時(shí)候還要注意參數(shù)的選擇要與芯片的ADC之間的誤差匹配問題,在此由計(jì)算得到滿量程3.3 V時(shí)(控制器ADC為12位轉(zhuǎn)換,得到對(duì)應(yīng)的LSB為0.8 mV),在選取運(yùn)放時(shí)要特別注意該運(yùn)放所引起的誤差是否在允許的范圍之內(nèi),本設(shè)計(jì)采用低功耗精密運(yùn)算放大器TLV2231CDBV,該運(yùn)放為單電源供電,工作電壓范圍在2.7~10 V之內(nèi),輸入失調(diào)電壓為0.45 mV,失調(diào)漂移在0.55μV/℃,共模抑制比最小在60 dB,具體電路如圖2所示。
2.2 系統(tǒng)數(shù)字量采集電路
本設(shè)計(jì)的數(shù)字采集模塊共涉及了4個(gè)數(shù)字量。由于該控制器應(yīng)用于工業(yè)現(xiàn)場(chǎng),所以會(huì)受到較大的外界干擾,為了增強(qiáng)其干擾特性,在數(shù)字信號(hào)進(jìn)入微控制器之前加入了光電隔離電路。我們這里采用高速晶體管光耦HCPL0531進(jìn)行隔離,針對(duì)光耦的傳輸特性而言,在邏輯低電平時(shí),R=1.9 kΩ時(shí)的傳播延遲時(shí)間達(dá)到0.45μs,最大為0.8μs,上述計(jì)算中取得R=1.2 kΩ隨著R的減少延遲時(shí)間將有所減短。
2.3 系統(tǒng)模擬信號(hào)輸出電路
本設(shè)計(jì)將設(shè)計(jì)2路模擬量輸出,主控制芯片內(nèi)嵌了DAC,可以將數(shù)字量轉(zhuǎn)換成模擬量電壓信號(hào)傳輸?shù)浆F(xiàn)場(chǎng),由于電壓信號(hào)在傳輸過程中會(huì)造成衰減,于是增加了V/I轉(zhuǎn)換電路,在輸出模擬信號(hào)時(shí),常以電壓信號(hào)為準(zhǔn),但針對(duì)傳輸距離較長(zhǎng)會(huì)導(dǎo)致電壓信號(hào)有所衰減,通常改進(jìn)的辦法是增加信號(hào)接收端的輸入電阻,可是輸入電阻的增加會(huì)對(duì)線路的抗干擾性產(chǎn)生降低的影響。所以在此我們將電壓傳輸變?yōu)殡娏鱾鬏?,其中V/I設(shè)計(jì)中用到運(yùn)放TLV223 CDBV,該運(yùn)放采用單電源直流5 V供電。經(jīng)過V/I電路實(shí)現(xiàn)0~20 mA電流的輸出。
評(píng)論