基于ZigBee節點的智能家居系統語音控制設計
3 系統軟件設計
系統軟件設計主要包括下位機軟件與上位機軟件設計。在下位機程序設計過程中有2個關鍵點:對數字語音信號的采集、處理與識別;ZigBee收發模塊對控制信號的接收、發送與執行。而在上位機軟件設計中,主要是基于Visual C++的串口通信的編程。
上位機主程序流程圖如圖2所示。本文引用地址:http://www.104case.com/article/153707.htm
S3C6410開發平臺具有4個UART接口,在研究設計中,采用了芯片MAX 3232來解決ZigBee通信模塊的CC2530芯片與該開發平臺之間的串口通信電平轉換。上位機通過串口接收語音子節點的控制指令數據,將數據處理后用文字顯示控制命令,并通過與ZigBee主節點之間的串口通信,向子節點發送控制指令數據。
單片機SPCE061A的UART數據格式只有一種,需按照規定的數據格式與CC2530模塊進行串口通信。該程序在凌陽科技的μ’nSP IDE集成開發環境下進行開發,并采用凌陽科技提供的語音處理函數以及函數庫。語音子節點程序流程圖如圖3所示。
由于單片機SPCE061A在進行語音識別時,一次性只能同時識別5條語音指令。為了增加其所能識別的語音指令,本文采用了分組法,能夠在存儲器允許的情況下識別多條語音指令。在燒錄完程序首次使用該節點時,要對該節點進行訓練。在該節點的語音提示下,依次錄入4組命令,每組分5條語音指令,為了提高識別的質量,每條命令需要訓練兩遍。在語音訓練結束后,啟動該智能家居系統就能夠對家居進行語音控制,且能夠實現非特定人語音識別。
評論