Application - Robot OS

イントロダクション

MontaVista は 20 年以上の歴史を持ち、世界中のさまざまな業界で数百万台ものデバイスで利用されていることを誇りに思います。

近年、最も急速に進化している技術分野に 機械学習 (ML) と 人工知能 (AI) があり、ますます複雑化する 分散型センサーおよびアクチュエーターのコンピューティング ノードと組合わされて利用されています。 この文脈における「ロボット」という言葉は、ますます複雑化するタスクを実行するために連携する、多様な固定型およびモバイル型のコンピューティング モジュールの複雑なセットを表すために使用されます。

これらの用途は、 インテリジェント倉庫 や 工業生産ライン から、 遠隔医療 や 車の自動運転まで多岐にわたります。 これらのタスクを支援するテクノロジーには、単純なコンピューター ビジョンから同時位置推定およびマッピング (SLAM)、AI 推論、会話型ユーザー インターフェイスなど、多くのものがあります。

最高レベルの信頼性を備えた Linux 組込みアプリケーションが必要なときは、いつでもMontaVista のエキスパートが最適なソリューションを見つけるお手伝いをいたします。

ロボット OS (ROS):

ロボット オペレーティング システム (ROS) は、 ロボットおよびロボットのような産業用アプリケーション のソフトウェア開発を容易にする オープンソースのロボット ミドルウェア スイート です。 ROS2 はリアルタイムのユースケースをサポートするよう設計されており、 開発者は、より堅牢で予測可能なロボット アプリケーションを構築できます。

ROS 自体はオペレーティング システムではありませんが、Linux オペレーティング システムでよく使用されます。サポートされている ROS リリースは通常、AMD64 および ARM64 (最近では Windows 用) の現在のバージョンの Ubuntu Linux ディストリビューション用のビルド済みディストリビューションとして利用できます。

このドキュメントでは、Robot OS (バージョン 2) に基づくシステム設計のコンテキストにおける MontaVista の CGX Linux および MVSecure サービスの概要を説明します。

ROS2 システムの構造

ROS2 ベースのシステムは、ロボット アプリケーションを実現するために連携して動作する複数の相互接続されたコンポーネントで構成されています。以下に、典型的な ROS2 ベース (分散型) システムの構造の概要を示します。

ノード:

ノードは ROS2 における計算の基本単位です。ノードはセンサーの制御、データの処理、アルゴリズムの実行など、特定のタスクを実行する個別のプロセスです。

通常、ROS2 システム内では複数のノードが同時に実行され、それぞれがロボットの機能のさまざまな側面を担当します。

ニーズに応じ、ノードは専用ハードウェア (AI やコンピューター ビジョンなどの GPU を集中的に使用するタスク用のハードウェア アクセラレーションを備えた NVidia Jetson など) から中規模の組込みシステム (センサーやアクチュエータとの通信用など)、さらには共有ハードウェア上で実行されるコンテナー化ノードまたは仮想化ノードまで実行できます。

ノードはトピックを公開およびサブスクライブしてメッセージを送受信することで相互に通信します。

トピックスおよびメッセージ:

メッセージは、ノード間で交換される情報を表すために使用されるデータ構造です。各メッセージ タイプは、センサーの読み取り値、モーター コマンド、ロボットのポーズなどの特定のデータ形式に対応しています。

トピックは、ノードがメッセージを交換する名前付きバスです。ノードはトピックにメッセージを公開してデータを共有したり、トピックをサブスクライブしてデータを受信したりできます。トピックにより、ノード間の非同期通信が可能になり、ノードが独立してデータを送受信できるようになります。

データ ディストリビューション サービス (DDS):

DDS は、分散 ROS システムの異なるノード間でのデータ交換を容易にする、標準化されたデータ中心のミドルウェアです。ROS システムの通信インフラストラクチャにおいて重要な役割を果たします。 

ROS2 は、さまざまな DDS 実装の使用をサポートしています。ノード間の通信を処理するための一般的な選択肢は、Fast RTPS または Cyclone DDS です。ノード間でメッセージを効率的に交換するための検出、シリアル化、転送などの機能を提供します。

ユーザーは、パフォーマンス、信頼性、スケーラビリティのニーズに最適な DDS 実装を選択できます。DDS の高度な実装により、堅牢性とフォールト トレランスを確保しながら、数百または数千のノードを持つ大規模なロボット展開での通信を処理できます。

