工業控制領域,由于傳統4-20mA電流傳輸方案,依舊占領著統治地位,因此各種儀表上基本都會配置標準的4-20mA電流輸出接口。其中,電流輸出中最主要的就是恒流源制作,對于剛接觸工業儀表的同志,是比較喜歡使用現成的電流輸出芯片的方案,特別是國外的電流芯片。但自從“華為事件”之后,“國產替代”的任務提上日程,想用電流轉換芯片的可以參考本人以前的文章。
本文后面將使用的是一種使用PWM進行電流輸出的恒流源方案,它可以使用PWM實現對電流的調節,具有輸出隔離、精度高等優點。
2、實現功能
2.1 使用tiM產生占空比可調的PWM,以實現4-20mA電流調節
2.2 通過控制臺實現對電流的標定與校正,以準確地輸出4-20mA
2.3 控制臺對輸出電流控制
3、硬件框架
硬件總體框架如圖1所示,PC機通過USB連接到開發板上,一方面給開發板供電,別一方面,可以直接下載和調試;開發板上,產生可調占空比的PWM波形,通過光耦將PWM信號傳遞給可控制恒流源的模擬信號處理單元;開發板上的3.3V為恒流源的光耦的發光二極管供電;隔離電源為恒流源的模擬部分供電,包含對4-20mA電流輸出、電壓基準、運放等電路的供電;4-20mA電流環輸出接口接到電阻箱(大功率、高精度、低溫漂的采樣電阻)上,實現對電流進行采樣,方便通過萬用表進行電壓測量。
圖1
為啥用萬用表進行電壓測量呢?老工程師告訴我,萬用表電壓檔的精度,通常都比電流檔的精度要高,想想,好像也是,那個電流檔的采樣電阻是小阻值電阻,也就是采樣得到電壓比較低,稍有點干擾就不那么準了唄。歸根到底,還是錢的事,沒有那么高級的萬用表嘛,暴露了不是,嘿嘿。反正測量電流,轉換成電壓進行量,是常用方案,萬用表里頭也是這么干的。
隔離可控制電流源部分框圖如圖所示,3.3V是開發板提供的,為光耦進行供電以接收PWM信號,在此處要注意限流電阻的選擇不能過大,否則對PWM信號傳遞會有影響。2.5V電壓基準為反相器供電,以保證轉換的PWM高電平為精確的基準電壓。
圖2
反相器輸出的PWM經過Salen-key有源低通濾波電路獲得相對穩定的直流參考電壓,并輸出給運放的同向輸入端;反向輸入端接入內部采樣電阻的電壓;運放的輸出端用于控制NMOS的開度,實現電流調節。
具體的實現電路如圖3~5所示。圖3中,單片機的PWM信號,通過光耦合進行隔離變換,變換后的信號通過電阻R6,進入反相器U5,經過反相器得到幅值精準的PWM波形。
圖3
反相器輸出的PWM-2.5波形,經過圖4所示的Salen-Key低通濾波器之后,得到相對穩定的VO-REF直流電壓信號。
圖4
如圖5所示,直流電壓信號VO-REF,輸入到運放的同相輸入端,反相輸入端接入采樣電阻的電壓值,運放的輸出控制mos管的開度,這是一個典型的閉環控制系統。通過運放的虛短虛斷原理,可以得到同相反相的電壓相同,即VO-REF與采樣電阻的電壓相等。因此,通過控制VO-REF就可以控制輸出的電流,而VO-REF與脈沖PWM的占空比有關,即通過控制PWM的占空比就可以控制電流的大小。注意,只要控制占空比就可以了,所以,選擇一個頻率(當然,這個頻率肯定會與濾波器的特性有關,低通的嘛,太高的頻率下都衰減沒了,那還搞啥子?理論不足怎么辦?試唄,設定一個頻率,看一下輸出是否穩定,穩定就OK。如果想從理論上搞一下,可以用仿真軟件玩一下,然后,選擇一個合適的頻率),愉快的輸出吧。
4、軟件框架
由于這個目前是通過控制臺來運行的,所以這里就不好寫了。偷看了小伙伴們的作業,都是寫的幾個線程,往上一弄,如果是這樣的話,這里沒有多余的線程,只有外設。。。鵝鵝鵝。。。比獨立的線程,還要獨立。。。所以相關說明還是放到軟件模塊說明里比較好。
5、軟件模塊說明
5.1 需求
5.1.1. 可以輸出任意4-20mA中的任意電流,翻譯一下,就是占空比可以控制的PWM;
5.1.2. 可以對輸出電流進行校正,翻譯一下,就是可以修改占空比計算函數;
5.1.3. 可以按校正后的電流進行輸出,翻譯一下,就是可以按修正的占空進行輸出;
5.2 PWM輸出函數
5.2.1. 要可以控制占空比,_rt_pwm_set_這個自的函數就可以實現;
5.2.2. 要可自動判斷是否完成校正,添加1個變量就可以,通過變量來區分;
5.2.3. 要可以強制輸出未校正的波形,添加1個變量進行聯鎖控制就可以;
5.3 接收校正參數
通過控制臺交互將標定數據寫入內存,再通過確認指令,完成校正參數計算。
控制臺強制輸入未校正的電流4mA和20mA,通過萬用表測得250R電阻兩端的mv值,這里得到兩組數據,假設,未校正時4mA、20mA對應的占空為P0,P1,測得到電壓分別為V0,V1,那么(V0,P0),(V1,P1)。即實際測得到電壓(即實際電流)對應一個占空值,直接線性化就可以了,y=kx+b。
k=(P0-P1)/(V0-V1)
b=P0-k*V0
這里要注意的是保證單位一致就可以了。
5.4 PWM校正函數
校正函數其實就非常簡單了,y=kx+b嘛,直接寫就可以了。
-
電流
+關注
關注
40文章
6910瀏覽量
132432
發布評論請先 登錄
相關推薦
評論