要約
ロボットアプリケーションでは、知覚、実際のロボットの制御、場合によってはシミュレートされた環境の制御を含む、さまざまなモダリティの統合が必要です。
ROS 2 などの最先端のロボット ソフトウェア ソリューションは必要な機能のほとんどを提供しますが、アルゴリズム、データ ストリーム、制御ループ間の柔軟な同期は面倒な場合があります。
o80 は、リアルタイム クリティカル システムに共有メモリ モデルとコマンド フレームワークを提供するロボット工学用の多用途 C++ フレームワークです。
これにより、専門家ユーザーが複雑なロボット システムをセットアップし、科学者向けに Python バインディングを生成できるようになります。
o80 のユニークな機能は、従来のブロッキング コマンドや、ユーザー コードが下位プロセス制御ループの実行を制御できる新しい「バースティング モード」など、プロセス間の柔軟な同期です。
これは、実際の環境とシミュレートされた環境が混在するセットアップに特に役立ちます。
要約(オリジナル)
Robotic applications require the integration of various modalities, encompassing perception, control of real robots and possibly the control of simulated environments. While the state-of-the-art robotic software solutions such as ROS 2 provide most of the required features, flexible synchronization between algorithms, data streams and control loops can be tedious. o80 is a versatile C++ framework for robotics which provides a shared memory model and a command framework for real-time critical systems. It enables expert users to set up complex robotic systems and generate Python bindings for scientists. o80’s unique feature is its flexible synchronization between processes, including the traditional blocking commands and the novel “bursting mode”, which allows user code to control the execution of the lower process control loop. This makes it particularly useful for setups that mix real and simulated environments.
arxiv情報
著者 | Vincent Berenz,Felix Widmaier,Simon Guist,Bernhard Schölkopf,Dieter Büchler |
発行日 | 2023-06-16 10:50:21+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google