GR-KURUMI-SN( 仮 ) ( センサーネットワークシールド ) 生きてるってなんだろう 見えないものでつながってる がじぇっとるねさす 2013/11/23 Rev. 1.00
もくじ Sensor Network(SN) シールド概要 くるみが一人で測って 計算して データを飛ばす複数のくるみとさくらがつながる サンプルプログラムの使い方 つながる広がるエレクトリカルものづくり Smart Analog IC, Xbee の初期化からセンサ値の取得 Xbee による送信まで低消費電力モード (STOP モード ) GR-SAKURA( データ受信側 ) 用サンプルプログラム 2
Sensor Network (SN) シールド概要 3
コンセプト 生きてるってなんだろう 見えないものでつながってる 4
28mm Sensor Network シールド 61mm 照度 音 JPEG カメラ I/F 温度 センサ拡張 加速度 Smart Analog メモリカード I/F 5
温度センサー 回路 SmartAnalog 設定 センサー仕様 0 :500mV 10mV/ Sensor DAC MPXIN40 非反転アンプ + - R R Gain Control DAC Open Gain Short Open A1 1: 9.5 db 2: 10.9 db 3: 12.4 db 4: 14.0 db 5: 15.6 db 6: 17.3 db 7: 19.0 db 8: 20.8 db 9: 22.7 db a: 24.5 db b: 26.4 db c: 28.3 db d: 30.3 db e: 32.2 db f: 34.2 db 10: 36.1 db 11: 38.1 db 12: 40.1 db ライブラリで暫定採用 3.5 倍 Open DAC -> 0(GND) 6
照度センサー 回路 SmartAnalog 設定 センサー仕様 約 0.46uA/lux Sensor DAC MPXIN40 非反転アンプ + - R R Gain Control DAC Open Gain Short Open A1 1: 9.5 db 2: 10.9 db 3: 12.4 db 4: 14.0 db 5: 15.6 db 6: 17.3 db 7: 19.0 db 8: 20.8 db 9: 22.7 db a: 24.5 db b: 26.4 db c: 28.3 db d: 30.3 db e: 32.2 db f: 34.2 db 10: 36.1 db 11: 38.1 db 12: 40.1 db ライブラリで暫定採用 32.7 倍 Open DAC -> 0(GND) 7
マイク 回路 SmartAnalog 設定 1/2VCC Sensor 汎用アンプ SmartAnalog IC + A3 - センサー仕様 R C 8
加速度 回路 センサ仕様 TxD1 RxD1 y 値の読み取り方法 (I2C) 1 軸方向の加速度が 2 つのレジスタに上位 4bit と下位 8bit で分けて保存されている z x 測定値 2g mode: 4g mode: 8g mode: 1024counts/g 512counts/g 256counts/g 9
XBee Serial2 (TxD2, RxD2) Serial1 (TxD1, RxD1) 加速度センサ I2C で利用 D6 KURUMI 用は白シール SAKURA 用は黄シール 10
その他 FET D3, D5 の PWM を使いモーターや音声出力に使える 推奨 : http://akizukidenshi.com/catalog/g/gi-06048/ JPEG カメラ SD LinkSprite の jpeg カメラで撮影する 推奨 : https://www.sparkfun.com/products/retired/10061 SD カードをつけてファイル保存とかする 切り離し 推奨 : http://akizukidenshi.com/catalog/g/gk-05488/ センサー小基板にしてワイヤー延長とか SAKURA につなぐ ケースに入れたい 某ブロックにはめて ケースにしてみる 11
接続イメージ 細ピンヘッダがお勧め 細ピンヘッダ用のメス RAW GND の並びは後々の電池接続用に空けるのもお勧め 12
課題 RAW 入力はスイッチングノイズが厳しく温度センサーに適さない VCCに電池 2 個入力か リチウムポリマー入力にした方がよい SmartAnalogへの入力用スルーホールと 切り離し部分のスルーホールが半グリッドずれてる 合ってれば両サイドがブレッドボードにささる XBeeリセット入力よりもSLEEPを使えるようにした方がよい chobichanさんのアドバイスを取り入れる 加速度センサーが高い 某ブロックでケースを作ると微妙にでかい 厚いから切り離しが難しい 3.5V 3.0V 電池 2 本 RAW 入力の VCC 波形 ( ノイズが ) 電池 2 本 VCC 入力の VCC 波形 ( まだマシ ) 13
ラフスケジュール 12 月末ぐらいまでに製品版の構想を固める 1 月ぐらいに量産前試作 3 月ぐらいに製品化したいです 14
サンプルプログラム使用方法 15
事前に設定すること ( 本日配布分は設定済み ) X-CTU を使って Xbee の設定をする サンプルライブラリはシリーズ 2 に対応 KURUMI 用 SAKURA 用 Function set : ZIGBEE ROUTER API Function set : ZIGBEE COORDINATOR API PAN ID が同じもの 同士が接続できる AP = 2 (API Enable) AP = 2 (API Enable) KURUMI 用は白シール SAKURA 用は黄シール 16
KURUMI 用サンプルプログラム ライブラリフォルダ lib_kurumieyes SN シールド用 (KurumiEyes.h, KurumiEyes.cpp) Smart Analog IC の設定 各種センサ値の取得など Xbee 用 (Xbee.h, Xbee.cpp) Arduino の Xbee library から流用 Xbee の設定 送受信 ステータスの取得など 17 17
gr_sketch.cpp で行っていること ( ヘッダ部 ) GR-SAKURA-SN シールドを使うときに 定義が必要なヘッダファイル Xbee クラスの宣言 KurumiEyes クラスの宣言 Xbee 関連の宣言 Xbee 送信パケット用配列 Xbee の送信先 (GR-SAKURA に付けた方 ) の 64bit アドレスに変更する! Xbee のリセット端子を制御するポート (Low : RESET 有効 ) 18 18
gr_sketch.cpp で行っていること (setup 関数 ) GR-SAKURA-SA シールドを使うときに 定義が必要なヘッダファイル KURUMI の髪飾り LED の初期化 LED 赤 : エラー LED 緑 : 正常 KurumiEyes クラスの初期化 (SmartAnalog IC 加速度センサの初期化 ) Xbee の初期化 Serial2 を使用する ボーレートは X-CTU の設定に合わせる デフォルトは 9600 必ず kurumi.begin(), Xbee.setSerial(), Xbee.begin() の順に実行する SmartAnalog IC 設定の SPI と Serial2 を同時に使用できないため 19 19
gr_sketch.cpp で行っていること (loop 関数前半 ) SN シールドのセンサの値の取得 ( 全部 ) 送信パケット (payload[]) に取得した センサの値を格納 送信 (zbtx にはアドレスとデータ データサイズが含まれる ) 20 20
gr_sketch.cpp で行っていること (loop 関数後半 ) 送信リクエストに対する応答待ち ( 最大 500ms) ステータスのチェック 正常時 :LED 緑 エラー発生時 :LED 赤 21 21
低消費電力モード (STOP モード ) Smart Analog IC リセット有効 Xbee リセット有効 STOP モード開始 (10s 間 ) KURUMI STOP モード Smart Analog IC 再セットアップ Xbee 再セットアップ Xbee 再セットアップができない問題があり 現在調査中 22 22
SAKURA 用サンプルプログラム ライブラリフォルダ lib_xbee Xbee 用 (Xbee.h, Xbee.cpp) Arduino の Xbee library から流用 Xbee の設定 送受信 ステータスの取得など 23 23
gr_sketch.cpp で行っていること ( ヘッダ部 ) lib_xbee 用ヘッダファイル Xbee クラスの宣言 Xbee 関連の宣言 受信パケット保存用のクラス PC 表示用のシリアル通信 (Serial) の初期化 ボーレートは X-CTU の設定に合わせる デフォルトは 9600 24 24
gr_sketch.cpp で行っていること (loop 関数前半 ) 受信チェック 受信データの取得 25 25
gr_sketch.cpp で行っていること (loop 関数後半 ) データ送信元の 16 ビット アドレスを PC に表示 受信データをフレームに 分割 受信データを PC に表示 エラーチェック 26 26
ルネサスエレクトロニクス株式会社