2023年4月
            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            

カテゴリー

ブログパーツ

無料ブログはココログ

« 2011年6月 | トップページ | 2011年8月 »

2011年7月

2011年7月29日 (金)

夏休みに作ろう!自動制御で坂を登るロボクライマー(6)

花岡ちゃんのウィークエンド:ロボクライマー

ロボクライマーの最終回です。
近所の公園でテスト走行した動画を掲載します。

 

なかなかたくましい走りっぷりですが、残念ながら完走できませんでした。ゴール地点近くでは傾斜が緩くなっており、草や小石の凹凸が一種のノイズになって進行方向が定まり難くなってしまったのと、伸びた草に乗り上げてしまったのが原因です。

映像には無いですが、初代iClimberが完走した坂道の遊歩道にも挑戦し、完走を果たしています。舗装路面の方が、やはり調子がいいようです。

ロボットを作るというテクニカルな面白さの他にも、完走した坂道をスマートフォンで地図上にマークし、「坂道マップ」を作っていくという、スタンプラリーのような遊びも親子で楽しめそうですね。ただし! 安全には十分に気をつけてください。車や自転車の通る道は基本的にさけてください。

これで、カンタンに出来るちょっと珍しい自律ロボット、ロボクライマーの製作記を終わります。1回目にも書きましたが、ぜひ、お子さんと夏休みの思い出作りに挑戦してみてください。

2011年7月28日 (木)

夏休みに作ろう!自動制御で坂を登るロボクライマー(5)

花岡ちゃんのウィークエンド:ロボクライマー

本機は回路をブレットボードに組み立てました。ユニバーサル基板に組めばもっとコンパクトに仕上がります。

■電子回路の組み立て
ブレットボードに部品を載せた様子です。

Photo_2

オペアンプや加速度センサーモジュールの1ピンの場所、トランジスタの足、部品名などを写真に記載したので参考にしてください。
加速度センサーモジュールは、進行方向に対して写真のように取付けます。取付け方向が違うと、左右の傾きが検出できなくなります。オリジナルの部品配置にするときには注意が必要です。
電源スイッチには基板用のトグルスイッチを取付けましたが、触ると外れてしまうので使い物になりません。ブレットボードで組むなら外付けにするか、単四+のリード線を抜き差しすることでスイッチ代用にするのがよいでしょう。

■ブレットボードの取付け
ブレットボードは裏紙を剥いでアッパーデッキに貼付けました。こうすると二度と剥がせません。再利用したい方は面倒でもビスナットで取付けてください。

Dscn1780

ブレットボードを取付ける時には方向に注意してください。加速度センサーモジュールのある方が、進行方向になるように取付けます。また、加速度センサーモジュールが車体に対してほぼ水平になっていることを確認してください。これが大幅に傾いていると、うまく山登りが出来ない場合があります。
最後に、電子回路の電源になる単四2本用電池ボックスを、写真の位置に両面テープで貼付けます。これで完成です。

■テスト
本物の登山でもロボクライマーでも、イキナリ山に登るのは無謀です。まずは室内でのテストとトレーニングをしましよう。
まずは動力用単三電池と回路用の単四電池をボックスにはめ込みます。回路用は充電池だと電圧が足りません。必ず乾電池を使ってください。

・センサーテスト
この写真のようにロボクライマーの後部を持ち、電源を入れます。
車体を右に傾けると右のキャタピラだけが回り、左に傾けると左のキャタピラだけが回ることを確認します。

Dscn1784

全くモーターが回らない、反応しないなどの場合は回路のチェックが必要です。また、反対のキャタピラが回るなら、左右のモーターのリード線を入れ替えます。

・直進補正
ロボクライマーを滑らかで平らな床に置き電源を入れます。
この状態で、写真のように半固定抵抗を調節し、直進するようにします。キチンと直進しなくてもかまいません。その場でぐるぐる回らないように調整すればOKです。

Dscn1786_2

その場でぐるぐる回り続けてしまう場合は、R2,R3とVR周辺のチェックが必要です。また、加速度センサーモジュールが車体に対して水平についているかどうかも確認してください。

・テストドライブ
段ボールや木板などで坂道をつくり、実際にロボクライマーを走らせてみます。自動制御の調子をみる以外に、キャタピラが外れないか、駆動系から異音がしないか、などを確認します。

Dscn1775_2

これでテストは終了です。

次回は、近所の公園でのチャレンジの様子を動画で紹介します。


2011年7月27日 (水)

夏休みに作ろう!自動制御で坂を登るロボクライマー(4)

花岡ちゃんのウィークエンド:ロボクライマー

今回からは「電子頭脳」の製作です。

