読者です 読者をやめる 読者になる 読者になる

とある実験のーと

研究とか 写真とか 珈琲とか 山登りとか

(備忘録) ArduinoでDHCPサーバからIP貰ってtwitter投稿

凄く初歩的なことから始めてます。Lチカを無事終え、次にネットに繋ぎたくなりました。コードなどの備忘録として書き留めます。いじめないで下さい。

        f:id:azospiran:20170512213626j:plain

Arduinoをネットに繋ぐにはEthernetシールドが必要です。今回ケチったばっかりに、この互換シールドにはなんとMACアドレスが付与されていません。調べてみると、安いシールドを購入した場合は同じ状況みたいですね。対処法としては自分が保有している破棄するネットワーク機器に付随していたMACアドレスを流用するということが一番理にかなっているようです。個人の実験なんで・・・。互換Arduino本体と合わせても2000円強。価格崩壊です。

シールドの適用ってこんなに簡単なんですね。亀の甲に載せるようにArduinoに接続するだけでドライバのインストールもなにも要求されませんでした。むしろ本当に動いているかどうか心配になります。

Ethernetシールドの使い方は、これまた沢山の方が書いているのですが、基本的にはMACアドレスIPアドレスを自分で指定してあげる必要があるようです。ただ、IPアドレスに関しては易々と固定IPが頂けるような環境じゃなかったので、DHCPサーバから動的IPを頂くことにしました。これでこのシールドが動いているかどうかの確認も出来て一石二鳥です。以下のブログ様を参考にさせて頂きました。本当にここに載っているコードをコピペしてMACアドレスだけ編集しただけなのでコードは割愛します。

初心者だけど、一歩ずつ Arduino 超小型マイコン電子工作: ArdinoでDHCPを試してみる

シリアルモニタにローカルIPアドレスが表示されれば成功です。むむむ。簡単過ぎる・・・。

晴れてW.W.W.の大海原にアクセスする準備が整いました。

 

以下のブログ様を参考にしながら設定を進めていきます。

Arduino から Twitter へメッセージを送ってみた:息子と一緒に Makers:So-netブログ

 簡単に言うと、
① 使うtwitterアカウントで"Arduino"からのアクセスを許可し、tokenコードをゲットする。
② Tweet Library for Arduinoよりtwitter投稿用ライブラリをダウンロード、解凍し、ライブラリフォルダArduino/Librariesに投げ込む。
③ Sample codeをコピペして、IPアドレスDHCPサーバ経由で得られるよう、先ほどのコードと合体させArduinoに書き込む。数秒後に投稿される。

f:id:azospiran:20170512214217p:plain
実験用鍵垢に投稿してみました。

詰まったところ 
連続で同じ文章を投稿しようとするとtwitter側から弾かれて"403"エラーとなる。

 

・・・このくらいでしょうか。コピペで申し訳ないが本当に簡単。今度はこの機能で何かしらの計測値を定期的に呟くようにしてみようと思います。

以下が実際に使用したコード。***を自分設定に変える。

arduino_twitter_with_dhcp