!!!MOTE !!VisualStudio C# SerialPortを使用した通信 Visual Studio 2005 C#でSerialPortコンポーネントを使用した際に,改行はCR(0x0d)で認識されていました. そのため,MOTEでシリアルデータを送る際に行末の改行コードをCRに揃える必要があります. SODebug関数のソースコードは /opt/MoteWorks/tos/platform/atm1281/SOdebug.h です. 必要に応じてUARTPutChar関数を書き換えてください. !!MOTEチュートリアル ここでは,MOTEを使用する際の注意事項や各種練習問題について触れます. 練習問題の解答例は[[こちら|MOTE練習問題解答]]です. !MOTE講習会 第5回 08/09/02 各種センサ情報(電圧,温度,照度,音響)を取得し,1ホップの無線通信を実現する. 今回もxserveを用いる. *実習 ** {{ref genericComm_radio.zip,,サンプル}} をダウンロードする. **サンプルにはbaseとsrcがあり,baseは基地局用でsrcはセンサ情報送信ノード用である. Baseの場合 make micaz install,0 srcの場合 make micaz install,1 とし,それぞれコンパイルし実行する. **センサ情報の表示は (COMポートが5番の時) xserve -s=com5 とする. *課題 **照度センサだけでなく,温度センサやマイクの入力に対しても,大きな変化があった時だけ,データを送信するように改良する.ソースノード側を改良すること. !MOTE講習会 第4回 08/08/05 センサデータ(照度)を取得し,PCに送信.Crossbow社のxserveを用いて,データを表示する. *MOTE->PCに送る方法 **今回は,Send関数を用いて実装します. *実習 ** **サンプル /opt/MoteWorks/apps/tutorials/lesson_2 ** Cygwinを起動し,cdコマンドで「/opt/MoteWorks/apps/tutorials/」ディレクトリに移動する. **「/opt/MoteWorks/apps/tutorials/」 内に 「MyApp_Sensor」 ディレクトリを作成し(mkdir),「lesson_2」の中身をコピーする.cp -r で作成しても良い. **「make micaz install,0」と入力し,コンパイルと実行を行う.「0」とはノードIDを指す.今回は1つしかないので,「0」とした. **Cygwin側で「xserve -s=com5」と入力する.「com5」は使用している通信ポートに変えること. **画面上に,データが表示される. *課題 **「lesson_2」のプログラムの理解 **照明の状態が変化した時だけ,データを送るように改良する.照明:明->暗 と変化したときに1つだけデータを送る.また 暗->明 と変化したときに1つだけデータを送る. *参考資料 **{{ref SensorInterfacing.pdf,,MOTEセミナー SensorInterfacing}} !MOTE講習会 第3回 08/08/01 シリアル通信を用いてデータをPCに送信 *MOTE->PC に送る方法 **send (無線,有線) **SODebug (有線) *SODebug **C言語のprintfライクな構文 **サンプル /opt/MoteWorks/apps/example/SODebug *ターミナル **ハイパーターミナル **Tera Term Pro [ダウンロード(vector)|http://www.vector.co.jp/soft/win95/net/se320973.html] **設定 ***接続先 シリアル ポート:COM5 (環境に応じて変わる) ***ボーレート 通信速度:57800(bps) ***改行コード CR+LF *課題 **前回の課題を改良し,LEDの状態を文字で出力する.ただし,タイマ周期は1.5秒にすること. **ex) red:on,yellow:off,green:off *参考資料 **{{ref SODebug.pdf,,MOTEセミナー SODebug}} !MOTE講習会 第1回 08/07/17〜第2回 08/07/25 MOTEを勉強を進めるにあたっての順序 +タイマを用いたLEDの点灯 +シリアル通信にてデータをPCに送信 +センサデータの取得 +無線によるデータ通信 ++シングルホップ MOTE->MOTE ++マルチホップ MOTE->MOTE(基地局)->PC *実習 **インストール (MoteWorks 2.0F) **MakeXbowlocalの設定(/opt/MoteWorks/apps) ***インタフェース:mib510 通信ポート:COM5 の場合 *** 14行目: #DEFAULT_PROGRAM=mib510 ⇒ DEFAULT_PROGRAM=mib510 *** 17行目: #MIB510=COM1 ⇒ MIB510=com5 ***187行目: #RADIO_CHANNEL=25 ⇒ RADIO_CHANNEL=25 ***206行目: #RADIO_POWER=TXPOWER_MAX ⇒ RADIO_POWER=TXPOWER_MAX **USB-Serial変換のドライバのインストール ***「USB TO SERIAL(DB9) CONVERTER CABLE」DISCをPCに入れる ***「USB_RS232_Ver20026\installer version」フォルダ内の「PL-2303 Driver Installer.exe」を実行し,インストールを行う. ***USB-Serial変換ケーブルをPCに接続し,デバイスのインストールを行う. **Blinkサンプルのコンパイルと実行 ***「Cygwin」を起動する. ***コンソール内に「cd /opt/MoteWorks/apps/general/Blink/」と入力する. ***「make micaz install」と入力する.コンパイルされ,MOTEに書き込まれる. *課題 **赤(red),黄(yellow),緑(green)を順番に点灯させる.(1秒ごと) *参考資料 **{{ref Installation.pdf,,MOTEセミナー インストール編}} **{{ref First_Steps_nesC_Leds.pdf,,MOTEセミナー nesC入門(タイマ・LEDの解説)}} *備考 **MOTE関連のファイルは,「Programmers Notepad 2」で編集すると良い.ただし,2バイト文字に対応してないため,日本語入力ができない. **「Programmers Notepad 2」は「PN2」と書いてある場合がある.