プログラミングで命を吹き込む!ボール型ロボットを自動走行させてみよう

サイエンストレーナーの桑子研です。毎日が実験。

ボール型ロボットSpheroを使って授業や家庭でプログラミングをするためのヒントについてお届けします。まるで魔法の水晶玉のように、自分の意思を持っているかのように転がり回るボール型ロボットをご存知ですか?その名は「Sphero(スフィロ)」。今回は、この小さなロボットを使って、まるで最新の自動運転車やお掃除ロボットのような動きを再現するプログラミングに挑戦してみました。

たったこれだけ!驚くほどシンプルなプログラム

自動運転と聞くと「難しそう……」と感じるかもしれませんが、実はプログラムの構造はとってもシンプルです。今回作成したのはこちら。

仕組みを解説しましょう。まず「スタート」を押すと、Spheroが一定のスピードで元気に走り出します。そして、壁や障害物に「衝突した瞬間」に、進む方向(AIM)をリセットして「135°の方向」へ向ける、という命令を出しているだけなのです。

なぜ「135度」が魔法の数字なの?

Spheroにとって135°という方向は、今まで進んでいた方向から見て「斜め後ろ」にあたります。

ぶつかるたびにこの命令が実行されることで、Spheroは壁に当たると「おっと失礼!」と言わんばかりに方向転換し、また新しい道を見つけて進み続けます。この動きの積み重ねが、まるで迷路を攻略しているかのような「賢い動き」に見えるのです。

科学の目で見ると?センサーが「衝撃」をキャッチ

Spheroの内部には、加速度センサーという精密な装置が備わっています。これがお掃除ロボットと同じように「ガツン!」という衝撃を感知し、プログラムに「今ぶつかったよ!」と信号を送っているのです。最新の自動運転車はレーザーやカメラを使って「ぶつかる前」に避けますが、このSpheroは「ぶつかった後」の処理を工夫することで、部屋中を自由に探索できるようになっています。

実際に動いている様子はこちら

実際にプログラムを動かしてみると、そのキビキビとした動きに愛着が湧いてきます。ぜひ動画でチェックしてみてください。

(なお、Sphero SPRK+などのモデルはセンサーの感度が高く、よりキビキビと反応してくれるので、本格的な実験にはこちらがおすすめです!)

プログラミングの答えは一つではなく、複数あります。違う方法、センサーをつかって自動運転を組むというプログラムも紹介します。次のようにプログラムをしてみましょう。

前回と違うのは衝突時の命令です。前回紹介したものと比べてみましょう。

衝突時にこのプログラムの場合には、現在の方向をセンサーデータから読み取り、その方向に+135°を足すと言う方法で、衝突時に後ろに進むように命令を組んでいます。前回は方向を一度ゼロにしてから向きを再度設定しています。どちらも同じ動きをします。

プログラミングは、こうした「もし〜したら、〜する」という条件の組み合わせでできています。皆さんもぜひ、自分だけの「賢いボール」を作ってみてくださいね。

お問い合わせ・ご依頼について

科学の不思議やおもしろさをもっと身近に!自宅でできる楽しい科学実験や、そのコツをわかりやすくまとめています。いろいろ検索してみてください!
・科学のネタ帳の内容が本になりました。詳しくはこちら
・運営者の桑子研についてはこちら
・各種ご依頼(執筆・講演・実験教室・TV監修・出演など)はこちら
・記事の更新情報はXで配信中

科学のネタチャンネルでは実験動画を配信中!

3月のイチオシ実験!

  • 押し花を作ろう!:梅や桜の花の押し花を作ってみましょう。特別なケースに入れると、長く保存できて、しおりにもなります。

テレビ番組・科学監修等のお知らせ

書籍のお知らせ

講師・ショー・その他お知らせ

Explore

  • 楽しい実験…お子さんと一緒に夢中になれるイチオシの科学実験を多数紹介しています。また、高校物理の理解を深めるための動画教材も用意しました。
  • 理科の教材… 理科教師をバックアップ!授業の質を高め、準備を効率化するための選りすぐりの教材を紹介しています。
  • Youtube…科学実験等の動画を配信しています。
  • 科学ラジオ …科学トピックをほぼ毎日配信中!AI技術を駆使して作成した「耳で楽しむ科学」をお届けします。
  • 講演 …全国各地で実験講習会・サイエンスショー等を行っています。
  • About …「科学のネタ帳」のコンセプトや、運営者である桑子研のプロフィール・想いをまとめています。
  • お問い合わせ …実験教室のご依頼、執筆・講演の相談、科学監修等はこちらのフォームからお寄せください。