王培屹
摘要:隨著我國互聯網大數據技術的快速發展,智能家居成為與人民生活密切相關的信息載體。智能家居主要通過嵌入式硬件、數字網絡等,來完成家居環境中的智能交互與信息互聯。而本文提出的智能家居機器人技術,主要包括智能家居系統、語音機器人兩方面內容,通過運用嵌入式Linux、芯片控制器和無線網絡技術等,能夠實現用語音機器人來操控智能家居,從而滿足人們對高品質家居生活的需求。
關鍵詞:嵌入式;Linux;智能家居;機器人
中圖分類號:TP273.5文獻標識碼:A 文章編號:1672-3791(2018) 5(b)-0000-00
智能家居技術與其他計算機技術的最大區別,在于智能家居技術主要通過人機交互,進行數據處理與信息傳遞。因此智能家居機器人在人機交互中,主要負責人類命令與硬件設備之間的連接,從而實現相應命令信息的執行。本文采用嵌入式Linux軟件系統,結合芯片控制、信息采集、傳感器與無線網絡等硬件模塊,來完成對家居智能設備的語音控制。
1嵌入式Linux智能家居機器人系統的總體框架
在智能家居機器人系統的設計中,主要運用語音、圖像及其他傳感器的識別技術,來完成家居環境中智能硬件設備的控制。因此智能家居機器人在整個操作系統中,主要起到管家與信息傳達的功能。而智能家居控制系統的目標,是擺脫鼠標、鍵盤等傳統人機交互模式的限制,達到人與硬件設備之間的實時信息交流。嵌入式Linux的智能家居系統,主要硬件設備、智能家居機器人等組成部分,這兩個組成部分又包含硬件系統、軟件系統兩方面內容。其中智能家居機器人的硬件系統,主要包括芯片控制器、信息采集、語音識別模塊、傳感器等。這些智能家居硬件,可以借助于嵌入式Linux系統、無線網絡通信技術等,進行人機對話與命令識別。因此智能家居系統中軟硬件的結合,能夠完成智能家居的信息檢測、數據傳輸和任務執行。
2嵌入式Linux智能家居機器人系統的硬件設計
2.1芯片控制器模塊
嵌入式Linux 語音識別系統的體積較小,且在單位時間內的功耗與效率高。因此在智能家居芯片控制器模塊選擇中,需結合芯片體積、成本、功能、穩定性和功耗等,進行芯片控制硬件的選擇。本文選用Samsung公司的S3C2440 ARM處理芯片,作為智能家居硬件平臺的核心。S3C2440 ARM芯片主要包括語音轉換、信息處理與內存等模塊,CPU最大總線頻率可達533 MHz。其中語音轉換模塊負責高速數字信號的處理,內存模塊主要完成數據的讀取與存儲(讀取速率可達16 kB/s)。因此S3C2440 ARM芯片控制器模塊,能夠為應用程序的高速運行提供保障。
2.2信息采集模塊
智能家居機器人系統的信息采集模塊,主要對家居空間中的語音、圖像信息進行采集。其中圖像信息采集使用OmniVision公司的OV9650傳感器,OV9650具有1280x1024分辨率、130萬像素,且寄存器控制協議為SSCB接口。因此可以通過SSCB接口,將OV9650傳感器與S3C2440 ARM芯片控制器進行連接,來完成空間圖像的采集、識別與傳輸。而且運用S3C2440 ARM芯片控制器進行圖像處理,能夠提高信息處理的速率。
2.3語音識別模塊
語音識別模塊為智能家居機器人的核心模塊,也是語言學習、語音識別與信息處理的模塊。而且語音識別模塊也是借助于S3C2440 ARM芯片控制器,來完成語音編碼、語音解碼,以及控制指令的輸出與命令執行。在智能家居系統的語音識別過程中,首先系統會進行人類語言的學習,之后對家居空間的語音進行識別。這里語音編解碼芯片就會根據輸入的語音內容,進行語音信號的轉換計算,并通過系統中的數碼管,實現控制信號的輸出與顯示,以便于操控者對執行的任務進行處理。
3嵌入式Linux智能家居機器人系統的軟件設計
3.1嵌入式Linux平臺的設計
由于嵌入式Linux系統具有源代碼開放,應用程序資源豐富、內核功能或驅動可裁剪等特征,因此運用Linux系統進行智能家居機器人的設計,能夠完成更快的系統響應與信息處理。在嵌入式Linux系統的構建過程中,首先要使用交叉編譯器,創設出可在其他平臺中進行編譯的環境。然后通過對U-boot加載程序的移植,進行各個硬件設備初始化以及內存空間映射的建立,以完成適合軟硬件運行的環境搭建。之后對Linux系統內核中多余的功能或驅動,進行裁剪或編譯的處理。最后通過對內核鏡像的創建與壓縮,來實現根文件系統的創設。
3.2無線通信模塊的設計
在智能家居機器人系統的信息交互中,需要通過GPRS無線通信模塊,來完成Internet網絡連接與數據傳輸。首先需要利用TCP/IP協議進行語音數據封裝,然后再經由GPRS網絡與Internet路由器進行連接,最后將語音數據包傳輸至特定的IP地址中。
3.3嵌入式Web服務器
當前嵌入式Linux系統主要使用BOA 服務器,搭配通用網關接口程序(CGI),來完成用戶http的單任務請求。但BOA 服務器本身為http的單任務處理服務器,其只能按照用戶任務請求的次序,來依次完成網頁信息的處理。而通用網關接口程序(CGI)加入到BOA 服務器中,能夠分叉出多個任務處理進程,并建立起具有多路連接的http請求列表,來對用戶請求信息進行處理。同時在BOA 服務器中可以建立多個CGI程序,因此其能最大程度節約可執行代碼,以保障整個系統快速流暢的運行。通過BOA 服務器的通用網關接口程序,進行智能家居設備的控制,主要包括以下幾個步驟:(1)進行BOA 服務器配置。(2)配置通用網關接口程序的腳本儲存路徑。(3)BOA 服務器在收到Web請求后,通過CGI程序進行請求信息的處理,并輸出HTML網頁代碼。
4嵌入式Linux智能家居機器人系統的調試與功能實現
在嵌入式Linux智能家居機器人系統,完成整個軟硬件框架的搭建后,需要對系統進行調試與功能測試。首先需要對語音識別、語音合成等的程序命令進行編寫,測試控制命令的識別狀況、執行狀況等。然后再進行不同智能家居模塊的功能測試,功能測試主要包括人機對話、語音控制兩部分。人機對話需要發出相應的命令請求,然后智能家居機器人會接收到新聞資訊、天氣查詢等命令,并通過語音合成的形式進行執行。語音控制主要控制智能家居中的硬件設備,包括電燈、電扇、門窗和空調等設備,其能夠根據用戶的控制指令來完成任務執行。最后在嵌入式Linux智能家居機器人系統的后期調試環節,需要做好硬件驅動、軟件bug排除等工作,以保障整個Linux智能家居系統的平穩運行。
5結語
嵌入式Linux智能家居機器人系統的設計,是對原有家居控制方式的改革創新。當前大多數智能家居,都通過智能手機來完成命令的控制,但智能手機在人機交互與控制命令執行方面,存在較大的操作與控制問題。因此智能家居機器人語音控制系統的出現,能夠解決人機對話中的交互與信息理解障礙,從而實現智能家居語音控制、硬件設備的功能,以推動人民生活的智能化。
參考文獻
[1] 吳濤,黃心漢,黃振宇.基于Linux的多移動機器人通信的原理與實現方法[J]. 電工技術雜志. 2003(12)
[2] 萬劍鋒,鄭聰.基于Linux的智能家居研究與實現[J]. 科技視界. 2017(06)
[3] 王選誠,申納.基于Linux的嵌入式水下機器人系統設計[J]. 傳感器世界. 2015(11)