Skip to main content
QUICK REVIEW

[論文レビュー] ROS Based Visual Programming Tool for Mobile Robot Education and Applications

Mustafa Karaca, Uğur Yayan|arXiv (Cornell University)|Nov 27, 2020
Robotics and Automated Systems被引用数 4
ひとこと要約

本論文では、モバイルロボットの教育および応用を目的として、Blocklyを用いたROS互換性を持つウェブベースのビジュアルプログラミングツールを提示する。初心者向けに直感的で構文フリーのプログラミングを可能にする。rosbridgeおよびroslibjsを活用することで、ウェブクライアントとROS対応eVrobot間のリアルタイム通信を実現し、遠隔操作、SLAM、および彷徨い動作の実装に成功し、コーディングの障壁を低減した。

ABSTRACT

Visual programming languages (VPLs) provide coding without typing texts. VPL makes coding easy to programmers with automatically adding usually used some code structure. Beginners in coding have generally two main challenges; transforming ideas into logical expressions and syntax errors. Syntax errors are impossible with VPLs because of there is no forgotten parentheses and semicolons. VPLs provide to focus on algorithm for programmers. VPL is a new trend for educational robotic environments. In this study, Robot Operating System (ROS) compatible web based visual programming system has been developed for evarobot. ROS provides libraries and tools to help software developers create robot applications. It provides hardware abstraction, device drivers, libraries, visualizers, message-passing, package management, and more. Blockly has been used as VPL for the study and to generate / use blocks (commucation, sensing etc.). Some applications were generated like teleoperation, SLAM and wander etc. In this system, communication between server and client is supported by rosbridge package. Web page connected to ROS which runs on server using roslibjs library. Rosbridge provides a JSON API to ROS functionality for non-ROS programs.

研究の動機と目的

  • 初心者がロボットプログラミングにおいて直面する課題、特に構文エラーと論理的な構造の構築を軽減すること。
  • 教育的モバイルロボットアプリケーション向けに、ロボットオペレーティングシステム(ROS)と互換性を持つウェブベースのビジュアルプログラミング環境を開発すること。
  • ブロックベースのプログラミングにより、コードを書かずに直感的なロボット制御とアルゴリズム開発を可能にすること。
  • rosbridgeおよびroslibjsを用いてJSONベースのAPIを通じてROS機能を統合し、クライアント・サーバー間のシームレスな通信を実現すること。
  • 本ビジュアルプログラミングインターフェースを用いて、遠隔操作、SLAM、自律走行などの実用的応用を実証すること。

提案手法

  • システムは、ロボット制御およびセンシングのためのコードブロックを生成・管理するため、ビジュアルプログラミングインターフェースとしてBlocklyを採用する。
  • ROSは、ハードウェア抽象化、デバイスドライバ、メッセージパッシング機能を提供する基盤となるロボットフレームワークとして使用される。
  • ウェブクライアントとROS間の通信は、ROSの機能をJSON APIとして公開するrosbridgeパッケージによって実現される。
  • ウェブクライアントはroslibjsを用いてROSにインターフェースし、ネイティブなROSインストールが不要な状態でリアルタイム制御とデータ交換を可能にする。
  • 遠隔操作、SLAM、および彷徨い動作といったアプリケーションは、低レベルのコードを抽象化したブロックベースの論理によって実装される。
  • システムはROSを実行するサーバー上でデプロイされ、標準ブラウザからウェブインターフェースにアクセス可能である。

実験結果

リサーチクエスチョン

  • RQ1ウェブベースのビジュアルプログラミング環境は、モバイルロボットプログラミングにおける初心者にとって、構文関連のエラーを低減し、アクセス性を向上させることができるか?
  • RQ2Blocklyのようなブロックベースインターフェースは、ROSと統合され、複雑なロボットタスクを効果的にサポートできるか?
  • RQ3rosbridgeおよびroslibjsの使用により、ROSでないウェブクライアントとROSシステム間で、リアルタイムかつ信頼性の高い通信が実現できるか?
  • RQ4ビジュアルプログラミングツールは、SLAMや自律ナビゲーションといった高度なロボットアプリケーションを効果的にサポートできるか?
  • RQ5ビジュアルプログラミングとROSの統合は、ロボット教育における学習曲線と開発時間にどのような影響を与えるか?

主な発見

  • ビジュアルプログラミングツールは、設計上構文エラーを完全に排除したため、ユーザーがコード構造ではなくアルゴリズム的論理に集中できるようになった。
  • rosbridgeおよびroslibjsを介したBlocklyとROSの統合により、ウェブクライアントとロボットシステム間でリアルタイムかつ双方向の通信が実現された。
  • 本システムは、遠隔操作、SLAM、自律走行といったキーロボットアプリケーションを、すべてビジュアルブロックのみで機能的に実装した。
  • ウェブベースのアーキテクチャにより、クライアントデバイスにローカルなROSインストールが不要な状態でeVrobotのリモートアクセスと制御が可能になった。
  • 本ツールは教育現場で効果を発揮し、概念的なアイデアから実行可能なロボット動作への移行を簡素化した。
  • ビジュアル環境内での標準ROSライブラリおよびツールの使用により、既存のROSエコシステムおよびワークフローとの互換性が維持された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。