この記事では、ソニーのオンライン学習サービス「CREATE by KOOV」の体験内容を紹介します。
今回は「がくしゅうコース」>「はじめてのロボットプログラミング」>ステージ5「DCモーターで回転運動」です。
がくしゅうコース
ひとつずつ学びながらスキルを上げていくコースです。
はじめてのロボットプログラミング
ロボットの動きを観察しながら、アプリや電子パーツの使い方、プログラミングの方法を学びます。
ステージ5「DCモーターで回転運動」
DCモーターでトラクターを前後に動かしたり、スピードコントロールをします。
次の画像または目次をクリックすると読み飛ばしできます。
タップできる目次
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」でわかること
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」の説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-02-740x557.png)
ステージ5「DCモーターで回転運動」では、DCモーターでトラクターを前後に動かします。
また、動くスピードを段々遅くするプログラムも作成します。
何がどうなってプログラムでモーターが動くのかしら?
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina05-w.png)
さいな
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
実はそんなにむずかしくないんだよ。まずやってみよう。
今回はじめて使う部品は「DCモーター」です。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 DCモーターの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-03-740x557.png)
DCモーターは回転運動をさせたい時に使います。
DCは直流のこと。つまりDCモーターは乾電池などの直流電源で動くモーターの呼び名です。
DC以外にはACがあり、交流を意味します。
例えば、家のコンセントはACです。
プログラムからは「右回転」「左回転」を指示するので、取り付け方法によって前進、後退の向きが決まります。
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
ロボットつくるならモーターは必要!
KOOVブロックで組み立てたトラクターはこちら。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て完成 トラクター側面](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3315-740x493.jpg)
このトラクターには「赤外線フォトリフレクタ」や「ブザー」も組み込まれています。
やりがいのあるステージですね。
ステージ5「DCモーターで回転運動」には、次のミッションが用意されています。
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」をはじめる
ステージ5「DCモーターで回転運動」をはじめるための準備について説明します。
必要なもの
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」をはじめるには次のものが必要です。
- KOOVスターターキット・KOOVアドバンスキットのどちらか
- KOOVアプリがインストールされたパソコン
KOOVスターターキットはこちらです。
KOOVアドバンスキットはこちらです。
KOOVアプリを起動してステージ5「DCモーターで回転運動」を表示する
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」を行うには、次のステップで操作します。
- STEP
KOOVアプリを起動する。
- STEP
プレイヤーを選択する。
- STEP
「がくしゅうコース」を選択する。
- STEP
「はじめてのロボットプログラミング」を選択する。
- STEP
ステージ5「DCモーターで回転運動」を選択する。
下の図の「つぎのステージ」のところがステージ5です。だんにゃあ
トラクターの写真が目印だよ。
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」をやってみた
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3307-740x493.jpg)
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」には次の4つのミッションがあります。
ミッション1 トラクターを組み立てよう
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-01-740x557.png)
ミッション1は「トラクターを組み立てよう」です。
KOOVブロックで「トラクター」を組み立てる。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 ミッションのゴール](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-02-740x557.png)
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」で、はじめて使う電子パーツはこちらです。
- DCモーター
では、トラクターを作っていきます。
準備するパーツはこちら。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 準備するパーツ1](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-04-740x557.png)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 準備するパーツ2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-05-740x557.png)
- キューブ レッド × 14
- キューブ ホワイト × 2
- ハーフB イエロー × 8
- ハーフC ブルー × 8
- ハーフC オレンジ × 20
- ハーフD パープル × 1
- 三角 イエロー × 10
- 赤外線フォトリフレクタ × 1
- ブザー × 1
- DCモーター × 1
- 回転軸 × 2
- DCモータージョイント × 2
- コア(本体) × 1
- バッテリーボックス × 1
- ベーストレー × 2
- 3芯ケーブル(20cm) × 2
実物のパーツはこちらです。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 準備するもの1(実物)](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3304-740x493.jpg)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 準備するもの2(実物)](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3305-740x493.jpg)
説明アニメーションを見ながら組み立てていきます。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て方アニメーション1](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-06-740x557.png)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て方アニメーション2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-07-740x557.png)
アニメーションは視点を変えることができるので、どんどん作ることができます。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て1 センサーにケーブルを挿すところ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3306-740x493.jpg)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3307-740x493.jpg)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て3](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3308-740x493.jpg)
何回かブロックの向きを間違えてやり直したわ。
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina03-w.png)
さいな
DCモーターもブロックと接続できるようになっています。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て4](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3311-740x493.jpg)
完成!
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina04-w.png)
さいな
正面の写真はこちら。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て完成 トラクター正面](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3317-740x493.jpg)
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
トラクターっぽい!
バッテリーボックスが屋根になっていますね。
前面には赤外線フォトリフレクタが付いています。
横から見るとこんな感じ。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て完成 トラクター側面](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3315-740x493.jpg)
底から見るとこんな感じ。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て完成 トラクター底面](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3316-740x493.jpg)
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
DCモーターは底面に付いているよ。
後輪タイヤをDCモーターで回すしくみです。
背面はこちら。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 組み立て完成 トラクター背面](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-IMG_3318-740x493.jpg)
ブザーは背面に付いています。
トラクターが完成したので、ミッション1は終了です。
バッジをゲットしました。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション1 ゲットしたバッジ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m1-09-740x557.png)
ミッション2 DCモーターを使ってみよう
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-01-740x557.png)
ミッション2は「DCモーターを使ってみよう」です。
DCモーターを使って車を前後に動かします。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 ミッションのゴール](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-02-740x557.png)
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
ミッション1で組み立てたトラクターを使うよ。
いよいよタイヤを回すのね!
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina06-w.png)
さいな
プログラムのイメージはどんな感じでしょう?
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 プログラムのイメージ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-03-740x557.png)
単純に前進させた後、後退させる動きのようですね。
DCモーターを制御するには、次の2つのプログラミングブロックを使います。
- 回転の速さを決めるプログラミングブロック
- 指定した方向にモーターを回転するプログラミングブロック
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 「DCモーター -- のはやさを○にする」ブロックの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-04-740x557.png)
単位のない値で指定するので、動かして速さを調整するのがいいですね。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 「DCモーター -- をみぎかいてん」ブロックの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-05-740x557.png)
回転は「みぎかいてん」と「ひだりかいてん」で指示します。
では早速プログラミング!
まずは前に進むだけのプログラムをつくって動かします。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 プログラミング画面1](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-06-740x557.png)
動いたわ!
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina06-w.png)
さいな
とりあえず、タイヤは回転しました。
しかし、テーブルの上だとすべって進みづらそうでした…。
ここから、くり返し前後するプログラムへ変更していきます。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 プログラミング画面2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-07-740x557.png)
速さを決める処理は最初の1回だけ行います。
トラクターを前後する処理は「ずっと」プログラミングブロックでくり返し行います。
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
最初だけ行う処理を「初期化処理」と呼ぶよ。
トラクターをくり返し前後に動かすことができました。
これでミッション2は終了です。
バッジをゲットしました。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション2 ゲットしたバッジ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m2-09-740x557.png)
ミッション3 DCモーターとセンサーを連動させよう
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション3](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m3-01-740x557.png)
ミッション3は「DCモーターとセンサーを連動させよう」です。
トラクターの前進と後退を赤外線フォトリフレクタの値でコントロールするプログラムをつくります。
また、ブザーを使って車のバック音を追加します。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション3 ミッションのゴール](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m3-02-740x557.png)
バック音をならすのね!
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina06-w.png)
さいな
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
本物っぽいでしょ?
やることがだんだん増えてきましたね。
プログラムのイメージはどんな感じでしょう?
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション3 プログラムのイメージ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m3-03-740x557.png)
なるほど。
赤外線フォトリフレクタの値で前進するか後退するか判断して、その後、それぞれの動きを行うということですね。
イメージは簡単でも作るのはむずかしいわ。
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina03-w.png)
さいな
とにかくプログラムを作っていきます。
今回新しく使うプログラミングブロックは「○になるまでくりかえす」です。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション3 「○になるまでくりかえす」ブロックの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m3-04-740x557.png)
できたプログラムはこちら。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション3 プログラム](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m3-05-740x557.png)
ぱっと見は複雑に見えるかもしれませんが、「もし」や「くりかえし」に分解して考えるとわかりやすくなりますね。
このプログラムは、赤外線フォトリフレクタの値を確認し衝突しなければ前進します。
衝突しそうならバックさせます。バックする時は、ある程度離れるまでブザーをならし続けます。
説明するとそれだけですね。
プログラムはちょっとむずかしいけど、動いたり音がなったりで楽しいわ。
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina06-w.png)
さいな
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
進む速さを変更したり、音を変えたりしてもおもしろいかもね。
これでミッション3は終了です。
バッジをゲットしました。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション3 ゲットしたバッジ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m3-07-740x557.png)
ミッション4 変数にチャレンジしよう
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-01-740x557.png)
ミッション4は「変数にチャレンジしよう」です。
車のスピードを少しずつ落とし、最終的に車が停止するプログラムを変数を使ってつくります。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 ミッションのゴール](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-02-740x557.png)
プログラムのイメージを確認します。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 プログラムのイメージ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-03-740x557.png)
速さを3秒ごとに遅くするということですね。
変数?
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina05-w.png)
さいな
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
変数は「へんすう」と読むんだ。
値を入れておく入れ物だと思ったらいいよ。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 変数の説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-04-740x557.png)
変数を使うブロックは次の3つが用意されています。
- 「へんすう –」
変数の値を参照したいときに使います。 - 「へんすう — を ○ にする」
変数の値を変更する時に使います。 - 「へんすう — を ○ ふやす」
変数の値を増やしたり減らしたりする時に使います。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 「へんすう --」ブロックの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-05-740x557.png)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 「へんすう --を○にする」ブロックの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-06-740x557.png)
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 「へんすう --を○ふやす」ブロックの説明](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-07-740x557.png)
変数を使うには最初に変数を作ります。
変数パレットの「へんすう」を押し、変数の名前をつけます。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 へんすうの名前入力](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-15-740x557.gif)
変数の名前を入力すると、3種類のブロックが表示されます。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 へんすうを使ったプログラム1](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-10-740x557.png)
まず変数の値を決めるために「へんすう — を ○ にする」ブロックを使います。
今回は50に設定します。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 へんすうを使ったプログラム2](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-11-740x557.png)
こんな感じで変数ブロックを使って、段々速さが遅くなるプログラムを作っていきました。
できたプログラムはこちら。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 へんすうを使ったプログラム3](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-12-740x557.png)
このプログラムのポイントは次の点です。
変数を使わなかった場合にどうなるか考えてみると、速さを50、40、30、20、10と変えていく時に、全ての数字をプログラムに書かなければいけないです。
また、この場合くり返しを使ってプログラムを書くのは難しそうですね。
プログラムが長くなりそう。
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina06-w.png)
さいな
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
くり返し処理を使うと自然に規則性のあるプログラムになってくるからミスが減ったり、考えが整理されたりするんだよ。
もう一つ、変数には名前をつけるので、何のための値なのかプログラム上でわかりやすくなるのもいいところです。
変数を理解するのは簡単かもしれませんが、プログラミングで活用するのは経験が必要ですよね。
慣れるまでがんばりましょう。
それにしても、説明にそって作ったこのプログラム、さらっと「初期化処理」や「終了処理」も入っています。
この辺り、プログラミングでは基礎として重要ですよね。
KOOVはお手本になる良いプログラムを見せてくれる良い教材だと思いました。
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
良いプログラムを見るのはとても勉強になるよ。
さて、動作を確認しミッション4は終了です。
バッジをゲットしました。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ミッション4 ゲットしたバッジ](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-13-740x557.png)
全てのミッションをクリアしたのでステージクリアです。
![【KOOV】はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」ステージクリア](https://dan-nya.com/wp-content/uploads/2021/05/first-robot-prg-s5-m4-14-740x557.png)
はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」のまとめ
今回は、ソニーのオンライン学習サービス「CREATE by KOOV」の、はじめてのロボットプログラミング ステージ5「DCモーターで回転運動」の体験内容を紹介しました。
ステージ5「DCモーターで回転運動」では、DCモーターでトラクターを前後に動かしたり、段々速度を下げるスピードコントロールをしました。
できること増えてきた!
![さいな](https://dan-nya.com/wp-content/uploads/2020/08/saina06-w.png)
さいな
![だんにゃあ](https://dan-nya.com/wp-content/uploads/2020/08/dan-nya06-w.png)
だんにゃあ
変数も学んだね。
次のステージは「サーボモーターのせいぎょ」です。
【KOOV】はじめてのロボットプログラミング ステージ6「サーボモーターのせいぎょ」
前のステージ「きょりの検知と音の表現」の記事はこちらです。
【KOOV】はじめてのロボットプログラミング ステージ4「きょりの検知と音の表現」
「CREATE by KOOV」公式サイトはこちらです。