Camera

1.简介:

摄像头由镜头、镜 头模组、滤光片、CMOS/CCD、ISP、数据传输部分组成。光线经过光学镜头 和滤光片后聚焦到传感器上,通过 CMOS 或 CCD 集成电路将光信号转换成电信号,再经过图像处理器(ISP,Image Signal Processing)转换成标准的 RAW,RGB 或 YUV 等格式的数字图像信号,通过数据传输接口传到计算机端。

  1. 具体型号:

LRCP10230

  1. 数据获取分析:

基于ros系统编写摄像头launch文件如下:

<launch>

<include file="$(find astra_camera)/launch/astra.launch" >

<!-- <remap from="/camera/rgb/image_raw" to="/usb_cam/image_raw"/> -->

</include>

<node name="usb_cam" pkg="usb_cam" type="app_read.py" >

<remap from="/usb_cam/image_raw/compressed" to="/image_raw/compressed"/>

</node>

<!-- <node name="usb_cam" pkg="usb_cam" type="usb_cam_node" output="screen" >

<param name="video_device" value="/dev/video0" />

<param name="image_width" value="640" />

<param name="image_height" value="480" />

<param name="pixel_format" value="yuyv" />

<param name="camera_frame_id" value="usb_cam" />

<param name="io_method" value="mmap"/>

<remap from="/usb_cam/image_raw/compressed" to="/image_raw/compressed"/>

</node> -->

<!--node name="image_view" pkg="image_view" type="image_view" respawn="false" output="screen">

<remap from="image" to="/usb_cam/image_raw"/>

<param name="autosize" value="true" />

</node-->

</launch>

输入命令行roslaunch usb_cam usb_cam-test.launch开启摄像头节点并输出图像

在rviz(rqt_image_view)中看到图像如下

获取数据:采用rosbag进行数据的录制和读取。

首先查看rostopic

命令行:rosbag record /usb_cam/image_raw/compressed 录制摄像头数据

rosbag play *** 读取(播放)数据

运行如下:

命令行rostopic echo  /usb_cam/image_raw/compressed 打印摄像头数据

效果如下:

Lidar:

1.简介:

激光雷达(LiDAR,Light Detection and Ranging)主要用于高精地图制作、障碍 物识别和跟踪和自身定位,是目前公认 L3 级以上自动驾驶必不可少的传感器。 激光雷达具有高精度、高分辨率的优势,同时具有建立周边 3D 模型的前景,但 其劣势在于对静止物体(如隔离带、护栏等)的探测较弱且成本高昂(一套 64 线 Velodyne 激光雷达高达 70 万元)。它由激光发射机、光学接收机、转台和信 息处理系统等组成。其工作原理是向目标发射探测信号(激光束),然后将接收到 的从目标反射回来的信号(目标回波)与发射信号进行比较,作适当处理后,就可 获得目标的有关信息,如目标距离、方位、高度、速度、姿态、甚至形状等参数, 从而对目标进行探测、跟踪和识别,输出的数据称为“点云”(Point Cloud), 目前有 PCL(Point Cloud Library)开源库支持这类数据的读写处理。 为了覆盖 一定角度范围需要进行角度扫描,从而出现了各种激光雷达扫描原理,主要分为: 同轴旋转、棱镜旋转、MEMS 扫描、相位式、闪烁式。

  1. 具体型号:

RPLIDAR A2由SLAMTEC公司开发的新一代低成本二维激光雷达(LIDAR),它具有每秒高达 8000 次①的高速激光测距采样能力。并配备了 SLAMTEC 独有的光磁融合技术,克服了传统激光雷达的寿命限制,可长时间可靠的稳定运行。RPLIDAR A2 的典型旋转频率为 10hz (600rpm),在典型旋转频率下可以实现 0.45°的角度分辨率。并可在 5-15hz 范围内任意调整转转频率。得益于 SLAMTEC 的高性能激光三角测距系统,RPLIDR A2 在各种室内环境以及无日光直接照射的室外环境下均表现出色。

  1. 数据获取分析:

基于ros系统编写雷达launch文件如下:

<launch>

<node name="rplidarNode"          pkg="rplidar_ros"  type="rplidarNode" output="screen">

<param name="serial_port"         type="string" value="/dev/ttyUSB0"/>

<param name="serial_baudrate"     type="int"    value="115200"/><!--A1/A2 -->

<!-- <param name="serial_baudrate"     type="int"    value="256000"/> --><!--A3 -->

<!-- <param name="serial_baudrate"     type="int"    value="1000000"/> --><!--S2 -->

<param name="frame_id"            type="string" value="laser"/>

<param name="inverted"            type="bool"   value="false"/>

<param name="angle_compensate"    type="bool"   value="true"/>

