一种机器人可见光实时定位装置及其定位方法
技术领域
本发明涉及可见光通信技术领域,尤其涉及一种机器人可见光实时定位装置及其定位方法。
背景技术
近来,可见光通信由于其照明的同时进行通信,且通信速率高、带宽宽、保密性好等优点,已经成为了研究的热点。而可见光室内定位,正是在此基础上发展的。可见光室内定位随着不断的发展和推广,其实现定位方法的种类也越来越多,如AOA等等,但这些只能实现二维定位,对于三维定位,则需要基于各种算法的复杂计算,装置和技术较为复杂。因此,本发明提出一种利用RGB LED来进行通信的,结构简单、方法简便的室内机器人三维定位装置。
现有相近技术出自专利CN107991649A。该发明提供了一种利用三个LED光源作为发射端,利用摄像头和硅光电池作为接收端,以实现室内定位和可见光通信。具体涉及一种可见光室内定位装置,该装置包括LED控制系统和测量系统;LED控制系统包括高频信号采集模块、第一单片机ARM-LPC1768、LED控制模块及第一电源模块;高频信号采集模块包括信号输入端口、第一放大器,LED控制模块包括LED光源及第二放大器;测量系统包括位置传感器模块、信号传感器模块、第二单片机ARM-LPC1768及第二电源模块;位置传感器模块包括摄像头、树莓派,信号传感器模块包括硅光电池、第三放大器、第四放大器、比较器及信号输出端口所述LED控制系统和测量系统通过可见光进行通信。该发明通过OV5647(摄像头)采集光源位置,传输到树莓派,通过opencv算法(现有技术)进行图像处理,得到光源的相对位置,通过自制算法测算出传感器的绝对位置,经单片机处理后传输到LCD显示屏进行显示。
现有技术方案的设备结构复杂,需要用到三盏不同的LED灯等等,所用装置和IC器件很多,不够简便, 由于所用装置和仪器较多,成本较为昂贵;实现过程繁杂,上述技术是通过OV5647摄像头采集光源位置,传输到树莓派,通过opencv算法进行图像处理,得到光源的相对位置,通过自制算法测算出传感器的绝对位置,整个过程繁琐且难懂,难以达到产业化应用的要求。
发明内容
本发明的目的在于:1. 一种简单的机器人可见光室内定位方法,以及提供一种不需要复杂算法和复杂装置的可见光室内定位系统架构;
2. 提供一种精度可控的机器人可见光室内定位方法,且精度调节方法简单易懂;
3. 提供一种可运用在工厂、商店以及家庭等室内机器人定位技术。三维定位技术除了可以实时检测机器人的二维运动,还能检测第三维方向上的如机器人机械手臂的运动。
为达到上述目的,本发明采用如下技术方案:包括驱动电源、运动底盘、机械手、总控制器、信号接收装置、信号发射装置,计数器模块,所述信号发射装置包括单片机处理模块、LED发射模块、滚轮检测模块;所述信号接收装置接收LED发射模块发射的光信号;所述滚轮检测模块包括安装在所述运动底盘的x轴方向滚轮检测模块和y轴方向滚轮检测模块,安装在所述机械手z轴方向滚轮检测模块,且x轴方向滚轮检测模块、y轴方向滚轮检测模块和z轴方向滚轮检测模块均由滚轮、定板、轴承、检测点、参考点、运动点组成,所述滚轮通过所述轴承与所述定板连接,所述检测点和参考点设置在所述定板上,所述运动点设置在滚轮上;所述检测点和参考点不重叠且不沿轴承处于同一直线上,所述运动点随着滚轮一起转动与所述检测点和参考点位置重合;所述计数器模块与所述运动点、检测点和参考点电连,所述总控制器与所述驱动电源、信号接收装置、信号发射装置和计数器模块电连接。
进一步的,所述单片机处理模块包括第一延时模块、第二延时模块、第三延时模块、第一计数器、第二计数器、第三计数器、第一变频模块、第二变频模块、第三变频模块和预置模块;所述第一延时模块内嵌延时时间更短的第四延时模块、所述第二延时模块内嵌延时时间更短的第五延时模块、所述第三延时模块内嵌延时时间更短的第六延时模块,滚轮转一周的时间与第一延时模块、第二延时模块和第三延时模块的延时时间相同。
进一步的,所述第一计数器、第一变频模块、第四延时模块与所述x轴方向滚轮检测模块电连接,所述第二计数器、第二变频模块、第五延时模块与所述y轴方向滚轮检测模块电连接,所述第三计数器、第三变频模块、第六延时模块与所述z轴方向滚轮检测模块电连接。
进一步的,所述LED发射模块包括红色LED、绿色LED、蓝色LED,所述变频模块分别电连接红色LED、绿色LED和蓝色LED。
进一步的,所述信号接收装置包括颜色处理模块,校正计数模块、预置模块、比较模块、坐标输出模块。
进一步的,所述LED发射模块包括起偏器,所述信号接收装置包括检偏器,所述检偏器其方向与所述起偏器方向相同。
一种基于单片机运算的机器人可见光实时定位方法,其特征在于,包括:计数器模块通过设置在滚轮上的运动点与检测点、参考点重合的先后顺序获取机器人当前运动方向的步骤;
总控制器采集各个计数器模块计数结果传递到对应变频模块的步骤;
变频模块经过运算后向对应LED发射模块输出特定的跟计数结果成特定关系的频率的“0”和“1”脉冲,进而控制红色LED或绿色LED或蓝色LED的亮灭频率的步骤;
光接收端接收红色LED或绿色LED或蓝色LED的亮灭频率并向校正计数模块输出接受到的红色光或绿色光或蓝色光的频率,校正计数模块对数据进行校正和计数后,对比较模块输出结果,比较模块对预置数据与接收的数据进行比较计算,进而算出特定颜色光的前后亮灭频率的差值的步骤;
比较模块将结果输出到坐标输出模块,坐标输出模块经过计算后,输出被测物体坐标的步骤。
优选的,LED发射模块各种灯光出射时,光的偏振方向受起偏器控制的步骤;
光接收端通过检偏器进行光线接收的步骤。
本发明的优点在于:1.采用单片机简单程序进行运算,不需要特定算法;2.采用滚轮检测系统,利用简单计数控制可见光频闪频率作为信号媒介,实时监测被测物体的运动轨迹,其精度可控制在较高水平,且系统计算量小;3. 采用TCS230颜色传感器作为信号光频率的检测与输出,使得本发明定位系统的结构装置更加简便,不需要以硅光电池等器件另外搭建检测系统;4. 信号发射模块与信号接收模块采用了起偏器和检偏器,能有效减少环境光对系统的影响。
附图说明:
附图1为本发明的结构示意图;
附图2为本发明的滚轮检测模块示意图;
附图3为本发明的信号发射装置示意图;
附图4为本发明的信号接收装置示意图。
附图标记:
1.信号接收装置,2.信号发射装置,3. 计数器模块,11. 颜色处理模块,12. 校正计数模块,13. 预置模块,14. 比较模块,15. 坐标输出模块,21. 单片机处理模块,22. LED发射模块,23. 滚轮检测模块,211. 第一延时模块,212. 第二延时模块,213. 第三延时模块,214. 第四延时模块,215. 第五延时模块,216. 第六延时模块,217. 预置模块,231. x轴方向滚轮检测模块,232. y轴方向滚轮检测模块,233. z轴方向滚轮检测模块,234. 滚轮,235. 定板,236. 轴承,237. 检测点,238. 参考点,239. 运动点。31. 第一计数器,32.第二计数器,33. 第三计数器,34. 第一变频模块,35,第二变频模块,36.第三变频模块。
具体实施方式
实施例1,参照图1-4,一种机器人可见光实时定位装置,包括驱动电源、运动底盘、机械手、总控制器、信号接收装置1、信号发射装置2,计数器模块3,所述信号发射装置2包括单片机处理模块21、LED发射模块22、滚轮检测模块23;所述信号接收装置1接收LED发射模块22发射的光信号;所述滚轮检测模块23包括安装在所述运动底盘的x轴方向滚轮检测模块和y轴方向滚轮检测模块232,安装在所述机械手z轴方向滚轮检测模块233,且x轴方向滚轮检测模块、y轴方向滚轮检测模块232和z轴方向滚轮检测模块233均由滚轮234、定板235、轴承236、检测点237、参考点238、运动点239组成,所述滚轮234通过所述轴承236与所述定板235连接,所述检测点237和参考点238设置在所述定板235上,所述运动点239设置在滚轮234上;所述检测点237和参考点238不重叠且不沿轴承236处于同一直线上,所述运动点239随着滚轮234一起转动与所述检测点237和参考点238位置重合;所述计数器模块3与所述运动点239、检测点237和参考点238电连,所述总控制器与所述驱动电源、信号接收装置1、信号发射装置2和计数器模块3电连接。驱动电源为机器人的动作提供动力。
所述单片机处理模块21包括第一延时模块211、第二延时模块212、第三延时模块213、第一计数器31、第二计数器32、第三计数器33、第一变频模块34、第二变频模块35、第三变频模块36和预置模块13;所述第一延时模块211内嵌延时时间更短的第四延时模块214、所述第二延时模块212内嵌延时时间更短的第五延时模块215、所述第三延时模块213内嵌延时时间更短的第六延时模块216,滚轮234转一周的时间与第一延时模块211、第二延时模块212和第三延时模块213的延时时间相同。
所述第一计数器31、第一变频模块34、第四延时模块214与所述x轴方向滚轮检测模块电连接,所述第二计数器32、第二变频模块35、第五延时模块215与所述y轴方向滚轮检测模块232电连接,所述第三计数器33、第三变频模块36、第六延时模块216与所述z轴方向滚轮检测模块233电连接
所述LED发射模块22包括红色LED、绿色LED、蓝色LED,所述变频模块分别电连接红色LED、绿色LED和蓝色LED。
所述信号接收装置1包括颜色处理模块11,校正计数模块12、预置模块13、比较模块14、坐标输出模块15。颜色处理模块11可采用TCS230颜色处理模块11。
本发明还公开一种机器人可见光实时定位方法,包括如下步骤:
总控制器采集各个计数器模块3计数结果传递到对应变频模块的步骤;
变频模块经过运算后向对应LED发射模块22输出特定的跟计数结果成特定关系的频率的“0”和“1”脉冲,进而控制红色LED或绿色LED或蓝色LED的亮灭频率的步骤;
光接收端接收红色LED或绿色LED或蓝色LED的亮灭频率并向校正计数模块12输出接受到的红色光或绿色光或蓝色光的频率,校正计数模块12对数据进行校正和计数后,对比较模块14输出结果,比较模块14对预置数据与接收的数据进行比较计算,进而算出特定颜色光的前后亮灭频率的差值的步骤;
比较模块14将结果输出到坐标输出模块15,坐标输出模块15经过计算后,输出被测物体坐标的步骤。
被测物体如货运机器人,需装上可以沿三个互相垂直方向的x轴方向滚轮检测模块、y轴方向滚轮检测模块232和z轴方向滚轮检测模块233作为检测装置,机器人需沿着三个既定互相垂直方向运动。x轴方向滚轮检测模块、y轴方向滚轮检测模块232和z轴方向滚轮检测模块233构造均相同,每个模块均含有三个信号点,分别是检测点237、参考点238和运动点239。
以检测沿x轴方向位移的x轴方向滚轮检测模块为例:
x轴方向滚轮检测模块是第一延时模块211,均内嵌延时时间更短的第二延时模块212,当机器人向x轴发生向前运动时,其对应滚轮234上的与固定的检测点237位置重合的运动点239随着滚轮234一起转动,第一延时模块211程序以及内嵌的第二延时模块212同时开始运行,运动点239会先与在同心圆的固定的参考点238重合,此时输出“1”作为信号输出到第一计数器31,若第二延时模块212还未运行完毕,第一计数器31则进行减法运算,当运动点239运行一周过后再次与检测点237重合时,此时会再次输出“1”信号传到第一计数器31,第一计数器31减“1”;若第二延时模块212已经运行完毕退出,则第一计数器31会切换为加法运算,当运动点239运行一周过后再次与检测点237重合时,此时也会输出“1”信号传到第一计数器31,第一计数器31加“1”。滚轮检测模块23与延时模块实现了判断被测物体在三个方向上是作正方向运动还是负方向运动的功能。滚轮234转一周的时间与第一延时模块211的延时时间相同,滚轮234转动周数恒为整数。通过改变滚轮234的半径,可以实现调节本发明机器人可见光实时定位装置的精度。
总控制器采集第一计数器31计数结果传递到对应的第一变频模块34,第一变频模块34经过运算后向对应红色LED输出特定的跟计数结果成特定关系的频率的“0”和“1”脉冲,进而控制对应红色LED的亮灭频率。预置模块13为变频模块提供初始频率值,或者在需要时重置变频模块的频率值。LED发射模块22各种灯光成分的亮灭频率分别受相对应的变频模块控制,且出射时,光的偏振方向受起偏器控制。
装载在运动场所上的信号接收装置1通过单片机程序控制,可以控制颜色处理模块11,分别检测并向校正计数模块12输出接受到的红色光、的频率,校正计数模块12对数据进行校正和计数后,对比较模块14输出结果,比较模块14对预置数据与接收的数据进行比较计算,进而算出特定颜色光的前后亮灭频率的差值,将结果输出到坐标输出模块15,坐标输出模块15经过计算后,输出被测物体坐标,从而判断机器人在x轴方向的位置变化数值。坐标初始值与初始预置频率值相对应。
y轴、z轴的定位判断原理与x轴定位相同,故不重述。
实施例2,本实施例与实施例1基本相同,区别之处在于:如图1-4所示,所述LED发射模块22包括起偏器,所述信号接收装置1包括检偏器,所述检偏器其方向与所述起偏器方向相同。
本实施例的基于单片机运算的机器人可见光实时定位方式与实施例1基本相同,区别之处在于还包括LED发射模块22各种灯光出射时,光的偏振方向受起偏器控制的步骤;
光接收端通过检偏器进行光线接收的步骤。
信号发射模块与信号接收模块采用了起偏器和检偏器,能有效减少环境光对系统的影响,提高定位的准确性。
本发明采用51单片机作为中央处理器,但可以用更为高级的stm32系统作为中央处理器,其基本思路是一样的,应当也在保护范围内。
当然,以上仅为本发明较佳实施方式,并非以此限定本发明的使用范围,故,凡是在本发明原理上做等效改变均应包含在本发明的保护范围内。