11 days ago

最近更新图像算法,在本机测试时运行正常,代码移植到工控机后程序报错

module 'cv2.cv2' has no attribute 'xfeatures2d'

经过搜索后发现工控机系统缺少opencv-contrib模块,鉴于工控机没有联网,于是开启一系列探索之旅
现在将整个过程记录下来,便于后续使用

1.在联网的电脑上下载opencv-contrib-python安装包

pip download -d ./ opencv-contrib-python==3.4.2.17

以上代码表示:将opencv-contrib-python==3.4.2.17的安装包下载到当前文件夹,不进行安装操作

opencv-contrib的版本不要太高,否则sift = cv.xfeatures2d.SIFT_create()函数无法调用(虽然现在搞不懂什么原因)
经过实测,版本高于3.4.2.17都无法使用

2.卸载opencv

将刚刚下载好的安装包拷贝到工控机
安装opencv-contrib之前需要卸载之前安装过的opencv(当然如果你直接没装过opencv,直接忽略这一步)
根据官方文档的说法,opencv-python只包含main模块,opencv-contrib-python包含main模块和contrib模块
所以正常情况下只需要安装opencv-contrib-python就够了

pip uninstall opencv-python

程序报错,理所当然的权限不够

sudo pip uninstall opencv-python

报错:“sudo: pip:找不到命令”
解决这个问题直接放上相关技术帖:Ubuntu sudo: pip:找不到命令
然后继续执行sudo pip uninstall opencv-python

3.安装opencv-python

pip install opencv-contrib-python==3.4.2.17.whl

安装成功后,运行程序开始报错

Traceback (most recent call last):
  File "tppj.py", line 5, in <module>
    import cv2 as cv
ImportError: /opt/ros/kinetic/lib/python2.7/dist-packages/cv2.so: undefined symbol: PyCObject_Type

经过搜索,开始了解了关于pip install的一些真相

$ pip install
# 安装目录  /home/用户名/.local/lib/python3.5/site-packages

$ sudo pip install     
# 在python安装中全局安装包,即对所有用户安装。
# 安装目录 /usr/local/lib/python3.5/dist-packages

$ pip install --user   
#安装到本地用户目录,即 ~/.local/lib/python
# 仅仅对当前用户生效

这种情况下,要想解决问题,要么在程序第一行(import之前)加入代码

import sys
sys.path.insert(0, '/usr/local/lib/python3.5/dist-packages/')

要么索性直接 sudo pip install opencv-contrib-python==3.4.2.17.whl

问题主要在于import sys;sys.path里面的路径以及路径的顺序
具体可以出门左转见前一篇博客文章 Linux中添加python环境变量

参考资料:
module 'cv2.cv2' has no attribute 'xfeatures2d'
OpenCV3.X Python3.X: cv2.xfeatures2d 无法使用问题解决
opencv-contrib-Python编译module 'cv2.cv2' has no attribute 'xfeatures2d'
opencv官方文档
ImportError: /opt/ros/kinetic/lib/python2.7/dist-packages/cv2.so: undefined symbol: PyCObject_Type

 
20 days ago

在阅读代码时,看到程序一开始就有了这么一句

import sys
sys.path.insert(0, '/usr/local/lib/python3.5/dist-packages/')

当我们导入一个模块时:import xxx,默认情况下python解析器会搜索当前目录、已安装的内置模块和第三方模块搜索路径存放在sys模块的path中

>>> import sys
>>> sys.path
['', 'C:\\Python352\\Lib\\idlelib', 'C:\\Python352\\python35.zip', 'C:\\Python352\\DLLs', 'C:\\Python352\\lib', 'C:\\Python352', 'C:\\Python352\\lib\\site-packages', 'C:\\Python352\\lib\\site-packages\\setuptools-28.6.1-py3.5.egg', 'C:\\Python352\\lib\\site-packages\\pip-8.1.2-py3.5.egg', 'C:\\Python352\\lib\\site-packages\\requests-2.11.1-py3.5.egg', 'C:\\Python352\\lib\\site-packages\\xlutils-2.0.0-py3.5.egg', 'C:\\Python352\\lib\\site-packages\\xlwt-1.1.2-py3.5.egg', 'C:\\Python352\\lib\\site-packages\\pymongo-3.3.1-py3.5-win-amd64.egg', 'C:\\Python352\\lib\\site-packages\\pytz-2016.7-py3.5.egg', 'C:\\Python352\\lib\\site-packages\\zope.interface-4.3.3-py3.5-win-amd64.egg']

网上搜索了一下,python总共有四种方法添加环境变量

1.适用于当前python脚本

import sys
sys.path.append('引用模块的地址')

上面的append命令会把指定地址添加到最后一行,优先级最低
推荐使用另外一个insert命令提高指定地址的优先级

sys.path.insert(0,'引用模块的地址')

2.适用于当前终端

在当前终端中输入:export PYTHONPATH="<你的要加入的路径>"

3.适用于当前用户

在用户主目录下有一个 .bashrc 隐藏文件,可以在此文件中加入 PATH 的设置如下:
终端中输入:sudo gedit ~/.bashrc
然后加入:export PATH=<你的要加入的路径>:$PATH

如果要加入多个路径,只要当中每个路径要以冒号分隔,这样每次登录都会生效
export PATH=<你要加入的路径1>:<你要加入的路径2>: ...... :$PATH

添加PYTHONPATH的方法也是这样,在.bashrc中添加

export PYTHONPATH=/home/zhao/setup/caffe-master/python:/home/zhao/setup/mypy:$PYTHONPATH 

保存后在终端输入 source ~/.bashrc 使环境变量立即生效

4.适用于所有用户

跟上一步命令差不多,只是换了个位置sudo gedit /etc/profile

参考资料:
sys.path.append()
Linux添加PYTHONPATH方法以及3种修改环境变量方法

 
about 1 month ago

在调试可见光过程中,中途中断程序,修改参数后重新启用,时常会报33534端口已经使用的错误信息
使用命令lsof -i:33534查询后发现,该端口依然被nevigation导航模块占用
原本这个端口用于表记识别模块和导航模块的TCP通信,刚刚单方面强行结束表记识别模块,导航模块依然在不停连接
解决办法:中断navigation模块,同时重新开启该模块

roslaunch sh_navigation sh_navigation.launch
 
about 1 month ago

最近机器人在调试过程中发现,mysql登录过程特别慢,需要花费将近10秒左右时间
同事经过查询后发现有两个地方可以排查一下

1.局域网(非联网状态)内关闭域名解析

gedit /etc/my.cnf

输入以下命令

# 禁止mysql做域名解析
[mysqld]
skip-name-resolve

然后需要重启mysql,有两种方法可以尝试
1.使用 service 启动:service mysqld restart
2.使用 mysqld 脚本启动:/etc/inint.d/mysqld restart

2.查看mysql的配置文件中是否绑定IP

sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf

查看是否开启bind-address,若开启,则使用代码连接mysql时需要填写该IP地址,例如:

import pymysql
# 打开数据库连接
conn = pymysql.connect("192.168.181.2","root","shenhaoinfo","patrol" )

参考资料:
mysql远程连接很慢解决办法
LINUX重启MYSQL的命令

 
about 2 months ago

1.什么是高精度地图

高精度地图是相对于我们现在普通使用的地图来讲,普通地图只能显示路径,精度在10米范围
高精度地图也叫“车道地图”,需要显示每一条路具体多少条车道、每条车道的车道线、转弯半径,道路的坡道曲率,还包括路边各种交通设施(交通灯、限速标志、监控设施等)和主要建筑的准确位置
无人驾驶车辆在行驶过程中通过实时获取的周边信息和高精度地图进行匹配,从而获取当前精确位置

2.高精度地图的使用

车载传感器和高精度地图之间是交互交流的

1)高精度地图可以作为车载传感器的基准:车辆作为地图的使用者

高精度地图是自动驾驶汽车上最稳定的传感器,也是可视范围最大的传感器,可以提供给其他传感器很多抽象的信息
一方面,当某些传感器数据缺失,可以用高精度地图数据推算。
另一方面,当同一个数据有多个输入源的时候,可以校验其他传感器数据的可信度,提高整个系统输出的准确度。

2)车载传感器为高精度地图的更新提供数据源:车辆作为地图的修改者、采集者

