空飛ぶロボットのつくりかた

ロボットをつくるために必要な技術をまとめます。ロボットの未来についても考えたりします。

ROS

画像読み込みのお勉強

例えばros kinect のdepth imageは Data published on /camera/depth/image_raw is the depth in millimeters as a 16 bit unsigned integer. のようにパブされている。 [PARTLY UNSOLVED] Raw Kinect Depth Data - ROS Answers: Open Source Q&A Forum グレ…

ROS message_filtersのお勉強

複数のトピックの時間の同期を取りたいときなどに使用する。 Time Synchronizer ApproximateTime Policy Time Synchronizer imageとcamera_infoの同期をとっている The TimeSynchronizer filter synchronizes incoming channels by the timestamps contained…

ROSrviz/rqtのお勉強

ROS

rviz $ rosrun rviz rviz 左のaddからいろいろ追加してみよう rqt 素のrqt $ rqt rqt_plot $ rqt_plot topic指定 $ rqt_plot /turtle1/cmd_vel/linear/x rqt_image_view $ rosrun uvc_camera uvc_camera_node $ rqt そして Plugins->Visualization->ImageVie…

ROStfのお勉強

ROS

TFコマンド フレームツリーグラフ $ rosrun tf view_frames $ evince frames.pdf フレーム関係 $ roslaunch turtle_tf turtle_tf_demo.launch $ rosrun tf tf_echo world turtle1 At time 1496036356.439 - Translation: [5.544, 5.544, 0.000] - Rotation: …

ROSプラグインのお勉強

ROS

プラグインプログラムの作成 プラグインをエクスポート プラグインの登録 プラグインの記述 プラグインライブラリの構築 プラグインを利用する 実行 プラグインプログラムの作成 ベースプラグインクラス プラグインクラス で構成される プラグインをエクスポ…

ROSアクションのお勉強

ROS

rosアクションの復習 アクションの作成 型の定義 設定 actionの実装例 アクションの作成 型の定義 $ roscd sample $ mkdir action $ cd action $ touch sample.action sample.actionの中身↓ uint16[] freqs --- bool finished --- uint32 steps 上からGoal,R…

ROSメッセージのお勉強

ROS

rosメッセージの復習 メッセージコマンド メッセージファイルの作成 メッセージコマンド すべてのメッセージを表示 $ rosmsg list 指定したメッセージの型を表示 $ rosmsg show geometry_msgs/Twist geometry_msgs/Vector3 linear float64 x float64 y float…

ROSランチのお勉強

ROS

rosランチの復習 node include param arg remap,group node <launch> <node pkg="turtlesim" name="sim" type="turtlesim_node" output="screen" required="true" /> </launch> include 他のランチファイルの立ち上げる時 <launch> <include file="$(find beginner_tutorials)/launch/turtlemimic.launch" /> </launch> param <launch> </launch>

ROSパラムのお勉強

ROS

rosパラムの復習 利用可能なパラメータの表示 list get set delete 利用可能なパラメータの表示 set : パラメータを設定する get : パラメータを取得する load : ファイルからパラメータを取り込む dump : ファイルにパラメータを格納する delete : パラメー…

ROSサービスのお勉強

ROS

rosサービスの復習 全サービスを調べる あるノードが提供してるサービスを調べる あるサービスを提供するnodeを探したいとき サービスの情報を調べる サービスの利用 サービスの作成 サービスのmsgの作成 サービスサーバーの作成 サービスクライアントの作成…

rosを使ってセンサ取得データの保存

ROS

rosを使ってセンサ取得データを保存する。 環境 os: ubuntu16.04 ros: kinetic usb_cam編 インストール usb_camのインストール 参考:づーまー日記: 【備忘録】 ROS Kinetic でusb-camのインストール方法&使い方 データの表示 ターミナル1 $ roscore ター…

Raspberry Pi Kame プロトタイプ Mark0

raspi-kame作成 これまでやってきたことを組み合わせて、raspberry pi kameを作りました↓ 【ハード】 raspberry pi 3 dcモーター×2 サーボモータ×1(16個まで拡張可) 超音波センサ カメラ 【ソフト】 ros : kinetic kame ちょっとした段差なら登ります〜 な…

他のPCへ向けてrosの指令を送る方法

ROS_MASTER_URIを変更する .bashrcに以下のように記載しておくと便利 alias raspi_robot_mode=‘export ROS_MASTER_URI=http://{IPアドレス}:11311 export PS1=“[\033[41;1;37m]<raspi_robo>[\033[0m]\w$ ”’ こうすることで、他PCでroscoreが立ち上がっていると、自PCで動</raspi_robo>…

raspberry pi 3で ROS Kinetic Kame を動かす

raspberry pi 3 に Ubuntu Mate 16.04を入れる 以下からubuntu mateのimgをダウンロード ubuntu-mate.org SDカードフォーマッターでイレースフォーマットを実行 https://www.sdcard.org/jp/downloads/formatter_4/ DD for Windowsでイメージを書きこむ http:…

rosのpocketsphinxの使い方

