WO2017097170A1 - 自主定位导航设备、定位导航方法及自主定位导航*** - Google Patents

自主定位导航设备、定位导航方法及自主定位导航*** Download PDF

Info

Publication number
WO2017097170A1
WO2017097170A1 PCT/CN2016/108594 CN2016108594W WO2017097170A1 WO 2017097170 A1 WO2017097170 A1 WO 2017097170A1 CN 2016108594 W CN2016108594 W CN 2016108594W WO 2017097170 A1 WO2017097170 A1 WO 2017097170A1
Authority
WO
WIPO (PCT)
Prior art keywords
host device
positioning navigation
data
motion
information
Prior art date
Application number
PCT/CN2016/108594
Other languages
English (en)
French (fr)
Inventor
陈士凯
刘义春
林凌
黄珏珅
李宇翔
Original Assignee
上海思岚科技有限公司
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 上海思岚科技有限公司 filed Critical 上海思岚科技有限公司
Priority to US15/779,521 priority Critical patent/US10974390B2/en
Priority to JP2018530092A priority patent/JP6868028B2/ja
Priority to EP16872361.7A priority patent/EP3388786A4/en
Priority to AU2016368234A priority patent/AU2016368234A1/en
Publication of WO2017097170A1 publication Critical patent/WO2017097170A1/zh

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/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3848Data obtained from both position sensors and additional sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0248Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes

Definitions

  • the invention relates to the field of robots, and in particular to a technique for positioning navigation.
  • the autonomous positioning navigation function is the key to realize the practical application of the service machine equipment. It allows the robot to autonomously construct the map information of the environment through the sensor data without human assistance, and locate the environmental location in real time. Further, by using the constructed map data and location information for navigation, the robot needs an intelligent planning route to go to the target location of the mission, and effectively avoid obstacles such as pedestrians and furniture in the environment.
  • the above-mentioned autonomous positioning navigation function is implemented in the industry by SLAM (Simultaneous localization and mapping) and Motion Planning (Scision) algorithms respectively.
  • SLAM Simultaneous localization and mapping
  • Motion Planning Scision
  • the synchronous positioning navigation algorithm allows the robot to locate the map while real-time positioning by using specific sensor data in any unknown environment. It is the most effective algorithm in autonomous positioning navigation. In order to let the robot launch the action, it is necessary to use some kind of motion planning algorithm to plan the robot's motion trajectory and let the robot dynamically avoid various obstacles in the action and safely reach the destination.
  • ROS is only a software-level system and does not have the ability to cooperate with the underlying and upper layers of a specific robot system, it does not alleviate the above-mentioned difficulty in using such algorithms. question.
  • due to the complexity of such algorithms even mainstream computer systems currently have a large load pressure when running such algorithms.
  • developers In order to efficiently run such algorithms in service robots with embedded computing systems with lower computational performance, developers must be required to optimize the existing algorithms, which further increases the number of algorithms. The difficulty of using such algorithms directly.
  • developers in order to map, real-time locate, and obstacle avoidance, developers must equip the robot with a variety of sensors to provide data to the above algorithms. The performance difference of various types of sensors, the quality of the correction effect also greatly affects the implementation effect of the navigation and positioning algorithm.
  • Robots with autonomous positioning navigation appearing in the world are often occupied by large-scale enterprises and research institutions, and due to the high coupling and alienation of the system, the current robot software system is difficult to reuse between different robots. It hinders the industrialization process of service robots.
  • the root cause of this problem lies in the fact that this type of positioning navigation algorithm has great dependence on sensor configuration, robot size and driving mode in different robot platforms. That is, the autonomous positioning navigation device and the robot host device have a high degree of coupling. This degree of coupling will result in the developer of the robotic system as a host having to make more preparations for adapting an autonomous positioning navigation device.
  • the cleaning robot since the specific working behavior of the robot is defined by the purpose of the robot, for example, the cleaning robot requires a path planning mode in which the motion planning algorithm can walk along the wall edge and then perform a bow-shaped reciprocating walk, while a security patrol robot requires The robot completes a patrol mission to the environment with as little cost as possible. At present, there is no autonomous positioning navigation device that can handle the differentiation of this business logic very well.
  • An object of the present invention is to provide a highly modular autonomous positioning navigation device, and a positioning navigation method based on the autonomous positioning navigation device and an autonomous positioning navigation system based on the autonomous positioning navigation device, so as to reduce the autonomous positioning navigation device to the host device. Dependence and improve its scalability.
  • an autonomous positioning navigation device for positioning and navigating a host device according to an aspect of the present application.
  • the autonomous positioning navigation device includes: a first transmission device and a second transmission. Apparatus and processing apparatus; wherein
  • the first transmission device performs data communication with the underlying device of the host device to acquire information related to the underlying navigation and to transmit a motion control command for controlling the motion of the host device;
  • the second transmission device performs data communication with an upper device of the host device to acquire upper layer positioning navigation related information and transmit motion related logical data for the host device to perform service logic analysis;
  • the processing device acquires a plurality of sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information, and generates the motion related logical data and the motion control command.
  • a method for positioning and positioning using an autonomous positioning navigation device wherein the autonomous positioning navigation device is configured to perform positioning and navigation on a host device, and the autonomous positioning navigation device includes a processing device, and a first a transmitting device and a second transmitting device; wherein the method comprises:
  • the first transmitting device acquires the bottom positioning navigation related information from the bottom layer control device of the host device, and the second transmitting device acquires the upper layer positioning navigation related information from the upper layer control device of the host device;
  • the processing device of B acquires a plurality of sensing information, the bottom positioning navigation related information, and the upper positioning navigation related information, and generates a motion control command for controlling movement of the host device and performs service for the host device Motion related logical data of logic analysis;
  • the first transmission device sends the motion control command to the bottom layer of the host device And a control device that transmits the motion related logic data to an upper layer control device of the host device.
  • an autonomous positioning navigation device comprising:
  • a first device configured to acquire information about an underlying positioning navigation of the host device and information related to the navigation of the upper layer
  • a second device configured to acquire a plurality of sensing information, and perform pre-processing and pre-fusion on the plurality of sensing information
  • a third device configured to generate motion control commands for controlling motion of the host device based on the pre-processed and pre-fused plurality of the sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information Motion related logical data for the host device to perform business logic analysis;
  • the first device is further configured to send the synchronization positioning data, the map data, the motion planning logic data, and the motion control command to the host device.
  • the autonomous positioning navigation device of the present application has a high degree of modularity, greatly reduces the coupling degree with the host device, and facilitates rapid integration into an existing host device.
  • the advantages of flexible expansion. Therefore, the host device such as the robot has a simpler and clearer system configuration, which greatly reduces the development difficulty and time period of the host device with the autonomous positioning navigation device.
  • the autonomous positioning navigation device integrates the processing of the plurality of sensing information into the autonomous positioning navigation device itself by summarizing the sensing information dependencies required by most of the autonomous positioning navigation devices, thereby reducing the coupling with the host device. degree.
  • the autonomous positioning navigation device forms a highly flexible unified external communication interface and protocol specification through the first transmission device and the second transmission device, so that any host device conforming to the interface protocol specification can be easily implemented and autonomously
  • the docking of the navigation device 1 is positioned and the function is expanded.
  • FIG. 1 is a schematic diagram showing a cooperative structure of an autonomous positioning navigation device and a host device according to an aspect of the present application
  • FIG. 2 is a schematic structural diagram of an autonomous positioning navigation device according to a preferred embodiment of the present application.
  • FIG. 3 is a schematic diagram showing data transmission during cooperation of a first transmission device of an autonomous positioning navigation device and an underlying control device of a host device according to a preferred embodiment of the present application.
  • FIG. 4 illustrates a positioning and navigation method of an autonomous positioning navigation device according to another aspect of the present application
  • FIG. 5 is a schematic diagram showing a cooperation structure between an autonomous positioning navigation device and a host device according to a preferred embodiment of the present application.
  • FIG. 6 is a schematic diagram showing a cooperation structure between an autonomous positioning navigation device and a host device according to a preferred embodiment of the present application.
  • FIG. 7 is a schematic diagram showing a cooperation structure between an autonomous positioning navigation device and a host device according to still another preferred embodiment of the present application.
  • FIG. 8 illustrates a positioning navigation method according to a preferred embodiment of the present application.
  • the present application aims to propose a highly modular autonomous positioning navigation device and an autonomous positioning navigation device to reduce the dependence on the host device and improve its own scalability.
  • FIG. 1 is a schematic diagram of a cooperative structure of an autonomous positioning navigation device and a host device according to an aspect of the present application, wherein the autonomous positioning navigation device 1 is configured to provide a positioning navigation function for the host device 2, and the autonomous positioning navigation
  • the device 1 comprises a first transmission device 11, a second transmission device 12, and a processing device 13.
  • the first transmission device 11 performs data communication with the underlying control device of the host device 2 to acquire information related to the underlying navigation and to transmit a motion control command for controlling the motion of the host device 2;
  • the transmitting device 12 performs data communication with the upper device of the host device 2 to acquire upper layer positioning navigation related information and transmit motion related logical data for the host device 2 to perform business logic analysis;
  • the processing device 13 acquires several transmissions Sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information, and generating the motion related logical data and the motion control command.
  • the host device 2 may be a machine device that automatically performs work, such as a robot or the like.
  • the host device 2 can accept human command, run a pre-programmed program, or act according to a principle program established by artificial intelligence technology to assist or replace human work.
  • the host device 2 has an upper layer control device that processes the business logic, analyzes and formulates the action target, and has an underlying control device that drives the movement of the actuator, that is, the host device 2 can be made by the power component according to the control signal sent by the control device.
  • Various actions are performed in which the input control signal is an electrical signal, and the output is a line and angular displacement.
  • the driving device used by the host device 2 may be an electric driving device (mechanical wheel set) such as a stepping motor, a servo motor, or the like, or may be a hydraulic or pneumatic driving device or the like.
  • the autonomous positioning navigation device 1 is erected on the host device 2.
  • the bottom layer positioning navigation related information may include the wheel group status information of the host device 2, and may further include parameter information of the host device 2, where the upper layer positioning navigation related information may include that the host device 2 needs to perform Requests for motion planning and/or requests by the host device 2 for motion control by its underlying control device, the motion related logical data packet Includes map data, simultaneous positioning data, and motion planning logic data.
  • the first transmission device 11 and the host device 2 are in data communication with the underlying device of the host device 2 to acquire the underlying positioning navigation related information and to transmit a motion control command for controlling the movement of the host device 2.
  • the first transmission device 11 (control signal interface) is mainly used to acquire the bottom operating state of the host device 2, such as the motor working condition, the wheel encoder data, and the autonomous positioning navigation device 1 for the motion control of the host device 2.
  • the command is also transmitted by the first transmission device 11.
  • the autonomous positioning navigation device 1 and the host device 2 exchange data in the first transmission device 11 using a predefined unified communication protocol.
  • the first transmission device 11 preferably adopts a UART serial port (Universal Asynchronous Receiver Transmitter), because the UART serial port is supported by almost all single-chip microcomputers and embedded devices, and the host device 2 only needs
  • the cooperation between the autonomous positioning navigation device 1 and the host device 2 can be realized by implementing the processing of the predefined communication protocol, so that the integration of the host device 2 and the autonomous positioning navigation device 1 can be facilitated to the utmost extent.
  • CAN bus Controller Area Network, CAN
  • SPI bus Serial Peripheral Interface
  • I 2 C bus etc.
  • an autonomous positioning navigation device 1 may further include any number of any of a plurality of different types of physical interfaces to implement the above-mentioned control signals of the first transmission device 11.
  • an abstract external sensor data acquisition protocol is defined on the first transmission device 11, and support for any type of sensor can be implemented.
  • the protocol data type transmitted by the first transmission device 11 includes parameter information, wheel group status information of the host device 2 transmitted from the host device 2 to the autonomous positioning navigation device 1 and
  • the host device 2 senses information and a motion control command sent from the autonomous positioning navigation device 1 to the host device 2, the parameter information of the host device 2 describing relevant configuration parameters of the host device 2, for example but not Limited to device size, drive mode, installed sensor type and location, etc.;
  • the wheel set status information describes each wheel set operation data of the host device 2, such as but not limited to odometer information;
  • the host device 2 senses information
  • An abstract data definition of an additional sensor on the host device 2 that is desirably processed by the autonomous positioning navigation device 1 describes an abstract data definition of an additional sensor on the host device 2 that is intended to be processed by the autonomous navigation device 1;
  • the motion control command describes The positioning navigation identifies a description of the desired host device 2 to move.
  • the motion control command includes a description of the autonomous positioning navigation device 1 expecting the host device 2 to move.
  • FIG. 3 is a schematic diagram showing data transmission during the cooperation of the first transmission device of the autonomous positioning navigation device 1 and the underlying control device of the host device 2 according to a preferred embodiment of the present application.
  • the host device 2 needs to first provide the autonomous positioning navigation device 1 with parameter information of the host device 2 including its own information, and the parameter information of the host device 2 is used to describe the current host device 2.
  • Platform characteristics such as its own size information, drive mode (two-wheel differential drive / omnidirectional wheel structure, etc.), the position and angle of the external sensor (ie external sensor) installation and if additional sensors are installed, you need to The related description information of such sensors is provided to the autonomous positioning navigation device 1.
  • the autonomous positioning navigation device 1 After receiving the parameter information of the host device 2, the autonomous positioning navigation device 1 will perform the necessary initialization work to adapt the current host device 2. Subsequently, the autonomous positioning navigation device 1 will periodically transmit the motion control command to the host device 2.
  • the motion control command is used to describe a mode in which the autonomous positioning navigation device 1 expects the host device 2 to move next.
  • the motion control command may be a desired running speed amount of the left and right wheel sets, and for a robot adopting a universal wheel mode, the motion control command may be that the robot performs translation at the next moment. And the linear velocity (v) and angular velocity (w) of the rotation.
  • the host device 2 While the autonomous positioning navigation device 1 periodically transmits the motion control command, the host device 2 also needs to periodically transmit the wheel group state information describing the motion situation to the autonomous positioning navigation device 1. This information generally includes the amount of change in the amount of displacement and heading angle of the host device 2 relative to the previous moment. For the host device 2 that uses the two-wheeled scoring drive, the wheel group status information may directly transmit the cumulative number of revolutions of the left and right wheels or the accumulated odometer information.
  • the host device 2 sensing information may be periodically transmitted to the autonomous positioning navigation device 1 including the sensor data description information having a uniform definition.
  • the autonomous positioning navigation device 1 can expand its own function by accepting the sensor data description information to process additional external sensors.
  • the above data is a minimum set of data types that must be transmitted through the first transmission device 11 in order to ensure the normal operation of the autonomous navigation device 1 , and is only the first transmission of the autonomous positioning navigation device 1 .
  • the type of protocol which may be applicable to the present application, transfers the type of data between the first transmission device 11 of the autonomous navigation device 1 and the underlying control device 21 of the host device 2, which may still be incorporated herein by reference.
  • the second transmission device 12 is connected to an upper layer control device of the host device 2 for data communication.
  • the second transmission device 12 (high-speed signal interface) is used to implement data interaction between the autonomous positioning navigation device 1 and the upper control device of the host device 2, such as map data, positioning coordinates, and control path planning data and host device 2 behavior data. Cooperative data related to the business logic, such as transmission, is transmitted through the second transmission device 12.
  • the second transmission device 12 preferably implements communication with the external host device 2 for big data throughput by using an Ethernet interface of the 802.11 specification.
  • the second transmission device 12 may also include a WIFI wireless communication interface, a USB interface, a fiber interface, and the like, which can also realize a large data amount interaction.
  • the high-speed signal interface can include multiple sets of Ethernet interfaces and multiple different types of interface formats: for example, a wired Ethernet interface and a wireless WIFI interface.
  • the second transmission device 12 is responsible for transmitting map data from the autonomous positioning navigation device 1 to the upper layer control device of the host device 2, synchronous positioning data including position and posture information and positioning state information, and Motion planning logic data including motion state information, and motion execution request, bottom motion control request from the host device 2 to the upper layer control device of the autonomous positioning navigation device 1.
  • the map data includes map data of a specific area constructed by the autonomous positioning navigation device 1; the position and posture information includes spatial position and posture information of the current host device 2 calculated by the autonomous positioning navigation device 1;
  • the status information includes a map size calculated by the autonomous positioning navigation device 1 and a positioning status (eg, covariance, whether the positioning is successful);
  • the motion status information includes motion planning algorithm information currently being executed by the autonomous positioning navigation device 1, for example, but not Limited to rules such as the ongoing path planning time
  • the motion execution request includes a request packet of the built-in motion planning algorithm that the host device 2 requires to autonomously locate the navigation device 1; the underlying motion control request includes the host device 2 requiring the autonomous positioning navigation device 1 to directly control the underlying layer of the host device A request packet for the system to move, such as, for example, but not limited to, requesting control of the robot to a particular destination.
  • the map data describes map data information of interest to the host device 2.
  • the map data is always located in a portion of the environment map pre-built by the autonomous navigation device 1.
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 as needed.
  • the position and posture information includes current position coordinates and posture information of the host device 2 calculated by the autonomous positioning navigation device 1.
  • the information may be the coordinates (x, y) of the robot in the plane and the heading angle ⁇ .
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 according to its own needs, or the autonomous positioning navigation device 1 can actively push the data to the host device 2.
  • the positioning status information is used to describe the current working situation of the autonomous positioning navigation device 1 for positioning and map construction.
  • the information it contains includes the total size of the map that has been constructed so far, the positioning accuracy information, whether the positioning is successful, and other data sets necessary by the host device 2.
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 according to its own needs, or the autonomous positioning navigation device 1 can actively push the data to the host device 2.
  • the motion state information describes the execution of the motion planning algorithm currently being performed by the autonomous positioning navigation device 1. For example, the type of motion planning algorithm currently being worked on (idle, path planning, autonomous return charging, etc.), the planned path data to the target location, and the amount of motion control required by the host device 2.
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 according to its own needs, or the autonomous positioning navigation device 1 can actively push the data to the sink device 2.
  • the motion execution request is used by the host device 2 to initiate a related description data of the motion planning algorithm built into the autonomous positioning navigation device 1 to the autonomous positioning navigation device 1.
  • the general implementation includes the types of motion planning algorithms that the host device 2 wishes to perform (stop all actions, path planning, autonomous return charging, etc.), related parameters (target location coordinates, moving speed, etc.). This information is initiated by the host device 2 to the autonomous positioning navigation device 1 actively.
  • the underlying motion control request is for the host device 2 to issue a motion related control command request directly to the underlying control device 21 of the host device 2 via the autonomous positioning navigation device 1.
  • the data packet is used to implement the navigation device 1 for autonomous positioning
  • the request can implement the underlying motion of the host device 2 to directly advance, retreat, rotate, etc. at a specific speed.
  • the underlying motion control request can also contain direct control data for the left and right wheel motor speeds.
  • the data transmitted during the communication between the second transmission device 12 of the autonomous positioning navigation device 1 and the upper control device 22 of the host device 2 is a preferred example, including the minimum data that should be supported.
  • the autonomous positioning navigation device 1 of the present application cooperates with the first transmission device 11 and the second transmission device 12 to clarify the communication specifications and dependencies between the autonomous positioning navigation device 1 and the host device 2, the autonomous The interaction and data dependency of the positioning navigation device 1 with the host device 2 occurs on one of the communication interfaces of the first transmission device 11 and the second transmission device 12.
  • the processing device 13 acquires a plurality of sensing information, the bottom positioning navigation related information, and the upper positioning navigation related information, and generates the motion related logical data and the motion control command. Specifically, the processing device 13 generates map data and synchronization positioning data based on the plurality of the sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information, and based on the synchronization positioning data and the map. The data and the upper layer navigation related information of the host device 2 generate motion planning logic data and the motion control command.
  • the first transmission device 11 may further acquire the sensing information of the host device 2 of the host device 2 from the underlying control device of the host device 2, and the processing device 13 may sense the information in combination with the host device 2. Data processing is performed with a plurality of said sensing information. Specifically, said first transmitting device 11 further acquires sensing information of the host device 2 from an underlying control device of said host device 2; said processing device 13 is based on said host device The sensing information, the plurality of sensing information, the underlying positioning navigation related information, and the upper positioning navigation related information generate motion control related information of the host device 2.
  • the bottom layer positioning navigation related information further includes a parameter letter of the host device 2
  • the first transmission device 11 acquires the parameter information
  • the processing device 13 further generates a motion initial control command based on the parameter information
  • the A transmission device 11 transmits the motion initial control command to the underlying device of the host device 2.
  • the autonomous positioning navigation device 1 further includes a built-in sensor 14 and an external sensor 15; wherein the processing device 13 acquires a plurality of the sensing information from the built-in sensor 14 and the external sensor 15.
  • the built-in sensor 14 includes at least one of the following: a gyroscope, an acceleration sensor, an electronic compass, a temperature sensor, a humidity sensor, and a barometric pressure sensor.
  • the external sensor includes at least one of the following: a laser radar, a sonar radar, a visual sensor, and a UWB beacon sensor.
  • the built-in sensor 13 is a series of sensors integrated inside the autonomous positioning navigation device 1.
  • the built-in sensor 14 may include an inertial navigation sensor such as a gyro, an accelerometer, an electronic compass, or the like, and a combination of one or more of a temperature sensor, a humidity sensor, a pressure sensor, and the like.
  • the built-in sensor 14 is characterized in that it can be directly placed in the autonomous positioning navigation device 1 on the physical integrated installation, for example, on the PCB inside the autonomous positioning navigation device 1 , and can be collected by itself without the assistance of the external host device 2 .
  • Built-in sensing information Built-in sensing information.
  • the built-in sensor 13 can contain more different types of sensors, depending on the specific implementation and application requirements.
  • the built-in sensing information acquired by the built-in sensor 14 can be used to determine a pitch angle, a roll angle, a heading angle, a height information, an ambient temperature, a humidity, and the like of the environment in which the autonomous positioning navigation device 1 is currently located, to facilitate the processing device. 13 Perform a posture solving task of the host device 2.
  • the external sensor 15 preferably includes one or a combination of a laser radar, a visual sensor (camera, etc.), a UWB (Ultra-Wideband) beacon sensor, and the like, and specifically selects and is specific to the autonomous positioning navigation device 1 .
  • a laser radar e.g., a laser radar
  • a visual sensor e.g., a CCD sensor
  • UWB Ultra-Wideband
  • beacon sensor e.g., a laser radar, etc.
  • UWB Ultra-Wideband
  • the difference between the external sensor 15 and the built-in sensor 13 is that the former requires direct measurement and observation in the external environment, and thus cannot be like the built-in sensor 13 It is placed directly inside the autonomous positioning navigation device 1 on the physical installation, and must be exposed to the outside to facilitate direct measurement of the physical environment.
  • the position and angle of installation of the external sensor 15 and associated description information additionally equipped with other sensors are transmitted by the first transmission device 11 during the initialization phase of the autonomous positioning navigation device 1.
  • the foregoing devices may be physically designed into the same chip as the specific hardware chip of the autonomous positioning navigation device 1 is selected. Perhaps the same component is made up of several different discrete hardware.
  • additional functional units such as internal power management devices, are added in specific implementations, but these portions are not necessary hardware components constituting the autonomous positioning navigation device 1 of the present invention.
  • the processing device 13 is mainly used to run an automatic positioning navigation related algorithm, such as but not limited to: synchronous positioning and mapping (SLAM), path planning algorithm, obstacle avoidance algorithm and built-in sensor The algorithm for calculating the space pose of the robot.
  • the processing device 13 may be composed of one or more computer systems, or may be a purely hardware implementation such as an Application Specific Integrated Circuit or a Field-Programmable Gate Array.
  • the unit When implemented in a general-purpose computer system, the unit will contain one or more CPU units (Central Processing Units), random access memory (RAM), and ROM for storing permanent programs and data.
  • CPU units Central Processing Units
  • RAM random access memory
  • ROM read-only memory
  • the processing device 13 includes a main processing unit and a slave processing unit, wherein the main processing unit generates a location based on the plurality of the sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information. Said motion-related logic data of the host device 2 and the motion control command; the slave processing unit acquires the sensory information from the built-in sensor in real time to acquire a gesture solving task, and the motion control command The underlying control device of the host device 2 is sent by the first transmission device.
  • FIG. 2 is a schematic structural diagram of an autonomous positioning navigation device 1 according to a preferred embodiment of the present application, wherein the control signal interface shown corresponds to the first transmission device 11 of FIG. 1, and the high-speed signal interface shown corresponds to The second transmission device 12 of FIG. 1; the processing device 13 includes a main processing unit and a slave processing unit, and the main operation unit (preferably a CPU) corresponds to FIG.
  • the main processing unit, the illustrated slave operation unit (preferably MCU, Microcontroller Unit) corresponds to the slave processing unit described in FIG.
  • MCU Microcontroller Unit
  • the slave processing unit and the slave arithmetic unit are used interchangeably.
  • the processing device 13 uses one main arithmetic unit and one slave arithmetic unit in implementation.
  • the main operation unit has strong computing power, and most of the positioning navigation algorithms are arranged to perform calculations therein. It is realized by the single-chip computer from the computing unit, and its computing power is relatively weak, but it has good real-time performance. Therefore, it is used to perform the attitude solving task of acquiring data from the built-in sensor, and is also responsible for realizing the control signal interface defined in the device. Responsible for communicating with the underlying control device of the external host device 2.
  • the above implementation includes two physical interfaces that implement high-speed signal interfaces: 100M Ethernet interface and 802.11b/g WIFI wireless network interface.
  • the host device 2 can communicate with the positioning navigation module through any one of the specific physical interfaces according to its own requirements.
  • the electronic compass, gyroscope, accelerometer and barometer in Fig. 2 constitute built-in sensors, which can collect the elevation angle, roll angle, heading angle and height information of the current autonomous positioning navigation device 1 in the environment.
  • the external sensor uses a laser radar in the above implementation.
  • the autonomous positioning navigation device 1 integrates the sensors required by most of the autonomous positioning navigation devices 1 to integrate the inertial navigation sensors such as the gyroscope, the accelerometer and the electronic compass.
  • the sensor is physically integrated into the interior of the autonomous positioning navigation device 1 and directly multiplexed with an external sensor such as a laser, a radar or a visual sensor to process almost all sensor data on which the positioning navigation depends in the processing device in the autonomous positioning navigation device 1. .
  • the reliance on the sensor of the host device 2 is greatly reduced, and the host device 2 can perform the positioning and navigation work even if the navigation device 1 is autonomously positioned without additional sensor equipment, thereby well solving the existing Navigation positioning devices are ubiquitous and host device 2 is high Coupling while ensuring flexible scalability.
  • FIG. 4 illustrates a positioning and navigation method using an autonomous positioning navigation device 1 according to an aspect of the present application, wherein the autonomous positioning navigation device 1 is configured to perform positioning and navigation on a host device 2, and the autonomous positioning navigation device 1
  • the processing device, the first transmitting device and the second transmitting device are included; wherein the method comprises: step S11, step S12 and step S13.
  • Step S11 The first transmission device acquires information about the bottom navigation and navigation information from the bottom layer control device of the host device 2, and the second transmission device acquires information about the upper layer navigation and navigation information from the upper layer control device of the host device 2.
  • Step S12 the processing device acquires a plurality of sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information, and generates a motion control command for controlling movement of the host device 2 and is used for The host device 2 performs motion related logic data for business logic analysis;
  • the step S13 the first transmission device sends the motion control command to an underlying control device of the host device 2, the second transmission device The motion related logical data is transmitted to an upper layer control device of the host device 2.
  • the host device 2 may be a machine device that automatically performs work, such as a robot or the like.
  • the host device 2 can accept human command, run a pre-programmed program, or act according to a principle program established by artificial intelligence technology to assist or replace human work.
  • the host device 2 has an upper layer control device that processes the business logic, analyzes and formulates the action target, and has an underlying control device that drives the movement of the actuator, that is, the host device 2 can be made by the power component according to the control signal sent by the control device.
  • Various actions are performed in which the input control signal is an electrical signal, and the output is a line and angular displacement.
  • the driving device used by the host device 2 may be an electric driving device (mechanical wheel set) such as a stepping motor, a servo motor, or the like, or may be a hydraulic or pneumatic driving device or the like.
  • the bottom layer positioning navigation related information may include wheel group status information of the host device 2
  • the upper layer positioning navigation related information may include a request that the host device 2 needs to perform motion planning and/or the host device. 2
  • a request for motion control by its underlying control device is required, the motion related logical data including map data, synchronous positioning data, and motion planning logic data.
  • the first transmission device 11 Data communication with the underlying device of the host device 2
  • the second transmission device 12 is in data communication with an upper device of the host device 2
  • the first transmission device being obtained from an underlying control device of the host device 2
  • the bottom layer locates navigation related information
  • the second transmission device acquires upper layer positioning navigation related information from an upper layer control device of the host device 2
  • the first transmission device sends the motion control command to the bottom layer of the host device 2
  • a control device that transmits the motion related logic data to an upper layer control device of the host device 2.
  • the content of the first transmission device is the same or substantially the same as the content of the first transmission device 11 shown in FIG. 1, and the content of the second transmission device and the content of the second transmission device 12 shown in FIG. The same or substantially the same, for the sake of brevity, will not be described again, and is only included herein by reference.
  • the positioning and navigation method of the present application cooperates with the first transmission device 11 and the second transmission device 12 to clarify the communication specifications and dependencies between the autonomous positioning navigation device 1 and the host device 2, and the autonomous positioning navigation
  • the interaction and data dependency of the device 1 with the host device 2 occurs on one of the communication interfaces of the first transmission device 11 and the second transmission device 12.
  • FIG. 3 is a schematic diagram showing data transmission during the cooperation of the first transmission device of the autonomous positioning navigation device 1 and the underlying control device of the host device 2 according to a preferred embodiment of the present application.
  • the host device 2 needs to first provide the autonomous positioning navigation device 1 with parameter information of the host device 2 including its own information, and the parameter information of the host device 2 is used to describe the current host device 2.
  • Platform characteristics such as its own size information, drive mode (two-wheel differential drive / omnidirectional wheel structure, etc.), the position and angle of the external sensor installation, and if additional sensors are installed, it is necessary to have such sensors at this time.
  • the related description information is provided to the autonomous positioning navigation device 1.
  • the autonomous positioning navigation device 1 After receiving the parameter information of the host device 2, the autonomous positioning navigation device 1 will perform the necessary initialization work to adapt the current host device 2. Subsequently, the autonomous positioning navigation device 1 will periodically transmit the motion control command to the host device 2.
  • the motion control command is used to describe a mode in which the autonomous positioning navigation device 1 expects the host device 2 to move next.
  • the motion control command may be a desired speed of operation of the left and right wheel sets.
  • the motion control command may be a linear velocity (v) and an angular velocity (w) at which the robot performs translation and rotation at the next moment.
  • the host device 2 While the autonomous positioning navigation device 1 periodically transmits the motion control command, the host device 2 also needs to periodically transmit the wheel group state information describing the motion situation to the autonomous positioning navigation device 1. This information generally includes the amount of change in the amount of displacement and heading angle of the host device 2 relative to the previous moment. For the host device 2 that uses the two-wheeled scoring drive, the wheel group status information may directly transmit the cumulative number of revolutions of the left and right wheels or the accumulated odometer information.
  • the host device 2 sensing information may be periodically transmitted to the autonomous positioning navigation device 1 including the sensor data description information having a uniform definition.
  • the autonomous positioning navigation device 1 can expand its own function by accepting the sensor data description information to process additional external sensors.
  • the above data is a minimum set of data types that must be transmitted through the first transmission device 11 in order to ensure the normal operation of the autonomous navigation device 1 , and is only the first transmission of the autonomous positioning navigation device 1 .
  • the type of protocol which may be applicable to the present application, transfers the type of data between the first transmission device 11 of the autonomous navigation device 1 and the underlying control device 21 of the host device 2, which may still be incorporated herein by reference.
  • the second transmission device 12 is responsible for transmitting map data from the autonomous positioning navigation device 1 to the upper layer control device of the host device 2, synchronous positioning data including position and posture information and positioning state information, and Motion planning logic data including motion state information, and motion execution request, bottom motion control request from the host device 2 to the upper layer control device of the autonomous positioning navigation device 1.
  • the map data includes map data of a specific area constructed by the autonomous positioning navigation device 1; the position and posture information includes spatial position and posture information of the current host device 2 calculated by the autonomous positioning navigation device 1;
  • the status information includes a map size calculated by the autonomous positioning navigation device 1 and a positioning status (eg, covariance, whether the positioning is successful);
  • the motion status information includes motion planning algorithm information currently being executed by the autonomous positioning navigation device 1, for example, but not Limited to rules such as the ongoing path planning time
  • the motion execution request includes a request packet of the built-in motion planning algorithm that the host device 2 requires to autonomously locate the navigation device 1; the underlying motion control request includes the host device 2 requiring the autonomous positioning navigation device 1 to directly control the host device 2
  • a request packet for the underlying system to move such as, for example, but not limited to, requesting control of the robot to a particular destination.
  • the map data describes map data information of interest to the host device 2.
  • the map data is always located in a portion of the environment map pre-built by the autonomous navigation device 1.
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 as needed.
  • the position and posture information includes current position coordinates and posture information of the host device 2 calculated by the autonomous positioning navigation device 1.
  • the information may be the coordinates (x, y) of the robot in the plane and the heading angle ⁇ .
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 according to its own needs, or the autonomous positioning navigation device 1 can actively push the data to the host device 2.
  • the positioning status information is used to describe the current working situation of the autonomous positioning navigation device 1 for positioning and map construction.
  • the information it contains includes the total size of the map that has been constructed so far, the positioning accuracy information, whether the positioning is successful, and other data sets necessary by the host device 2.
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 according to its own needs, or the autonomous positioning navigation device 1 can actively push the data to the host device 2.
  • the motion state information describes the execution of the motion planning algorithm currently being performed by the autonomous positioning navigation device 1. For example, the type of motion planning algorithm currently being worked on (idle, path planning, autonomous return charging, etc.), the planned path data to the target location, and the amount of motion control required by the host device 2.
  • the host device 2 can randomly acquire the data to the autonomous positioning navigation device 1 according to its own needs, or the autonomous positioning navigation device 1 can actively push the data to the sink device 2.
  • the motion execution request is used by the host device 2 to initiate a related description data of the motion planning algorithm built into the autonomous positioning navigation device 1 to the autonomous positioning navigation device 1.
  • the general implementation includes the types of motion planning algorithms that the host device 2 wishes to perform (stop all actions, path planning, autonomous return charging, etc.), related parameters (target location coordinates, moving speed, etc.). This information is initiated by the host device 2 to the autonomous positioning navigation device 1 actively.
  • the underlying motion control request is for the host device 2 to issue a motion related control command request directly to the underlying control device 21 of the host device 2 via the autonomous positioning navigation device 1.
  • the data packet is used to implement the navigation device 1 for autonomous positioning
  • the request can implement the underlying motion of the host device 2 to directly advance, retreat, rotate, etc. at a specific speed.
  • the underlying motion control request can also contain direct control data for the left and right wheel motor speeds.
  • the data transmitted during the communication between the second transmission device 12 of the autonomous positioning navigation device 1 and the upper control device 22 of the host device 2 is a preferred example, including the minimum data that should be supported.
  • the processing device acquires a plurality of sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information, and generates a motion control command for controlling the movement of the host device 2 And motion related logical data for business logic analysis by the host device 2.
  • the content of the processing device is the same as or substantially the same as the content of the processing device 13 shown in FIG. 1.
  • the content of the processing device 13 shown in FIG. 1 For brevity, it will not be described again, and is only included herein by reference.
  • the autonomous positioning navigation device 1 further includes a built-in sensor and an external sensor; the step S12 further includes: the processing device acquiring a plurality of the sensing information from the built-in sensor and an external sensor.
  • the content of the built-in sensor is the same as or substantially the same as the content of the built-in sensor 14 shown in FIG. 1.
  • the external sensor has the same or substantially the same content as the external sensor 15 shown in FIG. 1. For the sake of brevity, I will not repeat them here, but I will only include them here by reference.
  • the step S11 further includes: the first transmission device acquires sensing information of the host device 2 from the underlying control device of the host device 2; the step S12 includes: the processing device is based on the host device 2 The sensing information, the plurality of sensing information, the underlying positioning navigation related information, and the upper positioning navigation related information generate motion control related information of the host device 2.
  • the bottom layer positioning navigation related information includes wheel group status information of the host device 2
  • the upper layer positioning navigation related information includes a request that the host device 2 needs to perform motion planning and/or the host device 2 needs
  • the underlying control device performs a motion control request
  • the motion related logical data includes map data, synchronous positioning data, and motion planning logic data
  • the step S12 includes: the processing device is based on the plurality of the sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation
  • the related information generates map data and synchronization positioning data, and generates motion planning logic data and the motion control command based on the synchronization positioning data, the map data, and upper layer positioning navigation related information of the host device 2.
  • the step S12 further includes: the processing device further generates a motion initial control command based on the parameter information; the step S13 further includes: The first transmission device transmits the motion initial control command to the underlying device of the host device 2.
  • FIG. 5 is a schematic diagram showing a cooperation structure between an autonomous positioning navigation device 1 and a host device 2 according to a preferred embodiment of the present application.
  • the autonomous positioning navigation device 1 includes: a first device 31, a second device 32, and a third device. Device 33.
  • the first device 31 is configured to acquire information about the bottom layer positioning navigation and the information about the upper layer positioning navigation of the host device 2; the second device 32 is configured to acquire a plurality of sensing information, and perform a plurality of the sensing information. Pre-processing and pre-fusion; the third device 33 is configured to generate, according to the pre-processed and pre-fused, the plurality of the sensing information, the bottom layer positioning navigation related information, and the upper layer positioning navigation related information a motion control command for moving the host device 2 and motion related logic data for performing business logic analysis by the host device 2; the first device 31 is further configured to use the synchronization positioning data, the map data, the Motion planning logic data and the motion control commands are sent to the host device 2.
  • the first device 31 is further configured to send the synchronization positioning data, the map data, the motion planning logic data, and the motion control command to the host device 2;
  • the third device 33 The first unit 331 is configured to: the motion related logical data includes map data, synchronous positioning data, and motion planning logic data; and the plurality of the sensing information and the bottom positioning navigation related information based on the pre-processed and pre-fused Generating the map data and the synchronization positioning data with the upper layer positioning navigation related information;
  • the second unit 332 is configured to generate motion planning logic based on the synchronous positioning data, the map data, and the upper layer positioning navigation related information of the host device 2 Data and motion control commands for controlling the motion of the host device 2.
  • the second device 32 includes: a third unit, configured to acquire a plurality of the transmissions Sense information, the plurality of sensing information includes at least one of: built-in sensing information, external sensing information, and sensing information of the host device 2; and a fourth unit configured to preprocess a plurality of the sensing information And pre-fusion.
  • the first device 31 further includes: a fifth unit, configured to encapsulate the synchronization positioning data, the map data, the motion planning logic data, and the motion control command according to a unified data protocol format And a sixth unit, configured to send the encapsulated data to the host device 2.
  • FIG. 6 is a schematic diagram showing a cooperation structure between an autonomous positioning navigation device 1 and a host device 2 according to a preferred embodiment of the present application. 5 and FIG. 6, wherein the autonomous positioning navigation device 1 includes a positioning and map building module, a motion planning module, a motion control and state acquiring module, and a communication interaction management module.
  • the host device 2 includes a behavior control and expansion module, wherein the positioning and map construction module corresponds to the first unit 331, the motion planning module corresponds to the second unit 332, and the motion control and state
  • the acquisition module corresponds to the second device 32, the communication interaction management module corresponds to the first device 31, and the behavior control and expansion module corresponds to the fourth device 41.
  • the terms are used interchangeably.
  • the behavior control and expansion module cooperates with the communication interaction management module to perform data transmission between the autonomous positioning navigation device 1 and the host device 2, and is generally implemented inside the computer of the host device 2 in physical implementation. But from a software perspective, it still belongs to the autonomous navigation system as a whole.
  • the positioning and map building module constructs map data and synchronous positioning data.
  • the positioning and map building module is implemented for a specific synchronous positioning and mapping (SLAM) algorithm, which may be based on particle filtering and
  • SLAM synchronous positioning and mapping
  • the raster map model uses the laser radar as the main input signal SLAM algorithm, or it can be the visual SLAM algorithm using the two-dimensional data provided by the camera.
  • the module obtains input data through the built-in sensor and the external sensor, and provides the calculated map information and the positioning coordinate information to other modules inside the autonomous positioning navigation device 1.
  • the motion planning module is responsible for performing the action control of the host device 2.
  • it will include a map-based path planning algorithm such as A*, D*, and the boot host device 2 (machine Human)
  • An obstacle avoidance algorithm for real-time obstacle avoidance.
  • the module may also include a charging pile docking algorithm such as autonomous return charging or a ground overlay algorithm required by the cleaning robot.
  • Another core function of the module is to accept extended control instructions from the behavior control and extension module in the external host device 2, including the request that the host device needs to perform motion planning or the host device needs its underlying control device to perform motion.
  • the control request is used to merge with its own motion planning logic to implement more complex control logic for extending and modifying existing motion planning algorithms.
  • the motion control and state acquisition module is responsible for collecting built-in sensor information, external sensor information, and host device sensing information from the host device 2, and performing necessary data pre-processing and fusion on the autonomous positioning navigation device.
  • Other modules are used, and in addition, the module acts as an abstraction layer for host device differences. Concealing the differences between different host device 2 platforms and necessary simulations, so that the positioning and map building module and motion planning module running on it can minimize the difference of specific host devices 2, and adopt a relatively universal implementation. algorithm.
  • the communication and interaction management module acquires information related to the bottom layer positioning navigation and the information about the upper layer positioning navigation of the host device 2, and is responsible for directly interacting with the host device 2 through the high-speed signal interface and the control signal interface of the autonomous positioning navigation device 1, and it can be considered Is the abstraction layer for a specific communication interface.
  • the module is responsible for acquiring data required by other modules of the autonomous positioning navigation device 1 from the host device 2 through the corresponding interface, and is responsible for transmitting the data sent to the host device 2 according to a unified data protocol format and then transmitting.
  • the communication and interaction management module encapsulates the motion control instruction and the motion-related logical data according to a unified protocol rule, and encapsulates the data to the host device 2.
  • the behavior control and expansion module cooperates with the communication interaction management module to perform data transmission between the autonomous positioning navigation device 1 and the host device 2 to assist the software system in the host device 2 to interact with the autonomous positioning navigation device 1 Therefore, it generally runs in the computer system of the host device 2.
  • the module can obtain state information such as maps and position coordinates provided by other modules of the autonomous positioning navigation device 1 through the high-speed signal interface, and can execute and expand the existing algorithms in the motion planning module through predefined motion planning extension commands. Modify and other operations.
  • the module is generally provided to the host device 2 in the form of a software development kit (SDK) and integrated with other software modules in the host device 2.
  • SDK software development kit
  • an autonomous positioning navigation system includes: the autonomous positioning navigation device 1 and the host device 2, wherein the host device 2 includes: a fourth device, Sending, to the autonomous positioning navigation device 1, the underlying positioning navigation related information and the upper positioning navigation related information of the host device 2, and acquiring motion control sent by the host device 2 for controlling the motion of the host device 2 Commands and motion related logical data for business logic analysis by the host device 2.
  • FIG. 7 is a schematic diagram showing the cooperation structure of the autonomous positioning navigation device 1 and the host device 2 according to another preferred embodiment of the present application.
  • the behavior control and extension module running on the host device 2 is divided into two parts, namely, the host-oriented underlying control and the host-oriented upper layer business logic according to the responsibilities, corresponding to the underlying SDK (software toolkit) and the upper layer SDK in the figure.
  • the host-oriented underlying control For the part of the underlying control device facing the host device 2, it communicates with the body of the autonomous positioning navigation device 1 through the control signal interface, is responsible for performing the transfer of the robot motion signal with the host device 2, and transmitting the additional extended sensor from the host device 2. data.
  • the upper layer control device for the host device 2 communicates with the body of the autonomous positioning navigation device 1 through a high-speed signal interface, which provides the host device 2 with information such as maps, positioning coordinates, and the like generated by the autonomous positioning navigation device 1, and includes a scale.
  • the sub-module for extending the motion planning framework is used to implement the call, extension and behavior modification of the internal motion planning algorithm logic of the positioning navigation module by the host device 2.
  • the above example uses a laser radar as an external sensor, so the positioning of the map building module is implemented by a SLAM algorithm using a particle filtered raster map.
  • the sensor data required by SLAM is acquired by other modules and subjected to necessary data pre-fusion to be finally read in.
  • the SLAM module completes the processing, the obtained map and coordinate data are temporarily cached in the memory of the autonomous positioning navigation device for use by other modules and the external host device 2.
  • the D* path planning algorithm that can perform direct and shortest path calculation of any bright spot is built in the motion planning module, and the host device 2 is used to assist the host device 2 in moving obstacles in real time through various sensor data.
  • FIG. 8 illustrates a positioning and navigation method according to a preferred embodiment of the present application, and a method for positioning navigation according to another aspect of the present application, wherein the method includes: step S31, step S32, step S33, and Step S34.
  • Step S31 acquiring the bottom layer positioning navigation related information and the upper layer positioning navigation related information of the host device 2; step S32: acquiring a plurality of sensing information, and performing preprocessing and pre-fusion on the plurality of sensing information; step S33: based on The pre-processed and pre-fused plurality of the sensing information, the underlying positioning navigation related information, and the upper positioning navigation related information generate a motion control command for controlling movement of the host device 2 and for the host device 2 performing motion related logical data of the business logic analysis; step S34: transmitting the synchronous positioning data, the map data, the motion planning logical data, and the motion control command to the host device 2.
  • the motion-related logic data includes map data, synchronization positioning data, and motion planning logic data.
  • the step S33 includes: performing, according to the pre-processed and pre-fused, the sensing information, the bottom-level positioning navigation related information. Generating map data and synchronous positioning data with the upper layer positioning navigation related information;
  • Motion planning logic data and motion control commands for controlling movement of the host device 2 are generated based on the synchronization positioning data, the map data, and upper layer positioning navigation related information of the host device 2.
  • the step S32 includes: acquiring a plurality of the sensing information, and the plurality of sensing information includes at least one of the following: built-in sensing information, external sensing information, and a host device 2 Sensing information; pre-processing and pre-fusion of a plurality of said sensing information.
  • step S34 includes: encapsulating the synchronization positioning data, the map data, the motion planning logic data, and the motion control command according to a unified data protocol format; and sending the encapsulated data to the location Host device 2.
  • the autonomous positioning navigation device 1 includes: a positioning and map building module, a motion planning module, a motion control and state acquiring module, and a communication interaction management module.
  • the host device 2 includes a behavior control and expansion module, wherein the positioning and map construction module corresponds to the first unit 331, the motion planning module corresponds to the second unit 332, and the motion control and state
  • the acquisition module corresponds to the second device 32
  • the communication interaction management module corresponds to the first device 31
  • the behavior control and expansion module corresponds to the fourth device 41.
  • the terms are used interchangeably.
  • the communication and interaction management module acquires information about the underlying positioning navigation and the information of the upper positioning navigation of the host device 2, and the communication and interaction management module is responsible for directly passing the high-speed signal interface of the autonomous positioning navigation device 1 (
  • the hardware form interface or software form interface) and the control signal interface (hardware form interface or software form interface) interact with the host device 2, which can be considered as an abstraction layer for a specific communication interface.
  • the module is responsible for acquiring data required by other modules of the autonomous positioning navigation device 1 from the host device 2 through the corresponding interface, and is responsible for transmitting the data sent to the host device 2 according to a unified data protocol format and then transmitting.
  • the motion control and state acquisition module is responsible for collecting built-in sensing information, external sensing information, and host device sensing information from the host device 2, and performing necessary data pre-processing and fusion. It is provided for use by other modules in the autonomous navigation device.
  • the module acts as an abstraction layer for host device differences. Concealing the differences between different host device 2 platforms and necessary simulations, so that the positioning and map building module and motion planning module running on it can minimize the difference of specific host devices 2, and adopt a relatively universal implementation. algorithm.
  • the positioning and map construction module constructs map data and synchronization positioning data, and the motion planning module generates motion control instructions and motion related logic data, wherein the positioning and map building module is for a specific synchronization.
  • Positioning and Mapping (SLAM) algorithm Now, it can be a SLAM algorithm based on particle filtering and raster map model and using lidar as the main input signal, or a visual SLAM algorithm using two-dimensional data provided by the camera.
  • the positioning and map construction module obtains input data through the built-in sensor and the external sensor, and provides the calculated map information and the positioning coordinate information to other modules inside the autonomous positioning navigation device 1.
  • the motion planning module is responsible for performing action control of the host device 2.
  • the module will include a map-based path planning algorithm such as A*, D*, and a host device 2 (robot) for real-time obstacle avoidance. algorithm.
  • the module may also include a charging pile docking algorithm such as autonomous return charging or a ground overlay algorithm required by the cleaning robot.
  • Another core function of the module is to accept extended control instructions from the behavior control and extension module in the external host device 2, including the request that the host device needs to perform motion planning or the host device needs its underlying control device to perform motion.
  • the control request is used to merge with its own motion planning logic to implement more complex control logic for extending and modifying existing motion planning algorithms.
  • the communication and interaction management module encapsulates the motion control instruction and the motion-related logic data according to a unified protocol rule, and encapsulates the data to the host device 2.
  • the behavior control and expansion module cooperates with the communication interaction management module to perform data transmission between the autonomous positioning navigation device 1 and the host device 2.
  • the behavior control and extension module is generally physically internal to the computer of the host device 2. But from a software perspective, it still belongs to the autonomous navigation system as a whole.
  • the purpose of the behavior control and extension module is to assist the software system in the host device 2 to interact with the autonomous positioning navigation device 1 so that it generally runs in the computer system of the host device 2.
  • the module can obtain state information such as maps and position coordinates provided by other modules of the autonomous positioning navigation device 1 through the high-speed signal interface, and can execute and expand the existing algorithms in the motion planning module through predefined motion planning extension commands. Modify and other operations.
  • the module is generally provided to the host device 2 in the form of a software development kit (SDK) and integrated with other software modules in the host device 2.
  • SDK software development kit
  • the behavior control and extension module running on the host device 2 is divided into two parts, namely, the host-oriented underlying control and the host-oriented upper layer business logic according to the responsibilities, respectively corresponding to the underlying SDK (software toolkit) and the upper layer in the figure. SDK.
  • the host-oriented underlying control and the host-oriented upper layer business logic according to the responsibilities, respectively corresponding to the underlying SDK (software toolkit) and the upper layer in the figure.
  • SDK software toolkit
  • the host device 2 For the part of the underlying control device facing the host device 2, it communicates with the body of the autonomous positioning navigation device 1 through the control signal interface, is responsible for performing the transfer of the robot motion signal with the host device 2, and transmitting the additional extended sensor from the host device 2. data.
  • the upper layer control device for the host device 2 communicates with the body of the autonomous positioning navigation device 1 through a high-speed signal interface, which provides the host device 2 with information such as maps, positioning coordinates, and the like generated by the autonomous positioning navigation device 1, and includes a scale.
  • the sub-module for extending the motion planning framework is used to implement the call, extension and behavior modification of the internal motion planning algorithm logic of the positioning navigation module by the host device 2.
  • the above example uses a laser radar as an external sensor, so the positioning of the map building module is implemented by a SLAM algorithm using a particle filtered raster map.
  • the sensor data required by SLAM is acquired by other modules and subjected to necessary data pre-fusion to be finally read in.
  • the SLAM module completes the processing, the obtained map and coordinate data are temporarily cached in the memory of the autonomous positioning navigation device 1 for use by other modules and the external host device 2.
  • the D* path planning algorithm for performing direct and shortest path calculation of any bright spot is built in the motion planning module, the obstacle avoidance algorithm for assisting the host device 2 to avoid obstacles during motion in real time through various sensor data, and the autonomous return charging pile for docking charging Logic.
  • the control signals generated by its algorithmic operations will eventually be converted into a set of control commands for the host device 2 and passed to the host device 2 via the control signal interface.
  • the autonomous positioning navigation device 1 of the present application has a high degree of modularity, greatly reducing the coupling degree with the host device 2, and facilitating rapid integration into an existing host device. 2 and the advantages of flexible expansion. Therefore, the host device 2 such as a robot has a simpler and clearer system configuration, and the navigation device with autonomous positioning is greatly reduced. The development difficulty and time period of the host device 2 of 1. And thanks to the high degree of modularity of the system, the small size of the host device 2 is made possible.
  • the autonomous positioning navigation device 1 integrates the processing of a plurality of sensing information into the autonomous positioning navigation device 1 itself by summarizing the sensing information dependencies required by most of the autonomous positioning navigation systems, thereby reducing the host device.
  • the autonomous positioning navigation device 1 forms a highly flexible unified external communication interface and protocol specification through the first transmission device and the second transmission device, so that any host device 2 conforming to the interface protocol specification can be easily implemented. Interfacing with the autonomous positioning navigation device 1 and realizing the expansion of functions.
  • the present invention can be implemented in software and/or a combination of software and hardware, for example, using an application specific integrated circuit (ASIC), a general purpose computer, or any other similar hardware device.
  • the software program of the present invention may be executed by a processor to implement the steps or functions described above.
  • the software program (including related data structures) of the present invention can be stored in a computer readable recording medium such as a RAM memory, a magnetic or optical drive or a floppy disk and the like.
  • some of the steps or functions of the present invention may be implemented in hardware, for example, as a circuit that cooperates with a processor to perform various steps or functions.
  • a portion of the invention can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide a method and/or solution in accordance with the present invention.
  • the program instructions for invoking the method of the present invention may be stored in a fixed or removable recording medium and/or transmitted by a data stream in a broadcast or other signal bearing medium, and/or stored in a The working memory of the computer device in which the program instructions are run.
  • an embodiment in accordance with the present invention includes a device including a memory for storing computer program instructions and a processor for executing program instructions, wherein when the computer program instructions are executed by the processor, triggering
  • the apparatus operates based on the aforementioned methods and/or technical solutions in accordance with various embodiments of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Navigation (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Abstract

一种自主定位导航设备(1),用于对宿主设备(2)进行定位导航。该自主定位导航设备(1)包括:第一传输装置(11)、第二传输装置(12)和处理装置(13);其中,第一传输装置(11)与宿主设备(2)的底层装置(22)进行数据通信,以获取底层定位导航相关信息和发送用于控制宿主设备(2)运动的运动控制命令;第二传输装置(12)与宿主设备(2)的上层装置(21)进行数据通信,以获取上层定位导航相关信息和发送用于宿主设备(2)进行业务逻辑分析的运动相关逻辑数据;处理装置(13)获取若干传感信息、底层定位导航相关信息和上层定位导航相关信息,并生成运动相关逻辑数据和运动控制命令。

Description

自主定位导航设备、定位导航方法及自主定位导航*** 技术领域
本发明涉及机器人领域,尤其涉及一种定位导航的技术。
背景技术
自主定位导航功能是实现服务机器设备实用化的关键,它允许机器人在没有人为辅助的情况下,自主地通过传感器数据构建出所在环境的地图信息,并实时进行环境位置的定位。进一步的,利用构建的地图数据和位置信息进行导航,机器人需要智能的规划处路径前往任务规定的目标地点,并且有效的规避环境中的行人、家具等障碍物。
目前上述自主定位导航功能在业内是分别通过同步定位导航算法(SLAM,Simultaneous localization and mapping)以及运动规划(Motion Planning)算法进行实现。同步定位导航算法允许机器人在任意未知环境中通过特定传感器数据,边建立地图的同时边实时定位,是目前自主定位导航中最为有效的算法。而为了让机器人展开行动,就需要采用某种运动规划算法进行机器人运动轨迹的规划并在行动中让机器人动态的规避各种障碍物,安全抵达目的地。
然而,目前在服务机器人中直接运行上述算法存在较多的挑战。首先,由于这类算法与机器人本身的实现存在高度耦合性,目前世面上尚不存在一个通用的,在不做出修改即可运行在任意机器人中的现成算法实现。这就导致机器人开发人员必须针对不同的机器人重新设计开发上述的同步定位导航和运动规划算法。然而,要实现这类算法要求开发人员具有比较深厚的理论功底,并且实现过程复杂繁琐耗时,因此只有少数的有实力厂家和学术机构有能力直接在自家机器人当中有效的使用自主定位导航算法。ROS(Robot Operating System)是目前行业内对这类通用型算法实现做的一次尝试,它将各算法模块作为独立接口的模块,方便开发人员使用。但由于ROS仅仅是软件层面的***,并且不具有与具体机器人***底层和上层协作的能力,因此它并不能缓解上述对于这类算法的使用难度问 题。另一方面,由于这类算法自身的复杂性,目前即使主流的计算机***在运行这类算法时也具有较大的负载压力。而要将这类算法高效的运行于采用较低运算性能的嵌入式计算***的服务机器人当中,就必须要要求开发人员对现有的算法做出一定的优化实现,这更进一步的加大了直接使用这类算法的难度。其次,为了进行地图绘制、实时定位以及障碍物规避,开发人员必须为机器人配备多种传感器,用于给上述算法提供数据。而各类传感器的性能差异,校正效果的好坏也很大的影响着导航定位算法的执行效果。
由于上述现状,目前自主定位导航功能难以被广大的服务机器人中所采用。如今世面上出现的具有自主定位导航的机器人往往被大型实力企业和研究机构占领,并且由于***的高度耦合性和异化,导致目前的机器人软件***难以在不同机器人之间重复使用,这极大的阻碍了服务机器人的产业化进程。
为解决该现状最直接的途径是将定位导航功能实现为独立的模块化***,将广大服务机器人开发人员的工作负担从重复实现导航定位算法中解放出来。然而,现有的实现难以在可扩展灵活性与外部***耦合度之间找到平衡点。对于可以快速整合进入机器人的导航定位设备,往往功能较为固定单一,用户难以在其基础上扩展出自身所需要的功能。而具有较大扩展灵活度的设备,也会因为与机器人***存在较大的外部依赖,在整合过程中存在很大的技术难度。
产生该问题的根源在于这类定位导航算法对于不同机器人平台中的传感器配置、机器人外形尺寸、驱动模式都具有很大的依赖度。即自主定位导航设备与机器人宿主设备存在很高的耦合度。这种耦合度将导致作为宿主的机器人***的开发人员需要为适配一个自主定位导航设备做出较多的准备工作。此外,由于机器人的具体工作行为是受该机器人的用途定义的,比如清扫机器人要求在运动规划算法能够进行沿着墙壁边沿行走随后进行弓字形往复行走的路径规划模式,而一个安防巡逻机器人却要求机器人以尽可能少的代价对环境完成一次巡逻任务。目前尚没有一个自主定位导航设备可以很好的处理这种业务逻辑的差异化。
发明内容
本发明的一个目的是提出高度模块化的自主定位导航设备、并基于自主定位导航设备实现定位导航方法及基于所述自主定位导航设备实现的自主定位导航***,以降低自主定位导航设备对宿主设备的依赖、并提高自身的可扩展性。
为实现上述目的,根据本申请一方面提供的一种自主定位导航设备,所述自主定位导航设备用于对宿主设备进行定位导航,所述自主定位导航设备包括:第一传输装置、第二传输装置和处理装置;其中,
所述第一传输装置与所述宿主设备的底层装置进行数据通信,以获取底层定位导航相关信息和发送用于控制所述宿主设备运动的运动控制命令;
所述第二传输装置与所述宿主设备的上层装置进行数据通信,以获取上层定位导航相关信息和发送用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
所述处理装置获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成所述运动相关逻辑数据和所述运动控制命令。
根据本申请另一方面提供的一种利用自主定位导航设备进行定位导航的方法,其中,所述自主定位导航设备用于对宿主设备进行定位导航,所述自主定位导航设备包括处理装置、第一传输装置和第二传输装置;其中,所述方法包括:
A所述第一传输装置从所述宿主设备的底层控制装置获取底层定位导航相关信息,所述第二传输装置从所述宿主设备的上层控制装置获取上层定位导航相关信息;
B所述处理装置获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
C所述第一传输装置将所述运动控制命令发送至所述宿主设备的底层 控制装置,所述第二传输装置将所述运动相关逻辑数据发送至所述宿主设备的上层控制装置。
根据本申请再一方面提供的一种定位导航的方法,其中,所述方法包括:
a获取宿主设备的底层定位导航相关信息和上层定位导航相关信息;
b获取若干传感信息,并对若干所述传感信息进行预处理和预融合;
c基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
d将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备。
根据本申请还一方面提供的一种自主定位导航设备,其中,所述自主定位导航设备包括:
第一装置,用于获取宿主设备的底层定位导航相关信息和上层定位导航相关信息;
第二装置,用于获取若干传感信息,并对若干所述传感信息进行预处理和预融合;
第三装置,用于基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
所述第一装置还用于将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备。
与现有技术相比,根据本申请的实施例,本申请所述自主定位导航设备具有高度模块化,极大的降低了与宿主设备的耦合度、便于快速整合进入现有的宿主设备并可灵活扩展的优点。从而使得机器人等宿主设备具有更简洁、清晰的***构成,极大的降低了具有自主定位导航设备的宿主设备的开发难度和时间周期。并且得益于自主定位导航设备的高度模块化, 使得宿主设备的小体积化成为可能。
进一步地,所述自主定位导航设备通过归纳了大部分自主定位导航设备所需要的传感信息依赖,将对若干传感信息的处理集成到自主定位导航设备本身,因此降低了与宿主设备的耦合程度。
进一步地,所述自主定位导航设备通过第一传输装置和第二传输装置,形成具有高度灵活性的统一外部通讯接口和协议规范,使得任何符合该接口协议规范的宿主设备均可轻松实现与自主定位导航设备1的对接并实现功能的扩展。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出根据本申请一方面提供的一种自主定位导航设备与宿主设备的配合结构示意图;
图2示出根据本申请一优选实施例中一种自主定位导航设备的结构示意图;
图3示出根据本申请一优选实施例中一种自主定位导航设备的第一传输装置与宿主设备的底层控制装置的配合过程中数据传输示意图。
图4示出根据本申请另一方面提供的一种自主定位导航设备的定位导航方法;
图5示出根据本申请一优选实施例提供的一种自主定位导航设备与宿主设备的配合结构示意图。
图6示出根据本申请一优选实施例提供的一种自主定位导航设备与宿主设备的配合结构示意图。
图7示出根据本申请再一优选实施例提供的一种自主定位导航设备与宿主设备的配合结构示意图;
图8示出根据本申请一优选实施例提供的一种定位导航方法。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
本申请旨在提出一种高度模块化的自主定位导航设备及自主定位导航设备,以降低对宿主设备的依赖、并提高自身的可扩展性。
图1示出根据本申请一方面提供的一种自主定位导航设备与宿主设备的配合结构示意图,其中,所述自主定位导航设备1用于为宿主设备2提供定位导航功能,所述自主定位导航设备1包括:第一传输装置11、第二传输装置12、处理装置13。
其中,所述第一传输装置11与所述宿主设备2的底层控制装置进行数据通信,以获取底层定位导航相关信息和发送用于控制所述宿主设备2运动的运动控制命令;所述第二传输装置12与所述宿主设备2的上层装置进行数据通信,以获取上层定位导航相关信息和发送用于所述宿主设备2进行业务逻辑分析的运动相关逻辑数据;所述处理装置13获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成所述运动相关逻辑数据和所述运动控制命令。
在此,所述宿主设备2可以是自动执行工作的机器装置,例如机器人等。所述宿主设备2既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动,以协助或取代人类的工作。其中,所述宿主设备2具有处理业务逻辑、分析制定行动目标的上层控制装置,还具有驱使执行机构运动的底层控制装置,即能够按照控制设备发出的控制信号,借助于动力元件使宿主设备2进行各种动作,其中,输入的控制信号是电信号,输出的是线、角位移量。所述宿主设备2使用的驱动装置可以是电力驱动装置(机械轮组),如步进电机、伺服电机等,此外也可以是采用液压、气动等驱动装置等。优选地,所述自主定位导航设备1搭设于所述宿主设备2上。
在此,所述底层定位导航相关信息可以包括所述宿主设备2的轮组状态信息,此外还可以包括宿主设备2的参数信息,所述上层定位导航相关信息可以包括所述宿主设备2需要进行运动规划的请求和/或所述宿主设备2需要其底层控制装置进行运动控制的请求,所述运动相关逻辑数据包 括地图数据、同步定位数据及运动规划逻辑数据。
具体地,第一传输装置11与宿主设备2的与所述宿主设备2的底层装置进行数据通信,以获取底层定位导航相关信息和发送用于控制所述宿主设备2运动的运动控制命令。所述第一传输装置11(控制信号接口)主要用于获取所述宿主设备2的底层运作状态,比如电机工作情况、轮组编码器数据,同时自主定位导航设备1对于宿主设备2的运动控制命令也通过所述第一传输装置11进行发送。
其中,所述自主定位导航设备1与所述宿主设备2在所述第一传输装置11中采用预先定义的统一通讯协议交换数据。所述第一传输装置11在实现上优选地采用UART串口(通用异步收发传输器,Universal Asynchronous Receiver Transmitter),因为UART串口被几乎所有的单片机和嵌入式设备所支持,所述宿主设备2仅需要实现预先定义好的通讯协议的处理,即可实现自主定位导航设备1与所述宿主设备2的协作,从而可以最大限度的方便宿主设备2与自主定位导航设备1的整合。此外,根据具体应用需求,诸如CAN总线(Controller Area Network,CAN)、SPI总线(串行外设接口,Serial Peripheral Interface)、I2C总线等同样可以完成控制信号通讯的接口形式也可被使用于所述第一传输装置11。此外,一个自主定位导航设备1上还可以包含任意多个、任意多种不同类型物理接口实现上述的控制信号所述第一传输装置11。
进一步地,为了适应更多不同类型的传感器,所述第一传输装置11上还定义了一种抽象化的外部传感器数据获取协议,可以实现对于任意类型传感器的支持。
在一优选的实施例中,所述第一传输装置11传递的协议数据类型包括:从所述宿主设备2向所述自主定位导航设备1发送的宿主设备2的参数信息、轮组状态信息和宿主设备2传感信息,以及从所述自主定位导航设备1向所述宿主设备2发送的运动控制命令,所述宿主设备2的参数信息描述了宿主设备2的相关的配置参数,例如但不限于设备尺寸、驱动模式、安装的传感器种类以及位置等;所述轮组状态信息描述宿主设备2的各轮组运转数据,例如但不限于里程计信息;所述宿主设备2传感信息描 述宿主设备2上装备的希望自主定位导航设备1处理的额外传感器的抽象数据定义描述宿主设备2上装备的希望自主定位导航设备1处理的额外传感器的抽象数据定义;所述运动控制命令描述了定位导航识别期望宿主设备2进行移动的描述。所述运动控制命令包括自主定位导航设备1期望宿主设备2进行移动的描述。
图3示出根据本申请一优选实施例中一种自主定位导航设备1的第一传输装置与宿主设备2的底层控制装置的配合过程中数据传输示意图。在自主定位导航设备1开始运作的时刻,宿主设备2需要首先向自主定位导航设备1提供包含了自身信息相关的宿主设备2的参数信息,宿主设备2的参数信息用于描述当前宿主设备2的平台特性,比如自身的尺寸信息,驱动模式(两轮差分驱动/全向轮结构等),外置传感器(即外置传感器)安装的位置和角度以及如额外装配了其他传感器,则需要在此时将这类传感器的相关描述信息提供给自主定位导航设备1。
在收到了宿主设备2的参数信息之后,自主定位导航设备1将进行必要的初始化工作来适配当前的宿主设备2。随后,自主定位导航设备1将定期向宿主设备2发送所述运动控制命令。所述运动控制命令用于描述自主定位导航设备1下一刻期望宿主设备2进行移动的模式。对于采用双轮差分驱动的机器人而言,所述运动控制命令可以是左右轮组期望的运转速度量,对于采用万向轮方式的机器人,则所述运动控制命令可以是机器人下一时刻进行平移和转动的线速度(v)和角速度(w)。在自主定位导航设备1定期发送所述运动控制命令的同时,宿主设备2也需要定期向自主定位导航设备1发送描述自身运动情况的轮组状态信息。该信息一般包含了宿主设备2相对于上一时刻的位移量和航向角的变化量。而对于采用双轮查分驱动的宿主设备2,所述轮组状态信息可直接发送左右轮的累计转动圈数或者是累计行进的里程计信息。
与此同时,如果宿主设备2中如安装了一个或多个额外的传感器,也可定期向自主定位导航设备1发送宿主设备2传感信息,其中包含了具有统一定义的传感器数据描述信息。自主定位导航设备1可通过接受该传感器数据描述信息对额外的外部传感器进行处理,从而扩充自身的功能。
本领域技术人员应能够理解,上述数据是为了确保自主定位导航设备1正常运作所必须通过所述第一传输装置11传递的最小数据类型集合,仅为自主定位导航设备1的所述第一传输装置11和宿主设备2的底层控制装置21之间的通信过程中所传输的数据的优选的举例,为了扩充和增强自主定位导航设备1功能,在具体实现当中也可新增多种额外的数据协议类型,其他可能适用于本申请的适用在自主定位导航设备1的所述第一传输装置11和宿主设备2的底层控制装置21之间传输数据类型,仍可用引用的方式包含于此。
进一步地,所述第二传输装置12与所述宿主设备2的上层控制装置连接以进行数据通信。所述第二传输装置12(高速信号接口)用于实现自主定位导航设备1和宿主设备2的上层控制装置的数据交互工作,例如地图数据、定位坐标以及控制路径规划数据和宿主设备2行为数据传输等与业务逻辑相关的协作数据均通过所述第二传输装置12进行传输。
所述第二传输装置12在实现上优选地采用802.11规范的以太网接口,实现与外部宿主设备2进行大数据吞吐的通讯。随着应用需要,所述第二传输装置12也可包含WIFI无线通讯接口、USB接口、光纤接口等同样可以实现大数据量交互的通讯方式。此外,随着具体实现需求不同,高速信号接口中可以包含多组以太网接口、多种不同类型的接口形式:例如同时具有有线的以太网接口以及无线的WIFI接口。
在一优选的实施例中,所述第二传输装置12负责传输从自主定位导航设备1到所述宿主设备2的上层控制装置的地图数据、包括位置姿态信息和定位状态信息的同步定位数据及包括运动状态信息的运动规划逻辑数据,以及从宿主设备2到自主定位导航设备1的上层控制装置的运动执行请求、底层运动控制请求。其中,所述地图数据包括由自主定位导航设备1构建的特定区域的地图数据;所述位置姿态信息包括由自主定位导航设备1计算得到的当前宿主设备2的空间位置和姿态信息;所述定位状态信息包括由自主定位导航设备1计算得到的地图尺寸、定位状态(如协方差、是否成功定位);所述运动状态信息包括当前自主定位导航设备1正在执行的运动规划算法信息,例如但不限于比如正在进行路径规划时刻的规 划路径;所述运动执行请求包括宿主设备2要求自主定位导航设备1执行的内置运动规划算法的请求包;底层运动控制请求包括所述宿主设备2要求自主定位导航设备1直接控制宿主设备的底层***进行运动的请求包,比如例如但不限于请求控制机器人前往特定目的地。
具体地,所述地图数据描述了宿主设备2所感兴趣的地图数据信息。该地图数据总是位于由自主定位导航设备1预先构建的环境地图中的一部分。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据。所述位置姿态信息包含了由自主定位导航设备1计算得到的宿主设备2当前的位置坐标和姿态信息。例如,对于采用激光雷达进行二维环境移动的轮式机器人而言,该信息可以为机器人在平面内的坐标(x,y)以及航向角θ。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据,也可以由自主定位导航设备1主动地向宿主设备2推送该数据。所述定位状态信息用于描述自主定位导航设备1目前进行定位和地图构建的工作情况。其包含的信息包含目前已经构建的地图总尺寸、定位精度信息、定位是否成功以及其他被宿主设备2所必要的数据集合。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据,也可以由自主定位导航设备1主动地向宿主设备2推送该数据。所述运动状态信息描述了目前自主定位导航设备1正在进行的运动规划算法的执行情况。比如当前正在工作的运动规划算法的类型(空闲、路径规划、自主返回充电等)、已规划的通往目标地点的路径数据、要求宿主设备2进行的运动控制量等信息。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据,也可以由自主定位导航设备1主动地向宿设备2统推送该数据。所述运动执行请求用于宿主设备2向自主定位导航设备1发起一个内置于自主定位导航设备1内部的运动规划算法的相关描述数据。一般实现中包含了宿主设备2希望执行的运动规划算法的类型(停止所有动作、路径规划、自主返回充电等)、相关的参数(目标地点坐标、移动速度等)。该信息由宿主设备2主动向自主定位导航设备1发起。所述底层运动控制请求用于宿主设备2通过自主定位导航设备1直接向宿主设备2的底层控制装置21下达运动相关的控制命令请求。该数据包用于实现对于自主定位导航设备1内 部现有运动控制算法的逻辑改写和扩充。一般实现中,该请求可以实现宿主设备2直接进行特定速度的前进、后退、旋转等底层的运动。对于双轮差分驱动的机器人,底层运动控制请求也可以包含对于左右轮电机转速的直接控制数据。
本领域技术人员应能够理解,上述自主定位导航设备1的第二传输装置12和宿主设备2的上层控制装置22之间的通信过程中所传输的数据为优选的举例,包括应该支持的最小数据包协议的集合,其他可能适用于本申请的适用在自主定位导航设备1的第二传输装置12和宿主设备2的上层控制装置22之间传输数据类型,仍可用引用的方式包含于此。
本申请所述自主定位导航设备1通过所述第一传输装置11和所述第二传输装置12协作,明确了自主定位导航设备1与宿主设备2之间的通讯规范和依赖关系,所述自主定位导航设备1与所述宿主设备2的交互和数据依赖均发生在所述第一传输装置11和所述第二传输装置12其中一条通讯接口链路上。
进一步地,所述处理装置13获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成所述运动相关逻辑数据和所述运动控制命令。具体地,所述处理装置13基于若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据,并基于所述同步定位数据、所述地图数据及所述宿主设备2的上层定位导航相关信息生成运动规划逻辑数据和所述运动控制命令。
进一步地,所述第一传输装置11还可以从所述宿主设备2的底层控制装置获取宿主设备2自有传感器的宿主设备2传感信息,所述处理装置13可以结合宿主设备2传感信息和若干所述传感信息进行数据处理,具体地,所述第一传输装置11还从所述宿主设备2的底层控制装置获取宿主设备2传感信息;所述处理装置13基于所述宿主设备2传感信息、若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成所述宿主设备2的运动控制相关信息。
优选地,所述底层定位导航相关信息还包括所述宿主设备2的参数信 息;在自主定位导航设备1和宿主设备2进行初始化的阶段,所述第一传输装置11获取所述参数信息,所述处理装置13还基于所述参数信息生成运动初始控制命令,所述第一传输装置11将所述运动初始控制命令发送至所述宿主设备2的底层装置。
进一步地,所述自主定位导航设备1还包括内置传感器14和外置传感器15;其中,所述处理装置13从所述内置传感器14和外置传感器15获取若干所述传感信息。
在优选的实施例中,所述内置传感器14包括至少以下任一项:陀螺仪、加速度传感器、电子罗盘、温度传感器、湿度传感器、气压传感器。所述外置传感器包括至少以下任一项:激光雷达、声呐雷达、视觉传感器、UWB信标传感器。
在此,所述内置传感器13是集成在自主定位导航设备1内部的一系列传感器。所述内置传感器14在实现上可以包含采用MEMS技术的陀螺仪、加速度计、电子罗盘等惯性导航传感器,以及温度传感器、湿度传感器、气压传感器等传感器中的一种或几种的组合。所述内置传感器14的特点是可以在物理集成安装上直接放置于自主定位导航设备1中,例如所述自主定位导航设备1内部的PCB上等,无需外部宿主设备2的协助即可自行采集相关的内置传感信息。此外,随着具体的实现和应用需求不同,内置传感器13可以包含更多不同类型的传感器。
所述内置传感器14所获取的内置传感信息可以用于确定当前自主定位导航设备1所处于环境的俯仰角、翻滚角、航向角、高度信息、环境温度以及湿度等,以便于所述处理装置13进行宿主设备2的姿态解算任务。
在此,所述外置传感器15优选地包括激光雷达、视觉传感器(摄像头等)、UWB(Ultra-Wideband)信标传感器等一种或几种组合,具体地选择与自主定位导航设备1中具体运行的算法有关。随定位导航算法的不同,可能会包含多个、多种不同类型的外置传感器15。例如,为了增加定位和地图构建效果,一个自主定位导航设备1内可以同时采用多个激光雷达以及多个视觉传感器部件。外置传感器15与内置传感器13的区别在于前者需要在外部环境进行直接的测量和观测,因此无法像内置传感器13那样 在物理安装上直接放置于自主定位导航设备1内部,而必须裸露在外部,以方便直接测量物理环境。所述外置传感器15的安装的位置和角度、及额外装配了其他传感器的相关描述信息,在所述自主定位导航设备1初始化阶段通过所述第一传输装置11传输。
在本申请优选的实施例中,在具体的硬件设备实现上,上述部分装置可能会随着所述自主定位导航设备1的具体硬件芯片的选择,在物理上被设计成同一个芯片内,也可能同一个部件是由多个不同的分立硬件所构成的。此外,为了让设备运行,在具体实现上也会增加额外的功能单元,比如内部的供电管理装置,但这些部分并不是构成本发明自主定位导航设备1所必须的硬件单元。
在优选的实施例中,所述处理装置13主要用于运行自动定位导航相关的算法,例如包含但不限于:同步定位与建图(SLAM)、路径规划算法、障碍物躲避算法以及对内置传感器数据进行机器人空间姿态解算的算法。在实现上,所述处理装置13可以由一个或者多个计算机***所构成,也可以是专用ASIC芯片(Application Specific Integrated Circuit)或者FPGA芯片(Field-Programmable Gate Array)等纯硬件化实现。当采用通用的计算机***实现时,该单元内将包含一个或多个CPU单元(Central Processing Unit)、随机存储器(RAM)以及用于存放永久性程序和数据的ROM。
可选地,所述处理装置13包括主处理单元和从处理单元,其中,所述主处理单元基于若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成所述宿主设备2的所述运动相关逻辑数据和所述运动控制命令;所述从处理单元实时从所述内置传感器获取所述传感信息,以获取姿态解算任务,并将所述运动控制命令通过所述第一传输装置发送至所述宿主设备2的底层控制装置。
图2示出根据本申请一优选实施例中一种自主定位导航设备1的结构示意图,其中,所示的控制信号接口对应图1的所述第一传输装置11,所示的高速信号接口对应图1的所述第二传输装置12;所述处理装置13包括主处理单元和从处理单元,主运算单元(优选地为CPU)对应图1所示 的所述主处理单元,所示的从运算单元(优选地为MCU,Microcontroller Unit)对应图1所述从处理单元。为表述方便,我们将在本实施例中对所述第一传输装置11与所述控制信号接口、所述第二传输装置与所述高速信号接口、所述主处理单元与所述主运算单元、所述从处理单元与所述从运算单元分别进行互换使用。
其中,所述处理装置13在实现上使用了一个主运算单元和一个从运算单元。其中,主运算单元具有较强的运算能力,绝大部分的定位导航算法被安排在其中进行运算。从运算单元采用单片机实现,其运算能力相对较弱,但具有很好的实时性,因此被用来进行对从内置传感器获取数据的姿态解算任务,同时也负责实现设备中定义的控制信号接口,负责和外部宿主设备2的底层控制装置进行通讯。上述实现中包含了2个实现高速信号接口的物理接口:100M以太网接口以及802.11b/g WIFI无线网络接口。宿主设备2可按照自身需求,通过其中任意的一条具体物理接口与定位导航模块通讯。
此外,图2中的电子罗盘、陀螺仪、加速度计以及气压计构成了内置传感器,他们可以采集得到当前自主定位导航设备1所处于环境的俯仰角、翻滚角、航向角以及高度信息,配套的外置传感器在上述实现中使用了激光雷达。
需要指出的是,上述仅为本申请所述自主定位导航设备在硬件上的一种参考设计实现。为了实现申请所属设备,其他可实现等价硬件构成和外部接口的方案都是可以被使用的。
相比于现有技术,本申请优选实施例所述自主定位导航设备1通过归纳了大部分自主定位导航设备1所需要的传感器,将陀螺仪、加速度计以及电子罗盘等惯性导航传感器等作为内置传感器物理融合入自主定位导航设备1的内部,并直接物理搭配激光、雷达或视觉传感器等外置传感器,以将定位导航所依赖的几乎所有传感器数据在自主定位导航设备1内的处理装置进行处理。因此,极大降低了对宿主设备2的传感器的依赖,所述宿主设备2即使在不具备额外传感器配备的情况下自主定位导航设备1也可完成定位导航工作,从而很好地解决了现有导航定位设备普遍存在的与宿主设备2的高 耦合性,并同时保证了灵活的可扩展性。
图4示出根据本申请一方面提供的一种利用自主定位导航设备1的定位导航方法,其中,所述自主定位导航设备1用于对宿主设备2进行定位导航,所述自主定位导航设备1包括处理装置、第一传输装置和第二传输装置;其中,所述方法包括:步骤S11、步骤S12和步骤S13。
所述步骤S11:所述第一传输装置从所述宿主设备2的底层控制装置获取底层定位导航相关信息,所述第二传输装置从所述宿主设备2的上层控制装置获取上层定位导航相关信息;所述步骤S12:所述处理装置获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成用于控制所述宿主设备2运动的运动控制命令和用于所述宿主设备2进行业务逻辑分析的运动相关逻辑数据;所述步骤S13:所述第一传输装置将所述运动控制命令发送至所述宿主设备2的底层控制装置,所述第二传输装置将所述运动相关逻辑数据发送至所述宿主设备2的上层控制装置。
在此,所述宿主设备2可以是自动执行工作的机器装置,例如机器人等。所述宿主设备2既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动,以协助或取代人类的工作。其中,所述宿主设备2具有处理业务逻辑、分析制定行动目标的上层控制装置,还具有驱使执行机构运动的底层控制装置,即能够按照控制设备发出的控制信号,借助于动力元件使宿主设备2进行各种动作,其中,输入的控制信号是电信号,输出的是线、角位移量。所述宿主设备2使用的驱动装置可以是电力驱动装置(机械轮组),如步进电机、伺服电机等,此外也可以是采用液压、气动等驱动装置等。
在此,所述底层定位导航相关信息可以包括所述宿主设备2的轮组状态信息,所述上层定位导航相关信息可以包括所述宿主设备2需要进行运动规划的请求和/或所述宿主设备2需要其底层控制装置进行运动控制的请求,所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据。
具体地,在所述步骤S11和所述步骤S13中,所述第一传输装置11 与所述宿主设备2的底层装置进行数据通信,所述第二传输装置12与所述宿主设备2的上层装置进行数据通信,所述第一传输装置从所述宿主设备2的底层控制装置获取底层定位导航相关信息,所述第二传输装置从所述宿主设备2的上层控制装置获取上层定位导航相关信息,所述第一传输装置将所述运动控制命令发送至所述宿主设备2的底层控制装置,所述第二传输装置将所述运动相关逻辑数据发送至所述宿主设备2的上层控制装置。
在此,所述第一传输装置的内容与图1所示的第一传输装置11的内容相同或基本相同,所述第二传输装置的内容与图1所示的第二传输装置12的内容相同或基本相同,为简明起见,不再赘述,仅以引用的方式包含于此。
本申请所述定位导航方法通过所述第一传输装置11和所述第二传输装置12协作,明确了自主定位导航设备1与宿主设备2之间的通讯规范和依赖关系,所述自主定位导航设备1与所述宿主设备2的交互和数据依赖均发生在所述第一传输装置11和所述第二传输装置12其中一条通讯接口链路上。
图3示出根据本申请一优选实施例中一种自主定位导航设备1的第一传输装置与宿主设备2的底层控制装置的配合过程中数据传输示意图。在自主定位导航设备1开始运作的时刻,宿主设备2需要首先向自主定位导航设备1提供包含了自身信息相关的宿主设备2的参数信息,宿主设备2的参数信息用于描述当前宿主设备2的平台特性,比如自身的尺寸信息,驱动模式(两轮差分驱动/全向轮结构等),外置传感器安装的位置和角度以及如额外装配了其他传感器,则需要在此时将这类传感器的相关描述信息提供给自主定位导航设备1。
在收到了宿主设备2的参数信息之后,自主定位导航设备1将进行必要的初始化工作来适配当前的宿主设备2。随后,自主定位导航设备1将定期向宿主设备2发送所述运动控制命令。所述运动控制命令用于描述自主定位导航设备1下一刻期望宿主设备2进行移动的模式。对于采用双轮差分驱动的机器人而言,所述运动控制命令可以是左右轮组期望的运转速 度量,对于采用万向轮方式的机器人,则所述运动控制命令可以是机器人下一时刻进行平移和转动的线速度(v)和角速度(w)。在自主定位导航设备1定期发送所述运动控制命令的同时,宿主设备2也需要定期向自主定位导航设备1发送描述自身运动情况的轮组状态信息。该信息一般包含了宿主设备2相对于上一时刻的位移量和航向角的变化量。而对于采用双轮查分驱动的宿主设备2,所述轮组状态信息可直接发送左右轮的累计转动圈数或者是累计行进的里程计信息。
与此同时,如果宿主设备2中如安装了一个或多个额外的传感器,也可定期向自主定位导航设备1发送宿主设备2传感信息,其中包含了具有统一定义的传感器数据描述信息。自主定位导航设备1可通过接受该传感器数据描述信息对额外的外部传感器进行处理,从而扩充自身的功能。
本领域技术人员应能够理解,上述数据是为了确保自主定位导航设备1正常运作所必须通过所述第一传输装置11传递的最小数据类型集合,仅为自主定位导航设备1的所述第一传输装置11和宿主设备2的底层控制装置21之间的通信过程中所传输的数据的优选的举例,为了扩充和增强自主定位导航设备1功能,在具体实现当中也可新增多种额外的数据协议类型,其他可能适用于本申请的适用在自主定位导航设备1的所述第一传输装置11和宿主设备2的底层控制装置21之间传输数据类型,仍可用引用的方式包含于此。
在一优选的实施例中,所述第二传输装置12负责传输从自主定位导航设备1到所述宿主设备2的上层控制装置的地图数据、包括位置姿态信息和定位状态信息的同步定位数据及包括运动状态信息的运动规划逻辑数据,以及从宿主设备2到自主定位导航设备1的上层控制装置的运动执行请求、底层运动控制请求。其中,所述地图数据包括由自主定位导航设备1构建的特定区域的地图数据;所述位置姿态信息包括由自主定位导航设备1计算得到的当前宿主设备2的空间位置和姿态信息;所述定位状态信息包括由自主定位导航设备1计算得到的地图尺寸、定位状态(如协方差、是否成功定位);所述运动状态信息包括当前自主定位导航设备1正在执行的运动规划算法信息,例如但不限于比如正在进行路径规划时刻的规 划路径;所述运动执行请求包括宿主设备2要求自主定位导航设备1执行的内置运动规划算法的请求包;底层运动控制请求包括所述宿主设备2要求自主定位导航设备1直接控制宿主设备2的底层***进行运动的请求包,比如例如但不限于请求控制机器人前往特定目的地。
具体地,所述地图数据描述了宿主设备2所感兴趣的地图数据信息。该地图数据总是位于由自主定位导航设备1预先构建的环境地图中的一部分。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据。所述位置姿态信息包含了由自主定位导航设备1计算得到的宿主设备2当前的位置坐标和姿态信息。例如,对于采用激光雷达进行二维环境移动的轮式机器人而言,该信息可以为机器人在平面内的坐标(x,y)以及航向角θ。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据,也可以由自主定位导航设备1主动地向宿主设备2推送该数据。所述定位状态信息用于描述自主定位导航设备1目前进行定位和地图构建的工作情况。其包含的信息包含目前已经构建的地图总尺寸、定位精度信息、定位是否成功以及其他被宿主设备2所必要的数据集合。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据,也可以由自主定位导航设备1主动地向宿主设备2推送该数据。所述运动状态信息描述了目前自主定位导航设备1正在进行的运动规划算法的执行情况。比如当前正在工作的运动规划算法的类型(空闲、路径规划、自主返回充电等)、已规划的通往目标地点的路径数据、要求宿主设备2进行的运动控制量等信息。宿主设备2可随自身需要,随机的向自主定位导航设备1获取该数据,也可以由自主定位导航设备1主动地向宿设备2统推送该数据。所述运动执行请求用于宿主设备2向自主定位导航设备1发起一个内置于自主定位导航设备1内部的运动规划算法的相关描述数据。一般实现中包含了宿主设备2希望执行的运动规划算法的类型(停止所有动作、路径规划、自主返回充电等)、相关的参数(目标地点坐标、移动速度等)。该信息由宿主设备2主动向自主定位导航设备1发起。所述底层运动控制请求用于宿主设备2通过自主定位导航设备1直接向宿主设备2的底层控制装置21下达运动相关的控制命令请求。该数据包用于实现对于自主定位导航设备1内 部现有运动控制算法的逻辑改写和扩充。一般实现中,该请求可以实现宿主设备2直接进行特定速度的前进、后退、旋转等底层的运动。对于双轮差分驱动的机器人,底层运动控制请求也可以包含对于左右轮电机转速的直接控制数据。
本领域技术人员应能够理解,上述自主定位导航设备1的第二传输装置12和宿主设备2的上层控制装置22之间的通信过程中所传输的数据为优选的举例,包括应该支持的最小数据包协议的集合,其他可能适用于本申请的适用在自主定位导航设备1的第二传输装置12和宿主设备2的上层控制装置22之间传输数据类型,仍可用引用的方式包含于此。
接着,在所述步骤S12中,所述处理装置获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成用于控制所述宿主设备2运动的运动控制命令和用于所述宿主设备2进行业务逻辑分析的运动相关逻辑数据。
在此,所述处理装置的内容与图1所示的所述处理装置13的内容相同或基本相同,为简明起见,不再赘述,仅以引用的方式包含于此。
进一步地,所述自主定位导航设备1还包括内置传感器和外置传感器;所述步骤S12还包括:所述处理装置从所述内置传感器和外置传感器获取若干所述传感信息。
其中,所述内置传感器的内容与图1所示的内置传感器14的内容相同或基本相同,所述外置传感器与图1所示的外置传感器15的内容相同或基本相同,为简明起见,不再赘述,仅以引用的方式包含于此。
进一步地,所述步骤S11还包括:所述第一传输装置从所述宿主设备2的底层控制装置获取宿主设备2传感信息;所述步骤S12包括:所述处理装置基于所述宿主设备2传感信息、若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成所述宿主设备2的运动控制相关信息。
进一步地,所述底层定位导航相关信息包括所述宿主设备2的轮组状态信息,所述上层定位导航相关信息包括所述宿主设备2需要进行运动规划的请求和/或所述宿主设备2需要其底层控制装置进行运动控制的请求, 所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;所述步骤S12包括:所述处理装置基于若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据,并基于所述同步定位数据、所述地图数据及所述宿主设备2的上层定位导航相关信息生成运动规划逻辑数据和所述运动控制命令。
优选的,在自主定位导航设备1和宿主设备2还进行初始化的阶段,所述步骤S12还包括:所述处理装置还基于所述参数信息生成运动初始控制命令;所述步骤S13还包括:所述第一传输装置将所述运动初始控制命令发送至所述宿主设备2的底层装置。
图5示出根据本申请一优选实施例提供的一种自主定位导航设备1与宿主设备2的配合结构示意图,所述自主定位导航设备1包括:第一装置31、第二装置32和第三装置33。
所述第一装置31,用于获取宿主设备2的底层定位导航相关信息和上层定位导航相关信息;所述第二装置32,用于获取若干传感信息,并对若干所述传感信息进行预处理和预融合;所述第三装置33,用于基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成用于控制所述宿主设备2运动的运动控制命令和用于所述宿主设备2进行业务逻辑分析的运动相关逻辑数据;所述第一装置31还用于将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备2。
进一步地,所述第一装置31还用于将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备2;所述第三装置33包括:第一单元331,用于所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据;第二单元332,用于基于所述同步定位数据、所述地图数据及所述宿主设备2的上层定位导航相关信息生成运动规划逻辑数据和用于控制所述宿主设备2运动的运动控制命令。
进一步地,所述第二装置32包括:第三单元,用于获取若干所述传 感信息,若干所述传感信息包括至少以下任一项:内置传感信息、外置传感信息和宿主设备2传感信息;第四单元,用于对若干所述传感信息进行预处理和预融合。
进一步地,所述第一装置31还包括:第五单元,用于将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令按照统一的数据协议格式进行封装;第六单元,用于将封装后的数据发送至所述宿主设备2。
图6示出根据本申请一优选实施例提供的一种自主定位导航设备1与宿主设备2的配合结构示意图。结合图5和图6,其中,所述自主定位导航设备1包括:定位与地图构建模块、运动规划模块、运动控制与状态获取模块及通讯交互管理模块。所述宿主设备2包括行为控制与扩展模块,其中,所述定位与地图构建模块对应于所述第一单元331,所述运动规划模块对应于所述第二单元332,所述运动控制与状态获取模块对应于所述第二装置32,所述通讯交互管理模块对应于所述第一装置31,所述行为控制与扩展模块对应于所述第四装置41,为表述方便,以下将上述对应术语进行互换使用。
其中,所述行为控制与扩展模块配合所述通讯交互管理模块进行自主定位导航设备1和宿主设备2之间的数据传输,一般在物理实现上是运行于宿主设备2的计算机内部的。但从软件层面的角度,它仍旧属于自主定位导航***整体。
其中,所述定位与地图构建模块构建地图数据和同步定位数据,具体地,所述定位与地图构建模块是对于特定同步定位与建图(SLAM)算法的实现,它可以是采用基于粒子滤波和栅格地图模型并采用激光雷达作为主要输入信号的SLAM算法,也可以是采用摄像头提供的二维数据的视觉SLAM算法。该模块通过内置传感器以及外置传感器获得输入数据,并将运算得到的地图信息和定位坐标信息提供给自主定位导航设备1内部的其他模块使用。
所述运动规划模块负责进行宿主设备2的行动控制,一般的实现上它将包含诸如A*、D*等基于地图的路径规划算法、引导宿主设备2(机器 人)进行实时障碍物规避的避障算法。随着具体应用需求,该模块也可以包含诸如自主返回充电的充电桩对接算法或者是清扫机器人需要的地面覆盖算法。该模块的另一个核心功能是接受来自外部宿主设备2中行为控制与扩展模块发回的扩展控制指令,包括所述宿主设备需要进行运动规划的请求或所述宿主设备需要其底层控制装置进行运动控制的请求,用于和自身的运动规划逻辑进行融合操作,可实现对现有运动规划算法进行扩展和修改的更复杂的控制逻辑。
所述运动控制与状态获取模块负责收集内置传感信息、外置传感信息以及来自宿主设备2的宿主设备传感信息,将他们进行必要的数据预处理和融合并提供给自主定位导航设备内其他模块使用,此外,该模块也充当了宿主设备差异的抽象层。将不同的宿主设备2平台间的差异进行隐藏以及必要的模拟,使得运行在其之上的定位与地图构建模块和运动规划模块能够最大限度的忽视具体的宿主设备2差异,采用相对通用的实现算法。
所述通讯与交互管理模块获取宿主设备2的底层定位导航相关信息和上层定位导航相关信息,负责直接通过自主定位导航设备1的高速信号接口以及控制信号接口与宿主设备2进行交互,它可以认为是对于具体通讯接口的抽象层。该模块负责将自主定位导航设备1其他模块需要的数据通过对应的接口从宿主设备2中获取,并负责将发送至宿主设备2的数据按照统一的数据协议格式进行封装后进行传输。此外,所述通讯与交互管理模块将运动控制指令及运动相关逻辑数据按照统一的协议规则进行相应地封装,封装后发送给宿主设备2。
此外,所述行为控制与扩展模块配合所述通讯交互管理模块进行自主定位导航设备1和宿主设备2之间的数据传输,以协助宿主设备2中的软件***与自主定位导航设备1进行交互协作,因此它一般运行在宿主设备2的计算机***当中。该模块可透过高速信号接口获取自主定位导航设备1其他模块提供的地图、位置坐标等状态信息,并可以通过预定义的运动规划扩展命令对运动规划模块内的现有算法进行调用执行、扩展修改等操作。在具体实现上,该模块一般以软件开发包(SDK)的形式提供给宿主设备2,并与宿主设备2中其他的软件模块进行整合。
本领域技术人员应当能够理解,上述对自主定位导航的具体算法描述均为举例,今后可能出现的并适用于本申请的,可包含在本申请的范围之内。
根据本申请又一方面提供的一种自主定位导航***,其中,所述自主定位导航***包括:前述的自主定位导航设备1和宿主设备2,其中,所述宿主设备2包括:第四装置,用于向所述自主定位导航设备1发送所述宿主设备2的底层定位导航相关信息和上层定位导航相关信息,并获取所述宿主设备2发送的用于控制所述宿主设备2运动的运动控制命令和用于所述宿主设备2进行业务逻辑分析的运动相关逻辑数据。
图7示出根据本申请再一优选实施例提供的一种自主定位导航设备1与宿主设备2的配合结构示意图。
运行在宿主设备2的行为控制与扩展模块按照职责划分成了面向宿主底层控制以及面向宿主上层业务逻辑的两个部分,分别对应图中的底层SDK(软件工具包)和上层SDK。对于面向宿主设备2的底层控制装置的部分,其通过控制信号接口与自主定位导航设备1本体进行通讯,负责进行与宿主设备2进行机器人运动信号的传递、以及传递来自宿主设备2的额外扩展传感器数据。而面向宿主设备2的上层控制装置通过高速信号接口与自主定位导航设备1本体进行通讯,它为宿主设备2提供由自主定位导航设备1产生的地图、定位坐标等信息,同时,其中包含了称为扩展运动规划框架的子模块,用于实现宿主设备2对定位导航模块内部运动规划算法逻辑的调用、扩展和行为修改工作。
在自主定位导航设备1内部,上述例子中采用激光雷达作为外置传感器,因此定位于地图构建模块采用使用粒子滤波的栅格地图的SLAM算法进行实现。SLAM所需要的传感器数据通过其他模块获取并进行必要的数据预融合后被最终读入。在SLAM模块完成处理后,得到的地图与坐标数据被暂时缓存在自主定位导航设备的内存当中,供其它模块以及外部的宿主设备2所使用。
运动规划模块中内置了可以进行任意亮点直接最短路径计算的D*路径规划算法、实时地通过各传感器数据帮助宿主设备2进行运动过程中障 碍物规避的避障算法以及自主返回充电桩进行对接充电的逻辑。当该模块运作时,其算法运算产生的控制信号将最终转化成对宿主设备的轮组控制命令,并透过控制信号接口传递给宿主设备2。
需要注意的是,上述例子仅为本发明描述的自主定位导航设备1软件部分的一种参考实现。任何其他可实现相同功能并符合本发明描述的软件***模块划分的具体实现都可被接受。
本领域技术人员应当能够理解,上述对自主定位导航的具体算法描述均为举例,今后可能出现的并适用于本申请的,可包含在本申请的范围之内。
图8示出根据本申请一优选实施例提供的一种定位导航方法,根据本申请另一方面提供的一种定位导航的方法,其中,所述方法包括:步骤S31、步骤S32、步骤S33和步骤S34。
其中,步骤S31:获取宿主设备2的底层定位导航相关信息和上层定位导航相关信息;步骤S32:获取若干传感信息,并对若干所述传感信息进行预处理和预融合;步骤S33:基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成用于控制所述宿主设备2运动的运动控制命令和用于所述宿主设备2进行业务逻辑分析的运动相关逻辑数据;步骤S34:将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备2。
进一步地,所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;所述步骤S33包括:基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据;
基于所述同步定位数据、所述地图数据及所述宿主设备2的上层定位导航相关信息生成运动规划逻辑数据和用于控制所述宿主设备2运动的运动控制命令。
进一步地,所述步骤S32包括:获取若干所述传感信息,若干所述传感信息包括至少以下任一项:内置传感信息、外置传感信息和宿主设备2 传感信息;对若干所述传感信息进行预处理和预融合。
进一步地,所述步骤S34包括:将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令按照统一的数据协议格式进行封装;将封装后的数据发送至所述宿主设备2。
继续参考图5和图6,其中,所述自主定位导航设备1包括:定位与地图构建模块、运动规划模块、运动控制与状态获取模块及通讯交互管理模块。所述宿主设备2包括行为控制与扩展模块,其中,所述定位与地图构建模块对应于所述第一单元331,所述运动规划模块对应于所述第二单元332,所述运动控制与状态获取模块对应于所述第二装置32,所述通讯交互管理模块对应于所述第一装置31,所述行为控制与扩展模块对应于所述第四装置41,为表述方便,以下将上述对应术语进行互换使用。
在步骤S31中,所述通讯与交互管理模块获取宿主设备2的底层定位导航相关信息和上层定位导航相关信息,所述通讯与交互管理模块负责可以直接通过自主定位导航设备1的高速信号接口(硬件形式接口或软件形式接口)以及控制信号接口(硬件形式接口或软件形式接口)与宿主设备2进行交互,它可以认为是对于具体通讯接口的抽象层。该模块负责将自主定位导航设备1其他模块需要的数据通过对应的接口从宿主设备2中获取,并负责将发送至宿主设备2的数据按照统一的数据协议格式进行封装后进行传输。
在所述步骤S32中,所述运动控制与状态获取模块负责收集内置传感信息、外置传感信息以及来自宿主设备2的宿主设备传感信息,将他们进行必要的数据预处理和融合并提供给自主定位导航设备内其他模块使用,此外,该模块也充当了宿主设备差异的抽象层。将不同的宿主设备2平台间的差异进行隐藏以及必要的模拟,使得运行在其之上的定位与地图构建模块和运动规划模块能够最大限度的忽视具体的宿主设备2差异,采用相对通用的实现算法。
在所述步骤S33中,所述定位与地图构建模块构建地图数据和同步定位数据,所述运动规划模块生成运动控制指令及运动相关逻辑数据,其中,所述定位与地图构建模块是对于特定同步定位与建图(SLAM)算法的实 现,它可以是采用基于粒子滤波和栅格地图模型并采用激光雷达作为主要输入信号的SLAM算法,也可以是采用摄像头提供的二维数据的视觉SLAM算法。所述定位与地图构建模块通过内置传感器以及外置传感器获得输入数据,并将运算得到的地图信息和定位坐标信息提供给自主定位导航设备1内部的其他模块使用。所述运动规划模块负责进行宿主设备2的行动控制,一般的实现上它将包含诸如A*、D*等基于地图的路径规划算法、引导宿主设备2(机器人)进行实时障碍物规避的避障算法。随着具体应用需求,该模块也可以包含诸如自主返回充电的充电桩对接算法或者是清扫机器人需要的地面覆盖算法。该模块的另一个核心功能是接受来自外部宿主设备2中行为控制与扩展模块发回的扩展控制指令,包括所述宿主设备需要进行运动规划的请求或所述宿主设备需要其底层控制装置进行运动控制的请求用于和自身的运动规划逻辑进行融合操作,可实现对现有运动规划算法进行扩展和修改的更复杂的控制逻辑。
在所述步骤S34中,所述通讯与交互管理模块将运动控制指令及运动相关逻辑数据按照统一的协议规则进行相应地封装,封装后发送给宿主设备2。
此外,所述行为控制与扩展模块配合所述通讯交互管理模块进行自主定位导航设备1和宿主设备2之间的数据传输。所述行为控制与扩展模块一般在物理实现上是运行于宿主设备2的计算机内部的。但从软件层面的角度,它仍旧属于自主定位导航***整体。所述行为控制与扩展模块的用途是协助宿主设备2中的软件***与自主定位导航设备1进行交互协作,因此它一般运行在宿主设备2的计算机***当中。该模块可透过高速信号接口获取自主定位导航设备1其他模块提供的地图、位置坐标等状态信息,并可以通过预定义的运动规划扩展命令对运动规划模块内的现有算法进行调用执行、扩展修改等操作。在具体实现上,该模块一般以软件开发包(SDK)的形式提供给宿主设备2,并与宿主设备2中其他的软件模块进行整合。
本领域技术人员应当能够理解,上述对自主定位导航的各装置的模块化描述均为举例,今后可能出现的并适用于本申请的,可包含在本申请的 范围之内。
继续参考图7,运行在宿主设备2的行为控制与扩展模块按照职责划分成了面向宿主底层控制以及面向宿主上层业务逻辑的两个部分,分别对应图中的底层SDK(软件工具包)和上层SDK。对于面向宿主设备2的底层控制装置的部分,其通过控制信号接口与自主定位导航设备1本体进行通讯,负责进行与宿主设备2进行机器人运动信号的传递、以及传递来自宿主设备2的额外扩展传感器数据。而面向宿主设备2的上层控制装置通过高速信号接口与自主定位导航设备1本体进行通讯,它为宿主设备2提供由自主定位导航设备1产生的地图、定位坐标等信息,同时,其中包含了称为扩展运动规划框架的子模块,用于实现宿主设备2对定位导航模块内部运动规划算法逻辑的调用、扩展和行为修改工作。
在自主定位导航设备1内部,上述例子中采用激光雷达作为外置传感器,因此定位于地图构建模块采用使用粒子滤波的栅格地图的SLAM算法进行实现。SLAM所需要的传感器数据通过其他模块获取并进行必要的数据预融合后被最终读入。在SLAM模块完成处理后,得到的地图与坐标数据被暂时缓存在自主定位导航设备1的内存当中,供其它模块以及外部的宿主设备2所使用。
运动规划模块中内置了可以进行任意亮点直接最短路径计算的D*路径规划算法、实时地通过各传感器数据帮助宿主设备2进行运动过程中障碍物规避的避障算法以及自主返回充电桩进行对接充电的逻辑。当该模块运作时,其算法运算产生的控制信号将最终转化成对宿主设备2的轮组控制命令,并透过控制信号接口传递给宿主设备2。
需要注意的是,上述例子仅为本发明描述的自主定位导航设备1软件部分的一种参考实现。任何其他可实现相同功能并符合本发明描述的软件***模块划分的具体实现都可被接受。
与现有技术相比,根据本申请的实施例,本申请所述自主定位导航设备1具有高度模块化,极大的降低了与宿主设备2的耦合度、便于快速整合进入现有的宿主设备2并可灵活扩展的优点。从而使得机器人等宿主设备2具有更简洁、清晰的***构成,极大的降低了具有自主定位导航设备 1的宿主设备2的开发难度和时间周期。并且得益于***的高度模块化,使得宿主设备2的小体积化成为可能。
进一步地,所述自主定位导航设备1通过归纳了大部分自主定位导航***所需要的传感信息依赖,将对若干传感信息的处理集成到自主定位导航设备1本身,因此降低了与宿主设备2的耦合程度。
进一步地,所述自主定位导航设备1通过第一传输装置和第二传输装置,形成具有高度灵活性的统一外部通讯接口和协议规范,使得任何符合该接口协议规范的宿主设备2均可轻松实现与自主定位导航设备1的对接并实现功能的扩展。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限 定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (22)

  1. 一种自主定位导航设备,其中,所述自主定位导航设备用于对宿主设备进行定位导航,所述自主定位导航设备包括:第一传输装置、第二传输装置和处理装置;其中,
    所述第一传输装置与所述宿主设备的底层装置进行数据通信,以获取底层定位导航相关信息和发送用于控制所述宿主设备运动的运动控制命令;
    所述第二传输装置与所述宿主设备的上层装置进行数据通信,以获取上层定位导航相关信息和发送用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
    所述处理装置获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成所述运动相关逻辑数据和所述运动控制命令。
  2. 根据权利要求1所述的自主定位导航设备,其中,所述自主定位导航设备还包括内置传感器和外置传感器;其中,
    所述处理装置从所述内置传感器和外置传感器获取若干所述传感信息。
  3. 根据权利要求2所述的自主定位导航设备,其中,所述内置传感器包括至少以下任一项:
    陀螺仪、加速度传感器、电子罗盘、温度传感器、湿度传感器、气压传感器。
    所述外置传感器包括至少以下任一项:
    激光雷达、声呐雷达、视觉传感器、UWB信标传感器。
  4. 根据权利要求2或3所述的自主定位导航设备,其中,所述处理装置包括主处理单元和从处理单元,其中,
    所述主处理单元基于若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成所述宿主设备的所述运动相关逻辑数据和所述运动控制命令;
    所述从处理单元实时从所述内置传感器获取所述传感信息,以获取姿态解算任务,并将所述运动控制命令通过所述第一传输装置发送至所述宿 主设备的底层控制装置。
  5. 根据权利要求1至4中任一项所述的自主定位导航设备,其中,
    所述第一传输装置还从所述宿主设备的底层控制装置获取宿主设备传感信息;
    所述处理装置基于所述宿主设备传感信息、若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成所述宿主设备的运动控制相关信息。
  6. 根据权利要求1至5中任一项所述的自主定位导航设备,其中,
    所述第一传输装置包括以下至少任一项:UART串口、CAN总线、SPI总线、I2C总线;
    所述第二传输装置包括以下至少任一项:以太网接口、无线网络接口、USB接口、光纤接口。
  7. 根据权利要求1至6中任一项所述的自主定位导航设备,其中,所述底层定位导航相关信息包括所述宿主设备的轮组状态信息,所述上层定位导航相关信息包括所述宿主设备需要进行运动规划的请求和/或所述宿主设备需要其底层控制装置进行运动控制的请求,所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;
    所述处理装置基于若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据,并基于所述同步定位数据、所述地图数据及所述宿主设备的上层定位导航相关信息生成运动规划逻辑数据和所述运动控制命令。
  8. 根据权利要求1至7中任一项所述的自主定位导航设备,其中,所述底层定位导航相关信息还包括所述宿主设备的参数信息;
    所述处理装置还基于所述参数信息生成运动初始控制命令;
    所述第一传输装置将所述运动初始控制命令发送至所述宿主设备的底层装置。
  9. 一种利用自主定位导航设备进行定位导航的方法,其中,所述自主定位导航设备用于对宿主设备进行定位导航,所述自主定位导航设备包括处理装置、第一传输装置和第二传输装置;其中,所述方法包括:
    A所述第一传输装置从所述宿主设备的底层控制装置获取底层定位导航相关信息,所述第二传输装置从所述宿主设备的上层控制装置获取上层定位导航相关信息;
    B所述处理装置获取若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息,并生成用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
    C所述第一传输装置将所述运动控制命令发送至所述宿主设备的底层控制装置,所述第二传输装置将所述运动相关逻辑数据发送至所述宿主设备的上层控制装置。
  10. 根据权利要求9所述的方法,其中,所述自主定位导航设备还包括内置传感器和外置传感器;
    所述步骤B还包括:所述处理装置从所述内置传感器和外置传感器获取若干所述传感信息。
  11. 根据权利要求9或10所述的方法,其中,所述步骤A还包括:所述第一传输装置从所述宿主设备的底层控制装置获取宿主设备传感信息;
    所述步骤B包括:所述处理装置基于所述宿主设备传感信息、若干传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成所述宿主设备的运动控制相关信息。
  12. 根据权利要求9至11中任一项所述的方法,其中,所述底层定位导航相关信息包括所述宿主设备的轮组状态信息,所述上层定位导航相关信息包括所述宿主设备需要进行运动规划的请求和/或所述宿主设备需要其底层控制装置进行运动控制的请求,所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;所述步骤B包括:
    所述处理装置基于若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据,并基于所述同步定位数据、所述地图数据及所述宿主设备的上层定位导航相关信息生成运动规划逻辑数据和所述运动控制命令。
  13. 根据权利要求12所述的方法,其中,所述底层定位导航相关信息 还包括所述宿主设备的参数信息;
    所述步骤B还包括:所述处理装置还基于所述参数信息生成运动初始控制命令;
    所述步骤C还包括:所述第一传输装置将所述运动初始控制命令发送至所述宿主设备的底层装置。
  14. 一种定位导航方法,其中,所述定位导航方法包括:
    a获取宿主设备的底层定位导航相关信息和上层定位导航相关信息;
    b获取若干传感信息,并对若干所述传感信息进行预处理和预融合;
    c基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
    d将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备。
  15. 根据权利要求14所述的定位导航方法,所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;所述步骤c包括:
    基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据;
    基于所述同步定位数据、所述地图数据及所述宿主设备的上层定位导航相关信息生成运动规划逻辑数据和用于控制所述宿主设备运动的运动控制命令。
  16. 根据权利要求15所述的定位导航方法,其中,所述步骤d包括:
    根据所获取的所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令按照统一的数据协议格式进行封装;
    将封装后的数据发送至所述宿主设备。
  17. 根据权利要求14至16中任一项所述的定位导航方法,其中,所述步骤b包括:
    获取若干所述传感信息,若干所述传感信息包括至少以下任一项:内置传感信息、外置传感信息和宿主设备传感信息;
    对若干所述传感信息进行预处理和预融合。
  18. 一种自主定位导航设备,其中,所述自主定位导航设备包括:
    第一装置,用于获取宿主设备的底层定位导航相关信息和上层定位导航相关信息;
    第二装置,用于获取若干传感信息,并对若干所述传感信息进行预处理和预融合;
    第三装置,用于基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据;
    所述第一装置还用于将所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令发送至所述宿主设备。
  19. 根据权利要求18所述的自主定位导航设备,其中,所述运动相关逻辑数据包括地图数据、同步定位数据及运动规划逻辑数据;所述第三装置包括:
    第一单元,用于基于所预处理和预融合的若干所述传感信息、所述底层定位导航相关信息和所述上层定位导航相关信息生成地图数据和同步定位数据;
    第二单元,用于基于所述同步定位数据、所述地图数据及所述宿主设备的上层定位导航相关信息生成运动规划逻辑数据和用于控制所述宿主设备运动的运动控制命令。
  20. 根据权利要求19所述的自主定位导航设备,其中,所述第一装置还包括:
    第五单元,用于根据所获取的所述同步定位数据、所述地图数据、所述运动规划逻辑数据和所述运动控制命令按照统一的数据协议格式进行封装;
    第六单元,用于将封装后的数据发送至所述宿主设备。
  21. 根据权利要求18至20中任一项所述的自主定位导航设备,其中,所述第二装置包括:
    第三单元,用于获取若干所述传感信息,若干所述传感信息包括至少以下任一项:内置传感信息、外置传感信息和宿主设备传感信息;
    第四单元,用于对若干所述传感信息进行预处理和预融合。
  22. 一种自主定位导航***,其中,所述自主定位导航***包括:
    根据权利要求18至21中任一项所述的自主定位导航设备;
    宿主设备,所述宿主设备包括:
    第四装置,用于向所述自主定位导航设备发送所述宿主设备的底层定位导航相关信息和上层定位导航相关信息,并获取所述宿主设备发送的用于控制所述宿主设备运动的运动控制命令和用于所述宿主设备进行业务逻辑分析的运动相关逻辑数据。
PCT/CN2016/108594 2015-12-10 2016-12-05 自主定位导航设备、定位导航方法及自主定位导航*** WO2017097170A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US15/779,521 US10974390B2 (en) 2015-12-10 2016-12-05 Autonomous localization and navigation equipment, localization and navigation method, and autonomous localization and navigation system
JP2018530092A JP6868028B2 (ja) 2015-12-10 2016-12-05 自律測位航法設備、測位航法方法及び自律測位航法システム
EP16872361.7A EP3388786A4 (en) 2015-12-10 2016-12-05 DEVICE FOR AUTONOMOUS POSITIONING AND NAVIGATION, POSITIONING AND NAVIGATION METHOD AND SYSTEM FOR AUTONOMOUS POSITIONING AND NAVIGATION
AU2016368234A AU2016368234A1 (en) 2015-12-10 2016-12-05 Autonomous positioning and navigation device, positioning and navigation method and autonomous positioning and navigation system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510916639.9A CN106323269B (zh) 2015-12-10 2015-12-10 自主定位导航设备、定位导航方法及自主定位导航***
CN201510916639.9 2015-12-10

Publications (1)

Publication Number Publication Date
WO2017097170A1 true WO2017097170A1 (zh) 2017-06-15

Family

ID=57725830

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/108594 WO2017097170A1 (zh) 2015-12-10 2016-12-05 自主定位导航设备、定位导航方法及自主定位导航***

Country Status (6)

Country Link
US (1) US10974390B2 (zh)
EP (1) EP3388786A4 (zh)
JP (1) JP6868028B2 (zh)
CN (1) CN106323269B (zh)
AU (2) AU2016102440A4 (zh)
WO (1) WO2017097170A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107450571A (zh) * 2017-09-30 2017-12-08 江西洪都航空工业集团有限责任公司 一种基于ros的agv小车激光导航***
CN109782768A (zh) * 2019-01-26 2019-05-21 哈尔滨玄智科技有限公司 一种适配于内行星式复合轮系搬运机器人的自主导航***
CN109976327A (zh) * 2017-12-28 2019-07-05 沈阳新松机器人自动化股份有限公司 一种巡逻机器人
CN112346466A (zh) * 2020-12-07 2021-02-09 苏州云骐智能科技有限公司 一种基于5g的多传感器融合agv冗余控制***及方法
TWI749656B (zh) * 2020-07-22 2021-12-11 英屬維爾京群島商飛思捷投資股份有限公司 定位圖資建立系統及建立方法
CN114509064A (zh) * 2022-02-11 2022-05-17 上海思岚科技有限公司 一种自主扩展传感器数据处理的方法、接口及设备
US11438886B2 (en) 2020-02-27 2022-09-06 Psj International Ltd. System for establishing positioning map data and method for the same

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106842230A (zh) * 2017-01-13 2017-06-13 深圳前海勇艺达机器人有限公司 移动机器人导航方法与***
CN107063242A (zh) * 2017-03-24 2017-08-18 上海思岚科技有限公司 具虚拟墙功能的定位导航装置和机器人
CN107357297A (zh) * 2017-08-21 2017-11-17 深圳市镭神智能***有限公司 一种扫地机器人导航***及其导航方法
CN107665503A (zh) * 2017-08-28 2018-02-06 汕头大学 一种构建多楼层三维地图的方法
CN109101012A (zh) * 2017-12-12 2018-12-28 上海魔龙机器人科技有限公司 一种基于slam算法的机器人导航***及导航方法
US10705538B2 (en) * 2018-01-31 2020-07-07 Metal Industries Research & Development Centre Auto guided vehicle system and operating method thereof
CN108469819A (zh) * 2018-03-19 2018-08-31 杭州晶智能科技有限公司 一种自动吸尘机器人的z字形回归路径规划方法
US11119507B2 (en) * 2018-06-27 2021-09-14 Intel Corporation Hardware accelerator for online estimation
CN108969858B (zh) * 2018-08-08 2021-04-06 贵州中医药大学 一种全自动送氧机器人上氧方法及***
CN109725330A (zh) * 2019-02-20 2019-05-07 苏州风图智能科技有限公司 一种车体定位方法及装置
CN109917791B (zh) * 2019-03-26 2022-12-06 深圳市锐曼智能装备有限公司 移动装置自动探索构建地图的方法
CN110262518B (zh) * 2019-07-22 2021-04-02 上海交通大学 基于轨迹拓扑地图和避障的车辆导航方法、***及介质
CN110519689A (zh) * 2019-09-03 2019-11-29 广东博智林机器人有限公司 一种机器人自动充电上桩***和一种上桩方法
CN110658816B (zh) * 2019-09-27 2022-10-25 东南大学 一种基于智能组件的移动机器人导航与控制方法
CN110763245A (zh) * 2019-10-25 2020-02-07 江苏海事职业技术学院 一种基于流式计算的地图创建方法及其***
KR102186830B1 (ko) * 2020-03-13 2020-12-04 주식회사 자오스모터스 인공지능에 대응한 라이다 시스템
US11768504B2 (en) 2020-06-10 2023-09-26 AI Incorporated Light weight and real time slam for robots
US11454974B2 (en) * 2020-06-29 2022-09-27 Baidu Usa Llc Method, apparatus, device, and storage medium for controlling guide robot
US11789110B2 (en) 2020-09-03 2023-10-17 Honeywell International Inc. Fault detection, exclusion, isolation, and re-configuration of navigation sensors using an abstraction layer
CN113110510A (zh) * 2021-05-19 2021-07-13 悟空智能科技常州有限公司 一种灭火机器人自主导航控制***
CN114136334B (zh) * 2021-11-30 2024-03-19 北京经纬恒润科技股份有限公司 基于车辆定位模组的定位方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2911609Y (zh) * 2006-05-09 2007-06-13 南京恩瑞特实业有限公司 嵌入式gps自主导航装置
CN103398702A (zh) * 2013-08-05 2013-11-20 青岛海通机器人***有限公司 一种移动机器人远程操控装置及其操控技术
CN204595519U (zh) * 2015-04-20 2015-08-26 安徽工程大学 一种自主移动机器人控制***
CN105137949A (zh) * 2015-09-23 2015-12-09 珠海创智科技有限公司 Agv控制***
CN106114633A (zh) * 2016-07-27 2016-11-16 苏州博众机器人有限公司 模块化agv小车

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3763476B2 (ja) * 2003-05-29 2006-04-05 三菱電機株式会社 車両及び運転者の挙動解析システム
US20110046784A1 (en) * 2009-08-18 2011-02-24 Noel Wayne Anderson Asymmetric stereo vision system
US20110106338A1 (en) * 2009-10-29 2011-05-05 Allis Daniel P Remote Vehicle Control System and Method
JP5370568B2 (ja) * 2012-10-24 2013-12-18 株式会社アドヴィックス 車体速度制御装置
JP6537780B2 (ja) * 2014-04-09 2019-07-03 日立オートモティブシステムズ株式会社 走行制御装置、車載用表示装置、及び走行制御システム
US10282697B1 (en) * 2014-09-30 2019-05-07 Amazon Technologies, Inc. Spatially aware mounting system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2911609Y (zh) * 2006-05-09 2007-06-13 南京恩瑞特实业有限公司 嵌入式gps自主导航装置
CN103398702A (zh) * 2013-08-05 2013-11-20 青岛海通机器人***有限公司 一种移动机器人远程操控装置及其操控技术
CN204595519U (zh) * 2015-04-20 2015-08-26 安徽工程大学 一种自主移动机器人控制***
CN105137949A (zh) * 2015-09-23 2015-12-09 珠海创智科技有限公司 Agv控制***
CN106114633A (zh) * 2016-07-27 2016-11-16 苏州博众机器人有限公司 模块化agv小车

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3388786A4 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107450571A (zh) * 2017-09-30 2017-12-08 江西洪都航空工业集团有限责任公司 一种基于ros的agv小车激光导航***
CN109976327A (zh) * 2017-12-28 2019-07-05 沈阳新松机器人自动化股份有限公司 一种巡逻机器人
CN109782768A (zh) * 2019-01-26 2019-05-21 哈尔滨玄智科技有限公司 一种适配于内行星式复合轮系搬运机器人的自主导航***
US11438886B2 (en) 2020-02-27 2022-09-06 Psj International Ltd. System for establishing positioning map data and method for the same
TWI749656B (zh) * 2020-07-22 2021-12-11 英屬維爾京群島商飛思捷投資股份有限公司 定位圖資建立系統及建立方法
CN112346466A (zh) * 2020-12-07 2021-02-09 苏州云骐智能科技有限公司 一种基于5g的多传感器融合agv冗余控制***及方法
CN114509064A (zh) * 2022-02-11 2022-05-17 上海思岚科技有限公司 一种自主扩展传感器数据处理的方法、接口及设备

Also Published As

Publication number Publication date
CN106323269B (zh) 2019-06-07
AU2016102440A4 (en) 2020-04-16
EP3388786A4 (en) 2019-11-13
CN106323269A (zh) 2017-01-11
EP3388786A1 (en) 2018-10-17
JP2019501384A (ja) 2019-01-17
US10974390B2 (en) 2021-04-13
AU2016368234A1 (en) 2018-06-28
JP6868028B2 (ja) 2021-05-12
US20180345504A1 (en) 2018-12-06

Similar Documents

Publication Publication Date Title
WO2017097170A1 (zh) 自主定位导航设备、定位导航方法及自主定位导航***
Asadi et al. An integrated UGV-UAV system for construction site data collection
Cruz et al. Decentralized cooperative control-a multivehicle platform for research in networked embedded systems
JP2020502627A (ja) ロボットマッピングのためのシステムおよび方法
Li et al. Localization and navigation for indoor mobile robot based on ROS
CN103389699A (zh) 基于分布式智能监测控制节点的机器人监控及自主移动***的运行方法
WO2023116667A1 (zh) 一种充电设备以及控制机械臂充电的方法
Hebert et al. Supervised remote robot with guided autonomy and teleoperation (SURROGATE): a framework for whole-body manipulation
Hu et al. A new ROS-based hybrid architecture for heterogeneous multi-robot systems
Konomura et al. Phenox: Zynq 7000 based quadcopter robot
Do Quang et al. Mapping and navigation with four-wheeled omnidirectional mobile robot based on robot operating system
Liu et al. The multi-sensor fusion automatic driving test scene algorithm based on cloud platform
CN112318507A (zh) 一种基于slam技术的机器人智能控制***
Jo et al. Towards a ROS2-based software architecture for service robots
CN111380527A (zh) 一种室内服务机器人的导航方法及导航控制器
Zhang et al. An interactive control system for mobile robot based on cloud services
Fan et al. Collaborative robot transport system based on edge computing
Rui et al. Design and implementation of tour guide robot for red education base
CN216697069U (zh) 基于ros2的移动机器人控制***
Cheema et al. Development of a Control and Vision Interface for an AR. Drone
Choi et al. Development of smart mobile manipulator controlled by a single windows PC equipped with real-time control software
Makhal et al. Path planning through maze routing for a mobile robot with nonholonomic constraints
Rea AMR system for autonomous indoor navigation in unknown environments
Witkowski et al. Learning Vision Based Navigation with a Smartphone Mobile Robot
Duzhen et al. VSLAM and Navigation System of Unmanned Ground Vehicle Based on RGB-D camera

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16872361

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2018530092

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2016368234

Country of ref document: AU

Date of ref document: 20161205

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2016872361

Country of ref document: EP