最近のトラックバック

倒立振子ロボット製作記その13:新たな問題が浮上(・・;)

P1143694  昨日、新作ロボットを起動してみたところ新たな問題が浮上しました。前回、モーターを駆動した際にマイコンがハングアップする原因として当初はモーターから発生するノイズが原因と考え、モーター端子間にパスコンを入れて対策を施しました。ところが今日になって駆動テストを行ってみると再び同じ現象が発生します。どうやらマイコン自体がハングアップするのは別に原因がありそうです。駆動テストを繰り返すうちにハングアップするのは特定の電源を用いたときに発生することが分かってきました。特定の電源とはモバイルバッテリーです。モバイルバッテリーからマイコンとモーター用の電源を同時に用いると発生します。ハングアップすると同時にモバイルバッテリーからの電源供給も止まっています。しかもモーターの回転方向が切り替わる瞬間にハングアップすることを確認しました。モーターの回転方向が切り替わる瞬間には小型モーターと言えどかなりの大電流が発生するはずです。推測するとおそらくこのモバイルバッテリーには過電流防止回路が組み込まれているような気がします。使っているモバイルバッテリーは電流容量がおよそ3Aのやつです。ラズパイB+の場合、消費電流がおよそ2A前後のはずなので余裕があるのはあと1A程度です。それに対して駆動用モーター2台の消費電流はスペック上、各300mAなので瞬間的にも1Aを超える場合もありそうな気がします。このままではモバイルバッテリーをマイコンとモーターの併用電源として使うことはできません。
P1143695  そこで思案の末に対策したのはモバイルバッテリーはマイコン専用の電源として用い、モーター駆動用としては新たにバッテリーを追加することにしました。追加したのは廃棄したガラケーに使われていたリチウムイオンバッテリーです。1セル3.7V,800mAの仕様でやや容量に余裕がありませんが、単なる立たせるだけが目的の試作ロボットなので長時間モーターを駆動させる必要もなくこれでも充分使えると思います。

カルシファー君大修理(><;)

 昨日まで大寒波の影響でこちら青森はこの一週間ほどは夜明け前の気温が氷点下15℃近くまで下がりました。今朝は寒波の影響が和らいだようで日中も比較的しのぎやすい気温になりました。さて、我が家で冬の暖房の主役となっている薪ストーブ、カルシファー君のご機嫌が正月明けからすこぶる悪くなり、どうしたものかと思案しておりましたが、思い切って修理してもらうことにしました。なにせ新築と同時に我が家に来てから既に12年働いています。機嫌の悪い様子からその原因は分かっていました。それは再燃焼ボックスの部分です。我が家の薪ストーブは朝に焚き付けしてストーブ内の温度が200℃前後に達するまではその排気を直接煙突に出すようになっています。所定の温度に達したならば通常は排気を再燃焼室側にレバーを切り替えてストーブ内に放り込んだ薪の量の多少にかかわらず一定の温度で燃焼する仕組みになっています。ところが再燃焼室側に切り替えると最近すこぶる燃えが悪くなり、燃焼温度がぐんぐん下がるようになってきました。挙げ句の果ては薪を一定以上入れると不完全燃焼を起こして吸気口から燃焼ガスが室内に逆流する始末です。直接煙突に排気する分にはよく燃えるので何とか暖房できますが、今度は薪の量によってはストーブの温度が上がり過ぎてストーブ本体を痛める恐れがあります。こうなってしまうと元も子もありません。そんなわけでついに修理を依頼することにしました。
P1123693 昨日になって交換部品が入荷したようで今日修理をすることになりました。こちらが問題の再燃焼ボックスです。使ってから12年になるのでボロボロになっていることを想像していましたが思ったよりも傷んでいませんでした。材質は耐火レンガのような重いタイルのようなものを想像していましたがふわふわしたとても柔らかいもので、棒でつっつくと簡単に穴が開きます。おそらくセラミック繊維を押し固めたようなものだと思います。

P1123692 こちらは内部の様子です。ストーブ内で燃焼した排気は中央の通路を通って再度酸素とかき混ざりながら上に上がり、天井で左右に分かれて下方に流れて両サイドから煙突まで導かれる構造になっています。内部を見るまではこの通路がボロボロに崩れているものと思っていましたが業者に言わせると機能的にはまだまだ使える状態だそうです。ただ、下方に向かう通路中間から出口まで10cmほどに両サイドともこんもりと灰が詰まって排気されない状態になっていました。これでは再燃焼側に切り替えると燃えるわけがありません。ストーブの上方から掃除機のホースを突っ込んで掃除はしていたものの通路下方横に溜まった灰までは吸い込めなかったようです。業者の話だと12年使って部品がこれだけ傷んでいないのは珍しいそうです。

P1123691 そうは言っても長年使った年数を考えると元は取れているので新品と交換することにしました。修理交換作業はは2時間ほどで終わりました。修理を終えてカルシファー君を起こしてみると昨日までのご機嫌斜めはすっかり治り、きれいな炎を見せるようになりました。

倒立振子ロボット製作記その12:制御プログラムの再検討

 数日前、ロボットはそれまでの仮配線から9軸センサの本体への実装を終え、プログラムを起動して姿勢制御のテストができる状態になりました。ところが姿勢制御テストを実行した途端、想定外の障害に悩まされることになりました。最初の障害はプログラム起動後、モーターが回りだすと突然マイコン自体がハングアップする現象です。その原因を調べていくと、どうやらモーターから出るノイズが原因らしいことが分かりました。
P1113688 原因が判明すれば対策は簡単です。モーター端子間にパスコンを入れることで対処できます。取り敢えず部品箱をあさり、電子工作で余っていたコンデンサを見つけて装着してみました。装着後はハングアップの現象はなくなりました。これで気を良くしてテストを再開したところ、ロボットを手に持って姿勢を変化させてもタイヤが意図したように回りません。姿勢を変化させた際の反応が鈍いのと回転方向もちぐはぐです。これでは姿勢制御どころの騒ぎではありません。そんなわけでここ数日はその原因を探るべくプログラムの見直しを行っていました。そして今朝になって重大な過ちに気付きました。それは参考としているプログラムで制御しているロボットに装着されているセンサの向きです。筆者のロボットに装着されているセンサの取付け向きと比べてみると何と!裏表、上下とも逆さではありませんか。これではまるで天体望遠鏡のコントローラを用いて地上用望遠鏡を目標物に向ける操作と同じことになります。つまり上下、左右の操作を逆にしないと目標物を捉えることができないことと同じです。そんなわけで9軸センサから読み込まれた加速度、ジャイロの数値を補正する必要があります。

今年は民泊の再開を先延ばし

 昨年10月から冬季休業に入っている民泊は当初、例年通り今年3月20日からの再開を予定にしていました。しかし、予想通りというかここにきて新型コロナウィルスの感染が急拡大し、首都圏以西を中心に今後も拡大しそうな勢いです。おそらく緊急事態が宣言が出されても一ヶ月やそこらで感染が収束するとは到底考えられません。今後数カ月は感染状況を見守る必要がありそうです。いずれにしてもこれまで我が家の場合は、宿泊客のほとんどが外国人観光客だったので国際航空便の往来がオープンにならない限り予約客の見込みが立ちません。休業に入る時点では今年3月20日以降の予約についてはカレンダー上で予約可能の状態にしていました。今日はもろもろの状況を鑑みて6月いっぱいは予約の受入をブロックする設定に変更しました。今後、新型コロナウィルスの感染対策として期待するのはワクチンの接種がいつから始まりその効果がどの程度あるかの2点です。現時点ではおそらく3月にならないとワクチンの接種が始まりそうもないので少なくとも6月までは感染状況を見守るしかありません。

明日からは余分な人生

 個人的なことながら、今日は筆者の68回目の誕生日でした。今年の誕生日は筆者にとっては特別な思いのある日でした。それは筆者の父親が亡くなったのが68歳のときだったからです。父が亡くなって以来、父親の歳までは少なくとも生きてみようというのが人生のひとつの目標となっていました。それが今日達成されました。父が若い頃は陸上の短距離ランナーとしてならし、地方大会では数々の記録も残しました。子供の頃はひ弱な筆者にとっては逞しく見える父の姿でした。そんな元気だった父が亡くなる一年前に急に病魔に襲われ、みるみるうちにやつれていく姿を見るのがとても辛かったものです。
 このような事情からある意味、筆者にとっては明日からは余分な人生と言えるかもしれません。ただし、余分な人生とは言ってもまだ筆者にはこれからやりたいことや興味があって調べたいことが際限なくあります。目標を失うことほど人生で最も不幸なことはありません。これからも親からもらった体を大事にしながら日々精進したいものです。

倒立振子ロボット製作記その11:センサを本体に実装

