概述
一般儀器儀表的信號(hào)電流都為4-20mA,指最小電流為4mA,最大電流為20mA。傳輸信號(hào)時(shí)候,要考慮到導(dǎo)線上也有電阻,如果用電壓傳輸則會(huì)在導(dǎo)線的產(chǎn)生一定的壓降,那接收端的信號(hào)就會(huì)產(chǎn)生一定的誤差,所以使用電流信號(hào)作為變送器的標(biāo)準(zhǔn)傳輸。為什么選擇4-20mA而不是0-20mA呢?4ma而不是0ma是用來檢測(cè)線路開路的,如果0是最小,那么開路故障就檢測(cè)不到了。為了解決上述問題和避開相關(guān)噪聲的影響,我們用電流來傳輸信號(hào),因?yàn)殡娏鲗?duì)噪聲并不敏感。4~20mA的電流環(huán)便是用4mA表示零信號(hào),用20mA表示信號(hào)的滿刻度,而低于4mA高于20mA的信號(hào)用于各種故障的報(bào)警。
很多控制器接受來自各種檢測(cè)儀表的0~20mA或4~20mA電流,制作一個(gè)0-20mA的的信號(hào)發(fā)生器,可以給很多儀器儀表做校準(zhǔn)或測(cè)試。
2. 總體方案設(shè)計(jì)
2.1. 設(shè)計(jì)目標(biāo)
單片機(jī)控制4路PWM,輸出的PWM信號(hào)控制輸出電壓在0-3.0V之間,經(jīng)過電流電壓轉(zhuǎn)電流電路變成電流信號(hào),輸出電流在0-20mA之間。按鍵調(diào)節(jié)輸出電流,oled實(shí)時(shí)顯示4路電流值。
2.2. 設(shè)計(jì)思路
芯片選擇STM32F030C8T6,帶4路PWM輸出,性價(jià)比高,同時(shí)支持rt-thread操作系統(tǒng),這里我們選用2.1的版本。OLED選用中景園電子0-96寸OLED。

2.2.1.硬件電路原理
圖1是一個(gè)電壓轉(zhuǎn)電流的典型電路。單片機(jī)輸出PWM,控制Vi電壓電平在0-3V之間,RL流過的電流為0-20ma。

圖1 電壓轉(zhuǎn)電流電路

圖2 OLED顯示電路
由于MCU內(nèi)部可配置上拉電阻,所以可以直接將按鍵接到MCU上。

圖3 按鍵電路
2.2.2.軟件設(shè)計(jì)流圖

2.2.4.RTT使用情況
按鍵的初始化函數(shù)可以不用再main函數(shù)中添加,而是在key.c中調(diào)用下面的函數(shù)就可以了INITDEVICEEXPORT(rthwkey_init),代碼看起來干凈整潔。通過scons來裁剪配置系統(tǒng),不需要人為刪減代碼,非常好用。Finsh組件,方便調(diào)試,方便自定義添加串口命令。代碼類linux編程風(fēng)格。提供POSIX 標(biāo)準(zhǔn)接口,上層代碼移植方便。
3. 實(shí)物展示
-
單片機(jī)
+關(guān)注
關(guān)注
6076文章
45497瀏覽量
670556 -
信號(hào)發(fā)生器
+關(guān)注
關(guān)注
28文章
1700瀏覽量
113420
原文標(biāo)題:基于RT-Thread的0-20mA電流發(fā)生器
文章出處:【微信號(hào):RTThread,微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
RT-Thread編程指南
RT-Thread用戶手冊(cè)
PWM轉(zhuǎn)0-20mA/4-20mA電流輸出模塊:GP8102-2
RT-Thread全球技術(shù)大會(huì):螢石研發(fā)團(tuán)隊(duì)使用RT-Thread的技術(shù)挑戰(zhàn)
RT-Thread全球技術(shù)大會(huì):Kconfig在RT-Thread中的工作機(jī)制
RT-Thread全球技術(shù)大會(huì):RT-Thread測(cè)試用例集合案例
RT-Thread學(xué)習(xí)筆記 RT-Thread的架構(gòu)概述
RT-Thread文檔_RT-Thread 潘多拉 STM32L475 上手指南
基于RT-Thread Studio學(xué)習(xí)
無源型低成本、小體積兩線制4-20mA(0-20mA)電流環(huán)路模擬 信號(hào)隔離器
RT-Thread v5.0.2 發(fā)布
基于RT-Thread的0-20mA電流發(fā)生器方案設(shè)計(jì)
評(píng)論