摘 要:本設(shè)計是以STM32F103主控板為核心,充分利用其I/O引腳,并通過與操作系統(tǒng)的結(jié)合,實現(xiàn)系統(tǒng)各個任務(wù)之間的實時性的調(diào)度,使每個任務(wù)的執(zhí)行時間得到一個非常準確的保證,并把該信息顯示到TFTLCD顯示屏上并且通過觸摸屏進行一些參數(shù)的設(shè)置,實現(xiàn)了一個非常好的動物體外連續(xù)培養(yǎng)系統(tǒng)的人機交互界面,同時其它引腳控制電機來實現(xiàn)功能。STM32的高速處理速度以及超低功耗,給動物體外連續(xù)培養(yǎng)系統(tǒng)的電機控制帶來了很大的改進。
關(guān)鍵詞:嵌入式;電機;STM32;TFT
DOI:10.16640/j.cnki.37-1222/t.2015.21.221
0 引言
人工瘤胃設(shè)備是動物醫(yī)學(xué)反芻學(xué)研究的高精尖設(shè)備。目前比較先進的是吉林農(nóng)業(yè)大學(xué)的瘤胃體外連續(xù)培養(yǎng)系統(tǒng),但是設(shè)備使用PLC控制器作為電控的主控單元,無論是在成本上、設(shè)備所占用面積、以及操作的人機交互界面上都不符合現(xiàn)代社會對精密儀器的要求的需要。本文在現(xiàn)有瘤胃體外連續(xù)培養(yǎng)系統(tǒng)上進行改進,主控器采用目前較先進的嵌入式處理器。對動物體外連續(xù)培養(yǎng)電控系統(tǒng),主要的研究內(nèi)容有:控制大型步進電機,采集甲烷、氨氣、二氧化碳的濃度參數(shù)。利用現(xiàn)有的性價比較高的STM32F103處理器作為主控制器,用μC/OS-II作為操作系統(tǒng),用320*240 TFT作為人機交互界面。 原理圖見框架圖1。
1 STM32F103微處理器
系統(tǒng)架構(gòu)微處理器STM32F103是意法半導(dǎo)體公司推出的高性能32 Cortex-M3的,作為工業(yè)控制的核心處理器。通過多層AHB內(nèi)部總線架構(gòu)的處理器連接,內(nèi)部整合集成豐富的外設(shè):USART,bxCAN,SPI,ADC等。微處理器是一個100引腳,該芯片集成了128 KB閃存,高達64 KB的SRAM。一個系統(tǒng)定時器(內(nèi)部看門狗定時器)主要用于制作嵌入式操作系統(tǒng)移植。有了這個定時器,你可以很容易地實現(xiàn)所需的便攜式操作系統(tǒng)時鐘中斷。此計時器的實施,極大地方便了μC/ OS-II系統(tǒng)在處理器上移植[1]。
2 顯示系統(tǒng)的設(shè)計
在嵌入式系統(tǒng)的圖形用戶界面需要輕型,占地面積小,高性能,高可靠性,便攜性,可配置等特點。 μC/ GUI是這樣專為嵌入式圖形用戶界面軟件設(shè)計的應(yīng)用程序。 μC/ GUI內(nèi)核是非常小的,含有一個窗口,并控制整個μC/ GUI。系統(tǒng)的管理只需要30?60K的ROM中的,2?6K的RAM(基于窗口的數(shù)量),和1. 2K堆??臻g可以流暢運行。 μC/ GUI是完全用ANSI2C編譯的,所以它是與處理器無關(guān)的,它可以很容易地移植到不同的操作系統(tǒng)和嵌入式微處理器,并支持任何規(guī)模大小圖形液晶顯示器。它在任何使用獨立的處理器和LCD控制器之外的有效的圖形用戶界面的接口,并支持單色,灰度和彩色顯示。它的2D圖形庫和窗口管理功能,可以讓我們輕松實現(xiàn)類似于嵌入式系統(tǒng)Windows圖形界面。
TFT-LCD它是一個薄膜晶體管液晶顯示裝置。TFT-LCD和無源的TN-LCD,STN-LCD的簡單矩陣不同的是每個像素設(shè)置有薄膜晶體管(TFT),能有效地克服非選通時的串擾,靜態(tài)特性顯示液晶屏與掃描線數(shù)無關(guān),從而大大提高了圖象質(zhì)量。 TFTLCD包含16條數(shù)據(jù)線,讀寫線,指令/數(shù)據(jù)控制線,片選線,液晶硬件復(fù)位線,背光控制線。 STM32F103VET6作為MCU,F(xiàn)SMC一個16位的并行接口,以18080接口的定時。為了實現(xiàn)彩色顯示和效率的平衡,在使用16位64K彩色接口模式。有五個紅,六個綠,五個藍色的各像素來代表共16個,320 * 240的分辨率。圖像占據(jù)320 * 240* 2 =153600字節(jié)[5](圖2)。
3 步進電機
3.1 硬件部分
系統(tǒng)中用的THB6128是東芝公司生產(chǎn)的57系列步進電機。THB6128細分型兩項混合式步進電機驅(qū)動控制芯片,最高耐壓40V(DC),適用驅(qū)動電流小于2A,外徑小于57毫米的兩相混合式步進電機,如24、28、39、42、57等步進電機,具有快衰、慢衰、混合式衰減三種衰減方式,內(nèi)置溫度保護和過流保護[6]。驅(qū)動原理:STM32的通用定時器3產(chǎn)生的兩路PWM輸出為電機1和電機2提供穩(wěn)定的驅(qū)動脈沖。通用輸入輸出口PC1、PC2、PC3用來控制電機1的細分設(shè)定,通用輸入輸出口PB12、PB13、PB14用來控制電機2的細分設(shè)定。電路原理圖如圖3。
3.2 軟件部分
STM32的定時器除了TIM6,TIM7外都能用來產(chǎn)生PWM波輸出,其最多可以同時產(chǎn)生30路PWM輸出。它不像51單片機那樣,需要通過輸出高低電平來模PWM的輸出,只需要配置定時器和端口,通過軟件改變占空比即可,不同的占空比能對電機起到調(diào)速的作用。
PWM輸出配置[6]
(1)開啟TIM3時鐘,配置PC6、PC7為復(fù)用輸出。通過設(shè)置APB1ENR開啟TIM3的時鐘,配置PA7為復(fù)用輸出,打開TIM3_CH2、TIM3_CH3;(2)設(shè)置TIM3的ARR和PSC 。打開TIM3時鐘之后,設(shè)定ARR和PSC兩個寄存器的值來控制PWM周期的輸出;(3)設(shè)置TIM3_CH2、TIM3_CH3的PWM模式。設(shè)置TIM3_CH2為PMW模式(默認是凍結(jié)的),因為系統(tǒng)需要1KHz的方波作為電機的驅(qū)動脈沖,所以通過配置TIM3_CCMR1的相關(guān)位來控制TIM3_CH2的模式來輸出1KHz方波后保持不變即可;(4)設(shè)置TIM3的CH2輸出,使TIM3能用。設(shè)置完后,啟動通用定時器TIM3的通道2、通道3以及TIM3。前者由TIM3_CCER1設(shè)置,它是一個單路開關(guān),后者通過TIM3_CR1設(shè)置,是整個TIM3的總開關(guān)。設(shè)置這兩個寄存器,可以看到TIM3通道2的PWM波輸出。
通過以上步驟,STM32的PC6和PC7就可以控制TIM3的CH2、CH2輸出 PWM波了。
4 結(jié)語
系統(tǒng)上電,觸摸屏控制正常,電機按照觸摸屏動作進行正反轉(zhuǎn)、調(diào)速。二氧化碳傳感器、甲烷傳感器實時監(jiān)測氣體濃度,并且將監(jiān)測的氣體濃度上傳到系統(tǒng)內(nèi)部,通過液晶屏輸出顯示。各個部件均按照設(shè)計正常工作和運轉(zhuǎn),系統(tǒng)改造設(shè)計成功。
參考文獻:
[1]基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京航空航天大學(xué)出版社,2008.
[2]任哲.嵌入式實時操作系統(tǒng)原理及其應(yīng)用[S].北京航空航天大學(xué)出版社,2006.
[3]奮斗嵌入式開發(fā)工作室.嵌入式實時操作系統(tǒng)ucosII在奮斗板上的應(yīng)用[J].2011.
[4]周立功.ARM嵌入式系統(tǒng)實驗教程[M].北京:北京航空航天大學(xué)出版社,2005(01).
[5]基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京航空航天大學(xué)出版社:2008.
[6]高細分步進電機集成芯片THB6128[ EB /OL].
基金項目:吉林省教育廳“十二五”科學(xué)技術(shù)研究項目 (編號2013342)
作者簡介:馬明濤(1972-),男,吉林吉林人,副教授,主要從事:電子電路和信號的檢測、傳輸方面的研究。endprint