インストール $ git clone https://github.com/mikeferguson/pocketsphinx.git $ sudo apt-get install gstreamer0.10-pocketsphinx $ sudo apt-get install gstreamer0.10-gconf 修正 pocketsphinx/nodes/recognizer.py pocketsphinx/nodes/voice_cmd_vel.p…

rosで3rdpartyのコードをインストールする時

rosのmkを追いかけてみる /opt/ros/indigo/share/mk/download_unpack_build.mk md5sumファイルがあれば $(ROS_ROOT)/core/rosbuild/bin/download_checkmd5.py $(TARBALL_URL) $(TARBALL) を実行 /opt/ros/indigo/share/ros/core/rosbuild/bin/download_check…

rosのワークスペース

ROS

ワークスぺース 参考: catkin/package.xml - ROS Wiki package.xml 参考: ja/ROS/Tutorials/CreatingPackage - ROS Wiki catkin/package.xml - ROS Wiki ビルド 参考: ROS/Tutorials/BuildingPackages - ROS Wiki

rosのNamesに関して

ROS

名前の種類 base relative/name /global/name ~private/name 参考: ja/Names - ROS Wiki Names - ROS Wiki Namespace and Remapping - ROS Answers: Open Source Q&A Forum ROS Naming and Namespaces | NooTriX Remap topic名やparameter名を簡単に変更で…

デバッガのお勉強

rosのデバッガ、IDE rosでもpdbが使える? 【ToDo】 rosでeclipseやpdbを使ってみる 参考: IDEs - ROS Wiki debug ros node python - ROS Answers: Open Source Q&A Forum How do I use eclipse with python (pydev) - ROS Answers: Open Source Q&A Forum …

rospyのお勉強

rospy.get_param パラメータサーバーから値をとってくる rospy.get_param(param_name, default) 参考: rospy/Overview/Parameter Server - ROS Wiki rospy.Time rate,sleep,durationなどよく使うものが多い rospy.Timer(period, callback, oneshot=False) p…

rosでテストを書いてみる

unittest CMakeLists.txt if(CATKIN_ENABLE_TESTING) find_package(rostest REQUIRED) add_rostest(test/mytest.test) endif() package.xml <test_depend>rostest</test_depend> <test_depend>python-nose</test_depend> ↑テストにnoseをつかう場合 mytest.test <launch> <node pkg="mypkg" type="mynode" name="mynode" /> </node></launch>

パラチュン用dynamic_reconfigureの使い方

ROS

dynamic_reconfigureの使い方 Tutorial.cfgファイルの作成 #!/usr/bin/env python PACKAGE = "dynamic_tutorials" # package name from dynamic_reconfigure.parameter_generator_catkin import * gen = ParameterGenerator() gen.add("int_param", int_t, 0…

ROSを勉強している方々のブログまとめ

ROS

お世話になっております。 大感謝。全部目を通したい。 rosとは 参考 ROSの概念 [ROSロボットプログラミング] ROSで使われる専門用語 - Qiita わかりやすいチュートリアル ROS Tutorials — ROS Tutorials 0.5.1 documentation ブログまとめ ros-robot.blogsp…

rosとarduinoでラジコンをつくる(arduino+pcをxbeeでつなぐ)

Xbeeのセットアップ robonchu.hatenablog.com に追加で、baud rateを57600に変更。9600のままだとうまくいかなかった。 以下参照。 baud rate parameter in rosserial_python arduino - ROS Answers: Open Source Q&A Forum 手順 くるまにmotor shield付きar…

rosとarduinoでラジコンをつくる(pc側)

joy stickでコマンドを送り、arduinoにros経由で信号を送る pythonでjoy stickのコマンドを受け取り(sub)送る(pub)コードを書く 手順 ターミナル1 $ roscore ターミナル2 $ rosrun joy joy_node ターミナル3 以下のpythonコードを実行 $ python joy_twist.py…

rosとarduinoでラジコンをつくる(arduino側)

めちゃくちゃ手抜き笑 rosでcmd_velを受け取って(subscribe)、arduinoのモーターを動かす 準備 arduino motor shield dc motor 手順 以下からモーターシールドのライブラリインストール Library Install | Adafruit Motor Shield | Adafruit Learning System…

ロボットの認識をつくろう(Tensorflowをつかう)

物体認識をtensorflowを使って行う。 OTLさんが既にrosで動かしてくれていた↓ ROS勉強記録: rostensorflow (というには程遠いけど一応動く一般物体認識ROSノード)作ってみた

超簡易版ROS

OTLさん凄い これを使えば簡単にロボットがつくれる github.com 参考 ほかの記事も面白い ROS勉強記録: ROS勉強会@DMM.make AKIBA

ロボットの目をつくろう(ステレオカメラをつかう)

ステレオカメラを用いて、距離が正しくとれるかの実験を行います。 rosを使って行います。使うカメラはweb cameraを2つ。 (TBD) 動作はしているものの キャリブレーションがうまくいっていないのか、正しく距離はかれず ToDo カメラ二つをがっちり固定 キ…