ロボクライマーはコンピュータを使わず、電子回路だけで制御装置を構成しています。また、回路をなるべく簡素化して部品点数を少なくしてありますので、電子工作の初心者でも挑戦し易いと思います。

■回路図
本機の回路図です。

Photo

PDF版はこちらです。部品名や値はこちらで見てください。
「rc.pdf」をダウンロード

この電子頭脳の心臓部は、加速度センサー(U2)とオペアンプIC(U1A,U1B)で構成した2つの電圧比較機(コンパレーター)です。

加速度センサーは、左右の傾きを検出するために使用しています。ロボの車体が右にも左にも傾いてなければ、電源電圧の1/2の電圧を出力し、左に傾くと電圧が上昇、反対なら電圧が降下するようにしてあります。これをコンパレーターで判別して、左右のモーターのON/OFFをコントロールします。もちろん、コンパレーターの出力をそのままモーターにつないでもパワー不足でモーターは回らないので、トランジスタで電流を増幅しています。

電源には、モーター用にアルカリ単三電池2本、電子回路用に単四電池を2本使用します。スイッチは電子回路の方にだけ入っています。電子回路を切るとモーターも停止するので、モーター側にはスイッチがなくとも問題ありません。

おっと、あまり詳しく説明してしまうと自由研究ではなくなってしまいそうです。実際の回路の動作と坂道を登る理由は皆さんで考えてみてください。

■主要部品
主な部品のリストです。まとめて購入し易いように、秋月電子の部品でそろえてあります。

・U2 加速度センサーモジュールKXM52-1050
・U1 オペアンプLM358 3Vで動作する2回路入りのオペアンプなら大体のものが使えます。
・Q1 Q2 トランジスタ2SC3964 Icが1A以上、hfeが100以上の2SCか2SDなら大体のものが使えます。
・VR1 1Kオーム半固定抵抗 1K~10Kくらいまでなら使えます。
・R2 R3 抵抗1/4W 4.7Kオーム 3.3K~10Kくらいまで使えますが、2つとも同じ抵抗値にしてください。
・R1 R4 抵抗1/4W 100オーム 47〜220くらいまで使えます。
・C1 電解コンデンサ10uF 16V 耐圧は6V以上、10uF〜47uFくらいまで使えます。
・C2 電解コンデンサ1uF 50V 耐圧は6V以上、1uF〜4.7uFくらいまで使えます。
小型ブレットボード 他に配線用のジャンパワイヤが必要。
単四2個用電池ボックス

部品をそろえたら、次回はいよいよ電子頭脳を組み立てましょう。

2011年7月26日 (火)

夏休みに作ろう!自動制御で坂を登るロボクライマー(3)

花岡ちゃんのウィークエンド:ロボクライマー

前回からの続きで、シャーシを完成させます。

■4 アッパーデッキを載せる
完成したシャーシは動力源の単三電池2本用の電池ボックスを載せるといっぱいで、電子回路を載せるスペースがありません。そこでシャーシを二階建てにして搭載スペースを作ります。

C

まず、アッパーデッキのステーとして30mmに切った10mmヒノキ棒を3本、写真のあたりに接着します。ヒノキ棒の代わりに30mmの基板スタッドを使ってもよいでしょう。その方が工作は楽です。

アッパーデッキは1.2mmのプラ板をシャーシくらいの大きさに切り出し、下の写真のようにステーに載せました。大きさはあまり正確でなくてもかまいません。載せたい部品の分量に合わせます。取り外し出来るように2.4mmの木ネジでステーに固定します。

Dscn1762_2

プラ板を使ったのは、部品の取付けや配線を通す孔を現物合わせで開け易いからです。ベニヤやその他の木材やアルミ板でもかまいません。手持ちの材料を活用してください。

■5 電池ボックスとモーターの配線
シャーシ工作の最終工程です。モーター用電池ボックスを取付けモーターの配線を済ませます。工作をする前に、アッパーデッキをいったん外します。
Dscn1759  Dscn1770

左の写真のようにモーター用の単三2本用のボックスを2.4mmの木ネジでシャーシに止めた後で、右の写真のように配線します。アッパーデッキに搭載する電子回路に行くのは、電池−(黒)、左モーター(緑)、右モーター(黄)の3本のリード線です。ロボクライマーではモーターはON/OFFだけ、逆転はしないのでコレだけでOKです。

以上でシャーシの工作は完了、次回は電子頭脳の製作です。

2011年7月25日 (月)

夏休みに作ろう!自動制御で坂を登るロボクライマー(2)

花岡ちゃんのウィークエンド:ロボクライマー