城市发展日新月异,国内道路建设如火如荼,道路情况会发生变化,单单依靠专门的采集车辆去更新高精度地图成本很高
这时候可以依据大众车辆传感器提供的信息来更新高精度地图

目前基本在业界看来,L3以下自动驾驶可以不用高精度地图,L3自动驾驶最好是有高精度地图,L4以上一定要高精度地图

参考资料:
禾多科技戴震:高精度地图成本并非不可接受,难的是如何充分利用
无人驾驶入门:高精度地图

 
about 2 months ago

一、结构简介

机器人本体挂在导轨1上并沿着导轨运动
机器人本体上设有平移机构2、控制平台3、升降机构4、检测平台5和智能云台6

1.平移机构


平移机构是具有半包围结构的壳体,挂装在轨道1上
壳体内部顶面设有两个滚轮21:主动滚轮和从动滚轮,两侧设有辅助轮22
两个滚轮21抵在导轨1的上表面,辅助轮22抵在导轨1侧面,相当于把导轨包裹在壳体内
所述主动滚轮同轴安装一带轮,带轮由平移电机驱动

导轨1朝向机器人本体一侧贴有若干条形码11,平移机构上设有条码读取器 23,条码读取器与条形码位置相对
导轨上设有滑触线12(其实就是导电用细长纯铜板材),滑触线位于条形码的下方,滑触线连接电源,平移机构内设置有电触头24,与滑触线电连接
由此,挂轨式机器人可连续巡检作业,通过滑触线供电可满足7x24小时不间断工作

2.控制平台

控制平台3安装在平移机构2下方,控制平台内设有控制模块以及驱动机器人本体沿导轨移动的平移电机
其中的控制模块根据条码读取器23读取的条形码信息来控制平移电机工作:事先将所有测量点所对应的条形码信息输入控制模块内,移动过程中机器人本体上的条码读取器读取条形码上的位置信息,并将读取的位置信息与事先输入的测量点位置进行比较,从而控制平移电机正转或反转,左右调整机器人本体使之到达测量点

3.升降机构

升降机构4连接控制平台3和检测平台5,主要由驱动组件和升降绳组成
其中驱动组件中的升降电机由控制平台3进行控制

4.检测平台和智能云台

检测平台5下方安装智能云台6,智能云台6可相对检测平台5进行水平360度转动
智能云台6包括主体、设置于主体两侧的红外摄像模块61和可见光摄像模块62,以及主体底部的绝缘测量模块63
两侧的摄像模块均可相对主体上下转动90度
红外摄像模块上设有红外相机611以及拾音器612,可见光摄像模块上设有可见光相机621以及 补光灯622
绝缘测量模块包括绝缘测量探头631,探头上设有地电波传感器和超声波传感器

二、工作过程

根据变电站的地形以及设备的摆放合理布置导轨1,在导轨1上布置条形码11以及滑触线12;
事先将所有测量点所对应的条形码信息以及该测量点智能云台需要下降的距离信息输入控制模块内。
机器人工作时,条码读取器23将读取条形码上的位置信息发送给控制模块,控制模块将读取的位置信息与预存的测量点位置进行比较:当读取的位置值小于测量点位置值时,控制平移电机正转,机器人本体右移使之到达测量点;当读取的位置值大于测量点位置值时,控制平移电机反转,机器人本体左移使之到达测量点。

当机器人本体到达测量点后,控制模块根据预存的该测量点智能云台需要下降的距离信息控制升降电机转动
根据需要下降的距离控制升降电机转动的圈数,从而使得智 能云台到达仪表位置。
而智能云台由外部的计算机控制整个智能云台水平的转动角度,以及两个摄像模块上下转动的角度,最终利用红外相机611或者可见光相机621拍摄仪表,并将图片传送到计算机内进行数据读取分析,并记录仪表数值
同时地电波传感器和超声波传感器可用于测量设备绝缘老化问题,并利用拾音器来记录设备内的噪音以便后续进行故障、老化等分析。
当该测量点仪表拍摄完成后,控制模块驱动升降电机,将智能云台拉回至原位,然后平移电机驱动整个机器人平移至下一测量点,并继续检测工作。

