中級Arduino用イーサーネットシールド

概要

このシールドを使うことでArduinoはTCP/IPの通信機能を持ちます。
極めて重要なシールドです。Arduinoにかぶせるように使いますが、このシールドが通信をする際に使用しているピンは10,11,12,13ですのでご注意ください。
ここでは基礎的なTCP/IP通信をしてみます。

必要な商品

詳細説明

Arduino用のイーサーネットシールドは二種類あります。
Arduinoの開発環境(IDE)のサンプルをみてください。

展開しているメニューはEthernet2ですが、その上にEthernet1があります。
どちらのイーサーネットシールドを使っているかは気をつけてください。

さらにイーサーネットシールド2を使う場合、Arduinoの開発環境(IDE)のバージョンは1.7.4以降でなければいけません。このIDEのバージョンがある場所は、arduino.ccではなく、arduino.orgです。
蛇足ですが、これはArduinoの設立メンバーが分裂したことに起因しています(笑)

注意!

イーサーネットシールドには当然ながら有線のLanケーブルコネクターがついています。
ご家庭でLANケーブルをお使いになれる環境がある方は、できればArduinoの一連のプロジェクトはLANケーブルを介してやってみてください。

無線LAN(Wi-Fi)を使いたい方はイーサーネット無線LANコンバーターをお使いになることをお勧めします。
理由はArduinoに載せるWi-Fiモジュールは各種販売されていますが、比較的高価、かつ一台にしか使えないからです。また、Arduinoからの電源供給するものをあまり増やしたくないという点もあります。

一方、コンバーターは汎用的にオフィスなどでも使用されていますから比較的安価かつ強力です。
たとえばコンバーターの先にハブをつければ、イーサーネットシールドつきArduinoを何台もWifiに接続することができます。
また、通信で問題が起きた時、イーサーネットなのかWifiなのかの切り分けがしやすいという点も見逃せません。
Wi-Fiをつなぐ場合は、先にパソコンなどを接続してコンバーターの設定をすませ、必ずWifiが通信可能であることを先に確認しましょう。
ただでさえなにも表示されないイーサーネットシールドを使いはじめるのです。シールドもあやふや、コンバーターもあやふやでは作業が思ったように進まずにイライラするものです。
急がばまわれです。

接続

さてイーサーネットシールドをArduinoにのっけるのですが、その前に!

裏面を見てMacアドレスをメモしてください。MACアドレスとはイーサーネット接続アダプターにつけられているユニークな番号です。世界にひとつしかありません。

写真だと、90-A2-DA-0F-FC-CFと書いてある文字列です。写メを撮るのが一番確実だと思います。
というのも、このイーサーネットシールドを使うプログラムで必ずこのMacアドレスを書き込む箇所があるからです。

図のように重ねます

IPアドレスをご自分のLAN環境により決めます。DHCPをお使いであっても、Arduinoをサーバーとして使うことがあるので固定アドレスを設定してください。
一般的に家庭内では192.168.1.xxxとか、192.168.10.xxxなどというIPアドレスをお使いのはずです。(自分のパソコンに割り当てられているIPアドレスを参照するとわかります。)

すると、Arduinoにも192.168.1.200とか192.168.10.200などという他の機器で使っていなさそうなアドレスをふってください。

イーサーネットシールドを使うスケッチには必ず次のような記述があります。

#include 
#include  もしくは 

// Enter a MAC address and IP address for your controller below.
// The IP address will be dependent on your local network:
byte mac[] = { 
  0x90, 0xA2, 0xDA, 0x0D, 0x99, 0x79 };
IPAddress ip(192,168,1,200);

このように、mac[]のところに先ほど控えたMacアドレスを0xを頭につけて書きかえ、決めたIPアドレスに書き換えます。

イーサーネットシールドのサンプルはここを書き換えるだけで動作するはずです。

テスト

ArduinoのIDEの「スケッチの例」にWebServerというものがあるはずです。
これをイーサーネットシールドをつけたArduinoに書き込んでみましょう。

mac[]とIPAddressの部分は、上で説明したようにご自分の定義と書き換えてください。
保管する時は、自分のスケッチ保管場所となります。

イーサーネットを繋いで、コンパイルします。
シリアルコンソールをあげておくとサーバー側のログがでます。

ウェブサーバーですから、パソコンのブラウザーから指定したアドレスでアクセスしてみてください。
クライアント側はピンの価が出力されます。

ここまでできれば、イーサーネットシールドを使い、LAN環境の設定も終わっていることがわかります。


よくある質問

現在はありません。

必要な道具

  • ・自宅、職場、学校の設定を変更できるLAN環境

必要な商品を使った他の記事