1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

俺的ROSとは

Last updated at Posted at 2018-02-10

はじめに

この記事ではROSについての研究を1年間行った私によるROSの説明を致します。
間違った情報もある可能性があるためご注意ください。
万が一間違った情報があっても報告していただかなくて結構です。

ROSとは

ROSとはRobot Operating Systemの略称であり、ロボット開発のための様々なライリブラリを提供しているオープンソースソフトウェアである。

もっと簡単に言うとロボットを開発するときに便利なツールが無料で提供されている。
ROSのほとんどの研究がこれを理由に用いています。
私はルンバしか使わなかったので1つも利用しませんでしたが...

動作環境

OSはROSのバージョンによって変わります。
indigoならubuntu14.04
kineticならubuntu16.04
とにかくubuntuです。
windowsでは動作しません。

言語は基本的に**pythonかC++**です
高性能なロボットを動かすならC++
それ以外ならpythonっていうイメージがありますね。

基本的な通信方法

通信方法について説明する前に用語の説明

ROS.png

  • Publish:いわゆるメッセージの送信。出版する。
  • Subscribe:いわゆるメッセージを受信する。購読する。
  • Node:プログラム、もしくはソフトウェア
  • Topic:通信の仲介役
  • Master:通信の監視役、管理者

ROSでは非同期通信というものが行われています。
非同期通信における一番重要なものがTopicです。
ノードからノードへメッセージを送信したい場合、必ずこのTopicを介して行われます。

つまり、
1.ノードがメッセージをTopicにPublishする
2.Topicの更新が行われる
3.ノードに登録されているTopicが更新されるとSubscribeする
という流れです。

おわりに

かなり大雑把にROSについて説明しました。
次回はROSのメリットについて説明しようと思っています。
当然ですけど何にでもROSを使えばいいってわけじゃないんです。
あいつにも苦手なことはたくさんあるんです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?