最近,小学生からプログラミングが義務教育化されるということで話題になっていますが,世の中にはたくさんのプログラミング言語であふれています.
しかし,JavaやPHP,HTML,Cなど,何を選べばいいか分からない!という方が大半だと思います.
そこで「子供でもできるロボットプログラミング」というタイトルで,実際にロボットを動かすためのプログラミングを実践してみよう!というコンセプトでやっていきます.
具体的に何を用いるかというと,ロボットを動かすためには電気的な制御が必要になります.一番大事な部品はモーターです.
ロボットが動く部分はほぼモーターによって動いているといっても過言ではありません.また,ロボットには外の情報を把握するための様々なセンサーが必要になります.それも電気的な制御で用いることになります.
つまり,ロボットの脳である電気的な制御を作るのがプログラミングなんです.
目次
電気的な制御ってどうやるの?
電気的な制御と先ほど言いましたが,具体的には何を使うのでしょうか.
電気的な制御・・・響きがなんだかとっても難しそう.大丈夫です.世の中には制御を簡単にしてくれた沢山の先人達のおかげで簡単に制御を行うことができます.具体的に何を使うのかというと,
マイコンです.
マイコン?は?なにそれ,と思うかもしれません.マイコンとはマイクロコンピュータの訳で,ようは小さいパソコンということです.
しかし,パソコンと違って画面もキーボードもマウスもありません.そこでお手持ちのパソコンを使ってパソコンからプログラムを書き込むことによってマイコンを制御することができます.
新しいマイコンではIOTに特化していて,クラウドからプログラムを書き込めるので,スマホから無線でプログラムできるものもあります.
こんなものが作れる
マイコンの種類
では,どのようなマイコンがあるのでしょうか?
おすすめ度や難易度を自分なりにまとめたいと思います.
micro:bit
おすすめ度★★★★★ 難易度★☆☆☆☆ 拡張性★★★★☆
micro:bitはイギリスで作られ,12歳の子供に無料配布されたキャッチーな見た目のマイコンです.手のひらに収まるマイコンで,比較的新しく子供でもプログラミンがしやすいようにブロックをつなげるだけでプログラムを作れる教育用のボードです.日本のスイッチサイエンスという電子部品を販売している会社がmicro:bitを使った様々な拡張パーツを製造・販売していて,小さいながらも拡張性が高く直感的に扱いやすいマイコンとなっています.
しかし,教育用となっていて最低限の処理能力しかないため,画像処理やAIを使ったプログラムというような高度の計算を要するプログラムには適していません.
Arduino
おすすめ度★★★★★ 難易度★★☆☆☆ 情報量★★★★★
このマイコンはイタリアに2005年に作られたもので,電子工作をやっているほとんどの人は知っているくらい有名なマイコンです.
このマイコンは,歴史が比較的長く,多くの人が使っているためサンプルがとても沢山あります.そのため,プログラムが上手く動かなくなったりだとか,おもしろそうな作例を簡単に見つけることができます!実はサンプルが沢山あるということがとても重要です.
例として,あなたが突然ビルを作ることになります.その時に当然作り方を本や人に聞いて勉強しますよね?しかし世の中にビルを作っている人がほとんどいなければ自分の力だけで解決するしかありません.そんな状態でビルを作るなんて気力と膨大な時間が必要です.
やっぱり,ネットでちょっと調べるだけで沢山の情報があるマイコンがいいですよね.それがこのArduinoというマイコンです.
m5stack
おすすめ度★★★★☆ 難易度★★★☆☆ 拡張性★★★★★
m5stackは画像の通り,マイコンにディスプレイがついていて画面に何かを表示させたり,m5stackの裏面に拡張パーツを付けたりと,電気回路を考えずに簡単に拡張できるのが特徴です.
プログラムの開発環境はArduinoと同じで,Arduinoをある程度触ってからステップアップという形でこちらのマイコンに移るのが良いと思います.
このマイコンはBluetoothやWi-Fiにつなげることができるので,何かを遠隔操作したい!という時や,IOTを手軽に作りたい!という時におすすめです.
しかし,Arduinoをある程度触っていないと難しいところもあり,少し上級者向けの製品なので,自分の腕に自信があるという方にはおすすめです.
こちらが私が作った、クラウドとつなげてリアルタイムでスマホからセンサー情報を送ることのできるものです。
obniz
おすすめ度★★★☆☆ 難易度?
こちらのマイコンはIOTに特化した製品となっています.パソコンとつながなくてもスマホからプログラムをWi-Fiを通じて書き込むことができます.
筆者はまだ使用したことがないため,難易度はいまいち分からないですが,スマホはあるけどパソコンがない!という方におすすめです.
スマホだけでプログラムを書いてロボットを動かせるなんて魔法みたいで,学校で見せたらモテモテですね(笑)
まとめ
ここまで様々なマイコンをご紹介してきました.
結局どのボードが良いの?
私がおすすめするのはやはりArduinoだと思います.最近のマイコンボードの原点だからです.
Arduinoができればm5stackも使えるし,他の大体のマイコンも使えます.つまり次につなげやすいマイコンです.
ロボット作りに夢中になったら一生続ける趣味にもなるかもしれません.そこで初めにArduinoを学べば,可能性が無限大に広がります.
このシリーズでは最終的にArduinoを使ってロボットカーを自動制御するプログラムを作成することを目標にします.