




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1 緒論直流繼電器廣泛運(yùn)用于電動(dòng)汽車(chē),近年面對(duì)日益加劇的能源和生態(tài)危機(jī),電動(dòng)汽車(chē)成為汽車(chē)行業(yè)發(fā)展的主要方向。電動(dòng)汽車(chē)在充電及運(yùn)行過(guò)程中,直流繼電器可能出現(xiàn)意外事故,造成動(dòng)力系統(tǒng)的竄動(dòng)、擠壓、短路、開(kāi)裂、漏電、熱沖擊、爆炸、燃燒等,由此對(duì)乘員產(chǎn)生機(jī)械傷害、電傷害、化學(xué)傷害、電池爆炸傷害以及燃燒傷害等,并可能引發(fā)更大的連發(fā)性事故以及二次傷害。為了減小事故的發(fā)生,對(duì)直流繼電器性能測(cè)試是非常重要的,為了測(cè)試直流繼電器的性能,測(cè)試儀器研發(fā)顯得非常重要。1.1 課題研究背景及意義本課題來(lái)源于企業(yè)產(chǎn)品設(shè)計(jì),根據(jù)要求,利用微控制器以及信號(hào)調(diào)理電路為特殊設(shè)備提供程序化控制試驗(yàn)電源。需要分段設(shè)定施加電壓的時(shí)間及電
2、壓升降的變化速度,重復(fù)次數(shù)及周期,并對(duì)試驗(yàn)過(guò)程進(jìn)行過(guò)壓、過(guò)流、過(guò)溫、短路等保護(hù)。通過(guò)微控制器輸出控制信號(hào),利用控制信號(hào)控制試驗(yàn)電源的電流、電壓,繼而測(cè)試電器的性能。微控制器A/D端檢測(cè)兩路信號(hào),測(cè)量試驗(yàn)電源實(shí)際輸出。圖1 系統(tǒng)簡(jiǎn)圖通過(guò)研發(fā)測(cè)量?jī)x器,可以測(cè)量到特殊設(shè)備的一些重要運(yùn)行參數(shù),為產(chǎn)品的安全性提供保障。隨著經(jīng)濟(jì)活動(dòng)在轉(zhuǎn)入高新技術(shù)產(chǎn)業(yè)迅猛發(fā)展時(shí)期。程控電源控制器是電子技術(shù)常用的儀器設(shè)備之一,廣泛的應(yīng)用于教學(xué)、科研等領(lǐng)域,是電子實(shí)驗(yàn)員、電子設(shè)計(jì)人員及電路開(kāi)發(fā)部門(mén)進(jìn)行實(shí)驗(yàn)作和科學(xué)研究所不可缺少的電子儀器。1.2 本課題的主要工作(1)硬件設(shè)計(jì):信號(hào)調(diào)理電路設(shè)計(jì),電源電路設(shè)計(jì)、通信電路設(shè)計(jì)等。(
3、2)軟件設(shè)計(jì):串口接收、發(fā)送,信號(hào)的A/D檢測(cè)等。(3)系統(tǒng)的綜合調(diào)試。2 程控電源控制器的系統(tǒng)組成2.1 程控電源控制器的參數(shù)實(shí)現(xiàn)功能:輸出一組050V,3A直流電源,提供試驗(yàn)繼電器線圈工作電壓。輸出電壓值由觸摸屏設(shè)置,并有對(duì)應(yīng)的顯示。輸出電壓可程控,在每個(gè)運(yùn)行周期的高電流階段可以切斷,接通。具體切斷,接通的時(shí)間可設(shè)置。具有過(guò)壓、過(guò)流保護(hù)功能。工作形式:對(duì)電源輸出電流的控制過(guò)程為:圖2 控制波形圖其中:I1為低檔電流值,設(shè)置范圍11000A,設(shè)置分辨率1A。I2為高檔電流值,設(shè)置范圍1003000A,設(shè)置分辨率1A。T1為低檔電流的起始維持時(shí)間,設(shè)置范圍11000S設(shè)置分辨率1S。T2為電流
4、上升的時(shí)間,設(shè)置范圍1001000mS,設(shè)置分辨率1mS。Ta為T(mén)3開(kāi)始后到關(guān)斷V2輸出的時(shí)間,設(shè)置范圍11000ms,設(shè)置分辨率1mS。Tb為關(guān)斷V2輸出的時(shí)間,設(shè)置范圍11000ms,設(shè)置分辨率1mS。T3為高檔電流的維持時(shí)間,設(shè)置范圍12000mS,設(shè)置分辨率1mS。T4為電流下降的時(shí)間,設(shè)置范圍1002000mS,設(shè)置分辨率1mS。T5為低檔電流的后期維持時(shí)間,設(shè)置范圍11000S,設(shè)置分辨率1S。周期數(shù):從T1T5完成為一個(gè)周期,可設(shè)置運(yùn)行周期數(shù),設(shè)置范圍19999??稍O(shè)置任意電流值時(shí)的連續(xù)工作。2.2 程控電源控制器總體方案圖3 程控直流恒流源控制器的系統(tǒng)框圖STM32利用IO口驅(qū)
5、動(dòng)外部D/A芯片,輸出控制信號(hào),由于D/A芯片參考內(nèi)部電壓為2.5V,不能滿足為試驗(yàn)電源提供控制信號(hào)的要求,利用信號(hào)調(diào)理電路,使得控制信號(hào)達(dá)到05V,用來(lái)驅(qū)動(dòng)試驗(yàn)電源。為了測(cè)量試驗(yàn)電源輸出信號(hào)大小,由于STM32不能直接檢測(cè)外部信號(hào),將外部信號(hào)經(jīng)過(guò)輸入信號(hào)調(diào)理電路,轉(zhuǎn)換成STM32 A/D可以檢測(cè)的信號(hào),如果檢測(cè)到信號(hào)過(guò)壓,過(guò)流,那么啟動(dòng)保護(hù)電路。觸摸屏用來(lái)設(shè)置參數(shù)(I1、I2、T1、T2、T3、T4、T5、V2),如圖2所示。為了方便客戶,設(shè)置的參數(shù)都會(huì)由存儲(chǔ)器保存,以便下次直接使用。2.3 微控制器由于程控電源控制器對(duì)時(shí)間要求很高,一般的單片機(jī)運(yùn)行速度不夠,例如處理通信協(xié)議、D/A轉(zhuǎn)換、A
6、/D轉(zhuǎn)換、存儲(chǔ)、計(jì)算波形數(shù)據(jù)(浮點(diǎn)數(shù))等其他中斷資源消耗的時(shí)間,難以讓時(shí)間精度控制在1ms。所以選用STM32F103ZET6單片機(jī)。內(nèi)核:ARM32位Cortex-M3 CPU,最高工作頻率72MHz,1.25DMIPS/MHz。單周期乘法和硬件除法。存儲(chǔ)器:片上集成32-512KB的Flash存儲(chǔ)器。6-64KB的SRAM存儲(chǔ)器。時(shí)鐘、復(fù)位和電源管理:2.0-3.6V的電源供電和I/O接口的驅(qū)動(dòng)電壓。上電復(fù)位(POR)、掉電復(fù)位(PDR)和可編程的電壓探測(cè)器(PVD)。4-16MHz的晶振。內(nèi)嵌出廠前調(diào)校的8MHz RC振蕩電路。內(nèi)部40 kHz的RC振蕩電路。用于CPU時(shí)鐘的PLL。帶校
7、準(zhǔn)用于RTC的32kHz的晶振。低功耗:3種低功耗模式:休眠,停止,待機(jī)模式。為RTC和備份寄存器供電的VBAT。調(diào)試模式:串行調(diào)試(SWD)和JTAG接口。DMA:12通道DMA控制器。支持的外設(shè):定時(shí)器,ADC,DAC,SPI,IIC和UART。3個(gè)12位的us級(jí)的A/D轉(zhuǎn)換器(16通道):A/D測(cè)量范圍:0-3.6V。雙采樣和保持能力,片上集成一個(gè)溫度傳感器。2通道12位D/A轉(zhuǎn)換器:STM32F103xC,STM32F103xD,STM32F103xE獨(dú)有。最多高達(dá)112個(gè)的快速I(mǎi)/O端口:根據(jù)型號(hào)的不同,有26,37,51,80,和112的I/O端口,所有的端口都可以映射到16個(gè)外部
8、中斷向量。除了模擬輸入,所有的都可以接受5V以內(nèi)的輸入。最多多達(dá)11個(gè)定時(shí)器:4個(gè)16位定時(shí)器,每個(gè)定時(shí)器有4個(gè)IC/OC/PWM或者脈沖計(jì)數(shù)器。2個(gè)16位的6通道高級(jí)控制定時(shí)器:最多6個(gè)通道可用于PWM輸出。2個(gè)看門(mén)狗定時(shí)器(獨(dú)立看門(mén)狗和窗口看門(mén)狗)。Systick定時(shí)器:24位倒計(jì)數(shù)器。2個(gè)16位基本定時(shí)器用于驅(qū)動(dòng)DAC。2.4 DGUS觸摸屏傳統(tǒng)的自動(dòng)化控制系統(tǒng)通常采用鍵盤(pán)、開(kāi)關(guān)作為控制輸入設(shè)備,采用液晶、數(shù)碼管作為顯示輸出設(shè)備,這樣的人際界面操作復(fù)雜、方式笨重。而通常的TFT觸摸屏GUI界面集成在操作系統(tǒng)內(nèi)。由于其界面都有代碼繪制而成集成在系統(tǒng)內(nèi)無(wú)疑增加變量設(shè)置、增加系統(tǒng)復(fù)雜程度同時(shí)浪
9、費(fèi)了芯片資源,并且還增加了系統(tǒng)的不穩(wěn)定性,也降低了顯示的實(shí)時(shí)性 。DGUS屏是TFT觸摸屏的開(kāi)發(fā)應(yīng)用,將鍵盤(pán)與界面集成為一體,結(jié)構(gòu)更加緊密對(duì)系統(tǒng)資源的利用率更高,同時(shí)也能更好地滿足實(shí)時(shí)性需求。DGUS觸摸屏優(yōu)點(diǎn):借助PC軟件進(jìn)行設(shè)計(jì),實(shí)現(xiàn)豐富功能;簡(jiǎn)化CPU代碼量,5條指令實(shí)現(xiàn)人機(jī)交互;在實(shí)際的應(yīng)用中,針對(duì)DGUS的通信機(jī)制,控制系統(tǒng)與觸摸屏之間不能進(jìn)行直接通訊,而需要根據(jù)DGUS所使用的協(xié)議對(duì)通訊程序進(jìn)行開(kāi)發(fā)。采用編程實(shí)現(xiàn)DGUS屏幕與STM32F103芯片的通訊。2.5 嵌入式實(shí)時(shí)操作系統(tǒng) UC/OS-II 簡(jiǎn)單的小系統(tǒng)通常在設(shè)計(jì)成前后臺(tái)系統(tǒng),這個(gè)結(jié)構(gòu)包含一個(gè)死循環(huán)和若干中斷服務(wù)程序:應(yīng)用
10、程序是一個(gè)無(wú)限的循環(huán),循環(huán)中調(diào)用相應(yīng)的操作(后臺(tái)),中斷服務(wù)程序用于處理系統(tǒng)的異步事件(前臺(tái))。前臺(tái)也稱做中斷級(jí),后臺(tái)是任務(wù)級(jí)。為了保證得到及時(shí)處理,那些本該在任務(wù)級(jí)執(zhí)行的關(guān)鍵代碼也必須放在中斷里執(zhí)行,這導(dǎo)致中斷程序的運(yùn)行時(shí)間變長(zhǎng)。中斷程序即使立刻生成了特定的數(shù)據(jù),后臺(tái)程序也必須運(yùn)行到對(duì)應(yīng)的處理代碼時(shí)才能進(jìn)行處理,這稱為任務(wù)級(jí)響應(yīng)延遲。最長(zhǎng)的任務(wù)及響應(yīng)延遲取決于后臺(tái)循環(huán)的運(yùn)行時(shí)間,因此特定模塊的運(yùn)行時(shí)間間隔是不確定的,并且后臺(tái)循環(huán)的任何修改都會(huì)使所有功能模塊的運(yùn)行時(shí)間間隔受到影響。很多低成本、大批量的微控制器應(yīng)用(例如微波爐、電話或玩具)都采用了前后臺(tái)的設(shè)計(jì)。實(shí)時(shí)內(nèi)核是用于管理微處理器、微控制
11、器或數(shù)字信號(hào)處理器的時(shí)間及硬件資源的軟件代碼。設(shè)計(jì)實(shí)時(shí)系統(tǒng)時(shí),可把系統(tǒng)功能劃分成多個(gè)任務(wù),每個(gè)任務(wù)僅負(fù)責(zé)實(shí)現(xiàn)某一功能。每個(gè)任務(wù)(或稱線程)都是一段簡(jiǎn)單的程序,通常是個(gè)死循環(huán)。CPU在任意時(shí)刻只能執(zhí)行一個(gè)任務(wù),但每個(gè)任務(wù)都認(rèn)為自己在獨(dú)自使用整個(gè)CPU。 實(shí)時(shí)內(nèi)核負(fù)責(zé)管理這些任務(wù),決定運(yùn)行哪個(gè)任務(wù),何時(shí)停止運(yùn)行當(dāng)前任務(wù)并切換到其他任務(wù),這稱為多任務(wù)管理。CPU在多個(gè)順序執(zhí)行的任務(wù)代碼間切換。多任務(wù)管理造就了多CPU的假象,實(shí)現(xiàn)對(duì)CPU資源的最大化利用。多任務(wù)管理也有助于實(shí)現(xiàn)應(yīng)用程序開(kāi)發(fā)的模塊化,能幫助程序員實(shí)現(xiàn)復(fù)雜的實(shí)時(shí)應(yīng)用。3 硬件設(shè)計(jì)3.1 信號(hào)調(diào)理電路設(shè)計(jì)圖4 OP07引腳圖Op07芯片是一
12、種低噪聲的雙極性運(yùn)算放大器集成電路。由于OP07具有非常低的輸入失調(diào)電壓(對(duì)于OP07A最大為25V),所以O(shè)P07在很多應(yīng)用場(chǎng)合不需要額外的調(diào)零措施。OP07同時(shí)具有輸入偏置電流低(OP07A為±2nA)和開(kāi)環(huán)增益高(對(duì)于OP07A為300V/mV)的特點(diǎn),這種低失調(diào)、高開(kāi)環(huán)增益的特性使得OP07特別適用于高增益的測(cè)量設(shè)備和放大傳感器的微弱信號(hào)等方面。 優(yōu)點(diǎn):超低偏移: 150V最大 。 低輸入偏置電流: 1.8nA 。 低失調(diào)電壓漂移: 0.5V/ 。
13、160;超穩(wěn)定,時(shí)間: 2V/month最大 高電源電壓范圍: ±3V至±22V OP07是具有兩個(gè)輸入端,一個(gè)輸出端的高增益、高輸入阻抗的電壓放大器。若在它的輸出端和輸入端之間加上反饋網(wǎng)絡(luò)就可以組成具有各種功能的電路。當(dāng)反饋網(wǎng)絡(luò)為線性電路時(shí)可實(shí)現(xiàn)乘、除等模擬運(yùn)算等功能。運(yùn)算放大器可進(jìn)行直流放大,也可進(jìn)行交流放大。 使用OP07時(shí),調(diào)零和相位補(bǔ)償是必須注意的兩個(gè)問(wèn)題,此外應(yīng)注意同相端和反相端到地的直流電阻等,以減少輸入端直流偏流引起的誤差。 圖5 輸入信號(hào)調(diào)理電路設(shè)計(jì)同相放大器具有輸入電阻很高,輸出電阻很低的特點(diǎn),廣泛用于前置放大器。
14、同相放大器的閉環(huán)增益為 Af =(1+) 當(dāng)輸入為075mv信號(hào)時(shí),由于STM32檢測(cè)03.3V信號(hào),利用D17、D18、R68、R69、R70、R71、C26、R66、R67構(gòu)成同相放大器,將信號(hào)進(jìn)行放大使之對(duì)應(yīng)03.3V。Af=44倍當(dāng)R69 = 1K時(shí),由上式可知39K其中,反饋電阻R69不能取得太大,否則會(huì)產(chǎn)生較大的噪聲及漂移,其值一般取幾十千歐到幾百千歐之間。 若將輸出電壓的全部反饋到反相輸入端,就構(gòu)成電壓跟隨器。Af = 1當(dāng)輸入05V信號(hào)時(shí),將信號(hào)電壓跟隨,由R125、R126 構(gòu)成分壓電路轉(zhuǎn)換成03.3V信號(hào),再利用A/D檢測(cè)。A1=0.66倍利用電阻分壓原理:當(dāng)R125=2K
15、時(shí),由上式可知R126 =R125/A13K由于沒(méi)有精準(zhǔn)的3K電阻,加上電阻的制造誤差,換5.1K滑動(dòng)變阻器進(jìn)行調(diào)節(jié)。(3)信號(hào)的輸入為05V或075mV,由于是兩路信號(hào),使用其中一個(gè),所以用短路帽進(jìn)行人工選擇。最后由U18 構(gòu)成電壓跟隨器,傳送到A/D檢測(cè)端。為了防止輸入信號(hào)過(guò)大,導(dǎo)致送到STM32檢測(cè)端信號(hào)大,損壞STM32,所以使用瞬態(tài)抑制二極管進(jìn)行保護(hù)。實(shí)際輸入信號(hào)不穩(wěn)定(例如受到電網(wǎng)波動(dòng),打雷等影響),出現(xiàn)很大的脈沖,可能會(huì)損壞運(yùn)放的輸入引腳,所以在U17輸入端用二極管做了限幅。為防止受到高頻干擾,這里使用電容組成RC網(wǎng)絡(luò)進(jìn)行濾波,使信號(hào)趨于穩(wěn)定值。為了防止由于阻抗不匹配,導(dǎo)致信號(hào)衰
16、減,所以由電壓跟隨器降低輸出電阻,再傳輸信號(hào)到A/D檢測(cè)端。由于運(yùn)算放大器輸入級(jí)采用差分放大,產(chǎn)生失調(diào)電壓,失調(diào)電流,利用電位器(例如R70)調(diào)節(jié)。3.2 D/A轉(zhuǎn)換電路如圖2.1.2所示,系統(tǒng)要求電流的最大值可達(dá)3000A,設(shè)置分辨率0.1A,如果僅僅用STM32內(nèi)部的D/A,加上參考電壓不是非常精準(zhǔn)的3.3V,轉(zhuǎn)換精度是不夠的。所以采用DAC8562芯片,使用內(nèi)部的2.5V參考電壓,支持雙通道16位D/A轉(zhuǎn)換,轉(zhuǎn)換速度也快。圖6 DAC8562內(nèi)部圖解表1 DAC8562引腳定義名稱引腳描述AVDD9/CLR5異步清零輸入,在下降沿清零所有寄存器,24個(gè)跳變沿后退出該模式。在該模式中輸入被
17、禁止。Din8SPI 24位數(shù)據(jù)輸入口。/LDAC4在同步模式下,數(shù)據(jù)與24個(gè)下降沿更新SCLK周期,如下一個(gè)下降邊緣同步。這種同步更新,LDAC引腳是不需要的,它必須連接到接地或永久性的斷言和舉行低之前,發(fā)送命令到設(shè)備。在異步模式下,LDAC引腳是用來(lái)作為一個(gè)負(fù)邊沿觸發(fā)定時(shí)信號(hào)同步DAC的更新。多個(gè)單通道命令可以寫(xiě)為設(shè)置不同的通道緩沖器所需的值,然后在LDAC引腳下降沿同時(shí)更新DAC輸出寄存器。SCLK7SPI 信號(hào)輸入,最大到50MHz/SYNC6級(jí)別觸發(fā)控制輸入(低電平)。這個(gè)輸入是輸入的數(shù)據(jù)幀同步信號(hào)。當(dāng)同步變低,它使輸入移位寄存器,并在隨后的下降時(shí)鐘采樣數(shù)據(jù)邊緣。DAC輸出更新后的2
18、4時(shí)鐘的下降沿。如果是采取同步高前23時(shí)鐘的上升沿同步邊緣,作為中斷,和寫(xiě)序列被忽略。VOUT11A路輸出VOUT22B路輸出VREF參考電壓輸入或2.5V參考電壓輸出圖7 應(yīng)用電路由于DAC8562使用內(nèi)部參考電壓,輸出02.5V信號(hào),放大信號(hào)到05v,再將信號(hào)電壓跟隨,作為后續(xù)的控制信號(hào)。圖8 輸出信號(hào)調(diào)理電路設(shè)計(jì)(1)同相放大器具有輸入電阻很高,輸出電阻很低的特點(diǎn),廣泛用于前置放大器。同相放大器的閉環(huán)增益為 Af =(1+) 當(dāng)DA輸出為02.5v信號(hào)時(shí),利用R20、R21、R26、R25、R24構(gòu)成同相放大器,將信號(hào)進(jìn)行放大使之對(duì)應(yīng)05V。Af = 2倍令R20= 3K時(shí),由上式可知=
19、3K 由于無(wú)法得到精確3K電阻,放大倍數(shù)無(wú)法很精確,利用R26、R23進(jìn)行調(diào)節(jié).其中,反饋電阻R21不能取得太大,否則會(huì)產(chǎn)生較大的噪聲及漂移,其值一般取幾十千歐到幾百千歐之間。 為了與后級(jí)電路阻抗匹配,最后由U23構(gòu)成電壓跟隨器,由于跟隨器輸入級(jí)采用差分放大,產(chǎn)生失調(diào)電壓,失調(diào)電流,利用電位器(例如R102)調(diào)節(jié)。3.3 電源電路本系統(tǒng)需要多個(gè)電源,單片機(jī)使用+3.3V穩(wěn)壓電源。在高精度的系統(tǒng)中,穩(wěn)壓電源有著非常重要的作用。在進(jìn)行研究后得出以下方案。本電源先通過(guò)變壓器電壓變換隔離,橋式全波整流,電容濾波,再通過(guò)三端固定輸出集成穩(wěn)壓器產(chǎn)生穩(wěn)定電壓+12V,-12V。為了改善負(fù)載的瞬態(tài)響應(yīng),在輸出
20、端加接電容。采用三端集成穩(wěn)壓器7805得到+5V,采用AMS1117得到+3.3V。 圖9 5V電壓電路圖圖10 3.3電壓電路圖3.4 串口通信電路隨著電子技術(shù)的不斷發(fā)展,單片機(jī)的應(yīng)用范圍越來(lái)越廣泛,在工業(yè)控制、家電控制、數(shù)據(jù)采集等多個(gè)領(lǐng)域都有著十分重要的作用,由于單片機(jī)的使用,越來(lái)越多的系統(tǒng)開(kāi)始向智能化方向發(fā)展。利用單片機(jī)的串口通信可以實(shí)現(xiàn)數(shù)據(jù)的遠(yuǎn)程傳輸、數(shù)據(jù)分析與系統(tǒng)綜合控制功能,尤其是在數(shù)據(jù)量比較大的場(chǎng)合下,利用一個(gè)主機(jī)向各個(gè)從機(jī)發(fā)送控制指令是一個(gè)很好的解決方案。在本課題中實(shí)現(xiàn)與觸摸屏、上位機(jī)通信。圖11 串口通信電路圖4 系統(tǒng)軟件設(shè)計(jì)4.1 系統(tǒng)總程序簡(jiǎn)圖系統(tǒng)上電開(kāi)始初始化數(shù)據(jù),需要
21、將所有初始化數(shù)據(jù)裝載到發(fā)送數(shù)據(jù)隊(duì)列,由發(fā)送數(shù)據(jù)任務(wù)負(fù)責(zé)給上位機(jī)、觸摸屏發(fā)送數(shù)據(jù)。并開(kāi)始檢測(cè)外部的信號(hào),根據(jù)檢測(cè)外部信號(hào)是否異常,執(zhí)行系統(tǒng)動(dòng)作,并實(shí)時(shí)通知給顯示系統(tǒng)(觸摸屏、上位機(jī)),即需要發(fā)送數(shù)據(jù)入隊(duì),由發(fā)送數(shù)據(jù)任務(wù)負(fù)責(zé)發(fā)送數(shù)據(jù),讓用戶知道系統(tǒng)產(chǎn)生異常。當(dāng)接收到來(lái)自上位機(jī)、觸摸屏數(shù)據(jù)時(shí),數(shù)據(jù)入隊(duì)。當(dāng)執(zhí)行到接收數(shù)據(jù)任務(wù)時(shí),接收數(shù)據(jù)出隊(duì),執(zhí)行協(xié)議分析,分析收到的數(shù)據(jù),并且判斷數(shù)據(jù)的有效性,用來(lái)對(duì)數(shù)據(jù)存儲(chǔ),相關(guān)數(shù)據(jù)的計(jì)算,系統(tǒng)動(dòng)作等提供條件,實(shí)時(shí)通知當(dāng)前系統(tǒng)的運(yùn)行情況,即將通知信息裝載到發(fā)送隊(duì)列,由發(fā)送數(shù)據(jù)任務(wù)進(jìn)行發(fā)送數(shù)據(jù)。圖12 系統(tǒng)程序簡(jiǎn)圖 總程序主要分為三個(gè)任務(wù),接收數(shù)據(jù)任務(wù)、發(fā)送數(shù)據(jù)任務(wù)、檢
22、測(cè)信號(hào)任務(wù)。由于系統(tǒng)本身要對(duì)處理指令,具有足夠快的響應(yīng),所以接收數(shù)據(jù)任務(wù)的優(yōu)先級(jí)是最高的,把時(shí)間控制在每7ms執(zhí)行一次,雖然也可以換做其他值,但經(jīng)過(guò)實(shí)際驗(yàn)證,7ms的時(shí)間響應(yīng)比較好,也不影響其它軟件功能。發(fā)送數(shù)據(jù)任務(wù)負(fù)責(zé)發(fā)送數(shù)據(jù),任何需要通知上位機(jī)、觸摸屏都需經(jīng)過(guò)發(fā)送數(shù)據(jù)任務(wù)處理、所以它的優(yōu)先級(jí)相對(duì)于接收數(shù)據(jù)任務(wù)要低一點(diǎn)。檢測(cè)新號(hào)任務(wù)負(fù)責(zé)檢測(cè)外圍的信號(hào),因?yàn)橄到y(tǒng)本身,會(huì)輸出一定的電壓、電流,那么運(yùn)行情況如何,會(huì)對(duì)周?chē)h(huán)境造成什么影響,所以必須要監(jiān)測(cè)電壓、電流實(shí)際輸出。所以檢測(cè)信號(hào)任務(wù)也尤為重要,經(jīng)過(guò)以上分析,時(shí)間安排,優(yōu)先級(jí)安排,如圖13所示。圖13 時(shí)間流程圖4.2 串口接收與發(fā)送4.2.1
23、 串口接收因?yàn)槌炭仉娫纯刂破髋c上位機(jī),觸摸屏通信數(shù)據(jù)量較多,所以我采用隊(duì)列的方式,也便于程序調(diào)用。將所有接收到的數(shù)據(jù)存到二維數(shù)組中,即隊(duì)列中。隊(duì)列是指允許在一端進(jìn)行插入、而在另一端進(jìn)行刪除的線性表。允許插入的一端稱為隊(duì)尾,通常用一個(gè)稱為尾指針(rear)的指針指向隊(duì)尾元素,即尾指針總是指向最后被插入的元素;允許刪除的一端稱為排頭(也稱為隊(duì)頭),通常也用一個(gè)排頭指針(front)指向排頭元素的前一個(gè)位置。顯然,在隊(duì)列這種數(shù)據(jù)結(jié)構(gòu)中,最先插入的元素將最先能夠被刪除,反之,最后插入的元素將最后才能被刪除。因此,隊(duì)列又稱為“先進(jìn)先出”的線性表。在隊(duì)列的隊(duì)尾(rear)接收一幀數(shù)據(jù)稱為入隊(duì)運(yùn)算,從隊(duì)列的
24、排頭(front)讀取一幀數(shù)據(jù)稱為出隊(duì)運(yùn)算。在循環(huán)隊(duì)列中,當(dāng)隊(duì)列滿時(shí)而再要進(jìn)行入隊(duì)時(shí),只要隊(duì)列的第一個(gè)位置空閑,便可將隊(duì)尾指針指向第一個(gè)位置,即隊(duì)列的第一個(gè)位置作為隊(duì)尾。在隊(duì)列中,用隊(duì)尾指針rear指向隊(duì)列中的隊(duì)尾元素,用排頭指針front指向排頭元素的前一個(gè)位置,因此,從排頭指針front指向的后一個(gè)位置直到隊(duì)尾指針rear指向的位置之間所有的元素均為隊(duì)列中的元素。每進(jìn)行一次入隊(duì)運(yùn)算,隊(duì)尾指針就進(jìn)一。rear=rear+1每進(jìn)行一次出隊(duì)運(yùn)算,排頭指針就進(jìn)一。front = front+1當(dāng)隊(duì)列滿時(shí)由front=rear,而當(dāng)隊(duì)列空時(shí)也有front=rear,即在對(duì)列中,當(dāng)front=rear
25、時(shí),不能確定是隊(duì)列滿還是隊(duì)列空。在實(shí)際使用中,為了區(qū)分隊(duì)列滿還是空,通常增加一個(gè)標(biāo)志判斷。圖14 循環(huán)隊(duì)列示意圖從圖4.1.1中可以看出,當(dāng)串口接收到數(shù)據(jù)時(shí)DATA0,啟動(dòng)定時(shí)器,定時(shí)1ms,如果在1ms之內(nèi)串口接收到數(shù)據(jù)DATA1,那么重置定時(shí)器。如果1ms之內(nèi)沒(méi)有接收到數(shù)據(jù),那么這幀數(shù)據(jù)接收完畢,隊(duì)尾指針進(jìn)一。當(dāng)然1ms的時(shí)間不是固定的,它是根據(jù)你的通信速度(波特率)決定。4.2.2 串口發(fā)送將需要發(fā)送的數(shù)據(jù)寫(xiě)入二維數(shù)組(與串口接收二維數(shù)組不同),即發(fā)送數(shù)據(jù)入隊(duì),原理與上節(jié)相同。當(dāng)系統(tǒng)進(jìn)行出隊(duì)操作時(shí),發(fā)現(xiàn)還有未發(fā)送的數(shù)據(jù),立刻將數(shù)據(jù)發(fā)送出去。4.3 輸出波形控制算法由于DAC8562無(wú)法寫(xiě)
26、入小數(shù),在程序進(jìn)行計(jì)算時(shí),往往取整數(shù),這就會(huì)造成誤差。圖15 線性圖從圖中可以看出I1、I2的值,上升T2為1ms。假設(shè)I1為100(假設(shè)對(duì)應(yīng)AD轉(zhuǎn)換值1000),I2為250(假設(shè)對(duì)應(yīng)DA轉(zhuǎn)換值1550),DA差值為550,將1ms分解成10個(gè)100us,即550/10=55。每100us DA值加55??梢钥闯鲈诓徽{(diào)節(jié)的情況下,線性度極差,在調(diào)節(jié)的情況下,線性度有所好轉(zhuǎn)。若DA差值很小,再分解成10次,線性度基本不變。如何避免差值過(guò)小帶來(lái)無(wú)用調(diào)節(jié),是個(gè)重要的問(wèn)題,因?yàn)榉纸獬?0個(gè)100us,意味著在1ms的時(shí)間內(nèi)程序做了10次無(wú)用調(diào)節(jié)。使系統(tǒng)運(yùn)行效率下降,實(shí)時(shí)性變低。令平均因子為X,DA差
27、值為E, X隨著E的變化動(dòng)態(tài)取值: ,X = E;| >10 , X = 10;0|E|< 2 ,X = 1;這樣就可以避免時(shí)間資源的浪費(fèi),實(shí)時(shí)性得到了改善。4.4 滑動(dòng)濾波算法微控制器需檢測(cè)實(shí)際輸出電流、電壓,實(shí)際信號(hào)會(huì)有干擾的存在。軟件抗干擾就顯得尤為重要。圖16 滑動(dòng)濾波示意圖把連續(xù)N個(gè)采集值看成一個(gè)隊(duì)列,每次采集到的新數(shù)據(jù)放入隊(duì)尾,并扔掉原來(lái)隊(duì)首的數(shù)據(jù)。把隊(duì)列中的N個(gè)數(shù)據(jù)進(jìn)行平均計(jì)算,即可獲得新的濾波結(jié)果。圖17 濾波流程圖5 系統(tǒng)綜合調(diào)試5.1 硬件調(diào)試輸入信號(hào)調(diào)理電路調(diào)試:當(dāng)輸入信號(hào)為075mv,對(duì)應(yīng)到A/D端為03.3V,如圖5所示。將P22端輸入0V,查看P24 引
28、腳1是否為0V,若不是0V,調(diào)節(jié)R70 、R67直到0V為止。 將P22端輸入75mv,查看P24 引腳1是否為3.3V,若不是3.3V,調(diào)節(jié)R70 、R67直到3.3V為止。當(dāng)輸入信號(hào)為05v,對(duì)應(yīng)到A/D端為03.3V,如圖5所示。將P21端輸入0V,查看P24 引腳3是否為0V,若不是0V,調(diào)節(jié)R124 、R126直到0V為止。 將P22端輸入5v,查看P24 引腳1是否為3.3V,若不是3.3V,調(diào)節(jié)R124 、R126直到3.3V為止。將信號(hào)利用后級(jí)電路進(jìn)行電壓跟隨,若P24 引腳2與PA3電壓不一致,則調(diào)節(jié)R72 直到電壓相等為止。輸出信號(hào)調(diào)理電路調(diào)試:當(dāng)輸入信號(hào)為02.5v,對(duì)應(yīng)
29、輸出為05V,如圖8所示。將V-A端輸入0V,查看R34 調(diào)節(jié)端電位是否為0V,若不是0V,調(diào)節(jié)R24 、R23 ,直到0V為止。將V-A端輸入2.5V,查看R34 調(diào)節(jié)端電位是否為5V,若不是5V,調(diào)節(jié)R24 、R23 ,直到5V為止。將信號(hào)利用后級(jí)電路進(jìn)行電壓跟隨,若R34 調(diào)節(jié)端電壓與P4端電壓不一致,則調(diào)節(jié)R102 直到電壓相等為止。5.2 系統(tǒng)調(diào)試5.2.1 通信調(diào)試在實(shí)際的應(yīng)用中,針對(duì)DGUS的通信機(jī)制,控制系統(tǒng)與觸摸屏之間不能進(jìn)行直接通訊,而需要根據(jù)DGUS所使用的協(xié)議對(duì)通訊程序進(jìn)行開(kāi)發(fā)。利用微控制器串口發(fā)送相應(yīng)協(xié)議,編程實(shí)現(xiàn)DGUS屏幕與微控制器芯片的通訊,初始化運(yùn)行數(shù)據(jù)。圖1
30、5 運(yùn)行參數(shù)5.2.2 功能調(diào)試根據(jù)設(shè)置的參數(shù),點(diǎn)擊觸摸屏啟動(dòng),圖中可以看出圖標(biāo)變?yōu)榫G色提示,示意圖如下。圖16 運(yùn)行監(jiān)控點(diǎn)擊啟動(dòng)之后,用示波器檢測(cè)電流波形圖如下。圖17 電流波形示意圖 裝機(jī)調(diào)試將程控電源控制器接入試驗(yàn)電源,將程序下載到微控制器,仿真器在線調(diào)試。圖18 調(diào)試 結(jié)論1本系統(tǒng)利用自動(dòng)控制監(jiān)測(cè)技術(shù),設(shè)計(jì)開(kāi)發(fā)了一套操作方便、簡(jiǎn)潔實(shí)用的程控電源控制器。2系統(tǒng)軟硬件設(shè)計(jì)合理,其中軟件采用模塊化的程序設(shè)計(jì)方法,各模塊相互獨(dú)立,提高了系統(tǒng)的可靠性和可擴(kuò)展性,整個(gè)系統(tǒng)具有較高的性能價(jià)格比。3系統(tǒng)C語(yǔ)言編程,程序結(jié)構(gòu)清晰,顯示板界面非常友好,使得操作者在使用該系統(tǒng)時(shí)就像是在操作一臺(tái)實(shí)際的控制儀器一樣。4系統(tǒng)功能獨(dú)立,配置合理。5經(jīng)運(yùn)行驗(yàn)證,系統(tǒng)具有響應(yīng)速度快,操作簡(jiǎn)便,工作可靠等特點(diǎn)。6.系統(tǒng)軟件結(jié)構(gòu)可以進(jìn)一步優(yōu)化,操控界面可以做的更人性
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)并購(gòu)重組財(cái)務(wù)顧問(wèn)與法律顧問(wèn)合作協(xié)議
- 能源企業(yè)財(cái)務(wù)預(yù)測(cè)與預(yù)算編制合同
- 公共車(chē)庫(kù)租賃與智能停車(chē)誘導(dǎo)系統(tǒng)升級(jí)合同
- 有限空間作業(yè)氣體報(bào)警
- 二外日本語(yǔ)優(yōu)秀テキスト
- 經(jīng)濟(jì)部門(mén)工作總結(jié)
- 吸煙有害健康大班公開(kāi)課
- 大學(xué)生心理健康與成長(zhǎng)
- 藥毒中醫(yī)護(hù)理方案
- 醫(yī)院新進(jìn)人員院感崗前培訓(xùn)
- 明陽(yáng)風(fēng)機(jī)培訓(xùn)課件
- 委外加工流程
- 住院醫(yī)囑審核登記表-9月上
- Q∕SY 05010-2016 油氣管道安全目視化管理規(guī)范
- 藍(lán)海華騰變頻器說(shuō)明書(shū)
- 漿砌塊石工程施工程序、施工方法
- 中國(guó)海洋大學(xué)論文封面模板
- 遵義會(huì)議-(演示)(課堂PPT)
- 訂單(英文范本)PurchaseOrder
- 雨污水合槽溝槽回填施工專項(xiàng)方案(優(yōu).選)
- 預(yù)焊接工藝規(guī)程pWPS
評(píng)論
0/150
提交評(píng)論