在 Ubuntu 用UVC支持 使用 WebCam摄像头传感器

在 Ubuntu 用UVC支持 使用 WebCam摄像头传感器 在 Ubuntu 用UVC支持 使用 WebCam摄像头传感器 写在前面: 这里我为了省事,用了虚拟机。但注意,虚拟机下有的WebCam驱动程序可能不支持! ‘我的宿主机是Win 7系统。虚拟机工具VirtualBox 4.3.28. 虚拟系统:Ubuntu 14.04 LTS ‘VirtualBox上运行的Ubuntu系统,要使用摄像头,需打通VirtualBox对USB设备的支持,要安装对应的Oracle VM virtualBox Extension Pack(Google 搜索) ‘关于Ubuntu/Linux系统中cheese工具支持的摄像头类型,有一个叫做UVC的组织,提供了一套Linux UVC driver支持大部分型号的WebCam 本文使用的WebCam型号: Logitech HD Webcam C525 获取图像: 参考: ubuntu12.04+virtualbox+winxp的关于摄像头无法使用,声音出不来的问题 安装cheese以测试: $ sudo apt-get install cheese 或者通过 ubuntu 图形界面 软件app中心 搜索 cheese 进行 Install。 测试运行cheese: $ cheese 应该能看到图像了~~ 说明: cheese 或 guvcview 这样的 webcam on linux 工具都是内含 UVC Driver 的。

READ MORE

在 Ubuntu 用 OpenNI支持 使用 Kincet 传感器

在 Ubuntu 用 OpenNI支持 使用 Kincet 传感器 Use Kinect on Ubuntu with OpenNI(中文在后) You have to Refer this blog (backup link)and you may meet some incompatible contents, do not worry, the thought and path is correct. The very important doc you should read carefully is that on OpenNI’s GitHub site and that on SensorKinect GitHub site. The Core thing for this is Installing Driver for Kinect on Ubuntu. The two important packages you should install are: The OpenNI UNSTABLE version

READ MORE

Linux下软件的安装与卸载方法

Linux下软件的安装与卸载方法 Linux下软件的安装与卸载方法 百度文库源文件: http://wenku.baidu.com/view/25c6b35da1c7aa00b42acb49 在Linux下安装和卸载软件也非常简单,同样也有安装向导或解压安装的方式,不相同的只不过是除了二进制形式的软件分发外,还有许许多多以源代码形式分发的软件包。 Linux下软件的分发传统方式:  二进制Binary 文件 – 安装使用容易,但缺乏灵活性。  .rpm形式的二进制软件包  .bz2形式的二进制软件包  .tgz形式的二进制软件包  源代码形式分发  .src.rpm形式的源代码软件包:如, hello.src.rpm  .tar.gz 形式的源代码包  .tar.bz2形式的源代码包  提供安装程序的软件包分发  setup、install、install.sh等  bin文档  无需安装的软件包 使用yum和apt-get.软件管理方法  RedHat中yum这种高级的包管理  用YUM安装删除软件  用YUM查询软件信息  Ubuntu中的高级包管理方法apt-get  安装和运行 一、二进制分发软件包的安装与卸载 Linux软件的二进制分发是指事先已经编译好二进制形式的软件包的发布形式,其优点是安装使用容易,缺点则是缺乏灵活性,如果该软件包是为特定的硬件平台编译的,那它就不能在另外的平台或环境下正确执行。 1、*.rpm形式的二进制软件包 首先进入软件所在目录 安装:rpm -ivh *.rpm 卸载:rpm -e packgename 实例: 1、找到相应的软件包,比如soft.version.rpm,下载到本机某个目录; 2、打开一个终端,在非超级管理员终端使用命令:su – 转换成root用户; 3、cd soft.version.rpm所在的目录; 4、输入rpm -ivh soft.version.rpm 说明:RPM(RedHat PackgeManager)是RedHat公司出的软件包管理器,使用它可以很容易地对rpm形式的软件包进行安装、升级、卸载、验证、查询等操作,安装简单,而卸载时也可以将软件安装在多处目录中的文件删除干净,因此推荐初学者尽可能使用rpm形式的软件包。rpm的参数中-i是安装,-v是校验,-h是用散列符显示安装进度,*.rpm是软件包的文件名(这里的*.rpm特指*.src.rpm以外的以.rpm为后缀的文件);参数-e是删除软件包,packgename是软件包名,与软件包的文件名有所区别,它往往是文件名中位于版本号前面的字符串,例如apache-3.1.12-i386.rpm和apache-devel-3.1.12-i386.rpm是软件包文件名,它们的软件包名称分别是apache和apache-devel.更多的rpm参数请自行参看手册页:man rpm. 2、*.tar.gz/*.tgz、*.bz2形式的二进制软件包 安装:tar zxvf *.tar.gz 或 tar yxvf *.bz2 卸载:手动删除 说明:*.tar.gz/*.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后只有单一目录的软件,卸载时用命令"rm –rf软件目录名";如果解压后文件分散在多处目录中,则必须一一手动删除(稍麻烦),想知道解压时向系统中安装了哪些文件,可以用命令"tar ztvf *.

