ROS_Kinetic_x 目前已更新的常用機器人資料 rosbridge agvs pioneer_teleop nao TurtleBot
Running Rosbridge
Description: This tutorial shows you how to launch a rosbridge server and talk to it.
Keywords: rosbridge, roslibjs, teleoperation, Robot Web Tools
Tutorial Level: BEGINNER
Installing Rosbridge
Rosbridge depends on a basic installation of ROS. Check out the ROS Installation Guide for installing ROS on your machine.
After ROS is installed, you can install Rosbridge from a .deb package:
sudo apt-get install ros-<rosdistro>-rosbridge-suite
This will install the suite of rosbridge packages needed to get started.
Running Rosbridge
After installing ROS and rosbridge, you need to make sure your system is aware of the packages. To set up your environment for ROS and rosbridge:
source /opt/ros/<rosdistro>/setup.bash
All that's left is to run rosbridge. To launch rosbridge and its packages like rosbridge_server and rosapi, a launch file is included in the install. To launch the file, run:
roslaunch rosbridge_server rosbridge_websocket.launch
This will run rosbridge and create a WebSocket on port 9090 by default.
You can configure the port by setting the ~/port param in ROS. An example launch file that will run rosbridge on port 8080 would look like:
<launch>
<include file="$(find rosbridge_server)/launch/rosbridge_websocket.launch" >
<arg name="port" value="8080"/>
</include>
</launch>
Talking to Rosbridge
Now that rosbridge has been launched and a WebSocket connection is available, we can create a basic HTML webpage to send and receive calls to rosbridge. Roslibjs is a JavaScript library that handles the communication for you. Check out the getting started with roslibjs tutorial to create a webpage with roslibjs and rosbridge.
AGVS Tutorials
In this page there's a list of tutorial to start using the Agvs robot.
Contents
Launching gazebo model and controller
1. Launch Gazebo model
roslaunch agvs_gazebo agvs.launch
2. Launch Gazebo controller
roslaunch agvs_robot_control agvs_robot_control.launch
3. Launch pad to control the robot with a ps3 joystick
roslaunch agvs_pad agvs_pad.launch
Building a map of Willow Garage
1. Launch Gazebo model
roslaunch agvs_gazebo agvs_office.launch
2. Launch Gazebo controller
roslaunch agvs_robot_control agvs_robot_control.launch
3. Launch pad to control the robot with a ps3 joystick
roslaunch agvs_pad agvs_pad.launch
4. Launch gmapping to create the map
roslaunch agvs_complete agvs_gmapping.launch
5. Move around and create the map. You can use rviz to see how the map is being created.
6. Save the map
rosrun map_server map_saver -f name_map
Autonomous movement (Pure Pursuit)
It is possible to move the robot through a path by using the package purepursuit_planner. First of all, we'll need to load a map.
1. Loading a previous saved map of Willow Garage
roslaunch agvs_complete map_server.launch
2. Launch amcl to have a pose estimation in the map
roslaunch agvs_complete amcl_diff_2.launch
3. Launch the planner to move the robot following the desired path
roslaunch purepursuit_planner purepursuit.launch
4. Launch an interactive marker to set the path in the map
roslaunch purepursuit_planner purepursuit_marker.launch
VREP model
1. Install latest V-REP version (after 3_1_2 packages do also work in catkin).
2. Link and compile the vrep ros packages
cd catkin_ws/src
ln -sf /opt/V-REP_PRO_EDU_V3_1_2_64_Linux/programming/ros_packages/vrep_common/
ln -sf /opt/V-REP_PRO_EDU_V3_1_2_64_Linux/programming/ros_packages/vrep_joy/
ln -sf /opt/V-REP_PRO_EDU_V3_1_2_64_Linux/programming/ros_packages/vrep_plugin/
3. Start the roscore (before starting V-REP)
4. Start VREP
cd /opt/vrep
./vrep.sh &
5. Load the requested scene or import the robot model.
- the scene (*.ttt) can be found under the agvs_description/vrep folder
6. Press play in V-REP to start simulation Note that in order to allow the agvs_robot_control node to perform an accurate estimation of the odometry, the RT mode in V-REP has to be selected. Otherwise the robot motion won't match the motion published in the joint_states.
7. Start robot pad (to move the robot manually)
roslaunch agvs_pad agvs_pad.launch
8. Start robot control
roslaunch agvs_robot_control agvs_robot_control.launch
pioneer_teleop
Page
- Immutable Page
- Info
- Attachments
User
Dependencies (3)
Jenkins jobs (2)
Package Summary
Continuous integration Documented
The pioneer_teleop package provides teleoperation using keyboard, sockets or command line for the Adept MobileRobots Pioneer and Pioneer-compatible robots (Including Pioneer 2, Pioneer 3, Pioneer LX, AmigoBot, PeopleBot, PatrolBot, PowerBot, Seekur and Seekur Jr.).
- Maintainer status: maintained
- Maintainer: Amine BENDAHMANE <bendahmane.amine AT gmail DOT com>
- Author: Amine BENDAHMANE <bendahmane.amine AT gmail DOT com>
- License: ISC
- Bug / feature tracker: https://github.com/amineHorseman/pioneer_teleop/issues
- Source: git https://github.com/amineHorseman/pioneer_teleop.git (branch: master)
Pioneer_teleop
A ROS package providing scripts for teleoperation using keyboard, sockets and command line.
The package is compatible with any robot using ROS ecosystem, but is originally implemented for Adept MobileRobots Pioneer and Pioneer-compatible robots (Including Pioneer 2, Pioneer 3, Pioneer LX, AmigoBot, PeopleBot, PatrolBot, PowerBot, Seekur and Seekur Jr.).
In case you have a different robot, please read http://wiki.ros.org/pioneer_teleop#What_if_my_robot_is_not_Pionner-compatible section
Contents
Use GitHub to report bugs or submit feature requests. [View active issues]
Dependencies
You need first to get and install pioneer_bringup package
Installation
After installing the dependencies, download or clone this repository in your caktin workspace:
cd ~/catkin_ws/src
git clone https://github.com/amineHorseman/pioneer_teleop.git
rosdep install pioneer_teleop
Build your workspace:
{{ cd ~/catkin_ws catkin_make }}}
Now, make sure that python scripts are executable:
cd ~/catkin_ws/src/pioneer_teleop/nodes
sudo chmod +x *.py
Usage
In this package, there are 3 teleoperation modes:
Keyboard teleoperation
roslaunch pioneer_teleop keyboard_teleop.launch
This allow you to control the robot motors using keyboard arrows, use + and - to increase or decrease the speed, and s to stop
A different version of keyboard teleoperation is also available using this command:
roslaunch pioneer_teleop discrete_keyboard_teleop.launch
In this case, the robot moves only for a small period of time (1.5 seconds by default) and then stops.
Sockets teleoperation
Controls the robot remotely throught socket commands (especially if you want to move the robot using a web interface via internet/LAN).
roslaunch pionner_teleop socket_teleop.launch
The expected commands are "forward", "backward", "left" or "right"
By default, the script listens to port 50001, and the robot moves only for 1.5 seconds. To change these parameters, you can use extra arguments as mentioned bellow:
roslaunch pionner_teleop socket_teleop.launch _port:=12345 _speed:=0.3 _move_time:=2.0
Command line teleoperation
Useful if you want to move the robot using command line throught a terminal or ssh:
roslaunch pionner_teleop socket_commandline.launch _direction:=forward
The expected commands (_direction argument) are "forward", "backward", "left" or "right"
By default, the robot moves only for 1.5 seconds at 0.2 speed. To change these parameters, you can use extra arguments as mentionned bellow:
roslaunch pionner_teleop socket_teleop.launch _direction:=backward _speed:=0.3 _move_time:=2.0
What if my robot is not Pionner-compatible?
This package is compatible with any robot using ROS as long as:
The velocity commands are published in /cmd_vel topic (see the next section). You modify the .launch scripts to remove the pionner_bringup call, or you execute directly the python scripts located in /nodes folder.
Known issues
Velocity command topic
By default, the scripts publish velocity commands to /cmd_vel topic.
In case your velocity commands topic has a different name, or you are not using Pionner-compatible robots, you will have to remap your velocity topic to /cmd_vel or change the topic name in the python scripts which are located in /nodes folder
nao
Page
- Immutable Page
- Info
- Attachments
User
Aldebaran Nao
Nao is a commercially available humanoid robot built by Aldebaran. The ROS driver was originally developed by Freiburg's Humanoid Robots Lab and Armin Hornung. It essentially wraps the needed parts of Aldebaran's NaoQI API (versions 1.14 and 2.1) and makes it available in ROS. It also provides a complete robot model (URDF).
Robots using ROS: Aldebaran Nao
Robots using ROS: Uni Freiburg's "Osiris" Nao
Contents
Community
There is an official SIG for NaoQI and Aldebaran's robots at https://groups.google.com/forum/?fromgroups#!forum/ros-sig-aldebaran. Please subscribe to it to get the latest news !
Tutorials
A complete list of tutorials can be found under tutorials. This includes the installation, startup and further advanced instructions how to connect ROS with your NAO.
Start all robot nodes: nao_bringup
See getting started for a walk-through guide to installing ROS, NAOqi, and rviz (may be outdated by now).
Library Overview
The core functionality is implemented in the nao_robot stack (can be installed on the robot or on a remote PC), extended with further functionality in nao_extras (should be installed on a remote PC).
sudo apt-get install ros-.*-nao-robot
sudo apt-get install ros-.*-nao-extras
For an outline of the libraries included, please see the tables below.
Basic Configuration
Capability |
ROS package/stack |
Robot-specific Messages and Services |
|
Robot model (URDF) |
|
Robot meshes |
Hardware Drivers and Simulation
Component |
ROS package/stack |
Actuator drivers |
naoqi_driver naoqi driver C++ |
naoqi_driver_py naoqi driver Python |
|
Basic sensor drivers |
naoqi_driver naoqi driver C++ |
naoqi_driver_py naoqi driver Python |
|
Sensor drivers |
|
Robot control |
High-Level Capabilities
Component |
ROS package/stack |
Teleop |
|
Footstep planning |
|
Execute / manage body poses |
|
Follow 2D path / walk to target |
|
Diagnostics / Visualization |
|
Interaction |
|
Planning / MoveIt! |
And more at nao_extras.
Simulation
You have the following options for simulating NAO:
You can use a simulated Nao in Webots and connect the driver to NaoQI on your local machine.
You can use a simulated Nao in Gazebo using plain ros_control architecture and no NaoQI features.
You can use a simulated Nao in Gazebo and connect the driver to NaoQI on your local machine.
Page
- Immutable Page
- Comments
- Info
- Attachments
User
TurtleBot
TurtleBot combines popular off-the-shelf robot components like the iRobot Create, Yujin Robot's Kobuki, Microsoft's Kinect and Asus' Xtion Pro into an integrated development platform for ROS applications. For more information about hardware, please see http://turtlebot.com.
BDFLs: Tully Foote (OSRF), Melonee Wise (Fetch Robotics)
ROS SW Maintainers: Michael Ferguson (Fetch Robotics), Tully Foote (OSRF), JihoonLee (Yujin Robot), Daniel Stonier (Yujin Robot)
Contents
Recently overhauled entire tutorial for indigo (24/03/15). |
Overview
Migration - what's new and shiny in your indigo turtlebot software!
About
- Turtlebot-Developer Habitats
Various usage scenarios for turtlebots and their developers.
- Interacting with your Turtlebot
The many ways you can provoke/inspire your turtlebot to action!
Preparation
- Turtlebot Installation
Installing software onto the turtlebot.
- PC Installation
Installing the software for your monitoring workstation pc.
- Network Configuration
Get turtlebot and your pc chatting to each other.
Bringup
- TurtleBot Bringup
How to start the TurtleBot software.
- PC Bringup
Connecting to the turtlebot from the PC.
- TurtleBot Care and Feeding
This tutorials explains how to charge and maintain your TurtleBot.
- Create Odometry and Gyro Calibration
This is only necessary if you have a Create base. The Kobuki comes with a factory calibrated gyro. This will show you how to calibrate or test the calibration of a TurtleBot which is highly recommended when running any navigation based application.
Applications
Looking Around
- A First Interaction
Run your first interaction with the turtlebot - chatter!
- Visualisation
Find and call launchers to visualise the turtle and its data streams.
- 3D Visualisation
Visualising 3d and camera data from the kinect/asus.
Teleoperation
- Keyboard Teleop
Keyboard teleoperation of a turtlebot.
- Joystick Teleop
Joystick teleoperation of a turtlebot.
- Qt Teleop
Qt teleoperation of a turtlebot.
- Interactive Markers Teleop
A tutorial describing how to use rviz interactive markers for controlling the TurtleBot.
Navigation
- SLAM Map Building with TurtleBot
How to generate a map using gmapping
- Autonomous Navigation of a Known Map with TurtleBot
This tutorial describes how to use the TurtleBot with a previously known map.
Something Funny
- The TurtleBot Follower Demo
This describes how to run the TurtleBot Follower Demo on your TurtleBot.
- The TurtleBot Panorama Demo
This describes how to run the TurtleBot Panorama Demo on your TurtleBot.
Android Interactions
- Download Turtlebot Android Apps from Play Store
Download android apps from Play Store to run turtlebot rapps on your turtlebot via android device
- How to Run Turtlebot Andorid Application
Instructions how to run turtlebot android application
- Turtlebot Android Application Dev Tutorial
Instructions how to develop turtlebot android app
Simulation
Stage
- TurtleBot in Stage Simulator
How to start turtlebot stage simulation
- Customizing the Stage Simulator
Explains how to use your own map with the stage simulator for turtlebot and adjust configurations for your needs
Gazebo
- Gazebo Bringup Guide
See the simulated turtlebot in Gazebo.
- Explore the Gazebo world
Cruise around in the Gazebo world and use RViz to "see" what's in it.
- Make a map and navigate with it
Use the navigation stack to create a map of the Gazebo world and start navigation based on it.
Development Corner
- Customising the Turtle
Pre-load your own customisations/configuration on the turtle.
- Create your First Rapp
Create, load and execute a 'babbler' rapp, and, is it really worth the effort?
- Create your First Interaction
Create, load and execute a 'babbler' interaction.
- Adding New 3D Sensor
Add support for a new 3D sensor to the turtlebot stack.
Tutorials describing how to develop android interactions can be found in the android corner.
Appendix
Rocon QT App manager
- Start Rapp with QT App manager
How to start implementation rapps with Rocon Qt App manager
Multi TurtleBot Concert
Teleop Concert
Teleoperate multiple turtlebots!
- TurtleBot Concert Bringup
how to start the turtlebot concert
- Bring up Turtlebot as Concert Client
how to start the turtlebot concert
- Teleop a turtlebot via Concert
how to teleoperate turtlebot in concert
Other Resources
ROS_Kinetic_x 目前已更新的常用機器人資料 rosbridge agvs pioneer_teleop nao TurtleBot的更多相关文章
- ROS_Kinetic_x 基於ROS和Gazebo的RoboCup中型組仿真系統(多機器人協作)
國防科學技術大學發布了RoboCup中型組仿真平臺,基於ROS和Gazebo設計. 該平臺可以用於多機器人協作研究.參考資料如下: ROS新聞:1 http://www.ros.org/news ...
- Gazebo機器人仿真學習探索筆記(二)基本使用說明
在完成Gazebo7安裝後,需要熟悉Gazebo,方便之後使用. 部分源代碼可以參考:https://bitbucket.org/osrf/gazebo/src/ 如果還沒有安裝請參考之前內容完成安裝 ...
- Gazebo機器人仿真學習探索筆記(三)機器人模型
gazebo_models:https://bitbucket.org/osrf/gazebo_models 模型庫下載,可以參考如下命令: ~/Rob_Soft/Gazebo7$ hg clone ...
- Gazebo機器人仿真學習探索筆記(一)安裝與使用
Gazebo提供了多平臺的安裝和使用支持,大部分主流的linux,Mac以及Windows,這裏結合ROS以Ubuntu爲例進行介紹. 首先是參考資料:http://gazebosim.org/tut ...
- ROS常用三維機器人仿真工具Gazebo教程匯總
參考網址: 1. http://gazebosim.org/tutorials 2. http://gazebosim.org/tutorials/browse Gazebo Tutorials Ga ...
- Gazebo機器人仿真學習探索筆記(七)连接ROS
中文稍后补充,先上官方原版教程.ROS Kinetic 搭配 Gazebo 7 附件----官方教程 Tutorial: ROS integration overview As of Gazebo 1 ...
- Gazebo機器人仿真學習探索筆記(六)工具和实用程序
Gazebo附带了许多工具和实用程序. 这些教程说明了这些可用的工具,以及如何使用它们. 主要有: 1 记录和播放 2 日志过滤 3 应用力/扭矩 4 HDF5数据集 官网介绍通俗具体,非常容易,请参 ...
- Gazebo機器人仿真學習探索筆記(五)環境模型
環境模型構建可以通過向其中添加模型實現,待之後補充,比較有趣的是建築物模型, 可以編輯多層樓層和房間,加入樓梯,窗戶和牆壁等,具體可以參考附錄,等有空再補充. 起伏地形環境構建可以參考之前內容:在Ga ...
- Gazebo機器人仿真學習探索筆記(四)模型編輯
模型編輯主要是自定義編輯物體模型構建環境,也可以將多種模型組合爲新模型等,支持外部模型導入, 需要注意的導入模型格式有相應要求,否在無法導入成功, COLLADA (dae), STereoLitho ...
随机推荐
- MySQL之存储过程和函数
存储过程和函数: 1.创建存储过程和函数: 存储过程: delimiter $$ create procedure proc_name() BEGIN 查询语句; // 记得加分号 END $$ de ...
- 【实验吧】CTF_Web_简单的SQL注入之1
题目链接:http://ctf5.shiyanbar.com/423/web/ 简单的SQL注入之1,比2,3都简单一些.利用2 的查询语句也可以实现:1'/**/union/**/select/** ...
- [Codeforces 864A]Fair Game
Description Petya and Vasya decided to play a game. They have n cards (n is an even number). A singl ...
- CentOS7.4 源码安装MySQL8.0
MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 以下为本人2018.4.23日安装过程的记录.整个过程大 ...
- Unity3d 简单的小球沿贝塞尔曲线运动(适合场景漫游使用)
简单的小球沿贝塞尔曲线运动,适合场景漫游使用 贝塞尔曲线:(贝塞尔曲线的基本想法部分摘自http://blog.csdn.net/u010019717/article/details/4768 ...
- Map value类型不同的写法
Map value类型不同的写法 Map<String, Object> accountMap=new HashMap<String, Object>(); int userI ...
- IOS UITextView支持输入、复制、粘贴、剪切自定义表情
UITextView是ios的富文本编辑控件,除了文字还可以插入图片等.今天主要介绍一下UITextView对自定义表情的处理. 1.首先识别出文本中的表情文本,然后在对应的位置插入NSTextAtt ...
- IntelliJ IDEA 14.0.3 实战搭建Spring+SpringMVC+MyBatis组合框架
简介 Spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发的框架,对于新手来说也是比较容易学习入门的.虽说容易,但在框架搭建过程中仍然遇到了许多问题,因此用实 ...
- 最小费用最大流(luogu P3381 【模板】最小费用最大流)
题目链接 题目描述 如题,给出一个网络图,以及其源点和汇点,每条边已知其最大流量和单位流量费用,求出其网络最大流和在最大流情况下的最小费用. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S. ...
- C/C++知识大纲(只有作者看得懂的笔记)
c标准库部分冷门函数. stdio.h char buf[256]; sscanf(buf,"%s",&buf); sprintf(buf,"Name: %s&q ...