</node>

</launch>

命令行roslaunch rplidar_ros rplidar.launch启动雷达

查看雷达相关的topic如下:

命令行 rostopic echo /scan 打印雷达数据

在rviz中进行雷达数据可视化,效果如下:

IMU

  1. 简介:

惯性测量单元(IMU,Inertial measurement unit)是测量物体三轴姿态角(或角 速率)以及加速度的装置。一般的,一个 IMU 包含了三个单轴的加速度计和三个 单轴的陀螺,加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺 检测载体相对于导航坐标系的角速度信号,测量物体在三维空间中的角速度和加 速度,并以此解算出物体的姿态。

  1. 具体型号

MPU9250 是一个 QFN 封装的复合芯片(MCM),它由 2 部分组成。一组是 3 轴加速度还有 3 轴陀螺仪,另一组则是 AKM 公司的 AK89633 轴磁力计。所以, MPU9250 是一款 9 轴运动跟踪装置,在 3X3X1mm 的封装中融合了 3 轴加 速度,3 轴陀螺仪以及数字运动处理器(DMP)并且兼容 MPU6515。其完美的 I2C 方案,可直接输出 9 轴的全部数据。MPU9250 具有三个 16 位加速度 AD 输出,三个 16 位陀螺仪 AD 输出,三个 6 位 磁力计 AD 输出。

  1. 数据获取分析

imu主要运用于robot运动过程中的位姿估计,基于ros系统编写位姿launch文件如下:

<launch>

<!-- Robot pose ekf -->

<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf" output="screen">

<param name="freq" value="30.0"/>

<param name="sensor_timeout" value="1.0"/>

<param name="odom_used" value="true"/>

<param name="imu_used" value="true"/>

<param name="vo_used" value="false"/>

<remap from="imu_data" to="imu" />

</node>

</launch>

命令行 roslaunch robot_pose_ekf test_robot_pose_ekf.launch 启动位姿估计

可以看到此时的topic中已包含/imu和/tf

命令行rostopic echo /imu 打印imu数据信息如下:

header:

seq: 24237

stamp:

secs: 1301628270

nsecs: 972690349

frame_id: /base_imu

orientation:

x: -0.628151834011

y: 0.0210457909852

z: -0.0200814530253

w: -0.777546823025

orientation_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

angular_velocity:

x: -0.00680741108954

y: -0.00184269389138

z: -0.00491618132219

angular_velocity_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

linear_acceleration:

x: -0.43050968647

y: 0.00864356849343

z: 9.79496383667

..

在rviz中进行位姿可视化

RFID、AGV(磁导航模块)、红外传感

  1. 简介:

射频识别 RFID 系统在实际应用中,电子标签附着在待识别物体表面,电子 标签中保存有约定格式的电子数据。阅读器可无接触的读取并识别电子标签中的 数据,从而达到自动识别物体的目的。

磁导航(Magnetic Navigation)是一项非常成熟的技术,主要通过测量路径上的 磁场信号来获取车辆自身相对于目标跟踪路径之间的位置偏差,从而实现车辆的 控制及导航。磁条导航具有很高的测量精度及良好的重复性,磁导航不易受光线 变化等的影响,在运行过程中,磁传感系统具有很高的可靠性和鲁棒性。

红外测距传感器利用红外信号遇到障碍物距离的不同反射的强度也不同的原理,进行障碍物远近的检测。红外测距传感器具有一对红外信号发射与接收二极管,发射管发射特定频率的红外信号,接收管接收这种频率的红外信号,当红外的检测方向遇到障碍物时,红外信号反射回来被接收管接收,经过处理之后,通过数字传感器接口返回到机器人主机,机器人即可利用红外的返回信号来识别 周围环境的变化。

  1. 具体型号:

RFID:

具有自动读取 IC 卡的 ID 号(即通电有 IC 卡靠近,就可以自动读取 16 进制 的 IC 卡号,通过串口发出),及通过发送命令操作 RFID 模块读写卡(被动读写 卡)功能。

AGV:

红外传感:

GY-53 是一款数字红外测距传感器模块,它功耗小,体积小,安装方便。

  1. 传感器数据获取:

该数据来源于小车运行实时输出数据,输出如下:

智能小车传感器(摄像头、雷达、红外传感器、RFID、AGV、IMU)总结及数据获取打印(ROS、C++)相关推荐

  1. 清洁机器人--沿边测距传感器 sharp psd红外传感器的FOV角度分析

    清洁机器人–沿边测距传感器 sharp psd红外传感器的FOV角度分析 文章目录 清洁机器人--沿边测距传感器 sharp psd红外传感器的FOV角度分析 1.LED灯珠的发光角度 1.1 理论基 ...

  2. 树莓派视觉跟踪小车_树莓派智能小车结合摄像头opencv进行物体追踪

    在开发树莓派智能小车的路上已经走了一年多时间了,起初做了以下简单的远程控制和避障功能,后来慢慢加入黑线循迹以及语音识别,物体识别的功能.前段时间在刷新闻头条的时候,偶然看到一外国大牛做的树莓派目标追踪 ...

  3. 硬件加油站 | 传感器 - PIR 人体红外传感器

    什么是 PIR 传感器? PIR 传感器,全称为"Passive Infrared Sensor",又称"人体红外线传感器",是一种可以探测人体热量的电子元件. ...

  4. 自动驾驶感知——红外传感器

    文章目录 1. 红外线基本概念 1.1 红外线探测的优缺点 1.2 红外线相关基础知识 1.3 红外辐射的基本知识 1.4 黑体.白体和透明体 1.5 相关物理定律 1.5.1 基尔霍夫定律 1.5. ...

  5. 红外传感器模块与 Arduino 连接

    红外传感器模块与 Arduino 连接 原文地址 Arduino 红外传感器接口 红外**接近传感器或红外传感器它发射红外光以感知周围环境,并可用于检测物体的运动.由于这是一个无源传感器,它只能测量红 ...

  6. 红外传感器型号和参数_LARK1Z CO2 20%VOL红外气体传感器

    微信公众号:Promisense 坚持阅读,支持原创 第59期 诺联芯在发布了中浓度(1%vol ~ 5%vol)和低浓度(100ppm ~ 10000ppm)的红外气体传感器之后,我们又研发出一款高 ...

  7. 使用红外传感器和Arduino制作数字转速表测量RPM

    在本篇文章中,我们使用红外传感器(IR Sensor)和Arduino开发板设计了一款数字转速表,用于测量旋转电机的转数RPM.只需将红外传感器模块与Arduino和1602 LCD显示模块连接即可. ...

  8. zigbee 源码 04_人体红外传感器

    所有课程见此链接: zigbee CC2530 系列教程 0 课程介绍 04_ZigBee 传感器组网--人体红外传感器 实验现象: 人体红外传感器跟光敏传感器检测方法类似:终端节点采集人体走动 信号 ...

  9. 非接触温度计中热电堆红外传感器的应用

    热电堆红外测温传感器 热电堆红外传感器直接感应热辐射,为非接触温度测量提供了解决方案,它具有创新的硅基微机械技术保证了它极好的长期稳定性,非常低的温度灵敏系数,极好的光电特性.它不需要冷却,但在整个温 ...

  10. Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器

    Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器 原文 一些机器人制作项目 使用Arduino UNO,L298N电机驱动器,红外传感器制作Arduino线路跟随器机器人车 展示 ...

最新文章

  1. 并发编程基础篇——第二章(如何创建线程)
  2. 开源软件5大常见问题及解决方法
  3. 三层着装概念 ,是户外着装的基本要求
  4. 26 | 红黑树(下):掌握这些技巧,你也可以实现一个红黑树
  5. c语言 画线函数,c语言绘制函数曲线
  6. 入门机器学习(十七)--编程作业-K-means和PCA(Python实现)
  7. socket编程(二) select 模型
  8. 项目还有哪些优化的地方
  9. AI2(App Inventor 2)离线版服务器(2019.8.25更新)
  10. 电脑系统没有自带的字体-楷体GB2312字体 免费版提供下载
  11. 如何看懂公司的财务报表(2)
  12. conda 安装完了之后安装torch总是失败
  13. JavaServer Faces 2.0 can not be installed解决方案
  14. MySQL简单入门教程
  15. sklearn机器学习:决策树tree.DecisionTreeClassifier()
  16. 算法与数据结构基础<一>----线性查找法
  17. JavaWeb(黑马程序员:数据库部分)
  18. 梦幻西游口袋版服务器信息错误,梦幻西游:合出这只宝宝的玩家很懵,藏宝阁卖不了,打书怕掉技能...
  19. DragGAN:interactive point-based manipulation on the generative image manifold
  20. 国产单片机系列:上海灵动微电子MM32使用笔记

热门文章

  1. Laravel 限流中间件 throttle 简析
  2. 关于安卓开发计步器在安卓10.0版本无法显示步数问题
  3. 智能遥控风扇方案开发
  4. c3po 配置文件详解
  5. jslint4java_在Eclipse中使用JSLint保证JavaScript代码质量
  6. python第八周项目答案_Python第七,八章练习题 (第四周作业)
  7. ssd算法思想和结构详解
  8. java semaphore(0)_Semaphore
  9. php+html配合方式小结
  10. Centos 7搭建、配置ftp(匿名用户)