本文采用spce061a單片機作為數控直流電流源的主控部件,通過巧妙的軟件設計與簡易可靠的硬件電路相配合,實現了輸出電流可預置、可步進調整、輸出電流信號可直接顯示和語音提示等功能。系統采用了閉環控制方案,將實際輸出的電流值通過精密電阻采樣反饋,經pid算法修正實際輸出值,提高了電流源的輸出精度和穩定性。
在電子設備中經常用到穩定性好、精度高、輸出可預置的直流電流源。本文設計的數控直流電流源能夠很好地降低因元器件老化、溫漂等原因造成的輸出誤差,輸出電流在20ma~2000ma可調,輸出電流可預置、具有“+”、“-”步進調整、輸出電流信號可直接顯示和語音提示等功能。硬件電路采用凌陽單片機spce061a為控制核心,利用閉環控制原理,加上反饋電路,使整個電路構成一個閉環,在軟件方面主要利用pid算法來實現對輸出電流的控制。該系統可靠性高、體積小、操作簡單方便、人機界面友好。
系統硬件實現方案
本設計采用單片機作為主要控制部件,通過鍵盤預置輸出電流值并采用液晶模塊實時顯示。整個系統硬件部分由微控制器、電壓-電流轉換、鍵盤、顯示、直流穩壓電源和語音提示等模塊組成。系統組成框圖如圖1所示。
圖1 數控直流電流源的基本模塊方框圖
微控制器是整個系統的核心,負責整個系統的運作。為了實現簡化硬件電路、系統性能穩定可靠,便于實現語音播報、鍵盤設置和信息的實時顯示等功能的協調,通過多種方案論證后,微控制器選用凌陽公司的spce061a,該單片機內部集成有adc、dac、pll、agc、dtmf、lcd-driver等電路(與ic型號有關)。它采用精簡指令集(risc),指令周期均以cpu時鐘數為單位。另外,它還兼有dsp功能,內置16位硬件乘法器和加法器,并配備有dsp擁有的特殊指令,大大加速了各種算法的運行速度。同時可以在windows環境下使用凌陽單片機應用開發工具,該工具支持標準c語言和凌陽單片機匯編語言,集匯編、編程、仿真等功能于一體,大大加快了軟件開發過程。用該單片機作為控制器比較合適,在硬件電路簡單的前提下,容易實現a/d和d/a轉換、語音提示、pid運算等功能。
顯示模塊主要實現的功能是顯示設置的電流輸出值和其它人機交互信息。本部分可以采用七段數碼led顯示器,顯示數字、簡單字母和小數點等信息,但由于其顯示信息單一,人機交互不友好,本文采用字符型液晶顯示屏lcdsmc1602a模塊。該模塊具有輕薄短小、低壓微功耗、體積小、*、平面直角顯示及影像穩定不閃爍等優點,且可視面積大、面效果好、分辨率高、抗*力強,適合用于顯示字母、數字、符號等信息,而且不需要擴展過多外圍電路,可由單片機直接進行控制輸出顯示。
圖2 v/i轉換電路圖
電壓-電流轉換模塊由精密運放與三個晶體管組成的達林頓管電路構成。轉換電路利用晶體管平坦的輸出特性和深度負反饋電路使輸出電流穩定,如圖2所示,此v/i轉換電路的帶負載能力強,電流輸出范圍達0~3a。輸出電流io經反饋電阻rf得到一個反饋電壓vf,vf= v11-v12,通過r5、r6加到運算放大器的兩輸入端,設運放兩端的電為v1、v2,vi由單片機dac輸出。因為理想運放的輸入電流約等于零,且v1=v2,則:
v12[1-r6/(r2+r6)]+vir6/(r2+r6)=v11r1(r1+r6)
由于v12 =v11-vf,則:
v11r2/(r2+r6)+(vir6-vfr2)/(r2+r6)=v11r1/(r1+r5)
令r1=r2=10kw,r5 =r6 =1kw,則有vf=vir6/r2=vi/10
若暫不考慮反饋時,
io=vi/(10rf)
由此可見,輸出電流的標定由d/a轉換所得輸出電壓vi和rf的阻值決定,成線性變換。rf由大線徑銅絲制作,其溫度系數很小(5ppm/℃),大線徑可以使其溫度影響減至zui小。3個三極管應選用大功率管tip122,且使用散熱片,以保證管子工作在線性區。
電壓-電流轉換模塊還有另外一種方案,即采用三個運放構成輸出電流可變的電流源,如圖3所示。輸出電流i=vi/r1,為使r1兩端的電壓保持恒定,由差分放大器ic1b通過射隨器ic1c監測r1兩端的電位,此電位經ic1b的7腳加到比較器 ica的反相輸入端與vref比較,根據比較結果使比較器的輸出端變化,直到平衡為止,即vr1=vi。電路中的電容用于補償ica的頻率,減少控制環路的延時。只要r1=r2=r3=r4=r5,此電路的性能較好,但帶負載能力不強,環路延時補償對電路的穩定有較大影響。
圖3 三運放v/i轉換電路
系統鍵盤模塊可以采用獨立式或行列式(矩陣式)連接方式,該模塊主要完成對輸出電流和其它信息的設定。直流穩壓電源模塊為整個系統供電,語音模塊實現語音提示,使系統設計更具人性化,系統具有友好的工作界面。凌陽單片機內部集成有adc、dac、pll、agc、dtmf等模塊,語音功能可由軟件編程實現,不需要外接任何電路,有效利用了系統資源。
系統工作及軟件流程
通過以上對各模塊的分析,系統在工作過程中由spce061a單片機將被預置的電流通過換算進行d/a轉換,以輸出電壓驅動v/i轉換電路,并將該電流對應的電壓通過閉環回路,經信號處理電路作a/d轉換后輸入單片機系統,通過pid算法調整電流輸出。整個系統工作流程如圖4所示。
圖4 系統工作流程圖
系統軟件設計在凌陽十六單片機應用開發工具unspide1.16.1中進行,采用凌陽單片機匯編語言和標準c語言對單片機進行編程,以實現各種功能。主要包括:(1)系統的初始化,包括各外圍接口設備的初始化;(2)鍵盤輸入;(3)d/a、a/d轉換; (4)pid算法進行電流調整;(5)語音提示和電流顯示。其主程序流程如圖5所示。
圖5 主程序流程圖圖
a/d轉換部分程序主要用于將采樣電阻采集的模擬電壓信號轉換為數字信號。采樣信號由ioa6輸入并直接送入緩沖器p_adc_mux_data,在adc自動方式被啟用后,會產生一個啟動信號,此時rdy=0,dac0的電壓模擬量與外部的采樣模擬量相比較,以盡快找出外部信號模擬量的數字量,a/d轉換的結果保存在sar內。當10位a/d轉換完成時,rdy=1,此時,通過讀p_adc_mux_data單元,可以獲得10位a/d轉換的數據。其irq1 中斷服務程序的流程如圖6所示。
圖6 irq1 中斷服務程序的流程圖
pid算法主要用于修正實際輸出的電流值和設定值的偏差,調節下一次的輸出值,使輸出更接近于設定值,提高精度。具體控制過程為:單片機經a/d轉換芯片讀出實際電流ik,然后和設定的電流is比較,得出偏差值ek=is-ik,單片機根據ek的大小,調用pid公式,計算出本次電流調節的增量δik,然后根據前一次的d/a轉換輸出電流iq-1,計算出本次的輸出電流iq。
離散增量pid的計算公式為
δik=kp[(ek-ek-1)+k1ek+kd(ek-2ek-1+ek-2)]
=kp(ek-ek-1)+k1’ek+kd’(ek-2ek-1+ek-2)
式中:k1’= kp*k1, kd’=kp * kd,ek為本次采樣的電流誤差, ek-1為上次采樣電流誤差, ek-2為再次采樣電流誤差值。
結語
為了測試系統運行的準確性和可靠性,可以對設定量與反饋量進行測試,誤差在0.01%之內,并且運行穩定,達到了預期目的,還增添了特色的音頻播放設計。凌陽spce061a單片機在該系統中使用,使系統功能齊全、外圍電路簡單、輸出,軟件編程采用c和匯編混合編程來實現,集兩種優點于一身,豐富了編程思想,體現了很大的優越性。
砝碼型號|價格--校準吊鉤稱砝碼選配
離心噴霧干燥機工作原理
霧化過氧化氫消毒器,噴霧消毒無殘留
vocs氣體冷凝回收裝置處理說明
關于美國Digi-Sense TC5000控溫儀電壓選擇
數控直流電流源的設計與應用
關于包裝耐壓試驗機的日常清洗,您有什么建議呢?
臥式拉力試驗機選項設置之計算
帶式鋸骨機的技術參數特點
單梁起重機安全滑觸線選購的基本途徑和技巧有哪些?
武漢不銹鋼秤砣砝碼
小型易拉罐壓塊設備價格 液壓鐵盒打包設備性能參數
LCB-2土基現場CBR測定儀-天韻出品
進口低溫閥門為什么要加長桿
MTS位移傳感器GT2M0400MH101A0技術圖紙
智慧安全用電服務監控系統的技術研發需求
ASCO電磁閥氣源質量差的原因是什么?
全自動快速溶劑萃取儀能夠有效地減少有機溶劑的揮發
地球生態系統服務功能的主要影響因子
立式加工中心結構設計以高速、高精、為基礎