参考资料:
挂轨式巡检机器人外观专利 201830002640 .5
一种挂轨式智能巡检机器人 申请号:201820009542.9
一种挂轨式智能巡检机器人 申请号:201810006461 .8

 
about 2 months ago


智能巡检机器人,包括移动基座1、升降机构3、旋转台3和检视云台2
升降机构的下端与移动基座连接固定
升降机构的上方设有旋转台
旋转台以升降机构的中心线为轴可旋转的安装在升降机构上端
检视云台活动铰接在旋转台上

1.移动基座

移动基座包括导航装置、通信装置、驱动装置和控制装置
导航装置、通信装置、驱动装置均分别与控制装置相连


巡检机器人的工作原理:
1.操作人员在远程操控系统根据检测需要设定检测路径和检测频率
2.通信装置接收到远程操控系统发出的巡检任务并将巡检任务通过控制装置传送给导航装置
3.导航装置根据巡检任务生成移动路线
4.驱动装置在控制装置的指令下根据移动路线将移动基座驱动至巡检区域
5.移动基座安全行驶至需要检测设备附近的停靠点,并停止移动,对待检测设备进行精确定位
6.视频监控装置对待检测设备进行检测并将检测信息传输至远程操控系统
该巡检机器人在该停靠点进行多方位检测,直至该设备检测完毕后,继续检测下一个设备,直至所有巡检任务完毕后
7.该巡检机器人回到充电室进行充电

1)通信装置:接收巡检任务并将巡检任务通过控制装置传送给导航装置

通信装置通过WiFi或蓝牙与远程操控系统相连

2)导航装置:根据巡检任务生成移动路线

巡检任务中包含有n个巡检点,坐标分别为v1 ,v2 ,...,vi ,...,vn其中v:i表示任意巡检点的坐标,1≤i≤n
1.查找已建立的移动路线是否包含所述全部n个巡检点,若是则输出已建立的移动路线;否则,跳转至步骤2
2.根据所述n个巡检点的坐标计算各巡检点之间的路径Tij
其中,所述巡检点之间的路径Tij为以其中一个巡检点的坐标vi为起点、以另一巡检点的坐标vj为终点的位移向量


所述每一条所述路径只通过起点或终点与其他所述路径连接
3.获取每一条所述路径Tij的巡检时间系数dij
构成路径集合矩阵A = { d11,...,d1n;...;di1,...,din;...;dn1,..., dnn }
其中,所述路径集合矩阵A的对角线元素dii=0
4.建立以每条路径起点、终点和合并点为元素的有向图元素集 G = ( V , A )
其中,V为有向图元素集所包含的巡检点的集合V={v1 ,v2 ,...,vi ,...,vn}
合并点由以下步骤确定:将路径中经过的全部巡检点根据其所属的路径进行分类,得到每一条路径所包含的巡检点集合,将该巡检点集合内的所有巡检点合并,构成合并点;
5.依据巡检任务所规定的起点vs和终点ve,通过路径规划运算获得遍历全部n个巡检点的最优路径
按照该最优路径中所经过的巡检点的顺序生成移动路线
其中,所述路径规划运算的步骤如下:

3)驱动装置:在控制装置的指令下根据移动路线将移动基座驱动至巡检区域

可拆卸电源为整个机器人提供动力:包括无线电能接收装置、电池充电电路、电池
通过单独电机和减速机驱动行走轮完成机器人的移动

4)控制装置

2.升降机构

独立电机通过电动推杆与升降机构相连,驱动升降机构沿轴线方向做升降运动,从而驱动旋转台沿升降机轴线方向做升降运动

3.旋转台

单独电机驱动旋转台以升降机构的中心线为轴旋转,从而带动检视云台旋转

4.检视云台

检视云台的位置和角度可根据需要灵活调节,适用性好:通过升降机构调节检视云台的高度,通过旋转台调节检视云台的角度
包括视频监控装置和监控感知装置

1)视频监控装置:热成像摄像机、可见光红外摄像机和LED照明灯,用于监控所述巡检机器人周围环境并采集图像

(1)热成像摄像机

