SlideShare uma empresa Scribd logo
1 de 53
整合 Zigbee NFC GSM 技術、實現智慧家

庭系統基於嵌入式系統之開發

(Integrate Zigbee NFC GSM technical implement Smart Home System
   Base On Embedded System develop Home/building automation)




                  專題組員: 劉珈鑫、徐漢霖
                            Page 1/53
林廷璋、簡志文

                                                    謝濬鴻
                                        Table of Contents
摘要.......................................................................................................................... 3
1. 前言.......................................................................................................................4
2. 技術簡介...............................................................................................................5
       2.1 Zigbee............................................................................. 5
       2.2 NFC.............................................................................. 20
       2.3 GSM/GPRS.................................................................. 32
3. 數位家庭之系統架構........................................................................................ 41
4. 系統展示............................................................................................................ 45
5. 結論.................................................................................................................... 46
6. 參考文獻............................................................................................................ 47
7. 附件.................................................................................................................... 48




                                                    Page 2/53
摘要

   本專題中我們結合了 Zigbee、NFC、GSM ,以嵌入式 Linux 實做出智慧家庭系

統,整合的平台為長高科技之 DMA-6410,以 DMA-6410 上的 按鍵做為控制的

界面 ,當啟動安全系統時,若有人入侵則會經 GSM 由發出警告的訊息至手機上,

NFC 則做為人員進出的安全控管使用,Zigbee 控制警報系統的偵測及控制,

Webcam 會將捕捉到的畫面,即時的藉由 GSM 傳輸至指定的用戶手機上。




關鍵詞: IEEE 802.15.4、無線感測網路 、ZigBee、NFC 、NFC mifare、GSM/GPRS、SQLite




                                 Page 3/53
1. 前言

  Zigbee、NFC、GSM 三個看起來不相關的技術,我們藉由整合,成功實現了智

慧家庭系統、其中最重要的就是無線感測網路(Wireless Sensor Network,WSN)、

物聯網是當今最熱門的應用,而基於 IEEE802.15.4 所開發出來的 Zigbee 技術,

用於 ,是非常有優勢的,因為其短距離無線通訊標準,具有低成本、低耗電、低

速率、高抗干擾,自動動態組成網路等特性,一開始在構思題目時,就以 Zigbee

為首選,將整個家庭數位化並做感測及控制,而嵌入式 Linux 及開發平台

Dma6410l

,在軟體的選用上都是 OpenSource ,大幅降低了研發的經費,也能達到監控的

目的,透過多種技術的整合,做出了數位家庭警報系統(NFC+Zigbee+PIC

Sensor) 遠端控制(Zigbee+Relay) 、視訊監控 (WebCam+Zigbee) 、視訊通話

(Webcam+GSM),的各種不同的應用,相信在這方面的商機是很值得投入的。




                         Page 4/53
2. 技術簡介


2.1 Zigbee



Zigbee 是一種低速短距無線通訊技術 ,主要特色有低速、低耗電、低成本、支援大

量網路節點、支援多種網路拓撲 。硬體標準由 IEEE802.15.4 小組制定,軟體標準

為 Zigbee Alliance 制定,適合用來做 WSN (Wireless Sensor Network)




2.1.1 硬體規格:
                            Page 5/53
Zigbee Module : Coordinate 1pcs、EndDevice 1 pcs

  PIR Module + Board 1pcs

  Relay Module 1pcs

  Zigbee Module Chip : TI CC2430F128

  RF : 2.4 GHz IEEE 802.15.4 compliant RF Transceiver

  Microcontroller : 8051 microcontroller core

             128 KB in-system programmable flash

  人體焦電紅外線檢測傳感器 PIR(Pyroelectric Infrared Sensor) :



  感應角度:100 度 感應距離:7m 電源:3.3V - 5V

  在一般狀態下,輸出為低電位,偵測到有人時,輸出為高電位。




2.1.2 開發工具


  C : Code::Block , gvim,vim

  電路繪製: bsh3v

  Zigbee 燒 code、Debug : IAR V7.2 ,V7.3




                               Page 6/53
串口調試助手:

      這個軟體是附在 CC2430 module 的光碟中,可以用來發送及接收

    UART 訊息,方便測試結果是否正確,像以下這個例子就是對

    coordinator 送出 OK? 的字串,若有收到則會回傳 RDY 字串。




2.1.3 Pin Define & 接線圖:

                    Page 7/53
Enddevice           PIR Board                PIR 接線圖




        接腳    信號        方向        描述

        2_1   NC        /         No Connection

        2_2   NC        /         No Connection

        2_3   VCC       IN        +5V Power Supply

        2_4   GND       IN        Command Gnd

        5_1   PIR_OU    OUT       Connection with 5_4

              T

        5_2   P07       OUT       P07 PIR

        5_3   GND       /         Command Gnd

        5_4   VCC       /         Connection with 2_1

        7_1   NC        /         No Connection

        8_1   NC        /         No Connection

        8_2   NC        /         No Connection

        8_3   COM_G     /         Command Gnd

              ND
                                Page 8/53
8_4    NC        /          No Connection

p.s Pin 順序由右至左




 Relay Control Board        Relay Control 接線圖




接腳       信號          方向         描述

P10      P10         IN         Relay Control Signal

NC       NC          /          No Connection

NC       NC          /          No Connection

GND      GND         IN         Command Gnd

VCC

NC       NC          /          No Connection

NC       NC          /          No Connection

                          Page 9/53
Com Gnd    Com_GN   /          Command Gnd

                 D

      NC         NC       /          No Connection

      p.s Pin 順序由右至左



P1_0:作為 Input,與 relay 連接,藉此控制電燈開關。



P0_7:設定為外部中斷與 PIR(Pyroelectric Infrared Sensor)連接,當 PIR 偵測到

有物體移動時,就經由 P0_7 產生中斷,藉此發送訊號給主機端。



Com_GND:共地要接,因電壓準位要相同。




2.1.6 程式相關

     1. Zigbee 硬體及軟體的初始化



           halInit(): 設定 CPU 頻率,設定 UART baudrate,初始化 timer

           evbInit(): 初始化版子上的 led 及 GPIO 相關的初始化。


                              Page 10/53
aplInit(): 應用層的初始化

        phyInit(); 實體層的初始化

        macInit(); Mac 層的初始化

        nwkInit(); Network 層的初始化

        zepInit(); Zigbee Stack 層的初始化



  2. lrwpan_config.h : 定義頻段、Channels、PANID



    ../wxldemo.c

//only support 2.4GHz right now

#define LRWPAN_DEFAULT_FREQUENCY PHY_FREQ_2405M

#define LRWPAN_SYMBOLS_PER_SECOND 62500



//valid channels are 11 to 26 for 2.4GHz.

#define LRWPAN_DEFAULT_START_CHANNEL 20


//if this is defined, then DEFAULT PANID always used

#define LRWPAN_USE_STATIC_PANID

#define LRWPAN_DEFAULT_PANID 0x1347

#define LRWPAN_DEFAULT_CHANNEL_SCAN_DURATION 4




                              Page 11/53
3. Dma6410L 與 Coordinate 的連接確認



                      ../wxldemo.c
void wait_6410_ok()

    {

        int ready=0;

        char string[4]="OK?";

        char c;

        int i;

        while(ready!=1)          //直到等到 OK? Ready 才會變成 1

        {

            for(i=0;i<3;i++) {
                 while(!halGetchRdy());

                 c=halGetch();

                 if(c!=string[i]){

                     break;

                 }


                                          Page 12/53
if(i==2){

               ready=1;

           }

       }

   }

   conPrintROMString("RDY");//回 RDY 給 6410

   clear_uart_buffer();

           }



  wait_6410_ok()

   當 6410 重新啟動時,6410 需要將 uart 腳位設定為 uart 功能,但在設定

    完成之前,會有不穩定的準位變化,造成 coordinator 端以為 6410 已經

    送給他 command,此情況造成後續的 command 位移,例如 a8 01 00

    01 11 22 33 44 受到位移後變成 00 00 a8 01 00 01 11 22,所以必須

    使用此函數來避免此種情況。



    此函數在 coordinator 上電後會先執行,等待 6410 傳 OK?字串,如果收

    到 OK?,則回傳 RDY 字串給 6410,表示 6410 的 uart 已經進入穩定,
    接下來 6410 傳來的 cmd 才會開始處理。

4. COORDINATOR 和 DEVICE 之間封包的傳送格式

  typedef struct _CMD_STRUCT{

   BYTE head;

   BYTE cmd;

   BYTE flag;

                            Page 13/53
BYTE length;

 BYTE data[4];

}CMD_STRUCT;



CMD_STRUCT

cmd_struct={0xa8,0x00,0x01,0x08,0x11,0x22,0x33,0x44};




  hea    cm   flag   length   data[0]      data[1]   Data[2]   Data[3]

  d      d



 head:固定為 0xa8

 cmd:0x01 要求 device 回傳晶片內溫度

        0x02 要求 device 回傳 PIR 目前狀況

        0x03 對電燈進行控制 data[0]=1 為亮 data[1] =0 為暗

        0x04 當 PIR 受到觸發時,發送給 coordinate 端的訊息

 flag:是否需要回傳封包 ex:回傳晶片內溫度,PIR 狀況...

 lenth:data 所需長度

