5.Logging In

Once the robot is turned on and the robot is on the network, ssh into the computer of the robot using the default fetch user account:

$ ssh fetch@<robot_name_or_ip>

robot_name_or_ip will be either an IPv4 network address, or a network name, depending on the configuration of your local network. If your computer and network is setup for multicast DNS (mDNS) then you may be able to use fetchXYZ.local as the network name where XYZ will be the serial number of your robot (remove any leading zeros from the serial number).

Default User Account

Each robot ships with a default user account, with username fetch and password robotics. It is recommended to change the password when setting up the robot.

Creating User Accounts

It is recommended that each user create their own account on the robot, especially when developing from source. To create an account on the robot, ssh into the robot as the fetch user, and run the following commands

$ sudo adduser USERNAME
$ sudo usermod -G adm,cdrom,sudo,dip,plugdev,lpadmin,sambashare USERNAME

6. Moving the Base with your Keyboard

Note

You will need a computer with ROS installed to properly communicate with the robot. Please consult the ROS Wiki for more information. We strongly suggest an Ubuntu machine with ROS Indigo installed.

To teleoperate the robot base in simulation, we recommend using the teleop_twist_keyboard.py script from teleop_twist_keyboard package.

$ export ROS_MASTER_URI=http://<robot_name_or_ip>:11311
$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

Using Software Runstop

To activate the software runstop, publish True to the /enable_software_runstop topic.

Alternately, with the teleop runstop enabled, pressing both of the right trigger buttons (buttons 9 and 11) will activate the software runstop. The software_runstop.py script in fetch_bringup can be modified to change the button(s) for the software runstop.

Once activated, the software runstop can be deactivated by (1) toggling the hardware runstop, or (2) disabling the software runstop by passing False to the /enable_software_runstop topic.

Enable Teleop Software Runstop

Note

In order to edit the robot.launch file, you will need to use a terminal editor (such as nano or vim), or use the -X flag with SSH to use a graphical editor (such as gedit). Additionally, the editor must be launched with sudo. Instructions below use nano.

To enable the software runstop, first SSH into the robot, and then modify the robot drivers launch file to use it.

We need to modify the robot.launch file to pass the correct arg to the software runstop script:

$ sudo nano /etc/ros/indigo/robot.launch

In this file there should be a Software Runstop entry near the end. By default this entry contains an args line, with a value of “-a -b -g”. To add teleop control, add the “-t” flag as well. This section will then look like the below. If your robot is an older one and does not have a Software Runstop entry, you will want to simply copy the block the below.

<!-- Software Runstop -->
<include file="$(find fetch_bringup)/launch/include/runstop.launch.xml">
<arg name="flags" value="-a -b -g -t" />
</include>

Note that the -a, -b, -g flags correspond to letting the software runstop control the arm, base and gripper breakers, respectively.

Additionally, if completely disabling the software runstop functionality is desired, the above section in robot.launch can be commented out or removed.

Finally, restart the drivers so that our changes take effect:

$ sudo service robot stop && sudo service robot start

7. Visualizing Data

$ export ROS_MASTER_URI=http://<robot_name_or_ip>:11311
$ rosrun rviz rviz

Note

You will need a computer with ROS installed to properly communicate with the robot. Please consult the ROS Wiki for more information. We strongly suggest an Ubuntu machine with ROS Indigo installed.

You can now manually set up your RVIZ visualization or re-run RVIZ with a configuration file using the command line. The default .rviz configuration file for Fetch can be loaded using:

$ roscd fetch_navigation/config
$ export ROS_MASTER_URI=http://<robot_name_or_ip>:11311
$ rviz -d navigation.rviz

run a Freight robot (3)的更多相关文章

  1. run a Freight robot (1)

    1. Freight robot The Fetch and Freight Research Edition Robots are indoor laboratory robots. Coordin ...

  2. run a Freight robot (2)

    3.  Network Setup Connecting Freight to a Monitor The easiest way to configure the wireless networki ...

  3. Simulating a Freight robot in Gazebo

    Installation Before installing the simulation environment, make sure your desktop is setup with a st ...

  4. implement "slam_karto" package on a Freight robot

    1. login ssh fetch@<robot ip or robot name> 2.  set robot master modify .bashrc in robot's com ...

  5. 几个bat文件(关于robot freamwork安装)

    如果安装后 没有这几文件,或者在运行后 提示 文件缺少这个文件 , 就需要手动创建.   一般文件在 :C:\Python27\Scripts 这个目录下 1.pybot.bat文件: @echo o ...

  6. robot framework + win7 64 上的安装

    1.安装 python 2.7   2.cmd  管理模式 python -m pip install --upgrade pip     pip install robotframework==3. ...

  7. Robot Framework(一)入门

    1.1简介 Robot Framework是一个基于Python的,可扩展的关键字驱动的测试自动化框架,用于端到端验收测试和验收测试驱动开发(ATDD).它可用于测试分布式异构应用程序,其中验证需要涉 ...

  8. robotframework笔记19

    后处理输出 使用时自动测试 在测试执行报告和日志生成,并使用它 分别允许创建自定义报告和日志以及结合 和合并的结果. 使用Rebot 简介 rebot [options] robot_outputs ...

  9. robotframework笔记1

    机器人框架是一个基于Python的,可扩展的关键字驱动的自动化测试最终到终端的验收测试和验收测试驱动开发(ATDD)框架.它可用于检测分布式异类应用程序,其中,验证要求感人几种技术和接口. 下面列出了 ...

随机推荐

  1. MySql的Delete、Truncate、Drop分析

    MySql的Delete.Truncate.Drop分析 相同点: truncate 和不带 where 子句的 delete,以及 drop 都会删除表内的数据 不同点 1. truncate 和 ...

  2. 160908、前端开发框架Semantic UI

    简介 网页开发中,CSS控制网页样式.作为测试开发工程师,我个人不太擅长手写CSS.样式微调.兼容浏览器等工作,所以我选择使用成熟的前端框架,可以快速开发出样式美观的网站,也解决了大部分浏览器兼容问题 ...

  3. href="#"会导致location.replace(location.href);脚本不工作

    我们经常这样:<a onclick="xxx" href="#" 其实这不是一个好习惯,当点下这个连接后,主页面的URL后面会加个#号,这样就会导致很多J ...

  4. [转]Rotate a table in reporting services

    转自:http://stackoverflow.com/questions/9002796/rotate-a-table-in-reporting-services 12down voteaccept ...

  5. Python拷贝(深拷贝deepcopy与浅拷贝copy)

    Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块. 1.copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2.copy.deepco ...

  6. Mysql query log

    一.查询日志的概念: 查询日志记录MySQL中所有的query,通过"--log[=file_name]"来打开该功能.由于记录了所有的query,包括所有的select,体积比较 ...

  7. C#Winform常引用的库

    1.DevExpress:引用其下的不同DLL,可操作使用不同的控件 2.IrisSkin2:引用对应的DLL后,代码如下 private Sunisoft.IrisSkin.SkinEngine s ...

  8. git 冲突

    git中冲突会用特殊的标记 (<<<<<<<=======>>>>>>>) 特殊标记<<<< ...

  9. JavaScript DOM 编程艺术(第2版)读书笔记(2)

    JavaScript 语法 注释 单行注释:// 多行注释:/* */ "<!--"可以用作单行注释,由于和HTML的"<!--  -->"多 ...

  10. SQL-表链接

    查询两张表中相匹配的数据显示,不匹配的忽略 1.简单表连接 select * from 表1,表2 where 表1.字段=表2.字段 2.内链接 select * from 表1 inner joi ...