Home Contact Sitemap

洛星ロボット研究部 開発日誌

洛星中学高等学校のロボット研究部・同好会のブログです。

    アーカイブ
    ブログロール
    • happybusy
    Amazonサーチ

00年代も終わり

Filed under: クラブ全般

こんにちは、中学部長です。

今年も終わりですね。思えば、テスト前の投稿以来一回も投稿していませんね。すいません。言い訳しますと、テストがあって、タブローがあって、クラブがあって、宿題があって・・・

で、今AVRをやっているんですが、koujiが少し前にいっているように、AVRのコンパイラの最適化により、wait関数が実行されていませんでした。なので引数にvolatileをつけなければいけませんでした。僕はここ(なぜかうごきません - buttのところ)を読むまでそのことに気づかなかったわけですが・・・(H8の時はつけていなくてもいけていたので、完全に忘れていました。マイコンが違うのですから、H8の気分ではいてはいけませんね。)

chibieggさんの詳しいコメントもあり、正確なwait関数はできたのですが、(chibieggさんありがとうございます!)どうせなら、タイマーを使ってwait関数を作ろうと思います。(タイマーの練習をかねて)今年の正月もロボットです。

ところで、中1君の状況ですが、AVRの実験ボードは一人完成させ、H8のマザーボード制作に入っています。(かなり苦労していますが。昨日完成したというのでプログラム書き込みをしようととしましたができませんでした)ほかの子はAVRのボード制作orライントレーサー制作です。頑張れ!プログラム担当はAVRを頑張ってます。

By Flanker . 2009-12-27 . 19:12
コメント受付中! (2)

cnc開発 其ノ一

Filed under: 56期レスキュー班(Iris),CNC

こんにちは、花盃(仮)チームリーダです。ここ二週間でcncを動かしてしまおうかなどともくろんでいる私です。なかなかロボットの製作状況の写真を出さない私ですが、機体のほうはぼちぼちできてきました。そろそろブログに画像を出します。

さて本題のcnc開発第一回となりました。今回分かったことについてすこし書き留めておきたいと思います。
<DLしたもの>
jww-CAD, NCVC, Turbocnc, JMM-Tool
の四つです。
<手順>
大まかな流れは
1.jww-CADを使って機体の製図をする。作りたいものの図を描けばいいのです。

2.NCVCを使って.jwwや.dxfなどのCADデータをGコードに変換する。このソフトウェアでモータの動かす位置の設定、工作機械の設定などをします。出力されるデータ(コード)はどのようにモータを動かすか、どのモータを使うかといったデータ(コード)です。

といったところでしょうか。cnc歴かれこれ2日くらいなのであまり詳しいことはわかっておりません。上記の内容に誤りがあるかもしれませんが新しくわかったことをどんどん書き足していこうと思います。あと、上記のソフトウェアはすべてフリーです。リンクを張っておきます。


P.S.やはり画像データって大切ですね。

By kouji . 2009-12-27 . 02:09
コメント受付中! (2)

車体の計測

Filed under: 56期サッカー班

こんにちは、木工職人(仮)チームリーダです。11月に考えた新機体がやっと完成体に近づいてきました。もちろんまだ完成にはそこそこ遠く、仮にできてもそれは完成に暫定という言葉がつき、常に改良が進められるのですが……。

特にホワードのほうは第二のホールドとシュート機構、ディフェンダ-のほうはシュート機構とボールを取り込みやすくするためにロボットに3mmの溝を掘らないといけません。それから赤外線センサの位置も変える必要が出てくるので結構きついですね。実際に内部に機能のないハッタリが多いですが、とりあえずサッカーロボットの写真をとっておきました。ブログに乗せるために解像度の変更や私の写真の撮る技術によりかなりわかりづらいものがあるかもしれませんがご了承ください。

二輪がフォワード(FW)で四輪がディフェンダー(DF)という役割となっております。基盤の取り付けに困ったり新たな仕様変更があったにもかかわらず未だに部品の発送がまだということがありますから基盤は機体の上に乗っかっているだけといったものもあります。基盤は何かとさらなる小型化やアーキテクチャの変化や機体に組み込みやすいように改造するので取り付けは極力最後に回しています。