data:存放要傳送的資訊




                              Page 14/53
5. void send(BYTE *cmd_ptr) 傳送無線訊號使用



aplSendMSG (APS_DSTMODE_LONG, //參數 1

             & lampADDR,       //參數 2

             2, //dst EP

        0, //cluster is ignored for direct message

        1, //src EP

        (BYTE *)cmd_ptr, //參數 6

        8,            //參數 7
        apsGenTSN(),

        FALSE); //No APS ack requested




   參數 1決定要依據裝置的何種位置來進行發送,可分為


                                 Page 15/53
APS_DSTMODE_NONE:沒有指定位置

     APS_DSTMODE_SHORT:使用16bit短位置發送

     APS_DSTMODE_ LONG:使用64bit長位置發送



  參數2填入發送目標位置



     位置是採取 Little-Endian = LSB on the lower address

     假設 device端的位置為0xFF FF FF FF FF FF FF 02

     在給位置時可用以下方式:



  LADDR_UNION lampADDR={0x02,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};



  參數6填入要傳送的資料的起始位置

         例如要傳送0xa8 00 01 08 11 22 33 44

     就先設定好資料內容,在放入資料起始位置

      cmd_struct={0xa8,0x00,0x01,0x08,0x11,0x22,0x33,0x44};

      cmd_ptr=(BYTE*)&cmd_struct;


  參數 7要傳送資料的長度,在此為 8 BYTE




6. Send 成功傳輸的回傳通知

                            Page 16/53
while(apsBusy()){

            apsFSM(); //status not ready yet if busy.

        }

    aplGetStatus() == LRWPAN_STATUS_SUCCESS




   呼叫完 aplSendMSG 函數之後,需呼叫 apsFSM()去處理,並以

   aplGetStatus()來得知是否處理完成,如果處理成功應該會回傳

   LRWPAN_STATUS_SUCCESS




7. void receive (void ) Coordinate& EndDevice 接收無線訊號使用



       void receive (void ) {

        BYTE loop_time=0;

        rxFlag=0;



            while(loop_time<5){

              if(rxFlag==1) break;

             apsFSM();
                                Page 17/53
loop_time++;

                }


           }


       在執行 apsFSM()時,若有收到無線訊號,apsFSM()會呼叫

       usrRxPacketCallback(void) 來處理收到的資料,因此在這邊主要重複

       呼叫 apsFSM()直到 rxFlag 由 0 變成 1,而 rxFlag 就是在執行完

       usrRxPacketCallback(void)會把他設定成 1




8. usrRxPacketCallback(void) ,Coordinator 接收成功並傳到 Dma6410L


   BYTE *ptr;

           BYTE i;

           ptr = aplGetRxMsgData();

           for(i=0;i<8;i++)

       {

       halPutch(*ptr);
       ptr++;

           }

                    rxFlag = 1;


       在 usrRxPacketCallback(void)函數中,由 ptr=aplGetRxMsgData()取得

       收到資料的起始位置,例如由 device 傳回 a8 00 01 08 11 22 33 44

       則 prt 可取得這一串 command
                                   Page 18/53
的起始位置,接著透過 halPutch 將此串 command 由 com port ,每次

      送 1 byte,分八次送到 uart 送到 6410。




2.1.6 常見問題


Q:relay 不斷自己開關開關

A:可能是電源供給不足,換電池試試看




Q:電燈控制沒反應

A:可能是 6410 使用 reset 鈕重開,試試看用電源撥桿重開




Q:電燈控制沒反應

A:可能是 6410 使用 reset 鈕重開,造成 6410 與 coordinator 沒有同步,試試

看用電源撥桿重開




                        Page 19/53
2.2 NFC


2.2.1 簡介:

近場通訊( NFC ,Near Field Communication),又稱近距離無線通訊,操作

頻率為 13.56MHz, 是一種短距離的高頻無線通訊技術,允許電子設備之間進行

非接觸式點對點資料傳輸,在十公分(3.9 英吋)內,交換資料。




2.2.2 硬體規格:

  Reader:

           Chip:NXP PN532
           Intreface:UART
           Mode:Read / Write


2.2.3 軟體規格:
  Library :

     1.     Libnfc:

               需先安裝 Libusb,Libpcsclite,Libccid,pcscd

               下載編繹 Libnfc-1.5.1

                                Page 20/53
    (./configure –with-drivers=pn532_uart –enable-seriel-

              autoprobe)

   2.     Libfreefare:

             下載編繹 libfreefare-0.3.2

   3.     Sqlite:

             下載編繹 sqlite-2.8.17

Tool:

   1.     Libnfc-1.5.1/example/nfc-list:

             讀取 device 裝置和卡片 Uid 等內容



   2.     Libfreefare-0.3.2/example/mifare-classic-format.c:

             格式化卡片資料



   3.     Libfreefare-0.3.2/example/mifare-classic-write-ndef.c

             將資料寫入卡片



   4.     Libfreefare-0.3.2/example/readNFC.c:

             為 mifare-classic-read-ndef.c 的改寫
             主要加入 sqlite 判斷程式

Sqlite:

   使用 sqlite 標準語法

             在 shell 上下指令

             $ sqlite database.db

             $> create table NFCuser(Id    INTERGER PRIMARY KEY ,

                               Page 21/53
Uid      TEXT UNIQUE,

                                              Uname TEXT,

                                              Type   TEXT );

   $>INSERT INTO NFCUser VALUES(1,9001,'Gary','Admin');

                $>INSERT INTO NFCUser VALUES(2,6001,'Ittraining','User');



    Sqlite database.db 表單:
                                 NFCUser
           Id            Uid          Uname               Type
            1           9001           Gary               Admin
            2           6001         Ittraining           User




2.2.4 Pin Define & 接線圖:

      Device and (UART to USB)
                                                        接線圖




                                 Page 22/53
    NFC Reader
            接腳                     方向            描述
            3.3V           /
                                            電源輸入
             TX            Output
                                            UART 信號輸出
             RX            Input
                                            UART 信號輸入
            GND            /
                                            接地




     Jumper:
                                   SEL0          SEL1
           UART                    OFF           OFF
            SPI                    OFF            ON
            I2C                     ON           OFF




Device and (UART to USB)
                                                 接線圖

                               Page 23/53
    UART To USB Converter Board
                   接腳                    方向            描述
                   3.3V          /
                                                  電源輸入
                   GND           /
                                                  接地
                    RXI          Input
                                                  UART 信號輸入
                    TXO          Output
                                                  UART 信號輸出



2.   Card:
            Mifare-classic-1K
            Storage:1024 Bytes




                                     Page 24/53
2.2.5 操作方式


1. 接上電路線,執行 nfc-list

             nfc-list without card 顯示 device port 資訊




                 nfc-list with card 顯示卡的資訊




                             Page 25/53
Page 26/53
2. 執行 mifare-classic-format
                          Mifare-classic-format




3. 執行 mifare-classic-write-ndef –i 檔案名稱

              User.txt 內容為 9001 (9001 為判斷內容的格式)




                                 Page 27/53
4. 執行 mifare-classic-read-ndef

                       將卡片內容顯示於終端機上




7. 執行 readNFC



            Admin Find                        User Find




                                 Page 28/53
2.2.6 軟體流程圖


               DMA6410L

  傳送指令                        回傳狀態

              Card Reader


  傳送資料                        回傳資料

          Sqlite database
                 Page 29/53
資料比對




Page 30/53
2.2.7 常見問題

 Q:編繹時發生問題?
 A:注意是否有哪個套件沒有安裝,套件的相依性,可用 apt-get 試試看

 Q:device 找不到?
 A:硬體方面,注意接線圖
    軟體方面,注意尋找的 device(ttyUSB,ttySAC),注意編繹時的參數

 Q:卡片無法讀寫?
 A:先 format 一次之後試看看




                      Page 31/53
2.3 GSM/GPRS



2.3.1 GSM


全球行動通訊系統(Global System for Mobile Communications),即 GSM,

是當前應用最為廣泛的行動電話標準。GSM 標準是由歐洲電信標準協會

(European Telecommunications Standard Institute 或 ETSI)所製定的一種無

線數位網路標準,ETSI 發展 GSM 的目的是要結束各系統不相容的問題,所以要

創造出一個全歐洲共同的 communication system structure。GSM 較之它以前的

標準最大的不同是他的信令和語音通道都是數位的,因此 GSM 被看作是第二代

(2G)行動電話系統。GSM 標準當前由 3GPP 組織負責制定和維護。



GSM 模組由兩個部份所組成:第一個部份為使用者認証模組(Subscriber

Identity Module 或 SIM),第二個部份為手機通訊模組(Mobile Equipment 或

ME)。其中:

SIM 是一智慧卡(記憶體晶片),專門儲存與使用者相關的資枓。SIM 有各種形式,

