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