2020-11-16に更新

【obniz】カムロボをブロックプログラミングでかんたんに動かす その1

本記事は2019/09/08に作成したものです。
最新の環境ではうまく動作しない可能性がありますのでご注意ください

プログラミング言語知識が疎くても大丈夫!
obnizとブロックプログラミングでとてもかんたんにカムロボを簡易ラジコン化できました。
スマホやPCで動かすだけでも楽しいよ。

2d12541c5dfc9d7ee64e2e16e0c26f7e.jpg

必要な部材

  • タミヤ カムプログラムロボット工作セット
    プラモデル初心者の場合、組み立てに結構時間かかります...
    なお、「プログラムバーギヤケース」はラジコン化すると使わない部品なので、組み立ては不要です。
    33c7f13a8682cea6801faa32e36c0410.jpg
  • obniz Board
    事前に初期設定しておいてくださいね

  • ジャンパーワイヤ(片側はオスのもの)

  • モバイルバッテリー(obniz Boardの電源)

カムロボとの接続

左右のモーターをobniz Boardに接続するだけです。電源はobniz Boardを通して供給されます。

回路図

f13e29d48b235d29b98d02dddc4c268f.png

接続例

ジャンパーワイヤとモーターの接続にはキボシ端子を使いました。キボシ端子がない場合はつないだジャンパワイヤがobniz Boardにショートしないように絶縁処理しましょう

01e9ae6ea441be712d6073c4a37d8e1a.jpg

ブロックプログラム

カムロボの前進・更新・左回転・右回転とモータ速度を2段階に変えられるようにしています。
2019/09/08現在のプログラムのため、最新のものとは画面やブロックが異なる可能性があります

UIとモーターの初期設定

ec020517012eea226bfe95e9efd53635.png

  1. UIにあるUIButtonの作成より、前・後・左・右・低速・高速のボタンと変数を作成します。
  2. 動くにあるDCMotorの作成より、左右モーターの変数とそれぞれをつないだピン番号を設定します。(カムロボが前後逆に動くときはforwardとbackのピン番号を逆にすればOK)

UIボタンが押された時の動作処理

UIとモーターの初期設定後に続けてブロックを組みます
767a53ae09a246e4c43e287b129f10c6.png

  1. ループにあるずっと 実行ブロックをモーターのブロックの下に組みます
  2. 論理にあるもしも true実行 他ブロックをずっと 実行ブロックの中に組みます
  3. もしも true実行 他ブロックの+をUIボタンの数だけ押して分岐条件を増やします
  4. もしものtrue部分にUIにあるナントカが押されているブロックを入れ、変数を前進用のものに変えます
  5. もしもの下に動くにあるナントカをナントカへ回転させるブロックを入れ、変数を前進用のものに変えます(要は左右のモーターが前に進む方向にすればOK)
  6. あとは後進・左・右に動くようにそれぞれ続いてブロックを入れていきます。
  7. モーター速度の変更ボタンは動くにあるナントカのパワーをナントカ%に設定するブロックを使います。(100%にするとモーターに5Vの電圧がかかりモーターの使用電圧範囲を超えてしまうので注意!ちなみに自分の環境では70%以下であれば3Vは超えませんでした)
  8. 最後の分岐条件に動くにあるナントカを止めるブロックを入れる(UIボタンから手を離したらモーターを止める処理)

ブロックプログラミング実行

スマホやPCからブロックプログラムを実行すると作成したUIボタンが表示されます。
前・後・左・右の動きが想定どおりにならない場合はモーターの初期設定のピン番号を反対にしてみてください。
速度切替ボタンを押すとモーターに加わる電圧が変化します。切り替え後にカムロボの前・後・左・右をすると速度が変化します。

cdfb18d0120bbfe661ddd2cc031ab2b2.png

ツイッターでシェア
みんなに共有、忘れないようにメモ

arohajiro

Qrunchから記事移行中です。。。

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント