Investigation of ZigBee Sensor Network Platforms Bradford Peyton / - - PowerPoint PPT Presentation

investigation of zigbee sensor network platforms
SMART_READER_LITE
LIVE PREVIEW

Investigation of ZigBee Sensor Network Platforms Bradford Peyton / - - PowerPoint PPT Presentation

sponsored by Investigation of ZigBee Sensor Network Platforms Bradford Peyton / Anoop Gojanur Supervisor - Dr. Kevin McCarthy Freescale and Freescale Logo are trademarks of Freescale Semiconductor, Inc. All other product or service names


slide-1
SLIDE 1

sponsored by

Freescale™ and Freescale Logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are properties of their respective owners.

Investigation of ZigBee Sensor Network Platforms

Bradford Peyton / Anoop Gojanur Supervisor - Dr. Kevin McCarthy

Slide design by Bradford Peyton

slide-2
SLIDE 2

February 9th, 2007 Bradford Peyton / Anoop Gojanur 2

What is a Wireless Sensor Network?

  • Network of low-power wireless devices
  • Monitors physical or environmental

conditions

  • Each network node is equipped with a

radio transceiver

  • Often used in industrial control systems
slide-3
SLIDE 3

February 9th, 2007 Bradford Peyton / Anoop Gojanur 3

slide-4
SLIDE 4

February 9th, 2007 Bradford Peyton / Anoop Gojanur 4

What is ZigBee?

  • High-level communications protocol which

uses IEEE 802.15.4 standard digital transceivers for a wireless personal area network (WPAN)

  • Low power, long-lifetime sensors
  • Operation band centered at 868 MHz in

Europe, 915 MHz in the USA, and 2.4 GHz in most countries worldwide

slide-5
SLIDE 5

February 9th, 2007 Bradford Peyton / Anoop Gojanur 5

The ZigBee Stack

slide-6
SLIDE 6

February 9th, 2007 Bradford Peyton / Anoop Gojanur 6

ZigBee Network Specification

Common Name "ZigBee"

IEEE standard 802.15.4 Max Data Rate 250 kbps* TX power 30+ mA Standby Supply Current 3 µA Network Type Star, Cluster, Mesh Max Packet Size 132 bytes Range > 1200 meters** ZigBee Stack Size 8-60 kB***

* At 2.4 GHz operation ** Line Of Sight (LOS), MAX_POWER *** SMAC stack = Application protocol

slide-7
SLIDE 7

February 9th, 2007 Bradford Peyton / Anoop Gojanur 7

Security Sensor

slide-8
SLIDE 8

February 9th, 2007 Bradford Peyton / Anoop Gojanur 8

Project Goals

Characterization of 13213-SRB device Website host for live data HyperTerminal Console – PC to SRB PER Test for SRB-to-SRB communication Wireless data-logging application User interface – Visual Basic / Win32 Fully functional wireless weather station

slide-9
SLIDE 9

February 9th, 2007 Bradford Peyton / Anoop Gojanur 9

Skills Learned

  • How to establish a wireless sensor

network

  • Microcontroller programming

– ANSI-C – Assembly

  • LaTeX syntax
  • Communication using HyperTerminal
  • Standard project management skills
slide-10
SLIDE 10

February 9th, 2007 Bradford Peyton / Anoop Gojanur 10

Software Utilized

  • CodeWarrior IDE
  • TestTool
  • Triax
  • HyperTerminal
  • MiKTeX – LaTeX base system
  • TeXnicCenter – LaTeX editor

SCITransmitStr(“data line") SCITransmitStr(“data line") ‘app_status = RX_STATE’ ‘app_status = RX_STATE’ MCU State

slide-11
SLIDE 11

February 9th, 2007 Bradford Peyton / Anoop Gojanur 11

1321X SRB

(Sensor Reference Board)

slide-12
SLIDE 12

February 9th, 2007 Bradford Peyton / Anoop Gojanur 12

What is the 1321X SRB?

  • Single port dual-layer reference design

→Bi-directional data transfer. RX switch On for LNA control (receiving) →Rx switch Off for Tx PA control (transmitting)

  • Contains 8 general purpose I/O pins connected directly

to the Analogue-to-Digital Converter (“ATD1SC”) in MCU package

  • F-Antenna: 2 Antennas spaced ¼ wavelength apart
  • 26 General purpose I/O pins (Analogue/Digital)
  • On-Board Sensors:

– Accelerometer: MMA7260Q Triple-Axis linear output accelerometer – Temperature: LM61B 3-pin digital output sensor

(void)MLMEMC13192PAOutputAdjust(OUTPUT_POWER); //Set MAX power setting /* MLMEMC13192PAOutputAdjust(MIN_POWER); //Set MIN power setting */ /* MLMEMC13192PAOutputAdjust(NOMINAL_POWER); //Set Nominal power setting */ (void)MLMEMC13192PAOutputAdjust(OUTPUT_POWER); //Set MAX power setting /* MLMEMC13192PAOutputAdjust(MIN_POWER); //Set MIN power setting */ /* MLMEMC13192PAOutputAdjust(NOMINAL_POWER); //Set Nominal power setting */

