2016 IoT 13H043
1 1 2 2 3 IoT 3 4 5 5 6 5.1............................................... 6 5.2............................................... 6 5.3............................................... 10 5.4........................................... 10 5.5.............................................. 12 5.6 Web........................................... 13 5.7................................................. 14 6 16 7 17 A 20 A.1.1............................................. 20
1 2 3 IoT 4 5 6 7 1
2 Raspberry Pi Arduino IoT(Internet of Things) Raspberry Pi 2016 70% 30% iphone ios Android Android 2 Web Web 2
3 IoT IoT M2M Machine to Machine IoT IoT 1980 1980 TRON OS 1991 The Computer for the 21st Century IoT IoT 1980 IoT Raspberry Pi Arduino IoT SORACOM Air WeDo 2.0 IoT IoT 3, IoT Softbank Award 2015 3 1 IoT M2M IoT WiFi IoT IoT [1] VEGETA [2] 1 IoT BOSCH [3] Home Connect 2 Raspberry Pi3 Web 3
1 VEGET 2 BOSCH Home Connect 4
4 Web Web Raspbery Pi3 Debian Linux Raspberry Pi3 Web Linux Web Raspberry Pi3 Linux Web Linux 1 Web 3 Raspberry Pi3 Linux Web Web Web Raspberry Pi3 Web 3 5
5 Web 5.1 Web Raspberry Pi3 USB Web Raspberry Pi3 fswebcam fswebcam USB Raspberry Pi3 Raspberry Pi3 Web Linux ssh Linux 5.2 1. FSR406 A/D MCP3002 10k 43.7mm 4 1 Raspberry Pi3 40 GPIO (SPI) Raspberry Pi3 A/D 2 A/D 2. Raspberry Pi3 GPIO Raspberry Pi3 Python A/D 0ch 1ch A/D Raspberry Pi3 Raspberry Pi3 2 6
1 Raspberry Pi3 GPIO A/D Raspberry Pi3 3.3V(1) + MCP3002 VDD/VRFF(8) Raspberry Pi3 SPI0 MOSI GPIO10(19) MCP3002 DIN(5) Raspberry Pi3 SPI0 MISO GPIO9(21) MCP3002 DOUT(6) Raspberry Pi3 SCLK GPIO11(23) MCP3002 CLK(7) Raspberry Pi3 SPI0 CE0 N GPIO8(24) MCP3002 CS/SHDN(1) Raspberry Pi3 GND(39) MCP3002 Vss(4) MCP3002 CH0(2) 10k.1 MCP3002 CH1(3) 10k.2 10k.1-10k.2 - FSR406.1-1 3.3V, FSR406.1-2 3.3V + FSR406.1-3 3.3V, FSR406.1-4 3.3V + FSR406.2-1 3.3V, FSR406.2-2 3.3V + FSR406.2-3 3.3V, FSR406.2-4 3.3V + FSR406.1-1 GND, FSR406.1-2 GND 10k.1 FSR406.1-3 GND, FSR406.1-4 GND 10k.1 FSR406.2-1 GND, FSR406.2-2 GND 10k.2 FSR406.2-3 GND, FSR406.2-4 GND 10k.2 7
Raspberry Pi3 4 4 Raspberry Pi3 A/D A/D Raspberry Pi3 8
Raspberry Pi3 Raspberry Pi3 A/D ch 2 4 1 1 4 1 2 2 4 1 1 38mm 38mm 4 76mm 76mm 4 1 4 Raspberry Pi3 Raspberry Pi3 FSR402 FSR406 SPI (Serial Peripheral Interface) Raspberry Pi3 A/D SPI SCLK MOSI MISO CE SCLK (Raspberry Pi3) MOSI (Raspberry Pi3) (A/D ) MISO (A/D ) (Raspberry Pi3) CE Raspberry Pi3 SCLK A/D CLK( ) MOSI A/D Din( IN) MISO A/D Dout( OUT) CE A/D CS( ) Raspberry Pi3 A/D 2 2 Raspberry Pi3 - A/D (MCP3002) SCLK CLK MOSI Din MISO Dout CE CS MCP3002 0ch 10k 4 FSR406 GND MCP3002 1ch FSR406 GND Raspberry Pi3 3.3V + GND - A/D GND + - MCP3002 0ch 1ch Dout Raspberry Pi3 5 MCP3002 9
5 MCP3002 4 SPI Raspberry Pi3 3.3V GND ch 5 2 0ch 3 1ch 5.3 Raspberry Pi3 Mysql5.5 2 pi rapi 3 3 Field Type Null Key Default Extra no int(11) YES - NULL - no2 int(11) YES - NULL - created detetime YES - NULL - no ch0 no2 ch1 created Linux Raspberry Pi3 5.4 24 Web 10
a cron 1 1 Raspberry Pi3 Raspberry Pi3 cron 1 Raspberry Pi3 1 7 1 7 1 1 1 b 1 7 18 1 18 15 1 300 300 300 300 300 11
5.5 Web gnuplot 1 Web 6 1 1 1 (g) 6 0ch 1ch 1 12
5.6 Web Web apache PC http://ks133.a4w Linux apache pi.php Raspberry Pi3 /home/pi/denn.py Linux /var/www/picture Linux /var/www/pi.php /var/www/picture Web 7 Web Web 7 0ch 1ch 13
5.7 設置図 Raspberry Pi3 を冷蔵庫の外部に設置 センサーを貼り付けたクリップボードは冷蔵庫の内部に設置し Raspberry Pi3 とセンサーを繋ぐコードは冷蔵庫の扉に挟んだ また 冷蔵庫はガラスが透明でカメラでも確認 しやすい業務用の冷蔵ショーケースを使用した Raspberry Pi3 は無線が内蔵されているため WiFi でネット ワークに通信をしている 図8 全体図 全体図を以上の図 8 に示した 画像を撮影する USB カメラが図の中央部にあり USB カメラは Raspberry Pi3 に繋がっており 図の右には冷蔵庫とセンサーが見られる 図の中央部には熱対策として USB ファンを挟ん で真ん中に Raspberry Pi3 が設置されている Raspberry Pi3 のピンは電子回路基板はジャンパーワイヤーで繋 がっていて 電子回路基板には A/D コンバーターの MCP3002 や 10k Ωの抵抗がハンダ付けされている そこ からセンサーに向けてジャンパーワイヤーを繋いでいる 14
9 4 1 9 4 3.3V GND 15
6 1L 1L 16
7 7 1. FSR406 100g 10kg 1L 1L 0mg 1000mg 100g 2. 8 4 1 2 2 2 1 3. 4. 5. 6. Web 7. 17
18
[1].. http://panasonic.jp/pss/. [2] ( ).. http://feminity.toshiba.co.jp/feminity/service/ concierge_refrigerator.html, 2016. [3].. http://akizukidenshi.com/ download/ds/microchip/mcp3002.pdf, 2015. 19
A A.1.1 # coding : utf 8 #! / usr / bin /env python # coding : utf 8 import MySQLdb import spidev import time import subprocess import commands import os # s p i s p i = spidev. SpiDev ( ) s p i. open ( 0, 0) try : r e s = s p i. x f e r 2 ( [ 0 x68, 0x00 ] ) re1 = s p i. x f e r 2 ( [ 0 x78, 0x00 ] ) pe = ( r e s [ 0 ] 256 + r e s [ 1 ] ) & 0 x 3 f f pe1 = ( re1 [ 0 ] 256 + re1 [ 1 ] ) & 0 x 3 f f print pe print pe1 except KeyboardInterrupt : s p i. c l o s e ( ) # DB connect = MySQLdb. connect ( host= 1 9 2. 1 6 8. 1 2 2. 1 3 3, port =3306, user= pi1, db= pi, c h a r s e t= c u r s o r = connect. c u r s o r ( ) 20
# os. system ( fswebcam no banner S 20 sample. jpg ) # os. system ( sh s o u s i n. sh ) # s q l = u i n s e r t i n t o r a p i ( created, no, no2 ) v a l u e s (now ( ), %s, %s ) % ( pe, pe1 ) c u r s o r. execute ( s q l ) connect. commit ( ) # c u r s o r. c l o s e ( ) connect. c l o s e ( ) # 21