Camera
1.简介:
摄像头由镜头、镜 头模组、滤光片、CMOS/CCD、ISP、数据传输部分组成。光线经过光学镜头 和滤光片后聚焦到传感器上,通过 CMOS 或 CCD 集成电路将光信号转换成电信号,再经过图像处理器(ISP,Image Signal Processing)转换成标准的 RAW,RGB 或 YUV 等格式的数字图像信号,通过数据传输接口传到计算机端。
-
具体型号:
LRCP10230
- 数据获取分析:
基于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 扫描、相位式、闪烁式。
-
具体型号:
RPLIDAR A2由SLAMTEC公司开发的新一代低成本二维激光雷达(LIDAR),它具有每秒高达 8000 次①的高速激光测距采样能力。并配备了 SLAMTEC 独有的光磁融合技术,克服了传统激光雷达的寿命限制,可长时间可靠的稳定运行。RPLIDAR A2 的典型旋转频率为 10hz (600rpm),在典型旋转频率下可以实现 0.45°的角度分辨率。并可在 5-15hz 范围内任意调整转转频率。得益于 SLAMTEC 的高性能激光三角测距系统,RPLIDR A2 在各种室内环境以及无日光直接照射的室外环境下均表现出色。
- 数据获取分析:
基于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
- 简介:
惯性测量单元(IMU,Inertial measurement unit)是测量物体三轴姿态角(或角 速率)以及加速度的装置。一般的,一个 IMU 包含了三个单轴的加速度计和三个 单轴的陀螺,加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺 检测载体相对于导航坐标系的角速度信号,测量物体在三维空间中的角速度和加 速度,并以此解算出物体的姿态。
- 具体型号
MPU9250 是一个 QFN 封装的复合芯片(MCM),它由 2 部分组成。一组是 3 轴加速度还有 3 轴陀螺仪,另一组则是 AKM 公司的 AK89633 轴磁力计。所以, MPU9250 是一款 9 轴运动跟踪装置,在 3X3X1mm 的封装中融合了 3 轴加 速度,3 轴陀螺仪以及数字运动处理器(DMP)并且兼容 MPU6515。其完美的 I2C 方案,可直接输出 9 轴的全部数据。MPU9250 具有三个 16 位加速度 AD 输出,三个 16 位陀螺仪 AD 输出,三个 6 位 磁力计 AD 输出。
- 数据获取分析
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(磁导航模块)、红外传感
- 简介:
射频识别 RFID 系统在实际应用中,电子标签附着在待识别物体表面,电子 标签中保存有约定格式的电子数据。阅读器可无接触的读取并识别电子标签中的 数据,从而达到自动识别物体的目的。
磁导航(Magnetic Navigation)是一项非常成熟的技术,主要通过测量路径上的 磁场信号来获取车辆自身相对于目标跟踪路径之间的位置偏差,从而实现车辆的 控制及导航。磁条导航具有很高的测量精度及良好的重复性,磁导航不易受光线 变化等的影响,在运行过程中,磁传感系统具有很高的可靠性和鲁棒性。
红外测距传感器利用红外信号遇到障碍物距离的不同反射的强度也不同的原理,进行障碍物远近的检测。红外测距传感器具有一对红外信号发射与接收二极管,发射管发射特定频率的红外信号,接收管接收这种频率的红外信号,当红外的检测方向遇到障碍物时,红外信号反射回来被接收管接收,经过处理之后,通过数字传感器接口返回到机器人主机,机器人即可利用红外的返回信号来识别 周围环境的变化。
- 具体型号:
RFID:
具有自动读取 IC 卡的 ID 号(即通电有 IC 卡靠近,就可以自动读取 16 进制 的 IC 卡号,通过串口发出),及通过发送命令操作 RFID 模块读写卡(被动读写 卡)功能。
AGV:
红外传感:
GY-53 是一款数字红外测距传感器模块,它功耗小,体积小,安装方便。
- 传感器数据获取:
该数据来源于小车运行实时输出数据,输出如下: