CN110815205A - Calibration method, system and device of mobile robot - Google Patents

Calibration method, system and device of mobile robot Download PDF

Info

Publication number
CN110815205A
CN110815205A CN201810925637.XA CN201810925637A CN110815205A CN 110815205 A CN110815205 A CN 110815205A CN 201810925637 A CN201810925637 A CN 201810925637A CN 110815205 A CN110815205 A CN 110815205A
Authority
CN
China
Prior art keywords
calibration
mobile robot
target position
sensor
task
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.)
Pending
Application number
CN201810925637.XA
Other languages
Chinese (zh)
Inventor
杨嘉伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikrobot Technology Co Ltd
Original Assignee
Hangzhou Hikrobot Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikrobot Technology Co Ltd filed Critical Hangzhou Hikrobot Technology Co Ltd
Priority to CN201810925637.XA priority Critical patent/CN110815205A/en
Publication of CN110815205A publication Critical patent/CN110815205A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/0095Means or methods for testing manipulators
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING 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/00Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The invention discloses a calibration method, a calibration system and a calibration device of a mobile robot, and belongs to the technical field of robots. According to the invention, the mobile robot can automatically move to a target position, data acquisition is carried out on a calibration object by using the sensor to obtain sensor data at the target position, the sensor is calibrated by using the sensor data and the position relation between the target position and the calibration object, the mobile robot can carry out online self-calibration, the mobile robot can carry out calibration autonomously, and complicated calibration operation is not required to be carried out manually, so that the calibration efficiency of the mobile robot is greatly improved, and the calibration speed of the mobile robot is improved.

Description

