陳俊杰
關(guān)鍵詞:RK3288;智能魔鏡;智能家居
智能魔鏡由鏡子、顯示屏和主機(jī)組成,主機(jī)內(nèi)置智能系統(tǒng),智能系統(tǒng)接入云平臺(tái),然后通過云平臺(tái)和智能系統(tǒng)可以讓“魔鏡”與人互動(dòng),用戶通過觸控、人體感應(yīng)或語(yǔ)音識(shí)別可以喚醒魔鏡系統(tǒng)及控制智能家居設(shè)備。智能魔鏡系統(tǒng)如圖1。
1 硬件系統(tǒng)方案
智能魔鏡主控采用瑞芯微RK3288,遠(yuǎn)場(chǎng)語(yǔ)音采用順芯ES7210,WiFi 藍(lán)牙模塊使用正基AP6256。硬件系統(tǒng)如圖2。其中,電源給整個(gè)系統(tǒng)供電;時(shí)鐘電路保證系統(tǒng)中的各模塊同步;復(fù)位電路確保主控可靠的工作;DDR 是隨機(jī)存儲(chǔ)器,同步需要時(shí)鐘;FLASH 用來(lái)程序存儲(chǔ);WIFI 可以用來(lái)無(wú)線傳輸;遠(yuǎn)場(chǎng)語(yǔ)音用來(lái)人機(jī)交互。
瑞芯微RK3288 采用ARM 全新架構(gòu)內(nèi)核芯片,內(nèi)置最新Mali-T76x 系列GPU 的芯片,支持4K×2K 硬解,支持H.265,顯示支持4K@60Hz。遠(yuǎn)場(chǎng)語(yǔ)音芯片ES7210 具有4 路通道,2 路用于遠(yuǎn)場(chǎng)語(yǔ)音,2 路用于消音回采。
2 電路設(shè)計(jì)
2.1 電源設(shè)計(jì)
電源給整個(gè)系統(tǒng)供電,電源芯片供電能力大于2 A,電感值大于2.2 μH,飽和電流大于3 A。Hi3559內(nèi)核電壓0.8 V,IO 電壓18 V,DDR4 接口電壓1.2 V,LPDDR4 接口電壓1.2 V;內(nèi)核電源,DDR 電源和IO電源上電時(shí)序?yàn)椋篒O 電源> DDR 電源>內(nèi)核電源;下電時(shí)IO 先下電,內(nèi)核最后下電。DDR PLL 電源與IO電源連接時(shí),必須使用磁珠隔離,紋波小于800 mV,不能有固定頻點(diǎn)噪聲。FLASH 接口的IO 電源實(shí)際連接的時(shí)要與對(duì)接芯片的接口電平一致。
2.2 時(shí)鐘電路
外部24MHz 時(shí)鐘電路和芯片內(nèi)部的反饋電路形成了系統(tǒng)時(shí)鐘電路。外部晶體振蕩電路采用4P 貼片晶振,其中2 個(gè)GND 要充分接地,增加系統(tǒng)時(shí)鐘抗ESD 干擾能力;外圍電容采用NPO,為防止電磁干擾,時(shí)鐘到主控的輸入端串聯(lián)22R 的端接電阻。
2.3 復(fù)位電路
系統(tǒng)上電后由主控內(nèi)部POR電路對(duì)芯片進(jìn)行復(fù)位,Hi3559 硬件復(fù)位通過RESET 引進(jìn)來(lái)實(shí)現(xiàn),低電平有效,最短復(fù)位周期為100 個(gè)24 MHz 的時(shí)鐘周期,也就是說(shuō)至少需要4 ms。系統(tǒng)復(fù)位電平一定要與FLASH 電平保持一致,否則系統(tǒng)無(wú)法啟動(dòng)。
2.1 DDR電路
DDR 電路采用2*DDR4,數(shù)據(jù)總線寬度為32 位,DDR4 傳輸速率為3 200 Mb/s。DDR4 采用了最先進(jìn)工藝技術(shù),在提高性能、降低成本同時(shí)還降低了功耗。DDR4 引腳由數(shù)據(jù)線、地址線、控制線、電源和地組成。DDR 按照引腳功能可以分為7 類:電源、地、配置、控制信號(hào)、時(shí)鐘信號(hào)、地址信號(hào)、數(shù)據(jù)信號(hào)。DDR4 中最重要的信號(hào)就是地址信號(hào)和數(shù)據(jù)信號(hào)。DQ[0:31] 是數(shù)據(jù)信號(hào),DQS_N/DQS_P 是數(shù)據(jù)選通信號(hào);A[0:16] 是地址選擇信號(hào),BA[0:1] 是Bank 地址選擇;CK_N/CK_P 是差分時(shí)鐘信號(hào);CS_N 是DDR 片選信號(hào);ODT 是阻抗匹配使能信號(hào)。
3 軟件設(shè)計(jì)
軟件采用Android 系統(tǒng),用JAVA 編程語(yǔ)言開發(fā),可以跨平臺(tái)移植和復(fù)用,并且可以兼容第三方在Android系統(tǒng)開發(fā)的應(yīng)用程序。
軟件從下到上依次是內(nèi)核(Linux Kernel)、運(yùn)行時(shí)環(huán)境(Android Runtime)、庫(kù)(Libraries)、應(yīng)用框架(Application Framework)、應(yīng)用(Applications)。
1)內(nèi)核(Linux Kernel):Android 基于Linux 4.4 提供核心系統(tǒng)服務(wù),例如:安全、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)堆棧、驅(qū)動(dòng)模型。Linux Kernel 也作為硬件和軟件之間的抽象層,它隱藏具體硬件細(xì)節(jié)而為上層提供統(tǒng)一的服務(wù);
2)運(yùn)行時(shí)環(huán)境(Android Runtime):Android 包含一個(gè)核心庫(kù)的集合,提供大部分在Java 編程語(yǔ)言核心類庫(kù)中可用的功能。每個(gè)Android 應(yīng)用程序是Dalvik 虛擬機(jī)中的實(shí)例,運(yùn)行在他們自己的進(jìn)程中。Dalvik 虛擬機(jī)設(shè)計(jì)成,在1 個(gè)設(shè)備可以高效地運(yùn)行多個(gè)虛擬機(jī);
3) 庫(kù)(Libraries):Android 包含1 個(gè)C/C++ 庫(kù)的集合,供Android 系統(tǒng)的各個(gè)組件使用。這些功能通過Android 的應(yīng)用程序框架(Application Framework) 暴露給開發(fā)者;
4)應(yīng)用框架(Application Framework):通過提供開放的開發(fā)平臺(tái),Android 使開發(fā)者能夠編制極其豐富和新穎的應(yīng)用程序。開發(fā)者可以自由地利用設(shè)備硬件優(yōu)勢(shì)、訪問位置信息、運(yùn)行后臺(tái)服務(wù)、設(shè)置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。 開發(fā)者可以完全使用核心應(yīng)用程序所使用的框架APIs。應(yīng)用程序的體系結(jié)構(gòu)旨在簡(jiǎn)化組件的重用,任何應(yīng)用程序都能發(fā)布他的功能且任何其他應(yīng)用程序可以使用這些功能( 需要服從框架執(zhí)行的安全限制);
5)應(yīng)用(Applications):Android 裝配1 個(gè)核心應(yīng)用程序集合,包括電子郵件客戶端、SMS程序、日歷、地圖、瀏覽器、聯(lián)系人和其他設(shè)置。所有應(yīng)用程序都是用Java編程語(yǔ)言寫的。更加豐富的應(yīng)用程序有待我們?nèi)ラ_發(fā),我們主要開發(fā)的內(nèi)容就在這一層里。
軟件結(jié)構(gòu)如圖3。
其中,內(nèi)核(Linux Kernel):Android 基于Linux 4.4提供核心系統(tǒng)服務(wù),例如:安全、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)堆棧、驅(qū)動(dòng)模型。Linux Kernel 也作為硬件和軟件之間的抽象層,它隱藏具體硬件細(xì)節(jié)而為上層提供統(tǒng)一的服務(wù)。運(yùn)行時(shí)環(huán)境(Android Runtime):Android 包含1 個(gè)核心庫(kù)的集合,提供大部分在Java 編程語(yǔ)言核心類庫(kù)中可用的功能。每一個(gè)Android 應(yīng)用程序是Dalvik 虛擬機(jī)中的實(shí)例,運(yùn)行在他們自己的進(jìn)程中。Dalvik 虛擬機(jī)設(shè)計(jì)成,在1 個(gè)設(shè)備可以高效地運(yùn)行多個(gè)虛擬機(jī)。庫(kù)(Libraries):Android 包含1 個(gè)C/C++ 庫(kù)的集合,供Android 系統(tǒng)的各個(gè)組件使用。這些功能通過Android的應(yīng)用程序框架暴露給開發(fā)者。應(yīng)用框架(ApplicationFramework):通過提供開放的開發(fā)平臺(tái),Android 使開發(fā)者能夠編制極其豐富和新穎的應(yīng)用程序。開發(fā)者可以自由地利用設(shè)備硬件優(yōu)勢(shì)、訪問位置信息、運(yùn)行后臺(tái)服務(wù)、設(shè)置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。開發(fā)者可以完全使用核心應(yīng)用程序所使用的框架APIs。應(yīng)用程序的體系結(jié)構(gòu)旨在簡(jiǎn)化組件的重用,任何應(yīng)用程序都能發(fā)布他的功能且任何其他應(yīng)用程序可以使用這些功能( 需要服從框架執(zhí)行的安全限制)。應(yīng)用(Applications):Android 裝配一個(gè)核心應(yīng)用程序集合,包括電子郵件客戶端、SMS 程序、日歷、地圖、瀏覽器、聯(lián)系人和其他設(shè)置。所有應(yīng)用程序都是用Java 編程語(yǔ)言寫的。
4 結(jié)束語(yǔ)
本文設(shè)計(jì)的智能魔鏡,接入云平臺(tái)后,可以通過遠(yuǎn)場(chǎng)語(yǔ)音控制智能家居中的燈光、水溫、門禁、冰箱和洗衣機(jī)等智能終端。