我們現在最常見的為 plug-in SIM。

通訊模組 ME 則包括一切與基地台通訊所需之無線軟體及硬體,包括控制模組與

無線電模組。




                           Page 32/53
2.3.2 GPRS

在GSM 演進的過程中,資料的傳輸是必然的趨勢,因此ETSI不斷的加入新的元

素,以提供Data Communications。其中之一即為GPRS通用封包無線服務技術

(General Packet Radio Service,縮寫:GPRS)。



GPRS是為了提供像WWW這樣,使用者需耗費時間閱讀,偶爾傳送大量數據的

應用而提出的分封交換協定。既有的GSM網路無法提供封包傳送的模式,所以

GPRS必須有自己的傳輸網路(transport network)。其中:

 GPRS radio link protocol 主要是規定手機與基地台之間,physical

  layer、MAC層以及RLC(Radio Link Control)層彼此之間在相互通訊時所必

  須遵守的協定。GPRS 利用現有GSM 的physical channels,建立自己的logic

  channels。RLC/MAC層的功能,就是要讓許多用戶共享這些數據通道,透過空

  中介面的實體層來傳送資料。

 手機與終端主機的網路層之上,可以根據應用程式的需求,採用不同的協定。

  例如在應用程式下可使用TCP/IP 傳送,對此GPRS並不加以限制。在GPRS網路

  上,封包的發送端與接收端這兩個的GPRS支援節點之間,使用所謂的GPRS隧

  道協定(GPRS Tunnel Protocol或GTP)。它主要的功用是透過附加路由資訊

  (包裝)的方式,將上層的X.25或IP應用程式的協定數據單元,經由GPRS骨

  幹網路來傳送,並依據應用程式的需求,提供不同服務品質(Quality of

  Service或QoS)。




                           Page 33/53
2.3.3 MMS

「MMS 多媒體訊息」,就是將文字、圖片(黑白或彩色圖片)、聲音(自錄人聲或

鈴聲)和影片結合起來的影音訊息傳送服務。



MMS 的工業標準是由兩個組織,WAP Forum(WAP 論壇)和 3GPP(3G

Partnership Project:3G 夥伴計劃)所制訂的。因此,MMS 是設計成可以在

WAP 協議的上層運行,它不侷限於傳輸格式,既支持電路交換數據格式

(circuit-switched data),也支持通用封包無線服務技術 GPRS 格式(general

packet radio service)。



多媒體訊息 MMS(Multimedia Message Service)使用話務頻道 (traffic

channel) 來傳送訊息資料,藉由話務頻道來傳送資料可傳送之資料量大於使用控

制頻道(control channel)之 SMS,且 MMS 可支援多種媒體格式如文字、圖片

(黑白或彩色圖片)、聲音(自錄人聲或鈴聲)和影片結合起來的影音訊息傳送。

使用 MMS 需要先確定手機有支援 GPRS、MMS 的功能,再來需要向電信業者申

請 GPRS 服務,透過 GPRS 傳送 MMS 數據資料。




                         Page 34/53
2.3.4 硬體架構/規格

 特性                說明
工作電壓      單電壓供電,3.4—4.5V
低功耗模式     休眠模式下,工作電流典型值為 2.5mA
工作頻段      SIM300 具有三個頻段:EGSM900、      DCS1800、PCS1900。頻
          段 頻 率 可 由 AT 指 令 設 置 , 默 認 頻 段 是 EGSM900 和
          DCS1800。
          與 GSM Phase 2/2+相容。
發射功耗      在頻率 EGSM900 CLASS 4 下 2W
          在頻率 DCS1800 和 PCS1900 CLASS 1 下 1W
GPRS 連接   GPRS Multi-slot Class 10
          GPRS mobile station class B
工作溫度      正常工作溫度:-22℃~+55℃
          極限工作溫度:-25℃~-20℃,+55℃~+70℃
          存儲溫度:-40℃~+80℃
GPRS 資料傳輸 GPRS 下行資料傳輸最大 85.6kbps
          GPRS 上行資料傳輸最大 42.8kbps
          編碼方案:CS-1,CS-2,CS-3,CS-4
          SIM300 支援 PAP(密碼驗證)協定,此協定通常用於 PPP
          連接
          SIM300 集成了 TCP/IP 協定
簡訊        支援點到點簡訊移動發送和接受、文本、PDU 模式
          簡訊存儲於 SIM 卡中
          支援 CSD 和 GPRS 模式的簡訊發送,使用者可以根據自己的
          需要來選擇傳輸模式
SIM 介面    支援 1.8V 和 3V 兩種類型的 SIM 卡
外接天線      通過 50Ω的天線連接器或天線連接板連接
雙串列通信介面 串列埠 1 的接口具有 7 根資料、狀態線
          串列埠 1 可以被用作 CSD 傳真、GPRS 服務和發送控制模 組
          AT 命令
          串列埠 1 可以使用多工功能,但是此時不能和串列埠 2 同時
          使用
          可支援的自動串列傳輸速率為:1200bps~115200bps
          串列埠 2 的介面只有/TXD 和/RXD 兩根資料線,沒有狀態和
          控制線
                        Page 35/53
串列埠 2 只能用來傳輸 AT 命令




2.3.5 軟體功能方塊圖




2.3.6 操作方式

    控制方式
     透過 UART 傳送 AT Command


    範例一
     傳送 ATI<CR>
     回應 ATI<CR>

                             Page 36/53
<CR><LF>SIMCOM_Ltd
    SIMCOM_SIM300S
    Revision:1604B06SIM300S32_SST34HF3284_MMS<CR><LF>

    <CR><LF>OK<CR><LF>


   範例二
    傳送 AT+COPS?<CR>

    回應 AT+COPS?<CR>

    <CR><LF>+COPS: 0,0,“Chunghwa Telecom"<CR><LF>

    <CR><LF>OK<CR><LF>


   範例三
    傳送 ATD0928286497;<CR>

    回應 ATD0928286497;<CR>

    <CR><LF>OK<CR><LF>


   智慧家庭使用的專案指令
       語音通訊相關
        ATA (answer an incoming call)

        ATD (mobile originated call to dial a number)

        ATH (disconnect existing connection)

        ATI (display product identification information)

        AT+COPS (operator selection)



       MMS 傳送相關(使用中華電信 MMS 傳送設定)


                                  Page 37/53
AT+CMMSCURL (set the url of the mms center)

         mms.emome.net:8002



        AT+CMMSNETCFG (set the network parameters for mms)

         1,"emome"



        AT+CMMSPROTO (set the protocol parameter and mms proxy)

         1,"10.1.1.1",8080



        AT+CMMSSENDCFG (set the parameter for sending mms)

         6,3,0,0,2,4



        AT+CMMSEDIT (enter or exit edit mode)

        AT+CMMSDOWN (download the file data or title from uart)

         "pic",46340,100000



        AT+CMMSRECP (add recipients)

         "0932072103"



        AT+CMMSSEND (start mms sending)




   撥號操作畫面
Usage: dial <phonenumber>


                               Page 38/53
   MMS 操作畫面

Usage: mms <phonenumber> <pic file path> <title file path> <test file path>




                                   Page 39/53
2.3.7 軟體流程




    1.經由 DMA6410L,使用 SIM300 撥打電話或發送 MMS 訊息至指定的
    手機號碼


    2. 外部電話亦可撥打接通到智慧家庭系統 ,實現即時視訊會議通話




                     Page 40/53
3. 數位家庭之系統架構
   數位家庭警報系統(NFC+Zigbee+PIC Sensor)
   遠端控制(Zigbee+Relay)
   視訊監控 (WebCam+Zigbee)
   視訊通話(Webcam+GSM)




    3.1 硬體架構




                           Page 41/53
3.2 硬體功能方塊圖




              Page 42/53
3.3 軟體架構




           Page 43/53
3.3 系統運作流程圖




              Page 44/53
4. 系統展示

 4.1 正面圖




 4.2 按鍵配置



            Page 45/53
5. 結論
   Zigbee、NFC、GSM 一起整合於 Dma6410l 時,因使用的界面都是用 UART,而
預留的 UART0、UART1、UART2 都已被使用,只好參考 CPU Board 的 DataSheet,直
接將 UART3 焊出使用,當以為可以了卻又發現 UART3 與 SPI 共用腳位,而且預設
的 Kernel 已將 SPI 編入,所以只好將 SPI 移除選項,重編 Kernel 後 UART3 才順利
的得以使用,但是又發現系統的各個程式之間會有溝通的問題,需做 Event 的通
知,否則會有不 work 的情形發生,而我們採用了許多的方法,最後使用
ShareMemory 來做為程式的溝通方法,藉由整個開發的過程,讓我們了解到系統
整合,是要考慮到許多方面的事情。
 




                        Page 46/53
6. 參考文獻
[1] 維基百科 Zigbee http://zh.wikipedia.org/zh-hant/ZigBee

[2] 維基百科 全球行動通訊系統 http://zh.wikipedia.org/zh-tw/全球移動通訊

    系統