Calibration method, system and device of mobile robot
Technical Field
The invention relates to the technical field of robots, in particular to a calibration method, a calibration system and a calibration device of a mobile robot.
Background
With the development of the robot technology, various sensors are installed on the mobile robot, and the surrounding environment can be sensed through data measured by the sensors, so that various functions such as positioning, obstacle avoidance and the like are realized. In order to ensure the accuracy of the data of the sensor, the parameters of the sensor need to be calibrated to determine the internal parameters and the external parameters of the sensor.
Before the mobile robot leaves a factory, people can place a calibration object near the mobile robot, manually measure the distance between the mobile robot and the calibration object, then start the mobile robot, and input the distance between the mobile robot and the calibration object into the mobile robot. The mobile robot can calibrate the parameters of the sensor according to the input distance between the mobile robot and the calibration object to obtain the parameters of the sensor.
The calibration scheme needs manual work to participate in the calibration process of the mobile robot, and the operation is complex. In particular, for mobile robot systems with hundreds of mobile robots in a project, the calibration process of each mobile robot needs to be manually participated in one by one, which results in great workload.
Disclosure of Invention
The embodiment of the invention provides a calibration method, a calibration system and a calibration device of a mobile robot, which can solve the problems of complex operation and low efficiency in the calibration process of the mobile robot in the related art. The technical scheme is as follows:
in a first aspect, a calibration method for a mobile robot is provided, where the method includes:
controlling the mobile robot to move to a target position;
acquiring data of a calibration object at the target position by using a sensor arranged on the mobile robot to obtain sensor data, wherein the calibration object is preset in a preset range of the target position;
and calibrating the sensor by using the sensor data and the position relation between the target position and the calibration object.
Optionally, the calibrating the sensor by using the sensor data and the position relationship between the target position and the calibration object includes:
calling a calibration model;
and inputting the sensor data and the position relation between the target position and the calibration object into the calibration model, and outputting external parameters and/or internal parameters of the sensor.
Optionally, before calibrating the sensor by using the sensor data and the positional relationship between the target position and the calibration object, the method further includes:
receiving a location of the calibration object of a scheduling device; or the like, or, alternatively,
and reading the position of the calibration object stored in advance.
Optionally, before calibrating the sensor by using the sensor data and the positional relationship between the target position and the calibration object, the method further includes:
and acquiring the current position of the mobile robot according to the position indicated by the position identifier.
Optionally, the obtaining the current position of the mobile robot according to the position indicated by the position identifier includes:
acquiring the offset of the mobile robot and the position identifier;
acquiring the position indicated by the position identification;
and determining the current position of the mobile robot according to the offset and the position indicated by the position identifier.
Optionally, the controlling the mobile robot to move to the target position includes:
and controlling the mobile robot to move to the target position according to a calibration task sent by the scheduling equipment, wherein the calibration task is used for indicating the mobile robot to move to the target position.
Optionally, before controlling the mobile robot to move to the target position according to the calibration task sent by the scheduling device, the method further includes:
and sending a calibration task request to the scheduling equipment.
Optionally, the acquiring data of the calibration object by using the sensor installed on the mobile robot to obtain sensor data includes at least one of the following steps:
acquiring data of a calibration board by using a shooting component arranged on the mobile robot to obtain first sensor data;
acquiring data of the barrier by using the laser arranged on the mobile robot to obtain second sensor data;
acquiring data of the magnetic nail by using a magnetic inductor arranged on the mobile robot to obtain data of a third sensor;
and acquiring data of the obstacle by using the radar arranged on the mobile robot to obtain data of a fourth sensor.
Optionally, before the obtaining of the sensor data by using the sensor mounted on the mobile robot to perform data acquisition on the calibration object, the method further includes:
sending a calibration starting request to scheduling equipment;
and receiving a calibration starting instruction of the dispatching equipment.
Optionally, after the calibrating the sensor by using the sensor data and the positional relationship between the target position and the calibration object, the method further includes:
when the calibration is successful, sending a calibration success message to the dispatching equipment; or the like, or, alternatively,
and when the calibration fails, controlling the mobile robot to move to a maintenance area.
In a second aspect, a calibration method for a mobile robot is provided, the method including:
determining at least one mobile robot;
generating at least one calibration task according to at least one target position, wherein any calibration task is used for indicating the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position;
and sending the at least one calibration task to the at least one mobile robot.
Optionally, the sending the at least one calibration task to the at least one mobile robot includes:
and when a successful calibration message of a first mobile robot is received, sending a calibration task to a second mobile robot according to the calibration sequence of at least one mobile robot, wherein the second mobile robot is the next mobile robot of the first mobile robot in the calibration sequence.
Optionally, the sending the at least one calibration task to the at least one mobile robot includes:
and sending a plurality of calibration tasks to a plurality of mobile robots, wherein the target positions corresponding to the calibration tasks of different mobile robots are different.
Optionally, the sending the at least one calibration task to the at least one mobile robot includes:
and sending the at least one calibration task to the at least one mobile robot at intervals of a preset time period.
Optionally, the sending the at least one calibration task to the at least one mobile robot includes:
and when a calibration task request of any mobile robot is received, a calibration task is sent to the mobile robot.
Optionally, the method further comprises:
and when a calibration starting request of any mobile robot is received, sending a calibration starting instruction to the mobile robot.
Optionally, the method further comprises:
transmitting the position of the at least one calibration object to the at least one mobile robot.
In a third aspect, a mobile robot system is provided, the system comprising a scheduling apparatus and at least one mobile robot;
the scheduling device is configured to execute the calibration method for the mobile robot in the second aspect or any optional manner of the second aspect;
the mobile robot is configured to perform the calibration method for a mobile robot to implement the first aspect or any one of the alternatives of the first aspect.
Optionally, the target position is located in a calibration site, the calibration site includes a calibration area, and the calibration area includes a plurality of target positions.
In a fourth aspect, a calibration apparatus for a mobile robot is provided, the apparatus including:
the control module is used for controlling the mobile robot to move to a target position;
the data acquisition module is used for acquiring data of a calibration object at the target position by utilizing a sensor arranged on the mobile robot to obtain sensor data, and the calibration object is preset in a preset range of the target position;
and the calibration module is used for calibrating the sensor by utilizing the sensor data and the position relation between the target position and the calibration object.
Optionally, the calibration module is configured to: calling a calibration model; and inputting the sensor data and the position relation between the target position and the calibration object into the calibration model, and outputting external parameters and/or internal parameters of the sensor.
Optionally, the apparatus further comprises:
the receiving module is used for receiving the position of the calibration object of the dispatching equipment; or the like, or, alternatively,
and the reading module is used for reading the position of the calibration object which is stored in advance.
Optionally, the apparatus further comprises:
and the acquisition module is used for acquiring the current position of the mobile robot according to the position indicated by the position identifier.
Optionally, the obtaining module includes:
the obtaining submodule is used for obtaining the offset of the mobile robot and the position mark;
the obtaining submodule is used for obtaining the position indicated by the position identification;
and the determining submodule is used for determining the current position of the mobile robot according to the offset and the position indicated by the position identification.
Optionally, the control module is configured to: and controlling the mobile robot to move to the target position according to a calibration task sent by the scheduling equipment, wherein the calibration task is used for indicating the mobile robot to move to the target position.
Optionally, the apparatus further comprises:
and the sending module is used for sending a calibration task request to the scheduling equipment.
Optionally, the data acquisition module is configured to perform at least one of the following steps:
acquiring data of a calibration board by using a shooting component arranged on the mobile robot to obtain first sensor data;
acquiring data of the barrier by using the laser arranged on the mobile robot to obtain second sensor data;
acquiring data of the magnetic nail by using a magnetic inductor arranged on the mobile robot to obtain data of a third sensor;
and acquiring data of the obstacle by using the radar arranged on the mobile robot to obtain data of a fourth sensor.
Optionally, before acquiring data of a calibration object by using a sensor mounted on the mobile robot to obtain sensor data, the apparatus further includes:
the sending module is used for sending a calibration starting request to the dispatching equipment;
and the receiving module is used for receiving a calibration starting instruction of the dispatching equipment.
Optionally, after calibrating the sensor by using the sensor data and the positional relationship between the target position and the calibration object, the apparatus further includes:
the sending module is used for sending a calibration success message to the dispatching equipment when the calibration is successful; or the like, or, alternatively,
the control module is further used for controlling the mobile robot to move to a maintenance area when the calibration fails.
In a fifth aspect, there is provided a calibration apparatus for a mobile robot, the apparatus including:
a determination module for determining at least one mobile robot;
the mobile robot comprises a generating module, a calibration module and a control module, wherein the generating module is used for generating at least one calibration task according to at least one target position, any calibration task is used for indicating the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position;
and the sending module is used for sending the at least one calibration task to the at least one mobile robot.
Optionally, the sending module is configured to: and when a successful calibration message of a first mobile robot is received, sending a calibration task to a second mobile robot according to the calibration sequence of at least one mobile robot, wherein the second mobile robot is the next mobile robot of the first mobile robot in the calibration sequence.
Optionally, the sending module is configured to: and sending a plurality of calibration tasks to a plurality of mobile robots, wherein the target positions corresponding to the calibration tasks of different mobile robots are different.
Optionally, the sending module is configured to: and sending the at least one calibration task to the at least one mobile robot at intervals of a preset time period.
Optionally, the sending module is configured to: and when a calibration task request of any mobile robot is received, a calibration task is sent to the mobile robot.
Optionally, the sending module is configured to: and when a calibration starting request of any mobile robot is received, sending a calibration starting instruction to the mobile robot.
Optionally, the sending module is further configured to send the position of the at least one calibration object to the at least one mobile robot.
In a sixth aspect, a mobile robot is provided, where the mobile robot includes a processor, a memory, a moving component, and a sensor, where the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the method for calibrating a mobile robot in the first aspect or any one of the possible implementations of the first aspect, and the moving component is configured to drive the mobile robot to move.
In a seventh aspect, a scheduling apparatus is provided, where the mobile robot includes a processor and a memory, where the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the second aspect or the calibration method of the mobile robot in any possible implementation of the second aspect.
In an eighth aspect, there is provided a computer-readable storage medium having at least one instruction stored therein, where the instruction is loaded and executed by a processor to implement the method for calibrating a mobile robot according to the first aspect or any possible implementation of the first aspect.
In a ninth aspect, there is provided a computer-readable storage medium having at least one instruction stored therein, where the instruction is loaded and executed by a processor to implement the calibration method for a mobile robot in any one of the possible implementations of the second aspect or the second aspect.
According to the method, the system and the device provided by the embodiment of the invention, the mobile robot is controlled to move to the target position, the sensor arranged on the mobile robot is used for acquiring data of the calibration object at the target position to obtain the sensor data, and the sensor is calibrated by using the sensor data and the position relation between the target position and the calibration object, so that the mobile robot can be subjected to online self-calibration and can be automatically calibrated by the mobile robot without performing complicated calibration operation manually, the calibration efficiency of the mobile robot is greatly improved, and the calibration speed of the mobile robot is accelerated.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a schematic illustration of an implementation environment provided by an embodiment of the invention;
fig. 2 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a calibration method of a mobile robot according to an embodiment of the present invention;
fig. 4 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention;
fig. 5 is a schematic diagram of a calibration method of a mobile robot according to an embodiment of the present invention;
fig. 6 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention;
fig. 7 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention;
fig. 8 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention;
fig. 9 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention;
fig. 10 is a schematic structural diagram of a calibration apparatus of a mobile robot according to an embodiment of the present invention;
fig. 11 is a schematic structural diagram of a calibration apparatus of a mobile robot according to an embodiment of the present invention;
fig. 12 is a schematic structural diagram of a mobile robot according to an embodiment of the present invention;
fig. 13 is a schematic structural diagram of a scheduling apparatus according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 is a schematic diagram of an implementation environment according to an embodiment of the present invention, where the implementation environment includes at least one mobile robot and a scheduling device, the mobile robot may be a logistics robot, a warehousing robot, a transfer robot, a sweeping robot, an agricultural robot, a patrol robot, or the like, and for example, the mobile robot may be an Automated Guided Vehicle (AGV). The scheduling device may be a server, a personal computer, a notebook computer, a cloud computing center, or the like.
The implementation environment can comprise at least one calibration object, the calibration object can be a calibration template, an obstacle, a magnetic nail and the like, any calibration object can be preset in a preset range of any target position, the mobile robot can move to the target position, and the sensor can be automatically calibrated at the target position.
The implementation environment can comprise a calibration field, a calibration area is arranged in the calibration field, a plurality of positions of the calibration area can be used as target positions, different mobile robots can move to different target positions in the calibration area, and therefore the function that the mobile robots calibrate in the calibration area at the same time is achieved.
Fig. 2 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention, where an execution subject of the method may be the mobile robot, and referring to fig. 2, the method includes:
201. the mobile robot controls the mobile robot to move to the target position.
The target position may also be referred to as a calibration position, and is a position specially used for calibration, and the mobile robot may perform calibration at the target position. Optionally, a calibration field may be laid for the calibration process of the mobile robot, and a certain position in the calibration field is used as a target position. In addition, a calibration area can be arranged in the calibration field, a plurality of positions in the calibration area are used as a plurality of target positions, the mobile robot can perform calibration at each target position, and the plurality of target positions can support the plurality of mobile robots to perform calibration at different target positions simultaneously, so that the plurality of mobile robots can perform calibration in parallel.
Regarding the process of controlling the mobile robot to move to the target position, optionally, the target position and the current position of the mobile robot may be obtained, and a path is planned according to the current position of the mobile robot and the target position to obtain a moving path of the mobile robot, where a starting point of the moving path may be the current position of the mobile robot, an ending point of the moving path may be the target position, and the mobile robot may be controlled to move according to the moving path, so that the mobile robot may reach the target position. The mobile robot can autonomously plan a path, or the scheduling device can plan a path for the mobile robot to obtain a mobile path, and then the mobile path is sent to the mobile robot. The embodiment does not limit the execution subject of the path planning process.
Optionally, referring to fig. 3, at least one location identifier may be set in the calibration site, and the mobile robot may navigate based on the at least one location identifier, so as to move to the target location. The position identifier may be a graphic code, a magnetic nail, or the like, and accordingly, the navigation mode of the mobile robot may be a graphic code navigation, a magnetic navigation, or the like. Fig. 3 provides examples of a world coordinate system and a mobile robot coordinate system, where Xg in fig. 3 is an x-axis of the world coordinate system, Yg is a y-axis of the world coordinate system, the coordinate system on the mobile robot in fig. 3 is the robot coordinate system, Xc is an x-axis of the robot coordinate system, and Yc is a y-axis of the robot coordinate system.
Alternatively, the target position may be set in the robot operation map in advance, and the target position in the robot operation map may be determined according to the robot operation map so as to control the mobile robot to move to the target position. The robot running map may be stored on the mobile robot, and the target position may be a point coordinate in the robot running map.
202. At the target position, the mobile robot acquires data of a calibration object by using a sensor arranged on the mobile robot to obtain sensor data, and the calibration object is preset in a preset range of the target position.
The calibration object is also called a calibration tool, and refers to an object for calibrating parameters of the sensor, and may be, for example, a calibration template, an obstacle, a magnetic nail, or the like. The calibration template is used for calibrating parameters of the camera, and may be a checkerboard picture, for example, a black and white checkerboard printed on a4 paper. The barrier is used for calibrating parameters of the laser and/or the radar, and the magnetic nail is used for calibrating parameters of the magnetic inductor. The calibration object may be located around the target position, and a distance between the calibration object and the target position may be determined according to a preset range.
The sensors are used for measuring and processing position and direction information inside the mobile robot and/or external environment information, the sensors can comprise internal sensors and/or external sensors, the internal sensors can be used for measuring parameters of the mobile robot, and the external sensors can be used for measuring distance information of obstacles in the working environment of the mobile robot, map construction and the like.
For example, the sensor may be a camera, or the like, the camera may be a line laser, a point laser, a surface laser, or the like, for example, a single line laser, a multi-line laser, or the like, the laser may be combined with other types of sensors, for example, the laser may be combined with the camera to form a laser camera, or the laser may be combined with the radar to form a laser radar. The radar may include a millimeter wave radar, a laser radar, or the like.
Optionally, step 202 may include any one or combination of the following implementations one to four:
the method includes the steps that firstly, data acquisition is carried out on a calibration plate by means of a shooting component installed on the mobile robot, and first sensor data are obtained.
For example, the calibration plate may be photographed by a photographing part to obtain a calibration plate image, which is used as the first sensor data. For example, the mobile robot may be controlled to rotate in place by different angles, capture calibration plate images of different angles, obtain a plurality of calibration plate images, and use the plurality of calibration plate images as the first sensor data. For another example, the shooting component may be used to shoot the three-dimensional calibration plate to obtain a three-dimensional calibration plate image, and the three-dimensional calibration plate image may be used as the first sensor data.
And secondly, acquiring data of the barrier by using the laser arranged on the mobile robot to obtain data of a second sensor.
For example, the positional relationship between the obstacle and the mobile robot may be measured using a laser, and the positional relationship between the obstacle and the mobile robot may be taken as the second sensor data.
And thirdly, acquiring data of the magnetic nail by using a magnetic inductor arranged on the mobile robot to obtain data of a third sensor.
For example, the magnetic field value of the magnetic pin may be measured by a magnetic sensor, the magnetic field value may be converted to obtain at least one of a sensitivity and a magnetic field resolution of the magnetic sensor, and the at least one of the sensitivity and the magnetic field resolution of the magnetic sensor may be used as the third sensor data.
And fourthly, acquiring data of the obstacle by using the radar arranged on the mobile robot to obtain data of a fourth sensor.
For example, the radar may be controlled to transmit the measurement signal, and when the measurement signal is transmitted to the obstacle, the obstacle may reflect the measurement signal, and the radar may receive the reflected measurement signal, and may use the measurement signal and the reflected measurement signal as the fourth sensor data.
203. The mobile robot calibrates the sensor by using the sensor data and the position relation between the target position and the calibration object.
Regarding the manner of determining the position relationship between the target position and the calibration object, any one or more of the following first to second implementation manners may be optionally included:
the method comprises the following steps of reading a position relation between a target position and a calibration object which are stored in advance.
The position relationship between the target position and the calibration object can be pre-stored in the mobile robot, and the mobile robot reads the pre-stored position relationship between the target position and the calibration object, so that the position relationship between the target position and the calibration object can be obtained. The position relationship between the target position and the calibration object may include the target position and the position of the calibration object, for example, the point coordinates of the target position and the point coordinates of the calibration object may be, specifically, the point coordinates of the target position in the world coordinate system and the point coordinates of the calibration object in the world coordinate system may be.
And the second implementation mode is that the position relation between the target position and the calibration object is measured.
The mobile robot can measure the position relation between the target position and the calibration object in real time at the target position through the installed sensor so as to determine the position relation between the target position and the calibration object.
And the third implementation mode is that the position relation between the target position sent by the scheduling equipment and the calibration object is received.
The dispatching device may transmit the target location and the location of the calibration object to the mobile robot, and the mobile robot may receive the target location of the dispatching device and the location of the calibration object.
With respect to the calibration process of the sensor, optionally, a calibration model may be called up, the sensor data and the positional relationship between the target position and the calibration object are input into the calibration model, and the external parameters and/or the internal parameters of the sensor are output. The calibration model is used for predicting external parameters and/or internal parameters of the sensor according to sensor data and a position relation between a target position and the calibration object, the calibration model can be realized by a computer program, the calibration model encapsulates one or more calibration algorithms, the calibration algorithms can be determined according to specific types of the sensor, for example, when the sensor is a camera, the calibration algorithm corresponding to the camera can be Zhang Zhengyou calibration algorithm, and for example, when the sensor is a line laser, the calibration algorithm can comprise calculating a homography matrix of deviation according to an image recognition result and a distance between the calibration object and the sensor.
The internal parameter of the sensor refers to the internal parameter of the sensor, and can be absolute error and covariance. For example, the camera parameters may be focal length, distortion parameters, principal distance, scaling factor, principal point, pixel size, and the like. As another example, the internal parameters of the lidar may include a vertical correction angle, a rotational correction angle, a range correction angle, a vertical offset factor, a horizontal offset factor, and the like. The internal references may be recorded as one or more matrices in the actual program, for example, the internal references may be recorded as a 3 x 3 matrix.
External references to a sensor refer to parameters of the sensor relative to the external environment that may be used to indicate the position and/or orientation of the sensor relative to the mobile robot. For example, the external parameters of the camera may include a position of the camera relative to the mobile robot, a rotational direction of the camera relative to the mobile robot, and the like. As another example, the external parameters of the lidar may include a pitch angle, a roll angle, a heading angle, a horizontal displacement, etc. of the lidar relative to the mobile robot. The external parameters may be recorded as one or more matrices in the actual procedure, for example, the external parameters may be recorded as a rotation matrix and a translation vector.
Optionally, after obtaining the external parameters and/or the internal parameters of the sensor, the external parameters and/or the internal parameters of the sensor may be stored in a non-volatile manner, for example, the external parameters and/or the internal parameters of the sensor are written into a hard disk of the mobile robot, and the external parameters and/or the internal parameters of the sensor may be read from the hard disk of the mobile robot when needed subsequently.
According to the method provided by the embodiment, the mobile robot is controlled to move to the target position, the sensor arranged on the mobile robot is used for collecting data of the calibration object at the target position to obtain the sensor data, the sensor data and the position relation between the target position and the calibration object are used for calibrating the sensor, the mobile robot can be calibrated on line, the mobile robot can be calibrated independently, and complicated calibration operation is not needed manually, so that the calibration efficiency of the mobile robot is greatly improved, and the calibration speed of the mobile robot is accelerated.
Fig. 4 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention, where an execution subject of the method may be the mobile robot, and referring to fig. 4, the method includes:
401. the mobile robot controls the mobile robot to move to the target position.
402. And at the target position, acquiring data of a calibration object by utilizing a sensor arranged on the mobile robot to obtain sensor data, wherein the calibration object is preset in a preset range of the target position.
Steps 401 to 402 are similar to steps 201 to 202, and are not described herein.
403. And the mobile robot receives the position of the calibration object sent by the dispatching equipment.
The position of the calibration object can be obtained by the dispatching equipment, the position of the calibration object is sent to the mobile robot, and the mobile robot receives the position of the calibration object sent by the dispatching equipment, so that the position of the calibration object is obtained. Optionally, the position of the calibration object may be carried in the calibration task, the scheduling device may write the position of the calibration object into the calibration task, and the mobile robot may receive the calibration task and analyze the calibration task to obtain the position of the calibration object carried in the calibration task.
It should be noted that the receiving of the position of the calibration object sent by the scheduling device is only an optional way of acquiring the position of the calibration object, and is not an optional way of acquiring the position of the calibration object.
Alternatively, the position of the calibration object may be the point coordinate of the calibration object in the world coordinate system, please refer to fig. 5, and the position of the calibration object may be PbThe position of the mobile robot may be PcWhere the world coordinate system may be as shown in the lower left corner of fig. 5, Xg in fig. 5 is the x-axis of the world coordinate system, and Yg is the y-axis of the world coordinate system.
404. And the mobile robot acquires the current position of the mobile robot according to the position indicated by the position identifier.
The location indicator is used to indicate a location, and may indicate, for example, coordinates of a point of the location indicator in a world coordinate system. The location indicator may be provided on the ground, in other words, the location indicator may be a ground location indicator. For example, the position mark may be disposed on the ground by various means such as pasting, printing, attaching, drawing, painting, displaying, sewing, etc., and for example, the position mark may be pasted on the ground in front of the calibration object. Alternatively, the position mark may be disposed on any object around the calibration object, and the object may be a step, a stool, a box, or the like.
The position identifier may be a graphic code, a magnetic nail, or the like, and the position of the graphic code is carried in the graphic code, for example, the point coordinate of the central point of the graphic code in the world coordinate system may be carried. The graphic code may include a two-dimensional code, a bar code, and the like.
With respect to the process of determining the location indicated by the location identity, optionally, any one or more of the following implementation manners one to two may be included:
and step one, the position indicated by the position mark is used as the current position of the mobile robot.
Taking the position identifier as the graphic code as an example, the mobile robot can scan the graphic code to obtain the position carried by the graphic code, and the position carried by the graphic code is taken as the current position of the mobile robot.
And secondly, determining the current position of the mobile robot according to the position indicated by the position identifier and the offset of the mobile robot and the position identifier.
Specifically, the second implementation may include the following steps one to three:
step one, obtaining the offset between the mobile robot and the position mark.
The offset between the mobile robot and the position indicator may include a distance and an angle between the mobile robot and the position indicator, which can represent a relative positional relationship between the mobile robot and the position indicator, and may include a distance between the mobile robot and the position indicator in an x direction, a distance between the mobile robot and the position indicator in a y direction, an angle between a connection line between the mobile robot and the position indicator and the x direction, and the like.
Taking the position id as the graphic code, for example, please refer to fig. 5, the distance between the mobile robot and the position id may include Δ gcd _ x, Δ gcd _ y, and Δ gcd _ θ in fig. 5. Wherein, Δ gcd _ x represents the distance between the mobile robot and the graphic code in the x-axis direction, Δ gcd _ y represents the distance between the mobile robot and the graphic code in the y-axis direction, and Δ gcd _ θ represents the included angle between the connecting line between the mobile robot and the graphic code and the x-axis direction. The first digit g represents the world coordinate system, the second digit c represents the mobile robot, the third digit d represents the graphic code, and T represents the transpose.
Alternatively, the present step may include the following (1) to (2):
(1) and acquiring an image of the position mark shot by a shooting component installed on the mobile robot.
(2) And carrying out visual identification on the image of the position mark to obtain the distance between the mobile robot and the position mark.
Taking a shooting component as an example of a camera, taking the installation position of the camera as the center position of the mobile robot, and the camera facing the ground, the center of the camera image is the center of the mobile robot, and the mobile robot can obtain the deviation of the position identifier relative to the camera in the current camera view field through visual recognition, namely, obtain Δ gcd _ x, Δ gcd _ y, and Δ gcd _ θ. In addition, if there is a deviation between the installation position of the camera and the center position of the mobile robot, the conversion of the coordinate position may be performed according to the installation position of the camera and the center position of the mobile robot.
And step two, acquiring the position indicated by the position mark.
Taking the position identifier as the graphic code as an example, the mobile robot can scan the graphic code to obtain the position carried by the graphic code, and the position carried by the graphic code is used as the position indicated by the position identifier.
And step three, determining the current position of the mobile robot according to the offset and the position indicated by the position mark.
A sum of the offset and the position indicated by the position indication may be obtained as the current position of the mobile robot. For example, referring to fig. 5, the current position of the mobile robot can be calculated by the following equation:
Pc=Pd+(Δgcd_x,Δgcd_y,Δgcd_θ)T
wherein, PcRepresenting the coordinates of the points of the mobile robot in the world coordinate system, PdAnd the point coordinates of the graphic code in the world coordinate system are shown. And delta gcd _ x, delta gcd _ y and delta gcd _ theta represent offsets, wherein the delta gcd _ x represents the distance between the mobile robot and the graphic code in the x-axis direction, the delta gcd _ y represents the distance between the mobile robot and the graphic code in the y-axis direction, and the delta gcd _ theta represents the included angle between the connecting line between the mobile robot and the graphic code and the x-axis direction. T denotes a transposition operationThe first digit g represents the world coordinate system, the second digit c represents the mobile robot, and the third digit d represents the graphic code.
405. The mobile robot calibrates the sensor by using the sensor data and the position relation between the target position and the calibration object.
Step 405 is similar to step 203 described above, and will not be described herein.
According to the method provided by the embodiment, the mobile robot receives the position of the calibration object sent by the scheduling device, acquires the current position of the mobile robot, and can obtain the relative position relationship between the mobile robot and the calibration object with high precision according to the position of the calibration object and the current position of the mobile robot, so that the parameters of the sensor with high precision can be obtained by using the sensor data and the position relationship between the mobile robot and the calibration object, and the precision of the calibration process is improved. Particularly, along with the long-time running of the mobile robot, the mobile robot can cause the position of the sensor on the mobile robot to generate deviation due to the jolt and the impact of the ground, so that the accuracy of the parameter of the sensor is influenced.
In the embodiment of the invention, the mobile robot can interact with the dispatching equipment, and completes the calibration process under the dispatching of the dispatching equipment. This is illustrated in detail below by the embodiment of fig. 6:
fig. 6 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention, where an interaction subject of the method includes a scheduling device and the mobile robot, and referring to fig. 6, the method includes:
601. and the mobile robot sends a calibration task request to the scheduling equipment.
The calibration task request is used for requesting the scheduling device to issue a calibration task, and the calibration task request can carry the identifier of the mobile robot so that the scheduling device can send a work task to the mobile robot corresponding to the identifier of the mobile robot. The identifier of the mobile robot is used to determine the corresponding mobile robot, and may be a number, a name, and the like of the mobile robot.
Alternatively, the mobile robot may send a calibration task request to the scheduling device when the current work task has been completed. Specifically, when the mobile robot completes the current work task and is in an idle state, the mobile robot may generate a calibration task request and send the calibration task request to the scheduling device.
602. When a calibration task request is received, the scheduling equipment sends a calibration task to the mobile robot, and the calibration task is used for indicating the mobile robot to move to a target position.
In one possible implementation, the calibration task may carry the target location, for example, may carry point coordinates of the target location in a world coordinate system, so that the mobile robot determines the target location in the calibration task and moves to the target location. In another possible implementation, the target position may also be pre-stored in the mobile robot, and the calibration task may not need to carry the target position, for example, the calibration task may be recorded as a start instruction in an actual program, and the mobile robot may be instructed to read the pre-stored target position and move to the target position.
603. And the mobile robot is controlled to move to the target position according to the calibration task sent by the scheduling equipment.
Specifically, the mobile robot can analyze the calibration task, obtain a target position carried by the calibration task, and move to the target position. Alternatively, the target position may be read from a previously stored target position and moved to the target position. Regarding the timing when the mobile robot moves to the target position, the mobile robot may control the mobile robot to move to the target position when receiving the calibration task, that is, when receiving the calibration task, start the calibration process. The mobile robot may also move to the target position at other timings, for example, after the mobile robot performs self-inspection to obtain its own failure rate, if it is determined that the failure rate reaches the failure rate threshold, the mobile robot moves to the target position so as to perform calibration at the target position.
604. The mobile robot sends a calibration starting request to the dispatching equipment, and the calibration starting request is used for requesting the dispatching equipment to send a calibration starting instruction.
Alternatively, the mobile robot may generate a calibration start request when reaching the target position, and send the calibration start request to the scheduling device.
605. And after the dispatching equipment receives the calibration starting request, the dispatching equipment sends a calibration starting instruction to the mobile robot.
Alternatively, the calibration start request may be recorded as a notification message in an actual program, where the notification message is used to notify the scheduling device that the mobile robot has reached the target position, and after receiving the notification message, the scheduling device may determine, according to the notification message, that the mobile robot has reached the target position, and then send a calibration start instruction to the mobile robot.
The calibration starting instruction is used for instructing the mobile robot to start calibration, and specifically can be used for instructing the mobile robot to execute a step of acquiring data of a calibration object by using a sensor and a step of calibrating the sensor.
606. The mobile robot receives a calibration starting instruction, and at the target position, the mobile robot acquires data of a calibration object by using a sensor arranged on the mobile robot to obtain sensor data.
607. The mobile robot calibrates the sensor by using the sensor data and the position relation between the target position and the calibration object.
Steps 606 to 608 are similar to steps 202 to 204, and are not described herein.
Optionally, when the calibration is successful, the mobile robot may generate a calibration success message, and send the calibration success message to the scheduling device, so as to report that the scheduling device has successfully calibrated itself. When the calibration fails, the mobile robot can move to a maintenance area so as to perform maintenance in the maintenance area. Specifically, the mobile robot may send a maintenance area path request to the scheduling device, after receiving the maintenance area path request, the scheduling device may perform path planning on the mobile robot according to the position of the maintenance area and the current position of the mobile robot to obtain a maintenance area moving path of the mobile robot, and send the maintenance area moving path to the mobile robot, so that the mobile robot moves according to the maintenance area moving path to reach the maintenance area. The starting point of the moving path of the maintenance area may be a current position of the mobile robot, and the ending point of the moving path of the maintenance area may be the maintenance area.
The first point to be described is that the present embodiment is only an example of interaction between the scheduling device and one mobile robot, and similarly, the scheduling device may execute the same procedure for a plurality of mobile robots, so as to schedule a plurality of mobile robots for calibration.
A second point to be described is that the scheduling apparatus may transmit the position of at least one calibration object to at least one mobile robot, where the position of one calibration object may be transmitted to each mobile robot, for example, if a certain mobile robot needs to be scheduled to move to a vicinity of a certain calibration object for calibration, the position of the calibration object is transmitted to the mobile robot.
According to the method provided by the embodiment, the dispatching equipment and the mobile robot are interacted, the mobile robot can move to the target position to perform online self-calibration under the dispatching of the dispatching equipment, and complex calibration operation is not required to be performed manually, so that the workload of manual calibration is greatly reduced.
Fig. 7 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention, where an execution subject of the method may be a scheduling device, and referring to fig. 7, the method includes:
701. the scheduling device determines at least one mobile robot.
Optionally, the scheduling device may select at least one mobile robot from the mobile robot system in order to schedule the at least one mobile robot for calibration. Alternatively, the scheduling device may obtain the running time of each mobile robot, and select at least one mobile robot according to the running time of each mobile robot, for example, the running time of each mobile robot may be sorted, and the mobile robot with the longest running time may be selected.
702. The scheduling device generates at least one calibration task according to at least one target position, any calibration task is used for indicating the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position.
Optionally, the scheduling device may carry the target position in the calibration task, so that the mobile robot may determine the target position from the calibration task, so as to move to the target position for calibration.
Optionally, the scheduling device may generate a plurality of calibration tasks according to a plurality of target positions, and target positions carried by different calibration tasks may be different, so that different mobile robots may determine different target positions according to different calibration tasks, and move to different target positions to perform calibration at the same time.
703. And the dispatching equipment sends at least one calibration task to at least one mobile robot.
The scheduling device sends the calibration task to the mobile robot, and the mobile robot can execute the calibration method provided by the above embodiment according to the calibration task sent by the scheduling device. The scheduling device may send the calibration tasks to each mobile robot in sequence, for example, send the calibration tasks to one mobile robot each time, and send the calibration tasks to the next mobile robot after the mobile robot is successfully calibrated, so that at least one mobile robot performs calibration in turn.
According to the method provided by the embodiment, the dispatching equipment can control the mobile robot to move to the target position by sending the calibration task to the mobile robot, so that the mobile robot can automatically calibrate the sensor at the target position, the mobile robot can be automatically calibrated on line, the mobile robot can be automatically calibrated without manual complicated calibration operation, the calibration efficiency of the mobile robot is greatly improved, and the calibration speed of the mobile robot is accelerated.
In the embodiment of the application, the scheduling device can send the calibration tasks to each mobile robot in sequence according to a certain calibration sequence, so that each mobile robot can be calibrated in sequence according to the calibration sequence, calibration of each mobile robot in the mobile robot system is well-ordered, and the conditions that different mobile robots collide with each other and disturb each other in the calibration process are avoided. The following describes the process of scheduling any two mobile robots for calibration by the embodiment of fig. 8:
fig. 8 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention. The interaction agent of the embodiment of the invention comprises a scheduling device, a first mobile robot and a second mobile robot, and referring to fig. 8, the method comprises the following steps:
801. and the dispatching equipment sends a calibration task to the first mobile robot.
802. When the first mobile robot receives the calibration task, the first mobile robot acquires data of a calibration object by using a sensor arranged on the first mobile robot at a target position according to the calibration task to obtain sensor data.
803. The first mobile robot calibrates the sensor by using the sensor data and the position relation between the target position and the calibration object.
804. And the first mobile robot sends a calibration success message to the dispatching equipment.
Alternatively, after sending the calibration success message, the first mobile robot may leave the target position, for example, may return to the position where the first mobile robot was located before the calibration, and continue to perform the work task at the position where the first mobile robot was located before the calibration.
805. And the dispatching equipment receives the successful calibration message, selects a second mobile robot according to the calibration sequence of at least one mobile robot, and sends the calibration task to the second mobile robot.
The calibration sequence refers to a sequence of performing calibration on at least one mobile robot, and may include an identifier of at least one mobile robot arranged in sequence. The calibration sequence may be a fixed sequence, or may be set on the scheduling device, for example, the calibration sequence may be a designated sequence set by a user, and then at least one mobile robot performs calibration according to the designated sequence, which can ensure that the calibration sequence of the mobile robot meets the user-defined requirement of the user.
Regarding the specific process of the scheduling device selecting the second mobile robot, the scheduling device may select a mobile robot next to the first mobile robot in the calibration order to obtain the second mobile robot, for example, if the first mobile robot is the 10 th mobile robot, the 11 th mobile robot is selected as the second mobile robot.
806. When the second mobile robot receives the calibration task, the second mobile robot performs data acquisition on the calibration object by using a sensor installed on the second mobile robot at the target position according to the calibration task to obtain sensor data.
807. And the second mobile robot calibrates the sensor by using the sensor data and the position relation between the target position and the calibration object.
808. And the second mobile robot sends a calibration success message to the dispatching equipment.
It should be noted that, the above-mentioned flow is provided for scheduling two mobile robots to perform calibration in sequence, and so on, the scheduling device may schedule more than two mobile robots to perform calibration in sequence, and send a calibration task to the next mobile robot each time the calibration of any mobile robot is finished. By sequentially sending the calibration tasks to each mobile robot in the calibration sequence, all the mobile robots can be instructed to sequentially execute the calibration tasks according to the calibration sequence, and the effect of scheduling the whole mobile robot system to perform calibration orderly is achieved.
In an exemplary scenario, assuming that there are 100 mobile robots in the mobile robot system, the calibration task may be sent to the mobile robot 1 first, after the calibration of the mobile robot 1 is completed, the calibration task is sent to the mobile robot 2, and after the calibration of the mobile robot 2 is completed, the calibration task is sent to the mobile robot 3 until the mobile robot 100 completes the calibration task.
According to the method provided by the embodiment, the calibration sequence is designed for at least one mobile robot, and the scheduling device sequentially sends the calibration tasks to each mobile robot according to the calibration sequence, so that each mobile robot sequentially calibrates according to the calibration sequence, the calibration process of each mobile robot can be ensured to be well-ordered, and the situations that different mobile robots collide with each other and disturb each other in the calibration process are avoided. Particularly, when the method is applied to mobile robot systems with hundreds of mobile robots in a project, the hundreds of mobile robots can be instructed to respectively carry out automatic calibration, so that manual maintenance work is avoided, the manual workload of the project is greatly reduced, and the cost of human resources is saved.
The above embodiment is described by taking an example of sequentially sending calibration tasks to each mobile robot, and optionally, multiple calibration tasks may also be sent to multiple mobile robots, and target positions corresponding to the calibration tasks of different mobile robots are different, so that a function of calibrating multiple robots together is supported.
Specifically, a calibration site can be set, the calibration site comprises a calibration area, the calibration area comprises a plurality of target positions, a calibration object is preset in a preset range of each target position, a plurality of mobile robots can move to different target positions, and calibration is carried out on different target positions respectively.
In an exemplary scenario, the upper left corner, the lower left corner, the upper right corner and the lower right corner of the calibration area may be used as target positions, and calibration objects are set in a preset range of the upper left corner, a preset range of the lower left corner, a preset range of the upper right corner and a preset range of the lower right corner of the calibration area, so that the mobile robot 1 may perform calibration at the upper left corner, the mobile robot 2 may perform calibration at the lower left corner, and the mobile robot 3 may perform calibration at the upper right corner.
Optionally, different types of calibration objects may be set in the preset range of different target positions in the calibration area, for example, a calibration template is set in the upper left corner, a barrier is set in the lower left corner, and a magnetic nail is set in the upper right corner, so that different mobile robots equipped with different types of sensors can respectively move different target positions to perform calibration together.
By the mode, the plurality of target positions are arranged in one calibration area, so that the plurality of mobile robots can be calibrated simultaneously, the overall calibration efficiency of the plurality of mobile robots can be improved, and the overall calibration speed of the plurality of mobile robots is accelerated.
In the embodiment of the application, the scheduling device can periodically send the calibration task to each mobile robot according to a certain time period, so that the function of periodically calibrating each mobile robot is realized, the calibration result of each mobile robot can be periodically updated, and the timeliness and the accuracy of the calibration result of each mobile robot are ensured. The following is illustrated by the embodiment of fig. 9:
fig. 9 is a flowchart of a calibration method for a mobile robot according to an embodiment of the present invention. The execution subject of the embodiment of the present invention may be a scheduling device, and referring to fig. 9, the method includes:
901. the scheduling device determines at least one mobile robot when a time interval between a current time point and a last scheduled time point has reached a preset time period.
The scheduling device may send at least one calibration task to at least one mobile robot once every a preset time period, where the preset time period is used to instruct the scheduling device to schedule the at least one mobile robot for a time period for calibration, and may be preset by a user. For example, the predetermined time period may be one week, one month, etc.
Specifically, after scheduling at least one mobile robot to perform calibration, the scheduling device may record a current time point as a scheduled time point, then obtain a time interval between the current time point and the scheduled time point in real time, determine whether the time interval has reached a preset time period, and when the time interval has reached the preset time period, may determine that the preset time interval has passed since a last scheduled time point, and needs to perform calibration again, start a procedure of scheduling at least one mobile robot to perform calibration.
902. And the scheduling equipment generates at least one calibration task according to at least one target position.
903. And the dispatching equipment sends at least one calibration task to at least one mobile robot.
It should be noted that, when any mobile robot receives a calibration task, calibration is performed by executing the calibration process provided in the foregoing embodiment, and a calibration result is obtained, then a stored calibration result may be updated, for example, a last stored calibration result is updated to the currently obtained calibration result.
904. When the preset time period has elapsed, the scheduling apparatus repeatedly performs steps 901 to 903.
When at least one mobile robot is calibrated, the scheduling device may record the current time point as a scheduled time point. As time goes by, when the time interval between the current time point and the scheduled time point reaches a preset time period, the scheduling apparatus will repeatedly execute steps 901 to 903.
According to the method provided by the embodiment, the preset time interval is designed for the calibration process of the mobile robot, and the scheduling device periodically sends the calibration task to each mobile robot according to the preset time interval, so that each mobile robot periodically performs calibration, and the timeliness of the calibration process of each mobile robot can be ensured. In particular, during long-term operation of the mobile robot, the position of the sensor of the mobile robot often shifts due to the jolt and impact on the ground, which affects the accuracy of the previously obtained calibration result. In the embodiment, even if the position of the sensor of the mobile robot deviates, the calibration result of the mobile robot can be updated regularly by enabling the mobile robot to calibrate the parameter of the sensor regularly, so that the timeliness and the accuracy of the parameter of the sensor in the mobile robot are guaranteed to be high.
The embodiment of the application also provides a mobile robot system, which comprises scheduling equipment and at least one mobile robot;
the scheduling device is used for executing the steps executed by the scheduling device in each method embodiment;
and the mobile robot is used for executing the steps executed by the mobile robot in the method embodiment.
Optionally, the target position is located in a calibration site, the calibration site includes a calibration area, and the calibration area includes a plurality of target positions.
The mobile robot system provided by this embodiment, move to the target position through controlling mobile robot, at the target position, utilize the sensor of installing on this mobile robot to carry out data acquisition to the calibration object and obtain sensor data, utilize the sensor data and this target position and the positional relationship of this calibration object to mark this sensor, can realize that mobile robot carries out online self-calibration, mark through mobile robot is autonomic, and need not the manual work and carry out loaded down with trivial details demarcation operation, thereby greatly improve mobile robot's demarcation efficiency, accelerate mobile robot's demarcation speed.
Fig. 10 is a schematic structural diagram of a calibration apparatus of a mobile robot according to an embodiment of the present invention. Referring to fig. 10, the apparatus includes: a control module 1001, a data acquisition module 1002, and a calibration module 1003.
A control module 1001 for controlling the mobile robot to move to a target position;
a data acquisition module 1002, configured to acquire data of a calibration object at the target position by using a sensor mounted on the mobile robot, so as to obtain sensor data, where the calibration object is preset in a preset range of the target position;
a calibration module 1003, configured to calibrate the sensor by using the sensor data and the position relationship between the target position and the calibration object.
The device provided by the embodiment can realize online self-calibration of the mobile robot by controlling the mobile robot to move to the target position and calibrating the sensor by utilizing the sensor arranged on the mobile robot to acquire the sensor data and utilizing the sensor data and the position relation between the target position and the calibration object, thereby greatly improving the calibration efficiency of the mobile robot and accelerating the calibration speed of the mobile robot.
Optionally, the calibration module 1003 is configured to: calling a calibration model; and inputting the sensor data and the position relation between the target position and the calibration object into the calibration model, and outputting external parameters and/or internal parameters of the sensor.
Optionally, the apparatus further comprises:
a receiving module, configured to receive a position of the calibration object of the scheduling device; or the like, or, alternatively,
and the reading module is used for reading the position of the calibration object which is stored in advance.
Optionally, the apparatus further comprises:
and the acquisition module is used for acquiring the current position of the mobile robot according to the position indicated by the position identifier.
Optionally, the obtaining module includes:
the obtaining submodule is used for obtaining the offset of the mobile robot and the position mark;
the obtaining submodule is used for obtaining the position indicated by the position identification;
and the determining submodule is used for determining the current position of the mobile robot according to the offset and the position indicated by the position mark.
Optionally, the control module 1001 is configured to: and controlling the mobile robot to move to the target position according to a calibration task sent by the scheduling equipment, wherein the calibration task is used for indicating the mobile robot to move to the target position.
Optionally, the apparatus further comprises:
and the sending module is used for sending the calibration task request to the scheduling equipment.
Optionally, the data collecting module 1002 is configured to perform at least one of the following steps:
acquiring data of a calibration plate by using a shooting component arranged on the mobile robot to obtain first sensor data;
acquiring data of the barrier by using the laser arranged on the mobile robot to obtain second sensor data;
acquiring data of the magnetic nail by using a magnetic inductor arranged on the mobile robot to obtain data of a third sensor;
and acquiring data of the obstacle by using a radar arranged on the mobile robot to obtain data of a fourth sensor.
Optionally, before acquiring data of the calibration object by using the sensor mounted on the mobile robot to obtain sensor data, the apparatus further includes:
the sending module is used for sending a calibration starting request to the dispatching equipment;
and the receiving module is used for receiving a calibration starting instruction of the dispatching equipment.
Optionally, after calibrating the sensor by using the sensor data and the position relationship between the target position and the calibration object, the apparatus further includes:
the sending module is used for sending a calibration success message to the dispatching equipment when the calibration is successful; or the like, or, alternatively,
the control module 1001 is further configured to control the mobile robot to move to a maintenance area when the calibration fails.
It should be noted that: in the calibration apparatus for a mobile robot according to the above embodiment, when the mobile robot is calibrated, only the division of the functional modules is illustrated, and in practical applications, the functions may be distributed by different functional modules according to needs, that is, the internal structure of the mobile robot is divided into different functional modules to complete all or part of the functions described above. In addition, the calibration apparatus of the mobile robot provided in the above embodiment and the calibration method of the mobile robot belong to the same concept, and specific implementation processes thereof are described in detail in the method embodiment and are not described herein again.
Fig. 11 is a schematic structural diagram of a calibration apparatus of a mobile robot according to an embodiment of the present invention. Referring to fig. 11, the apparatus includes: a determining module 1101, a generating module 1102 and a sending module 1103.
A determining module 1101 for determining at least one mobile robot;
the generating module 1102 is configured to generate at least one calibration task according to at least one target position, where any calibration task is used to instruct the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position;
a sending module 1103 configured to send the at least one calibration task to the at least one mobile robot.
Optionally, the sending module 1103 is configured to: and when a successful calibration message of the first mobile robot is received, sending a calibration task to a second mobile robot according to the calibration sequence of the at least one mobile robot, wherein the second mobile robot is the next mobile robot of the first mobile robot in the calibration sequence.
Optionally, the sending module 1103 is configured to: and sending a plurality of calibration tasks to a plurality of mobile robots, wherein the target positions corresponding to the calibration tasks of different mobile robots are different.
Optionally, the sending module 1103 is configured to: and sending the at least one calibration task to the at least one mobile robot at intervals of a preset time period.
Optionally, the sending module 1103 is configured to: and when a calibration task request of any mobile robot is received, sending a calibration task to the mobile robot.
Optionally, the sending module 1103 is configured to: and when a calibration starting request of any mobile robot is received, a calibration starting instruction is sent to the mobile robot.
Optionally, the sending module 1103 is further configured to send the position of the at least one calibration object to the at least one mobile robot.
It should be noted that: in the calibration apparatus for a mobile robot according to the above embodiment, when the mobile robot is calibrated, only the division of the functional modules is illustrated, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the scheduling device is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the calibration device of the mobile robot provided by the above embodiment and the calibration method of the mobile robot belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment and are not described herein again.
All the above optional technical solutions may be combined arbitrarily to form the optional embodiments of the present disclosure, and are not described herein again.
Fig. 12 is a schematic structural diagram of a mobile robot 1200 according to an embodiment of the present invention, where the mobile robot 1200 may generate relatively large differences due to different configurations or performances, and may include one or more processors (CPUs) 1201, one or more memories 1202, a moving component 1203, and one or more sensors 1204, where the memory 1202 stores at least one instruction, and the at least one instruction is loaded and executed by the processor 1201 to implement the calibration method of the mobile robot according to the above embodiments of the method, and the moving component 1203 is configured to drive the mobile robot 1200 to move. Of course, the mobile robot 1200 may also have other components for implementing device functions, such as a motor, a wired or wireless network interface, a housing, and the like, which are not described herein again.
In an exemplary embodiment, a computer-readable storage medium, such as a memory, is also provided that includes instructions executable by a processor in a mobile robot to perform the calibration method of the mobile robot in the above embodiments. For example, the computer-readable storage medium may be a Read-Only Memory (ROM), a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. .
Fig. 13 is a schematic structural diagram of a scheduling apparatus 1300 according to an embodiment of the present invention, where the scheduling apparatus 1300 may generate a relatively large difference due to different configurations or performances, and may include one or more processors 1301 and one or more memories 1302, where the memory 1302 stores at least one instruction, and the at least one instruction is loaded and executed by the processor 1301 to implement the calibration method of the mobile robot according to the above-mentioned method embodiments. Certainly, the scheduling device 1300 may further have components such as a wired or wireless network interface, a keyboard, and an input/output interface, so as to perform input and output, and the scheduling device 1300 may further include other components for implementing device functions, which are not described herein again.
In an exemplary embodiment, a computer-readable storage medium, such as a memory, is also provided that includes instructions executable by a processor in a scheduling apparatus to perform the calibration method of the mobile robot in the above embodiments. For example, the computer-readable storage medium may be a Read-Only Memory (ROM), a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. .
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (21)