READ MORE

ROS进阶学习手记6.1 -- Launch File

ROS进阶学习手记6.1 – Launch File 在以后的ROS运用中,我们逐渐需要运行多个nodes,而launch file的编写是ROS高级运用的基础。 官方的launch file wiki文档好像不是很好用:wiki.ros.org/roslaunch/ 这里我主要参考:A Gentle Introduction to ROS by JasonM. O’Kane 的 Chapter6 先来尝尝鲜: 接着就是好好读书。 这里只会写一点总结文字。 :) == roslaunch - Commands and launch file == 1. How to usd launch file: Command: $ roslaunch package-name launch-file-name $ roslaunch ~/{workspace}/src/{pkgname}/example.launch All of the nodes in a launch file are started at roughly the same time. Request verbose output: $ roslaunch -v package-name launch-file-name 2. Creating launch files: 2.1 Where to place launch files {pkg directory}/launch/launchfile.launch

READ MORE

ROS进阶学习手记 9 -- 关于坐标系统 tf

ROS进阶学习手记 9 – 关于坐标系统 tf ROS tf 教程: 写一个tf 发布器 完成了tf的初步认识以后,我们将按照以下的大纲进行ROS_tf的学习: ref: http://wiki.ros.org/tf/Tutorials重要的一个参考是 古月居的博客: http://blog.csdn.net/hcx25909/article/details/9255001 1. 有关tf 的学习大纲 Writing a tf broadcaster (C++) This tutorial teaches you how to broadcast coordinate frames of a robot to tf. Writing a tf listener (C++) This tutorial teaches you how to use tf to get access to frame transformations. Adding a frame (C++) This tutorial teaches you how to add an extra fixed frame to tf. Learning about tf and time (C++) This tutorial teaches you to use the waitForTransform function to wait for a transform to be available on the tf tree.

READ MORE

ROS进阶学习手记 8 -- 认识tf

ROS进阶学习手记 8 – 认识tf TF - Transform 官网wiki对 tf 包的文档资料: http://wiki.ros.org/tf 了解了基本的tf的作用,来看个Demo: http://wiki.ros.org/tf/Tutorials/Introduction%20to%20tf 这个demo运行了一个双龟跟随的游戏,使用 teleop_key node进行第一个龟的导引,第二个龟跟随。 $ roslaunch turtle_tf turtle_tf_demo.launch 坐标变换的公式: create three coordinate frames: a world frame, a turtle1 frame, a turtle2 frame. tf broadcaster ____turtle coordinate frames____»>tf listener tf Tools $ rosrun tf view_frames To view the tf tree: $ evince frames.pdf Using rqt_tf_tree $ rosrun rqt_tf_tree rqt_tf_tree or: $ rqt & Using tf_echo Usage: rosrun tf tf_echo [reference_frame] [target_frame] $ rosrun tf tf_echo turtle1 turtle2 #turtle2 相对于 turtle1 的位置(站在turtle1上看turtle2) rviz and tf

READ MORE

ROS进阶学习手记 7.2 -- RViz仿真实例2:Create SmartCar

上一节玩了 exbot 在RViz里的仿真控制,这里我们用urdf文件写个自己的小车模型,ref: http://blog.csdn.net/hcx25909/article/details/8904292 (待修正) 1.  创建一个package: smartcar_description   创建一个package: smartcar_description  urdf  ,依赖:urdf    $ catkin_create_pkg smartcar_description urdf 2. SmartCar 尺寸数据    因为建立的是一个非常简单的机器人,所以我们尽量使用简单的元素:使用长方体代替车模,使用圆柱代替车轮,具体尺寸如下:    3. 创建智能车的描述文件smartcar.urdf    在smartcar_description文件夹下建立urdf文件夹,创建智能车的描述文件smartcar.urdf,描述代码如下:     4. 创建launch文件 <launch> <arg name="model" /> <arg name="gui" default="False" /> <param name="robot_description" textfile="$(find smartcar_description)/urdf/smartcar.urdf" /> <param name="use_gui" value="$(arg gui)"/> <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" ></node> <node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher" /> <node name="rviz" pkg="rviz" type="rviz" args="-d $(find urdf_tutorial)/urdf.rviz" /> </launch> 5. 效果演示    在Terminal中输入演示命令: $ roslaunch  smartcar_description  base.urdf.rviz.launch  gui:=true  这里我们遇到了一个错误,   我想原因是来源网页作者使用了Groovy版本的ROS(相对本系列使用的Hydro要老),所以我的计划是先完成urdf的学习再来进行此例程:http://wiki.ros.org/urdf 在完成urdf之前,关于ros_tf的学习应该是基础,所以接下来先进行ros tf(transform)的学习。 在学习tf过程中,发现运行多个节点需要用到launch文件,所以launch文件的学习应该是最前的。 launch file >> tf >> urdf

