paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。

PC・スマホのブラウザでAIロボット開発!obnizを活用した「AI Robot Kit」で遊んでみた!

f:id:paiza:20190417113150j:plain
どうも、まさとらん(@0310lan)です!

今回は、Wi-Fiに接続するだけでPCやスマホからIoT開発が可能になるobnizを利用して、AI技術を使ったロボット作りを楽しめるキットをご紹介します。

初心者から上級者まで幅広く楽しめる工夫がされており、クラウド開発環境も無料で利用可能になっているのですぐにでもロボット開発を楽しめます。

IoTやロボットなどにご興味のある方は、ぜひ参考にしてみてください!

AI Robot Kit

f:id:paiza:20190417113229j:plain
 

■「AI Robot Kit」を組み立てよう!

それでは、まず最初にAIロボットを組み立てるところから始めていきましょう!

キットの箱はこんな感じのパッケージです。

f:id:paiza:20190417113258j:plain


箱を開けると、組み立てに必要なパーツやobniz本体が入っています。

f:id:paiza:20190417113337j:plain


組み立て作業を始める前に、箱に記載されているQRコードをスマホで読み取りましょう。

f:id:paiza:20190417113352j:plain


すると、説明書代わりとなる詳細なレッスンガイドのWebサイトが表示されます。

f:id:paiza:20190417113405j:plain

このサイトでは「AI Robot Kit」を使ったさまざまな遊び方が公開されています。

また、組み立てに関しては動画で1つずつ丁寧に解説してくれているので誰でも簡単に作業ができるはず!


ロボットの本体は段ボールでできており、以下の3種類だけのシンプルな構成です。

f:id:paiza:20190417113423j:plain


まずは、あらかじめ切り抜かれている箇所を外していきます。

f:id:paiza:20190417113439j:plain


穴に合わせてロボットのタイヤをはめ込みます。

f:id:paiza:20190417113450j:plain


反対側からタイヤを動かすためのモーターを取り付けます。

f:id:paiza:20190417113505j:plain

同じ要領でもう1つのタイヤも組み立てましょう。


そして、3種類の段ボールを1つにまとめることでロボットの本体が完成します!

f:id:paiza:20190417113521j:plain


2つのタイヤだけだとバランスが取れないので、ローラーを取り付けるためのマジックテープを貼ります。

f:id:paiza:20190417113535j:plain


このローラーとタイヤでロボットは自由に動くことができるわけです。

f:id:paiza:20190417113549j:plain


ロボットの裏側はこんな感じになります!

f:id:paiza:20190417113602j:plain


次に、付属の距離センサーを取り付けるために両面テープを2箇所に貼ります。

f:id:paiza:20190417113612j:plain


取り付け箇所はタイヤの後ろ側になります。

f:id:paiza:20190417113626j:plain


最後にobniz本体を取り付けるのですが、それぞれのタイヤをケーブルで接続します。

f:id:paiza:20190417113638j:plain


左側のタイヤは0番・1番に接続します。

f:id:paiza:20190417113655j:plain


同様に右側のタイヤは10番・11番に取り付けて、距離センサーを7(赤)・8(黒)・9(黄)番に接続します。

f:id:paiza:20190417113707j:plain


最終的にロボットの後ろ側はこんな感じになりました。

f:id:paiza:20190417113722j:plain


あとは、obnizの電源を入れるためにモバイルバッテリーなどを使ってMicro USBで接続すれば完成です!

f:id:paiza:20190417113734j:plain


なお、obnizの電源投入方法やWi-Fi接続、オンラインエディタによるプログラミング方法などの基本的な使い方については次の記事で詳しく解説しています。
ぜひ合わせて参考にしてみてください!

paiza.hatenablog.com
 

■ロボットをリモート制御で動かしてみよう!

obnizは標準でPC・スマホで利用可能なクラウド開発環境が提供されているので、面倒なサーバの準備であったり開発環境の構築といった作業は一切不要なのが特徴です。

そこで、先ほど完成したロボットをまずは簡単な手順で動かしてみましょう!

obnizの電源を入れてWi-Fiに接続し、公式サイトにログインしてから上部メニューにある「ブロックプログラム」を選択します。

f:id:paiza:20190417113822j:plain


するとブロックエディタが起動します。

f:id:paiza:20190417113837j:plain

このエディタでは、Scratch感覚でビジュアルプログラミングをおこなうことが可能で、特にIoT開発を効率よく進められるブロックが豊富にそろっているのが魅力的です。

JavaScriptによるプログラミングも可能となっています。JavaScriptはpaizaラーニングの「JavaScript入門編」で学ぶことができます。そちらも合わせてチェックしてみてください。


今回のロボットで必要な処理の流れとしては以下の通りです!

obnizに接続

Web上にボタンを配置

AI Robot Kitに接続

