如何利用Arduino板子,通過編程實現濾波?
01-14
本人是大三機械菜鳥一枚,因為跟著老師做項目所以現在接觸到arduino的板子。現在面臨的問題是:已經有一個24V(+-10%)的直流穩壓電源,現在要通過連接arduino,使其輸出0~5V的直流電壓,電流限制在20mA以內。並且可以通過事先編好的程序實現輸入目標電壓即可得到相應的輸出電壓值。
求各路大神不吝賜教,說一下思路也是極好的!小弟在此先謝過了!
你這個不是濾波問題,是需要設計一個程序可變的電源。
現在淘寶上有很多降壓模塊,可以把你的24V電源降壓到5V以內 且可調,問題在於這些模塊都是通過上面的可調電阻來實現。
所以最方便的方式就是通過Arduino來控制一個程序可以控制的電阻代替普通模塊上的電位器。當然如果你會電路,也可以查查buck電路,通過改變PWM的寬度來調節電壓。首先你這個問題不是傳統的濾波的問題。傳統的濾波一般指濾雜訊。
再就是單片機是無法直接將0-24v的電源變換為0-5v的範圍的,你需要外部電路的配合。
如果我沒理解錯的話,你的0-24v是參考輸入,要線性的將其變為0-5v的範圍。
假設你的單片機是5v供電的,可以使用放大器,或者分壓電路,將0-24v的電源電壓轉化為你的單片機可接受的0-5v電壓,然後使用ad進行採樣,得知輸入電壓的大小,然後再使用da直接輸出0-5v的電壓,好一點的單片機,單路輸出20mA的電流是沒問題的。
如果你的單片機是0-3.3v的,你需要一個放大係數至少是1.5倍的放大器的配合。
如果是這種場景,那麼使用單片機不是一個好主意。直接做一個放大係數為0.2的放大電路就好了你這個完全不是濾波問題,這個題目裡面的標籤有電力電子,你要做的這個就是一個buck電路。原理具體參見電力電子的書籍。
簡單的說,就是用單片機控制(用pwm占空比調節開關)一個開關管(你這裡可以用mos管),做一個數字開關,實現電壓的變換。首先,根據下面這個博客的實驗,直接使用Arduino的PWM輸出電壓有點不可取,如果實在要這樣輸出,建議用A/D埠對輸出電壓進行採樣,然後通過演算法進行動態反饋調節。演算法可以使用PID演算法。(1)arduino的PWM輸出電壓曲線_我才不懶_新浪博客 arduino的PWM輸出電壓曲線_我才不懶_新浪博客其次,如果想程序簡單一些,可以使用W317可調式三端穩壓電源,用Arduino代替裡面的那個可變電阻進行電阻值調節即可。因為你已經有一個24V電源了,所以前面的橋式整流、穩壓、濾波什麼的都可以省了,電路還是非常簡單的。
推薦閱讀:
※為什麼我國人才流失如此嚴重?
※在中國大學教授的實際收入能有多少?
※有哪些學術女神?
※作為一名博士一年級的新生,有一個牛逼的導師和一群牛逼的師兄師姐是怎樣的體驗?
※馬克斯·普朗克研究所是一個怎麼樣的存在?