11月版新ロボットの高さはかなり低くなるように設計しました。実測値ではFW110mm(最上部のホールドなしの場合は80mm)でDF85mmでした。重心は高さ40mm以下の場所に全体重の7割以上は来ているようにしています。そこにはモータ四つ(または二つ)と電池とシュート機構がありますから。モータはどうやら速度がFWでは1m/sでDFでは0.5/sくらいでした。FWとDFのタイヤの直径は65mmと40mmで同じモータと電源を使っているのですが、今更ながらDFの速度が遅いので(しかもまっすぐに進む時の効率は直進のときの速度をsとおくとs/sqrt(2)、直進の時の速度よりも落ちてしまいます。プログラム上の問題で何とか解決するしかないですね(ディフェンダーがそんなに直進するかどうかはわかりません)。

次にロボット全体の重量を量ってみました。FWは846g、DFは918g(両方とも基盤と電池なし)でした。さらに回路の重量が250gくらいありました。シュート機構を200g、電池を合計250gと想定した場合両方合計で総重量約3200gです。制限の2.5kgを超えてしまいました。そこで私はこの約700gの大きな壁を抜けるために次のような策を立てました。

・第二のホールドは当分のことあきらめる(しかも精度が悪ければきれいにホールドしないので逆効果だと)

・車体のフレームですが、モータ駆動部分以外、つまり基盤を乗せるために使うところはMDFを削れば100gの軽量化をすることはできるかもしれません。特にセンサボックスは無駄が多いですね。センサボックスは16方位、中身をくりぬいていない状態で88gです。くりぬけば40gにまで減ります。

・基盤の半田(つまり鉛)の量を少なくして回路の軽量化を図る。50g位は軽くなるかもしれません。回路の重みの原因のほとんどはこれだと思います。デバイスは非常に軽いので。

・コードの固定にありあわせの真鍮スペーサを使っていたとか。これらをジュラコン(プラスチック)にすればもう少し改善されます。センサボックスではなくその固定に16本も金属ねじを使っていました。これをジュラコンにしようと思います。こういった部分の合計は30gでした。ちょっとでも軽くしたいと思いますがこういうことを焼け石に水といいます。2.5kgに収まることを期待します。

これでも総重量は多くて350gくらいしか減りません。電池に革命でもおこして100gくらい減らせたらぐっと規制に近づきますね。だが、軽量化は難しいですね。

By kouji . 2009-12-27 . 01:56
コメントお待ちしております!

CPLDを使っちゃおうかな♪-その②

Filed under: 56期サッカー班

木工職人リーダです。急にバトンパスをさせられていきなりCortexを動かす私。制御プログラムを考えていて一番面倒なのが個人的にモータ制御が一番かなと思います。IO出力が間違えたらFETが飛びますし(保護回路内蔵する羽目に)何か制御文を入れたら1クロックずれますしその補正のためのタイマの使用も面倒です。IOいじってばかりのプログラムなら全部ハードウェアで制御しても問題ない。じゃあ、CPLDを使おうかということになりました。これなら同時処理も簡単なので(シングルタスクのマイコンだと5つ目のモータ制御には20クロック位遅れるかもしれない)制御面においてかなり正確になります。そういうわけでCPLD内部の回路をさっそく設計して開発環境を少しいじってみました(私にとって一番面倒なのは開発環境です)。それだけでは何かもったいないのでほかの機能も付けることにしました。グラフィック表示回路と赤外線センサの最大値をとるコンパレータも内蔵してCortexを軽量化することにしました。おかげで、Cortexのコード容量はさらに減り初期の5分の1くらいになりました(現在20KB)。Cortexの出番がどんどんなくなっていきますねぇ。128KBには簡単に収まりそうです。

By kouji . 2009-12-18 . 02:30
コメント受付中! (1)

CPLDを使ってみようかな♪

Filed under: 56期サッカー班

こんにちは、木工職人リーダです。アレルギーを患ったために数日家に帰ってから寝込みました。

マイコンの処理軽減とかバグとかのことを考えて、CPLDが使えたら何かと便利かと思う毎日。単純動作のものなら簡単にマルチタスク(というか内部に回路を二つ作るのですが)処理動作のものを作ることができる。PLCCソケットに差し込むXC9672あたりのものが一番お手軽なものがやりやすそうだ。ということで調べてみたらどのデバイスはDigi-keyに1000円で売られいた。ソケットも100円以内に収まりそう。今回このデバイスを選んだ理由はIOピン数がそこそこあって値段も手が届きます。FPGAみたいにインピーダンスの設計もあまりしなくてもよく、ボードの設計が難しくなくてソケットがあるので失敗しにくく、参考資料が多い。それに回路図の配線もGNDに雑音が少々乗っても大丈夫ということで結構扱いやすそうだと思い、実験することに。雑音少ないほうがよく、配線が大変なことになるのでOlimexで基盤を頼んじゃおうかなとか只今検討中。

ところで、そのデバイスのスイッチング速度は10ns(100MHz)なので、Cortex-M3と連携を組めそうです。15ns(66MHz)動作のものもありましたけれど72MHzにぎりぎり間に合わないとのことで少々値が張りますがこちらにすることになりました。もしかすると、ロボカップに出るなら来年はこれだけで出場しそうな気がします。ただ、今回のロボカップには基盤を作って間に合うのかといった問題が残っています。思いつきなのでこいつの設計がぜんぜんできていません。3.3V動作なのでAVR、Cortexと直接通信ができそうです。楽ですね。

もし、このデバイスを仮に採用するとなれば、ADコンバータ以外はすべてCPLDでカバーできます。大麻とかなら何チャンネルでもできます。結構スペースをとったモータ保護用のディジタルロジックICもICに内蔵するので必要なくなります。ディスプレイ表示関係も簡単でAVRがするようなこと(私の作ったプログラム)なら処理も早く、使いやすいです。なにかいいことばかり書いていますけれども単純にマイコンだけの欠点を補っただけですね。

By kouji . 2009-12-17 . 17:14
コメントお待ちしております!

ピンチ!

Filed under: H.K.T.T

テストが終わりました。今年も最後だなーという感じです。

僕のチーム構成員ははChristmas Tableauxのスタッフなので暫く部活動が出来ません。まだ動かしたこともないロボットが完成するのかどうか心配になってくる時期です。

冬休みは正月とかであまり部活動がない上に、タブローの準備で1週間つぶれる。ピンチです。

 

新たなH8のマイコンボードを製作していると、そろそろ部品(特にコネクタ)が足りなくなってきました。また日本橋までお買いものですね。遠いです……

ロボット代もかれこれ2万円を超えました……財布の中から紙が消えていきます……また買うのかと思うと……テスト以上に死にそうです……

By 1/2LDK . 2009-12-16 . 18:47
コメント受付中! (1)

考えました②

Filed under: 56期サッカー班

おはようございます。サッカーロボットのプログラムについていろいろと熟慮思考をしていますが、どうやら行き着くところ、新たな一種のOSみたいなものができてきてしまいました。まぁ、むしろそういうものを目指していたのですが・・・・・・。

はじめにCortexをプログラムしようとしたらIOが足らなくなってしまいこれには困りました。ならば、I2CでAVRにつないでやればこと足りるのではと考え、周辺にAVRを増設しました。これでIOピン数の問題はなくなったのですがその分、デバイスの数が増え、当然のことながらそれぞれ通信をしないといけません。そのときに通信データの種類、出身地、容量を決めてやらないと識別できません(もっと亜種類はあると思いますが)。するとそういったデバイスがたくさんあるのでそれを管理するためにまとめてさらに汎用性のあるように改造を加えました。デバイスドライバ的なものの登場です。そして、AVRを使ってがらがらになったCortexのIOには欲しかったSRAMを入れることにして、マザーボード上にSDカードとEEPROMを乗せます。さらにいろいろなデバイスが増えるわけです。そして、そのデバイスの健康を定期的に点検してさせて、マルチタスク処理のための新たな機能を加えたりとか、ファイルシステム、グラフィック制御関数とかを作っていくうちにこれはもはやOSとしか予備用がないような感じになってしまったのです。未完成ですが。周辺のAVRに処理内容をとられてしまい、ロボットの座標が正確にわからなくなった以上もうCortexの仕事はほとんどないのではないか(OS抜きでもAVR以上の仕事はしますよ、当然)ということになってきましたね。こういうこともあってCortexを失敗したら急遽AVRに変更なんてことも普通にできます。

少しばかり眠くなってきました。これで私は寝ることにします。おやすみなさい。

By kouji . 2009-12-13 . 04:21
コメントお待ちしております!

考えました

Filed under: 56期レスキュー班(Iris)

どうも、花盃(仮)チームリーダーです。今年度でチームから主力(自分で言ってる・・・・・・)三人消えることになるかもしれません。残りの人たちがんばってください。

今日は寺町でいいものを見つけました。当初はパソコンのメモリを買いに行く予定だったのですが、マルツパーツ館へ行くとどうやらPSPの充電池(3.6V3900mAh)でロボット研究部で規格化してきているリチウムポリマー電池(7.4V2000mAh)と同性能くらいありました。ちなみに値段は同じです(1900円と1800円)。

それでその電池の性格に測ってはいませんが目分量として計算した結果、驚くべき特徴はその電池の大きさがその規格化されているパック電池の大きさの三分の一くらいで済み、重量はリチウムポリマー電池一個分よりも少ないようです。もしこの電池を二つ直列にしてみると7.2V3900mAh3800円約20g位のものができそうです。一応高性能100%電源変換効率の回路を使えば28W消費電力で約一時間持つ計算になります。いや、もうひとつでいいんじゃないか?いや、なかなかいいものを見つけました。これをサッカーロボットに電池はすべてをこれを使えば一台200gくらい軽量化されることになります。値段は変わりません。我らがレスキューチームはロボットの重量制限がないのであまり変わりませんが電池のマウンタの実装領域が少なくなったのでその電池のマウンタに電源装置も入れることができるかもしれません(予算でリチウムポリマー買っちゃったね。もったいない)。

ところで、その電源回路について頭の中で考えてみました。どうしたら、電源効率のよいDC-DCコンバータが組めるのかなぁということです。まぁ、とりあえずパルス波をFETスイッチングでデューティー比を調節をしてそれをパルストランスで昇圧をして整流をしたらいけそうかなぁとか考えてみました。残りの問題としては整流回路部分で電圧値が不正確になってしまいそうな気がしますが、それはもう少し考えてます。部品はほぼすべて面実装化できそうです。

それではまた、今度ためしに電池一つ買ってみようと思います。日本橋に行ってもっと安いものを見つけるぞ!これはサッカーのカテゴリに書いたほうがよかったかなぁ。

By kouji . 2009-12-13 . 02:50
コメントお待ちしております!

モータドライブ基盤

Filed under: 56期サッカー班

おはようございます。日々お騒がせしている木工職人(仮)リーダーです。
今日はFET回路を制御するためにショートするつながり方があるのでそれを防ぐための回路、つまり今日はロジックの塊を作っていたのです。で、作っていて実感したことは使われていない信号線をきちんとGNDに落としておかないととんでもない予期しないことが起こります(そこをきちんとしなければ結局FET回路は炎上するのですが)。で、結果はちゃんと動きましたよ。実際にモータを動かさずにLEDでやったので実感がいまいち湧きませんけど。それでそれに平行してFET回路を考えていたのですが、NchのMOS-FETを4回路Hブリッジ形にしてつないでもそれぞれがはじめから直列になっている2回路のうち一回路でも導通しているわけではないのでほかの絶縁されている状態にあればスイッチングができないMOS-FETは使用不可となります。タイミングの問題です。パラドックスですね。

今日ロボットの回路を作っていて思ったこと、
機体はモータなどを実際に動かして状態を確認することは目で確認できるほど容易で、人数が非常に多い。ソフトウェアにも強力なJTAGデバッガがあるし、プログラムが間違っていても大損害をこうむることはないしバックアップを取っておけば大丈夫。だけどハードウェアにはああ、使いやすいデバッガが欲しい……。そこで今回のロジック回路の検証のためだけに多数の入力信号のH/Lを確かめるまたは信号を出力するというものを自作して、結構役に立ちました。

By kouji . 2009-12-08 . 03:45
コメント受付中! (1)

そろそろCortexを②

Filed under: 56期サッカー班

やった、嬉しい。ついにCortexとAVRの両方が動いたぞ。たった今、私の作ったプログラムがCortex上で動作していました。実際に書き込みができるまでの過程は成功したのでハードウェア関係はこれから発揮することになります。ソフト開発は結構わかりやすいマニュアルが以外にもたくさんあったので結構はかどるかもしれません。ここからはH8マイコンと同じような感じです。書き込みをする前に新たな回路の構想が立ってそちらのほうがいいので早速換えることにしました。回路図を考えておかなければ・・・・・・。早くモータを動かして赤外線センサの値を読み取りたいです。

By kouji . 2009-12-06 . 01:52
コメントお待ちしております!
古い記事 »