slide-13
SLIDE 13

February 9th, 2007 Bradford Peyton / Anoop Gojanur 13

MC13213 MCU

  • SiP combination of transceiver and µC
  • 8 channel Analogue-to-Digital Converter
  • 60kB Flash and 4kB RAM
  • Sensors connected to ‘PTB0-7’
  • LEDs connected to ‘PTD4-7’
  • Switches connected to ‘PTA2-5’
slide-14
SLIDE 14

February 9th, 2007 Bradford Peyton / Anoop Gojanur 14

Communications

  • P&E Background Debug Module (BDM)

Multilink

– Flash! MCU peripherals and memory

  • Serial Peripheral Interface (SPI)
  • OTAP (Over-the-air-Protocol): SRB-to-

SRB

  • HyperTerminal
slide-15
SLIDE 15

February 9th, 2007 Bradford Peyton / Anoop Gojanur 15

Freescale 13213SRB

LED1 LED2 LED3 LED4 SW1 SW2 SW3 SW4

Analog/Digtal I/O

Temperature sensor Acclerometer Humidity Sensor Light Sensor **************************************************************/ SRTISC=SRTISC&~0x07; //Disable wake up timer. SPMSC2=SPMSC2&~0x03; //Enable deep sleep mode stop3. TPM1SC = 0x0F; //Timer divide by 128. (16uS timebase for 8MHz bus clock). ATD1PE=0x4C; //enable desired ADC channels (AD2,AD3, AD4, AD7 on) ATD1C=0xE1; //set prescale to 4 ATD1SC = 2; //read x-axis data on ch2 ATD1SC = 3; //read y-axis data on ch3 ATD1SC = 4; //read z-axis data on ch4 PTBDD_PTBDD6 = DDIR_INPUT //set PortB pin6 as I/P to read temperature while((ATD1SC & 0x80) != 0x80){} Temperature = (ATD1RH * 300) / 256; //Since 3V = 300 degrees = 256 count, multiply by 300/256 tx_data_buffer[4] = Temperature & 0xFF; tx_data_buffer[7] = 0x30; tx_packet.dataLength = 12; for (i=0; i<retries; i++) { u8status = MCPSDataRequest(&gsTxPacket); // transmit data}

KB_INIT_MACRO

SCITransmitStr("N:"); (void)int2string((UINT32) packet_count, App_String); SCITransmitStr(App_String); temperature = (UINT8)(MLMETEMP_R()/2); //Read the temperature reading. SCITransmitStr(" Temperature=-"); (void)int2string((UINT32) temperature, App_String); SCITransmitStr(App_String);

HyperTerminal

slide-16
SLIDE 16

February 9th, 2007 Bradford Peyton / Anoop Gojanur 16

SCITransmitStr("N:"); (void)int2string((UINT32) packet_count, App_String); SCITransmitStr(App_String); link_quality = (UINT8)(MLMELinkQuality()/2); //Read the link quality of the last received packet. SCITransmitStr(" LQI=-"); (void)int2string((UINT32) link_quality, App_String); SCITransmitStr(App_String); SCITransmitStr(" CRC=1 Data="); SCITransmitFormattedArray(rx_packet.pu8Data, rx_packet.u8DataLength); app_status = RX_STATE;

slide-17
SLIDE 17

February 9th, 2007 Bradford Peyton / Anoop Gojanur 17

PER Test Operation

  • Burst of 1000 packets sent from remote

13213-SRB unit

  • PC-connected 13213-SRB logs packets

received in HyperTerminal

  • Link Quality Index (LQI) gives measure of

the Packet Error Rate (PER)

slide-18
SLIDE 18

February 9th, 2007 Bradford Peyton / Anoop Gojanur 18

PER Test – Lab, Obstructions

Average Link Quality Index vs. Fixed Location

slide-19
SLIDE 19

February 9th, 2007 Bradford Peyton / Anoop Gojanur 19

PER Test – Hall, Line of Sight

Average Link Quality Index vs. Linear Distance

slide-20
SLIDE 20

February 9th, 2007 Bradford Peyton / Anoop Gojanur 20

Live Data Feed

(Wireless Weather Station Model)

Uploaded via macro through Excel VBA

slide-21
SLIDE 21

February 9th, 2007 Bradford Peyton / Anoop Gojanur 21

Design For All Competition Entry

“Sensor Networks: Wireless Punching Bag”

On-board application uses accelerometer to

  • utput impact

force to external sensor for display

slide-22
SLIDE 22

February 9th, 2007 Bradford Peyton / Anoop Gojanur 22

Roadblocks

  • Licensing – inability to debug or compile

new applications

  • Documentation – primarily directed at

sister device (13192)

  • ‘New’ technology – Limited research

resources available

slide-23
SLIDE 23

February 9th, 2007 Bradford Peyton / Anoop Gojanur 23

Project Timeline (Gantt Chart)

slide-24
SLIDE 24

February 9th, 2007 Bradford Peyton / Anoop Gojanur 24

Questions?

  • For future project updates, kindly refer to the

project website at http://zigbee.zimtok5.com/

13213-NCB & Background Debug Module (BDM)