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 ...
随机推荐
- codevs 搜索题汇总(钻石+大师级)
1043 方格取数 2000年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 设有N*N的方格图 ...
- [HNOI 2015]开店
Description 风见幽香有一个好朋友叫八云紫,她们经常一起看星星看月亮从诗词歌赋谈到 人生哲学.最近她们灵机一动,打算在幻想乡开一家小店来做生意赚点钱.这样的 想法当然非常好啦,但是她们也发现 ...
- SRM340 VegetableGarden
Description 你的蔬菜园形成了一个矩形网格.你决定检查一些小块土地.从左上角开始,你将走过菜园,回到起点.现在你想要检查一下菜园内的田地,于是你决定从左上角出发,在菜园里走一圈回到原处.最后 ...
- [HNOI2008]越狱
题目描述 监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱 输入输出格式 输入 ...
- ●codeforces 528D Fuzzy Search
题链: http://codeforces.com/problemset/problem/528/D 题解: FFT 先解释一下题意: 给出两个字符串(只含'A','T','C','G'四种字符),一 ...
- 51 nod 1766 树上的最远点对(线段树+lca)
1766 树上的最远点对 基准时间限制:3 秒 空间限制:524288 KB 分值: 80 难度:5级算法题 n个点被n-1条边连接成了一颗树,给出a~b和c~d两个区间,表示点的标号请你求出两个 ...
- bzoj4152[AMPPZ2014]The Captain 最短路
4152: [AMPPZ2014]The Captain Time Limit: 20 Sec Memory Limit: 256 MBSubmit: 1517 Solved: 603[Submi ...
- TensorFlow-Bitcoin-Robot:一个基于 TensorFlow LSTM 模型的 Bitcoin 价格预测机器人
简介 TensorFlow-Bitcoin-Robot:一个基于 TensorFlow LSTM 模型的 Bitcoin 价格预测机器人. 文章包括一下几个部分: 1.为什么要尝试做这个项目? 2.为 ...
- Vue生命周期-手动挂载理解
改前端遇到个bug,console能够输出值,但是前端不能显示. 我简直一脸懵逼,vue的问题?网络的问题?浏览器的缓存问题? 公司网络,所以直接排除网络问题. 浏览器缓存,试了下确实一定概率可以显示 ...
- filter和listener的生命周期
filter(过滤器)和listener(监听器)的生命周期 老实说 生命周期要是说成作用的时间范围我会理解的更好 filter package com.javaweb.filter; import ...