Arduino Nano 2台でI2C通信テスト
- 2017/09/02
- 22:28
Arduino Nano 2台でI2C通信テスト
こんにちはRoboTakaoです。ようこそ「極力ローコスト ロボット製作 ブログ」にお越しくださいました。
Arduino Nanoでサーボを動かそうとした場合、通常は最大12個動かすことができます。
でも人間型の二足歩行ロボットを作ろうとした場合はそれでは足りないことが多いと思います。
たとえは2倍の24個動かしたいと思うことがあります。平行リンクを駆使する手もありますが、
今回はArduino Nanoを2台使って最大24個動かすことを考えています。
そしてArduino Nano同士はI2C通信を使いたいと思います。シリアル通信を使い手もありますが.
それだとBluetoothなどでシリアル通信を使えなくなってしまうので同時に使用できるI2Cを選択しました。
I2C(Inter-Integrated Circuit)はフィリップ社が提唱した規格のようです。1台のマスタと複数台のスレーブで構成されます。
今回はまずはArduino IDEに初めから入っているサンプルスケッチを使ってI2C通信のテストしてみましょう。
接続は下記のような感じです。


スレーブのArduino Nanoから“Hello!”というテキストをI2Cで送信し、マスターのArduino Nanoで受信してシリアルでPCにそのテキストを送信します。そしてArduino IDEのシリアルモニターで表示させます。
サンプルスケッチはファイル→スケッチ例→Wire の中にあります。
マスターにはmaster_readerというスケッチを入れ、スレーブにはslave_senderというスケッチを入れます。
マスター

スレーブ

スケッチを送信するとと動き出します。シリアルモニターで見てみるとこのようにHello!というテキストを受信できていることがわかります。

次にマスターから送信したテキストをスレーブで受信したテキストをスレーブ側からシリアルでPCに送信します。
接続は下記のようです。(USBケーブルだけ違います。)


マスターにはmaster_writerを入れ、スレーブにはslave_recieverを入れます。
マスター

スレーブ

これも同じように確認すると、シリアルモニターでテキストが受信できていることがわかります。

次回はこれでマスター側からサーボの角度を送信して、スレーブ側で受信後にその角度でサーボを動かすことをしようと思います。
それでは今回はこの辺で失礼します!ありがとうございました。
こんにちはRoboTakaoです。ようこそ「極力ローコスト ロボット製作 ブログ」にお越しくださいました。
Arduino Nanoでサーボを動かそうとした場合、通常は最大12個動かすことができます。
でも人間型の二足歩行ロボットを作ろうとした場合はそれでは足りないことが多いと思います。
たとえは2倍の24個動かしたいと思うことがあります。平行リンクを駆使する手もありますが、
今回はArduino Nanoを2台使って最大24個動かすことを考えています。
そしてArduino Nano同士はI2C通信を使いたいと思います。シリアル通信を使い手もありますが.
それだとBluetoothなどでシリアル通信を使えなくなってしまうので同時に使用できるI2Cを選択しました。
I2C(Inter-Integrated Circuit)はフィリップ社が提唱した規格のようです。1台のマスタと複数台のスレーブで構成されます。
今回はまずはArduino IDEに初めから入っているサンプルスケッチを使ってI2C通信のテストしてみましょう。
接続は下記のような感じです。


スレーブのArduino Nanoから“Hello!”というテキストをI2Cで送信し、マスターのArduino Nanoで受信してシリアルでPCにそのテキストを送信します。そしてArduino IDEのシリアルモニターで表示させます。
サンプルスケッチはファイル→スケッチ例→Wire の中にあります。
マスターにはmaster_readerというスケッチを入れ、スレーブにはslave_senderというスケッチを入れます。
マスター

スレーブ

スケッチを送信するとと動き出します。シリアルモニターで見てみるとこのようにHello!というテキストを受信できていることがわかります。

次にマスターから送信したテキストをスレーブで受信したテキストをスレーブ側からシリアルでPCに送信します。
接続は下記のようです。(USBケーブルだけ違います。)


マスターにはmaster_writerを入れ、スレーブにはslave_recieverを入れます。
マスター

スレーブ

これも同じように確認すると、シリアルモニターでテキストが受信できていることがわかります。

次回はこれでマスター側からサーボの角度を送信して、スレーブ側で受信後にその角度でサーボを動かすことをしようと思います。
それでは今回はこの辺で失礼します!ありがとうございました。
スポンサードリンク