[3] 維基百科 近場通訊 http://zh.wikipedia.org/wiki/近場通訊

[4] 百度文科 msstatePAN 協議棧實驗

[5] 天運科技 SF-CC2430 學習套件 實用手冊

[6] A Zigbee-subnet/IEEE 802.15.4 Multi-Platform Protocol Stack

[7] AN10609_3 PN532 C106 application note

[8] UM0701-02 PN532 User Manual

[9] PN532/C1 NFC controller

[10] NFC forum http://www.nfc-forum.org/home/




                                 Page 47/53
7. 附件
 7.1 PIR & Relay Control 電路圖




                       Page 48/53
7.2.1 Zigbee 系統連接照片


  1. Zigbee Coordinator connect DMA6410L




  2. Zigbee End Device, connect Lamp & PIR




                       Page 49/53
Page 50/53
7.2.3 NFC 系統連接照片




7.2.4 GSM 系統連接照片




                     Page 51/53
7.2.4 SmartHome 系統連接照片




                   內部上視圖




                    Page 52/53
內部前視圖




Page 53/53

Mais conteúdo relacionado

Mais procurados

第18讲 Hdlc和Ppp
第18讲 Hdlc和Ppp第18讲 Hdlc和Ppp
第18讲 Hdlc和PppF.l. Yu
 
Robotis Servo 與 RoBoard 之連接介面
Robotis Servo 與 RoBoard 之連接介面Robotis Servo 與 RoBoard 之連接介面
Robotis Servo 與 RoBoard 之連接介面roboard
 
RoBoard 與 Lego NXT Sensors 之連接
RoBoard 與 Lego NXT Sensors 之連接RoBoard 與 Lego NXT Sensors 之連接
RoBoard 與 Lego NXT Sensors 之連接roboard
 
第14讲 交换机基本操作
第14讲 交换机基本操作第14讲 交换机基本操作
第14讲 交换机基本操作F.l. Yu
 
20170415- 智慧空調通訊系統實務_柯大
20170415- 智慧空調通訊系統實務_柯大20170415- 智慧空調通訊系統實務_柯大
20170415- 智慧空調通訊系統實務_柯大MAKERPRO.cc
 
2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)
2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)
2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)Simen Li
 
使用 Arduino 控制 ESP8266 的各種方式
使用 Arduino 控制 ESP8266 的各種方式使用 Arduino 控制 ESP8266 的各種方式
使用 Arduino 控制 ESP8266 的各種方式Kenson Chiang
 
第11讲 管理Cisco互联网络
第11讲 管理Cisco互联网络第11讲 管理Cisco互联网络
第11讲 管理Cisco互联网络F.l. Yu
 
Blk md-bc04-b at指令集
Blk md-bc04-b at指令集Blk md-bc04-b at指令集
Blk md-bc04-b at指令集Jan Hynneke
 
本章分为三节,主要介绍:
本章分为三节,主要介绍:本章分为三节,主要介绍:
本章分为三节,主要介绍:ayoub lmaimouni
 
Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得roboard
 
How to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMCHow to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMCBo-Yi Wu
 
[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)
[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)
[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)Simen Li
 
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)roboard
 
Juniper ScreenOS 基于Policy的
Juniper ScreenOS 基于Policy的Juniper ScreenOS 基于Policy的
Juniper ScreenOS 基于Policy的mickchen
 
IEC104规约介绍
IEC104规约介绍IEC104规约介绍
IEC104规约介绍Chen Ray
 

Mais procurados (20)

第18讲 Hdlc和Ppp
第18讲 Hdlc和Ppp第18讲 Hdlc和Ppp
第18讲 Hdlc和Ppp
 
Robotis Servo 與 RoBoard 之連接介面
Robotis Servo 與 RoBoard 之連接介面Robotis Servo 與 RoBoard 之連接介面
Robotis Servo 與 RoBoard 之連接介面
 
RoBoard 與 Lego NXT Sensors 之連接
RoBoard 與 Lego NXT Sensors 之連接RoBoard 與 Lego NXT Sensors 之連接
RoBoard 與 Lego NXT Sensors 之連接
 
第14讲 交换机基本操作
第14讲 交换机基本操作第14讲 交换机基本操作
第14讲 交换机基本操作
 
20170415- 智慧空調通訊系統實務_柯大
20170415- 智慧空調通訊系統實務_柯大20170415- 智慧空調通訊系統實務_柯大
20170415- 智慧空調通訊系統實務_柯大
 
2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)
2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)
2018 VLSI/CAD Symposium Tutorial (Aug. 7, 20:00-21:00 Room 3F-VII)
 
使用 Arduino 控制 ESP8266 的各種方式
使用 Arduino 控制 ESP8266 的各種方式使用 Arduino 控制 ESP8266 的各種方式
使用 Arduino 控制 ESP8266 的各種方式
 
Arduino程式快速入門
Arduino程式快速入門Arduino程式快速入門
Arduino程式快速入門
 
第11讲 管理Cisco互联网络
第11讲 管理Cisco互联网络第11讲 管理Cisco互联网络
第11讲 管理Cisco互联网络
 
Blk md-bc04-b at指令集
Blk md-bc04-b at指令集Blk md-bc04-b at指令集
Blk md-bc04-b at指令集
 
Arduino序列通訊
Arduino序列通訊Arduino序列通訊
Arduino序列通訊
 
本章分为三节,主要介绍:
本章分为三节,主要介绍:本章分为三节,主要介绍:
本章分为三节,主要介绍:
 
Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得
 
S4A
S4AS4A
S4A
 
How to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMCHow to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMC
 
[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)
[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)
[嵌入式系統] MCS-51 實驗 - 使用 IAR (1)
 
Arduino程式快速入門
Arduino程式快速入門Arduino程式快速入門
Arduino程式快速入門
 
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
 
Juniper ScreenOS 基于Policy的
Juniper ScreenOS 基于Policy的Juniper ScreenOS 基于Policy的
Juniper ScreenOS 基于Policy的
 
IEC104规约介绍
IEC104规约介绍IEC104规约介绍
IEC104规约介绍
 

Destaque

Linux 系統程式--第一章 i/o 函式
Linux 系統程式--第一章 i/o 函式Linux 系統程式--第一章 i/o 函式
Linux 系統程式--第一章 i/o 函式艾鍗科技
 
建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card艾鍗科技
 
오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)승훈 오
 
Pi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision ClassPi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision ClassAna Menezes
 
Tutorial para crear cuenta en slideshare
Tutorial para crear cuenta en slideshareTutorial para crear cuenta en slideshare
Tutorial para crear cuenta en slideshareAnnie Nitzschke Peña
 
Tg discussion guide90
Tg discussion guide90Tg discussion guide90
Tg discussion guide90lschmidt1170
 
學生學習歷程簡報
學生學習歷程簡報學生學習歷程簡報
學生學習歷程簡報Fang-fang
 
Geog 5 fa 2012 schmidt fri
Geog 5 fa 2012 schmidt friGeog 5 fa 2012 schmidt fri
Geog 5 fa 2012 schmidt frilschmidt1170
 
Isabelle: Not Only a Proof Assistant
Isabelle: Not Only a Proof AssistantIsabelle: Not Only a Proof Assistant
Isabelle: Not Only a Proof AssistantAchim D. Brucker
 

Destaque (20)

智能風扇
智能風扇智能風扇
智能風扇
 
Linux 系統程式--第一章 i/o 函式
Linux 系統程式--第一章 i/o 函式Linux 系統程式--第一章 i/o 函式
Linux 系統程式--第一章 i/o 函式
 
建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card
 
Java物件導向
Java物件導向Java物件導向
Java物件導向
 
Rreflexion cuento
Rreflexion cuentoRreflexion cuento
Rreflexion cuento
 
CV_Jeeshan CPE
CV_Jeeshan CPECV_Jeeshan CPE
CV_Jeeshan CPE
 
CV_SANJAY SOHIL
CV_SANJAY SOHILCV_SANJAY SOHIL
CV_SANJAY SOHIL
 
Grouping objects
Grouping objectsGrouping objects
Grouping objects
 
r3-4-2009f_xts5000_new
r3-4-2009f_xts5000_newr3-4-2009f_xts5000_new
r3-4-2009f_xts5000_new
 
오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)
 
Pi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision ClassPi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision Class
 
Brain maturation
Brain maturationBrain maturation
Brain maturation
 
Heap and Partners
Heap and PartnersHeap and Partners
Heap and Partners
 
Tutorial para crear cuenta en slideshare
Tutorial para crear cuenta en slideshareTutorial para crear cuenta en slideshare
Tutorial para crear cuenta en slideshare
 
Tg discussion guide90
Tg discussion guide90Tg discussion guide90
Tg discussion guide90
 
Kpi publikovani 2
Kpi publikovani 2Kpi publikovani 2
Kpi publikovani 2
 
學生學習歷程簡報
學生學習歷程簡報學生學習歷程簡報
學生學習歷程簡報
 