READ MORE

ROS Industrial 简介

ROS_I means ROS Industrial ROS_I 解决了哪些问题:   1. 让自动化可以互相协作,操纵器、末端执行器、感知系统/传感器,移动平台,周边设备,都可只用一种语言(ROS messages)交流。在无视OEM厂商品牌或者通信总线的情况下,也能协作。   2. 免费的封装模块库,提供了高级能力,最好的技术可以得到传播,绕开了专有厂商的锁定,再培训或价格问题。   3. 为制造自动化软件的开源开发,提供了监管和结构。在这个项目中的代码都是被复审过,并且自动评估质量指标。   4. 为学术研究提供了一个自我审查的渠道,使之可以快速应用到工业中。 Can I develop closed-source software for ROS-I and sell it for profit? A: Yes! We desire for the ROS-I community to foster all manner of new businesses selling ROS-I compatible software nodes, development tools, GUIs, support and integration services. Is ROS-Industrial suitable for real-time control? A: Like ROS, ROS-I nominally runs on Ubuntu Linux, which is not a real-time OS. ROS-I is fast enough to run closed-loop with perception systems for manufacturing automation applications, but (at least for now) ROS-I must be used as a high-level controller in conjunction with a low-level real-time controller (usually the one from the OEM), which closes servo feedback loops and provides safety behavior (e.

READ MORE

ROS进阶学习手记 7 -- RViz仿真实例1

【任务2】:     用simulator: RViz 工具,完成对小车的建模,名字drive RViz = dvrv, 用 dvrv_node 发布topic和数据格式,向它发送位置指令,使它能接受键盘输入,并完成前进,后退,转弯90°功能。     Topic, 还是拟用/turtle1/cmd_vel     Message Type: geometry_msgs/Twist     -----------     1. RViz介绍          参考:RViz Package Link: http://wiki.ros.org/rviz                    内含:RViz User Guide:    http://wiki.ros.org/rviz/UserGuide                               RViz Tutorials:        http://wiki.ros.org/rviz/Tutorials          rviz是一个显示机器人实体的工具,本身不具有模拟的功能,需要安装一个模拟器arbotix。但官网有关arbotix的资料很缺,跟另一个“10分钟上手玩ROS仿真”http://blog.exbot.net/archives/899, 对比一个不work的教程:ros_by_example_1_hydro.pdf  (6.2 Testing the Simulator),有兴趣可以研究5. Installing the ros-by-example Code以后,再玩6.2, 估计就work了。本次就不深入那个。     2. 用ExBot机器人实验室的包来仿真          打开terminal,输入命令: roslaunch exbotxi_rviz view_model.launch          将会打开rviz,并加载查看ExBot XI移动机器人平台模型的配置。          ExBot XI移动机器人平台兼容turtlebot了,这里就用turtlebot包的键盘控制node来控制机器人移动。 Ctrl + C 结束掉前面的程序,关闭terminal,然后再打开3个terminal,分别输入下面的3个命令: roslaunch exbotxi_bringup fake_exbotxi.launch roslaunch exbotxi_rviz view_mobile.launch roslaunch turtlebot_teleop keyboard_teleop.launch          跟这个“10分钟上手玩ROS仿真” 走完整个流程就好。

READ MORE

用网线直连的两台PC上的虚拟机通过网线通信的配置

Configure the ROS Networks: Quick Reference: http://blog.csdn.net/sonictl/article/details/46986565#t4 Above is for the higher user's reference. 虚拟机工具: VirtualBox 4.3.28 Host PC: Windows 7 Virtual Machine OS: Ubuntu 12.04 ===== 虚拟机与虚拟机的网络连接 ===== 物理结构: ┎────────────┒                    ┎────────────┒ ┃  虚拟机1   ┃                    ┃   虚拟机2  ┃ ┃------------┃        网线        ┃------------┃ ┃  宿主机1   ┃ <----------------> ┃   宿主机2  ┃ ┖────────────┚                    ┖────────────┚   要实现虚拟机1与虚拟机2的ping通,需要首先让宿主机1与宿主机2ping通 http://jingyan.baidu.com/article/3065b3b6c552edbecff8a4a1.html 使用Bridge方式桥接,相当于现在有了4台电脑用网线连接起来。   配置虚拟机1的ip为:         IP addr:192.168.2.111    Mask:255.255.255.0  DefaultGateway: 192.168.2.1   Bcast:default   配置宿主机1的ip为:         IP addr:192.168.2.1       Mask:255.255.255.0  DefaultGateway: 192.168.2.1   Bcast:default  配置虚拟机2的ip为:         IP addr:192.

READ MORE