21
Lab 9 Department of Computer Science and Information Engineering National Taiwan University Computer System Laboratory Lab9 - Sensor Network 2014/11/25 / 21 1

Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Embed Size (px)

Citation preview

Page 1: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 211

Computer System Laboratory

Lab9 - Sensor Network

2014/11/25

Page 2: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 212

Experimental Goal

Learn how to establish a simple sensor network (SIOTAS) on STM32F207.

2014/11/25

Page 3: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 213

Environment

Host System Windows XP

Build System IAR Embedded Workbench + Ubuntu 8.04

Target System PTK development board (STM32F207)

Software SQL Agent Prepared Database mCloud Portal MySQL Connector ODBC mCloud AppClient PTK Examples Version 2

You can find all software on RSWiki CSL Course Software.

2014/11/25

Page 4: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 214

Case Study – SIOTAS

We would like to build a sensor network for the elders. A gateway device is used to collect data from node devices by using Zigbee. All the sensing data will be sent to a server and recorded in database. We can use a browser to monitor the history of data and graphs.

2014/11/25

Server Side

Client Side

Sensor Devices

gateway device

node device

Page 5: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 215

Sensor Devices of SIOTAS

We use STM32F207 as the base of each device.

Gateway Device Collect all the data from other sensors, and send them to the server.

Lighting Device Detect the current value of temperature and luminance flux, and turn on the

light when it is dark.

Bathroom Device Detect the movement of users and record user in/out events.

Entrance Device Detect the door whether it is open, and record events of user entrance. User can go indoor/outdoor by using RFID.

Activity Device Detect the heart beat rate and calories consumption.

2014/11/25

Page 6: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 216

Server Side of SIOTAS

We would establish LAMP environment. LAMP means Linux, Apache, MySQL, and PHP.

Create a website for monitoring and analyzing. Design a database for data captured by sensors.

2014/11/25

Page 7: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 217

Table Schemas

data_block This is used to record continuous data. Data will store into a file and record the filename in database.

data_feed This is used to record intermittent data. The data will be stored into value defined by the schema.

For detailed description, please refer to the document.

2014/11/25

Page 8: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 218

Server Side Installation (1/2)

Step 1: install several packages. % sudo apt-get install unzip % sudo apt-get install apache2 % sudo apt-get install mysql-server

You must use the predefined password “microtime” for root in the installation process. % sudo apt-get install php5 % sudo apt-get install phpmyadmin

Please choose apache2 by SPACE key in the installation process. % sudo apt-get install libmysqlclient15-dev

Step 2: modify the configuration of MySQL. % sudo nano /etc/mysql/my.cnf

bind-address = 192.168.0.10

[mysqld] plugin_dir = /usr/lib/mysql/plugin

2014/11/25

Page 9: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 219

Server Side Installation (2/2)

Step 3: download sql-agent.tar.gz.

Step 4: install MySQL plugin lib_mysqludf_sys.so. % sudo mkdir /usr/lib/mysql/plugin % sudo mkdir /home/test0001 % sudo tar zxvf sql-agent.tar.gz -C /home/test0001 % sudo cp /usr/lib/libmysqlclient.so.15 /home/test0001/libmysqlclient.so.18

% cd /home/test0001/lib_mysqludf_sys % sudo ./install.sh

Step 5: add some tasks to rc.local. % sudo nano /etc/rc.local

cd /home/test0001

./runme.sh

Step 6: reboot and check. % sudo reboot % ps -A

2014/11/25

Page 10: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2110

Create a Database

Step 1: connect MySQL by a browser. http://192.168.0.10/phpmyadmin

Step 2: import the prepared database. “ 載入” “選擇檔案” mCloud-SIOTAS.sql “ 執行”

Step 3: create a new user. “ 權限” “新增使用者”

使用者名稱 = imami 主機 = 任何主機 密碼 = imami database for user = None 整體權限 = 全選

2014/11/25

Page 11: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2111

Client Side Installation (1/3)

Install the website.

Step 1: download mCloud-Portal.zip. % sudo unzip mCloud-Portal.zip -d /var/www % sudo chown -R www-data.www-data /var/www/mcloud

Step 2: check the website. http://192.168.0.10/mcloud/

Password is microtime

2014/11/25

Page 12: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2112

Client Side Installation (2/3)

Install MySQL Connector.

