Technicolorful Technologies

Technicolorful Technologies

ロボット技術を中心に面白そうな技術を取り上げて雑感を書きます。

Amebaでブログを始めよう!

便利な通信用ライブラリにYARP(Yet Another Robot Platform) というのがあるけど、日本語のサイトがあまり無い(皆無?)ので改めて勉強がてら分かった事をメモする。


とりあえずOfficial Documentation に飛ぼう。


YARPって何?


ライブラリであり、プロトコルであり、モジュールやデバイスをきれいに分断した状態に保つためのツール(メインは、マルチスレッド/プロセス/CPUのシステムで面倒なデータ通信の面倒を見てくれる便利なものだと思っている)

フリーのオープンソフトウェアであり、ライセンスはGNU GPL。

元々、PCクラスタを使ったロボットを制御するのに便利なツールとして開発された YARPコンポーネントは次の3つの要素で構成されている。

  • libYARP_OS - CPUやスレッド間の簡単なデータ転送をサポートするためのOSとのインターフェース。 YARPはOS非依存となるように書かれていて、Linux, Windows, Mac OSX, Solaris上で動く。YARPはACE(ADAPTIVE Communication Environment)ライブラリを使用している。大半はC++で書いてある。

  • libYARP_sig - 一般的な信号処理タスク(視覚、聴覚)を行う。OpenCVといった他の一般的なライブラリに簡単に繋がるように配慮してある。

  • libYARP_dev - ロボットで一般的に使われるデバイスとのインターフェース。対象デバイスは、カメラ、デジカメ、モータ制御ボードなど。
メインはlibYARP_OS。今後ここを詳しく見て行こう。言われた通りにインストールした所で今日の所は終了。