任何有温度(高于绝对零度)的物体都会发出红外线,热像仪就是接收物体发出的红外线,通过有颜色的图片来显示被测量物表面的温度分布,根据温度的微小差异来找出温度的异常点,从而起到与维护的作用。一般也称作红外热像仪。
而热成像摄像机的工作原理就是热红外成像技术。其核心就是热像仪,它是一种能够探测极微小温差的传感器,将温差转换成实时视频图像显示出来。但是只能看到人和物体的热轮廊,看不清物体的真实面目。

(2)可见光红外摄像机

人肉眼可见的光线按照波长由长到短的顺序是:红橙黄绿青蓝紫,这一部分光线称之为可见光
波长比红光长的叫红外光(0.62~0.76μm),波长比紫光短的叫紫外光(0.38~0.46μm),这两种光无法被肉眼识别,称之为不可见光
摄像机的感光元件(CMOS/CCD)可以同时感受到可见光和不可见光,因此摄像机直接拍出的照片跟人眼看到的图像有差异
正常情况下,需要消除不可见光对成像的影响,最常见的方法就是在镜头和感光元件之间增加红外滤光镜,吸收或者反射红外光,让可见光和紫外光通过,然后成像
在特殊场景,比如监控行业,需要在夜间等可见光光线不佳的状态下成像,这时候只需要关闭红外滤光镜即可
然后利用普通低照度CCD黑白摄像机或使用"白天彩色夜间自动变黑白"的摄像机或"红外低照度彩色摄像机"去感受周围环境反射回来的红外光,从而实现夜视功能
在夜视过程中,根据是否增加“红外灯”进行额外照明,又分为主动红外摄像技术和被动红外摄像技术
其中的被动红外摄像技术(即没有采用“红外灯”补光),由于设备造价高且不能反映周围环境状况,仅用于军事场合

中国市场上的红外摄像机主要是通过红外线滤光片实现日夜转换,即如上所述:在白天时打开滤光片,以阻挡红外线进入CCD,让CCD只能感应到可见光;夜视或光照条件不好的状态下,滤光片停止工作,不再阻挡红外线进入CCD,红外线经物体反射后进入镜头进行成像。
在资料搜索的过程中,还遇到一种二向分光板技术,将可见光和红外光分开后单独成像

2)监控感知装置:用于获取所述巡检机器人周围温度、湿度、烟雾信息,如拾音器

参考资料:
一种智能巡检机器人,申请号:201811530454.4
百度百科:热成像摄像机
百度百科:红外摄像机
可见光与红外系统

 
about 2 months ago

去年,百度和Udacity联合开发了一个无人驾驶课程,双方官网都公布了这个课程(具体地址详见前两个参考资料)


同样的内容,明显Udacity略胜一筹:它在部分小视频的下方都会放一些拓展知识链接,让人顿生好感