P1083684  これまで仮配線のままだった倒立振子ロボットは今日になってセンサを本体に実装するための部品がやっと届きました。早速、モータードライブボードの空きスペースに9軸センサとモバイルバッテリーからモーター駆動用電源を取り込むためのマイクロUSBソケットを実装しました。



P1083686 モータードライブボードは他のロボットと兼用で使うためボード上にはピンソケットだけを取付け、マイクロUSBソケットと9軸センサは抜き差しする形で使わない場合は画像のように取り外せるようにしてあります。



P1083687  こちらが倒立振子ロボットの完成形です。これでやっとロボットの挙動を確認できる状態になりました。明日からは実際にプログラムを起動して自立できるかどうか確認してみたいと思います。

薪ストーブを使い始めて一ヶ月あまり

 この冬、薪ストーブを使い始めたのは11月25日頃になります。それから既に一ヶ月以上経ちました。昨年11月に入ってこの冬に使う薪の量が明らかに不足していたのでそれから山に入って慌てて薪集めを始めたものです。12月の中旬には山にもついに雪が積もったので、薪集めはここで終わりました。この時期になるといつも確認することは燃やした薪がどの程度減ったかです。例年、薪ストーブを使う期間は11月中旬から年を越して3月のお彼岸ころまでのおよそ4ヶ月です。今の時期が冬の中で最も薪の消費量が多くなります。
P1063679  こちらの区画は真っ先に薪を使った区画です。1ヶ月できれいさっぱりなくなりました。ここには前の冬に残った薪と購入した3パレットの薪とは別に知り合いから譲り受けた軽トラ1台分の薪を積んでいました。



P1063680 そしてハウス内には秋口に業者から購入した薪が6割と11月に入って山から下ろしてきた薪4割が積んであります。この区画が最も量の多い区画になります。これから2月いっぱいまでにこの区画の薪がどの程度残っているかで3月中旬まで薪が持つかどうか決まります。



P1063681  最後は母屋の前壁に積んだ区画の薪です。一応こちらの区画はこの冬シーズン最後の分として積み上げている区画です。ハウス内の薪が2月いっぱい持てば余裕で使える分になります。もし、ハウス内の薪が2月まで持たない場合はこちらから充当する形になります。実はこれらの薪を使い果たした場合は緊急用として使える薪も別の場所にあります。しかし、この薪は樹種が薪ストーブではあまり燃やしたくない松なのであくまでも最後の最後に燃やす薪になります。

Nゲージ動力車両のメンテナンス

 年末から正月にかけて続けていた倒立振子ロボットの製作は配線廻りの部品が揃うまで新たなテストができないため、今日から数日は中休みの状態です。そこで今日は棚の奥にしまい込んでいたNゲージ車両を取り出し、メンテナンスすることにしました。メンテナンスと言ってもやることは車輪の表面を磨くだけです。Nゲージを走行させたいときすぐに走れる状態にしておくためには日頃の車輪のクリーニングが最も大事です。特にしばらく走らせていない車両の車輪はその表面が前回走らせた時のスパークによるカーボンや酸化膜で汚れていてメンテナンスを怠ると走行時にギクシャクしたり、ライトが点滅してまるでリアル感がなくなってしまいます。
P1053676 今日は動力車の車輪を中心にメンテナンスを行いました。動力車輪のクリーニングには模型メーカーからそれ専用のクリーニングキットなるものが販売されていますが、値段が数千円はします。おまけに汚れを取る専用マットは消耗品なのであとから買い足す必要があり意外に経費がかかります。もうひとつこれらのクリーニングキットで不満な点は動力車輪には勾配のあるレールを走行させる際、空回りさせないために車輪の一部にゴムタイヤを履いています。クリーニングキットではクリーニングの際にこのゴムタイヤごと研磨してしまうためゴムを痛める恐れがあります。そんなわけで筆者は手製の車輪クリーニングマシンを使っています。クリーニングマシンと言うのはちょっと大袈裟ですが材料はその辺にころがっている針金と木片だけです。画像のように木片に適当な長さにカットした2本の針金を木ネジで固定し、コントローラを電源にして動力車輪の一方に針金を接触させるという簡単な装置です。電源を入れると車輪が回るのでその表面にレールクリーナーを湿らせた綿棒を当てるだけです。
P1053678 これだけでご覧の通り車輪表面の汚れがかなり落ちることが分かります。これならわざわざ数千円の買い物をしないで済むし、消耗品もどこの家庭にもある綿棒を使うのでお得です。