今回はロボのシャーシを作ります。
一昔前なら、タミヤやニチモの1/35リモコン戦車を流用したいところですが、最近はすっかりビンテージプラモ扱いになってしまい、ヤフオクなんかでも結構いい値段がついてしまうようです。新たに購入して改造するのはちょっと難しいですね。そういうことで、今回はタミヤの模型工作用部品を使って、2モーターのキャタピラ車を自作します。

まずは必要な材料・部品です

■材料
5mm厚ベニヤ合板 少々
10mm角ヒノキ棒 少々
1,2mmプラ板 少々(5mmベニヤで代用可)
タミヤ ツインモーターギアボックス
タミヤ トラックアンドホイールセット
単三電池2本用電池ボックス
2.4mm木ネジ 少々

■1 ギアボックスとキャタピラの組み立て
まず、ツインモーターギアボックスを組み立てます。山登りにはパワーがいるので、減速比を遅いほうの203.7:1にセットします。キャタピラは30コマ+10コマ+8コマ+8コマをつないで作ります。

■2 木取り
ヒノキ棒とベニヤ板をこの写真の寸法に切り出します。(クリックすると拡大します)

Parts

ヒノキ棒から切り出した4つの部品は、大きいのがキャタピラのロードホイールを取付けるステー、小さいのがアイドラーホイールを取付けるステーです。3,5mmの穴はトラックアンドホイールセットのシャフトを通します。ボール盤があれば問題ないですが、手持ちのドリルで開ける場合は、孔が斜めにならないよう気をつけて加工します。

■3 シャーシの組み立て
まず、アイドラーホイールのステーを写真の位置に付けます。

S1  Dscn1751

写真のようにシャフトを通しておいて、これがシャーシに対して斜めにならないよう確認した上で固定します。
作例では木工用ボンドで接着し、右の写真のようにクランプで押えて乾かしました。クランプが無い場合は輪ゴムでシャーシに縛り付けて乾かします。

次に、ロードホイールのステーを同様に接着します。

S2

同じくシャフトを通して斜めにならないよう気をつけて工作します。
木工用ボンドが乾いたら、写真のようにアイドラーホイールとロードホイール【大】を取り付けます。

最後にギアボックス取付け孔を上の写真の位置に3.5mmのドリルであけ、付属のビスナットで取付けます。キャタピラの張り具合はギアボックスの位置を前後して調整します。きつかったり緩かったりした場合は、ビス穴を細い丸ヤスリで長孔に加工して調整します。

Dscn1758

これで基本構造は完成です。最後にスプロケットホイール【大】をギアボックスの六角シャフトにはめ込み、キャタピラをかけます。
なお、ギアボックスのある方がロボの進行方向(前)になります。

次回はシャーシ工作の続きです。


2011年7月24日 (日)

夏休みに作ろう!自動制御で坂を登るロボクライマー(1)

花岡ちゃんのウィークエンド:ロボクライマー

夏休みですね。お子さんと一緒に楽しめる、簡単で面白いセンサーロボの工作をご紹介します。(模型とラジオ風に!)
以前、iPhoneでロボットを動かす実験として、坂道を登るロボットiClimberを試作しました。このタンク型のロボットは、斜面に置いてスタートさせると、iPhoneに搭載されている加速度センサで車体の傾きを測りながら進行方向をコントロールし、斜面の頂上をめがけてばく進します。懸命に坂道に挑戦する姿はカッコ良く、また健気でもあり、見ていて興味が尽きません。格好の坂道や斜面は、公園や学校の敷地や庭先など、至る所で見つけることが出来ます。ストイックなアルピニストのごとく、ご近所全ての坂道に挑戦するのもなかなか面白そうではありませんか!(さあ皆さん、映画「サウンド・オブ・ミュージック」の名曲、「全ての山に登れ」を心の中で高らかに歌い上げてください!)
と、言うわけで、今回は同じように坂道を自動制御で登るタンクを、コンピュータを使わず、なるべく簡単な工作で作ってみたいと思います。夏休みの自由研究にいかがですか?

坂道を登るだけ?そんなの最初からそっちを向けてタンクをスタートさせればいいじゃん。そう思っている方も多いでしょう。確かに、路面が平坦ならその通りですが、実際は路面に凸凹があり、左右のキャタピラのグリップが同じではないためまっすぐは走りません。また、遊歩道のような曲がりくねった坂道では、途中で傾斜の方向が変わるのにあわせ、進行方向を変えなくてはなりません。そこで、加速度センサの登場です。車体の左右の傾きを加速度センサで計測し、左に傾いていれば右に、右に傾いていれば左に舵を切るように制御します。このようにすると、斜面を登る方向へ自動的に進路を取ることが出来ます。まあ、アタマで考えるよりもまず作ってみましょう。

これが完成写真です。全長180mmほど、小型なのでオフロードは無理ですが、公園の坂道などはぐんぐん登っていく走破性とパワーがあります。ロボクライマーと命名しました。

