22 8月 その十一・BASICで楽勝!「サーボ」
みなさまこんにちは、アンドウくんデス。
今回は「サーボ」を動かしてみましょう!
サーボが使えるようになれば、カンタンにロボットが作れるようになりますヨ!!
前回のおさらいをかねて、まずはLEDをOUT3とOUT4につないでみましょう。
何度か説明しているので、LEDの使い方は省略(しょうりゃく)しまーす。
LEDをつないだら、ちゃんと光るか確認してください。
もし光らなかったらLEDの極性(きょくせい)が逆か、ケーブルが外れていないかチェックしてください。
左がOUT3、右はOUT4につながっています。
ちゃんと点灯したら、
OUT 3,0(ゼロ)
OUT 4,0
と入力しLEDを消してください。
今度はPWM(ピー・ダブリュー・エム)という命令を使ってみましょう。
ちょっと長いけどマチガエないように入力してくださいネ。
すると、
左のLEDは明るいのに、右のOUT4側は暗いですね。
でもこれで正常で~す。
OUT3と4のピンは、それぞれPWMという機能も持っています。
OUTかPWMかの命令を変えるだけで、使い分けられるんですよ。
PWMは、
・PWM番号
・電気を流す時間
・全体の時間 … 省略(しょうりゃく)すると自動的に2,000になる
の3つを指定します。
2つのLEDの明るさが違ったのは、「電気を流す時間」の数を変えて指定したからです。
「時間」は、指定した数×0.01ミリ秒(=10万分の1秒)となり、0から2,000が指定できます。
合計時間に2,000を指定してもたったの0.02秒、1秒間に50回も電気をオン/オフできるんですよ!
それでは2つのサーボを動かしてみましょう!
・茶 … GND(グランド)
・赤 … 5V(ボルト)
につなぎ、オレンジの「信号」は先ほどのOUT3と4に接続します。
PWM 3,1000,2000 のように指定すると、ホーンの角度が変わります。
でもこれだけではツマラないので、角度を少しずつ変えるプログラムを作ってみましょう。
FOR(フォー)という命令を使えばカンタンにできますヨ!
FOR文では「スタート」と「ゴール」の2つの数を指定します。
変数(へんすう)は「数の入れ物」と考えてください。
I(アイ)に入る数は1から始まり、2,3,4と1ずつ大きくなり、10になるまで繰(く)り返します。
FOR文は、かならずNEXT(ネクスト)といっしょに使います。
この例(れい)では、I(アイ)には1が入った状態(じょうたい)でスタートします。
20~40行目の命令を実行し50行に着いたら、10行目のFORに戻(もど)ります。
するとIに入る数は1つ大きい2になり、2周目を実行します。
ゴールに指定した数が10なので、10周目はNEXTまで来てもFORに戻らず次の行に進みます。
カンタンですね!
100~150行は逆(ぎゃく)向きに動かすプログラムです。
100行目にSTEP(ステップ)が増えましたネ。
これは数の増(ふ)え方を1以外にしたいときに、
・STEP 10 … 1,11,21と10ずつ増える
・STEP -1 … 10,9,8のように1ずつ減る
と使います。
50~90行で60から210まで増やしたので、100-140行では210から60まで1ずつ減らしているのです。
RUN(ラン)で実行すると、こんな感じで動きま~す!
ネット通販で激安(げきやす)のサーボを買ったところ、精度(せいど)の低いコピー品でした…
本当は、Iは50から240、20~30行目で中央を指定する数は145なのですが、この値(あたい)ではちゃんと動きませんでした。。。
まぁ実験なので、これで良しとしますね。
オマエら~、いや、みなさん!
オレ様がいないところで、なに楽しそうなことやってるんダ~!!
だ、誰ですか!あなたは!!
もしや、その声は!
そうだ~、オレ様がバンドウくんだ~!!
オレ様を知らないなんて、おまえモグリだな~っ??
バンドウくん?
なんかコワそう…
バンドウくんはアンドウくんシリーズのプロトタイプ、つまり兄さんじゃ。
完成してすぐに「自分探しの旅」に出てしまったのじゃよ。。。
そうだ~!
オレ様が帰ってきたからには、オマエら、いや、みなさんの好きにはさせないゾ~!
「ビギ電部」の看板(かんばん)はもらっていくからな!
看板って、道場(どうじょう)破りですカーッ!!
「続く」