.jpg/440px-P058324-119830_(cropped).jpg)
オープンソースロボティクスは、オープンソースのハードウェアとフリーソフトウェアを用いてロボットを開発し、設計図、回路図、ソースコードなどを公開するロボティクスの一分野です。そのため、オープンデザイン運動、メイカームーブメント[ 1 ]、オープンサイエンスと密接に関連しています。
要件
オープンソースロボティクスとは、ハードウェアに関する情報が容易に識別され、他の人が簡単に再構築できることを意味します。つまり、設計では入手しやすい標準的なサブコンポーネントとツールのみを使用し、部品表や詳細な(「イケアスタイル」)ステップバイステップの組み立てとテストの手順を含む、組み立てプロセスを詳細に文書化する必要があります。(CADファイルだけでは不十分です。組み立ての実行やテストの手順が示されていないためです。)これらの要件は、オープンソースハードウェア全般の標準であり、さまざまなライセンスや認証、特に査読付きジャーナルであるJournal of Open HardwareとHardwareXで定義されているものによって正式化されています
ソフトウェアのライセンス要件は、他のオープンソースソフトウェアと同じです。しかし、ソフトウェアコンポーネントを実際のロボットシステムで実用的に使用するには、通常、ロボットミドルウェアコミュニティの標準規格で定義されているように、他のソフトウェアとの互換性が必要です。
ハードウェアシステム
これまでのアプリケーションには以下が含まれます。
- ロボットアーム、例:PARA [ 2 ] [ 3 ]またはThor [ 4 ]
- 車輪付き移動ロボット。例:OpenScout [ 5 ]
- オープンダイナミックロボットイニシアチブのような四足歩行ロボット[ 6 ]
- AgiliciousなどのUAVクワッドコプター(ドローン)[ 7 ]
- ヒューマノイドロボット、例:iCub、Berkeley Humanoid Lite [ 8 ]
- 自動運転車、例:OpenPodcar [ 9 ](→パーソナルラピッドトランジット)
- 水中ロボット、例:OpenFish [ 10 ]
- 化学液体処理などの実験用ロボット[ 11 ]
- 垂直農法[ 12 ]
- 群ロボット、例:HeRoSwarm [ 13 ]
- 家事:掃除機がけ、床掃除[ 14 ]、芝刈り[ 15 ]
- ロボット戦闘[ 16 ]や自律走行レース[ 17 ]などのロボットスポーツ
- 教育[ 18 ]
ハードウェアサブコンポーネント
ほとんどのオープンソースハードウェア定義では、容易に入手できる限り、非オープンなサブコンポーネントをモジュール設計で使用することを許可しています。しかし、多くの設計では、最終的に完全にオープンな設計に到達することを目指して、できるだけ多くのサブコンポーネントにオープン性を押し込もうとしています
Open Source Ecologyなどのオープン ハードウェアの手動運転車両とそのサブコンポーネントは、多くの場合、出発点として使用され、自動化システムで拡張されます。
オープン サブコンポーネントには、 ArduinoやRISC-Vなどのサブコンポーネントとしてオープン ソース コンピューティング ハードウェアが含まれるほか、Open Source Motor Controller やODriveなどのオープン ソース モーターやドライバーも含まれます。
オープンハードウェアロボットインターフェースボード[ 19 ]は、ミドルウェアソフトウェアと物理ハードウェア間のインターフェースを簡素化することができます。
ソフトウェアサブコンポーネント
ミドルウェア
ロボティクスミドルウェアは、複数の他のソフトウェアコンポーネントを連携させるソフトウェアです。ロボティクスにおいては、標準化されたメッセージパッシングプロトコルを備えたリアルタイム通信システムを指します。主なオープンソースミドルウェアは、ロボットオペレーティングシステムであるROS2 (現在バージョン2)です。その他の選択肢としては、ROS1、 iCubで使用されているYARP 、URBI、Orcaなどがあります。オープンソースミドルウェアは通常、オープンソースオペレーティングシステム、 特にLinuxのUbuntuディストリビューション上で実行されます
ドライバソフトウェア
ほとんどのロボットセンサーとアクチュエーターにはソフトウェアドライバが必要です。ハードウェアデバイスはそれぞれ異なるため、このレベルではオープンソースソフトウェアの標準化はほとんどありません。クローズドハードウェア用のオープンドライバの作成は、低レベルのプログラミングとリバースエンジニアリングの両方が必要となるため 、困難です
シミュレーションソフトウェア
オープンソースのロボットシミュレーターには、Gazebo、MuJoCo、Webotsなどがあります。Godotなどのオープンソースの3Dゲームエンジンも、適切なミドルウェアインターフェースを備えている場合、シミュレーターとして使用されることがあります。[ 20 ] [ 21 ] [ 22 ] [ 23 ]
自動化ソフトウェア
AIレベルでは、多くの標準アルゴリズムがオープンソースソフトウェアで実装されており、そのほとんどはROS2です。主なコンポーネントは次のとおりです
コミュニティ
ロボットの設計図の作成と共有の人気が高まっている兆候は、メイカーカルチャーコミュニティで初めて見られました。遠隔操作車両(例:ロボットコンバット)の小規模なコンテストから始まったものは、すぐにSparkyのような自律型テレプレゼンスロボットの作成へと発展し、その後、Open Automaton Projectとして真のロボット(自ら判断を下せるロボット)へと発展しました。現在では、いくつかの民間企業も簡易ロボット作成キットを製造しています
コミュニティは、オープンソースハードウェアのライセンス、認証、査読済み出版物を採用しています。これらは、ソースコードがコミュニティの定義に基づいて正しく永続的に利用可能になっていることを確認し、それが確実に実行されていることを検証するものです。これらのプロセスは、多くの歴史的プロジェクトがオープンソースであると主張しながらも、商業化やその他の圧力によってその約束を覆してきたため、極めて重要になっています。
他のオープンソースハードウェアと同様に、コミュニティでは「組み立てやすさ」の正確な基準について議論が続いています。一般的な基準としては、設計は工科大学の学生が一般的なファブラボツールを使って数日で組み立てられるものでなければならないとされていますが、これらのサブ用語の定義についても議論の余地があります。
他のオープンソースハードウェアと比較して、オープンソースロボティクスは通常、ソフトウェア要素が大きく含まれているため、ハードウェアエンジニアだけでなくソフトウェアエンジニアも関与します。オープンソースの概念は、ハードウェアよりもオープンソースソフトウェアにおいて確立されているため、ロボティクスは、これらの概念を共有し、ソフトウェアからハードウェアへと移転できる分野です。
オープンソースロボットのコミュニティは多面的で幅広い背景を持つが、かなり大きなサブコミュニティがROSミドルウェアを使用しており、ROSCon [ 27 ]カンファレンスで会合を開き、ROS自体の開発やその上に構築された自動化コンポーネントについて議論している。
参考文献
- ^アリシア・ギブ(2015年)『オープンソースハードウェアの構築:ハッカーとメーカーのためのDIY製造』ニューヨーク:アディソン・ウェスレー、 253~ 277ページ、 ISBN 978-0-321-90604-5。
- ^ Tai, Albert; al, et (2021). 「PARA: カスタマイズ可能なエンドエフェクタを備えた、リーチ1メートル、ペイロード2kg、3自由度のオープンソースロボットアーム」 . HardwareX . 10 (209) e00209. doi : 10.1016/j.ohx.2021.e00209 . PMC 9123426 . PMID 35607683 .
- ^ Manzoor, Sarah; al, et (2014). 「自律的な物体操作のためのオープンソースの多自由度関節型ロボット教育プラットフォーム」 .ロボティクスとコンピュータ統合製造. 30 (3): 351– 362. doi : 10.1016/j.rcim.2013.11.003 .
- ^ 「Thorオープンソースロボットアーム」 。 2024年10月20日閲覧。
- ^ Carter, Sam; Tsagkopoulos, Nikolaos; Clawson, Garry; Fox, Charles (2023). 「OpenScout: オープンソースハードウェアモバイルロボット」 . Journal of Open Hardware . 7 (1). doi : 10.5334/joh.54 .
- ^ Grimminger, F; Meduri, A; et, al (2020). 「脚歩行研究のためのオープントルク制御モジュラーロボットアーキテクチャ」. IEEE Robotics and Automation Letters . 5 (2): 3650– 3657. arXiv : 1910.00093 . Bibcode : 2020IRAL....5.3650G . doi : 10.1109/LRA.2020.2976639 . S2CID 203610542 .
- ^ Foehn, Philipp; Kaufmann, Elia; Romero, Angel; Penicka, Robert; Sun, Sihao; Bauersfeld, Leonard; Laengle, Thomas; Cioffi, Giovanni; Song, Yunlong; Loquercio, Antonio; Scaramuzza, Davide (2022年6月22日). 「Agilicious: 視覚ベース飛行のためのオープンソースおよびオープンハードウェアのアジャイルクアッドローター」. Science Robotics . 7 (67) eabl6259. arXiv : 2307.06100 . doi : 10.1126/scirobotics.abl6259 . ISSN 2470-9476 . PMID 35731886. S2CID 249955269 .
- ^チー、ユフェン;廖、嘉源。ロング、ジュンフェン。ホアン・シャオユウ。シャオ、ソフィア。ニコリック、ボリヴォジェ。李中裕。スリーナス、コウシル (2025)。 「Berkeley Humanoid Lite のデモンストレーション: オープンソース、アクセス可能、カスタマイズ可能な 3D プリント ヒューマノイド ロボット」。arXiv : 2504.17249 [ cs.RO ]。
- ^ Camara, Fanta; Waltham, Chris; Churchill, Grey; Fox, Charles (2023). 「OpenPodcar: 自動運転車研究のためのオープンソース車両」 . Journal of Open Hardware . 7 (1). arXiv : 2205.04454 . doi : 10.5334/joh.46 .
- ^ van den Berg, Sander; Scharff, Rob; Rusák, Zoltan; Wu, Jun (2022). 「OpenFish: 高速移動を可能にするソフトロボットフィッシュのバイオミメティックデザイン」 . Hardware X. 12 e00320 . arXiv : 2108.12285 . doi : 10.1016/j.ohx.2022.e00320 . PMC 9178345. PMID 35694325 .
- ^ Faina, Andres; Nejati, Brian; Stoy, Kasper (2020). 「Evobot:科学実験のためのオープンソースのモジュール式液体ハンドリングロボット」 .応用科学. 10 (3): 814. doi : 10.3390/app10030814 .
- ^ Wichitwechkarn, Vijja; Fox, Charles (2023). 「MACARONS:垂直農法のためのモジュラー型オープンソース自動化システム」 . Journal of Open Hardware . 7 (1) 1. arXiv : 2210.04975 . doi : 10.5334/joh.53 .
- ^ Starks, Michael; et, al (2023). 「HeRoSwarm: オープンソースROSサポートを備えたフル機能小型群ロボットハードウェア設計」. 2023 IEEE/SICE 国際システム統合シンポジウム (SII) . pp. 1– 7. arXiv : 2211.03014 . doi : 10.1109/SII55687.2023.10039174 . ISBN 979-8-3503-9868-7. S2CID 253384613 .
- ^ 「床掃除ロボット」 . GitHub . 2024年9月13日閲覧
- ^ 「Open Mower」 . GitHub . 2024年9月13日閲覧。
- ^ 「オープンビルドのバトルボット」。
- ^ "f1tenth" .
- ^ Vrochidou, Eleni; Manios, Michail; Papakostas, George A.; Aitsidis, Charalabos N.; Panagiotopoulos, Fotis (2018年9月). 「オープンソースロボティクス:既存プラットフォームの調査と教育への応用」. 2018年 第26回国際ソフトウェア・電気通信・コンピュータネットワーク会議 (SoftCOM) . pp. 1– 6. doi : 10.23919/SOFTCOM.2018.8555860 . ISBN 978-9-5329-0087-3. S2CID 54438146 .
- ^ Waltham, Chris; Soni, Rakshit; Perrett, Andy; Fox, Charles (2025). 「R4:迅速で再現可能なロボティクス研究のためのオープンハードウェア制御システム」. Journal of Open Hardware . 9 (1). arXiv : 2402.09833 . doi : 10.5206/ joh.v9i1.22878
- ^ nordstream3 (2025年3月7日), nordstream3/Godot-4-ROS2-integration , 2025年3月9日閲覧
{{citation}}: CS1 maint: 数値名: 著者リスト (リンク) - ^ “ProviewR X Godot” . Nexedi . 2024年3月2日時点のオリジナルよりアーカイブ。2025年3月9日閲覧。
- ^ Peraltai, Daniel; Qin, Xin (2024). 「Godotシミュレータにおける柔軟なシナリオ生成の検討」arXiv : 2412.18408 [ cs.AI ].
- ^ plaans/gobot-sim、PLAN @ LAAS (plaans)、2025 年 1 月 27 日、2025 年3 月 9 日に取得
- ^ Jensen, Austin M.; Morgan, Daniel; Chen, YangQuan; Clemens, Shannon; Hardy, Thomas (2009年1月1日). 「オープンソースの低コスト無人航空機(UAV)を用いた3D写真測量と分散風速測定」.第3巻: ASME/IEEE 2009 メカトロニクスおよび組み込みシステムとアプリケーションに関する国際会議; 第20回信頼性、応力解析、故障予防会議. pp. 629– 634. doi : 10.1115/DETC2009-87586 . ISBN 978-0-7918-4900-2。
- ^ "nav2" 。 2024年10月20日閲覧
- ^ "MoveIt 2" . 2024年10月20日閲覧。
- ^ "ROSCon" . 2024年10月20日閲覧。