前回の続きです。
nVIDIAの「Jetson TX2 Development Kit」に、最新の「JetPack」をインストールし、起動できるようにしてみました。
こちらは、目下建造中の「タイニー・ファランクス」です。
まだ基台上部の旋回台座の部分が組み込めていませんが、その前にやることが発見されたため、工程を改めます。
これまで、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
仕方がないので、真打ちを登場させます。
「Jetson TX2 Development Kit」には、ステレオカメラからの画像解析など、“分析系”に専念してもらいたかったのですが、“表示系”や“制御系”でも、活躍してもらうことにします。
#イコール、これまで「Python」の構文が気に入らなかったので、避けていたのですが、いよいよPythonで書かれた各種ライブラリを扱うことになります。