差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
| ros:study:04 [2017/01/11 07:38] – [オンラインによる地図生成] tsukuchalle | ros:study:04 [2018/05/24 04:07] (現在) – tsukuchalle | ||
|---|---|---|---|
| 行 4: | 行 4: | ||
| ===== slam_gmappingのインストール ===== | ===== slam_gmappingのインストール ===== | ||
| + | kinetic環境の人は, | ||
| + | $ sudo apt-get install ros-kinetic-slam-gmapping | ||
| + | $ sudo apt-get install ros-kinetic-map-server | ||
| - | indigo環境の人(推奨環境) | + | ===== オンラインによる地図生成 ===== |
| - | | + | |
| - | $ sudo apt-get install ros-indigo-map-server | + | |
| + | $ roscore | ||
| | | ||
| - | | + | |
| - | $ sudo apt-get install ros-jade-slam-gmapping | + | $ ypspur-coordinator |
| - | $ sudo apt-get install ros-jade-map-server | + | |
| + | ターミナル3 | ||
| + | $ rosrun ypspur_ros_bridge ypspur_ros_bridge | ||
| + | |||
| + | ターミナル4 | ||
| + | $ rosrun hokuyo_node hokuyo_node _port: | ||
| + | |||
| + | ターミナル5 | ||
| + | $ rosrun sensor_tf_test sensor_tf_test | ||
| + | |||
| + | ターミナル6 | ||
| + | $ rosrun | ||
| + | |||
| + | ターミナル7 | ||
| + | $ rosrun joystick_commander joystick_commander / | ||
| + | ロボットを走らせる。 | ||
| + | 走らせ終わったら、今までのターミナルを止めずに新しくターミナルを作り、次のコマンドで地図を保存する。 | ||
| + | |||
| + | ターミナル8 | ||
| + | $ mkdir -p ~/ | ||
| + | $ cd ~/ | ||
| + | $ rosrun map_server map_saver | ||
| 行 39: | 行 64: | ||
| ターミナル7 | ターミナル7 | ||
| - | $ mkdir -p ~/ | + | $ mkdir -p ~/ |
| - | $ cd ~/ros_study/ | + | $ cd ~/ |
| - | $ rosbag record -o log_name -a | + | $ rosbag record -o log_name -a //log_name はlogデータを取得した場所を入れるとよい |
| ログデータの保存が始まったら手動でロボットを走らせる。 | ログデータの保存が始まったら手動でロボットを走らせる。 | ||
| 行 73: | 行 99: | ||
| | | ||
| $ cd ~/ros_study | $ cd ~/ros_study | ||
| - | $ rosrun map_server map_saver -f map_name | + | $ rosrun map_server map_saver -f map_name |
| ~/ | ~/ | ||
| - | |||
| - | |||
| - | ===== オンラインによる地図生成 ===== | ||
| - | |||
| - | ターミナル1 | ||
| - | $ roscore | ||
| - | | ||
| - | ターミナル2(ロボットとPCを接続しておくこと) | ||
| - | $ ypspur-coordinator -p your_robot.param -d / | ||
| - | | ||
| - | ターミナル3 | ||
| - | $ rosrun ypspur_ros_bridge ypspur_ros_bridge | ||
| - | | ||
| - | ターミナル4 | ||
| - | $ rosrun hokuyo_node hokuyo_node _port: | ||
| - | | ||
| - | ターミナル5 | ||
| - | $ rosrun sensor_tf_test sensor_tf_test | ||
| - | | ||
| - | ターミナル6 | ||
| - | $ rosrun gmapping slam_gmapping scan:=scan | ||
| - | | ||
| - | ターミナル7 | ||
| - | $ rosrun joystick_commander joystick_commander / | ||
| - | ロボットを走らせる。 | ||
| - | 走らせ終わったら、今までのターミナルを止めずに新しくターミナルを作り、次のコマンドで地図を保存する。 | ||
| - | |||
| - | ターミナル8 | ||
| - | $ mkdir -p ~/ros_study | ||
| - | $ cd ~/ros_study | ||
| - | $ rosrun map_server map_saver -f map_name | ||
| - | |||
| ===== 地図生成の様子をrvizで見る ===== | ===== 地図生成の様子をrvizで見る ===== | ||
| 行 119: | 行 113: | ||
| 下記の画面のようにして、"/ | 下記の画面のようにして、"/ | ||
| - | {{:study:ros:2015: | + | {{:ros:study:fig4-1.png|}} |
| "Fixed Flame" | "Fixed Flame" | ||
| - | {{:study:ros:2015: | + | {{:ros:study:fig4-2.png|}} |
| <color red> | <color red> | ||
| 行 136: | 行 129: | ||
| $ rosrun gmapping slam_gmapping scan:=scan _particles: | $ rosrun gmapping slam_gmapping scan:=scan _particles: | ||
| - | ===== gmappingがエラーで動かないときの対処法(ver.1.3.7) ===== | ||
| - | |||
| - | Scan message must contain angles from -x to x, i.e. angle_min = -angle_max | ||
| - | 下記のコマンドでgmappingのリビジョンを古いのにすることで対処できる。 | ||
| - | |||
| - | $ cd ~/ | ||
| - | $ git clone https:// | ||
| - | $ cd ~/ | ||
| - | $ git reset --hard 30bab91de515984888fb96b208382ddc3dbaec96 | ||
| - | $ cd ~/catkin_ws | ||
| - | $ catkin_make | ||
| - | $ rosrun gmapping slam_gmapping scan: | ||
| - | |||
| - | |||
| - | この対処法の他にurg_nodeを使って、angle_minとangle_maxのパラメータを変更することでも対応できる。 | ||
| - | |||
| - | 追記:ver1.3.8でこのバグは直りました。 | ||