この夏,チャレンジ!中学生でも開発可能なM2Mシステム Part3 ―― 3G通信モジュールとクラウド・システムの連携[応用編]
●(3) Arduino+3Gシールド上のスケッチ作成
それでは,いよいよArduino+3Gシールド側のスケッチ(プログラム)を作成してきましょう.こちらは,前述までの3つの値「API-Keys」と「Feed-ID」それに「Channel」を使って,スケッチに記載していきます.
ここでは,温度センサ「LM61BIZ」を使って,図10のようにピンをアナログA0ピンと,A1ピン,それにA2ピンのピンに差し込みます.
図10 3Gシールド上の温度センサ(LM61BIZ)の取り付け
それでは,スケッチを紹介していきましょう(リスト1).ただ,ここでは,先に紹介した3つの値は,スケッチ1の中に実際に書き込んでください.
リスト1 初期設定部分のスケッチ
ここでは特に,「server」や「path」,それに「header」にxivelyに関係するものを設定してあります.
つぎの「setup」関数(リスト2)では,温度センサをアナログピンに連続して設定するものと,あとは,3Gシールドの初期化を行っています.
リスト2 setup関数の設定
このスケッチの中で3Gシールドに関係するものは,「a3gs.start」と「a3gs.begin」の二つのみで,この二つで3Gシールドの立ち上げ,つまりネットとの接続を行っています.
つぎの「loop」関数(リスト3)では,温度センサの値を読み込み,サーバに受け渡すため「httpPOST」を使っているところが,3Gシールドに関係するものです.こちらは,30秒おきに温度センサ値をアップするように,最終行に待機で「delay(30000);」を設定しています.
リスト3 loop関数での処理
最後に,温度センサ値を計算するための関数(リスト4)もご紹介しておきます.
リスト4 getTemp関数:温度センサ値を計算する関数