倒立振子ロボット製作記その10:メインプログラムのテスト

 昨日、倒立振子ロボットに搭載している自作モータードライブボードの仕様に合わせてモーター駆動系制御プログラムルーチンを新たに作成しました。今日はこのプログラムルーチンを参照プログラム内のサブルーチンと差し替えてついに筆者製作の倒立振子ロボットをメインプログラムで起動できる環境になりました。これで仮配線ながら9軸センサもマイコンに接続してメインプログラム本体を起動すればセンサの動きに応じてロボットに装着したタイヤの挙動を確認することができます。
P1033675 こちらは起動テストの様子です。プログラムを起動後、センサを車軸に対して前後に傾けてみるとそれに反応してタイヤが回りました。ところが前後方向のセンサの傾きに対するタイヤの回転方向が逆です。いったんプログラムを停止してモーター駆動ルーチンの回転方向の設定を変更しました。設定変更後、再び駆動テストを行うと今度はセンサの傾いた方向にタイヤが回るようになりました。これで基本的な姿勢制御の機能は確認できました。当初、モーターのPWM制御をどのような目的で用いているのかよく分からなかったのですが、いろいろ試してみるとセンサの傾きの大小によってモーターの回転数を制御しているような気がします。つまり傾きが小さい場合はタイヤの回転を抑え気味に、傾きが大きくなるほどタイヤの回転を速くしているようです。仮配線の状態ではここまでしか確認できません。正月が明けて来週からは通販ショップも開くので今週半ばには不足の配線パーツを入手して自立制御の調整に入れそうです。

倒立振子ロボット製作記その9:自作サブルーチンをメインルーチンに組込み

 前回までに参照している倒立振子ロボットの制御プログラムを解析してみました。その結果、筆者が製作したロボットに搭載している自作モータードライブボードではメインプログラムをそのままでは使えないことが分かりました。どうやらメインプログラム内にあるモーター制御ルーチンを新たに作成し直す必要があります。そこで今日からはこのモーター制御ルーチンを自作ボードの仕様に合うよう作り変える作業を行いました。
20210102-185202 こちらの画像は参照プログラムの冒頭部分です。前回の解析記事で述べたようにGPIO設定関連のライブラリとしてRPi.GPIOとpigpioをインポートするようになっています。機能的に多少の違いはあるものの、どちらか一方のライブラリをインポートすればGPIOの設定で困ることはありません。自作ボード向けのモーター制御サブルーチンではpigpioに統一して設定を行い、RPi.GPIOで設定している項目に関してはpigpioから同様の設定をするよう変更することにしました。

20210102-191305 そしてこちらは自作ドライブボード向けに変更したメインプログラムです。RPi.GPIOの項目を削除し、すべてpigpioの書式に合わせてI/Oポートの初期化設定に書き換えました。まだメインルーチンにあるモーター制御ルーチンの組み換えは作業中で全て終わっていませんがこの作業に先立ってモーター制御ルーチン部を独立したテストプログラムとして作成しロボットで起動してみたところ、プログラムの通り正転、逆転、停止の操作と回転制御が行えることを確認しました。次回は組み換えを終えたメインプログラムでロボットを起動して9軸センサにうまく連動して足回りが動いてくれるかテストしたいと思います。

«倒立振子ロボット製作記その8:参照プログラムの解析

2021年1月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

筆者の愛蔵品

  • Nゲージコレクション
     ここに掲載されているのは筆者が趣味の道具として長年に渡り、大切に保管してきた品々です。今でも現役バリバリで使えるものばかりです。

趣味の展示館

  • 簡易ドライブレコーダー
     これまでに製作したジャンルを問わない作品を展示しています

自作ロボット写真集

  • 試作倒立振子ロボット
    筆者が製作した自作ロボットの写真集です。

自作基板集

  • 共通I/Oポート
    これまでに製作した自作基板の数々です

天体写真集

  • Jupiter
    2014年から本格的に始めた天体写真の画像集です。

天文機材集

  • シュミカセC8の結露、結氷対策
    現在、天体の観望や撮影に使用している筆者の機材です

趣味のおもちゃ箱

  • スチームエンジン
    筆者がこれまでに興味が湧いて買い求めたおもちゃの品々です。

掛け軸ギャラリー

  • 掛け軸17
    我が家に古くからある掛け軸のカタログを作成した機会にギャラリーとして公開しました。
無料ブログはココログ