1. A calibration method for a mobile robot, the method comprising:
controlling the mobile robot to move to a target position;
acquiring data of a calibration object at the target position by using a sensor arranged on the mobile robot to obtain sensor data, wherein the calibration object is preset in a preset range of the target position;
and calibrating the sensor by using the sensor data and the position relation between the target position and the calibration object.
2. The method of claim 1, wherein said calibrating the sensor using the sensor data and the positional relationship of the target location to the calibration object comprises:
calling a calibration model;
and inputting the sensor data and the position relation between the target position and the calibration object into the calibration model, and outputting external parameters and/or internal parameters of the sensor.
3. The method of claim 1, wherein prior to calibrating the sensor using the sensor data and the positional relationship of the target location to the calibration object, the method further comprises:
receiving a location of the calibration object of a scheduling device; or the like, or, alternatively,
and reading the position of the calibration object stored in advance.
4. The method of claim 1, wherein prior to calibrating the sensor using the sensor data and the positional relationship of the target location to the calibration object, the method further comprises:
and acquiring the current position of the mobile robot according to the position indicated by the position identifier.
5. The method of claim 4, wherein the obtaining the current position of the mobile robot according to the position indicated by the position identifier comprises:
acquiring the offset of the mobile robot and the position identifier;
acquiring the position indicated by the position identification;
and determining the current position of the mobile robot according to the offset and the position indicated by the position identifier.
6. The method of claim 1, wherein controlling the mobile robot to move to the target location comprises:
and controlling the mobile robot to move to the target position according to a calibration task sent by the scheduling equipment, wherein the calibration task is used for indicating the mobile robot to move to the target position.
7. The method according to claim 6, wherein before controlling the mobile robot to move to the target position according to the calibration task sent by the scheduling device, the method further comprises:
and sending a calibration task request to the scheduling equipment.
8. The method of claim 1, wherein said data collecting the calibration object with the sensor mounted on the mobile robot to obtain sensor data comprises at least one of the following steps:
acquiring data of a calibration board by using a shooting component arranged on the mobile robot to obtain first sensor data;
acquiring data of the barrier by using the laser arranged on the mobile robot to obtain second sensor data;
acquiring data of the magnetic nail by using a magnetic inductor arranged on the mobile robot to obtain data of a third sensor;
and acquiring data of the obstacle by using the radar arranged on the mobile robot to obtain data of a fourth sensor.
9. The method of claim 1, wherein prior to obtaining sensor data from the data acquisition of the calibration object using the sensors mounted on the mobile robot, the method further comprises:
sending a calibration starting request to scheduling equipment;
and receiving a calibration starting instruction of the dispatching equipment.
10. The method of claim 1, wherein after calibrating the sensor using the sensor data and the positional relationship of the target location to the calibration object, the method further comprises:
when the calibration is successful, sending a calibration success message to the dispatching equipment; or the like, or, alternatively,
and when the calibration fails, controlling the mobile robot to move to a maintenance area.
11. A calibration method for a mobile robot, the method comprising:
determining at least one mobile robot;
generating at least one calibration task according to at least one target position, wherein any calibration task is used for indicating the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position;
and sending the at least one calibration task to the at least one mobile robot.
12. The method of claim 11, wherein said sending said at least one calibration task to said at least one mobile robot comprises:
and when a successful calibration message of a first mobile robot is received, sending a calibration task to a second mobile robot according to the calibration sequence of at least one mobile robot, wherein the second mobile robot is the next mobile robot of the first mobile robot in the calibration sequence.
13. The method of claim 11, wherein said sending said at least one calibration task to said at least one mobile robot comprises:
and sending a plurality of calibration tasks to a plurality of mobile robots, wherein the target positions corresponding to the calibration tasks of different mobile robots are different.
14. The method of claim 11, wherein said sending said at least one calibration task to said at least one mobile robot comprises:
and sending the at least one calibration task to the at least one mobile robot at intervals of a preset time period.
15. The method of claim 11, wherein said sending said at least one calibration task to said at least one mobile robot comprises:
and when a calibration task request of any mobile robot is received, a calibration task is sent to the mobile robot.
16. The method of claim 11, further comprising:
and when a calibration starting request of any mobile robot is received, sending a calibration starting instruction to the mobile robot.
17. The method of claim 11, further comprising:
transmitting the position of the at least one calibration object to the at least one mobile robot.
18. A mobile robotic system, characterized in that the system comprises a scheduling device and at least one mobile robot;
the scheduling device is used for sending at least one calibration task to the at least one mobile robot according to at least one target position, wherein any calibration task is used for indicating the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position;
the mobile robot is used for executing the operation executed by the calibration method of the mobile robot according to any one of claims 1 to 10.
19. The system of claim 18, wherein the target location is located at a calibration site, the calibration site including a calibration area therein, the calibration area including a plurality of target locations therein.
20. A calibration apparatus for a mobile robot, the apparatus comprising:
the control module is used for controlling the mobile robot to move to a target position;
the data acquisition module is used for acquiring data of a calibration object at the target position by utilizing a sensor arranged on the mobile robot to obtain sensor data, and the calibration object is preset in a preset range of the target position;
and the calibration module is used for calibrating the sensor by utilizing the sensor data and the position relation between the target position and the calibration object.
21. A calibration apparatus for a mobile robot, the apparatus comprising:
a determination module for determining at least one mobile robot;
the mobile robot comprises a generating module, a calibration module and a control module, wherein the generating module is used for generating at least one calibration task according to at least one target position, any calibration task is used for indicating the mobile robot to move to any target position, and a calibration object is preset in a preset range of any target position;
and the sending module is used for sending the at least one calibration task to the at least one mobile robot.
CN201810925637.XA 2018-08-14 2018-08-14 Calibration method, system and device of mobile robot Pending CN110815205A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810925637.XA CN110815205A (en) 2018-08-14 2018-08-14 Calibration method, system and device of mobile robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810925637.XA CN110815205A (en) 2018-08-14 2018-08-14 Calibration method, system and device of mobile robot

