SOARISTO工房 Logo
Tiny Phalanx (CIWS) Archive
 1  |  2  |  3  |  4  |  5 | Next 

 前回の続きです。

 前回といっても、去年のハナシで、週刊どころか、月刊、いや季刊ぐらいのスパンですけれども・・・。0xF9C7

#まぁ、Audi R8をカイゾーしたり、車検に出したりとか、いろいろ、いろいろありましてね。

 前回は、「タイニー・ファランクス」に、7.0インチのTFTディスプレイを取り付け、HDMIスプリッターで信号を分岐させました。

 んが、以前に書いたとおり、HDMI経由のオーディオ出力は、信じられないぐらいノイズが乗った、ダメダメな音質でした。

#正確には、HDMIのオーディオ信号が悪いのではなく、TFTディスプレイの基板に載っている、デコーダー以降のオーディオ回路が、ダメダメな訳ですが。

Tiny Phalanx, Adafruit I2S Stereo Decoder - UDA1334A

 と、いうことで、

 Jetson TX2用に、別途、オーディオ出力を用意することにしました。

Tiny Phalanx, Adafruit I2S Stereo Decoder - UDA1334A

 追加した回路は、こちら。

 Adafruitの「I2S Stereo Decoder - UDA1334A Breakout」(6.95ドル)です。

 前回の続きです。

 外部入出力の制御を、「分散型」から「集中型」へ変更したことに合わせ、制御回路も刷新しました。

Tiny Phalanx Original Control Circuit

 左側が、以前に作製した参号機で、右側が、今回作り直した四号機です。

#どんだけ作り直してるんだよと。0xF9C7

Tiny Phalanx Original Control Circuit

 偏差射撃のための係数把握に備え、タイニー・ファランクスの設置位置を精確に確認するため、GPS測定モジュールを搭載しました。

 GPS測定モジュールには、「みちびき」にも対応した、Adafruitの「Ultimate GPS FeatherWing」(24.95ドル)を使っています。

 また、TFTディスプレイとHDMIスプリッターに+5Vを供給するため、それぞれに独立した電源回路を設けました。(各最大1.5A)

 さらに、主制御装置をJetson TX2に切り替えたことにより、ロジックレベルが+3.3Vとなったことから、これに対応する電源回路を設けました。(最大500mA)

 +3.3Vは、Jetson TX2からも供給できますが、メイン回路に負担を掛けないよう、あえて独立の電源としています。

 前回の続きです。

 「タイニー・ファランクス」に、7.0インチのTFTディスプレイを取り付けます。

Tiny Phalanx, UCTRONICS 7 Inch Touch Screen

 こちらは、今回購入した、UCTRONICSの「7 Inch Touch Screen」(69.99ドル)です。

 これまで、ArbotiX-M用に、4.3インチのTFTディスプレイ(uLCD-43PT-AR)を購入したにも関わらず、放棄し、さらに、7.0インチのTFTディスプレイ(gen4-uLCD-70D-SB)を購入したにも関わらず、またも放棄です。

 タイニー・ファランクスの制御は、「自律・分散」をコンセプトとしていたのですが、いくつかの実験の結果、16MHz動作の「ATmega644P」には荷が重すぎたため、Jetson TX2の画面を直接表示することにします。

Tiny Phalanx, UCTRONICS 7 Inch Touch Screen

 物理的には、7.0インチの、解像度1024×600pixelのTFTディスプレイですが、スケーリングにより、1920×1080pixelに対応することもできます。

#表面にキズが付いているように見えますが、取り付け前の、保護フィルム上のキズのため、問題ありません。

 前回の続きです。

 nVIDIAの「Jetson TX2 Development Kit」に、最新の「JetPack」をインストールし、起動できるようにしてみました。

Tiny Phalanx, CIWS

 こちらは、目下建造中の「タイニー・ファランクス」です。

 まだ基台上部の旋回台座の部分が組み込めていませんが、その前にやることが発見されたため、工程を改めます。

 これまで、Trossen Roboticsの「ArbotiX-M Robocontroller」に、4D Systemsの「gen4-uLCD-70D-SB」を接続したり、SHARPの「CYBER STICK」を接続したりしましたが、いざArduino IDEでスケッチを書いて動かしてみると・・・。

 画像は、CYBER STICKから値を読み出して、TFTディスプレイに表示させているだけなのですが、画面のリフレッシュレートが、10fpsを下回ってしまっています。

 gen4-uLCD-70D-SBは、4D Systems提供の「Diablo16-Serial-Arduino-Library」(1.0.3)を使い、Arduino側で対応できる最大のボーレート(115,200bps)でシリアル通信させています。
(gen4-uLCD-70D-SB側は、600,000bpsまで対応可能)

 また、Arduino内部では、Timer1割り込みを使って、100msおきに、CYBER STICKの状態監視をはじめ、内部の温度センサの状態、PCファンの回転数・照明用LEDの照度(PWM制御)などの処理をさせています。

 にしても、わずかいくつかのテキストを表示させるだけで、10fpsを切ってしまうとは・・・。0xF999

 将来的には、TFTディスプレイに、タイニー・ファランクスの各種状態を、グラフィカルに表示させることを構想していたのですが、その実現は、難しくなってきました。

 さすがに、16MHz動作の「ATmega644P」には、荷が重すぎたのかも知れません。

 タイニー・ファランクスの制御にあたっては、それぞれの機器に「分散処理」をさせることを想定していたのですが、こと、TFTディスプレイについては、単体の処理速度に加え、シリアル通信の速度がボトルネックになるようです。

#単に、言われたことをやるヤツより、自ら考え行動するヒトが好きなので、TFTディスプレイも、パッシブではなく、アクティブな制御(表示)ができる機器を選んだはずだったのですが・・・。0xF9D1

Tiny Phalanx, nVIDIA Jetson TX2 Development Kit

 仕方がないので、真打ちを登場させます。

 「Jetson TX2 Development Kit」には、ステレオカメラからの画像解析など、“分析系”に専念してもらいたかったのですが、“表示系”や“制御系”でも、活躍してもらうことにします。

#イコール、これまで「Python」の構文が気に入らなかったので、避けていたのですが、いよいよPythonで書かれた各種ライブラリを扱うことになります。

 久しぶりの、このシリーズ。

 前回から、10ヶ月以上も経ってしまいまして、じぇんじぇん、“週刊”になってません。0xF9C7

 作製途中で、我が家の水冷PC、「Ultimate Tera Storage Machine」が急に不調となり、新たに「Dual CPU / GPU Machine」に作り直しているうち、あっという間に月日が経ってしまったのでした。

 世界的な電子デバイスの品薄の中、このほど、やっとこさ完成しましたので、本来の「Tiny Phalanx」の作製に、復帰することにします。

CIWS Tiny Phalanx, Rear Connector Panel

 前回は、ベースボードの後部、「Jetson TX2 Developer Kit」や「ArbotiX-M Robocontroller」の各種コネクタが集中している部分を、作製しました。

 今回は、基台後面、上段のパネルを作製します。

CIWS Tiny Phalanx, Rear Connector Panel

 基台後面、上段のパネルを、Fusion 360でモデリングします。

 1  |  2  |  3  |  4  |  5 | Next