Grove 情報検索ナレッジ
このページでは、センサーをはじめてつなぐので、ひとつの Grove センサーで、どのように情報をたどって、M5Stack につないでいくかを学んでいきます。
Grove PIR センサーを例にお伝えします。
センサー名称を把握
GROVE - ミニPIRモーションセンサ - スイッチサイエンス
まず、スイッチサイエンスさんの購入したページにアクセスしてセンサー名称を把握しましょう。
検索してみる → 今回は Google 検索
名称で ミニPIRモーションセンサ Wiki
というキーワードで出てきた Google 検索結果 です。
このように、うまく検索出来れば Seeed Studio 社の日本語の Wiki ページにたどり着きます。
その他にも、
- スイッチサイエンスのページ自体に Wiki のページがリンクされている
- 英語 Wiki の場合が多いがなんとかなる
- スイッチサイエンスのページから Seeed Studio の商品ページをたどって、ほぼほぼリンクされている使い方 Wiki ページに行く
- 例 : Grove - mini PIR motion sensor - Seeed Studio
- だいたい、使い方 Wiki があるって、すごいと思う
- Seeed Studio の商品ページを検索して、上記と同じく、ほぼほぼリンクされている使い方 Wiki ページに行く
- 英語ページ www.seeedstudio.com は情報がある。使い方リンクが英語。
- うまくいくと日本語ページもあります。メリットは使い方リンクが日本語になりやすい。
といった方法があります。今あげた方法を駆使すればだいたい見つけられます。
使い方 Wiki を参考にする
今回はこちらのページでした。 → Grove PIRモーションセンサー - Seeedウィキ(日本語版)
右の目次から Arduino の情報を探します。
ハードウェアから、デジタル・アナログ・I2Cといったつなぎ方をざっくり把握します。M5Stack では、後ほど紹介する裏面にあるピン情報と照らし合わせて、差し込むピンを決めます。
今回はデジタル入出力のつなぎ方と分かりました。
ソフトウェアから、実際に Arduino のソースコードがあります。これソースは M5Stack にかなりの部分、そのまま移植できるので効果が大きいです。私自身も、Grove で動かすときに毎回助かっています。
M5Stack に得た情報を置き換えていく
Seeed Studio 社のソースコードは Arduino UNO で動かすことを想定したものなので、M5Stack に合わせて探っていきます。
Grove コネクタ付近の刻印を見てつなぐ先をイメージする
Grove は、赤・黒・黄・白の4本の Grove ケーブルで、たくさんの複雑なセンサーの接続(デジタル・アナログ・I2C・SPI・UARTなど)をうまくまとめています。
このように、各センサーの Grove コネクタの刻印をみてみると、電流を供給する VCC + と GND - があり、NC は No Connect つながない。SIG はシグナル、今回の PIR センサーの場合はデジタルの ON OFF の信号が通ります。
Grove ケーブルを挿しこむと、赤・黒・黄・白の各カラーが対応しててわかりやすくなり、つなぐときの意識をサポートしてくれます。
このあたり、ブレッドボードやはんだ付けで回路をつくるばあいは、回路全体の電流の流れからつなぐ場所を意識することを考えると、かなり対応しやすいですね。
VCC GND に挿すピンを探っていきます
VCC GND に挿すピンを探っていきます。
M5Stack の場合、ピン番号が丁寧に書かれているので、追いやすいです。Grove の場合は、左側のピン穴に挿すものを使うことが多いので、こちらに注目します。
- 赤ケーブル
5V
- 黒ケーブル
- G
まず、電流を供給する VCC + と GND - はこうなることが多いです。
まれに 3V 供給のセンサーの場合は赤ケーブルの 5V のところを 3V3
に挿します。
Grove - mini PIR motion sensor - Seeed Studio
の場合は、
Techinical details の Supply Voltage が 3.3 - 5V なのでどちらでも行けますね。
SIG のつなぎ方を探っていく
電流の供給が M5Stack のピンに置き換えられたので、残りの NC と SIG に注目しましょう。ケーブルは、白と黄です。
今回、白ケーブルにあたる、NC は No Connect つなぎません。
黄ケーブルを見ていきます。SIG はシグナル、今回の PIR センサーの場合はデジタルの ON OFF の信号が通ります。
こういった情報も、Grove PIRモーションセンサー - Seeedウィキ(日本語版) に書かれているので確認しながら進めましょう。
今回は D2 (デジタル入力)なので、M5Stack の場合は、よく 2 か 5 を使います。
このあたりの置き換えのナレッジは私は以下を参考にしてます。
- m5-docs/gpio.md at master · m5stack/m5-docs
- もう少し深く知りたいとき
- M5Stackでできること 〜使用可能なデジタル入力端子 - MSR合同会社
- デジタル入出力がどこで使えるか迷ったとき
- らびやんさんはTwitterを使っています 「M5Stack GPIO表の記述の誤り…12,13,15はLCDでは使ってない。(14はLCDのCSで使用) あとG16,17はUARTのほかPSRAMで使用していると追記した方が良さそうな…。 https://t.co/2IY5JeAoe2」 / Twitter
- 進化し続ける M5STack ゆえに情報が追い付いてない悩ましさもあるが、M5Stack 好きな人たちが追っていて楽しい
他のつなぎ方にも対応する
デジタルだけでなく、今後、Grove センサーを購入したとして、アナログ・I2C・SPI・UARTなどつなぎ方にも対応するときに、私がどうしているかをシェアします。
私の場合、以下のドキュメントの、
M5-Schematic/M5-Core-Schematic(20171206).pdf at master · m5stack/M5-Schematic.pdf)
の図は結構分かりやすいので、ざっくりこのように読み取りながら使ってます。
- デジタル入出力
- Arduino 上で D ではじまるもの 例:D2
- M5Stack裏面の番号
- 2 , 5
- アナログ入力
- Arduino 上で A ではじまるもの 例:A0
- M5Stack裏面の番号
- 35 , 36
- アナログ出力
- Arduino 上で A ではじまるもの 例:A0
- M5Stack裏面の番号
- 25 , 26
- UART
- Arduino 上でつなぎ方を RX TX で表現される
- M5Stack裏面の番号
- 3 , 1 , 16 , 17
- 言葉そのものの参考資料(分からなくても使えます)
- I2C
- Arduino 上でつなぎ方を SDA(データ線) SCL(クロック線) で表現される
- M5Stack には Grove I2C ポートがあるのでそれを使うのがおススメ
- 言葉そのものの参考資料(分からなくても使えます)
- SPI
- Arduino 上でつなぎ方を MOSI MISO SCK SS で表現される
- 各センサーのつなぎ方をうまく置き換えて使う。いろいろある。
- 言葉そのものの参考資料(分からなくても使えます)
今回の講義前半では、私の方が上記を整えて、つなぎかたを反映していますが、もしみなさんが自分で Grove センサーを購入してつなぐ場合には、上記のナレッジも意識しつつ、試行錯誤してつなげてみましょう。
とはいえ、ブレッドボードやはんだ付けでセンサーや回路を一から組んでいくときと比べれば、Grove が応援してくれるところは多いです!うまく案内してくれるはずです!
次にすすみましょう
左のナビゲーションから次の教材にすすみましょう。