プログラミング 小ネタ集 その10

2021.1.26

Arduino、IchigoJamとScratchを初めてもう6年目です。いろいろと面白い局面に遭遇しています。たとえば、アナログとデジタルです。今はデジタル全盛ですが、先人の諸賢は今から30~40年前にデジタルに戦いを挑みましたがその努力は今も生きています。今回は番外編です。プログラミングをし始めると

  ①LEDの点灯・消灯

  ②音を出す

  ③モーターを回す

と進んで行きますが・・・ドンドン難しくなりあるところで挫折・・・

というコースが待っています。

 例えば③のすぐ先に④サーボモーターへの挑戦があります。このstepをクリヤーしないと子供たちの好きなロボット作りには進めません。もちろんライブラリーを使えば簡単ですが、自分でプログラムを作るのは無理です。そこでまず、アナログでサーボモーターを動かすことに挑戦しました。すぐに浮かぶのがIC-555を使う方法です。残念ながらIC-555は普通の方法ではduty比を50%未満にはできません(写真1参照)。

ネタ10-2.jpg

写真1 普通の場合のIC-555の出力波形

秋月の説明をよく読むと通常の使い方にくわえて100k?の抵抗と並列にスイッチングダイオード(たぶんショトキーダイオードでも可能か?)を入れるとduty比を下げることが可能に(図1)!写真2はオシロの波形ですがDuty比が小さく成っているのがわかります。この波形をサーボモーター(SG-90等)に入れると回転が可能になります。ボリュームの代わりにプッシュボタンスイッチを使うとボタンで左右にアームを動かすことができます。また回転サーボ(FS-90R等)を使うと強力なランドクルーザーもできます。1か月くらいかかりましたが何とか作品(加藤ロボット1号)ができました。大がかりなのは、頸振りにサーボモーター使い、声をVoice Recorderで再生するためです。次回はScratch3とArduinoを使い拡張モードで簡単にサーボモーターを動かす方法を紹介します。

ネタ10-1.jpg

図1 回路図

ネタ10-3.jpg 

写真2