今日も知らない街を歩くスマートフォン用の表示で見る今日も知らない街を歩く雑記に近い形でちまちま書いていきます。会社で、はじめてのIoTの工作をやる人向けのハンズオン講座をやると言う話を聞いたので参加した。Arduinoを用いてモーターを回したり温度センサーからデータを取得する、ということをするらしい。仕事でIoTの話が出てくることが増えたこともあり、一度自分で簡単なもので良いから作って理解しようと試みたことは会ったのだけど、ハードウェアの知識が全く無く、配線がさっぱりわからず挫折していたので、講師にわからないことを聞けるという環境はとてもありがたい。今回利用するIoTキット。中央にArduinoがある他、電池やモーター、温度センサー、そして天敵の配線*1がたくさん。Create」で開発することに。Pluginのダウンロード・インストールこそ必要だけど、それさえ完了させればブラウザでソースコードを書いて実際のArduinoに書き込みできるので、とても便利。Createにアカウントを作って開発環境をセットアップ。ハンズオン資料に沿って必死にブレッドボードに線を刺してモータやArduino・電池を繋いでゆく。一通りつなぎプログラムを実行したけど、(予想はしていたけど)動かない。配線間違っているのかなと何度も見直しても、違いがわからない。プログラムを見ると違和感が。コートをArduinoの7番ピンに刺しているのに、定数が何故か9番を代入している。思い7番に修正しコンパイルした瞬間、モーターが動いた!モーターに繋いでいた羽が勢いよく指にぶつかっていたかった...。ここまでくればプログラムをいじって動作の違いを検証できるので、羽を逆回転にしたり、動作と停止の間隔を変えてみたり。エクストラとして、温度センサーとLEDランプの動作。温度センサー自体は原始的な作りなので内部で計算して割り出していることも有り、取得できる温度データはあくまでおおよその値。それでも、温度センサーに指で触れると2,3度はすぐに上がるので、最初の工作としてはこれで十分。「温度が29度以上になったらLEDランプを点灯させ、モーターを回転させる、29度未満はLEDランプを消灯しモーターを止める」というシンプルな工作で、ランプを光らせている所。プログラム的には単純だけど、例えば、サーバーが加熱し過ぎないように監視するためのプロトタイプモデルと言えなくもない。「どういう時にどんな動作をさせるか(させないか)」が決めてそれが実現できれば、プロトタイプを作ることはできること理解した。余談だけど、これをTwitterに投稿したら爬虫類を飼っている方からすごいというお褒めの言葉を頂いた。確かに熱帯魚など、温度管理をしないといけないペットは少なくない。そもそも、普段燻製をするときも温度管理が面倒くさいなと感じている。温度に関する切り口で考えると、何かを作るヒントがあるかもしれない。「今回の内容はIoTの初歩の初歩」とのことで、まだまだ先は長いのは間違いない。それでもArduinoに関しては理解が進んだし、大の苦手だったハードウェアについても、ちょっとだけ理解するためのとっかかりができてとても良かった。具体的に何を作りたいかイメージはできていないのだけど、もう少し深掘りして何かと連携させてできたらきっと楽しい。それまでは学習を続けたい。*1:クリップみたいにつまむやつ、名前が合ったのだけど忘れてしまいググってもわからずじまいです...。昨日からUbuntuを学習しています。料理テーブルゲームはてなブログをはじめよう!TownBeginnerさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。