DRC vehicle tele operation with Atlas - modulabs/gazebo-tutorial GitHub Wiki

๊ฐœ์š”

vrcํ”Œ๋กœ๊ทธ์ธ์„ ์ด์šฉํ•ด์„œ ์•„ํ‹€๋ผ์Šค ๋กœ๋ด‡์„ ์ž๋™์œผ๋กœ ์ž๋™์ฐจ ์‹œํŠธ๊นŒ์ง€ ์ด๋™์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์šฉ์ž…๋‹ˆ๋‹ค. ์ž๋™์œผ๋กœ ์ž๋™์ฐจ์—์„œ ๋‚˜๊ฐ€๊ณ  ๋“ค์–ด๊ฐˆ๊ฒ๋‹ˆ๋‹ค.

Install DRC Simulator

DRC simulator ์™€ associated utilities.๋ฅผ ์„ค์น˜ํ•˜์„ธ์š”

Launch the DRC Simulator

the atlas_drc_vehicle_fire_hose.launch ๋ฅผ ์ด์šฉํ•ด์„œ ์‹คํ–‰ํ•˜๋ผ

VRC_CHEATS_ENABLED=1 roslaunch drcsim_gazebo atlas_drc_vehicle_fire_hose.launch

์•„ํ‹€๋ผ์Šค ๋กœ๋ด‡์„ ์ž๋™์ฐจ ๊ทผ์ฒ˜์— ์œ„์น˜์‹œํ‚ค์„ธ์š”

The VRC plugin์€ ์ž๋™์— ๋“ค์–ด๊ฐ€๊ณ  ๋‚˜๊ฐ€๋Š” ROS topics์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ด ํ† ํ”ฝ๋“ค์€ ์›”๋“œ์˜ ์–ด๋А๊ณณ์œผ๋กœ ๋ถ€ํ„ฐ๋ผ๋„ ํ˜ธ์ถœ๋ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

/drc_world/robot_enter_car
/drc_world/robot_exit_car

์ด ํ† ํ”ฝ์€ ์œ„์น˜๋ฉ”์„ธ์ง€๋ฅผ ์ทจํ•ฉ๋‹ˆ๋‹ค, ๋””ํดํŠธ์œ„์น˜๋กœ ๋ถ€ํ„ฐ ์˜ต์…‹๋งŒํผ ์‹œ๋ฌผ๋ ˆ์ดํ„ฐ ์‹คํ–‰ํ›„ 10์ดˆ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ์„ธ์š”, ์•ŒํŠธ๋ผ์Šค๊ฐ€ ์ค€๋น„๋ ์ˆ˜ ์žˆ๋„๋ก ์•„ํ‹€๋ผ์Šค๋ฅผ ์šด์ „์„์˜ ์‚ฌ์ด๋“œ ๋„์–ด๋ฐ–์— ์œ„์น˜์‹œํ‚ค๊ธฐ์œ„ํ•ด์„œ, robotexitcar topic์„ ์ด์šฉํ•˜์„ธ์š”~

rostopic pub --once /drc_world/robot_exit_car geometry_msgs/Pose '{ position: {x: -0.58, y: -0.2}}'

์Šน๊ฐ์ชฝ ์ž๋ฆฌ๋กœ ๋กœ๋ด‡์„ ์œ„์น˜์‹œํ‚ค์„ธ์š”

rostopic pub --once /drc_world/robot_exit_car geometry_msgs/Pose \
    '{ position: {x: -0.5, y: -3.5}, orientation: {w: 0.707, z: 0.707}}'

๋ช‡์ดˆ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ์„ธ์š”. robotexitcar messages๋ฅผ ๋ณด๋‚ด๊ฑฐ๋‚˜ ์‹œ๋ฌผ๋ ˆ์ดํ„ฐ๊ฐ€ ์ค€๋น„๋˜๊ธฐ ์œ„ํ•ด์„œ ๊ธฐ๋‹ค๋ฆฌ์„ธ์š”

the Atlas robot๋ฅผ vehicle์— ์œ„์น˜์‹œ์ผœ์ฃผ์„ธ์š”~

์šด์ „์ž ์‹œํŠธ์•ˆ์— ์•„ํ‹€๋ผ์Šค๋ฅผ ๋„ฃ์–ด์ฃผ์„ธ์š”. robotentercar topic ๊ณผ identity pose๋ฅผ ์ด์šฉํ•ด์„œ ์ด๋™์‹œํ‚ต๋‹ˆ๋‹ค.

rostopic pub --once /drc_world/robot_enter_car geometry_msgs/Pose '{}'

์•„ํ‹€๋ผ์Šค๋ฅผ ์œ„์น˜์˜ต์…‹์„ ํŠน์ง•์ง€์–ด์„œ ์šด์ „์ž ์‹œํŠธ์— ์œ„์น˜์‹œํ‚ค์„ธ์š”

rostopic pub --once /drc_world/robot_enter_car geometry_msgs/Pose '{position: {y: -0.6, z: 0.01}}'

VRC plugin์€ ์ž๋™์ฐจ์•ˆ์˜ ์•„ํ‹€๋ผ์Šค ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๊ณ ์ •๋œ ์กฐ์ธํŠธ๋ฅผ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.

์ž๋™์ฐจ ์•ˆ์˜ ์•„ํ‹€๋ผ์Šค๋กœ perception์„ ํ…Œ์ŠคํŠธ

์•„ํ‹€๋ผ์Šค๋ฅผ ์ž๋™์ฐจ์— ํƒœ์šฐ๊ณ , ๋‹น์‹ ์€ ๋‹ค๋ฅธ ์ง€์นจ์„œ์— ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ด์šฉํ• ์ˆ˜์žˆ์Šต๋‹ˆ๋‹ค. ์ž๋™์ฐจ๊ฐ€ ์ด๋™์ค‘์— perception systems ์„ ํ…Œ์ŠคํŠธ ํ• ์ˆ˜์žˆ์Šต๋‹ˆ๋‹ค.

๋ธŒ๋ ˆ์ดํฌ๋ฅผ ํ‘ธ์„ธ์š”

rostopic pub --once /drc_vehicle_xp900/hand_brake/cmd std_msgs/Float64 '{ data : 0 }'

์กฐํ–ฅํœ  ๋Œ๋ฆฌ๊ธฐ

rostopic pub --once /drc_vehicle_xp900/hand_wheel/cmd std_msgs/Float64 '{ data : 3.14 }'

gas pedal ๋ˆ„๋ฅด๊ธฐ

rostopic pub --once /drc_vehicle_xp900/gas_pedal/cmd std_msgs/Float64 '{ data : 1 }'

์ด์ œ ์ž๋™์ฐจ๋Š” ์Šน๊ฐ์‹œํŠธ์•ˆ์˜ ์•„ํ‹€๋ผ์Šค์™€ ๋“œ๋ผ์ด๋น™ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. rviz ๋ฅผ ์ด์šฉํ•œ ์ง€์นจ์„œ๋ฅผ ๋ฌ˜์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋‹น์‹ ์€ rviz๋ฅผ ์ด์šฉํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Atlas robot's foot๋ฅผ ์ด์šฉํ•˜์„ธ์š”, ๊ฐ€์Šค ํŒจ๋‹ฌ์„ ์ด์šฉํ•˜๊ธฐ์œ„ํ•ด