Publications (1)

Publication Number Publication Date
CN110815205A true CN110815205A (en) 2020-02-21

Family

ID=69547290

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810925637.XA Pending CN110815205A (en) 2018-08-14 2018-08-14 Calibration method, system and device of mobile robot

Country Status (1)

Country Link
CN (1) CN110815205A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111844035A (en) * 2020-07-17 2020-10-30 炬星科技(深圳)有限公司 Robot calibration method, device and storage medium
CN112894752A (en) * 2021-01-20 2021-06-04 华中科技大学 Position searching method of mobile processing robot
CN113192145A (en) * 2021-05-08 2021-07-30 深圳市商汤科技有限公司 Equipment calibration method and device, electronic equipment and storage medium
CN113211449A (en) * 2021-06-10 2021-08-06 哈工大机器人集团股份有限公司 Robot calibration method and system based on path analysis
CN114240157A (en) * 2021-12-17 2022-03-25 中国电信股份有限公司 Robot scheduling method, system, device and storage medium
CN114355321A (en) * 2022-03-18 2022-04-15 深圳市欢创科技有限公司 Laser radar calibration method, device and system, laser radar and robot
CN114734435A (en) * 2022-03-24 2022-07-12 苏州艾利特机器人有限公司 Encoder calibration method, device and system based on hypersphere
CN114751218A (en) * 2022-03-07 2022-07-15 北京主线科技有限公司 Wharf vehicle maintenance platform and control method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1707223A (en) * 2004-06-12 2005-12-14 杨建华 Indoor moving robot positioning system and method based on bar code
CN103020957A (en) * 2012-11-20 2013-04-03 北京航空航天大学 Mobile-robot-carried camera position calibration method
US20130173201A1 (en) * 2008-09-19 2013-07-04 Caterpillar Inc. Machine sensor calibration system
CN105387855A (en) * 2015-10-21 2016-03-09 中铁第四勘察设计院集团有限公司 Coordinate point positioning system and method
CN106740872A (en) * 2017-01-13 2017-05-31 驭势科技(北京)有限公司 Intelligent automobile sensor self-checking system and method, accessory system and intelligent automobile
CN107621278A (en) * 2017-08-04 2018-01-23 驭势科技(北京)有限公司 Autonomous calibration method and device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1707223A (en) * 2004-06-12 2005-12-14 杨建华 Indoor moving robot positioning system and method based on bar code
US20130173201A1 (en) * 2008-09-19 2013-07-04 Caterpillar Inc. Machine sensor calibration system
CN103020957A (en) * 2012-11-20 2013-04-03 北京航空航天大学 Mobile-robot-carried camera position calibration method
CN105387855A (en) * 2015-10-21 2016-03-09 中铁第四勘察设计院集团有限公司 Coordinate point positioning system and method
CN106740872A (en) * 2017-01-13 2017-05-31 驭势科技(北京)有限公司 Intelligent automobile sensor self-checking system and method, accessory system and intelligent automobile
CN107621278A (en) * 2017-08-04 2018-01-23 驭势科技(北京)有限公司 Autonomous calibration method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
徐德 等: "《机器人视觉测量与控制》", 31 January 2016, 国防工业出版社 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111844035A (en) * 2020-07-17 2020-10-30 炬星科技(深圳)有限公司 Robot calibration method, device and storage medium
CN112894752A (en) * 2021-01-20 2021-06-04 华中科技大学 Position searching method of mobile processing robot
CN112894752B (en) * 2021-01-20 2022-04-01 华中科技大学 Position searching method of mobile processing robot
CN113192145A (en) * 2021-05-08 2021-07-30 深圳市商汤科技有限公司 Equipment calibration method and device, electronic equipment and storage medium
CN113192145B (en) * 2021-05-08 2023-02-28 深圳市商汤科技有限公司 Equipment calibration method and device, electronic equipment and storage medium
CN113211449A (en) * 2021-06-10 2021-08-06 哈工大机器人集团股份有限公司 Robot calibration method and system based on path analysis
CN113211449B (en) * 2021-06-10 2022-06-17 哈工大机器人集团股份有限公司 Robot calibration method and system based on path analysis
CN114240157A (en) * 2021-12-17 2022-03-25 中国电信股份有限公司 Robot scheduling method, system, device and storage medium
CN114751218A (en) * 2022-03-07 2022-07-15 北京主线科技有限公司 Wharf vehicle maintenance platform and control method
CN114355321A (en) * 2022-03-18 2022-04-15 深圳市欢创科技有限公司 Laser radar calibration method, device and system, laser radar and robot
CN114734435A (en) * 2022-03-24 2022-07-12 苏州艾利特机器人有限公司 Encoder calibration method, device and system based on hypersphere
CN114734435B (en) * 2022-03-24 2023-09-19 苏州艾利特机器人有限公司 Method, device and system for calibrating encoder based on hypersphere

