Biped walking 基于Gazebo仿真示例
搬运自Github
1. 准备材料
A. Ros 环境:indigo或者Hydro
B. Ros 自带的Gazebo 2.2.6
C. install 一些插件和ros的包
sudo apt-get update
sudo apt-get install git
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-desktop-full </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">gazebo </span>
<span style="font-family:Arial, Helvetica, sans-serif;">//上面三行要是装过了的就不用装了。</span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-gazebo-plugins </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-gazebo-ros </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-gazebo-ros-control </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-hector-gazebo </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-hector-gazebo-plugins </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-effort-controllers </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-joint-state-controller </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-joint-state-publisher </span>
<pre name="code" class="plain" style="font-size: 13.3333px;">sudo apt-get install <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">ros-hydro-turtlebot-teleop </span>
<span style="font-family:Arial, Helvetica, sans-serif;">//如果用的是indigo 就把hydro 替换成indigo即可</span>
D.
从Github上download下demo源文件:
DARwin-OP simulation ROS packages
I. 新建一个工作空间
cd ~
mkdir -p ros-darwin/src
cd ros-darwin/src
source /opt/ros/hydro/setup.bash
catkin_init_workspace
git clone https://github.com/HumaRobotics/darwin_description.git
git clone https://github.com/HumaRobotics/darwin_control.git
git clone https://github.com/HumaRobotics/darwin_gazebo.git
cd ..
catkin_make
source devel/setup.bash<span style="white-space:pre"> </span>//这句话在以后经常要用到,每一个终端都需要进入包,source一下devel内的setup.bash,相当于向ros系统声明了包的存在。
第一次跑仿真(First Launch)
在刚刚那个Source过的terminal(终端)里,roslaunch一下那个包中的launch文件
roslaunch darwin_gazebo darwin_gazebo.launch
然后会弹出gazebo的界面,里面有一个直立的机器人
这个时候机器人还动不了,因为没有给控制信号的msg,即使点击了下方的play按键,机器人也会坍塌。
新开一个窗口并且source一下
rosrun darwin_gazebo walker_demo.py
点击下方的play,
可以看到机器人开始运动
源视频网址(自己懒得录了,就那么回事):需要翻墙:
https://www.youtube.com/watch?v=adzVpweKMIM
想知道机器人具体的原理,可以看源代码:walker_demo.py和walker.py
eg:
rosrun image_view image_view image:=/darwin/camera/image_raw
可以打开当前机器人视线范围的图片:
也可以通过命令行控制机器人的运动:
rostopic pub /darwin/j_pan_position_controller/command std_msgs/Float64 -- 1
//让机器人的头部往左转,-1是右转
也可以使用Ros 的Tutorial里面那个乌龟的控制程序,
效果拔群~
更多的介绍还是看原文吧,关于Python API的介绍等等~