Monthly Archives: October 2007

GCC for ARM7 on Leopard

RoboShell の各種開発環境を Leopard に移行中である。現在の進捗状況は
 1.gcc4.2.2 のビルドの完成
 2.gdb6.6 のビルドの完成
 3.ftdi までのドライバのビルドとインストール
 4.OpenOCD の動作確認
 5.1.で作成したコンパイラで RoboShell のバイナリを作成
 6.5.のバイナリの動作確認→OK
まで、完成した。
あとは Eclipse をインストールして、統合化すれば開発環境の移行は完成である。だいぶ、安定してきたな。

男気 USB

FTDI2232


FTDI2232 を用いたデバッガを作りたかった時に、手頃な基板が無くて変換基板と手ハンダで作った一品。
FTDI2232


別の角度から見た。
たまにエナミュレーションにしくる時があるが、一応 OpenOCD も動作している。

RoboShell IDE

RoboShell の開発環境はマルチプラットフォームを標榜している。だいぶ、まとまってきた。Eclipse によるビルドやデバッグ環境に加えて、RoboShell のシェル機能なども Eclipse のプラグインにより、実現している。
RoboShellIDE


Windows, Linux ではシリアルポートをちゃんと見つけられたので問題なかったが、MacOSX ではイマイチよくわからなかった。現在は telnet のみに対応している。
RoboShell が OpenOCD を用いて開発を行っている事は何度も述べたが、OpenOCD は telnet 経由でコマンドを投入する事が可能だ。
RoboShellIDE


シリアル周りのプラグインの開発が今後の課題である。

PS2 controller for EZ-SERVO (Logicool)

現在、RoboShell は PS2 のコントローラをサポートしている。今までは Gametech のコントローラを使っていたけど、logicool のもそこそこメジャーなので実験を行う事にした。
PS2 controller from Logicool


logicool のコントローラの特徴は受信部が小さい。コントローラのデザインは GameTech が好みだが、この受信部の小ささは魅力的である。
PS2 controller from Logicool


コントローラに搭載されている大小2個の振動機能用のモータは RoboShell では下記の様に制御出来る。
>1215 0007 0000 0000 0000 [Enter]
このコマンドを設定した後は、
□ボタンの make で小型振動モータが On になる。
□ボタンの break で小型振動モータが Off になる。
大型の振動機能用モータをアクティブにするには、
>1210 000x yyyy 0000 0000 [Enter]
x = 0 or 1 (0 = 小型モータ, 1= 大型モータ)
yyyy = 0 – 255 (0 で停止)
このコマンドを発行した後は、
×ボタンの make で大型振動モータが On になる。
×ボタンの break で大型振動モータが Off になる。
プログラム中からも呼び出せるので、ロボ自体が外部から加速度(攻撃)受けた時に手元のコントローラをブルブルさせる事も出来る。

Detail of PCB

Gyro scope
Gyro scope


部品の実装面はこんな感じ。実は加速度センサが水晶に干渉してしまうのだが、足を切ってなんとか凌いだ。次のロットでは治す所が沢山出てきそうだ。
そろそろ、ソフトの拡張を始めようかな?「起上がりのフレームワーク」を入れないとな。

Gyro scope implementation

PS2 Controller
Gyro scope


PS2のコントローラ受信部とジャイロ基板の実装は写真のとおり。PCB化したことでだいぶすっきりした。が、ジャンパ線が痛々しい。(涙)

FT2232 and EZ-SERVO

FT2232 and EZ-SERVO


現在の開発環境はこんな感じ。ジャイロ基板も新しくなり、実装方法も変更したので以前のタイプより高さが低くなった。

OpenOCD by USB2232

Unlock device


ツール工房から発売されている USB2232 のモジュールを使って製作した OpenOCD 用のデバッガがこれ。
USB2232 は FTDI 社の FT2232C のモジュールである。それにアダプタボードを組み合わせて、EZ-SERVO 用のデバッガに仕立てたわけである。
アダプタボードの回路図などは近日、公開予定。

何日ぶりだろう?

 部屋の片付けをしてみた。出張の前には既に散らかっていたので、その前からなんだな。写真を撮るスペースとかも確保出来たので、もう少しビジュアルなブログになるとおもう。着なくなった服とかはドンドン捨てる。着られなくなった服も捨てる(痩せたので、ブカブカ)。
 でも、部屋を片付けると気持ちいいね。創作意欲がわいてくる。

勝利の方程式

 Olimex から基板が到着したので、早速組んでみた。今回は完璧だろうと思っていたんだが、2本未配線。まじ、がっくし。ジャンパが痛いよ。ほんと。気を取り直して、ジャイロ周りの配線チェック。こちらは問題なさそう。良さそう。
で、ここからが本題。
 ムラタからもジャイロが届いたので、早速組んでみた。ジャイロは2ch使っているんだけど、1ch目はなんの問題も無くサクッと動作。で、2ch目が完全に泥沼。以前にバラックで組んだ時にも4個潰している。ジャイロは@2600円。ロボで使っている部品の中ではサーボの次に高価だ。体積あたりで換算したら、サーボより高価になる。そんな部品を3個も潰すといい加減、いやになる。確実に実装出来るテクニックを探さないと…。
 当初はあまりにも動作しないので、センサ単体の不具合も疑ったのだ。ジグつくって、センサ単体で評価出来るようにしてチェックしたり…。で、結局は俺のハンダテクが未熟なのが原因みたい。いつものパターンだ。
 高い授業料を払わされたので、勝利の方程式(ジャイロハンダテク)を考えてみた。半田ごてを2本使い、小手自体を寝かして、4カ所を同時にハンダ付けするのだ。同時だと熱がかなり加わるが、短時間に決める。ジャイロ自体が基板に密着していないとハンダの部分に応力が集中するし、なによりもそこがダンパになって振動がうまく伝わらなくなる。(そんなに気にしなくていいのかもしれないけど…)
 まぁ、そんな感じで次はびしっと決めようと思う。