Similar Documents

Publication Publication Date Title
CN110815205A (en) Calibration method, system and device of mobile robot
US11513029B2 (en) Moving flying object for scanning an object, and system for analyzing damage to the object
US9894435B2 (en) Method and arrangement for detecting acoustic and optical information as well as a corresponding computer program and a corresponding computer-readable storage medium
CN111383279B (en) External parameter calibration method and device and electronic equipment
CN111590593B (en) Calibration method, device and system of mechanical arm and storage medium
CN107742304B (en) Method and device for determining movement track, mobile robot and storage medium
US11441900B2 (en) Movable marking system, controlling method for movable marking apparatus, and computer readable recording medium
JP2005326944A (en) Device and method for generating map image by laser measurement
WO2023071481A1 (en) Method and apparatus for collecting teaching trajectory points, and robotic arm, system and medium
JP2019066242A (en) Pile head analysis system, pile head analysis method, and pile head analysis program
CN113033280A (en) System and method for trailer attitude estimation
JP5019478B2 (en) Marker automatic registration method and system
CN112114318A (en) Vehicle position confirmation method and device based on laser radar
CN113240745A (en) Point cloud data calibration method and device, computer equipment and storage medium
US10997747B2 (en) Target positioning with bundle adjustment
CN112365606B (en) Labeling method and device for equipment positions, computer equipment and storage medium
US20220018950A1 (en) Indoor device localization
JP2019109772A (en) Moving body
CN114063024A (en) Calibration method and device of sensor, electronic equipment and storage medium
CN113218392A (en) Indoor positioning navigation method and navigation device
JP2021014241A (en) Unmanned aircraft, image photographing system and program
CN112956182A (en) Camera control method, apparatus, and computer-readable storage medium
CN110595480A (en) Navigation method, device, equipment and storage medium
JP7278637B2 (en) Self-propelled moving device
US20200217661A1 (en) Queue of data collection tasks for surveying instrument

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200221

RJ01 Rejection of invention patent application after publication