Geog 5 fa 2012 schmidt fri
Geog 5 fa 2012 schmidt friGeog 5 fa 2012 schmidt fri
Geog 5 fa 2012 schmidt fri
 
Device driver
Device driverDevice driver
Device driver
 
Isabelle: Not Only a Proof Assistant
Isabelle: Not Only a Proof AssistantIsabelle: Not Only a Proof Assistant
Isabelle: Not Only a Proof Assistant
 

Semelhante a 嵌入式inux應用專題文件-智慧家庭系統

Sy03091说明书
Sy03091说明书Sy03091说明书
Sy03091说明书guest8f3690
 
181201_CoAP_coding365
181201_CoAP_coding365181201_CoAP_coding365
181201_CoAP_coding365Peter Yi
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)FLASH开发者交流会
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)Shanda innovation institute
 
Deployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnDeployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnahnlabchina
 
第三章Ti msp430平台介紹 v3
第三章Ti msp430平台介紹 v3第三章Ti msp430平台介紹 v3
第三章Ti msp430平台介紹 v3冠宇 陳
 
HC 05藍芽模組連線
HC 05藍芽模組連線HC 05藍芽模組連線
HC 05藍芽模組連線Chen-Hung Hu
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术jugn
 
Deployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cnDeployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cnahnlabchina
 
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUGYingSiang Geng
 
Sery lvs+keepalived
Sery lvs+keepalivedSery lvs+keepalived
Sery lvs+keepalivedcolderboy17
 
程式人雜誌 -- 2014 年8月號
程式人雜誌 -- 2014 年8月號程式人雜誌 -- 2014 年8月號
程式人雜誌 -- 2014 年8月號鍾誠 陳鍾誠
 
系統程式 -- 第 11 章
系統程式 -- 第 11 章系統程式 -- 第 11 章
系統程式 -- 第 11 章鍾誠 陳鍾誠
 
ch13-pv1-system-calls
ch13-pv1-system-callsch13-pv1-system-calls
ch13-pv1-system-callsyushiang fu
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnahnlabchina
 
Analysis on tcp ip protocol stack
Analysis on tcp ip protocol stackAnalysis on tcp ip protocol stack
Analysis on tcp ip protocol stackYueshen Xu
 

Semelhante a 嵌入式inux應用專題文件-智慧家庭系統 (20)

Sy03091说明书
Sy03091说明书Sy03091说明书
Sy03091说明书
 
181201_CoAP_coding365
181201_CoAP_coding365181201_CoAP_coding365
181201_CoAP_coding365
 
Ipaq with linux
Ipaq with linuxIpaq with linux
Ipaq with linux
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
 
Stm32 technical slide_pdf
Stm32 technical slide_pdfStm32 technical slide_pdf
Stm32 technical slide_pdf
 
Deployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnDeployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cn
 
第三章Ti msp430平台介紹 v3
第三章Ti msp430平台介紹 v3第三章Ti msp430平台介紹 v3
第三章Ti msp430平台介紹 v3
 
HC 05藍芽模組連線
HC 05藍芽模組連線HC 05藍芽模組連線
HC 05藍芽模組連線
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术
 
Deployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cnDeployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cn
 
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
 
Sery lvs+keepalived
Sery lvs+keepalivedSery lvs+keepalived
Sery lvs+keepalived
 
程式人雜誌 -- 2014 年8月號
程式人雜誌 -- 2014 年8月號程式人雜誌 -- 2014 年8月號
程式人雜誌 -- 2014 年8月號
 
系統程式 -- 第 11 章
系統程式 -- 第 11 章系統程式 -- 第 11 章
系統程式 -- 第 11 章
 
Arduino感測應用
Arduino感測應用Arduino感測應用
Arduino感測應用
 
ch13-pv1-system-calls
ch13-pv1-system-callsch13-pv1-system-calls
ch13-pv1-system-calls
 
Nio trick and trap
Nio trick and trapNio trick and trap
Nio trick and trap
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cn
 
Analysis on tcp ip protocol stack
Analysis on tcp ip protocol stackAnalysis on tcp ip protocol stack
Analysis on tcp ip protocol stack
 

Mais de 艾鍗科技

TinyML - 4 speech recognition
TinyML - 4 speech recognition TinyML - 4 speech recognition
TinyML - 4 speech recognition 艾鍗科技
 
Appendix 1 Goolge colab
Appendix 1 Goolge colabAppendix 1 Goolge colab
Appendix 1 Goolge colab艾鍗科技
 
Project-IOT於餐館系統的應用
Project-IOT於餐館系統的應用Project-IOT於餐館系統的應用
Project-IOT於餐館系統的應用艾鍗科技
 
02 IoT implementation
02 IoT implementation02 IoT implementation
02 IoT implementation艾鍗科技
 
Tiny ML for spark Fun Edge
Tiny ML for spark Fun EdgeTiny ML for spark Fun Edge
Tiny ML for spark Fun Edge艾鍗科技
 
2. 機器學習簡介
2. 機器學習簡介2. 機器學習簡介
2. 機器學習簡介艾鍗科技
 
5.MLP(Multi-Layer Perceptron)
5.MLP(Multi-Layer Perceptron) 5.MLP(Multi-Layer Perceptron)
5.MLP(Multi-Layer Perceptron) 艾鍗科技
 
心率血氧檢測與運動促進
心率血氧檢測與運動促進心率血氧檢測與運動促進
心率血氧檢測與運動促進艾鍗科技
 
利用音樂&情境燈幫助放鬆
利用音樂&情境燈幫助放鬆利用音樂&情境燈幫助放鬆
利用音樂&情境燈幫助放鬆艾鍗科技
 
IoT感測器驅動程式 在樹莓派上實作
IoT感測器驅動程式在樹莓派上實作IoT感測器驅動程式在樹莓派上實作
IoT感測器驅動程式 在樹莓派上實作艾鍗科技
 
無線聲控遙控車
無線聲控遙控車無線聲控遙控車
無線聲控遙控車艾鍗科技
 
最佳光源的研究和實作
最佳光源的研究和實作最佳光源的研究和實作
最佳光源的研究和實作 艾鍗科技
 
無線監控網路攝影機與控制自走車
無線監控網路攝影機與控制自走車無線監控網路攝影機與控制自走車
無線監控網路攝影機與控制自走車 艾鍗科技
 
Reinforcement Learning
Reinforcement LearningReinforcement Learning
Reinforcement Learning艾鍗科技
 
人臉辨識考勤系統
人臉辨識考勤系統人臉辨識考勤系統
人臉辨識考勤系統艾鍗科技
 
智慧家庭Smart Home
智慧家庭Smart Home智慧家庭Smart Home
智慧家庭Smart Home艾鍗科技
 

Mais de 艾鍗科技 (20)

TinyML - 4 speech recognition
TinyML - 4 speech recognition TinyML - 4 speech recognition
TinyML - 4 speech recognition
 
Appendix 1 Goolge colab
Appendix 1 Goolge colabAppendix 1 Goolge colab
Appendix 1 Goolge colab
 
Project-IOT於餐館系統的應用
Project-IOT於餐館系統的應用Project-IOT於餐館系統的應用
Project-IOT於餐館系統的應用
 
02 IoT implementation
02 IoT implementation02 IoT implementation
02 IoT implementation
 
Tiny ML for spark Fun Edge
Tiny ML for spark Fun EdgeTiny ML for spark Fun Edge
Tiny ML for spark Fun Edge
 
Openvino ncs2
Openvino ncs2Openvino ncs2
Openvino ncs2
 
Step motor
Step motorStep motor
Step motor
 
2. 機器學習簡介
2. 機器學習簡介2. 機器學習簡介
2. 機器學習簡介
 
5.MLP(Multi-Layer Perceptron)
5.MLP(Multi-Layer Perceptron) 5.MLP(Multi-Layer Perceptron)
5.MLP(Multi-Layer Perceptron)
 
3. data features
3. data features3. data features
3. data features
 
心率血氧檢測與運動促進
心率血氧檢測與運動促進心率血氧檢測與運動促進
心率血氧檢測與運動促進
 
利用音樂&情境燈幫助放鬆
利用音樂&情境燈幫助放鬆利用音樂&情境燈幫助放鬆
利用音樂&情境燈幫助放鬆
 
IoT感測器驅動程式 在樹莓派上實作
IoT感測器驅動程式在樹莓派上實作IoT感測器驅動程式在樹莓派上實作
IoT感測器驅動程式 在樹莓派上實作
 
無線聲控遙控車
無線聲控遙控車無線聲控遙控車
無線聲控遙控車
 
最佳光源的研究和實作
最佳光源的研究和實作最佳光源的研究和實作
最佳光源的研究和實作
 
無線監控網路攝影機與控制自走車
無線監控網路攝影機與控制自走車無線監控網路攝影機與控制自走車
無線監控網路攝影機與控制自走車
 
Reinforcement Learning
Reinforcement LearningReinforcement Learning
Reinforcement Learning
 
Linux Device Tree
Linux Device TreeLinux Device Tree
Linux Device Tree
 
