何國(guó)康,張志勇,郭東升,袁 凱,伍鎣芮
(山西農(nóng)業(yè)大學(xué)農(nóng)業(yè)工程學(xué)院,山西 太谷 030800)
稱(chēng)質(zhì)量系統(tǒng)是將檢測(cè)與計(jì)算機(jī)技術(shù)、信息處理、數(shù)字技術(shù)等技術(shù)綜合到一起的稱(chēng)質(zhì)量?jī)x器[1]。本文設(shè)計(jì)了一種基于STM32控制器和薄膜壓力傳感器的電子稱(chēng)質(zhì)量系統(tǒng),該系統(tǒng)使用方便,具有較好的應(yīng)用價(jià)值。
本系統(tǒng)以STM32F103C8T6單片機(jī)為核心控制器,包括電阻式薄膜壓力傳感器、LCD液晶顯示屏、語(yǔ)音合成模塊、線(xiàn)性電壓轉(zhuǎn)換模塊等。本系統(tǒng)的整體設(shè)計(jì)示意圖如圖1所示,薄膜壓力傳感器根據(jù)被測(cè)物體質(zhì)量不同,輸出不同的電阻值,線(xiàn)性電壓轉(zhuǎn)換模塊將電阻值轉(zhuǎn)變?yōu)榕c質(zhì)量成線(xiàn)性關(guān)系的電壓信號(hào),經(jīng)STM32F103C8T6采集運(yùn)算,得到被測(cè)物的質(zhì)量值,利用LCD1602顯示模塊將稱(chēng)質(zhì)量結(jié)果顯示出來(lái),同時(shí)通過(guò)語(yǔ)音合成模塊對(duì)結(jié)果進(jìn)行播報(bào)。

圖1 系統(tǒng)總體框圖Fig.1 Thesystem overall block diagram
本系統(tǒng)采用STM32F103C8T6單片機(jī)作為核心控制器。STM32系列單片機(jī)基于ARM Cortex-M3內(nèi)核設(shè)計(jì),功耗低、內(nèi)部資源豐富,具有較高的數(shù)據(jù)處理速度和靈活的編程功能[2]。利用它可以滿(mǎn)足電子稱(chēng)質(zhì)量系統(tǒng)設(shè)計(jì)所需的采樣時(shí)間、運(yùn)算速度及處理精度的要求。STM32F103C8T6單片機(jī)的最小系統(tǒng)電路如圖2所示。該單片機(jī)最小系統(tǒng)的組成有:電源電路、晶振電路、復(fù)位電路、去耦電容和調(diào)試下載電路。

圖2 STM32最小系統(tǒng)電路Fig.2 The STM32 minimum system circuit
系統(tǒng)傳感器采用FSR402電阻式薄膜壓力傳感器,這是一種柔性膜傳感器,可以適應(yīng)不同表面形狀的壓力測(cè)量[3]。當(dāng)被測(cè)物質(zhì)量改變時(shí),作用在薄膜壓力傳感器表面的壓力會(huì)相應(yīng)變化,傳感器輸出電阻值發(fā)生線(xiàn)性變化,質(zhì)量增加,電阻值減小,質(zhì)量減少,電阻值增加。
電壓轉(zhuǎn)換模塊連接薄膜壓力傳感器的電阻輸出端,將傳感器輸出的電阻信號(hào)轉(zhuǎn)換為電壓信號(hào),可以讓主控芯片更加容易的讀取數(shù)據(jù)。其中V0接STM32的PA0,GND接STM32上的GND,VCC接STM32的3.3 V引腳,最大電壓3.3 V,輸出范圍可調(diào)。其電路設(shè)計(jì)圖如圖3所示。

圖3 線(xiàn)性電壓轉(zhuǎn)換電路Fig.3 Thelinear voltage conversion circuit
語(yǔ)音模塊使用SYN6288芯片實(shí)現(xiàn)快速聲音合成。SYN6288是2010年初由北京宇音天下科技有限公司推出的采用PSOLA拼接技術(shù)的文本語(yǔ)音芯片[4]。SYN6288接收要通過(guò)異步串行端口(UART)通信方法合成的文本數(shù)據(jù),并執(zhí)行文本語(yǔ)音轉(zhuǎn)換(或TTS語(yǔ)音)[5]。在該設(shè)計(jì)中,該芯片提供了一組全雙工異步串行通信(UART)接口,用于和STM32進(jìn)行數(shù)據(jù)傳輸,該模塊只需要和STM32F103C8T6單片機(jī)的四個(gè)引腳連接即可正常工作,分別是VCC接5 V供電,GND接GND,RXD接PB10,TXD接PB11。STM32通過(guò)串行端口將合成的音頻信息以命令幀的形式發(fā)送到SYN6288模塊。來(lái)自芯片的輸出信號(hào)通過(guò)功率放大器和揚(yáng)聲器合成之后,結(jié)束語(yǔ)音合成。SYN6288模塊的電路設(shè)計(jì)圖如圖4所示。

圖4 SYN6288語(yǔ)音合成模塊電路Fig.4 The SYN6288 speech synthesismodulecircuit
該系統(tǒng)的顯示界面選擇的是LCD1602液晶屏。它的內(nèi)部存儲(chǔ)器可以存儲(chǔ)一百多個(gè)點(diǎn)陣字符,可同時(shí)顯示2*16個(gè)字符[6]。工作電壓為5 V,功耗較低,通過(guò)內(nèi)部的8位數(shù)據(jù)總線(xiàn)和三個(gè)控制端口RS、R/W、EN實(shí)現(xiàn)字符的調(diào)用。電路設(shè)計(jì)原理圖如圖5所示。

圖5 LCD1602電路Fig.5 The LCD1602 circuit
系統(tǒng)軟件設(shè)計(jì)主要包括:初始化子程序、數(shù)據(jù)采集子程序、數(shù)值濾波子程序、運(yùn)算子程序、顯示子程序、語(yǔ)音播報(bào)子程序及按鍵檢測(cè)子程序。稱(chēng)質(zhì)量系統(tǒng)的控制模塊在接通電源之后,首先完成初始化狀態(tài)。在初始化完成判斷“稱(chēng)質(zhì)量”功能按鍵是否按下,按鍵按下,則對(duì)壓力傳感器輸出的信號(hào)進(jìn)行采集檢測(cè),通過(guò)數(shù)字濾波減小測(cè)量誤差,經(jīng)過(guò)運(yùn)算計(jì)算得出質(zhì)量值,將質(zhì)量值顯示在液晶顯示屏上。語(yǔ)音合成模塊就會(huì)將數(shù)據(jù)值播報(bào)出來(lái)。整體程序流程圖如圖6所示。

圖6 系統(tǒng)程序流程圖Fig.6 The system program flow chart
本稱(chēng)質(zhì)量系統(tǒng)以STM32F103C8T6為主控核心,電阻式薄膜壓力傳感器在受到壓力后電阻值產(chǎn)生變化,通過(guò)線(xiàn)性電壓轉(zhuǎn)換模塊將電阻信號(hào)轉(zhuǎn)換為電壓信號(hào),最后在LCD液晶顯示屏上顯示,并通過(guò)語(yǔ)音播報(bào)測(cè)量值。