Step 1: download mysql-connector-odbc-5.1.8-win32.msi. “ 控制台” “系統管理工具” “資料來源 (ODBC)”

“ 系統資料來源名稱” “新增” “ MySQL ODBC 5.1 Driver” “ 完成” Data Source Name = MySQL-mCloud Description = MySQL ODBC 5.1 driver TCP/IP Server = 192.168.0.10 Port = 3306 User = imami Password = imami Database = imami

Step 2: Test the connection. Click “Test”.

2014/11/25

Page 13: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2113

Client Side Installation (3/3)

Install mCloud-AppClient.

Step 1: download and install mCloud-SIOTAS-setup-1.0.1-004.exe.

Step 2: execute mCloud-AppClient.exe.

2014/11/25

Page 14: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2114

Gateway Device Settings (1/2)

Step 0: download new PTK_Example.

Step 1: turn off the power.

Step 2: install Zigbee module (PTK-RF-ZB-ZB01).

Step 3: install LED module (PTK-MEMS-RTC).

2014/11/25

Page 15: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2115

Gateway Device Settings (2/2)

Step 4: open the gateway project. PTK_Example_v2/ePBB/Applications/Projects/PTK-STM32F207/EWARM-V6/Case_Study/MT_Case_SIOTAS-PTK/node_gateway/demo.eww

Step 5: modify configuration in app_cfg.h.

APP_TCPIP_CFG_IF_IP_ADDR_STR = "192.168.0.100"

APP_TCPIP_CFG_IF_MASK_STR = "255.255.255.0"

APP_TCPIP_CFG_IF_GATEWAY_STR = "192.168.0.1“

Step 6: modify constant values in app.c.

static const MT_MCLOUD_SIGNAL_T gSignalConfig[] =

{

{ MK_MID_SID(0x0001, 0x0000), // MID_SID

"Light", // Name

MCLOUD_DATA_UINT16, // DataType

0, // Type

COM_TYPE_ZB, // ComType

"Lighting_0001", // Paring

"", // ShareLib

…2014/11/25

The 4 digits number is the last 4 digits of MAC address of Zigbee.

Page 16: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2116

Lighting Device Settings

Step 1: turn off the power.

Step 2: install Zigbee module (PTK-RF-ZB-ZB01).

Step 3: install LED module (PTK-MEMS-RTC).

Step 4: open the lighting project and download. PTK_Example_v2/ePBB/Applications/Projects/PTK-STM32F207/EWARM-V6/Case_Study/MT_Case_SIOTAS-PTK/node_lighting/demo.eww

2014/11/25

Page 17: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2117

Bathroom Device Settings

Step 1: turn off the power.

Step 2: install Zigbee module (PTK-RF-ZB-ZB01).

Step 3: install passive infrared sensor module (PTK-MEMS-PIR).

Step 4: open the bathroom project and download. PTK_Example_v2/ePBB/Applications/Projects/PTK-STM32F207/EWARM-V6/Case_Study/MT_Case_SIOTAS-PTK/node_bathroom/demo.eww

2014/11/25

Page 18: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2118

Entrance Device Settings

Step 1: turn off the power.

Step 2: install Zigbee module (PTK-RF-ZB-ZB01).

Step 3: install RFID module (PTK-RFID-EWTJ680).

Step 4: install reed switch module (PTK-MEMS-REEDSW).

Step 5: open the entrance project and download. PTK_Example_v2/ePBB/Applications/Projects/PTK-STM32F207/EWARM-V6/Case_Study/MT_Case_SIOTAS-PTK/node_entrance/demo.eww

2014/11/25

Page 19: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2119

Reset PAN ID of ZigBee

Step 1: turn on power.

Step 2: pressing Reset and KEY0.

Step 3: release Reset.

Step 4: release KEY0 after 2 seconds when hearing beep sound.

2014/11/25

Page 20: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2120

Exercise

Try to connect them all together and get a simple sensor network.

The goals are You can monitor the light and temperature on the website. You can use bathroom device and entrance device in advance.

Tips: For more information, please refer to documents on the course website.

2014/11/25

Page 21: Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Sensor Network 2014/11/25/ 21 1

Lab 9 Department of Computer Science and Information EngineeringNational Taiwan University / 2121

Lab Requirement

Show that you can connect a gateway device and a lighting device, record the data into database, and also see the values on a browser.

Show that you can track user movement by a bathroom device and an entrance device.

2014/11/25