人臉辨識考勤系統
人臉辨識考勤系統人臉辨識考勤系統
人臉辨識考勤系統
 
智慧家庭Smart Home
智慧家庭Smart Home智慧家庭Smart Home
智慧家庭Smart Home
 

嵌入式inux應用專題文件-智慧家庭系統

  • 1. 整合 Zigbee NFC GSM 技術、實現智慧家 庭系統基於嵌入式系統之開發 (Integrate Zigbee NFC GSM technical implement Smart Home System Base On Embedded System develop Home/building automation) 專題組員: 劉珈鑫、徐漢霖 Page 1/53
  • 2. 林廷璋、簡志文 謝濬鴻 Table of Contents 摘要.......................................................................................................................... 3 1. 前言.......................................................................................................................4 2. 技術簡介...............................................................................................................5 2.1 Zigbee............................................................................. 5 2.2 NFC.............................................................................. 20 2.3 GSM/GPRS.................................................................. 32 3. 數位家庭之系統架構........................................................................................ 41 4. 系統展示............................................................................................................ 45 5. 結論.................................................................................................................... 46 6. 參考文獻............................................................................................................ 47 7. 附件.................................................................................................................... 48 Page 2/53
  • 3. 摘要 本專題中我們結合了 Zigbee、NFC、GSM ,以嵌入式 Linux 實做出智慧家庭系 統,整合的平台為長高科技之 DMA-6410,以 DMA-6410 上的 按鍵做為控制的 界面 ,當啟動安全系統時,若有人入侵則會經 GSM 由發出警告的訊息至手機上, NFC 則做為人員進出的安全控管使用,Zigbee 控制警報系統的偵測及控制, Webcam 會將捕捉到的畫面,即時的藉由 GSM 傳輸至指定的用戶手機上。 關鍵詞: IEEE 802.15.4、無線感測網路 、ZigBee、NFC 、NFC mifare、GSM/GPRS、SQLite Page 3/53
  • 4. 1. 前言 Zigbee、NFC、GSM 三個看起來不相關的技術,我們藉由整合,成功實現了智 慧家庭系統、其中最重要的就是無線感測網路(Wireless Sensor Network,WSN)、 物聯網是當今最熱門的應用,而基於 IEEE802.15.4 所開發出來的 Zigbee 技術, 用於 ,是非常有優勢的,因為其短距離無線通訊標準,具有低成本、低耗電、低 速率、高抗干擾,自動動態組成網路等特性,一開始在構思題目時,就以 Zigbee 為首選,將整個家庭數位化並做感測及控制,而嵌入式 Linux 及開發平台 Dma6410l ,在軟體的選用上都是 OpenSource ,大幅降低了研發的經費,也能達到監控的 目的,透過多種技術的整合,做出了數位家庭警報系統(NFC+Zigbee+PIC Sensor) 遠端控制(Zigbee+Relay) 、視訊監控 (WebCam+Zigbee) 、視訊通話 (Webcam+GSM),的各種不同的應用,相信在這方面的商機是很值得投入的。 Page 4/53
  • 5. 2. 技術簡介 2.1 Zigbee Zigbee 是一種低速短距無線通訊技術 ,主要特色有低速、低耗電、低成本、支援大 量網路節點、支援多種網路拓撲 。硬體標準由 IEEE802.15.4 小組制定,軟體標準 為 Zigbee Alliance 制定,適合用來做 WSN (Wireless Sensor Network) 2.1.1 硬體規格: Page 5/53
  • 6. Zigbee Module : Coordinate 1pcs、EndDevice 1 pcs PIR Module + Board 1pcs Relay Module 1pcs Zigbee Module Chip : TI CC2430F128 RF : 2.4 GHz IEEE 802.15.4 compliant RF Transceiver Microcontroller : 8051 microcontroller core 128 KB in-system programmable flash 人體焦電紅外線檢測傳感器 PIR(Pyroelectric Infrared Sensor) : 感應角度:100 度 感應距離:7m 電源:3.3V - 5V 在一般狀態下,輸出為低電位,偵測到有人時,輸出為高電位。 2.1.2 開發工具 C : Code::Block , gvim,vim 電路繪製: bsh3v Zigbee 燒 code、Debug : IAR V7.2 ,V7.3 Page 6/53
  • 7. 串口調試助手: 這個軟體是附在 CC2430 module 的光碟中,可以用來發送及接收 UART 訊息,方便測試結果是否正確,像以下這個例子就是對 coordinator 送出 OK? 的字串,若有收到則會回傳 RDY 字串。 2.1.3 Pin Define & 接線圖: Page 7/53
  • 8. Enddevice PIR Board PIR 接線圖 接腳 信號 方向 描述 2_1 NC / No Connection 2_2 NC / No Connection 2_3 VCC IN +5V Power Supply 2_4 GND IN Command Gnd 5_1 PIR_OU OUT Connection with 5_4 T 5_2 P07 OUT P07 PIR 5_3 GND / Command Gnd 5_4 VCC / Connection with 2_1 7_1 NC / No Connection 8_1 NC / No Connection 8_2 NC / No Connection 8_3 COM_G / Command Gnd ND Page 8/53
  • 9. 8_4 NC / No Connection p.s Pin 順序由右至左 Relay Control Board Relay Control 接線圖 接腳 信號 方向 描述 P10 P10 IN Relay Control Signal NC NC / No Connection NC NC / No Connection GND GND IN Command Gnd VCC NC NC / No Connection NC NC / No Connection Page 9/53
  • 10. Com Gnd Com_GN / Command Gnd D NC NC / No Connection p.s Pin 順序由右至左 P1_0:作為 Input,與 relay 連接,藉此控制電燈開關。 P0_7:設定為外部中斷與 PIR(Pyroelectric Infrared Sensor)連接,當 PIR 偵測到 有物體移動時,就經由 P0_7 產生中斷,藉此發送訊號給主機端。 Com_GND:共地要接,因電壓準位要相同。 2.1.6 程式相關 1. Zigbee 硬體及軟體的初始化 halInit(): 設定 CPU 頻率,設定 UART baudrate,初始化 timer evbInit(): 初始化版子上的 led 及 GPIO 相關的初始化。 Page 10/53
  • 11. aplInit(): 應用層的初始化 phyInit(); 實體層的初始化 macInit(); Mac 層的初始化 nwkInit(); Network 層的初始化 zepInit(); Zigbee Stack 層的初始化 2. lrwpan_config.h : 定義頻段、Channels、PANID ../wxldemo.c //only support 2.4GHz right now #define LRWPAN_DEFAULT_FREQUENCY PHY_FREQ_2405M #define LRWPAN_SYMBOLS_PER_SECOND 62500 //valid channels are 11 to 26 for 2.4GHz. #define LRWPAN_DEFAULT_START_CHANNEL 20 //if this is defined, then DEFAULT PANID always used #define LRWPAN_USE_STATIC_PANID #define LRWPAN_DEFAULT_PANID 0x1347 #define LRWPAN_DEFAULT_CHANNEL_SCAN_DURATION 4 Page 11/53
  • 12. 3. Dma6410L 與 Coordinate 的連接確認 ../wxldemo.c void wait_6410_ok() { int ready=0; char string[4]="OK?"; char c; int i; while(ready!=1) //直到等到 OK? Ready 才會變成 1 { for(i=0;i<3;i++) { while(!halGetchRdy()); c=halGetch(); if(c!=string[i]){ break; } Page 12/53
  • 13. if(i==2){ ready=1; } } } conPrintROMString("RDY");//回 RDY 給 6410 clear_uart_buffer(); } wait_6410_ok() 當 6410 重新啟動時,6410 需要將 uart 腳位設定為 uart 功能,但在設定 完成之前,會有不穩定的準位變化,造成 coordinator 端以為 6410 已經 送給他 command,此情況造成後續的 command 位移,例如 a8 01 00 01 11 22 33 44 受到位移後變成 00 00 a8 01 00 01 11 22,所以必須 使用此函數來避免此種情況。 此函數在 coordinator 上電後會先執行,等待 6410 傳 OK?字串,如果收 到 OK?,則回傳 RDY 字串給 6410,表示 6410 的 uart 已經進入穩定, 接下來 6410 傳來的 cmd 才會開始處理。 4. COORDINATOR 和 DEVICE 之間封包的傳送格式 typedef struct _CMD_STRUCT{ BYTE head; BYTE cmd; BYTE flag; Page 13/53
  • 14. BYTE length; BYTE data[4]; }CMD_STRUCT; CMD_STRUCT cmd_struct={0xa8,0x00,0x01,0x08,0x11,0x22,0x33,0x44}; hea cm flag length data[0] data[1] Data[2] Data[3] d d head:固定為 0xa8 cmd:0x01 要求 device 回傳晶片內溫度 0x02 要求 device 回傳 PIR 目前狀況 0x03 對電燈進行控制 data[0]=1 為亮 data[1] =0 為暗 0x04 當 PIR 受到觸發時,發送給 coordinate 端的訊息 flag:是否需要回傳封包 ex:回傳晶片內溫度,PIR 狀況... lenth:data 所需長度 data:存放要傳送的資訊 Page 14/53
  • 15. 5. void send(BYTE *cmd_ptr) 傳送無線訊號使用 aplSendMSG (APS_DSTMODE_LONG, //參數 1 & lampADDR, //參數 2 2, //dst EP 0, //cluster is ignored for direct message 1, //src EP (BYTE *)cmd_ptr, //參數 6 8, //參數 7 apsGenTSN(), FALSE); //No APS ack requested 參數 1決定要依據裝置的何種位置來進行發送,可分為 Page 15/53
  • 16. APS_DSTMODE_NONE:沒有指定位置 APS_DSTMODE_SHORT:使用16bit短位置發送 APS_DSTMODE_ LONG:使用64bit長位置發送 參數2填入發送目標位置 位置是採取 Little-Endian = LSB on the lower address 假設 device端的位置為0xFF FF FF FF FF FF FF 02 在給位置時可用以下方式: LADDR_UNION lampADDR={0x02,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; 參數6填入要傳送的資料的起始位置 例如要傳送0xa8 00 01 08 11 22 33 44 就先設定好資料內容,在放入資料起始位置 cmd_struct={0xa8,0x00,0x01,0x08,0x11,0x22,0x33,0x44}; cmd_ptr=(BYTE*)&cmd_struct; 參數 7要傳送資料的長度,在此為 8 BYTE 6. Send 成功傳輸的回傳通知 Page 16/53
  • 17. while(apsBusy()){ apsFSM(); //status not ready yet if busy. } aplGetStatus() == LRWPAN_STATUS_SUCCESS 呼叫完 aplSendMSG 函數之後,需呼叫 apsFSM()去處理,並以 aplGetStatus()來得知是否處理完成,如果處理成功應該會回傳 LRWPAN_STATUS_SUCCESS 7. void receive (void ) Coordinate& EndDevice 接收無線訊號使用 void receive (void ) { BYTE loop_time=0; rxFlag=0; while(loop_time<5){ if(rxFlag==1) break; apsFSM(); Page 17/53
  • 18. loop_time++; } } 在執行 apsFSM()時,若有收到無線訊號,apsFSM()會呼叫 usrRxPacketCallback(void) 來處理收到的資料,因此在這邊主要重複 呼叫 apsFSM()直到 rxFlag 由 0 變成 1,而 rxFlag 就是在執行完 usrRxPacketCallback(void)會把他設定成 1 8. usrRxPacketCallback(void) ,Coordinator 接收成功並傳到 Dma6410L BYTE *ptr; BYTE i; ptr = aplGetRxMsgData(); for(i=0;i<8;i++) { halPutch(*ptr); ptr++; } rxFlag = 1; 在 usrRxPacketCallback(void)函數中,由 ptr=aplGetRxMsgData()取得 收到資料的起始位置,例如由 device 傳回 a8 00 01 08 11 22 33 44 則 prt 可取得這一串 command Page 18/53
  • 19. 的起始位置,接著透過 halPutch 將此串 command 由 com port ,每次 送 1 byte,分八次送到 uart 送到 6410。 2.1.6 常見問題 Q:relay 不斷自己開關開關 A:可能是電源供給不足,換電池試試看 Q:電燈控制沒反應 A:可能是 6410 使用 reset 鈕重開,試試看用電源撥桿重開 Q:電燈控制沒反應 A:可能是 6410 使用 reset 鈕重開,造成 6410 與 coordinator 沒有同步,試試 看用電源撥桿重開 Page 19/53
  • 20. 2.2 NFC 2.2.1 簡介: 近場通訊( NFC ,Near Field Communication),又稱近距離無線通訊,操作 頻率為 13.56MHz, 是一種短距離的高頻無線通訊技術,允許電子設備之間進行 非接觸式點對點資料傳輸,在十公分(3.9 英吋)內,交換資料。 2.2.2 硬體規格: Reader:  Chip:NXP PN532  Intreface:UART  Mode:Read / Write 2.2.3 軟體規格: Library : 1. Libnfc:  需先安裝 Libusb,Libpcsclite,Libccid,pcscd  下載編繹 Libnfc-1.5.1 Page 20/53
  • 21. (./configure –with-drivers=pn532_uart –enable-seriel- autoprobe) 2. Libfreefare:  下載編繹 libfreefare-0.3.2 3. Sqlite:  下載編繹 sqlite-2.8.17 Tool: 1. Libnfc-1.5.1/example/nfc-list:  讀取 device 裝置和卡片 Uid 等內容 2. Libfreefare-0.3.2/example/mifare-classic-format.c:  格式化卡片資料 3. Libfreefare-0.3.2/example/mifare-classic-write-ndef.c  將資料寫入卡片 4. Libfreefare-0.3.2/example/readNFC.c:  為 mifare-classic-read-ndef.c 的改寫  主要加入 sqlite 判斷程式 Sqlite: 使用 sqlite 標準語法  在 shell 上下指令  $ sqlite database.db  $> create table NFCuser(Id INTERGER PRIMARY KEY , Page 21/53
  • 22. Uid TEXT UNIQUE, Uname TEXT, Type TEXT );  $>INSERT INTO NFCUser VALUES(1,9001,'Gary','Admin'); $>INSERT INTO NFCUser VALUES(2,6001,'Ittraining','User'); Sqlite database.db 表單: NFCUser Id Uid Uname Type 1 9001 Gary Admin 2 6001 Ittraining User 2.2.4 Pin Define & 接線圖: Device and (UART to USB) 接線圖 Page 22/53
  • 23. NFC Reader 接腳 方向 描述 3.3V / 電源輸入 TX Output UART 信號輸出 RX Input UART 信號輸入 GND / 接地  Jumper: SEL0 SEL1 UART OFF OFF SPI OFF ON I2C ON OFF Device and (UART to USB) 接線圖 Page 23/53
  • 24. UART To USB Converter Board 接腳 方向 描述 3.3V / 電源輸入 GND / 接地 RXI Input UART 信號輸入 TXO Output UART 信號輸出 2. Card:  Mifare-classic-1K  Storage:1024 Bytes Page 24/53
  • 25. 2.2.5 操作方式 1. 接上電路線,執行 nfc-list nfc-list without card 顯示 device port 資訊 nfc-list with card 顯示卡的資訊 Page 25/53
  • 27. 2. 執行 mifare-classic-format Mifare-classic-format 3. 執行 mifare-classic-write-ndef –i 檔案名稱 User.txt 內容為 9001 (9001 為判斷內容的格式) Page 27/53
  • 28. 4. 執行 mifare-classic-read-ndef 將卡片內容顯示於終端機上 7. 執行 readNFC Admin Find User Find Page 28/53
  • 29. 2.2.6 軟體流程圖 DMA6410L 傳送指令 回傳狀態 Card Reader 傳送資料 回傳資料 Sqlite database Page 29/53
  • 31. 2.2.7 常見問題 Q:編繹時發生問題? A:注意是否有哪個套件沒有安裝,套件的相依性,可用 apt-get 試試看 Q:device 找不到? A:硬體方面,注意接線圖 軟體方面,注意尋找的 device(ttyUSB,ttySAC),注意編繹時的參數 Q:卡片無法讀寫? A:先 format 一次之後試看看 Page 31/53
  • 32. 2.3 GSM/GPRS 2.3.1 GSM 全球行動通訊系統(Global System for Mobile Communications),即 GSM, 是當前應用最為廣泛的行動電話標準。GSM 標準是由歐洲電信標準協會 (European Telecommunications Standard Institute 或 ETSI)所製定的一種無 線數位網路標準,ETSI 發展 GSM 的目的是要結束各系統不相容的問題,所以要 創造出一個全歐洲共同的 communication system structure。GSM 較之它以前的 標準最大的不同是他的信令和語音通道都是數位的,因此 GSM 被看作是第二代 (2G)行動電話系統。GSM 標準當前由 3GPP 組織負責制定和維護。 GSM 模組由兩個部份所組成:第一個部份為使用者認証模組(Subscriber Identity Module 或 SIM),第二個部份為手機通訊模組(Mobile Equipment 或 ME)。其中: SIM 是一智慧卡(記憶體晶片),專門儲存與使用者相關的資枓。SIM 有各種形式, 我們現在最常見的為 plug-in SIM。 通訊模組 ME 則包括一切與基地台通訊所需之無線軟體及硬體,包括控制模組與 無線電模組。 Page 32/53
  • 33. 2.3.2 GPRS 在GSM 演進的過程中,資料的傳輸是必然的趨勢,因此ETSI不斷的加入新的元 素,以提供Data Communications。其中之一即為GPRS通用封包無線服務技術 (General Packet Radio Service,縮寫:GPRS)。 GPRS是為了提供像WWW這樣,使用者需耗費時間閱讀,偶爾傳送大量數據的 應用而提出的分封交換協定。既有的GSM網路無法提供封包傳送的模式,所以 GPRS必須有自己的傳輸網路(transport network)。其中:  GPRS radio link protocol 主要是規定手機與基地台之間,physical layer、MAC層以及RLC(Radio Link Control)層彼此之間在相互通訊時所必 須遵守的協定。GPRS 利用現有GSM 的physical channels,建立自己的logic channels。RLC/MAC層的功能,就是要讓許多用戶共享這些數據通道,透過空 中介面的實體層來傳送資料。  手機與終端主機的網路層之上,可以根據應用程式的需求,採用不同的協定。 例如在應用程式下可使用TCP/IP 傳送,對此GPRS並不加以限制。在GPRS網路 上,封包的發送端與接收端這兩個的GPRS支援節點之間,使用所謂的GPRS隧 道協定(GPRS Tunnel Protocol或GTP)。它主要的功用是透過附加路由資訊 (包裝)的方式,將上層的X.25或IP應用程式的協定數據單元,經由GPRS骨 幹網路來傳送,並依據應用程式的需求,提供不同服務品質(Quality of Service或QoS)。 Page 33/53
  • 34. 2.3.3 MMS 「MMS 多媒體訊息」,就是將文字、圖片(黑白或彩色圖片)、聲音(自錄人聲或 鈴聲)和影片結合起來的影音訊息傳送服務。 MMS 的工業標準是由兩個組織,WAP Forum(WAP 論壇)和 3GPP(3G Partnership Project:3G 夥伴計劃)所制訂的。因此,MMS 是設計成可以在 WAP 協議的上層運行,它不侷限於傳輸格式,既支持電路交換數據格式 (circuit-switched data),也支持通用封包無線服務技術 GPRS 格式(general packet radio service)。 多媒體訊息 MMS(Multimedia Message Service)使用話務頻道 (traffic channel) 來傳送訊息資料,藉由話務頻道來傳送資料可傳送之資料量大於使用控 制頻道(control channel)之 SMS,且 MMS 可支援多種媒體格式如文字、圖片 (黑白或彩色圖片)、聲音(自錄人聲或鈴聲)和影片結合起來的影音訊息傳送。 使用 MMS 需要先確定手機有支援 GPRS、MMS 的功能,再來需要向電信業者申 請 GPRS 服務,透過 GPRS 傳送 MMS 數據資料。 Page 34/53
  • 35. 2.3.4 硬體架構/規格 特性 說明 工作電壓 單電壓供電,3.4—4.5V 低功耗模式 休眠模式下,工作電流典型值為 2.5mA 工作頻段 SIM300 具有三個頻段:EGSM900、 DCS1800、PCS1900。頻 段 頻 率 可 由 AT 指 令 設 置 , 默 認 頻 段 是 EGSM900 和 DCS1800。 與 GSM Phase 2/2+相容。 發射功耗 在頻率 EGSM900 CLASS 4 下 2W 在頻率 DCS1800 和 PCS1900 CLASS 1 下 1W GPRS 連接 GPRS Multi-slot Class 10 GPRS mobile station class B 工作溫度 正常工作溫度:-22℃~+55℃ 極限工作溫度:-25℃~-20℃,+55℃~+70℃ 存儲溫度:-40℃~+80℃ GPRS 資料傳輸 GPRS 下行資料傳輸最大 85.6kbps GPRS 上行資料傳輸最大 42.8kbps 編碼方案:CS-1,CS-2,CS-3,CS-4 SIM300 支援 PAP(密碼驗證)協定,此協定通常用於 PPP 連接 SIM300 集成了 TCP/IP 協定 簡訊 支援點到點簡訊移動發送和接受、文本、PDU 模式 簡訊存儲於 SIM 卡中 支援 CSD 和 GPRS 模式的簡訊發送,使用者可以根據自己的 需要來選擇傳輸模式 SIM 介面 支援 1.8V 和 3V 兩種類型的 SIM 卡 外接天線 通過 50Ω的天線連接器或天線連接板連接 雙串列通信介面 串列埠 1 的接口具有 7 根資料、狀態線 串列埠 1 可以被用作 CSD 傳真、GPRS 服務和發送控制模 組 AT 命令 串列埠 1 可以使用多工功能,但是此時不能和串列埠 2 同時 使用 可支援的自動串列傳輸速率為:1200bps~115200bps 串列埠 2 的介面只有/TXD 和/RXD 兩根資料線,沒有狀態和 控制線 Page 35/53
  • 36. 串列埠 2 只能用來傳輸 AT 命令 2.3.5 軟體功能方塊圖 2.3.6 操作方式  控制方式 透過 UART 傳送 AT Command  範例一 傳送 ATI<CR> 回應 ATI<CR> Page 36/53
  • 37. <CR><LF>SIMCOM_Ltd SIMCOM_SIM300S Revision:1604B06SIM300S32_SST34HF3284_MMS<CR><LF> <CR><LF>OK<CR><LF>  範例二 傳送 AT+COPS?<CR> 回應 AT+COPS?<CR> <CR><LF>+COPS: 0,0,“Chunghwa Telecom"<CR><LF> <CR><LF>OK<CR><LF>  範例三 傳送 ATD0928286497;<CR> 回應 ATD0928286497;<CR> <CR><LF>OK<CR><LF>  智慧家庭使用的專案指令  語音通訊相關 ATA (answer an incoming call) ATD (mobile originated call to dial a number) ATH (disconnect existing connection) ATI (display product identification information) AT+COPS (operator selection)  MMS 傳送相關(使用中華電信 MMS 傳送設定) Page 37/53
  • 38. AT+CMMSCURL (set the url of the mms center) mms.emome.net:8002 AT+CMMSNETCFG (set the network parameters for mms) 1,"emome" AT+CMMSPROTO (set the protocol parameter and mms proxy) 1,"10.1.1.1",8080 AT+CMMSSENDCFG (set the parameter for sending mms) 6,3,0,0,2,4 AT+CMMSEDIT (enter or exit edit mode) AT+CMMSDOWN (download the file data or title from uart) "pic",46340,100000 AT+CMMSRECP (add recipients) "0932072103" AT+CMMSSEND (start mms sending)  撥號操作畫面 Usage: dial <phonenumber> Page 38/53
  • 39. MMS 操作畫面 Usage: mms <phonenumber> <pic file path> <title file path> <test file path> Page 39/53
  • 40. 2.3.7 軟體流程 1.經由 DMA6410L,使用 SIM300 撥打電話或發送 MMS 訊息至指定的 手機號碼 2. 外部電話亦可撥打接通到智慧家庭系統 ,實現即時視訊會議通話 Page 40/53
  • 41. 3. 數位家庭之系統架構  數位家庭警報系統(NFC+Zigbee+PIC Sensor)  遠端控制(Zigbee+Relay)  視訊監控 (WebCam+Zigbee)  視訊通話(Webcam+GSM) 3.1 硬體架構 Page 41/53
  • 43. 3.3 軟體架構 Page 43/53
  • 45. 4. 系統展示 4.1 正面圖 4.2 按鍵配置 Page 45/53
  • 46. 5. 結論 Zigbee、NFC、GSM 一起整合於 Dma6410l 時,因使用的界面都是用 UART,而 預留的 UART0、UART1、UART2 都已被使用,只好參考 CPU Board 的 DataSheet,直 接將 UART3 焊出使用,當以為可以了卻又發現 UART3 與 SPI 共用腳位,而且預設 的 Kernel 已將 SPI 編入,所以只好將 SPI 移除選項,重編 Kernel 後 UART3 才順利 的得以使用,但是又發現系統的各個程式之間會有溝通的問題,需做 Event 的通 知,否則會有不 work 的情形發生,而我們採用了許多的方法,最後使用 ShareMemory 來做為程式的溝通方法,藉由整個開發的過程,讓我們了解到系統 整合,是要考慮到許多方面的事情。   Page 46/53
  • 47. 6. 參考文獻 [1] 維基百科 Zigbee http://zh.wikipedia.org/zh-hant/ZigBee [2] 維基百科 全球行動通訊系統 http://zh.wikipedia.org/zh-tw/全球移動通訊 系統 [3] 維基百科 近場通訊 http://zh.wikipedia.org/wiki/近場通訊 [4] 百度文科 msstatePAN 協議棧實驗 [5] 天運科技 SF-CC2430 學習套件 實用手冊 [6] A Zigbee-subnet/IEEE 802.15.4 Multi-Platform Protocol Stack [7] AN10609_3 PN532 C106 application note [8] UM0701-02 PN532 User Manual [9] PN532/C1 NFC controller [10] NFC forum http://www.nfc-forum.org/home/ Page 47/53
  • 48. 7. 附件 7.1 PIR & Relay Control 電路圖 Page 48/53
  • 49. 7.2.1 Zigbee 系統連接照片 1. Zigbee Coordinator connect DMA6410L 2. Zigbee End Device, connect Lamp & PIR Page 49/53
  • 51. 7.2.3 NFC 系統連接照片 7.2.4 GSM 系統連接照片 Page 51/53
  • 52. 7.2.4 SmartHome 系統連接照片 內部上視圖 Page 52/53