CN112654841A - 用于校准架置在设备上的传感器的系统、方法和装置 - Google Patents
用于校准架置在设备上的传感器的系统、方法和装置 Download PDFInfo
- Publication number
- CN112654841A CN112654841A CN201980057665.7A CN201980057665A CN112654841A CN 112654841 A CN112654841 A CN 112654841A CN 201980057665 A CN201980057665 A CN 201980057665A CN 112654841 A CN112654841 A CN 112654841A
- Authority
- CN
- China
- Prior art keywords
- sensor
- data set
- target
- data
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 102
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000003213 activating effect Effects 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 2
- 238000011960 computer-aided design Methods 0.000 description 65
- 238000005259 measurement Methods 0.000 description 35
- 238000004891 communication Methods 0.000 description 26
- 230000009466 transformation Effects 0.000 description 22
- 238000012545 processing Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 239000011159 matrix material Substances 0.000 description 15
- 238000003860 storage Methods 0.000 description 15
- 238000013507 mapping Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 12
- 239000000463 material Substances 0.000 description 10
- 238000012360 testing method Methods 0.000 description 8
- 238000012937 correction Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 238000013479 data entry Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013478 data encryption standard Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- BPKGOZPBGXJDEP-UHFFFAOYSA-N [C].[Zn] Chemical compound [C].[Zn] BPKGOZPBGXJDEP-UHFFFAOYSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 239000011111 cardboard Substances 0.000 description 2
- 230000009193 crawling Effects 0.000 description 2
- 239000006260 foam Substances 0.000 description 2
- 229910052739 hydrogen Inorganic materials 0.000 description 2
- 239000001257 hydrogen Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- VNWKTOKETHGBQD-UHFFFAOYSA-N methane Chemical compound C VNWKTOKETHGBQD-UHFFFAOYSA-N 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 239000004033 plastic Substances 0.000 description 2
- NDVLTYZPCACLMA-UHFFFAOYSA-N silver oxide Chemical compound [O-2].[Ag+].[Ag+] NDVLTYZPCACLMA-UHFFFAOYSA-N 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 208000015976 Corneal dystrophy-perceptive deafness syndrome Diseases 0.000 description 1
- UFHFLCQGNIYNRP-UHFFFAOYSA-N Hydrogen Chemical compound [H][H] UFHFLCQGNIYNRP-UHFFFAOYSA-N 0.000 description 1
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 241001112258 Moca Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- OJIJEKBXJYRIBZ-UHFFFAOYSA-N cadmium nickel Chemical compound [Ni].[Cd] OJIJEKBXJYRIBZ-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002803 fossil fuel Substances 0.000 description 1
- 239000007789 gas Substances 0.000 description 1
- 239000003502 gasoline Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 229910000474 mercury oxide Inorganic materials 0.000 description 1
- UKWHYYKOEPRTIC-UHFFFAOYSA-N mercury(ii) oxide Chemical compound [Hg]=O UKWHYYKOEPRTIC-UHFFFAOYSA-N 0.000 description 1
- 229910052987 metal hydride Inorganic materials 0.000 description 1
- 239000003345 natural gas Substances 0.000 description 1
- -1 nuclear energy Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 239000000843 powder Substances 0.000 description 1
- 230000000272 proprioceptive effect Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910001923 silver oxide Inorganic materials 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D18/00—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/497—Means for monitoring or calibrating
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/06—Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/497—Means for monitoring or calibrating
- G01S7/4972—Alignment of sensor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/247—Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/247—Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
- G05D1/249—Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons from positioning sensors located off-board the vehicle, e.g. from cameras
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/60—Intended control result
- G05D1/646—Following a predefined trajectory, e.g. a line marked on the floor or a flight path
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/246—Calibration of cameras
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/22—Command input arrangements
- G05D1/221—Remote-control arrangements
- G05D1/227—Handing over between remote control and on-board control; Handing over between remote control arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mechanical Engineering (AREA)
- Electromagnetism (AREA)
- Robotics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Manipulator (AREA)
Abstract
公开了用于校准机器人的传感器的系统和方法。在一个示例性实现方式中,包括多个传感器目标和机器人固定位置的环境允许更快、更准确地校准机器人的传感器。
Description
本申请要求于2019年7月6日提交的申请号为62/694,679的美国临时专利申请的权益,该申请的全部公开通过引用并入本申请中。
版权
该专利文件的公开的一部分包含受版权保护的材料。版权所有者不反对任何人以专利和商标局专利文件或记录中出现的方式对专利文件或专利公开进行影印,但在别的方面保留所有版权。
背景
技术领域
本申请总体上涉及机器人,并且更具体地涉及用于校准机器人传感器的系统和方法。
背景技术
当前,机器人可以由多个传感器组成以完成需要精确校准的复杂任务。这些机器人可以利用这些传感器来对其环境进行导航,识别附近的对象,并收集有关其环境的数据。在一些示例性实施例中,利用每个传感器分别进行校准。在其他示例性实施例中,机器人可以包含许多类型的传感器,每种传感器需要不同的校准方法。这种校准方法可能需要操作员在多个位置执行多个测试来校准机器人的传感器。但是,当机器人包含许多类型的传感器时,校准这些传感器可能特别困难且耗费时间。
通过非限制说明性示例,为了校准具有多个光检测和测距(LIDAR)传感器的机器人,可能需要对机器人周围的多个目标对象进行定位和重新定位以校准传感器。这种校准方法可能需要针对(多个)目标对象的许多位置进行许多测量,这可能既耗费时间又效率低下。本公开的系统、方法和装置利用包括机器人的固定位置并且包括多个传感器目标的环境来提高校准机器人的传感器的效率和准确性。多个目标可以允许对机器人的多个传感器和/或多个机器人进行校准,而无需对目标进行任何额外的测量或重新定位。
本公开的这些和其他目的、特征和特性,以及结构的相关元件的操作方法和功能以及部件的组合和制造的经济性,将在参照附图考虑以下描述和所附权利要求后变得更加明显,所有这些均构成本说明书的一部分。
发明内容
本公开满足了前述需求,本公开尤其提供了用于校准安装在例如机器人之类的设备上的传感器的系统、方法和装置。在一些示例性实施例中,机器人校准系统可包括具有已知距离处的多个传感器目标的室(room)或空间(space)。机器人将利用其传感器找到目标,并在传感器数据与测量之间进行比较。
本文所述的示例性实施例具有,这些创新性特征中没有单个创新性特征是必不可少的或独自对其理想属性负责。在不限制权利要求的范围的情况下,现在将总结一些有利特征。
在示例性实施例中,公开了机器人校准室。根据至少一个非限制示例性实施例,该室可包括进一步包括一个或多个传感器目标以及用于将机器人保持在固定位置的锁定机构的环境。
在另一个非限制示例性实施例中,锁定机构包括前楔块和后锁定系统。
在另一个非限制示例性实施例中,传感器目标可以被重新定位、移动和/或更换为不同的目标,从而允许将它们放置在不同的位置或用于在同一室内校准不同的传感器和/或机器人。换句话说,用于校准的室可由原始设备制造商(OEM)在其特定位置重新创建,以便校准其各自的特定机器人设备上的传感器。因此,本领域技术人员将理解,本文公开的发明构思与OEM或针对特定机器人实现传感器校准所在的特定位置无关,因为OEM可以能够重新创建室或设置以便为其特定机器人校准传感器。
在另一个非限制示例性实施例中,公开了一种用于校准机器人的方法。根据至少一个非限制示例性实施例,该方法包括:鉴于相对应的传感器来定位传感器目标,使用目标相对于机器人的已知位置来创建校准环境的理想计算机辅助设计(CAD)模型,将机器人锁定在校准环境中的固定位置中,收集包含目标的感知位置的传感器数据,将传感器数据与CAD模型进行比较,以及调整传感器以减小误差。
在至少一个非限制示例性实施例中,传感器可以感知到目标处于与操作者所测量的或CAD模型中示出的位置不同的位置,在这种情况下,操作者必须调整传感器,直到其以最小误差感知到目标处于与CAD模型相同的位置为止。
在另一个非限制示例性实施例中,一种非瞬态计算机可读存储装置具有存储在该非瞬态计算机可读存储装置上的多条指令,这些指令可由专用处理装置执行以操作机器人。根据至少一个非限制示例性实施例,处理装置配置成用于执行指令以激活要校准的每个传感器,收集关于传感器目标位置的数据,将数据与环境的CAD模型进行比较,数字地调整传感器和/或向操作者提供信息以手动地调整传感器。
根据至少一个非限制示例性实施例,一种专用处理装置可以单独地激活传感器或解析操作者期望校准的多个传感器,并且计算CAD理想模型与每个传感器感知到的内容或从其环境(即,校准室)接收输入之间的误差。
在另一个非限制示例性实施例中,可以利用单独的专用处理装置来比较传感器数据,并为机器人和/或操作者提供指令以调整其传感器。
在另一个非限制示例实施例中,公开了一种用于校准设备中的至少一个传感器的系统。该系统包括:在其上存储有计算机可读指令的存储器;以及至少一个处理器,该至少一个处理器被配置成用于执行计算机可读指令,以向多个传感器中的至少一个传感器发射信号,以通过值来调整该至少一个传感器的位置,该值与第一数据集和参考数据集之间的差相对应,该第一数据集与至少一个传感器基于沿该至少一个传感器的第一路径的至少一个相应参考目标生成的坐标集合相对应,并且该参考数据集在信号的发射之前被存储在存储器中。进一步地,至少一个处理器被配置成用于执行计算机可读指令,以:通过将第一数据集中的相应坐标与参考数据集中的相应坐标进行比较来计算值,其中如果该值不为零,则向至少一个传感器发射信号以调整该至少一个传感器的位置;以及从至少一个传感器接收第一数据集,并通过将多个列添加到存储器中的预先存在的表中来存储第一数据集,该第一数据集与多个相应坐标相对应。进一步地,其中至少一个处理器进一步被配置成用于执行计算机可读指令以从多个传感器中的不同的相应传感器接收第二数据集,该第二数据集与多个传感器中的相应传感器基于沿第二路径的第二参考目标生成的坐标集合相对应。其中,第一参考目标与第二参考目标不同,第一数据集与第二数据集不同,并且第二路径与第一路径不同。第一参考目标和第二参考目标与设备间隔开。
在另一个非限制示例实施例中,公开了一种用于校准设备中的至少一个传感器的方法。方法包括:接收第一数据集并将该第一数据集存储在存储器中,该第一数据集包括参考数据集;接收第二数据集并将该第二数据集存储在存储器中,该第二数据集包括由至少一个传感器基于沿该至少一个传感器的第一路径的相应参考目标生成的坐标集合;计算与第一数据集和第二数据集之间的差相对应的值;以及向至少一个传感器发射包括调整的调整信号以最小化该值。方法进一步包括:通过将第二数据集中的相应坐标与参考数据集中的相应坐标进行比较来计算值,其中,如果该值不为零,则向至少一个传感器发射信号以调整该至少一个传感器的位置。该方法进一步包括:从多个传感器中的不同的相应传感器接收第三数据集,该第三数据集与多个传感器中的相应传感器基于沿第三路径的第三参考目标生成的坐标集合相对应,其中第二参考目标不同于第三参考目标,第二数据集不同于第三数据集,第三路径不同于第二路径,并且第二参考目标和第三参考目标与设备间隔开。
在另一非限制性示例实施例中,一种用于操作校准环境以校准设备上的至少一个传感器的方法。该方法包括:沿至少一个传感器的路径定位至少一个目标;测量校准环境内的该至少一个目标的位置和取向;在校准环境内指定设备将被定位在其中的固定点;创建包括至少一个目标的测量位置和固定点的校准环境的CAD参考模型;激活该至少一个传感器来收集数据,以确定传感器数据与CAD参考模型之间的差值,该值与至少一个目标的位置和取向相对应;以及对校准环境内的至少一个传感器目标进行重新定位和/或更换,以促进对不同传感器和不同设备的校准。其中,至少一个传感器与平面LIDAR、倾斜LIDAR、前深度相机、右深度相机和左深度相机中的至少一者相对应。其中,各种类型的至少一个传感器中的每一者包括唯一的视场。进一步地,校准环境内的固定点与至少一个目标间隔开,值基于传感器数据与CAD参考模型之间的姿势坐标比较,并且校准环境内的固定点包括后轮楔块和前轮楔块,后轮楔块和前轮楔块能够将设备保持在固定位置中。另外,该方法包括:数字地变换传感器数据以匹配CAD参考模型;以及使用致动器或由操作者进行的手动调整来调整至少一个传感器的姿势。
本公开的这些和其他目标、特征和特性,以及结构的相关元件的操作方法和功能以及部件的组合和制造的经济性,将在参照附图考虑以下描述和所附权利要求后变得更加明显,所有这些均构成本说明书的一部分,其中在各个附图中,相同的附图标记表示相对应的部分。然而,应当明确地理解,附图仅出于说明和描述的目的,而不旨在作为对本公开的限制的定义。如在本说明书和权利要求中所使用的,除非上下文另有明确指示,否则单数形式“一”、“一个”和“该”包括复数指称。
附图描述
下文将结合附图来描述所公开的方面,所提供的附图用于说明而不是限制所公开的方面,其中类似的名称表示类似的元件。
图1A是根据示例性实施例的包括多个传感器目标并且包括具有至少一个要校准的传感器的机器人的校准环境的视图。
图1B是根据示例性实施例的使用瞄准传感器目标的传感器来收集数据以用于校准传感器的机器人的视图。
图1C是根据示例性实施例的由机器人上的各种传感器投影的各种视场的视图。
图1D是根据示例性实施例的机器人设备上使用的传感器的视图,未示出机器人。
图1E是根据示例性实施例的由图1D所示的各种传感器投影的各种视场的另一视图。
图2A是根据本发明的一些实现方式的机器人的功能框图。
图2B是根据示例性实施例的图2A所示的控制器的功能框图。
图3A是根据示例性实施例的感知如图1所示的校准环境中的参考点的传感器的图示。
图3B是根据示例性实施例的、在具有经校正的位置的情况下感知图1所示的参考点的图3A所示传感器的另一个图示。
图4是根据示例性实施例的存储测量的传感器数据和理想CAD模型数据的说明性数据表。
图5是根据示例性实施例的用于由专用处理器操作校准室以校准机器人的方法的过程流程图。
图6A和图6B是根据示例性实施例被调整以满足不同传感器和机器人的需要的传感器目标的说明性示例。
图7A-图7C是根据示例性实施例在设备上显示的用户接口的说明性示例。
图8是根据示例性实施例的处理器基于校准环境的传感器数据来校准传感器的示例性方法的过程流程图。
图9A是操作者操作校准环境的示例性方法的过程流程图。
图9B是操作者通过改变校准环境而在同一校准室内校准不同机器人的示例性方法的过程流程图。
图10示出了根据示例性实施例的用于基于校准测量来调整传感器的装置。
本文公开的所有图均为2019云海智行股份有限公司(Brain Corporation)版权所有。保留所有权利。
具体实施方式
在下文中参考附图更全面地描述本文公开的新颖系统、装置和方法的各个方面。然而,本公开可以以许多不同的形式实施,并且不应被解释为限于贯穿本公开呈现的任何特定结构或功能。相反,提供这些方面使得本公开将是透彻的和完整的,并且完整地将本公开的范围传达给本领域技术人员。基于本文教导,本领域技术人员应当理解,本公开的范围旨在覆盖本公开公开的新颖系统、装置和方法的任何方面,无论是独立实施还是与本公开的任何其他方面组合实施。例如,可使用本文所阐述的任何数量的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖使用作为本文中所阐述的本公开的各种方面的补充或者另外的其他结构、功能性、或者结构及功能性来实践的装置或方法。应当理解,本文披露的任何方面可以由权利要求的一个或多个要素来实施。
尽管本文描述了特定方面,但这些方面的众多变形和置换均落在本公开的范围之内。尽管提到了优选方面的一些益处和优点,但是本公开的范围并不旨在限于特定的益处、用途和/或目的。详细描述和附图仅仅解说本公开而非限制本公开,本公开的范围由所附权利要求及其等效方案来定义。
本公开提供了用于机器人传感器的改进的校准方法。具体而言,本公开的一些实现方式涉及机器人。如本文所使用的,机器人可包括被配置成用于自动执行一系列复杂动作的机械和/或虚拟实体。在一些情况下,机器人可以是由计算机程序和/或电子电路系统引导和/或指示的机器。在一些情况下,机器人可包括被配置用于导航的机电组件,其中机器人可以从一个位置移动到另一个位置。此类机器人可包括自主汽车和/或半自主汽车、地板清洁器、巡视器、无人机、飞机、船、推车、电车、轮椅、工业装备、装料机、移动平台、个人运输设备(例如,悬停板、赛格威等)、装料机、拖车、交通工具等。机器人还可包括用于将物品、人员、动物、货品、货物、物体、行李和/或任何所需的东西从一个位置运输到另一位置的任何自主和/或半自主机器。
如本文所使用的,传感器的姿势包括传感器的(x,y,z,偏航,俯仰,滚转)位置坐标中的任何一个或全部。并且传感器的默认姿势与诸如机器人之类的自主设备上的传感器的理想的(即,经完美校准的)姿势相对应。传感器的默认姿势通常由机器人制造商指定,其中与默认姿势的偏差可能需要对传感器进行校准,以确保机器人安全且有效地运行。
本文参考机器人和传感器校准描述的某些示例和实现方式仅用于说明,并且本文描述的原理通常可以容易地应用于机器人。
机器人可包括多个传感器,所有这些传感器必须被校准以确保机器人恰当地工作。在其中存在许多传感器的情况下,尤其是在其中需要快速校准机器人的许多传感器的情况下,可能不期望单独对每个传感器进行校准。包括多个传感器目标的校准环境可以一次校准多个传感器,并且可以快速地重用于多个机器人。
现在提供本公开的系统和方法的各种实现方式和变型的详细描述。尽管本文讨论的许多示例可能涉及机器人地板清洁器,但应理解,本文包含的所述系统和方法可适用于出于任何目的和/或功能的任何种类的机器人。给定本公开的内容,本领域普通技术人员将容易想到本文所述技术的多种其他示例实现方式或用途。
有利地,本公开的系统和方法允许:(i)对机器人更快、更高效的校准;(ii)对多个相同的机器人更准确的校准;(iii)通过特定地布置传感器目标,可以在同一室内校准各种机器人;(iv)以及减少资源成本,诸如与校准机器人上的传感器相关联的人工、时间、空间和能量。给定本公开的内容,本领域普通技术人员可以容易地看出其他优点。
如本文中所使用的,校准室可包括校准环境的物理空间或虚拟空间,其中校准环境进一步包括布置的传感器目标的特定几何形状,这将在下面进一步详细讨论。
如本文所使用的,操作者可包括可以确定系统执行的任务并且可以创建校准环境的机器人设备的任何操作者。根据一个非限制示例性实施例,机器人设备的操作者可以是具有向机器人设备指示执行哪些任务(例如,校准哪个传感器)的能力的非人类(例如,另一个机器人、人工智能等)。另外,操作者(无论是人类还是非人类)可以创建包括至少一个传感器目标的校准环境,下面进一步说明。
公开了一种校准环境,包括用于通过锁定机构和至少一个传感器目标固定机器人的固定位置。在至少一个非限制示例性实施例中,机器人被固定在固定位置,以确保所有相同的机器人相对于第一机器人相同地被校准。此外,将机器人放置在固定位置确保传感器与传感器目标之间的距离对于在同一环境中测试的附加机器人保持恒定。在另一个非限制示例性实施例中,可以定位这些传感器目标以在短时间段内或同时校准已知位置处一个或多个传感器。此外,可以重新定位传感器目标,以校准不同机器人上的不同传感器。有利地,这可以允许快速、准确地校准多个机器人。例如,校准环境中的传感器目标可以被重新配置、重新布置或重新取向,以合乎具有不同规格(即,高度、形状、宽度等)的不同机器人。
根据至少一个非限制示例性实施例,传感器目标可由许多材料组成,包括但不限于金属、塑料、硬纸板、泡沫和/或机器人的传感器单元可检测的任何材料。
根据另一个非限制示例性实施例,可以使用螺钉、螺栓、闩锁、维克罗(滑动机构(即,闩锁和钥匙)、磁体和/或使用本领域技术人员明白和理解的任何附加方法来定位和重新定位传感器目标,以允许稍后进行重新定位以校准具有不同规格的不同传感器和/或不同机器人。
根据另一个非限制示例性实施例,传感器目标可以是可互换的以允许使用同一室来校准不同的传感器和/或不同的机器人。有利地,可在位置之间移动的可重新布置的传感器目标极大地减小了校准多个不同的机器人和/或传感器需要的空间和时间。
根据另一个非限制示例性实施例,锁定机构可进一步包括一个或多个前轮楔块、后轮楔块和后锁定机构。根据另一个非限制示例性实施例,该后锁定机构可包括旋转的电枢和闩锁、钩、磁体和/或本领域技术人员所理解的可以在校准期间将机器人固定在适当位置并且在校准后释放的任何类似的设备。
公开了一种操作校准环境的方法。根据至少一个非限制示例性实施例,该方法包括:在已知距离/位置处使传感器目标与相对应传感器对准,创建包括目标的已知位置的校准环境的理想的计算机辅助设计(CAD)模型,将机器人锁定在固定位置中,收集包含感知的目标位置的传感器数据,将传感器数据与CAD模型进行比较,以及调整传感器以减少误差。
如本文中所使用的,校准环境的理想的CAD模型可包括数据结构、值集、校准环境的虚拟表示等,其与校准环境内机器人的传感器对传感器目标的理想测量相对应。即,理想的CAD模型可以与用于校准机器人上或耦合至机器人的传感器的理想基线参考相对应。例如,如果机器人正在使用本文的系统和方法来使用校准环境校准LIDAR传感器,则理想的CAD模型可包括表示LIDAR传感器对环境内目标的理想测量的点云。如本文所使用的,理想测量与传感器处于默认(即,经良好校准的)姿势(即,(x,y,z,偏航,俯仰,滚转)位置)时传感器的测量相对应。
根据至少一个非限制示例性实施例,操作者可以测量传感器目标的位置以设计理想的CAD模型。本领域的技术人员将理解,CAD模型是沿如图1B-图1C所示的相应传感器的平面的理想或代表性测量的库。即,CAD模型代表针对如图4的表中所示的特定平面的理想或模型数据。
在另一个非限制示例性实施例中,传感器可以感知到目标处于与操作者在校准环境中所测量的或理想的CAD模型中示出的位置不同的位置处,在这种情况下,操作者可以调整传感器,直到其以最小误差感知到目标处于与理想的CAD模型相同的位置为止。
在另一个非限制示例性实施例中,由专用处理装置通过执行存储在存储器中的专用算法、计算机代码或指令来进行调整。换句话说,传感器的位置和取向实际上可以由专用处理器进行调整。在另一个示例性实施例中,可以通过用户干预来手动地调整某些传感器。即,可以通过让用户调整其底座来调整某些传感器,以解决在校准期间检测到的误差。
根据至少一个非限制示例性实施例,机器人可进一步包括在其上存储有多条指令的非瞬态计算机可读存储介质,这些指令可由专用处理装置执行以操作机器人。专用处理器被配置成用于执行指令以使机器人:接收关于哪些传感器激活那些或所有传感器的用户输入;收集部分地包括每个传感器目标的位置的数据;或校准对传感器的调整。
根据至少一个非限制示例性实施例,机器人可进一步包括用户接口,在该用户接口中,操作者或用户可以向机器人提供机器人被定位在其中或位于其中的校准环境的理想CAD模型,以用于与传感器数据进行比较。换句话说,操作者或用户可以经由无线、电气或有线传输将理想CAD模型上传或传输到机器人。根据另一个非限制示例性实施例,该用户接口可以附加地允许对机器人的多个传感器中的一个或几个传感器进行单独测试,以进行额外的校准。
根据至少一个非限制示例性实施例,非瞬态计算机可读存储介质进一步包含传感器姿势数据,该传感器姿势数据存储在包括机器人的传感器的位置坐标(x,y,z)和旋转坐标(滚转,俯仰,偏航)的矩阵中。类似地,非瞬态计算机可读存储介质可进一步包括目标姿势数据,该目标姿势数据存储在包括传感器目标的位置(x,y,z)坐标和旋转(滚转,俯仰,偏航)坐标的矩阵中。
根据至少一个非限制示例性实施例,非瞬态计算机可读存储介质进一步包含计算机可读指令,这些计算机可读指令在由专用处理装置执行时,将对传感器数据应用变换以使耦合或固定在机器人上的传感器在其位置上物理地重新取向,或对来自该传感器的数据应用数字变换。传感器数据的变换程度或度量是理想或代表性测量(与CAD模型相对应)与由传感器获取的测量之间的差。基于对传感器数据的变换,可以对各个传感器进行物理调整或数字调整,以使得传感器在其位置上获取的测量等于传感器在其理想(即,默认)位置处的理想测量。此类配置允许传感器感知目标并将该目标的位置确定为处于其正确位置。进而,确保对传感器进行适当且正确的校准。本领域的技术人员将理解,该变换可以是虚拟的,可以通过致动器单元进行调整,和/或由操作者手动地进行调整。
图1A是根据示例性实施例的校准室或校准环境100的俯视图。本领域的技术人员将理解,校准环境100可以在室或建筑物中的物理空间内;或替代地,校准环境100可以是实际物理空间的计算机生成的虚拟表示。校准环境100可包括一个、零个或多个有支架的目标102、金字塔形目标104、平面LIDAR和倾斜LIDAR目标106,侧面倾斜LIDAR目标108、侧面倾斜LIDAR目标110(如图1B中所示位于机器人202的左侧和右侧)、以及正好位于机器人202的后面和两侧的侧面深度相机目标112。图1A和图1B中未示出,但本领域的技术人员将理解,可以将侧面倾斜LIDAR目标110沿与图1A和图1B中所示的现有壁相对的壁放置。出于清楚的目的,从图示中省略了相对的侧面倾斜LIDAR目标108、110。校准环境100可进一步包括用于在校准期间定位机器人202的固定位置116,其中固定位置116可进一步包括后锁定机构114、后轮楔块118和前轮楔块120,如图1D中所示和下面进一步讨论。本领域的技术人员将理解,如上所述的有支架的目标102、金字塔形目标104、平面LIDAR和倾斜LIDAR目标106、侧面倾斜LIDAR目标108、侧面倾斜LIDAR目标110和侧面深度相机目标112可以是如图1A所示的物理结构或固定装置,或者替代地,可以是在壁上的数字表示或投影,其提供与所示的物理结构相似的功能和目的。
根据至少一个非限制实施例,如果要校准更多和/或不同的传感器,则可以向校准室或环境100添加一些、零个或附加的目标。如图1A中所示,固定位置116与在校准图2A中所示的传感器单元214时将机器人202固定在固定位置相对应。下面并且参考图2A进一步详细讨论的,这些传感器单元214可包括例如,前深度相机124(图1C所示)、倾斜LIDAR 122(图1C所示)、平面LIDAR 126(图1D所示)以及左后深度相机128-L和右后深度相机128-R(如图1C所示)。
如上所述,传感器目标102、104、106、108、110和112可以由传对于感器单元214而言可见的任何材料组成,该传感器单元214相对应地对材料进行校准。材料的类型可包括但不限于金属、塑料、泡沫、硬纸板、粉末涂层材料、哑光涂层材料和/或传感器可见的任何其他材料。根据另一个非限制示例性实施例,传感器目标102、104、106、108、110和112在形状、尺寸和/或颜色上可以与图1A-图1E所示的传感器目标不同。
接下来,参考图1B,示出了校准环境100的另一透视图。图1B是机器人202基于或使用传感器目标102和传感器目标104来校准前深度相机124的示例性图示。来自前深度相机124的数据可包括由视场130(或替代地称为路径或平面)界定的对传感器目标102和传感器目标104的距离和位置测量。进一步在图7A-图7C中示出,操作者(未示出)可以利用用户接口来对前深度相机124以及多个如图1C中所示的其他传感器执行校准。如图1A-图1B中所示,有支架的目标102围绕金字塔形目标104,并且以方形配置被定位成围绕金字塔目标104。多个有支架的目标102中的每一个距金字塔目标104可以是等距的。
图1C是根据示例性实施例的多个传感器以及有助于校准该多个传感器的它们相对应的视场的图示。定位在机器人202上的多个传感器至少包括前深度相机124、倾斜LIDAR122、平面LIDAR 126以及两个侧面深度相机128-L(左)和128-R(右),这些传感器具有如图所示的相应视锥体或视场124-1、122-1、126-1和128-1。多个传感器中的每个传感器收集数据,该数据包括至少一个相对应的或相应的传感器目标的位置、取向和/或距离读数。例如,如图所示,前深度相机124可以收集在前深度相机124的视场124-1内的传感器目标102和传感器目标104的距离和位置测量。倾斜LIDAR 122可以收集来自视场122-1内的传感器目标108和传感器目标106的数据。侧面深度相机128-R可以收集来自机器人右侧的传感器目标112的数据,并且侧面深度相机128-L可以收集来自机器人202的左侧的传感器目标112(位于机器人202的后面,在图1C中未示出)的数据。最后,如图所示,平面LIDAR 126可以收集来自视场126-1内的传感器目标106和传感器目标110的数据。由每个单独的传感器收集的数据可用于使用在以下附图中进一步图示的方法来校准相对应的传感器。换句话说,每个相应传感器具有其与相应传感器目标相交或对准的相应视场。相应传感器能够校准其自身或由操作者基于对在相应传感器的视场内的相应传感器目标的测量来进行校准。
接下来,参考图1D,示出了根据示例性实施例的校准环境100中的机器人202上使用的多个传感器的视图。为了易于理解和清楚的目的,从图1D中省略了机器人202而示出多个传感器,以便清楚地透视和理解多个传感器中的每个传感器的相应视场。多个传感器包括设备(诸如机器人)的倾斜LIDAR 122;前深度相机124;平面LIDAR 126;以及包括右深度相机128-R和左深度相机128-L的每侧上的两个侧面深度相机128(左侧面和右侧面)。另外,如图1D中所示,固定点或框架116可包括用于将机器人202固定在框架116内的固定位置的前轮楔块120和后轮楔块118。本领域的技术人员将理解,图1D和图1E未示出其上放置或定位有多个传感器的设备(即,机器人)。出于更清楚地看到多个传感器的目的,从这些图示中省略了设备(即,机器人)。这些多个传感器中的每个传感器的投影或视场覆盖某一区域,该某一区域特定于相应传感器放置在机器人202上所在的位置,如图1D所示。如图1D中所示,耦合或附着到机器人的多个传感器中的每个相应传感器包括视场,该视场包括至少一个或多个传感器目标。
接下来,参考图1E,倾斜LIDAR 122收集来自沿平面视场122-1的目标的数据。沿平面视场122-1的目标包括例如,传感器目标106、传感器目标108。前深度相机124收集来自沿视场124-1的目标的数据。沿视场124-1的目标包括例如,传感器目标102、传感器目标104。平面LIDAR 126收集来自沿平面视场126-1的传感器目标的数据。沿平面视场126-1的传感器目标包括例如,传感器目标106、传感器目标110。并且,最后,侧面深度相机128-R、128-L收集来自沿其相应视场128-1的传感器目标的数据。右深度相机128-R和左深度相机128-L两者的视场共同被注释为视场128-1。沿视场128-1的传感器目标包括例如,传感器目标110、传感器目标112。相应地,基于每个相应传感器的这些特定视场,获得了来自特定目标的数据。关于上文讨论并在下文参考图4详细讨论的CAD模型,它代表与相应视场122-1、124-1、126-1和128-1相对应的数据。本领域的技术人员将理解,在图1C、图1D和图1E中示出的相应视场(或者可替代地称为路径或平面)可包括相对于彼此重叠的部分或分段。
图2A是根据示例性实施例的机器人202的功能框图。如图2A中所示,机器人202可包括控制器222、存储器224、用户接口单元212、地图绘制和位置确定单元218、传感器单元214、致动器单元208和通信单元216,以及其他组件和子组件(例如,其中的一些可能未示出)。尽管在图2A中示出了特定实现方式,但是应理解,如在给定本公开的内容的情况下对于普通技术人员将显而易见的是,在某些实现方式中可以改变架构。如本文中所使用的,机器人202可以至少部分地代表本公开中描述的任何机器人。
控制器222可以控制由机器人202执行的各种操作。控制器222可包括和/或包含一个或多个处理器(例如,微处理器)和其他外围设备。如本文所使用的,处理器、微处理器和/或数字处理器可包括任何类型的数字处理设备,诸如但不限于数字信号处理器(“DSP”)、精简指令集计算机(“RISC”)、通用(“CISC”)处理器、微处理器、门阵列(例如,现场可编程门阵列(“FPGA”)、可编程逻辑器件(“PLD”)、可重构计算机结构(“RCF”)、阵列处理器、安全微处理器、专用处理器(例如,神经形态处理器)以及专用集成电路(“ASIC”)。此类数字处理器可以被包含在单个单一集成电路管芯上,或者跨多个组件分布。
控制器222可以操作地和/或通信地耦合到存储器224。存储器224可包括配置成用于存储数字数据的任何类型的集成电路或其他存储设备,包括但不限于,只读存储器(“ROM”)、随机存取存储器(“RAM”)、非易失性随机存取存储器(“NVRAM”)、可编程只读存储器(“PROM”)、电可擦除可编程只读存储器(“EEPROM”)、动态随机存取存储器(“DRAM”)、移动DRAM、同步DRAM(“SDRAM”)、双倍数据速率SDRAM(“DDR/2SDRAM”)、扩展数据输出(“EDO”)RAM、快速页模式RAM(“FPM”)、等待时间减少的DRAM(“RLDRAM”)、静态RAM(“SRAM”)、闪存(例如,NAND/NOR)、忆阻器存储器、伪静态RAM(“PSRAM”)等。存储器224可以向控制器222提供指令和数据。例如,存储器224可以是其上存储有多条指令的非瞬态计算机可读存储装置和/或介质,这些指令可由处理装置(例如,控制器222)执行来操作机器人202。在一些情况下,指令可被配置成当由处理装置执行时使处理装置执行本公开中所描述的各种方法、特征和/或功能。相应地,控制器222可以基于存储在存储器224内的程序指令来执行逻辑和/或算术操作。在一些情况下,存储器224的指令和/或数据可以存储在硬件的组合中,一些本地地位于机器人202内,而一些位于远离机器人202处(例如,在云、服务器、网络等中)。
对于本领域的普通技术人员应该容易地显而易见的是,处理器可以在机器人202的外部并且可以利用通信单元216通信地耦合到机器人202的控制器222,其中,外部处理器可以接收来自机器人202的数据,处理数据,并且将计算机可读指令传送回控制器222。在至少一个非限制示例性实施例,处理器可以在远程服务器(未示出)上。
在一些示例性实施例中,如图2A中所示,存储器224可以存储传感器数据的库。在一些情况下,传感器数据可以至少部分地与物体和/或人相关联。在示例性实施例中,该库可包括与处于不同条件下的物体和/或人有关的传感器数据,诸如与具有不同成分(例如,材料、反射特性、分子组成等)、不同的照明条件、角度、尺寸、距离、清晰度(例如,模糊、阻塞/遮挡、部分脱帧等)、颜色、周围环境和/或其他条件的物体和/或人有关的传感器数据。库中的传感器数据可以由传感器(例如,传感器单元214的传感器或任何其他传感器)取得和/或自动地被生成,诸如利用配置成用于生成/模拟(例如,在虚拟世界)来自不同照明条件、角度、尺寸、距离、清晰度(例如,模糊、阻塞/遮挡、部分脱帧等)、颜色、周围环境和/或其他条件的库传感器数据的计算机程序(例如,计算机程序可以完全以数字方式和/或从实际传感器数据开始生成/模拟这些库数据)。库中镜像(image)的数量可以至少部分地取决于可用数据量、机器人202在其中操作的周围环境的可变性、物体和/或人的复杂性、物体外观的可变性、机器人的物理属性、传感器的特性和/或(例如,在库、存储器224和/或本地或远程存储中)可用存储空间量中的一者或多者。在示例性实施例中,库的至少一部分可以存储在网络(例如,云、服务器、分布式网络等)上和/或可以不完全存储在存储器214内。作为又另一个示例性实施例,各种机器人(例如,诸如由共同的制造商、用户、网络等共同关联的机器人)可以联网,使得由各个机器人捕获的数据与其他机器人共同共享。以此类方式,这些机器人可以被配置成用于学习和/或共享传感器数据,以便促进容易地检测和/或标识误差和/或辅助事件的能力。
在示例性实施例中,电源226可包括一个或多个电池,包括但不限于锂、锂离子、镍-镉、镍-金属氢化物、镍-氢、碳-锌、氧化银、锌-碳、锌-空气、氧化汞、碱性电池或本领域已知的任何其他类型的电池。某些电池可以是可再充电的,诸如无线地(例如,通过谐振电路和/或谐振储能电路)和/或插入外部电源。电源226也可以是任何能源供应者,包括将太阳能、风能、水、核能、氢能、汽油、天然气、化石燃料、机械能、蒸汽和/或任何功率源转换成电能的壁式插座和电子设备。
仍然参考图2A,操作单元204可以耦合到控制器222或任何其他控制器,以执行本公开中描述的各种操作。在一些实施例中,可包括操作单元204中的一个、多个或零个模块。在整个本公开中,可以参考各种控制器和/或处理器。在一些实施例中,单个控制器(例如,控制器222)可以用作所描述的各种控制器和/或处理器。在其他实施例中,可以使用不同的控制器和/或处理器,诸如特定用于一个或多个操作单元204的控制器和/或处理器。控制器222可以发送和/或接收信号,诸如功率信号、状态信号、数据信号、电信号和/或任何其他期望的信号,包括去往操作单元204的离散和模拟信号。控制器222可以协调和/或管理操作单元204,和/或设置时序(例如,同步地或异步地)、关闭/开启控制功率预算、接收/发送网络指令和/或更新、更新固件、发送询问信号、接收和/或发送状态、和/或执行用于运行机器人202的功能的任何操作。
返回图2A,操作单元204可包括执行机器人202的功能的各种单元。例如,操作单元204至少包括导航单元206、致动器单元208、用户接口单元212、传感器单元214、和通信单元216。操作单元204还可包括提供机器人202的各种功能的其他单元。在示例性实施例中,可采用软件、硬件或软件和硬件两者来实例化操作单元204。例如,在一些情况下,操作单元204的单元可包括由控制器执行的计算机实现的指令。在示例性实施例中,操作单元204的单元可包括硬编码逻辑。在示例性实施例中,操作单元204的单元可包括由控制器执行的计算机实现的指令和硬编码逻辑两者。在部分地以软件来实现操作单元204的情况下,操作单元204可包括被配置成用于提供一个或多个功能的代码单元/代码模块。
在示例性实施例中,导航单元206可包括可以计算地构建和更新环境的地图、在地图上确定对机器人202的位置(例如,找到位置)、以及将机器人202导航到目的地或从目的地导航机器人202的系统和方法。可以通过将部分由传感器单元214获得的数据施加到至少部分代表环境的计算机可读地图中来执行地图绘制。在示例性实施例中,环境的地图可以通过用户接口单元212上传到机器人202、以无线方式或通过有线连接上传、或由用户教导给机器人202。
在示例性实施例中,导航单元206可进一步包括地图绘制和位置确定单元218,其可接收来自传感器单元214的传感器数据以在地图上确定机器人202的位置。在示例性实施例中,地图绘制和位置确定单元可包括允许机器人202在地图的坐标上和/或相对于某个位置(例如,初始化位置、终点位置、信标、参考点等)来确定其自身的位置的位置确定系统和方法。地图绘制和位置确定单元还可以诸如通过生成图表和/或地图来处理由机器人202进行的测量。在一些实施例中,地图绘制和位置确定单元218可以不是单独的单元,而是传感器单元214和/或控制器222的一部分。
在一些实施例中,导航单元206可进一步包括地图评估单元220,其可以分析和评估地图或路线以检测误差(例如,地图误差、地图分辨率、不连续路线等)和/或地图或路线的可用性。在示例性实施例中,导航单元206确定地图不可用和/或包含误差,从而使得机器人202提示用户重新演示路线或以其他方式对环境重新进行地图绘制。
在示例性实施例中,导航单元206可包括被配置成用于提供方向性指令以供机器人202进行导航的组件和/或软件。导航单元206可以处理由地图绘制和位置确定单元生成的地图、路线和位置确定信息,来自传感器单元214和/或其他操作单元204的数据。
在示例性实施例中,机器人202可以通过学习过程来进行地图绘制并且学习路线。例如,操作者可以通过沿环境中的路线驱动机器人202来教导机器人202在环境中在何处行驶。通过对来自传感器单元214的传感器数据进行组合,机器人202可以确定机器人202的相对姿势和环境中物品的姿势。以该方式,机器人202可以确定它在环境中处于何处和它已经行驶过的地方。机器人202稍后可以回忆起其行驶过的地方并且以基本相似的方式行驶(但它可以在后续行驶中避开某些障碍)。在一些实施例中,机器人可以利用通信单元216无线地彼此共享此类经验。
仍然参考图2A,致动器单元208可包括致动器,诸如电动机、煤气机、从动磁体系统、螺线管/棘轮系统、压电系统(例如,爬行电机)、磁致伸缩元件、姿势和/或本领域中已知的任何驱动致动器的方式。作为说明,此类致动器可以致动轮子,以使机器人202导航路线;导航绕过障碍物;旋转相机和传感器。
根据示例性实施例,传感器单元214可包括可以检测机器人202内和/或周围的特性的系统和/或方法。传感器单元214可包括多个传感器和/或包括传感器的组合。传感器单元214可包括机器人202内部或外部的传感器,和/或具有部分地在内部和/或部分地在外部的组件的传感器。在一些情况下,传感器单元214可包括一个或多个外感受性传感器,诸如声纳、光检测和测距(“LIDAR”)传感器、雷达、激光器、相机(包括摄像机(例如,红-蓝-绿(“RBG”)相机、红外相机、三维(“3D”)相机、热像仪等)、飞行时间(“TOF”)相机、结构化光相机、天线、运动检测器、麦克风和/或本领域中已知的任何其他传感器。根据示例性实施例,传感器单元214可以收集原始测量(例如,电流、电压、电阻、门逻辑等)和/或经变换的测量(例如,距离、角度、障碍物中的检测点等)。在一些情况下,可以聚合和/或汇总测量。传感器单元214可以至少部分基于测量来生成数据。此类数据可以以诸如矩阵、数组、队列、列表、阵列、堆栈、包等之类的数据结构来存储。根据示例性实施例,传感器数据的数据结构可以称为镜像。
根据示例性实施例,传感器单元214可包括可以测量机器人202的内部特性的传感器。例如,传感器单元214可以测量温度、功率水平、状态和/或机器人202的任何特性。在一些情况下,传感器单元214可被配置成用于确定机器人202的测程。例如,传感器单元214可包括本体感受性传感器,其可包括诸如加速度计、惯性测量单元(“IMU”)、里程表、陀螺仪、速度计、相机(例如,使用视觉里程计)、时钟/计时器等之类的传感器。测程可以促进机器人202的自主导航和/或自主动作。该测程可包括机器人202相对于初始位置的位置(例如,其中位置可包括机器人的定位、位移和/或取向,并且有时可以与本文所用的术语姿势互换)。此类数据可以以诸如矩阵、数组、队列、列表、阵列、堆栈、包等之类的数据结构来存储。根据示例性实施例,传感器数据的数据结构可以称为镜像。
地图绘制和位置确定单元218可以接收来自传感器单元214的传感器数据以在地图中确定机器人202的位置。根据示例性实施例,地图绘制和位置确定单元218可包括允许机器人202在地图的坐标上和/或相对于位置(例如,初始化位置、终点位置、信标、参考点等)对确定自身的位置的位置确定系统和方法。地图绘制和位置确定单元218还可以诸如通过生成图表和/或地图来处理由机器人202进行的测量。根据示例性实施例,地图绘制和位置确定单元218可以不是单独的单元,而是传感器单元214和/或控制器222的一部分。
根据示例性实施例,机器人202可以通过学习过程来进行地图绘制并且学习路线。例如,操作者可以通过沿环境中的路线驱动机器人202来教导机器人202在环境中在何处行驶。通过对来自传感器单元214的传感器数据进行组合,机器人202可以确定机器人202的相对姿势和环境中物品的姿势。以该方式,机器人202可以确定它在环境中处于何处和它已经行驶过的地方。机器人202稍后可以回忆起其行驶过的地方并且以基本相似的方式行驶(但它可以在后续行驶中避开某些障碍)。机器人可以(诸如通过网络)彼此共享此类经验。
根据示例性实施例,用户接口单元212可被配置成用于使用户能够与机器人202交互。例如,用户接口单元212可包括触摸面板、按钮、小键盘/键盘、端口(例如,通用串行总线(“USB”)、数字视觉接口(“DVI”)、显示端口、E-SATA、火线、PS/2、串行、VGA、SCSI、音频端口、高清多媒体接口(“HDMI”)、个人计算机存储卡国际协会(“PCMCIA”)端口、存储卡端口(例如,安全数字(“SD”)和微SD(miniSD))和/或计算机可读介质的端口)、鼠标、滚球、控制台、振动器、音频换能器和/或用户用于输入和/或接收数据和/或命令的无论是无线耦合还是通过有线耦合的任何接口。用户可以通过语音命令或手势进行交互。用户接口单元212可包括显示器,诸如但不限于,液晶显示器(“LCD”)、发光二极管(“LED”)显示器、LED LCD显示器、面内切换(“IPS”)显示器、阴极射线管、等离子显示器、高清(“HD”)面板、4K显示器、视网膜显示器、有机LED显示器、触摸屏、表面、帆布和/或任何本领域已知用于视觉呈现的显示器、电视、监视器、面板和/或设备。根据示例性实施例,用户接口单元212可以位于机器人202的主体上。根据示例性实施例,用户接口单元212可以位于远离机器人202的主体处,但是可以直接地或间接地(例如,通过网络、服务器和/或云)通信地耦合到机器人202(例如,经由包括发射器、接收器和/或收发器的通信单元)。根据示例性实施例,用户接口单元212可包括在位于机器人附近的表面(例如,地板)上的图像的一个或多个投影,例如,以向乘员或机器人周围的人提供信息。该信息可以是机器人未来移动的方向,诸如指示向前、向左、向右、向后,以一定角度和/或以任何其他方向移动。在一些情况下,此类信息可以利用箭头、颜色、符号等。
根据示例性实施例,通信单元216可包括一个或多个接收器、发射器和/或收发器。通信单元216可被配置成用于发送/接收传输协议,诸如 Wi-Fi、感应无线数据传输、射频、无线电传输、射频识别(“RFID”)、近场通信(“NFC”)、红外、网络接口、诸如3G(3GPP/3GPP2)之类的蜂窝技术、高速下行链路分组接入(“HSDPA”)、高速上行链路分组接入(“HSUPA”)、时分多址(“TDMA”)、码分多址(“CDMA”)(例如,IS-95A、宽带码分多址(“WCDMA”)等)、跳频扩展频谱(“FHSS”)、直接序列扩展频谱(“DSSS”)、全球移动通信系统(“GSM”)、个域网(“PAN”)(例如,PAN/802.15)、全球微波接入互操作性(“WiMAX”)、802.20、长期演进(“LTE”)(例如,LTE/LTE-A)、时分LTE(“TD-LTE”)、全球移动通信系统(“GSM”)、窄带/频分多址(“FDMA”)、正交频分复用(“OFDM”)、模拟蜂窝、蜂窝数字分组数据(“CDPD”)、卫星系统、毫米波或微波系统、声学、红外(例如,红外数据关联(“IrDA”))和/或任何其他形式的无线数据传输。
如本文中所使用的,网络接口可包括具有组件、网络或过程的任何信号接口、数据接口或软件接口,包括但不限于以下各项中的那些:火线(例如,FW400、FW800、FWS800T、FWS1600、FWS3200等)、通用串行总线(“USB”)(例如,USB 1.X、USB 2.0、USB 3.0、USB C型(Type-C)等)、以太网(例如,10/100、10/100/1000(千兆以太网)、10-Gig-E等)、基于同轴电缆联盟技术的多媒体(“MoCA”)、同轴电缆(例如,TVNETTM)、射频调谐器(例如,带内或OOB、电缆调制解调器等)、Wi-Fi(802.11)、WiMAX(例如,WiMAX(802.16))、PAN(例如,PAN/802.15)、蜂窝(例如,3G、LTE/LTE-A/TD-LTE/TD-LTE、GSM等)、IrDA族等。如本文中所使用的,Wi-Fi可包括以下各项中的一项或多项:IEEE-Std.802.11、IEEE-Std.802.11的变体、与IEEE-Std.802.11相关的标准(例如,802.11a/b/g/n/ac/ad/af/ah/ai/aj/aq/ax/ay)和/或其他无线标准。
通信单元216还可被配置成用于利用传输协议通过有线连接(诸如具有信号线和地线的任何电缆)来发送/接收信号。例如,此类电缆可包括以太网电缆、同轴电缆、通用串行总线(“USB”)、火线和/或本领域已知的任何连接。此类协议可以被通信单元216用来与外部系统通信,这些外部系统诸如计算机、智能电话、平板、数据捕获系统、移动电信网络、云、服务器等。通信单元216可被配置成用于发送和接收包括数字、字母、字母数字字符和/或符号的信号。在一些情况下,可以使用诸如128位或256位密钥之类的算法和/或符合诸如高级加密标准(“AES”)、RSA、数据加密标准(“DES”)、三重DES等之类的标准的其他加密算法对信号进行加密。通信单元216可被配置成用于发送并接收状态、命令和其他数据/信息。例如,通信单元216可以与用户操作者通信以允许用户控制机器人202。通信单元216可以与服务器/网络(例如,网络)通信以便允许机器人202将数据、状态、命令以及其他通信发送至服务器。服务器还可以通信地耦合到可用于远程监视和/或控制机器人202的(多个)计算机和/或(多个)设备。通信单元216还可以从用于机器人202的服务器接收更新(例如,固件或数据更新)、数据、状态、命令以及其他通信。
致动器单元208可包括用于致动的任何系统,在一些情况下用以执行任务。例如,致动器单元208可包括从动磁体系统、电机/引擎(例如,电动机、内燃机、蒸汽机和/或本领域已知的任何类型的电机/引擎)、螺线管/棘轮系统、压电系统(例如,爬行电机)、磁致伸缩元件、姿势和/或任何领域中已知的致动器。根据示例性实施例,致动器单元208可包括允许机器人202的移动(例如,机动化推进)的系统。例如,机动化推进可以使机器人202沿向前或向后方向移动,和/或至少部分地用于使机器人202(例如,向左、向右和/或任何其他方向)转弯。作为说明,致动器单元208可以控制机器人202是移动还是停止和/或允许机器人202从一个位置导航到另一位置。
参考图2A所描述的单元中的一个或多个(包括存储器224、控制器222、传感器单元214、用户接口单元212、致动器单元208、通信单元216、地图绘制和位置确定单元218和/或其他单元)可被集成到机器人202上(诸如在集成系统中)。然而,根据示例性实施例,这些单元中的一个或多个可以是可附接模块的部分。该模块可被附接到现有装置以实现自动化,使得现有装置表现得像机器人。因此,可以在可被附接到现有设备和/或在集成系统中被集成到机器人202上的模块中实例化本公开中参考机器人202描述的特征。此外,在一些情况下,本领域普通技术人员将从本公开的内容中理解,本公开中描述的特征的至少一部分还可以(诸如在云、网络和/或服务器中)远程运行。
本领域的技术人员将理解,控制器222可以替代地称为处理器;其中,控制器或处理器可以与位于远程位置的服务器相对应,该服务器被配置成用于在执行本文公开的专用算法时通过向机器人202发射无线信号来操作机器人202。
如本文中继续使用的,控制器(例如,控制器222)执行任务或功能包括控制器执行来自通信地耦合到该控制器的非瞬态计算机可读存储器单元(例如,存储器224)的指令。类似地,机器人执行任务包括控制器执行来自非瞬态计算机可读存储器单元的指令并且向多个操作单元发送信号以实现其控制。另外,本领域的普通技术人员理解,控制器或处理器以及存储器单元可以在机器人外部并且可以经由有线或无线通信信道通信地耦合。
接下来参考图2B,示出了根据示例性实施例的、在图2A中示出的系统中使用的专用控制器222的架构。如图2B中所示,专用计算机包括数据总线234、接收器232、发射器240、至少一个处理器236、以及存储器238。接收器232、处理器236和发射器240都经由数据总线234彼此通信。处理器236是被配置成用于执行本文所公开的专用算法的专用处理器。处理器236被配置成用于访问存储器238,该存储器238存储计算机代码或指令,以便处理器236执行专用算法。如图2B中所示,存储器238可包括先前图2A中所示的存储器224的特征中的一些特征,不包括先前图2A中所示的存储器224的特征中的任何特征,包括与先前图2A中所示的存储器224的特征不同的特征,或者包括先前图2A中所示的存储器224的特征中的全部特征。下面进一步详细讨论由处理器236执行的算法。如图2B中所示的接收器232被配置成用于至少从导航单元206、致动器单元208、用户接口单元212、传感器单元214、通信单元216、地图绘制和位置确定单元218以及地图评估单元220接收输入信号230。输入信号230可包括来自图2A中所示的多个操作单元204的信号,包括但不限于来自传感器单元114的传感器数据、用户输入、电机反馈、(例如,来自远程服务器的)外部通信信号和/或来自操作单元204的需要由专用控制器222进一步处理的任何其他信号。接收器232经由数据总线234将这些接收到的信号传送到处理器236。本领域的技术人员将理解,数据总线234是用于专用控制器222中不同组件(接收器、处理器和发射器)之间的通信的装置。如下所讨论的,处理器236通过访问来自存储器238的专用计算机可读指令来执行算法。以上参考图2A讨论了关于处理器236在接收、处理和发射这些信号中执行专用算法的进一步详细的描述。此后,基于处理器236对专用算法的执行,经由发射器240发射输出信号242。输出信号242至少被发射到导航单元206、致动器单元208、用户接口单元212、传感器单元214、通信单元216、地图绘制和位置确定单元218以及地图评估单元220。
存储器238是用于存储计算机代码或指令的存储介质。存储介质可包括光存储器(例如,CD、DVD、HD-DVD、蓝光盘等)、半导体存储器(例如,RAM、EPROM、EEPROM等)和/或磁存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)等。存储介质可包括易失性、非易失性、动态、静态、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址和/或内容可寻址的设备。如图所示,处理器236可以经由数据总线234将输出信号传送到发射器240。发射器240可被配置成用于进一步将输出信号传送到多个操作单元204,示出为信号输出242。
本领域的普通技术人员将理解,图2B中所示的架构可以替代地示出被配置成用于从远程或遥远位置实现对机器人装置的控制的服务器。即,服务器还可包括数据总线、接收器、发射器、处理器和在其上存储专用计算机可读指令的存储器,使得以上在图2A和2B中讨论的专用算法的执行由与机器人202可以在或可以不在同一物理位置的远程服务器执行。
图3A是根据示例性实施例的、图2A中所示的传感器单元214的传感器302的图示,该传感器302收集对目标304的测量。传感器302定位在位置310处。传感器302可以是例如以上图1D中所示的前深度相机124、平面LIDAR 126、倾斜LIDAR 122和后深度相机128(左和右),该传感器302接收传感器目标304的感知位置的数据。传感器目标304可以是例如,图1A-图1E中所示的传感器目标102、104、106、108、110和/或112中的任何一个或者具有其他传感器目标类型。平面LIDAR 126收集的数据可包括传感器目标304的姿势数据,并且可以表示为例如,如图4的表400中所示的X1’、Y1’、Z1’、偏航1’、俯仰1’和滚转1’;并且对于倾斜LIDAR 122,所接收的数据可以表示为例如,如图4所示的X2’、Y2’、Z2’、偏航2’、俯仰2’和滚转2’,依此类推。传感器302可以确定目标304的位置(即,测量(x,y,z,偏航,俯仰,滚转)、目标304的尺寸以及传感器302与目标304之间的距离),并且控制器222可以将所测量的目标304的数据存储在存储器中。在将从传感器304接收的传感器数据与理想CAD模型(包括目标304的理想的位置确定数据)进行比较之后,如图5的框512所示,在下面进一步讨论,专用控制器222可以确定与传感器目标304的位置偏移了误差306,如图5中的框512所示。
在至少一个非限制示例性实施例中,误差306可包括由传感器单元214收集的数据,该数据进一步包括由控制器222存储在存储器224中的传感器目标304的位置、俯仰、滚转和/或偏航的差。在至少一个非限制示例性实施例中,控制器222处理误差306和理想CAD中传感器目标304的位置,以生成要应用于传感器数据矩阵以校准传感器的变换矩阵。在另一个非限制示例性实施例中,传感器目标304可包括但不限于图1A中所示的任一类型的传感器目标102、104、106、108、110或112。
接下来参考图3B,根据示例性实施例,由控制器222将变换矩阵应用于传感器302。即,将传感器302的位置从第一位置310改变到不同的位置312,以便校正图3A中所示的误差306。控制器222对误差306的校正使得传感器302感知到目标304处于其正确位置中。控制器222通过执行存储在存储器224中的指令来计算传感器302的位置312,该指令将传感器数据与环境的理想CAD模型进行比较(例如,如果传感器302是LIDAR或深度相机,则为3D扫描匹配)。进而,如下面更详细地讨论的,图4中所示的传感器数据位置(其是由相应传感器获得的数据)通过CAD模型进行比较,并且在发现两者之间的差异或误差时,使传感器数据位置与CAD模型匹配。
在至少一个非限制示例性实施例中,控制器222可以执行存储在存储器224中的指令,以通过应用由控制器222基于误差306计算的变换矩阵(包括对传感器数据的变换)来虚拟地调整传感器位置310,从而将传感器对物体的感知调整为与理想的CAD模型对准。在另一个非限制示例性实施例中,该变换可包括变换以协调相应传感器(即,前深度相机124、倾斜LIDAR122、平面LIDAR 126和后深度相机128)的数据的位置、俯仰、偏航和/或滚转,以将传感器目标306的感知位置与理想CAD模型位置308对准。在另一个非限制示例性实施例中,位置310和312可以占据同一物理空间,其中位置310至312的变化可以代表传感器302的虚拟调整。
在另一个非限制示例性实施例中,控制器222可以执行存储在存储器224中的指令,从而使一个或多个致动器单元208将传感器单元302调节到图3B所示的不同位置312。如下面在图10中所示,该调整可包括对相应传感器302的旋转、横向、水平和/或垂直调整。
在另一个非限制示例性实施例中,控制器222可以执行存储在存储器224中的指令,从而使用户接口单元212向操作者显示指令,包括在没有虚拟变换或致动器可减少误差306的情况下手动调整传感器的指令。
接下来参考图4,示出了根据示例性实施例的数据表400的示例。表400的数据条目可包括相应传感器单元214相对于原点(例如,原点可以是机器人上或环境100内的任何预定点)测得的传感器目标的姿势数据。如图1所示,传感器单元214可包括例如,位于校准环境100内的机器人202的平面LIDAR 126、倾斜LIDAR 122、前深度相机124、右深度相机128-R和左深度相机128-L。本领域的技术人员将理解,可以在机器人202上包括更多或更少的传感器,其中示出的传感器并非旨在进行限制。每个传感器单元214可被激活以测量其相应视场内的一个或多个传感器目标的姿势数据。可以将传感器目标的测量姿势数据与传感器目标的理想姿势进行比较以确定差异(例如,以上图3A的误差306),该理想姿势基于目标的已知姿势(例如,由操作者测量)在校准环境100的理想CAD模型中表示。
机器人202的控制器222或单独的处理器可以执行计算机可读指令,以基于所测量的数据(xn’,yn’,zn’,偏航n’,俯仰n’,滚转n’)与每个传感器的理想CAD模型的相应目标的已知或理想姿势数据(xn,yn,zn,偏航n,俯仰n,滚转n)之间的姿势坐标比较来确定误差(例如,306)。其中,‘n’是与传感器单元214中的任何传感器相对应的整数。基于该比较,可以确定每个相应传感器的真实姿势,该真实姿势与传感器目标的测量期间机器人202上相应传感器的姿势相对应。使用真实姿势,控制器222或单独的处理器可以确定以下各项中的至少一项:(i)应用于来自相应传感器单元的数据的数字变换,来配置经变换的数据以匹配理想的姿势数据,或者(ii)使用致动器或者由操作者手动调整对相应传感器单元的姿势进行的物理调整。该数字变换或物理调整将相应传感器配置成用于输出相应传感器目标的与理想CAD模型匹配的数据。
本领域的技术人员将理解,图4中所示的数据表400是自引用表,其中当控制器222执行计算机可读指令以添加附加的列和行时,特定的列和行可能能够引用单独的列和行。作为预备阶段,数据表400可以仅由包括图4中所示的相应传感器和相应CAD模型输入(例如,传感器目标102、104、106、108、110和112的姿势)的行和列组成。例如,数据表400将限于5x6矩阵中的数据,该5x6矩阵包括五(5)行和六(6)列,五(5)行由前深度相机124、倾斜LIDAR 122、平面LIDAR 126、右深度相机128-R和左深度相机128-L组成,六(6)列由基于理想姿势或CAD模型的x轴、y轴、z轴、俯仰角、滚转角和偏航角组成。此后,在将机器人202引入到图1中所示的校准室或环境100并且打开相应传感器时,相应传感器接收到的数据可以将数据表400扩展或外推至六(6)个附加列,其包括从相应传感器获得的数据;以及潜在地,针对向机器人202添加任何附加传感器的更多的行。例如,对于第n个传感器,第n个数据行可以被添加到数据表400。因此,对于本领域技术人员,可以例如基于由相应传感器收集的数据通过添加行和列来修改或外推存储在存储器224中的数据表400。
根据至少一个非限制示例性实施例,表400的数据条目可以类似地表示相应传感器单元214的姿势,而不是相应传感器目标的姿势。可以基于以下来确定传感器单元214的姿势:测量传感器目标的姿势;将目标的测量姿势与来自理想CAD模型的目标的已知姿势进行比较以确定误差306;以及利用误差306来确定相对于默认姿势的传感器的姿势,该默认姿势是(例如,从机器人的制造商)已知的。换句话说,如果传感器姿势是从默认姿势开始的,则传感器目标的测量姿势将与理想CAD模型提供的姿势相同。可以将每个相应传感器单元214的确定姿势与每个相应传感器单元214的已知的默认姿势进行比较,使得可以通过机器人202的控制器222执行来自存储器224的计算机可读指令来确定误差306。误差306可以将控制器222配置成用于对传感器应用数字变换或物理调整。
根据至少一个非限制示例性实施例,表400的数据条目可包括与传感器单元或相应传感器目标的姿势相对应的矩阵或其他数据结构。例如,LIDAR和深度相机传感器可以提供三维点云矩阵,可以使用迭代最近点算法将其与理想的CAD点云进行比较,以确定与传感器姿势误差相对应的变换。类似地,作为另一个示例,数据条目可包括由RGB相机传感器捕获的图像的像素颜色值的张量,其中图像中的像素颜色值和位置可以与理想图像(例如,由处于默认姿势的RGB相机捕获的图像)进行比较。也就是说,比较传感器目标/传感器的姿势并不旨在进行限制,因为可以利用其他参考数据结构(类似于本文所述的理想CAD模型)来校准传感器,参考数据结构包括代表校准环境100内的传感器目标的值。
根据至少一个非限制示例性实施例,表400的数据可包括表400中的一些、无一、更多或全部数据类型(例如,目标的颜色、目标的尺寸等)。在至少一个非限制示例性实施例中,传感器单元214可包括表400中所示的一些、无一、不同和/或附加类型的传感器单元。
根据另一非限制示例性实施例,一个传感器可以从多个目标收集数据,其中控制器222在存储器224中存储包括传感器目标的感知位置和理想CAD位置的附加数据。类似地,在另一非限制示例性实施例中,多个传感器可以从一个传感器目标收集数据,其中控制器222在存储器224中存储包括传感器目标的附加感知位置和理想CAD位置的附加数据。
图5是根据示例性实施例的参考图1A-图1E和图2A的用于操作者希望利用本公开的系统和方法来校准机器人202上的传感器单元214的至少一个传感器的过程500的过程流程图。框502示出了操作者将一或多个传感器目标102、104、106、108、110和/或112定位在如图1所示的固定位置并测量它们在校准环境中的位置。
框504示出了操作者使用在框502中找到的测量来创建如先前在图1A-图1E中示出的校准环境100的理想CAD模型。根据至少一个非限制示例性实施例,校准环境100的理想CAD模型可以由单独的专用处理装置创建,以供稍后由机器人202进行处理。理想CAD模型可包括与由机器人202的传感器在这些传感器处于相应的默认(即,经完美校准的)姿势的情况下对传感器目标的理想测量相对应的数据结构或一组值。
框506示出了通过利用如图1A和图1D中所示的前轮楔块120、后轮楔块118和/或后闩锁设备114将机器人202锁定到固定位置116中,以确保机器人202处于固定位置,并确保对于要使用同一环境来校准的附加机器人,位置116保持固定。可以利用任何机构将机器人202固定在校准环境100内的固定的、已知位置中,其中前轮楔块和后轮楔块的使用不旨在进行限制。
框508示出了操作者利用图2A中所示的用户接口单元向控制器222发送信号。控制器222在接收到信号后将执行存储在存储器224中的指令,以从周围环境100的传感器单元214收集数据,并且然后将数据存储在存储器224中。根据至少一个非限制示例性实施例,控制器222可以从操作者通过用户接口单元212指定的一个、一些或全部传感器收集数据。
框510示出了传感器单元214接收来自传感器目标102、104、106、108、110和/或112的位置和取向的数据。根据至少一个非限制示例性实施例,该传感器数据可包括横向取向、水平取向、垂直取向、俯仰、偏航和/或滚转中的任何一者或多者,并且可被存储在存储器224内的矩阵中。
框512示出了控制器222执行来自存储器224的指令以将收集到的传感器数据与环境100的理想化CAD模型进行比较并确定误差。根据至少一个非限制示例性实施例,这些误差被存储在存储器中以用于传感器单元214的稍后调整,并且可包括传感器数据与理想CAD模型之间的差,包括但不限于传感器目标的横向取向、水平取向、垂直取向、俯仰、偏航和/或滚转。根据另一个非限制示例性实施例,可以将与每个传感器目标的测量姿势和理想姿势之间的差相对应的变换矩阵存储在存储器中。例如,参考图3A-3B,变换矩阵可包括基于误差306的、位置310与位置312之间的空间变换。即,表示传感器目标的测量姿势与由理想CAD模型指示的传感器目标的理想姿势之间的差的任何值可被存储在存储器中,其中值可以为零或非零。
框514示出了控制器222执行来自存储器224的指令,该指令在被执行时使控制器222调整传感器以最小化误差。根据至少一个非限制示例性实施例,这些传感器(例如,前深度相机124、倾斜LIDAR 122和后深度相机128等)可以通过控制器222执行来自存储器224的、可使致动器单元208调整对传感器的定位的代码来调整,如以下图10所示。根据另一个非限制示例性实施例,控制器222执行来自存储器224的指令可至少部分地基于在框510中找到的误差数据来创建变换矩阵,并将该变换矩阵应用于传感器数据,从而使传感器单元214正确地感知物体。根据另一个非限制示例性实施例,控制器222可以向用户接口单元212的用户接口发送信号,从而使用户接口基于所计算的误差来显示用于手动调整传感器的指令。
图6A是根据示例性实施例的校准机器人606上的传感器604的方法的说明性实施例。在引用传感器604时,本领域技术人员将理解,此类传感器可以是前深度相机124、倾斜LIDAR 122、平面LIDAR 126、后深度相机128或要使用本公开的方法校准的任何其他类似的传感器。如图6A所示,传感器604利用本公开的系统和方法从传感器目标602收集数据以用于传感器604的校准。在引用传感器目标602时,本领域技术人员将理解,此类传感器目标602可以与图1所示的目标102、104、106、108、110或112相对应。传感器目标602被定位成使得它可以被传感器604看见。在至少一个非限制示例性实施例中,传感器目标602可包括在图1中示出的任一类型的传感器目标102、104、106、108、110、112或包括传感器604可见的材料的任何其他传感器目标。
传感器604可以收集对目标602的测量,该测量可以与目标602的CAD模型的理想测量进行比较。例如,可以由传感器604确定目标602的边缘的位置,其中可以将对边缘的位置确定与目标602的理想CAD模型进行比较,使得可以确定误差(例如,误差306)。该误差可以与传感器604的姿势与默认姿势的差异相对应。
图6B是根据示例性实施例的用于校准机器人608上的传感器604的方法的说明性实施例。机器人606可以具有与机器人608不同的特性,诸如但不限于尺寸、传感器的位置、传感器604的数量等。在至少一个非限制示例性实施例中,操作者可以移动传感器目标602以允许机器人608利用传感器目标602进行校准。
在另一个非限制示例性实施例中,可以使用螺钉、闩锁、维克罗磁体、滑动机构或任何类似的方法来定位传感器目标602,以促进传感器目标602的重新定位,使得可以通过重新定位传感器目标602而在同一室中校准不同的机器人606和608。在另一个非限制示例性实施例中,传感器目标602可以包括一个或多个传感器目标,并且类似地传感器604可以包括图2A中所示的传感器单元214的一个或多个传感器。此外,在对机器人606的传感器604进行校准之后,如果不能使用传感器目标602来校准机器人608的传感器604,则可以将传感器目标602换成其他传感器目标,以便于对机器人608进行校准。
图7A是根据示例性实施例的用户接口单元212的、设备上用户接口的图示。根据至少一个非限制示例性实施例,图7A的用户接口为用户提供用于独立地或同时地对每个单个传感器和/或图1B中所示的多个传感器122、124、126、128(以及同时地,附加传感器(未示出))运行校准测试的系统。即,可以一次校准单个传感器或可以一次同时校准全部多个传感器。如图7A中所示,示出了表格式,其中在左列中列出了相应的传感器而在右列中列出了相应的传感器的状态。在右列中列出的状态“运行”702指示右深度相机128-R(即,标记为右深度)、前深度相机124(即,标记为前深度)、倾斜LIDAR122(即,标记为顶部LIDAR)和平面LIDAR 126(即,标记为底部LIDAR)处于准备好被校准的状态。
图7B是根据示例性实施例的图2A中所示的控制器222对传感器单元214的右深度传感器128-R运行校准测试时用户接口的示例性图示。即,在该非限制示例性实施例中,仅右深度传感器128-R被校准。这由图7A中未示出而图7B中的“右进展”注释证明。
根据至少某个非限制示例性实施例,用户接口可包括附加的、更少的或相同数量的传感器,其可包括如图7A和图7B中所示的相同和/或不同类型的传感器。
图7C是根据至少一个示例性实施例的、显示来自传感器的校准结果的用户接口单元212的用户接口的示例性图示。这些结果可包括但不限于,对准视觉指示符706、校准分数708、操作者指令710和图形传感器数据712。如图所示的视觉对准指示符706为操作者提供关于传感器的侧对准和前对准的校准结果的视觉表示。校准分数708可以是指示传感器的准确性的代表性数值,其中低分数可以与校准良好的传感器相对应,反之亦然。用户接口可以附加地显示操作者指令710,该操作者指令710包括用于操作者基于校准测试结果来手动调整传感器的进一步指令。根据示例性实施例,图形传感器数据712可以进一步包括传感器读数712A和CAD理想参考读数712B,其中理想的读数将包括曲线图712A和712B是难以区分的。根据至少一个非限制示例性实施例,控制器222可以基于校准测量来确定要对传感器的安装进行的调整,下面在图10中进一步示出。根据至少一个非限制示例性实施例,如本领域普通技术人员所理解的,用户接口显示校准结果可包括图7C中所示的结果中的一些、无一或全部,并且可以采用多种格式显示(图8中未示出)。
图8是示出根据示例性实施例的专用控制器222执行参考图2A的存储器224中存储的指令来校准和调整传感器的过程流程图。传感器可包括传感器单元212中任一传感器,包括但不限于前深度相机124、倾斜LIDAR 122、平面LIDAR 126和后深度相机128。传感器可以是位于校准环境100内的机器人202上的传感器。
框802包括控制器222接收参考数据集合,该参考数据集合包括从校准环境100的CAD模型生成的理想传感器读数。根据至少一个非限制示例性实施例,可以经由有线或无线通信从生成CAD模型和参考数据的外部处理器接收参考数据。根据另一个示例性实施例,可以通过控制器222执行存储在存储器224中的指令来计算参考数据,而无需使用外部处理器。参考数据可以由控制器222存储在存储器224中,以用于稍后在框806中确定差值。
框804包括控制器222从校准测试接收传感器数据的集合,并将该数据集存储在如图2A所示的存储器224中。传感器数据可包括来自传感器单元214的传感器的数据,并且进一步包括表示在相对应的取向和位置下对传感器目标的检测的数据。传感器数据可以由控制器222存储在存储器224中,以用于稍后在框806中确定差值。校准测试可包括操作者激活传感器以测量至少一个目标。
框806包括控制器222执行存储在图2A中所示的存储器224中的指令从而计算参考与传感器数据集之间的差值。根据至少一个非限制示例性实施例,该差值可包括一个或多个值,诸如但不限于位置坐标(x,y,z)、俯仰、偏航和/或滚转的差。该差值可以由控制器222存储在存储器224中,以用于稍后在框808中与阈值进行比较。
框808包括控制器222执行存储在参考图2A中存储器224中的指令从而将在框806中找到的差值与设置的阈值进行比较,其中低于设置的阈值的差值与经校准的传感器相对应。该阈值可以由操作者基于其期望对传感器进行校准的准确程度来设置(例如,较低的阈值与更准确的校准相对应),并且可以进一步包括针对特定参数(例如,俯仰、偏航、滚转和位置参数)的阈值。例如,阈值可以为零,其中差值为零与在框802中所接收的参考数据集和在框804中所接收的传感器数据集之间没有差相对应。类似地,各个参数的阈值可以彼此之间不同,其中,根据非限制示例性实施例,在校准深度传感器的情况下,对于准确校准,针对传感器目标的俯仰的阈值可以高于相对应的针对位置的阈值。如果差值低于设置的阈值,则控制器222移至框812,而如果差值大于零(超过阈值),则控制器222移至框810。
框810包括控制器222执行存储在存储器224中的指令从而生成并向传感器发送调整信号,该信号包括对传感器的调整以至少部分地基于在框806中找到的差值来最小化差值。根据至少一个非限制示例性实施例,调整信号可包括用于通过对传感器数据应用变换来虚拟地调整传感器的计算机可读指令。根据另一个非限制示例性实施例,该调整信号可包括通过激活致动器来改变传感器的安装,这在下面的图10中进一步示出。根据另一个非限制示例性实施例,可以将调整信号发送到用户接口,并且该信号可以使用户接口显示用于由操作者手动调整传感器的指令集。根据至少一个示例性实施例,可以在确定调整信号之后对传感器进行多次校准,直到传感器达到操作者的期望的校准水平(例如,差值降至阈值以下)。
框812包括在框808中找到的差值被确定为低于与经校准的传感器相对应的设置的阈值并且不需要进一步的动作。本领域的普通技术人员可以理解,可以使用基本相似的方法重复图8所示的示例性方法来校准机器人上的多个传感器。
图9A是示出根据示例性实施例的用于操作者创建和操作校准环境100以校准设备上的至少一个传感器的示例性方法900的过程流程图。传感器可包括传感器单元212中任一传感器,包括但不限于前深度相机124、倾斜LIDAR 122、平面LIDAR 126和后深度相机128。
框902示出操作者将至少一个传感器目标定位在至少一个相对应传感器的路径内。传感器目标可包括图1A-图1D中所示的任何传感器目标102、104、106、108、110和/或112,并且可以定位在校准环境中相对应传感器的路径内的任何位置。传感器目标可以通过螺钉、闩锁、维克罗 钩子、磁体和/或任何其他类似类型的对传感器目标的安装来保持在位置中。框904示出了操作者测量在校准环境100中的至少一个传感器目标的位置和取向。这些测量可包括稍后在框908中示出的在生成校准环境的CAD模型中有用的任何测量,诸如至少一个目标到设备的距离、相对于参考的固定平面的旋转等。根据另一个非限制示例性实施例,可以由操作者附加地测量目标的物理参数,诸如但不限于,反射率、颜色、形状和/或可由至少一个传感器检测以用于稍后对差值的确定(如图8所示)的任何其他物理参数。在一些实施例中,操作者可以将传感器定位在默认姿势(即,经良好校准的理想姿势),并且简单地激活传感器以测量传感器目标的参数。
框906示出了操作者指定设备在校准期间将被定位在其中的、校准环境100内的固定位置。如图1D所示,指定的固定位置可以是固定位置116,包括后轮楔块118、前轮楔块120和后锁定机构114来以确保机器人在校准期间不移动。另外,如本领域的普通技术人员将理解的,固定点的指定允许操作者使用校准环境100来准确地校准多个相同的设备,该校准环境100从多个相同的机器人102的角度来看,例如,在设备之间是相同的。
框908示出了操作者使用在框904中获得的测量和在框906中确定的固定点来创建校准环境100的CAD参考模型。根据至少一个非限制示例性实施例,操作者可以使用与设备分离的专用处理器通过执行来自存储器的指令来创建CAD模型,并且可以使用图2A中所示的通信单元216经由有线或无线通信将CAD模型传送至设备。类似地,根据另一非限制示例性实施例,CAD模型可以由设备上的专用处理器创建,其中操作者可以从用户接口单元212的用户接口输入测量以生成CAD模型。在一些实施例中,CAD模型可包括与至少一个传感器在相应默认姿势下的测量相对应的数据结构或一组值。
框910示出了操作者通过向图7A中所示的用户接口提供输入来激活至少一个传感器,该输入与操作者期望校准的至少一个传感器相对应。设备收集并存储传感器数据,以用于稍后确定用于如图8所示校准至少一个传感器的差值。
图9B是示出根据示例性实施例的用于操作者操作校准环境以校准包括不同的物理属性的至少两个不同设备的示例性方法912的过程流程图这些不同的物理属性诸如但不限于传感器位置、传感器类型、传感器数量、尺寸和/或形状。如上所述,校准环境100包括校准环境的物理空间和/或位置,其中校准环境包括校准环境100内具有特定几何形状的传感器目标。
框914示出了操作者在第一校准环境中校准第一设备,该第一设备包括要使用图9A所示的方法进行校准的至少一个传感器。另外,第一校准环境包括图1A-图1E中所示的具有第一几何形状的传感器目标102、104、106、108、110和/或112并包括固定点116。
框916示出了操作者对第一校准环境内的至少一个传感器目标进行重新定位以创建用于校准第二设备的第二校准环境,该第二校准环境包括具有与第一几何形状不同的几何形状的传感器目标。由操作者重新定位传感器目标可包括移除、交换、添加、移动和/或旋转第一校准环境内的至少一个传感器目标以创建第二校准环境,使得可以根据经重新定位的目标对第二设备的传感器进行校准。第二环境的传感器目标可包括如图1所示的传感器目标102、104、106、108、110和/或112中的任一者并且可以使用图9A的框902中所示的方法来定位。根据至少一个非限制示例性实施例,第一校准环境和第二校准环境都可包括图1D所示的相同的固定点116和后锁定机构114、118和/或120。
框918示出了操作者使用图9A所示的方法使用在框916中创建的第二校准环境来校准第二设备。本领域普通技术人员应理解,可以继续使用示例性方法912以进一步使用第三校准环境对第三设备进行校准,依此类推。
图10示出了根据示例性实施例的由控制器222用于基于校准读数来调整传感器1006的姿势的装置。如图10中所示,传感器1006可以是平面LIDAR,其中调整螺钉1004可以沿偏航、俯仰和/或滚转轴调整平面LIDAR的平面。控制器222可以基于校准测量来生成调整信号,如先前在图8中所示,该调整信号包括要由校正电机1002对螺钉1004进行的调整。校正电机1002可包括先前在图2A中示出的致动器单元208中的特征中的一些、无一、不同或全部,并且可以被配置成用于基于从控制器222接收的调整信号来调整相对应的螺钉1004。校正电机1002可以被配置成用于将相对应的螺钉1004拧紧或拧松由控制器222基于调整信号通过执行专门算法而计算出的量,从而使得平面LIDAR传感器的平面被调整。
根据至少一个非限制示例性实施例,校正电机1002可通过向传感器的底座提供机械输入以调整传感器的取向来修改传感器的位置。在该示例性实施例中,校正电机1002可以被配置成用于调整传感器的滚转轴,其中,附加校正电机1002可以被配置成用于沿着位置x、y和z轴以及偏航和/或俯仰轴来调整传感器。根据至少一个非限制示例性实施例,传感器1006可包括先前在图2A中示出的传感器单元214中的、可通过校正电机1002调整螺钉1004或传感器的安装来调整的任何传感器。
本公开示出了一种用于校准设备上的至少一个传感器的系统。设备包括非瞬态存储器单元,该非瞬态存储器单元包括存储于其上的多条计算机可读指令;以及至少一个处理器,该至少一个处理器被配置成用于执行计算机可读指令,以用于:向多个传感器中的至少一个传感器发射信号,以通过值来调整该至少一个传感器的位置,该值与第一数据集和参考数据集之间的差相对应,该第一数据集与至少一个传感器基于沿该至少一个传感器的第一路径的至少一个相应参考目标生成的坐标集合相对应,并且该参考数据集在生成第一数据集之前被存储在存储器中。在执行指令时,计算机可读指令可进一步使处理器用于:通过将第一数据集中的相应坐标与参考数据集中的相应坐标进行比较来计算值,其中,如果该值不为零,则向至少一个传感器发射信号以调整该至少一个传感器的位置。在执行指令时,计算机可读指令可进一步使处理器用于:从至少一个传感器接收第一数据集,并通过将多个列添加到非瞬态存储器单元中的预先存在的自引用表中来存储第一数据集,该第一数据集与多个相应坐标相对应。在执行指令时,计算机可读指令可进一步使处理器用于:从至少一个传感器接收第一数据集并且从多个传感器中的不同的相应传感器接收第二数据集,该第二数据集与多个传感器中的相应传感器基于沿第二路径的第二参考目标生成的坐标集合相对应;其中,第一参考目标、第一数据集和第一路径分别不同于第二参考目标、第二数据集和第二路径,并且第一参考目标和第二参考目标与设备间隔开。
本公开进一步提供了一种用于校准设备上至少一个传感器的方法,该方法包括专用控制器或处理器进行以下操作:接收第一数据集并将该第一数据集存储在存储器中,该第一数据集包括参考数据集;接收第二数据集并将该第二数据集存储在上述非瞬态存储器单元中,该第二数据集包括由至少一个传感器基于沿该至少一个传感器的第一路径的相应参考目标生成的坐标集合,;计算与第一数据集和第二数据集之间的差相对应的值;以及向至少一个传感器发送包括调整的调整信号以最小化该值。方法可进一步包括专用控制器或处理器通过将第二数据集中的相应坐标与参考数据集中的相应坐标进行比较来计算值,其中,如果该值不为零,则向至少一个传感器发射信号以调整该至少一个传感器的位置。方法可进一步包括专用控制器或处理器通过将第二数据集中的相应坐标与参考数据集中的相应坐标进行比较来计算值,其中,如果该值不为零,则向至少一个传感器发射信号以调整至少一个传感器的位置。方法可进一步包括专用控制器或处理器从至少一个传感器接收第二数据集,并通过将多个列添加到非瞬态存储器单元中的预先存在的自引用表中来存储该第二数据集,该第二数据集与多个相应坐标相对应。方法可进一步包括专用控制器或处理器从至少一个传感器接收第二数据集并且从多个传感器中的不同的相应传感器接收第三数据集,该第三数据集与多个传感器中的相应传感器基于沿第三路径的第三参考目标生成的坐标集合相对应;其中,第二参考目标、第二数据集和第二路径分别不同于第二参考目标、第二数据集和第二路径。此外,第二参考目标和第三参考目标与设备间隔开。
本公开进一步描述了存储在非瞬态计算机可读存储介质上的多条指令,这些指令在由处理装置执行时,使处理装置用于:向多个传感器中的至少一个传感器发射信号,以通过值来调整至少一个传感器的位置,该值与第一数据集和参考数据集之间的差相对应,该第一数据集与至少一个传感器基于沿该至少一个传感器的第一路径的相应参考目标生成的坐标集合相对应,并且该参考数据集在生成第一数据集之前被存储在存储器中。非瞬态计算机可读存储介质进一步包括使处理装置用于以下操作的指令:通过将第一数据集中的相应坐标与参考数据集中的相应坐标进行比较来计算值,其中,如果该值不为零,则向至少一个传感器发射信号以调整至少一个传感器的位置。非瞬态计算机可读存储介质进一步使处理装置用于以下操作的指令:从至少一个传感器接收第一数据集,并通过将多个列添加到存储器中预先存在的表中来存储第一数据集,该第一数据集与多个相应坐标相对应。非瞬态计算机可读存储介质进一步使处理装置用于以下操作的指令:从至少一个传感器接收第一数据集并且从多个传感器中的不同的相应传感器接收第二数据集,该第二数据集与多个传感器中的相应传感器基于沿第二路径的第二参考目标生成的坐标集合相对应;其中,第一参考目标、第一数据集和第一路径分别不同于第二参考目标、第二数据集和第二路径。此外,第一参考目标和第二参考目标与设备间隔开。
最后,本公开进一步提供了一种用于操作校准环境以对设备上至少一个传感器进行校准的方法,该方法包括操作者进行以下操作:沿至少一个传感器的路径定位至少一个目标;测量校准环境内的该至少一个目标的位置和取向;在校准环境内指定设备在校准测试期间将被定位在其中的固定点;创建包括在固定点处、至少一个目标的测量位置的校准环境的CAD参考模型;激活至少一个传感器;以及收集数据以用于稍后确定传感器数据与CAD参考数据之间的差值,该差值与至少一个目标的位置和取向相对应。用于操作校准环境的方法进一步包括对校准环境内的至少一个传感器目标进行重新定位和/或更换,以促进对不同传感器和不同设备的校准。
将理解,尽管根据方法的特定步骤顺序描述了本公开的某些方面,但是这些描述仅是本公开的更广泛方法的说明,并且可以根据本申请的要求进行修改。在一些情况下,某些步骤可能变得不必要或可选。此外,某些步骤或功能可以被添加到所公开的实现方式中,或者可以改变两个或更多个步骤的执行顺序。所有此类变型被包括在本文公开和要求保护的公开内。
虽然以上详细描述已经显示、描述并指出了应用于各个实现方式的本公开的新颖性特征,但是将理解的是,本领域技术人员可在不脱离本公开的精神的情况下对所示出的设备或过程的形式和细节方面进行各种省略、替换和改变。前述描述是当前预期用于执行本公开的最佳模式。该描述绝不意味着是限制性的,而应被认为是对本公开的一般原理的说明。本公开的范围应参考权利要求书来确定。
尽管在附图和前述描述中已经详细地解说和描述了本公开,但此类解说和描述应被认为是说明性或示例性的而非限制性的。本公开不限于所公开的实施例。在实施所要求保护的公开时,所公开的实施例和/或实现方式的变型可以由本领域技术人员从对附图、本公开以及所附权利要求书的研究而理解和实现。
应当注意,在描述本公开的特定特征或方面时特定术语的使用不应被认为是暗示该术语在本文中被重新定义以限于包括该术语相关联的本公开的特性或方面的任何具体特性。除非另有明确说明,否则在本申请中,特别是在所附权利要求书中使用的术语和短语及其变型应解释为开放性而不是限制性的。作为前述的示例,术语“包括”应解读为意指“包括而不限制”、“包括但不限于”等;如本文所用,术语“包含”与“包括”、“含有”或“特征在于”同义,并且是包括性的或开放性的,并且不排除其他未叙述的要素或方法步骤;术语“具有”应解释为“至少具有”;术语“诸如”应解释为“诸如而不限制”;术语“包括”应解释为“包括但不限于”;术语“示例”用于提供所讨论的项目的示例性实例,而不是其详尽或限制性的清单,并且应解释为“示例,但不限于”;诸如“已知的”、“平常的”、“标准的”之类的形容词和类似含义的术语不应解释为将所描述的项目限制在给定的时间段内或在给定的时间可用的项目,而应将其理解为涵盖现在或将来任何时候可能可用或已知的已知、平常或标准技术;以及使用术语如“优选地”、“优选的”、“期望的”或“符合期望的”以及含义相似的词语不应被理解为暗示某些特征对于本公开的结构或功能是至关重要、必不可少或者甚至重要的,而应理解为仅旨在突出可能在特定实施例中使用或不使用的替代或附加特征。同样,除非另有明确说明,否则利用连词“和”链接的一组项目不应被解读为要求这些项目各自并且这些项目中的每一个项目都存在于该组中,而是应被解读为“和/或”。类似地,除非另有明确说明,否则利用连词“或”链接的一组项目不应被解读为在该组之中要求相互排斥,而应被解读为“和/或”。术语“约”或“近似”等等是同义词,并且被用于指示由该术语修饰的值具有与其相关联的理解范围,其中该范围可以是±20%、±15%、±10%、±5%或±1%。术语“基本上”被用于指示结果(例如,测量值)接近目标值,其中接近可以意指例如该结果在该值的80%内、在该值的90%内、在该值的95%内、或在该值的99%内。而且,如本文中所使用的,“定义的”或“确定的”可包括“预定义的”或“预确定的”和/或以其他方式确定的值、条件、阈值、测量等。
Claims (20)
1.一种用于校准设备上的至少一个传感器的系统,包括:
存储器,所述存储器上存储有计算机可读指令;以及
至少一个处理器,所述至少一个处理器被配置成用于执行所述计算机可读指令,以用于:
向多个传感器中的所述至少一个传感器发射信号,以通过值来调整所述至少一个传感器的位置,所述值与第一数据集和参考数据集之间的差相对应,所述第一数据集与所述至少一个传感器基于沿所述至少一个传感器的第一路径的至少一个相应参考目标生成的坐标集合相对应,并且所述参考数据集在所述信号的发射之前被存储在所述存储器中。
2.根据权利要求1所述的系统,其特征在于,所述至少一个处理器被进一步配置成用于执行所述计算机可读指令以用于:
通过将所述第一数据集中的相应坐标与所述参考数据集中的相应坐标进行比较来计算所述值,
其中如果所述值不为零,则向所述至少一个传感器发射所述信号以调整所述至少一个传感器的位置。
3.根据权利要求1所述的系统,其特征在于,所述至少一个处理器被进一步配置成用于执行所述计算机可读指令以用于:
从所述至少一个传感器接收所述第一数据集,以及
通过将多个列添加到所述存储器中预先存在的表来存储所述第一数据集,所述第一数据集与多个相应坐标相对应。
4.根据权利要求1所述的系统,其特征在于,所述至少一个处理器被进一步配置成用于执行所述计算机可读指令以用于:
从所述至少一个传感器接收所述第一数据集,
从所述多个传感器中的不同的相应传感器接收第二数据集,所述第二数据集与所述多个传感器中的所述相应传感器基于沿第二路径的第二参考目标生成的坐标集合相对应。
5.根据权利要求4所述的系统,其特征在于,
所述第一参考目标不同于所述第二参考目标,
所述第一数据集与所述第二数据集不同,并且
所述第二路径不同于所述第一路径。
6.根据权利要求5所述的系统,其特征在于,
所述第一参考目标和所述第二参考目标与所述设备间隔开。
7.一种用于校准设备上的至少一个传感器的方法,包括:
接收第一数据集并将所述第一数据集存储在存储器中,所述第一数据集包括参考数据集;
接收第二数据集并将所述第二数据集存储在所述存储器中,所述第二数据集包括由所述至少一个传感器基于沿所述至少一个传感器的第一路径的相应参考目标生成的坐标集合;
计算与所述第一数据集和所述第二数据集之间的差相对应的值;以及
向所述至少一个传感器发射包括调整的调整信号以最小化所述值。
8.根据权利要求7所述的方法,进一步包括:
通过将所述第二数据集中的相应坐标与所述参考数据集中的相应坐标进行比较来计算所述值,
其中如果所述值不为零,则向所述至少一个传感器发射所述信号以调整所述至少一个传感器的位置。
9.根据权利要求7所述的方法,进一步包括:
从多个传感器中的不同的相应传感器接收第三数据集,所述第三数据集与所述多个传感器中的所述相应传感器基于沿第三路径的第三参考目标生成的坐标集合相对应。
10.根据权利要求9所述的方法,其特征在于,
所述第二参考目标不同于所述第三参考目标,
所述第二数据集不同于所述第三数据集,并且
所述第三路径不同于所述第二路径。
11.根据权利要求10所述的方法,其特征在于,
所述第二参考目标和所述第三参考目标与所述设备间隔开。
12.一种用于操作校准环境以校准设备上的至少一个传感器的方法,包括:
沿所述至少一个传感器的路径定位至少一个目标;
测量所述校准环境内的所述至少一个目标的位置和取向;
在所述校准环境内指定所述设备将被定位在其中的固定点;
创建包括所述至少一个目标的测量位置和所述固定点的所述校准环境的CAD参考模型;以及
激活所述至少一个传感器来收集数据,以确定传感器数据与所述CAD参考模型之间的差值,所述值与所述至少一个目标的所述和取向相对应。
13.根据权利要求12所述的方法,进一步包括:
对所述校准环境内的至少一个传感器目标进行重新定位和/或更换,以促进对不同传感器和不同设备的校准。
14.根据权利要求12所述的方法,其特征在于,所述至少一个传感器与平面LIDAR、倾斜LIDAR、前深度相机、右深度相机和左深度相机中的至少一者相对应。
15.根据权利要求14所述的方法,其特征在于,各种类型的所述至少一个传感器中的每一者包括唯一的视场。
16.根据权利要求12所述的方法,其特征在于,所述校准环境内的所述固定点与所述至少一个目标间隔开。
17.根据权利要求12所述的方法,其特征在于,所述值基于所述传感器数据与所述CAD参考模型之间的姿势坐标比较。
18.根据权利要求12所述的方法,进一步包括:
数字地变换所述传感器数据以匹配所述CAD参考模型。
19.根据权利要求12所述的方法,其特征在于,进一步包括:
使用致动器或由操作者进行的手动调整来调整所述至少一个传感器的姿势。
20.根据权利要求12所述的方法,其特征在于,所述校准环境内的所述固定点包括后轮楔块和前轮楔块,所述后轮楔块和所述前轮楔块能够将所述设备保持在固定位置中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862694679P | 2018-07-06 | 2018-07-06 | |
US62/694,679 | 2018-07-06 | ||
PCT/US2019/040237 WO2020010043A1 (en) | 2018-07-06 | 2019-07-02 | Systems, methods and apparatuses for calibrating sensors mounted on a device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112654841A true CN112654841A (zh) | 2021-04-13 |
Family
ID=69060916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980057665.7A Withdrawn CN112654841A (zh) | 2018-07-06 | 2019-07-02 | 用于校准架置在设备上的传感器的系统、方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US12050289B2 (zh) |
EP (1) | EP3818341A4 (zh) |
CN (1) | CN112654841A (zh) |
WO (1) | WO2020010043A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111360810A (zh) * | 2018-12-25 | 2020-07-03 | 深圳市优必选科技有限公司 | 机器人传感器的外参标定方法、装置、机器人及存储介质 |
WO2021150679A1 (en) * | 2020-01-23 | 2021-07-29 | Brain Corporation | Systems, apparatuses, and methods for calibrating lidar sensors of a robot using intersecting lidar sensors |
MX2022013294A (es) * | 2020-04-24 | 2022-11-30 | Crown Equip Corp | Calibracion de un dispositivo de medicion de distancia y alcance. |
WO2022006158A1 (en) * | 2020-06-29 | 2022-01-06 | Brain Corporation | Systems, apparatuses, and methods for calibrating lidar sensors of a robot using intersecting lidar sensors |
WO2022076633A1 (en) * | 2020-10-07 | 2022-04-14 | Brain Corporation | Systems and methods for determining position errors of front hazard sensors on robots |
CN112511819B (zh) * | 2020-11-29 | 2022-09-02 | 中国航空工业集团公司洛阳电光设备研究所 | 一种前视红外组合校靶的方法 |
US11911915B2 (en) * | 2021-06-09 | 2024-02-27 | Intrinsic Innovation Llc | Determining robotic calibration processes |
US20230084479A1 (en) * | 2021-09-13 | 2023-03-16 | Trimble Inc. | Accuracy verification of a perception system of a vehicle |
WO2023077827A1 (zh) * | 2021-11-08 | 2023-05-11 | 南京理工大学 | 一种用于多传感器标定的三维塔式棋盘格以及基于该棋盘格的雷达与相机的联合标定方法 |
US12093363B2 (en) * | 2022-06-03 | 2024-09-17 | Shopify Inc. | 3D object verification system and method |
DE102022206861A1 (de) | 2022-07-05 | 2024-01-11 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zum Ermitteln einer Kalibrierungsinformation einer fahrzeug- oder infrastrukturseitigen Kameraeinheit unter Verwendung von Bilddaten einer fahrzeug- und/oder infrastrukturfremden Kameraeinheit |
CN117134840B (zh) * | 2023-10-23 | 2024-01-02 | 成都大公博创信息技术有限公司 | 一种无线电通信设备控制方法及无线电通信设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09119853A (ja) * | 1995-10-25 | 1997-05-06 | Denshi Giken:Kk | センサーの出力値の補正方法および装置 |
CN101231304A (zh) * | 2007-01-22 | 2008-07-30 | 通用电气公司 | 用于校准传感器的方法及系统 |
JP2009204532A (ja) * | 2008-02-28 | 2009-09-10 | Aisin Seiki Co Ltd | 距離画像センサの校正装置及び校正方法 |
CN101952688A (zh) * | 2008-02-04 | 2011-01-19 | 电子地图北美公司 | 用于与传感器检测到的对象进行地图匹配的方法 |
CN101949715A (zh) * | 2010-08-10 | 2011-01-19 | 武汉武大卓越科技有限责任公司 | 高精度时空数据获取的多传感器集成同步控制方法和系统 |
CN102449641A (zh) * | 2009-05-30 | 2012-05-09 | 索尼电脑娱乐公司 | 用于对象跟踪的颜色校准 |
CN103175566A (zh) * | 2011-12-22 | 2013-06-26 | 中国移动通信集团公司 | 一种校准传感器的系统、装置及方法 |
CN103365246A (zh) * | 2012-04-05 | 2013-10-23 | 菲迪亚股份公司 | 用于数控机床的误差校正的装置 |
CN105164549A (zh) * | 2013-03-15 | 2015-12-16 | 优步技术公司 | 用于机器人的多传感立体视觉的方法、系统和设备 |
US9315192B1 (en) * | 2013-09-30 | 2016-04-19 | Google Inc. | Methods and systems for pedestrian avoidance using LIDAR |
CN105874350A (zh) * | 2013-12-27 | 2016-08-17 | 株式会社国际电气通信基础技术研究所 | 校准装置、校准方法及校准程序 |
CN106597417A (zh) * | 2017-01-10 | 2017-04-26 | 北京航天计量测试技术研究所 | 一种远距离扫描激光雷达测量误差的修正方法 |
CN107621278A (zh) * | 2017-08-04 | 2018-01-23 | 驭势科技(北京)有限公司 | 自主校准方法及装置 |
CN108020827A (zh) * | 2013-06-14 | 2018-05-11 | 微软技术许可有限责任公司 | 移动成像平台校准 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5831719A (en) * | 1996-04-12 | 1998-11-03 | Holometrics, Inc. | Laser scanning system |
US7928591B2 (en) * | 2005-02-11 | 2011-04-19 | Wintec Industries, Inc. | Apparatus and method for predetermined component placement to a target platform |
FR2947506B1 (fr) * | 2009-07-06 | 2011-06-10 | Renault Sa | Procede et dispositif de detection d'une situation de transport d'un vehicule en mode veille, et vehicule equipe d'un tel dispositif |
DE102010060942A1 (de) | 2010-12-01 | 2012-06-06 | Sick Ag | Sensoranordnung zur Objekterkennung |
US10678259B1 (en) * | 2012-09-13 | 2020-06-09 | Waymo Llc | Use of a reference image to detect a road obstacle |
EP2767846B1 (en) | 2013-02-18 | 2017-01-11 | Volvo Car Corporation | Method for calibrating a sensor cluster in a motor vehicle |
DE102013012987A1 (de) * | 2013-08-03 | 2015-02-05 | Carl Zeiss Microscopy Gmbh | Verfahren zur Kalibrierung eines digitalen optischen Gerätes und optisches Gerät |
EP2916104B1 (de) * | 2014-03-07 | 2018-06-27 | Hexagon Technology Center GmbH | Reflektoranordnung mit Retroreflektor sowie mit Sensoranordnung zur Neigungsbestimmung und Kalibrierung |
US10310054B2 (en) * | 2014-03-21 | 2019-06-04 | The Boeing Company | Relative object localization process for local positioning system |
DE102014117104B4 (de) * | 2014-11-21 | 2021-04-08 | Bdt Media Automation Gmbh | Verfahren zur Kalibrierung einer Robotik relativ zu einem Lagermagazin |
US10173324B2 (en) * | 2015-11-16 | 2019-01-08 | Abb Schweiz Ag | Facilitating robot positioning |
JP6396516B2 (ja) * | 2017-01-12 | 2018-09-26 | ファナック株式会社 | 視覚センサのキャリブレーション装置、方法及びプログラム |
US10733761B2 (en) * | 2018-06-29 | 2020-08-04 | Zoox, Inc. | Sensor calibration |
-
2019
- 2019-07-02 EP EP19831415.5A patent/EP3818341A4/en not_active Withdrawn
- 2019-07-02 CN CN201980057665.7A patent/CN112654841A/zh not_active Withdrawn
- 2019-07-02 WO PCT/US2019/040237 patent/WO2020010043A1/en unknown
-
2021
- 2021-01-06 US US17/142,669 patent/US12050289B2/en active Active
-
2024
- 2024-06-13 US US18/742,789 patent/US20240329220A1/en active Pending
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09119853A (ja) * | 1995-10-25 | 1997-05-06 | Denshi Giken:Kk | センサーの出力値の補正方法および装置 |
CN101231304A (zh) * | 2007-01-22 | 2008-07-30 | 通用电气公司 | 用于校准传感器的方法及系统 |
CN101952688A (zh) * | 2008-02-04 | 2011-01-19 | 电子地图北美公司 | 用于与传感器检测到的对象进行地图匹配的方法 |
JP2009204532A (ja) * | 2008-02-28 | 2009-09-10 | Aisin Seiki Co Ltd | 距離画像センサの校正装置及び校正方法 |
CN102449641A (zh) * | 2009-05-30 | 2012-05-09 | 索尼电脑娱乐公司 | 用于对象跟踪的颜色校准 |
CN101949715A (zh) * | 2010-08-10 | 2011-01-19 | 武汉武大卓越科技有限责任公司 | 高精度时空数据获取的多传感器集成同步控制方法和系统 |
CN103175566A (zh) * | 2011-12-22 | 2013-06-26 | 中国移动通信集团公司 | 一种校准传感器的系统、装置及方法 |
CN103365246A (zh) * | 2012-04-05 | 2013-10-23 | 菲迪亚股份公司 | 用于数控机床的误差校正的装置 |
CN105164549A (zh) * | 2013-03-15 | 2015-12-16 | 优步技术公司 | 用于机器人的多传感立体视觉的方法、系统和设备 |
CN108020827A (zh) * | 2013-06-14 | 2018-05-11 | 微软技术许可有限责任公司 | 移动成像平台校准 |
US9315192B1 (en) * | 2013-09-30 | 2016-04-19 | Google Inc. | Methods and systems for pedestrian avoidance using LIDAR |
CN105874350A (zh) * | 2013-12-27 | 2016-08-17 | 株式会社国际电气通信基础技术研究所 | 校准装置、校准方法及校准程序 |
CN106597417A (zh) * | 2017-01-10 | 2017-04-26 | 北京航天计量测试技术研究所 | 一种远距离扫描激光雷达测量误差的修正方法 |
CN107621278A (zh) * | 2017-08-04 | 2018-01-23 | 驭势科技(北京)有限公司 | 自主校准方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3818341A1 (en) | 2021-05-12 |
EP3818341A4 (en) | 2022-03-16 |
WO2020010043A1 (en) | 2020-01-09 |
US20210146942A1 (en) | 2021-05-20 |
US20240329220A1 (en) | 2024-10-03 |
US12050289B2 (en) | 2024-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12050289B2 (en) | Systems, methods and apparatuses for calibrating sensors mounted on a device | |
US20210294328A1 (en) | Systems and methods for determining a pose of a sensor on a robot | |
CN109219785B (zh) | 一种多传感器校准方法与系统 | |
US11892318B2 (en) | Systems, apparatuses, and methods for bias determination and value calculation of parameters of a robot | |
US20210354302A1 (en) | Systems and methods for laser and imaging odometry for autonomous robots | |
US20220042824A1 (en) | Systems, and methods for merging disjointed map and route data with respect to a single origin for autonomous robots | |
US20210232149A1 (en) | Systems and methods for persistent mapping of environmental parameters using a centralized cloud server and a robotic network | |
US20210299873A1 (en) | Systems, apparatuses, and methods for detecting escalators | |
US20220365192A1 (en) | SYSTEMS, APPARATUSES AND METHODS FOR CALIBRATING LiDAR SENSORS OF A ROBOT USING INTERSECTING LiDAR SENSORS | |
US20230120781A1 (en) | Systems, apparatuses, and methods for calibrating lidar sensors of a robot using intersecting lidar sensors | |
US20230071953A1 (en) | Systems, and methods for real time calibration of multiple range sensors on a robot | |
US20230083293A1 (en) | Systems and methods for detecting glass and specular surfaces for robots | |
WO2021021869A1 (en) | Systems and methods for calibrating nonvisible light emitting sensors using alignment targets | |
US12092771B2 (en) | Systems, methods and apparatuses for calibrating sensors mounted on a device | |
US20210197383A1 (en) | Systems and methods for detecting blind spots for robots | |
WO2020206071A1 (en) | Systems, apparatuses, and methods for cost evaluation and motion planning for robotic devices | |
WO2021226298A2 (en) | Systems and methods for enhancing performance and mapping of robots using modular devices | |
WO2020123612A1 (en) | Systems and methods for improved control of nonholonomic robotic systems | |
US20230236607A1 (en) | Systems and methods for determining position errors of front hazard sensore on robots | |
WO2022183096A1 (en) | Systems, apparatuses, and methods for online calibration of range sensors for robots | |
JP2024008901A (ja) | 3次元データ生成システム、3次元データ生成方法、及びマーカーメジャー | |
EP4423583A1 (en) | Systems and methods for automatic route generation for robotic devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210413 |