ボタンに対応した動作を設定

この流れに合わせたブロックをエディタ上に配置するだけで、すぐに動くロボットをプログラミングすることができます。


基本的なブロックの配置としては以下のようになります。

f:id:paiza:20190417113957j:plain

今回の例では「すすめ」という名前のボタンを配置して、そのボタンを押している間はロボットが前進し離すと止まるというプログラムになります。


ちなみに、関数を作ることも可能なのでボタンに合わせた動作の部分だけ切り離して、プログラムの可読性を高めることもできるので便利です。

f:id:paiza:20190417114019j:plain


プログラムができたら画面右上にある「実行」ボタンをクリックします。

f:id:paiza:20190417114031j:plain


すると、実行画面に「すすめ」というボタンが配置されているのが分かります。これをタップするとロボットが前進するというわけです。

f:id:paiza:20190417114044j:plain


もちろん、スマホのブラウザからでも実行できるのでラジコンのような体験がすぐにできます!

f:id:paiza:20190417114058g:plain

(※公式動画はこちら

複数のボタンを配置することも可能なので、前進だけでなく右回転・左回転・後退などのボタンを配置すればロボットを自在に動かせます。


ちなみに距離センサーもブロックを配置するだけですぐに活用することができます。

f:id:paiza:20190417114206j:plain

距離を取得できるブロックがあるので、これを条件分岐と組み合わせればよいわけですね。

このようにブラウザ上にUIを構築して、それに対応した動作をプログラミングするだけでロボットを自在にコントロールできるのは非常に魅力的と言えるでしょう。


<参考リンク>

 

■AIによる顔認識機能を活用してみよう!

ロボットを制御できるようになったところで、今度はAIによる顔認識機能を試してみましょう!

これはスマホのカメラをロボットの「目」にして、人間の顔を認識したら何らかの処理を実行させることができます。

一般的にこのような処理を実現するのは大変なのですが、AIに関連した便利なブロックがいくつか用意されています。たとえば、「カメラを準備する」というブロックを見てみましょう。

f:id:paiza:20190417114256j:plain

たった1つだけのブロックなのですが、これを配置するだけでスマホのカメラを起動させて映像をブラウザ上に表示するところまで実現できます。


さらに、「カメラに顔が写っている」というブロックを条件式に組み込むだけで、スマホのカメラに顔が写り込んだ瞬間に処理を実行させることも可能になります。

f:id:paiza:20190417114313j:plain

上記の例だと、顔が写った瞬間にロボットを前進させて写らなくなったら止まるという処理になります。


こうすることで、ロボットが自分のほうに近寄ってきてくれるのです。

f:id:paiza:20190417114335g:plain

(※公式動画はこちら

顔の移動量も計測できるので、人間が動いた方向へどこまでも追いかけてくれるロボットも簡単に開発可能です。

JavaScriptによるプログラミングができる方であれば、GoogleのCloud Visionを利用した画像認識やTensorflow.jsを活用したモノの識別なども実現することができるので活用範囲は非常に広いでしょう。

■動画でプログラミングが学べるpaizaラーニング


動画でプログラミングが学べるpaizaラーニングでは、Python、Java、C言語、C#、PHP、Ruby、SQL、JavaScript、HTML/CSSなど、プログラミング初心者でも動画で学べる入門レッスンを公開しています。

Python入門編」「C#入門編」「ITエンジニアの就活準備編」といった人気講座も完全無料となっておりますので、プログラミングを学びたい方・ITエンジニアを目指したい方はぜひごらんください。

■まとめ

今回はobnizでAIを利用したロボットキットを駆け足でご紹介しました!

誰でも簡単に自分のスマホからロボットを制御できるというのは非常に楽しくて、一般的な電子パーツを組み合わせれば可能性はさらに無限に広がります。

ロボット以外の用途にも活用できるので、まさにアイデアしだいという感じでしょう。

これからIoT開発を学習したい人はもちろん、すでに開発をおこなっている中級者以上の方でも楽しめると思いますのでぜひ試してみてください!


<参考リンク>





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック





※このブログで紹介しているキャンペーンやイベント、およびサイト内の情報については、すべて記事公開時の情報となります。閲覧されたタイミングによっては状況が変わっている場合もございますのでご了承ください。

ITプログラマー・エンジニア転職・就活・学習のpaiza

プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編AI機械学習入門

エンジニアのためのプログラミング転職サイト|paiza転職

プログラミング スキルチェックエンジニア求人一覧

未経験からエンジニアを目指す人の転職サイト|EN:TRY

プログラミング スキルチェックエンジニア未経験可求人一覧

エンジニアを目指す学生の就活サイト|paiza新卒

プログラミング スキルチェックエンジニア求人一覧

ブラウザを開くだけで エディタ、Webサーバ、DB等の開発環境が整う|PaizaCloud