ROS-インダストリアル (ROS-I):

ROS-Industrial は、ROS2 の機能を基にして ROS の高度な機能を製造自動化とロボット工学の領域に拡張するオープンソース プロジェクトです。ROS-Industrial リポジトリには、一般的な産業用マニピュレーター、グリッパー、センサー、デバイス ネットワークのインターフェイスが含まれています。 

さらに情報が必要な場合には次のurlをご参照下さい。 https://rosindustrial.org/

 

ソリューションについて

ROS ベースのロボットハードウェアは通常、CPUパワーに優れた ARM または組込み用 x86 プロセッサーを含め構築され、一般的には Linux OS の一種を実行します。 

このセクションでは、ROS2 ベースのロボットのライフサイクルにおけるいくつかの一般的な使用例を示します。

ラボでロボットのプロトタイプを作成する:

ROS2 エ​​コシステムの強みは、オープンソースで利用できる幅広いハードウェア センサーとアクチュエーターです。これにより、ROS にバンドルされているさまざまなシミュレーション環境を使用して、実際のハードウェアまたは仮想ハードウェアで非常に迅速にプロトタイピングを行うことができます。

利用可能なハードウェア ドライバーの概要については、以下を参照してください。

https://github.com/orgs/ros-drivers/repositories

ロボットを研究室から現実世界へ持ち込む:

ROS2 ドキュメントでは現在、Ubuntu (Debian Linux ベース) 上で ROS ワークスペースを設定する手順を説明していますが、プロフェッショナルな CICD 開発ワークフローには、Yocto ベースのビルド システムを使用する必要があります。MontaVista の Yocto エキスパートが、ROS ランタイムを組み込み開発フローに統合するお手伝いをします。 

利用可能な Yocto バージョンと ROS メタパッケージのサポートの概要については、こちらをご覧ください:  https://github.com/ros/meta-ros?tab=readme-ov-file#meta-ros

ロボットをセキュアに保つ

ロボットが産業環境に設置されると、リモート アクセス、メンテナンス、サービスのためにインターネットに接続される可能性が高くなります。 

現時点で何よりもまずすべきことは、ROS と Linux OS が、電源投入から起動までの信頼チェーンの確保や、適切に構成された SELinux 設定の使用など、最高のサイバーセキュリティ ガイドラインに従って設計および実装されていることを確認することです。

ロボットの耐用期間が終了するまで、実行されるソフトウェアはリモートで更新可能である必要があり、製造元は既知の脆弱性がすべて修正され、現場のロボットに展開されていることを確認する必要があります。米国とヨーロッパの両国は最近、更新されたサイバーセキュリティ ガイドラインを発表しました。以下を参照してください。

https://www.cisa.gov/sites/default/files/2023-10/SecureByDesign_1025_508c.pdf

https://www.enisa.europa.eu/topics/certification/cybersecurity-certification-framework

こうした要件は、中小規模のエンジニアリング チームにとって対応が難しい場合があります。MontaVista は、通信インフラストラクチャなどの過酷な環境でも Linux システムを安定して稼働させ続ける数十年の経験を持っています。

 

サマリー

ROS2 は、ロボットやその他の産業用分散デバイスのプロトタイプを迅速に作成および開発するための優れたツールキットおよびミドルウェア プラットフォームです。 

MontaVista の CGX Linux は、厳しい産業ニーズに合わせて設計されており、比類のない堅牢性と接続性を目指す組込みシステムをさらに強化します。 

セキュア ブートと包括的なセキュリティ機能によってサポートされる MontaVista の CGX の安全な環境は、現場のロボットの堅牢な保護とデータの整合性を実現します。

安全で信頼性が高く、接続性に優れた産業用強化組込みシステム ソリューションをお探しの場合には、MontaVista の CGX Linux がこれらすべての要件を満たし、さらにそれ以上の要件も満たします。ぜひ今すぐ当社にご連絡いただき、MontaVista の安全な Linux プラットフォームで ROS の独自のメリットをご活用ください。

製品やソリューションに関するより詳細な情報につきましては、sales@mvista.com にご連絡いただくか、 request フォームにてお尋ねください。