周佐培,楊潔,潘文術,黃發玲
(黔南民族師范學院 物理與電子科學學院,貴州都勻,558000)
水杯作為日常生活中的必需品,在市場上的選擇眾多。然而,當前市面上的水杯大多只具備基本的盛水和保溫功能,僅有少數水杯具備加熱的功能。然而,隨著消費者需求的多元化和對功能多樣性的追求,一款具備更多功能的水杯成為人們的期望。為了滿足消費者的多樣化需求,我們設計了一款創新的多功能水杯。除了基本的裝水和保溫功能外,這款水杯還增加了語音控制的加熱、制冷、保溫、攪拌以及音樂播放功能。同時,我們引入了太陽能模塊,使得水杯能夠通過環保的方式進行充電。這樣的設計不僅提供了更多的便利性和功能選擇,還注重了環境友好和節能減排的特點。
該系統主要由Arduino MEGA 單片機、LD3320A 語言識別模塊、太陽能充電模塊、加熱模塊、制冷模塊、攪拌模塊、功放模塊、顯示模塊,照明模塊構成。Arduino 控制語音識別模塊識別相關指令傳入至控制板進行處理對其他模塊達到控制作用,達到人機交互功能。Arduino MEGA 單片機作為控制中心,接收LD3320A 語音識別模塊識別到的語音指令,并進行處理,以實現對其他模塊的控制。LD3320A 語音識別模塊通過識別用戶添加的語音命令,并將識別到的命令傳遞給單片機進行處理;太陽能充電模塊由CN3065 太陽能充電板以及太陽能板組成,將外界的太陽能轉化為穩定的電能儲存到蓄電池;加熱模塊是馬達驅動器一個接口正轉以及內置的發熱絲來組成,通過控制正轉接口與發熱絲形成回路達到加熱功能;冷模塊是馬達驅動器的一接口反轉以及半導體制冷片組成,通過控制反轉接口與半導體制冷片形成回路達到制冷功能;攪拌模塊是通過馬達驅動器的第二接口與馬達構成,接收到Arduino MEGA 單片機的命令進行工作,實現攪拌的功能;功放模塊是在執行命令前后對外播放執行命令的內容和結果;顯示模塊由DS18B20 傳感器將數據溫度傳入Arduino MEGA 單片機處理,并在LCD1602 液晶顯示屏顯示信息。照明模塊是發出照明指令時,Arduino MEGA 單片機控制LED 提供光源。系統設計框架圖如圖1 所示。

圖1 系統設計框圖
1.1.1 Arduino mega 單片機
Arduion 是一款具有免費的、開源的IDE 單片機。Arduion MEGA 2560 控 制 器 擁 有54 路數字輸入/輸出口,和16 路模擬輸入,使其具有較強的拓展性,有利于與各種傳感器進行連接[1]。本設計充分利用了Arduino MEGA2560 作為控制中心,來處理語音識別器所識別的內容并將其轉化為邏輯語言。此外,我們還利用Arduino MEGA 將溫度傳感器的數據轉換為數字形式,并在顯示器上進行顯示。
1.1.2 語音識別模塊
LD3320 片集成了語音識別處理器和AD、DA 轉換器、麥克風接口、聲音輸出接口[2],在設計本電路時,可以將LD3320A 語音識別處理器與Arduion MEGA2560 單片機直接連接,進行語音指令編程,通過LD3320 片采集語音信號,將其傳入單片機進行處理從而實現語音識別功能。如圖2 所示。

圖2 單片機控制LD3320A 語音識別模塊
1.1.3 太陽能充電模塊
太陽能充電模塊采用CN3791MPPT 太陽能充電管理芯片與太陽能板結合。CN3791 是具有光伏 MPPT 功能的PWM 降壓型單節鋰電池充電管理芯片,具有涓流、恒流、恒壓充電模式,采用定電壓跟蹤法( CVT) 跟蹤光伏電池的最大功率點[3]。利用輸出特性,能夠高效率地給鋰電池進行充電。
1.1.4 加熱,制冷,攪拌模塊
加熱制冷攪拌模塊的控制采用馬達驅動器。該馬達驅動器具有兩個輸出端口,通過調整電流方向實現馬達的正轉和反轉。基于這一原理,我們將加熱回路和制冷回路分別連接到馬達驅動器的同一個端口的正負極,并引入二極管以確保電流流向與指令設定的方向一致。馬達則連接到馬達驅動器的另一個端口,接收相關指令,并完成攪拌功能的正向轉動。加熱,制冷和攪拌連接圖如圖3 所示。