课程目录
第一课:无人驾驶概览
课程简介: 了解无人驾驶车的关键部分与 Apollo 团队架构,开启无人驾驶入门的学习路径。
1.欢迎学习Apollo课程
2.你将学到什么?
3.什么是无人驾驶?
4.Sebastian欢迎辞
5.无人驾驶车的运作方式
6.Apollo团队与架构
7.参考车辆与硬件平台
8.开源软件架构
9.云服务
10.无人驾驶车纳米学位
11.开启专题学习之旅
第二课: 高精度地图
课程简介:了解高精度地图的实现逻辑,这是 Apollo 定位、感知、规划模块的基础。
1.地图简介
2.Sebastian介绍高精度地图
3.高精度地图vs传统地图
4.地图与定位、感知与规划的关系a
5.地图与定位、感知与规划的关系b
6.地图与定位、感知与规划的关系c
7.Apollo高精度地图
8.Apollo高精度地图构建
9.课程综述
第三课:定位
课程简介: 了解车辆如何以个位数厘米级别的精度进行自定位。
1.定位简介
2.Sebastian介绍定位
3.GNSSRTK_a
4.GNSSRTK_b
5.惯性导航_a
6.惯性导航_b
7.激光雷达定位
8.视觉定位
9.Apollo定位
10.项目示例:被盯上的小车
11.课程综述
第四课:感知
课程简介: 了解不同的感知任务,例如分类、检测和分割,并学习对感知而言至关重要的卷积神经网络。
1.感知简介
2.Sebastian介绍感知
3.计算机视觉
4.摄像头图像
5.LiDAR图像
6.机器学习
7.神经网络
8.反向传播算法
9.卷积神经网络
10.检测与分类
11.跟踪
12.分割
13.Apollo感知
14.传感器数据比较
15.感知融合策略
16.项目示例:感知与融合
17.课程综述
第五课:预测
课程简介: 学习不同的预测方式,让 Apollo 无人驾驶车预测其他车辆或行人是如何移动的。
1.预测简介a
2.预测简介b
3.Sebastian介绍预测
4.不同的预测方式
5.基于车道的预测
6.障碍物状态
7.预测目标车道
8.递归神经网络
9.递归神经网络在目标车道预测的应用
10.轨迹生成
11.课程综述
第六课:规划
课程简介:了解 Apollo 应用于无人驾驶车路径规划的几种不同方式。
1.规划简介
2.Sebastian介绍规划
3.路由
4.世界到图
5.网格世界a
6.网格世界b
7.网格世界c
8.A算法
9.从路由到轨迹
10.3D轨迹
11.评估一条轨迹a
12.评估一条轨迹b
13.Frenet坐标
14.路径-速度解耦规划
15.路径生成与选择
16.ST图
17.速度规划
18.优化
19.路径-速度规划的轨迹生成
20.Lattice规划
21.ST轨迹的终止状态
22.SL轨迹的终止状态
23.Lattice规划的轨迹生成
24.项目示例:路径规划
25.课程综述
第七课:控制
课程简介:了解无人驾驶车是如何使用方向盘、油门和刹车来执行我们规划好的轨迹,并掌握 Apollo 中不同类型的控制器。
1.控制简介
2.Sebastian介绍控制
3.控制流程a
4.控制流程b
5.PID控制a
6.PID控制b
7.PID控制c
8.PID优劣对比
9.线性二次调节器
10.模型预测控制
11.时间范围与车辆模型
12.MPC优化
13.MPC优劣对比
14.项目示例:控制
15.课程综述
第八课:结束旅程

参考资料:
百度Apollo课程地址
Udacity无人驾驶课程地址
无人驾驶入门1:无人驾驶概览
无人驾驶入门2:高精度地图
深度解析Apollo无人车感知和定位技术
百度Apollo课程介绍

 
about 2 months ago

机器人调试好后,一旦开机,手柄按下LR + A会自动开启可见光巡检任务,我们只需要做好后端监控就可以了
下面介绍如何进行后端监控、ipad前端展示、遥控器手柄控制

一、后端监控

1.通过Wi-Fi连接到机器人

为了连接状态更加稳定,建议修改本机静态IP,保证跟机器人的Wi-Fi的IP处于同一网段


可以看到机器人Wi-Fi常用名称是Doublecom4.45这种,连接成功大概是这个样子

在实际运行过程中,无线网络时不时掉线,所以实际调试中,经常通过网线和机器人连接
今天其他部门同事看了一下,发现机器人的无线模块是5.8G,而我们无线连接默认使用2.4G,所以会出现这样的情况
由于时间太赶,一下子没有解决掉这个问题,期待后续解决
今天突然发现我的hp笔记本和mac都不支持5G Wi-Fi,导致无法通过无线连接机器人,买一个双频无线网卡可以解决

2.使用nomachine软件,远程连接机器人:打开后就是机器人的Ubuntu操作系统

目前的nomachine采用的版本是nomachine_6.0.80_1
初次登陆需要新建连接:输入工控机IP,端口默认4000,不要修改
然后输入工控机Ubuntu系统登陆的用户名和密码,默认为:机器人
机器人调试成功后,一旦开机,正常会自动启动10-12个命名提示符窗口


算法窗口正常是biaoji_detection
当然也有非正常的情况,比如下面这个

是不是发现打死都无法快速找到biaoji_detection,原来变成了那个叫终端的名字
所以不要惊慌,事出其反必有妖,耐心找一找,总能找到的,我们的算法端正常开起来是这个样子的

