智能電子秤給人們的經濟生活帶來了極大的便利,受到廣大用戶的青睞。木文以MSP430單片機為核心,通過一系 列軟硬件設計,實現了小重量物體的稱重功能,并通過液晶顯示模塊和基于ISD1760的語音模塊實現稱重數字化顯示并精 確語音播報功能。系統以編程后的單片機為控制核心,物體的重量通過HX711傳感器稱重模塊轉化為電信號,并經由AD 轉換,將信號輸送給LCD液晶顯示模塊和ISD1760語音播報模塊,從而將實際稱得的重量實時通過LCD顯示并語音播報。
智能電子秤按照設計要求,應分為數據采集模塊、控制器 模塊、人機交互液晶顯示界面三大模塊。在功能擴展上,還可 以增加一個語音播報功能使電子秤的設計更人性化智能化。 基于此,木系統的實現包含硬件和軟件設計兩大部分,具體以 MSP430單片機為核心控制器,以電阻應變式壓力傳感器后接 HX711模塊實現信號轉換、采集和放大,從而將物體重量轉換 成單片機可處理的電壓信號。將處理好的電壓信號送到LCD 顯示模塊和基于ISD1760的語音播報模塊,在這之前需要先將 合成的語音片段按地址存人到ISD1760芯片中,記錄每一個語 音片段的地址,從而通過程序調用,實現按照實際稱重值進行 語音播報。
1.系統硬件設計方案
1.1系統硬件工作原理
該系統硬件主要包括單片機最小系統、基于HX711傳感器 稱重模塊、LCD顯示模塊和基于ISD1760的語音播報模塊,其 中,單片機最小系統板是M430G2553開發板,傳感器稱重模塊 采用雙孔懸臂平行梁應變式稱重傳感器。顯示模塊采用IN- EX-GLCD5110,語音模塊采用ISD1760芯片加外圍擴展構成。 系統硬件控制電路總體框圖如下圖1所示:
系統的工作原理為:首先通過USB線給整個系統供電,然 后將寫好的程序寫人M430單片機中,將單片機的引腳信號加 載到稱重模塊、LCD顯示模塊和語音播報模塊,從而使整個系 統工作起來。當有物體放到秤臺上時,即可顯示并播報重量。
1.2系統硬件設計
1.2.1單片機最小系統模塊
MSP430系列單片機是一個16位的單片機,采用了精簡指 令集(RISC )結構,具有豐富的尋址方式(7種源操作數尋址、4 種目的操作數尋址);大量的寄存器、片內數據存儲器及高效的 査表處理指令使其具有較高的處理速度,在8MHz晶體驅動下 指令周期為125 nS,這些特點保證了可編制出高效率的源程 序。
1.2.2基于HX711的傳感器稱重模塊
1)基本器件介紹
HX711傳感器模塊由帶128倍增益的24bit AD模塊、20Kg
壓力傳感器組成,通過對應端口連接到單片機的控制端,實現 對物體重量的測量。各模塊與HX711連接示意圖如下圖2所 示:
圖2各模塊與HX711連接示意圖
2)基木原理講解
①20kg傳感器
滿量程輸出電壓=激勵電壓*靈敏度2.0mv/v
②HX711模塊對產生的5mV電壓進行采樣。
步驟1:如何計算傳感器供電電壓
HX711可以在產生VAVDD和AGND電壓,即HX711模塊 上的E+和E-電壓。
該電壓通過VAVDD=VBG(R1 +R2 )/R2計算。
步驟2:如何計算AD輸出最大值
在4.3V的供電電壓下20Kg的傳感器最大輸出電壓是 4.3v*2mv/V = 8.6mV
經過128倍放大后,最大電壓為8.6mV*128 = 1100.8mV 經過AD轉換后輸出的24bit數字值最大為:550.4mV*224/ 4.3V 疋 4294967步驟3:程序中數據如何轉換
程序中通過HX711_Buffer = HX711_Read();獲取當前采樣 的AD值,最大4294967,存放在long型變量HX711_Bfer中, 因long型變量計算速率和存放空間占用資源太多,固除以 100,縮放為int型,便于后續計算。
Weight_Shiwu = HX711_Buffer/100;Weight_Shiwu 最大為 42949。
步驟4:如何將AD值反向轉換為重力值。
假設重力為xKg,(x<20Kg),測量出來的AD值為y 20Kg傳感器輸出,發送給AD模塊兒的電壓為AKg * 8.6mV / 20Kg = 0.43A mV
經過128倍增益后為128 * 0.43A = 55.04AmV 轉換為24bit數字信號為55.04 A mV * 224 / 4.3V = 214748.3648A
所以 y = 214748.3648A /100 = 2147.483648 A 因此得出 A = y/ 2147.483648 Kg-y/2.15g 連接好的稱重模塊如下圖3所示。
1.2.3基于ISD1760的語音播報模塊
ISD1700系列芯片內部包括:麥克風前置擴大器、自動增 益控制、揚聲器驅動線路、振蕩器與內存等全方位整合系統功 肯巨。
在木設計中,為實現語音播報功能須事先將需要的聲音
通過線錄的方式存人芯片內,當將此模塊連進系統后則可直接 通過程序調用語音。連接好的語音播報模塊實物圖如下圖4 所示。
2.系統軟件設計方案
2.1軟件功能設計目標
稱重是系統的核心,語音播報是亮點。因此木次軟件開發 在Windows系統TI CCS平臺下采用模塊化設計,包括主程序, 傳感器處理子程序,LCD液晶顯示子程序及ISD1760語音芯片 驅動子程序等。
稱重傳感器數據處理子程序是通過稱重傳感器的模擬信 號進行放大,AD轉換來讀取稱重值。LCD顯示子程序主要用 來直觀顯示稱重值。語音播報程序是在獲得稱重值之后將稱 重值報讀出來,主要是通過SPI總線對語音芯片ISD1760進行 操作。程序流程結構如上圖5所示。
2.2系統軟件設計
2.2.1 Altium Designer 軟件使用
使用Altium Designer繪制單片機最小系統、稱重模塊、LCD 顯示模塊電路原理圖、PCB圖:
如圖7、8所示。
2.2.2用CCS軟件編寫單片機控制程序
{ Weight_Shiwu=0;
HX711_Buffer = HX711_Read();
HX711_Buffer= HX711_Buffer/100;
Weight_Shiwu = HX711_Buffer;
//獲取實物的AD米樣數值Weight_Shiwu=(un- signed int)((float)Weight_Shiwu/2.15+0.5);}
//芯片IO初始化 voidI0_initial(void)
{ P2DIR &=~ BIT2;//設置為輸入 P2DIR |= BIT0+BIT1;
P1DIRI=BIT5;//設置為輸出 DISENISD1760_SS;
ISD1760_SCLK_H;
ISD1760_M0SI_L;
}
3.系統測試及總結
3.1系統測試方案
msp430采用TI MSP430 LunchPad最小系統板,不必進行 測試。對ISD1760語音模塊測試,焊接了由STC89C51RC(調試 及錄音用)與ISD1760芯片組成的語音板,利用上位機軟件進行 了 ISD1760器件復位,上電,錄音,獲取錄音地址,播放錄音等 調試,以便將SPI通信移植到MSP430上。系統整體硬件連接 實物圖如上圖6所示。
3.2項目總結
經過多次20kg以下重物稱重測試,該系統重復稱重精度能 達到III類標準,液晶顯示功能正常,語音播報及時準確,較好 的達到了預期效果。存在的不足是傳感器有時信號傳遞不穩定,稱重誤差較大。如果改用高精密度的傳感器,效果定會明 顯改善。
該系統操作簡單,性能穩定,硬件選配合理,價格低廉,且 易于擴展。軟件部分加人了人性化設計,如超重報警,語音播 報等特色功能,智能化、自動化程度較高。同時該系統可擴展 性較強,通過對軟硬件的修改或擴展,如添加鍵盤等,即能設計 出富有特色的計價秤、電子臺秤等,因此具備一定的工業應用 價值。