圖3 單片機控制加熱制冷攪拌連接圖
發熱模塊采用了發熱絲與2A 升壓轉換器DC-DC 電路的組合構成。該2A 升壓轉換器能夠將輸入電壓范圍從2V~24V 轉換為最高28V 的輸出電壓。通過充分利用該升壓轉換器的特性,將馬達驅動器的輸入電壓有效轉換為發熱絲所需的工作電壓,從而實現了理想的升溫效果。
制冷模塊主要采用半導體制冷片來實現其制冷功能,半導體制冷也被稱為熱制冷。該技術利用半導體材料通過電流作用的帕爾貼效應[4],實現了一端吸熱、另一端釋熱的效果,從而達到制冷或制熱的目的。為了提高制冷效率,我們在半導體制冷片的釋熱端串聯了一臺小型風扇,以促使制熱端的熱量散發更為迅速有效。這樣的設計方案旨在充分發揮半導體制冷片的性能,以達到優化的制冷效果。
1.1.5 顯示模塊
顯示模塊采用LCD1602[5]液晶顯示屏,該顯示屏是一種專門顯示字符的液晶顯示器,所顯示的內容為杯內DS18B20 傳感器所采集數據經Arduion MEGA2560 單片機所處理數據。DS18B20 傳感器具有自我保護能力以及極強的抗干擾能力,通過單線接口。工作原理圖如圖4 所示。

圖4 溫度顯示原理圖
1.2.1 Linkboy 平臺
本產品的設計主要是在Linkbboy 圖形化編程軟件進行。Linkboy 適用于對Arduion 和電子設計滿懷熱情但是對單片機以及編程語言不熟悉的愛好者。Linkboy 具有圖形化設計,中文編程的兩大特點,讓設計者能在短時間內高效地完成編程任務。在Linkboy 上設計的多功能水杯電路圖如圖5 所示,該電路圖主要是由Arduion MEGA2560 單片機,LD3320A 語音識別處理器,馬達驅動器,LCD1602 液晶顯示屏,DS18B20 傳感器,馬達驅動器,以及馬達和馬達所在電路代替的加熱與制冷模塊。多功能水杯設計電路圖如圖5 所示。

圖5 多功能水杯設計在Linkboy 上設計圖

圖6 程序設計框圖
1.2.2 程序設計
在Linkboy 上連接好各主要部分以后,對整體進行文字化編程,語音指令編程首先按將Arduion MEGA2560 單片機進行初始化,LD3320A 語音識別處理器所識別的工作指令拼音轉化為對應編碼為(例如:開始攪拌工作指令為kai shi jiao ban,編碼ID 為1),所有指令編碼完成以后,語音識別模塊開始工作。溫度顯示編程執行反復執行指令,首先將信息顯示器第二排清空,將DS18B20 溫度傳感器的整數部分,小數點,小數部分,以及溫度單位“℃”依次在信息顯示器的第二行的5、6、7、8 列顯示,通過延時器進行延時0.5 秒。
按照Linkboy 上的仿真電路將實際電路依次連接,連接好電路以后將Linkboy 系統程序選擇Arduion MEGA2560 所在端口COM4 進行下載。程序以及電路完成后選擇一個安靜的環境進行測試,通過語音輸入來檢測各項由語音控制的功能是否能完成指令。在調試語音控制功能實現的同時調試溫度傳感器以及顯示器顯示液體溫度是否相同。多功能水杯設計實物模型圖如圖7 所示,其功能實現視頻可通過圖8 二維碼進行觀看。

圖7 多功能水杯實物圖

圖8 功能觀看二維碼
系統完成基本功能調試以后,將該設計置于室溫為23℃,取礦泉水100ml,利用設計好的溫度顯示器分別記錄好該設計對水的加熱以及制冷數據。所得數據如圖9~圖10 所示。

圖9 多功能水杯設計制冷溫度變化圖

圖10 多功能水杯設計加熱溫度變化圖
從加熱以及制冷溫度變化圖可得,該裝置能夠在一段時間達成一定的加熱和制冷效果。能夠滿足大多數人群對杯內溫度的不同需求。
該設計的主要目標是利用Arduino MEGA 單片機和LD3320A 語音識別模塊、DS18B20 傳感器、LCD1602 液晶顯示屏等模塊,實現多種功能。且設計具備太陽能充電功能,實現低碳環保的特性。通過語音控制和功能使用播報,方便用戶進行操作,尤其適合老年人和兒童使用。設計不僅具備加熱和保溫功能,還能實現制冷,滿足不同溫度需求。此外,它還可作為便攜式充電寶,減輕出差人士的行李負擔。獨特的語音控制燈光可以照亮回家的路,而獨特的攪拌和音樂播放功能則可讓嬰兒在外出時享受攪拌均勻的奶粉,并在輕松的音樂中愉快地進食。