IoT ROBOT Rover Project
2016.08.07 IoT AUTONOMUS ROVER PROJECT
1 About⇩
2 Artcle⇩
3 DOC⇩
4 GitHub⇩
5 Initial setting⇩
6 Basic⇩
7 application⇩
8 Practical ⇩
1 About
2 Article
3 DOC
1 Launching Erle-Rover ⇩ 2 Obstacle Avoidance ⇩ 3 Line Follower ⇩ 4 SLAM With Hector Mapping ⇩
1 Launching Erle-Rover ⇩ 2 Obstacle Avoidance ⇩ 3 Line Follower ⇩ 4 SLAM With Hector Mapping ⇩
4
5.1 Robots Erle-Rover ⇩ 5.2 Simulation Configuring your environment ⇩
Assembly First steps Connecting to Erle-Rover Exploring ROS $ rosnode list ⇩$ rostopic list ⇩/mavros /raspicam_node /rosoutMove it around! Control modes Operate Erle-Rover using ROSNo handlers could be found for logger "rosout" /camera/camera_info /camera/image/compressed /diagnostics /mavlink/from /mavlink/to /mavros/actuator_control /mavros/battery /mavros/cam_imu_sync/cam_imu_stamp /mavros/extended_state /mavros/global_position/compass_hdg /mavros/global_position/global /mavros/global_position/local /mavros/global_position/raw/fix /mavros/global_position/raw/gps_vel /mavros/global_position/rel_alt /mavros/image/camera_image /mavros/image/camera_image/compressed /mavros/image/camera_image/compressed/parameter_descriptions /mavros/image/camera_image/compressed/parameter_updates /mavros/imu/atm_pressure /mavros/imu/data /mavros/imu/data_raw /mavros/imu/mag /mavros/imu/temperature /mavros/local_position/local /mavros/manual_control/control /mavros/mission/waypoints /mavros/mocap/pose /mavros/px4flow/ground_distance /mavros/px4flow/raw/optical_flow_rad /mavros/px4flow/temperature /mavros/radio_status /mavros/rc/in /mavros/rc/out /mavros/rc/override /mavros/safety_area/set /mavros/setpoint_accel/accel /mavros/setpoint_attitude/att_throttle /mavros/setpoint_attitude/attitude /mavros/setpoint_attitude/cmd_vel /mavros/setpoint_position/local /mavros/setpoint_velocity/cmd_vel /mavros/state /mavros/time_reference /mavros/vfr_hud /mavros/vibration/raw/vibration /mavros/vision_pose/pose /mavros/vision_pose/pose_cov /mavros/vision_speed/speed_vector /mavros/wind_estimation /rosout /rosout_agg /tf /tf_staticNecessary setup to move Erle-Rover with ROS. Necessary changes in Erle-Brain2: 必要な変更 Edit the following file: /home/erle/ros_catkin_ws/install_isolated/setup-mavros.bash It's necessary add the following to enable override the RC. rosrun mavros mavros_node _fcu_url:="udp://:6001@" _gcs_url:="udp:// 10.0.0.1:9000@10.0.0.2:6000?ids=255,252,1" In your GCS, set this values for the following parameters: ARMING_CHECK 0 ARMING_REQUIRE 0 SYSID_MYGCS 1 NOTE: It's necessary change the drive mode to MANUALBlocksr>ローバー制御にAPMプランナーを使用したくない場合 ・Blocksで制御することができる
6 Basic
Launching Erle-Rover Executing APMrover2source ~/simulation/ros_catkin_ws/devel/setup.bash cd ardupilot/APMrover2 nav> ../Tools/autotest/sim_vehicle.sh -j 4 -f Gazebo --map --console nav> param load /simulation/ardupilot/Tools/Frame_params/3DR_Rover.param別の端末からsource ~/simulation/ros_catkin_ws/devel/setup.bash roslaunch ardupilot_sitl_gazebo_plugin rover_spawn.launchControlling Erle-Rover using MAVProxy最初の端末でローバー前方移動実行 mode MANUAL param set SYSID_MYGCS 255 rc 3 190 後退 rc 3 1200 RCの第三チャネルがスロットルに対応におりそれに上書きしています 値は1100から1900で 1500で停止 1500以上で前進 1500以下で後退 RCの第一のチャネルがヨー:ハンドルに適用され 1500以上で右折 1500以下で右折 rc 1 1400Visualing the images画像を表示する gazebo model にソナーセンサーを追加するにはローバーに次の行を追加する urdfでシミュレーションを再起動して params res_xとres_yで画像の幅と高さを変更することは簡単です ros_topic update_rateは更新速度を制御するトピックの名前ですLaser 2Dgazebo model にレーザー2Dを追加するには ローバーに次の行を追加します urdf シミュレーションを再起動して max_rangeand min_rangeで最大値と最小値の範囲を変更することは非常に簡単ですShowing the kinect image
Configuring your Ubuntu machineinstall the base packagesArdupilot Install ROS Indigo -> Kinetic It's convenient if the ROS environment variables are automatically added to your bash session every time a new shell is launched:sudo apt-get update sudo apt-get install gawk make git curl cmakeinstall the dependencies for MAVProxysudo apt-get install g++ python-pip python-matplotlib python-serial python-wxgtk2.8 python-scipy python-opencv python-numpy python-pyparsing ccache realpath libopencv-dev * sudo apt-get update * sudo apt-get install python-wxgtk-media3.0 * python-wxgtk-media3.0 : Python interface to the wxWidgets Cross-platform C++ GUI toolkit (wx.media)install MAVProxysudo pip2 install pymavlink MAVProxy catkin_pkg --upgrade The directory '/home/k/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. The directory '/home/k/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. * /home/k/.cache/pip /home/k/.cache/pip/http または その親ディレクトリは、現在のユーザーによって所有されておらず キャッシュが無効になっています。 そのディレクトリのパーミッションと所有者を確認してください。 sudoでpipを実行する場合は、sudoをの-Hフラグをすることもできます。 * pip 8.1.2が利用可能だが 8.1.1を使用しています。 pip install --upgrade pip でアップグレードが必要。Download and install ArUco. Download ArUco 1.3.0 from here Install ArUcocd ~/Downloads # Replace this with your Download directory tar -xvzf aruco-1.3.0.tgz cd aruco-1.3.0/ mkdir build && cd build cmake .. make sudo make installsudo apt-get install ros-kinetic-ros-baseecho "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc source ~/.bashrcGet rosinstall and some additional dependenciessudo apt-get install python-rosinstall \ ros-kinetic-octomap-msgs \ ros-kinetic-joy \ ros-kinetic-geodesy \ ros-kinetic-octomap-ros \ ros-kinetic-mavlink \ ros-kinetic-control-toolbox \ unzipAdd OSRF repository and install drcsimsudo sh -c 'echo "deb http://packages.osrfoundation.org/drc/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/drc-latest.list' wget http://packages.osrfoundation.org/drc.key -O - | sudo apt-key add - sudo apt-get update sudo apt-get install drcsimInstall Gazebo4 Install Gazebo models Download Python and C++ examples
7
8