2004/06/29 |
充電器キットと放電器キットの製作 6本バッテリパック対応ですが、放電器のほうは放電電圧が可変抵抗で調整できますので、これで6本パックでもOK!充電器の方は、そのまま組み立てると6本用になるので、これまたOKです。また、充電電流は830mAなので単4の850mAを1C充電するにはちょうどよさげなので、これもそのまま組み立てました。OFFタイマもそのまま90分で使っています。 そうそう、以前、NiMHの2000mAhを買ったら、直後に2100mAhが発売されたという悲しい話がありましたが、今回はばっちり、850mAhの方にありつけました。まだ、それ以上のは無いと思います。 せっかくなので、手元にあった金具で充電器と放電器を繋げてみました。さすがに2枚つなげると安定感抜群です。後で、時間が合ったら、100円ショップで買った四角い缶のケースに入れようと思っています。最初の計画では、両方とも1つの電源にしようと思っていたのですが、いざ繋いでみたら、充電器のICが発熱してしまいました。どうやら電池がつながっていないと発熱するみたいです。作り方に問題があるんでしょうか…。そんなわけでしょうがないので、とりあえず共通電源はやめて別々に電源コネクタを取り付けました。これも、そのうちちゃんと電源スイッチをつけて、最後には共通化することにしよう。 まずは放電。バッテリパックをつないで…?何も動きません。おっと、「スタートスイッチ」を押さなくてはいけませんでした。お〜、かなり放熱板が熱くなります。この暑いのに、さらに暑い!でも、さくさくっと放電しているようです。他の部品を触ってみても、特に温度が上がっているものはありません(だいたい、最後の通電/動作テストのときは、部品の温度を指で確認しています)。また、バッテリの方も特に熱くなっている様子はありません。終わってからのバッテリパックの電圧を測ってみたら、7.4Vぐらいに落ちています。放電は、6Vで終了するように設定してあり、多分、放電している最中のものを計測して終了させていると思いますので、解放ならばこんなもん…ということにしておこう。 次は充電ですが、こちらも暑い!いや、放熱板が熱いです。電池の温度は「やや熱」ぐらいと言ったらいいでしょうか。そのままほかっておいたら、ちゃんと自動的に終わっていました。こちらもバッテリパックの電圧を測ってみたら8.4Vとバッチリです。 そういえばバッテリパックを作った話のときに書き忘れたのですが、一応、新品やしばらく使わなかったニッケル水素電池は、おまじないがてら、数回、充放電を繰り返してから作りました。これは、以前、ミニ四駆やっていた時の経験からで、「いきなり使うと、どうも調子が悪く、特性にばらつきがある」からです。そんなわけで、ばらついたままの状態でパック化すると後でいろいろ問題が起きそう(例えば、充電時の剳マ化が違うとか)なので、充放電時間がだいたい同じになるまで繰り返してからパックにしました。 なにぶんパック化は初めてですので、どれくらい効果があるのか、また問題なのかはよくわかっていないのですが、「おまじない」ということで。それにしても…キットは楽チンでいいな〜。 おお、ピンセットから煙が!!!
| |||||||||||
2004/06/28 |
初めてのバッテリパック化 う〜ん、なかなか難しい。ハンダ付けする部分をヤスリで少し削っておいて予備ハンダをし、ハンダ吸い取り線でえいや!とやってみました。最初のうちは加減がわからず(電池を熱するのは怖い気がして)ちょっと動かすと取れたりしてましたが、なんとか1つ作りました。次はさくさくっと作れそうです。 そして…最後のカバーが以外に難しい!真中からケーブルを出すようにしたのですが、ケーブルを短くしすぎたせいで、まずここに通すのが難しかったです。また、ドライヤーで暖めてみたら、想像の数倍の速度で収縮したので、すごくビックリしました。もしやられる方がいましたら、最初にこのチューブだけ、試しに暖めてみることをお勧めします。また、やるときはくれぐれも「熱しすぎ」「ショート」等に注意しましょう(一回、ケーブルを軽くショートさせて火花を見ました…くわばらくわばら)。 んで、G-Tuneに搭載しみてたら…あらら、フレームからはみ出してしまいました。多少はケーブル分、見込んで設計したつもりだったのですが、思ったより大きく、やむを得ず、4mm程長さを延ばしました(脚に干渉しないギリギリのサイズ)。う〜む、こうやって経験値を積んでいくんですね。(^^;
| |||||||||||
2004/06/26 |
たまには電装系の実験…昇圧回路 最近、ロボット用のマイコンボードには昇圧回路が実装されていることがあるようですが、どんなものかご存知ですか?SISOは知らないです。(もし昇圧回路実装マイコンボードを持っている方いらっしゃいましたら、教えていただけるとありがたいのですが…) ま〜、わかったところで個人で手に入る部品かどうかわからないので、まずは手に入りそうな部品で自分で調べて試してみることにしました。昇圧キットとか、あと、以前ZIPPONさんに教えてもらったオンボードのユニットとかをネットで見ていたのですが、G-Tuneに搭載前提となると、やっぱサイズが問題です。 というわけで、それっぽいところでMAXIMのデータシートとにらめっこしました。う〜、大変。しかも悲しいかな、素人が故、チンプンカンプンなものも多い!「おお、これいい!」と思っても買えるところがなかったり、いろいろ諸条件が合わなかったり。そんななかでよさげだったのが、MAX631です。これは若松通商で購入できます。2〜5Vの入力で、出力は5Vで50mA。外付け部品も、コイル1つと電解コンデンサだけでOKです。これなら、H8/3664とR/C受信機、加速度センサにモニタ用のLEDぐらいならいけそうです。他のセンサなどは昇圧回路を経由しないようにして、「最悪、コアを守る」ような形の実装を考えています。
買う前、コイルの大きさ(サイズ)がわからなくて、大きかったらどうしようと思いつつ購入したのですが、買ってみてびっくり。 まるで抵抗器のちょっと大きいヤツじゃん。 小さくてよかったです。あと、コイルももっと細かな規格があるようで、MAXIMの要求スペックどおりかわかんないんですが、まあ簡単に手に入る部品だけでやることということで。というわけで、以前、若松通商で購入した部品を組んでみました。コイル、ICともに若松通商です。 写真は(前置きが長すぎて、上の方にいっちゃてますけど…)、左から5Vの安定化電源回路、昇圧回路、LEDによる負荷回路です。レギュレータは、MAX631の入力電圧が5Vということなので、入力が5Vを越えないようにするためのものです。 手持ちの電池でやってみた実験の結果、回路全体としては、7.35V→5.15V、3.62V→5.08V、2.44V→3.70V、1.2V→0Vとなりました。正確にはデータ取ってないですが、レギュレータの出力は、大体、5Vを下回ると入力からちょっと低いぐらいです。とうわけで、どこが悪いのかはわからないんですが、2Vから5Vへの昇圧はできませんでした。しかし、3.6Vでも5V維持というのはすごいなぁ。 H8/3664は、かなり電圧が下がってもまともに動いたりする(経験では瞬間的に3Vを下回ってもまともだった。スペック上は問題外な領域ですが)ので、必要かどうか悩むところですが「さらにもう1V下がっても」という保険にもなるわけでして制作費も1000円程度ですので、今回は入れてみようと思っています。 お、負荷をあげて試験するのを忘れました。今回のテストでは、約30mA(計算上)です。さらに20mA負荷をかけないといけませんでした。またブレッドボード組み直し…。 | |||||||||||
2004/06/22 |
今回のABS直角結合パーツ ちょっと前にt6PP板による垂直結合するパーツの写真をアップしましたけど、今回、もう1つの新物があります。これは、メスネジが切られているPBTスペーサです。購入先はいつもの廣杉計器です。 以前は、こういう部品は、ネジの切ってない中空スペーサを使い、3mmの長〜いビスで貫通させて固定していました。今回は、このメスネジが切ってあるスペーサを使って両側から短い3mmビスで固定しています。軽量化にもなりますし、また、長いビスを探してくる必要もなくなりました。 中は、すべてメスネジが切ってあるので、写真のように、ぶった切って使っても真中までメスネジがあるため、自分でサイズ調整ができる?非常にお買い得な部品です。加工性はかなりいいです。強度の方は…これからロングランテストです。組み立ての感触から行くと、かなりいい感じです。 購入したのはPBT3mmの40mm長のものですが60mmまであります。また、ジュラコン製なら2mmネジ径で30mmまでのやつがあります。ジュラコンのほうは使っていませんが、いずれ試したいなと思っています。今回は、PBTの方が丈夫そうだったのでPBTにしています。素人がゆえ、やはりこういう部品は購入に頼らざるしかないですから、また何か見つけたらアップします。 なんだか、いろいろ経験値を積むことで、設計、組み立て、部品探しが楽になって来ている気がします。樹脂も捨てたモンじゃないです。加工はちまちまやってればちゃんとできますし、ゆがんでも戻りますし。でも世の中はアルミが主流…。 さて、また明日から出張で某国です。今週は更新できませんが、たぶん元気にやっていると思いますので、ご心配なく。というわけで、今日は早く寝よっと。 | |||||||||||
2004/06/21 |
Aパーツ、Bパーツ、接続完了! う〜む。なかなかかっこいいぞ!ぱっとみあまり変わっていませんが、なんとなく、エヴァの白いヤツの雰囲気があるような気がします…。姿勢が悪く、あの「クチ」のイメージがこう、漂っているといいますか。 気になる体重は現在、970gです。S03TにHGギア(半分メタル、半分プラスチック)を組み込んだ状態でこの重量は偉い!…ということにしておこう。前回のG-Tuneのデータから、これなら1200gは切れます。予定では、電装系40g、マイコン系35g、電池70g。余裕が出たので、センサーを追加してしまおう!フレームもさることながらネジも結構効いています。 今回のテーマは「軽量化」なわけで、いろいろと構造や厚みを見直して、ABSは結構、削りました。また、腕、足だけですが、昨日書きましたように、アクリルフレーム構造を取っています。水色の部分がアクリルの角材になります。ここのパーツは面積が広いので、2mmのABSに補強を入れる、という設計にしています。その他も、基本的に寸法は変わっていませんが、構造の簡略化などを行ってメンテナンス性を向上させています。 電線実装ですが、上半身に関しては、今度は、前回よりきれいに納める予定ですのでお楽しみに! 今回は、パワーチューブ風のものは外に這わさない(少なくとも上半身は…)予定です。そのため、腰ヨー軸の周りにスペースがあけてあります。うまくできるかな? また、変形も健在ですので、エントリー写真は、今度こそ、変形した形でエントリーしようと思います。みなさん、もうエントリー済ませているのかな? 浅井製作所さんで紹介されました(^_^)/ さて、このネジなんですが、頭のデッパリが少なくて干渉が少なく、とてもいいです(当然、デッパリが無い分、少し軽い)。また、ナベよりも頭の径が0.5mm大きい(なべは3.5mm。これは4mm)ので、押さえる力もちょっと安心。サラビスのように穴を掘る加工をしなくてもよし。色も黒で引き締まった感じです。そんなわけで、サーボホーン押さえを始め、G-Tuneでは随所に使っています。こんな珍しい(SISO LABはホームセンターが基本ですが…)ネジが個人で買えるのは、ほんとありがたいですね〜。 応援してますよ〜。
| |||||||||||
2004/06/20 |
手、脚できました。
| |||||||||||
2004/06/19 |
ようやく胴体ブロック完成 お辞儀サーボをMICRO-MGに変えて、ぐぐっと小型化したのですが、このあたりで、思い違いがいろいろあって失敗しました。最後は、よくわからなくなったので、紙で作って確認してからって感じで。 う〜む、なかなか美しくできました。例によって、ヨー軸には、お手製スラストベアリングが入っています。これだけみると、ロボットって感じじゃないですよね〜。トラブルが無ければ、日曜日中にはメカはだいたい組上がりそうかな。それにしても…今回も、何かと時間が取られて進まないです。とほほ。 H8/3664でR/C受信機信号を読み取る さてさて、R/C受信機、そもそも、サーボを直接コントロールするものだけあって、サーボ制御信号と同じ信号が出てきます。送信機のスティックの位置に合わせて、パルスの幅が伸びたり縮んだりするわけです。自分が使っているやつは4chなので、これが4つ(さらに細かく言うと、4つの信号がずれて出てくる)、サーボ制御周期である、15〜16msecぐらいの間隔で出てきます。 これを、H8/3664で読み取る場合、自分はTIMERVを使って、パルス幅をカウントアップしています。具体的には、0.128msecでTIMERV割り込みをかけておいて、HIGHになっている時間をカウントします。 SIHPA COREでは、PB4〜7にR/C受信機を接続しています。 ソースコードはこんな感じです(GDL)。これを走らせてシリアル通信端末(TeraTerm等)でみていると、送信機のスティックに合わせて、数値が変化するのがわかると思います。 #include <3664.h> _BYTE RPAabCountWrk[4]; _BYTE RPAabCount[4]; char acTxBuff[10],acRxBuff[10]; //---------------------------------------------------------------------------------------- // タイマV割り込み処理 // Return: void //---------------------------------------------------------------------------------------- void int_timerv( void ) { int nCnt; // R/Cレシーバ信号入力処理 for( nCnt = 0; nCnt < 4; nCnt++ ){ if( IO.PDRB.BYTE & (0x10<<nCnt) ) RPAabCountWrk[nCnt]++; else if( RPAabCountWrk[nCnt] != 0 ){ RPAabCount[nCnt] = RPAabCountWrk[nCnt]; RPAabCountWrk[nCnt] = 0x00; } } TV.TCSRV.BIT.OVF = 0; } main() { SCI3_INIT( br57600, acTxBuff, 10, acRxBuff, 10 ); EI; TV.TCRV0.BYTE = 0x01; // φ/8(OVFで0.128msec)コンペアマッチ無し、クリア無し、 TV.TCRV1.BYTE = 0xE3; // 外部エッジ無し TV.TCNTV = 0x00; // タイマVクリア TV.TCRV0.BYTE = 0x21; // 割り込み開始 while( 1 ){ SCI3_PRINTF( "%02x %02x %02x %02x\n", RPAabCount[0], RPAabCount[1], RPAabCount[2], RPAabCount[3] ); } } これが、超基本のソースコードなのですが、このやり方でももう少し工夫の余地があります。例えば、先に書きましたが、R/C受信機の信号は、一度に複数は立ちませんので、いつも全部チェックする必要はありません。また、forループでまわすより、4回同じようなコードを書いたほうが動作速度は速いです。 SIPHA COREでは、さらにアレンジして、TIMERWと組み合わせて、TIMERW側の処理でカウンタを取り出し、クリアをしています。0.128msecでOVF割り込みさせている関係上、割り込み回数が多いので、なるべく軽い処理にしたほうが有利です。 そして、これが大事なのですが、エラーチェックです。例えば、「3回連続で同じ方向のデータが入ったら正とする」みたいな処理があると、より良いです。 後は…、やったことは無いんですが、IRQが4本あるので、これを使うともっと細かい値がとれて、かつ、あまり負荷にならない、というのができると思います。G-Tune2003AでSH7047を使っていた時は、これをやっていました。今やっていない理由は、端子の数の問題です。出力につかえるポートを、4chも入力に使ってしまうと、サーボ制御信号出力端子が足らなくなっちゃうわけでして。H8/3664使いのつらくて楽しいところです(笑)。
| |||||||||||
2004/06/15 |
2mmポリカネジ…無理かな? というわけで、2mmネジは結局、鉄。ああ、ばらしたマシーンの部品をちゃんととっておいてよかった。全体の軽量化作戦は、対策変更で、3mmの金属ネジ(これもポリカネジ予定だった)を、メスネジ付きの樹脂カラーでどんどん短くしてやるぞ〜。
| |||||||||||
2004/06/13 |
PP板を使っている場所 以前(2004/05/09)、PP板を削り出していましたが、このPP板はこのように使います。 ごらんのとおり、ABSにサーボをこの方向にとりつけ、その後、直角に別のABSパーツを接続するのに使っています。最近、これと似たようなパーツが、KOさんの方からでていることを知り、がっくりしたような、「俺ってセンスいい〜」って思ったような。どこかで、こういうパーツ、MICRO-MG用にもだしてくれないかな〜。手加工では、かなりきついです(金銭的には、数十回失敗しても、材料費105円ですけど)。
| |||||||||||
2004/06/09 |
G-Tuneの各パーツ別重量
最後におまけで、今回作ったABSとかアルミパーツの集合写真!
| |||||||||||
2004/06/08 |
うぅ、めんどくさい… MICRO-MG(S03Tもそうだけど)って前からウスウスとは感じていましたが、「1000μsecから1500μsec」とやった場合に停止する位置と「2000μsecから1500μsec」とやって停止させた場所とでは、1度か2度ぐらいずれちゃうんですよね〜。これって、アナログサーボだから?(そ、それとも安いから???) そんなわけで、そう厳密にやってもしょうがないんですが、それでも、動作方向で再現性はあるので、それを頼りにチェックしました。手持ちが16個あったので、交換時のことも考えて、全部やりました。ふぅ。全部をグラフ化したものをアップしました。それなりに個体差が結構あるのがわかると思います。意外に直線性があって、ちょっとびっくり。下のグラフをクリックすると拡大表示します。
| |||||||||||
2004/06/07 |
ミミ落としてからだいぶ日が過ぎてますが…
以前、チラとお話した反対軸 ちょうど組み立て中なので、写真をとりました。ご覧のように、G-Tuneに実装しているサーボの反対軸は、こんなふうに直接サーボケースのお尻にくっつけてあります。S03Tは、ケースがやわくて中が広いので、中に3mmのABSの板が入れてあります。 最初(G-Tune2004F)に作った時は、動かしていたらケースが割れてしまいました。MICRO-MGの方は、今のところ問題が起きたことはありません。 でも、1つすごくめんどくさいのが、MICRO-MGの方、ネジをがっちり噛む程は強度が無いので、反対軸をばらす時はサーボもばらさないといけないんです。今回の改良でなんとかしようかなとも思ったのですが、軽量化と小型化のため、現状維持としました。そのうちなんとかしようと思っているのですが、手加工ではちょっと難しいかな〜(ほんとはブッシュみたいのを貼り付けてネジ切りたいんです)。 S03Tの動作範囲拡張をやってみたけど、う〜ん。
| |||||||||||
2004/06/03 |
ソフトサーボドライバにおけるジッタの正体 「ジッタ」についてちょっと解説します。ここで言っている「ジッタ」とは、サーボ制御信号の揺れのことを指しています。H8/3664にて、TIMERW+GRコンペアマッチ割り込みを使った一般的なサーボ制御の場合、だいたい、一度に4つのサーボを制御します。このとき、4つのサーボを動かさない(同じ制御パルスを出しつづけている)状態ですと、このジッタというのは現れません。もちろん、他の割り込み処理を使っていると、プルプルしたりするのですが、サーボ制御のためだけの割り込みを使っている限りではプルプルはおきません。 では、どういう時に起きるかといいますと、4つのそれぞれのパルス幅が近づいた時に、ぴくっとくるのです。
| |||||||||||
2004/06/01 |
WideStudioのWSCindexForm 「う〜ん、こまこましたウィンドウが増えてやだなぁ〜。」設定系のウィンドウを作っていると、こんなぼやきが出る時があります。そこで、てぃろりろりん♪「いんでっくすふぉぉむぅぅ」 「タブ画面」ってご存知です?実は、正式になんと呼ぶのかは知らないのですが、Windowsとかの設定画面によくある、上の方のインデックスみたいなところをクリックすると、同じウィンドウ上でいくつかの設定画面を切り替えられるアレです。これをWideStudioでやってみたのですが、すごく簡単! オブジェクトボックスから貼り付けたいウィンドウへ、「WSCindexForm」をドラッグ&ドロップします。 後は、ビルドすれば「あこがれのタブウィンドウ!」ができますよ。すごい簡単でブラボーです。さて、注意点です。「プロパティ」の「ユーザー設定値」(WSNuserValue)を見てください。よくみると、「INDEX01」に貼り付けた部品の設定値は「1」、「INDEX02」に貼り付けた部品の設定値は「2」になっています。これは、部品を貼り付けるときに、ビルダが自動的に割り振ったもので、どうやら、WSCindexFormは、この設定値によってどのインデックスにどの部品を割り付けるかを判定しているようです。 というわけで、WSCindexFormを使うと「ユーザー設定値」によってなんかする、というプログラムが書けなくなりますので、要注意です。できれば別にして欲しかったトコロではありますが、それにしても、う〜む、WideStudio、よくできてるな〜。 あれ?も、もう、6月…そういえば、5月がメカ月間、6月がソフト月間、7月が動作作りこみ月間だったような…。
|
2004 | Jan. | Feb. | Mar. | Apr. | May. | Jun. | Jul. | Aug. | Sep. | Oct. | Nov. | Dec. |
2003 | Jan. | Feb. | Mar. | Apr. | May. | Jun. | Jul. | Aug. | Sep. | Oct. | Nov. | Dec. |