Dscn1772

車体はタミヤのギアボックスとキャタピラを使用し、「電子頭脳」は加速度センサとオペアンプIC一つで構成してあります。今回は小さなブレットボードに回路を組み立てました。簡単な回路なのでユニバーサル基板に組めば半分くらいの面積で済むと思います。
気になる開発費は、主要部品を全部新しく購入した場合、4,000円くらいです。

次回はロボクライマーのシャーシを作ります。

2011年7月18日 (月)

なるほどこれは難しい

ロボット作ろう:カメロ製作記

リモートブレインの「クラウド化」を目指して、もうちょっとそれらしいweb版のロボットコンソールの製作にかかっているわけですが・・・ 改めてその難しさを思い知らされる毎日です。

作っているものの仕様は一つ前の投稿にあるとおり、そんなに難しくはないんですが・・・ 仕様からすんなりフレームワークに落とし込めないというのが実感です。所詮プログラムでしょ、という気分ではじめたのですが、どうも僕のなじんでいるプログラム作法とは大分相違があるようです。

「サーバ上のテキストファイルをページの一部として表示する」といった部分仕様を、javaScriptでやるのかphpでやるのか、はたまたHTMLか? この辺の判断で困っている感じです。


とりあえず、こんな感じの画面ができて、画像やロボットからのSTATUSやMESSAGEはAjaxで数秒おきに自動更新されています。また、左側のテキストエリアにプログラムを書き込んで、下のボタンをクリックすると、phpで作ったcgiと連動し、ロボットが読めるよう、プログラムとコマンドがワンセットでサーバに保存します。
あとはデータベースにプログラムを保存する仕掛けを作れば一応格好がつきますね。

Kameroconsole

データベースは、MySQLでやるなら、それほど悩まなくてすみそうです。


2011年7月 2日 (土)

リモートブレインのクラウド化を考える

ロボット作ろう:カメロ製作記

唐突ですがクラウドです。
最近天気が悪いですねとかのハナシではなく、最近流行りのあのクラウドです。

コレまでの投稿にあるように、カメロは頭脳部分をサーバに持って、非リアルタイムでコントロールされるリモートブレインロボットです。開発や運用はブラウザでサーバにアクセスすることで行う、ちょっと前のコトバで言うと「Web2.0」的なシステムになっています。

必要なデータやプログラムをネット側に持ち、ブラウザで作業を行うわけですから、こういうのをクラウドと呼ぶのでしょうか。よくわかりませんが、ここではクラウドということにしておきましょう。

最近会社の壁に「クラウドOS」と角書きがついたWindows Azureというモノの講習会のポスターが貼られています。これは「ウィンドウズ アズレ」でいいのかなあ?と、前を通る度に思う昨今です。最近、とくにテクニカルタームでこういうちょっと発音に困るコトバがおおいですね。Ajaxとかね。
僕らはマスコミ世代ですから、流行りのコトバはテレビで知ることがほとんどでした。音が最初なんですね。NASAなんかもテレビでは「ナサ・アメリカ航空宇宙局」なんて言ってましたから、小学生でもすぐ学校で話題に出来たわけです。
近年、ネットがメディアの先達となり、情報伝達が高速化、局所化するようになると、横文字がそのまま流通することが多くなったように思います。音は二の次。テキストの時代とでも言うべきですか? 躍起になって文献をあさり、外国の知識を吸収した明治時代みたいな感じがします。考えてみればコミュニケーションもメールやツィッターといったテキストが幅を利かす時代、これも手紙が頼りだった明治と似ていなくもありません。

僕は文字を一度心の中で発音しながら本を読むので、読めない横文字は適当に読んでしまいます。例えば、アセンブラの命令「mov」は、僕の中ではムーブではなくそのまんま「モブ」です。
アズレかはたまたアジュルか? 「ギョェテとは俺のことかとゲーテ言い」ではないですが想像するのもまた楽しからずやです。モチロン、ネットで調べれば一発なんでしょうが。

また大幅に脱線しました。

クラウド化を目指すには、僕のネットがらみの知識は貧弱すぎます。もう少しコンテンポラリーな知識が必要です。ということで先ずは本です。

Dscn1724

例によって数冊購入した中で、これは当たりでした。プログラム環境としてのjavaScriptの本質がよくわかりました。折り紙に偽りなしです。

当面、現在クライアント側においてあるカメロのプログラムをMySQLでサーバに置くこと、Ajaxを利用したダイナミックなロボットコンソールの作成などを目標においています。
ちなみに、僕はAjaxを「アジャックス」と心の中で呼称しています。

« 2011年6月 | トップページ | 2011年8月 »