可以看出来,这个时候我们算法端模型已经加载成功,等待机器人到达监测点后开启巡检任务
作为算法工程师,盯着这个界面看,配合摄像头收集保存的图片,发现异常及时处理

3.手动开启各个命令行窗口

以上第2步说的是调试完成后,会自动开启10-12个命令行窗口
在调试前期或者后期系统异常如何手动开启这些任务呢,大概分为三个步骤

1)开启tomcat服务器
cd tomcat/apache-tomcat-8.5.37/bin/
./startup.sh

2)开启工控机主程序
cd catkin_srv/
source devel/setup.bash
rosrun webserv webserv_node

3)开启检测算法:rgb_run

执行完以上三个命令后,首先保证机器人处于初始位置
然后使用遥控器:“加速键”+“A”,机器人自动开始执行巡检任务

4.网页端监控

1)登陆摄像头后台:查看摄像头实时画面、修改摄像头参数
http://192.168.4.42/doc/page/config.asp

只需要在浏览器地址栏输入摄像头的IP地址,会跳出一个登陆界面,输入相机的用户名和密码,即可自动进入以上页面
注意:初次登入,界面提示需要安装插件,该插件仅支持IE内核浏览器;
下载插件后先关闭浏览器,再进行安装;
安装成功后再次打开浏览器即可正常运行


可以看到这里登陆的其实是海康摄像头的后台系统,可以实现显示监控画面、控制摄像头运转、修改摄像头参数

2)查看任务状态
http://192.168.4.37:8080/TaskControl/TaskState

5.机器人相关配置(导航组提供)

二、ipad前端展示

有个ipad端app申昊科技-配网机器人,供客户实时监控,app长这个样子


登陆前需要进行两个界面参数配置

1.输入工控机的Ip和端口

2.输入可见光和红外成像的RTSP流地址:地址配置不正确,登陆后视频无法正常显示


可见光RTSP流地址

rtsp://admin:wlwzx12345@192.168.4.32:554/h264/ch1/sub/av_stream

红外RTSP流地址

rtsp://admin:pm123456@192.168.4.33:554/h264/ch1/main/av_stream

以上是老的云台的配置信息,新的海康一体机配置信息如下

rtsp://admin:abcd1234@192.168.4.3:554/h264/ch1/main/av_stream
rtsp://admin:abcd1234@192.168.4.3:554/h264/ch2/main/av_stream

3.登陆

用户名密码:admin
登陆成功后显示这样的画面


下面逐一介绍各个画面

1.地图展示


这里仅仅是静态地图展示

2.机器人控制



可以看到有模式切换本体控制两个模块
模式切换:自动模式,手动模式
本体控制:机器人控制,云台控制

3.数据展示

这里展示检测到的仪表数据及检测依据

4.基本配置

这个画面刚刚已经见识过了,显示的是可见光和红外成像的RTSP流地址

5.全面展示

这个是我们最常使用的画面,从左上角开始,按照顺时针的顺序,显示的界面分别是:
机器人实时位置、可见光界面、红外界面、各种任务、机器人控制、实时报表

三、遥控器手柄控制

1.遥控器参数

产品名称:北通蝙蝠D2A无线手柄-影夜版
产品型号:BTP-BD2A

2.外观介绍

3.初次使用前配对

使用之前先配对:遥控器接收端和发送端建立通信
配对方法:长按遥控器LOGO,两个指示灯同时闪烁表示正在配对;左边指示灯常亮表示配对成功
配对成功后即可对机器人进行操作

4.机器人操作按键

方向键:前后键分别控制机器人向前、向后行驶
X:左转
B:右转
Y:升降装置的升降
任意执行键 + LT:加速执行任务
LR + A:开始巡检任务
RT:中止当前任务

参考资料:
RTMP、RTSP、HTTP视频协议详解
厂家说明书:蝙蝠D2A无线游戏手柄【BTP-BD2A】

 
about 2 months ago

今晚加班,听玉正英将,目前我们用的激光slam成本太高,以后不用了,准备启用视觉slam
立马搜索了相关资料,以备后用

主要就是介绍一个人:高博
出了一本书


这里有他本人的博客

参考资料:
如何评价高博的《视觉slam十四讲》
激光slam Vs 视觉slam
slam的前世今生
视觉slam综述