センサーWebサーバーにする(LANコネクタDIP化キット使用)

解説

LANコネクタDIP化キットを使用すると、mbedをWebサーバーにできます。

EthernetNetIfライブラリと、HTTPServerライブラリを使用すると、簡単にmbedをWebサーバーにできます。

センサーWebサーバーにするときに最低すべきことは、

  1. センサーの値を表示するHTTPレスポンスをするクラスを、HTTPRequestHandlerクラスの派生クラスとして、作成する。
  2. EthernetNetIfオブジェクトを作成する。
    EthernetNetIf オブジェクト名( IPアドレス, サブネットマスク, ゲートウェイ, DNS );
  3. HTTPServerオブジェクトを作成する。
    HTTPServer オブジェクト名;
  4. EthernetNetIfオブジェクトをセットアップする。
    EthernetNetIfオブジェクト . setup();
  5. パスに対してHTTPServerの動作を設定する。
    パス名として、「"/"」を指定する。
    動作種類として、1.で作成したクラスを指定する。
    HTTPServerオブジェクト . addHandler<動作種類>( パス名 );
  6. HTTP通信のポート番号として80を設定する。
    80以外を指定した場合には、ブラウザからアクセスするときには、http://IPアドレス:ポート番号/~ でアクセスする。
    HTTPServerオブジェクト . bind(80);
  7. 無限ループを作成、その中で、定期な問い合わせを行う。
    while( 1 )
    {
      Net::poll();
    }

部品表

部品名 数量 商品名 参考価格
LANコネクタDIP化キット 1 LANコネクタDIP化キット 200円
温度センサ 1 高精度IC温度センサ LM35DZ 100円
CdSセル 1 CDSセル 5mmタイプ 40円
10KΩ抵抗器 1 カーボン抵抗(炭素皮膜抵抗) 1/6W 10KΩ 100本100円
mbedボード 1 mbed NXP LPC1768 5,250円
ブレッドボード 2 EIC-801 250円
ジャンパーワイヤ 適量 ジャンパーコード(オス-オス)セット 100mm49個
150mm8個
200mm4個
250mm4個
のセット200円

接続表

LANコネクタDIP化キット mbed側
ピン番号 ピン名称 ピン番号
1 TD+ TD+
2 TD- TD-
3 RD+ RD+
4 NC 無接続
5 NC 無接続
6 RD- RD-
7 NC 無接続
8 NC 無接続

接続例

サンプルコード

main.cpp


SensorHandler.h


SensorHandler.cpp

プロジェクトへのEthernetNetIfライブラリのインポート

  1. mbed.orgサイトのコンパイラ画面のメニューの「Import」をクリックします。「Import」ペインが表示されます。
  2. 「Import」ペインの一番下の「Search」に「EthernetNetIf」と入力します。「EthernetNetIf」に関するライブラリが検索されます。
  3. 「Import」ペインの中段の「Programs」「Libraries」「Bookmarked」タブの「Programs」を選択します。
  4. Nameが、「EthernetNetIf」で、Userが「Donatien Garnier」である項目のひとつを選択状態にします。「Import」ペインの上段の「Source URL:」および「Target Name:」が自動入力されます。
  5. 「Import」ペインの上段の「Target Path」にインポート先プロジェクトを指定し、「Import」ボタンを押すと、プロジェクトにEthernetNetIfライブラリがインポートされます。

プロジェクトへのHTTPServerライブラリのインポート

  1. mbed.orgサイトのコンパイラ画面のメニューの「Import」をクリックします。「Import」ペインが表示されます。
  2. 「Import」ペインの一番下の「Search」に「HTTPServer」と入力します。「HTTPServer」に関するライブラリが検索されます。
  3. 「Import」ペインの中段の「Programs」「Libraries」「Bookmarked」タブの「Programs」を選択します。
  4. Nameが、「HTTPServer」で、Userが「Donatien Garnier」である項目のひとつを選択状態にします。「Import」ペインの上段の「Source URL:」および「Target Name:」が自動入力されます。
  5. 「Import」ペインの上段の「Target Path」にインポート先プロジェクトを指定し、「Import」ボタンを押すと、プロジェクトにHTTPServerライブラリがインポートされます。

実行

mbedをセンサーWebサーバー化し、InternetExplorer にてアクセスした結果

Webサーバー化したmbedに、アクセスした結果

mbed.org ページへのリンク

http://mbed.org/users/nobuki/code/sensorwebserver/