ROS と ROS2のソフトウェア開発についてアプリケーションからセンシング・ロボット制御まで全てにワンストップで対応でき、各種ロボットについてROS と ROS2での豊富な開発実績があります。また、次世代ロボット(スマートロボット)と言われるAI・物体/画像認識・遠隔制御・クラウド(RaaS)などの最新技術を活用した実績もあります。
- STRONG POINT -
ROS と ROS2で提供されているNavigation Stack, Navigation2, Perception, MoveIt,MoveIt2, Gazebo,Ignition Gazebo, Rviz,Rviz2, Open-RMF, micro-ROS, ros1_bridge, roswww, rosbride, roslibjs, ros_control, ros2_control,OpenCV, Point Cloud,Visual SLAM, Autoware, PCLなど様々なパッケージでのワンストップでの開発。AWSやAzureなどのクラウド環境での開発にも対応。また、お客様のお困り事や新規の開発を進めるために必要な要件定義などを実施するコンサルティングも可能。
- STRONG POINT -
産業用ロボット・協働ロボット・自律移動ロボット(AGV,AMR)・自立型海中ロボット(AUV)・宅配ロボット・サービスロボット・ドローンなどあらゆる形態のロボットのROS と ROS2での開発実績が多数。
- STRONG POINT -
AI・画像処理・遠隔制御・クラウド(RaaS)など最新技術を取り入れたスマートロボットへの対応実績。
活用シーンに応じて汎用性/拡張性に富むハードウェアを活用できるソフトウェア開発を支援します。
富士ソフトの支援領域
ROS と ROS2開発支援
アームロボット・自律移動ロボットの自動運転や人手作業の自動化といったROS と ROS2プラットフォームをベースとした新規システムの開発を支援します。
既存システムのROS対応、マイグレーション支援
異なるメーカーのロボットをROS と ROS2で開発したり、既存システムをROS と ROS2に連携させることによって、柔軟なシステムの構築を支援します。また、ROS1からROS2へシステム移行を行う際のマイグレーション支援も対応いたします。
環境構築支援
ROS と ROS2のパッケージ群やライブラリ群の中からお客様の開発に必要なものを選択し、お客様にとってより良い環境の構築を支援します。
デバッグ支援ソフト開発
ROS と ROS2の通信内容、センサー値等のログを取得できるツールの開発やお客様が開発したROS と ROS2ソースコードのデバッグを支援します。
シミュレーション環境構築支援
ロボットの導入前の事前確認のためのシミュレーション環境の構築を支援します。また、将来的にはデジタルツイン環境の構築も支援します。
プロトタイプ開発支援
製品化に向けたROS と ROS2のアルゴリズム検証やコード改修などの試作品の開発を支援します。
人手不足やコロナ禍を背景に、物流業界や飲食業界を中心として、AGVやAMRなどの自律移動ロボットの導入が盛んになってきました。また、すでに広く活用されている産業用ロボットとは違い、柵などで囲む必要がなく人と協働できる協働ロボットの開発や導入が盛んになっています。さらに業界を問わず、次世代ロボット(スマートロボット)やサービスロボットと言われるAIやクラウド(RaaS)などを活用した新たなロボットの開発も進められています。そのようなロボットの多くに採用されている技術として「ROS(Robot Operating System)」があります。
ROSは、ロボットのソフトウェア開発者向けのツールやライブラリから構成され、学術研究から産業用途まで幅広い分野で活用されています。アームロボット・自律移動ロボット・ドローン・自動運転・IoTなど幅広い用途に対応しており、オープンソースの豊富なパッケージを利用することでアームロボットの動作生成や、自律移動ロボットの経路生成などを効率的に作成することができます。
ROS1 |
|
---|---|
対応 OS | Linux(Ubuntu) |
開発言語 | C++, Python |
通信方式 | XMLRPC, TCPROS, UDPROS |
主要パッケージ | Navigation Stack, MoveIt |
ツール類 | Rviz, RQt, VSCode |
シミュレータ | Gazebo, Isaac Sim, Unity, Webots |
Plumbing
(通信)
ロボット処理向きの分散システムのため、出版/購読型を採用したノード間通信
Capabilities
(機能群)
ロボット開発に役立つ機能を備えた数多くのライブラリやパッケージ群
Ecosystem
(エコシステム)
Wikiや掲示版、開発者発表会などの大規模かつ活発なコミュニティ活動
Tools
(ツール群)
通信の可視化、監視、ログ取得等の開発効率を支援する豊富なツール群
ROS(ROS1)は学術研究を主な対象として開発が始まりましたが、次第に商用にも利用が広がったこともあり、ROSの商用利用を目的とし、ROS1のコンセプトはそのままにセキュリティ・メンテナンス性・商用サポートなどのさまざまな観点から見直された次世代バージョン「ROS2」が開発されました。
ROS2が開発された経緯や新たに実装された機能などについては、インターネットで検索していただければヒットする記事があると思いますので、ここでは執筆時点でのROS2の現在地について筆者の主観を記載します。
当社にご相談や開発依頼をしてくるお客様で、新規でロボット等を開発しているお客様はROS2で開発を進めています。最近ROS界隈で注目されているNVIDIA社のIsaac ROSでは対象をROS2に限定しており、ワールドワイドでもROS2での開発に移行していることがうかがえます。さらに、開発元であるOpen Roboticsが新しいROS2群制御ライブラリ「Open-RMF」を開発しており、Gazebo Ignitionと並んで力を入れています。これにはfleet adapter、Free Fleet、Traffic Editor、RMF Web、RMF Panelといった多数のツールで群制御の基本機能が含まれています。
また、ROS2へ開発が移行し始めている背景としては、2025年のROS1のサポート終了、通信ミドルウェアとして信頼性の高いDDS(Data Distribution Service)や通信プロトコルとしてRTPS(Real-Time Publish-Subscribe)が採用、Microsoft社のVSCodeやMathWorks社のMATLAB & Simulinkなどの開発環境の整備。更にROS2のメジャーなパッケージ(Navigation2、MoveIt2など)のバグ改修などの開発の早さやロボット等で使用される各種センサーデバイス(Lidar、カメラなど)もメジャーなセンサーメーカーはROS2の対応が完了しており、ROS2での開発を後押ししています。
ROS2 |
|
---|---|
対応 OS | Linux(Ubuntu), Windows, Mac |
開発言語 | C++, Python, Rust |
通信方式 | DDS/RTPS |
主要パッケージ | Navigation2, MoveIt2 |
ツール類 | Rviz2, RQt, VSCode |
シミュレータ | Ignition Gazebo, Isaac Sim, Unity, Webots |
近年、複数台のロボットを組み合わせて配備することが一般的になりつつあります。このような状況では、群制御という技術が求められ、効率的な管理と制御が求められます。Open Roboticsでは、Gazebo Ignitionと並んで、新しいROS2ライブラリ 「Open-RMF」の開発に注力しており、これは複数のロボットを効率的に一元管理するための群制御ライブラリです。
このライブラリは「タスク管理・割当」「運行管理」「Fleet Adapter」という3つの機能で構成されており、他にもFree Fleet、Traffic Editor、RMF Web、RMF Panelなどのツールで運用されています。
物流や工場などでのAGVやAMR、公共施設のサービスロボット等、複数のロボットを効率的に運用する際に役立ち、運行管理や衝突回避、タスクの割り当てやインフラ(自動ドアやエレベーターなど)との連携などの機能を提供します。
当社では、このライブラリを用いた調査・検証、他社とのPoC等を行っていますので、ぜひ弊社にご相談ください。
ROS(ROS1)は2025年にサポートが終了します。サポートが終了すると、セキュリティリスクや新技術への適応が難しい、コミュニティサポートの減少などの問題が出てきます。そこで、弊社では、既にROS1で開発されているシステムのROS2移行サポートを始めております。
ROS1からROS2へ移行を行うには、catkinビルドシステムからament,colconビルドシステムへの変更に対する対処や、roscppからrclcppへのクライアントライブラリの変更に伴う対処などが必要となり、パッケージ毎に適切な移行処置を行う必要があります。弊社は実際に、ROS1,ROS2の知識を利用して、お客様がお使いのROS1ナビゲーションシステムのROS2への移行対応などをしております。
様々なROSバージョンのROS2移行にも対応をいたしますので、検討されているお客様はぜひ弊社へご相談ください。
Autowareは、ROSをベースに開発された世界初の自動運転用オープンソースソフトウェア(OSS)であり、LiDAR・カメラ・レーダー・IMU・GNSSなどのセンサー情報が統合され、主に公道での認知・自己位置推定・経路計画・車両制御などの自動運転に必要な機能で構成されています。
また、Autowareのソフトウェアスタックとしては、センシング(SENSING)、ローカライゼーション(LOCALIZATION)、認知(PERCEPTION)、判断(PLANNING)、操作(CONTROL)、車両インターフェイス(VEHICLE INTERFACE)、地図データ(MAP DATA)などで構成され、様々な車両・用途での商用利用が可能となっています。
富士ソフトは、自動車の先進技術分野で幅広く貢献し、モビリティの発展を支えていくことを目指し活動しています。オープンソースの自動運転ソフトウェアAutowareの開発を主導するティアフォーと協業し、Autowareを活用した研修・教育講座を提供・修了認定する「TIER IV Autoware Partner Program」に参加し、ティアフォーとの強力なパートナーシップの下、ビジネスを推進しています。
Autowareに関するお問い合わせ等が御座いましたら、ぜひ弊社へご相談ください。
センサーフュージョンを用いた屋外走行AGVの開発
複数のセンサー情報(LiDAR、GPS)によるセンサーフュージョンやマルチマップ切替により
高精度な自己位置推定を行うことでAGVの屋外走行を実現
他にも多数の活用実績があります。
社外に公開できない情報もありますので、実績詳細をご希望の方はお気軽にお問い合わせください。
ナビゲーションシステムの地図なし走行化によるコスト削減
地図なしナビゲーションシステムExploreと物体検出アルゴリズムYOLO、深度センサによる位置特定などの技術を組み合わせることにより、事前の地図準備を不要とし、コスト削減に繋がるシステムを構築した
協働ロボットの作業変更に柔軟に対応する画像処理開発研究
~OpenCVとROS2の結合~
ルールベースの画像処理ライブラリであるOpenCVを用いることで、カメラの設置位置や照明の変更に対して低コストかつ柔軟に変更
屋内外環境での自律移動ロボットの自律走行システムの構築
屋内ではLiDARを中心とした自己位置推定システム、屋外ではGPSを中心とした自己位置推定システムを切り替えることにより、自律移動ロボットの屋内外走行システムを構築
検出物体に対するセンサーフュージョン技術の三次元データ生成
「カメラより得た画像データ」に対する物体検出技術と、「画像データ + LiDARから得た点群データ」にセンサーフュージョン技術を組み合わせて、検出物体の大きさや長さの情報を含んだ三次元データの生成
FA利用による「Open-RMF」と産業用通信「PLC」の制御の研究
複数台制御ライブラリ「Open-RMF」によるROS2の自律移動ライブラリ「Navigation2」制御と、産業用ネットワーク「PLC」の制御の研究
FUJISOFT Technical Report
ROS(Robot Operating System)は、日本においてはまだ知る人ぞ知る、ロボットのソフトウェア開発技術です。海外では、ロボット以外でもROSを活用した様々な開発が行われています。パソコンやスマートフォンのOSは、WindowsやiOS、Androidなど海外勢に取って代わられましたが、ロボットのソフトウェア開発においては、ROSが主流になる可能性も高いのではないでしょうか。
Monoist
人手不足やコロナ禍を背景に、物流業界や飲食業界を中心にして、AGV(Automated Guided Vehicle)やAMR(Autonomous Mobile Robot)などの自律型移動ロボットの導入が盛んになってきた。また、以前からある産業用ロボットとは違い、柵などで囲む必要がなく人と協働できる協働ロボットの開発や導入が盛んになっている。そのようなロボットの多くに採用されている技術として「ROS(Robot Operating System)」がある。
FUJISOFT Technical Report
近年、ロボット技術の発達・普及に伴い、様々な産業で自律移動ロボットの導入が進んでいます。運搬や清掃など、ロボットの役割も多岐にわたります。複数台、複数社のロボットを組み合わせて同じ環境に配備することも珍しいことではなくなりました。そのような現場では、「複数台のロボットを効率的に制御する」、「複数社のロボットを一括管理する」といった課題を抱えているのではないでしょうか。
Monoist
ロボットプラットフォームとして知られる「ROS」の需要が高まり続けている。本稿では前後編に分けて、ROSの進化とデジタルツインの可能性について考察する。前編では、ROSの最新動向とデジタルツインへの対応状況について紹介する。
Monoist
ロボットプラットフォームとして知られる「ROS」の需要が高まり続けている。本稿では前後編に分けて、ROSの進化とデジタルツインの可能性について考察する。後編では、ROSのデジタルツイン活用の事例として、ROS 2を実装したロボットの実機とシミュレーションの連動について紹介する。
ROS と ROS2開発はぜひ、
富士ソフトにご用命ください!