WO2023211307A1 - Система автономной инвентаризации склада - Google Patents

Система автономной инвентаризации склада Download PDF

Info

Publication number
WO2023211307A1
WO2023211307A1 PCT/RU2022/000163 RU2022000163W WO2023211307A1 WO 2023211307 A1 WO2023211307 A1 WO 2023211307A1 RU 2022000163 W RU2022000163 W RU 2022000163W WO 2023211307 A1 WO2023211307 A1 WO 2023211307A1
Authority
WO
WIPO (PCT)
Prior art keywords
uav
data
unit
module
camera
Prior art date
Application number
PCT/RU2022/000163
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
Priority claimed from RU2022111560A external-priority patent/RU2022111560A/ru
Application filed by Общество с ограниченной ответственностью "Ювл Роботикс" filed Critical Общество с ограниченной ответственностью "Ювл Роботикс"
Publication of WO2023211307A1 publication Critical patent/WO2023211307A1/ru

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C39/00Aircraft not otherwise provided for
    • B64C39/02Aircraft not otherwise provided for characterised by special use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management

Definitions

  • This technical solution relates to computer technology and, in particular, to autonomous inventory technology.
  • Such warehouses use data collection terminals and a WMS system to control and account for goods in the warehouse.
  • Such warehouses include single-pallet, narrow- and wide-aisle, and drive-in warehouses, where inventory is carried out by warehouse personnel using lifts.
  • the last type includes specialized storage warehouses. These can be warehouses where mining industry goods are stored (special conditions are possible here - high levels of air pollution, high temperature) or warehouses that require maintaining a low temperature (for example, for meat products). Environmental conditions in such warehouses are uncomfortable for human work. The problem of their automation is the most pressing.
  • the technical result achieved by this proposed technical solution is to significantly increase the speed of warehouse inventory processes, increase the accuracy of scanning, counting of goods in the warehouse, increase inventory efficiency, reduce the number of errors and false scans, as well as increase the level of warehouse security by eliminating people from the inventory process.
  • an autonomous inventory system including:
  • At least one UAV including: o UAV on-board computer (101); o communication unit (111), configured to
  • receiving and transmitting data from the ground station, including data about the warehouse and its topology, pallet sizes, label parameters, parameters of target barcodes, radio tags, RF tags, QR codes, PID controller coefficients for the navigation unit; o scanning unit (121), configured to:
  • determining the position of the UAV in space based on data received from at least one camera (171) and lidar (191);
  • the control unit for the power part of the UAV (161) is configured to:
  • receiving control commands from the navigation unit (141) and converting commands into data packets and sending command packets to the flight controller (1041); and includes at least:
  • At least one ground station configured to: o receive and transmit data to at least one UAV; on storing and transmitting data to at least one UAV about the warehouse and its topology, pallet sizes, label parameters, parameters of target barcodes, radio tags, RF tags, QR codes, PID controller coefficients for the navigation unit; o generating an inventory sheet based on data received from at least one UAV; on integration and uploading of the current warehouse status into the warehouse management system;
  • the camera is a PV camera.
  • the 3D camera is configured to three-dimensionally scan and recognize elements.
  • the camera further includes a depth camera.
  • the camera may be configured to localize and map, generating a map in the unknown space and updating the map in a previously known space while simultaneously monitoring the current position and the path traveled.
  • the communications unit (111) receives data from the ground station (151) over a radio link.
  • At least the scanner (181) is a bar code scanner or an RFID scanner.
  • FIG. 1 illustrates an exemplary embodiment of the system described in the present invention, according to one embodiment of the present invention
  • FIG. 2 illustrates an exemplary circuit diagram of a navigation unit, according to one embodiment of the present invention
  • FIG. 3 illustrates an example of a schematic diagram of the operation algorithm of the navigation block, in particular, the process of generating control actions is shown, according to one of the variants of the present invention
  • FIG. 4 illustrates an exemplary schematic diagram of an aiming unit, according to one embodiment of the present invention
  • FIG. 5 illustrates an example of a schematic diagram of the operating algorithm of the aiming unit, according to one of the variants of the present invention
  • FIG. 6 illustrates an exemplary circuit diagram of a scanning unit, according to one embodiment of the present invention
  • FIG. 7 illustrates an exemplary algorithm for filtering suitable character sequences by a scanning unit, according to one embodiment of the present invention
  • FIG. 8 illustrates an exemplary circuit diagram of a communications unit 111, in accordance with one embodiment of the present invention.
  • FIG. 9 illustrates an exemplary circuit diagram of a ground station 151, in accordance with one embodiment of the present invention.
  • FIG. 10 illustrates an example circuit diagram of a UAV power section control unit, according to one embodiment of the present invention.
  • FIG. 11 illustrates an example of a general purpose computer system.
  • module As used in the present description of this technical solution, the terms “module”, “component”, “element” and the like are used to refer to computer entities that may be hardware/equipment (for example, a device, a tool, an apparatus, an apparatus, an integral part of a device, for example , processor, microprocessor, integrated circuit, printed circuit board, including electronic printed circuit board, development board, motherboard, etc., microcomputer and so on), software (for example, executable program code, compiled application, program module, part of software or program code, etc.) and/or firmware (in particular, firmware).
  • hardware/equipment for example, a device, a tool, an apparatus, an apparatus, an integral part of a device, for example , processor, microprocessor, integrated circuit, printed circuit board, including electronic printed circuit board, development board, motherboard, etc., microcomputer and so on
  • software for example, executable program code, compiled application, program module, part of software or program code, etc.
  • firmware in particular, firmware
  • a component may be a process running on a processor (processor), an object, executable code, program code, a file, a program/application, a function, a method, a (software) library, a subroutine, a coroutine, and/or a computing device (e.g. microcomputer or computer) or a combination of software or hardware components.
  • FIG. 1 shows an embodiment of the system described in the present invention, according to one embodiment of the present invention.
  • the described system can be used, among other things, to carry out an inventory of warehouse premises, including without human intervention, in particular in an autonomous (automatic) mode.
  • the described system allows you to increase the speed of inventory processes of warehouse premises, increase the accuracy of scanning and counting of goods in the warehouse, and also increase the level of safety of work, including by excluding people from the inventory process.
  • One of the results of the described system is a physical count of goods in the warehouse, documented in the form of an inventory sheet, which is generated by the ground part of the system during or upon completion of all work done.
  • Ground station 151 is in use at least least, for the initial setup of the described system and obtaining inventory data, as well as uploading data at the end of the inventory process, as described within the framework of the present invention.
  • the UAV can exchange data with the ground station 151 or, in a particular case, the data can be transferred from the UAV to the ground station 151 upon completion of the inventory, i.e. Throughout the entire inventory cycle of the system, communication between the UAV and the ground station 151 may not occur.
  • a single ground station 151 may be part of multiple systems, an example of which is shown in FIG. 1 in particular may be associated with more than one UAV.
  • one ground station can be used to connect and configure several UAVs.
  • configuration is carried out (by the user, in an automated mode using algorithms, software performed at the ground station 151) setting up the UAV for subsequent work, in particular, the operation of the UAV, ground station 151 during the inventory process.
  • the mentioned setting may include the following, but not limiting, parameters of the warehouse, in particular in the interface of the ground station 151: warehouse topology (number of racks, number of tiers, number of cells in one tier, geometric dimensions of racks, tiers, cells in any measurement system, aisle size between two racks), pallet dimensions (length, width and height in any measurement system), label parameters (label size, geographic location of barcodes on the label), parameters of target barcodes, radio tags, RF tags, QR tags codes (length, prefix, suffix, any regular expression that uniquely defines a suitable sequence of characters), PID controller coefficients for the navigation system, data upload format, etc.
  • warehouse topology number of racks, number of tiers, number of cells in one tier, geometric dimensions of racks, tiers, cells in any measurement system, aisle size between two racks
  • pallet dimensions length, width and height in any measurement system
  • label parameters label size, geographic location of barcodes on the label
  • parameters of target barcodes radio tags, RF tags, QR tags
  • the specified settings are saved in the memory of the ground station 151 (for example, in a data storage associated with the data storage 151), including the possibility of further editing, as well as the ability to select (transition) between saved system configurations.
  • the inventory process is launched, for example, using interface elements of the ground station 151, in particular, a graphical interface, for example, by pressing the corresponding button.
  • the system operates, as described within the framework of the present invention, during the inventory process, and during the inventory process or at its completion, in particular, during the process of counting goods in the warehouse or its completion, the UAV transmits collected and processed (including formed) data received during the inventory process or resulting from the inventory to the ground station 151, in particular using the ground station 151 connect to the UAV via a radio channel and upload data in the required format, including for generating (compiling) the resulting inventory list, as well as for loading the current state of the warehouse into the warehouse management system (WMS).
  • WMS warehouse management system
  • Shown in FIG. 1 system includes a UAV on-board computer 101 located on the UAV.
  • the UAV may be a quadcopter, octocopter, multicopter, helicopter, or similar aircraft associated with ground station 151.
  • the UAV, particularly the UAV on-board computer 101, and the ground station 151 communicate via an RF link.
  • the UAV on-board computer 101 is connected to devices, in particular peripheral devices, for example cameras (video recording systems, image recording devices, video recording devices, image recording devices), in particular video cameras, as well as lidars, bar scanner(s). -codes, RFID scanner(s), radio module (radio unit, etc.).
  • cameras video recording systems, image recording devices, video recording devices, image recording devices
  • lidars lidars
  • bar scanner(s) bar scanner(s).
  • RFID scanner(s) RFID scanner(s)
  • radio module radio unit, etc.
  • the on-board computer of the UAV 101 is the on-board part of the described system, in particular, it is a computing device, designed to ensure at least the functioning of the communication unit 111, the scanning unit 121, the aiming unit 131, the navigation unit 141, as well as the ability to receive and process data transmitted to blocks (modules, submodules, subsystems, systems, subblocks) of the on-board computer of the UAV 101 and received from blocks (modules, etc.) of the on-board computer of the UAV 101, including the ability to exchange data (information) between the blocks (modules) of the on-board computer of the UAV 101, devices connected or contained by the on-board computer of the UAV 101, including peripheral devices, modules (blocks), etc., including using the communication unit 111.
  • the on-board computer of the UAV 101 may be at least one device based on (using) at least one microcontroller, FPGA (programmable logic device, PLD) and ASIC (application-specific integrated circuit, and may also use at least one processor, microprocessor, etc.
  • FPGA programmable logic device, PLD
  • ASIC application-specific integrated circuit
  • the on-board computer of the UAV 101 exchanges (119) data with the ground station 151 and transmits (145) at least control commands (control actions) to the control unit of the UAV power part (UAV engine control unit) 161, as described in the framework of the present invention.
  • the on-board computer of the UAV 101 contains at least a communication unit 111, a scanning unit 121, an aiming unit 131, a navigation unit 141, as described in the framework of the present invention.
  • the communication unit 111 transmits (113) to the scanning unit 121 at least the barcode filter settings as described within the scope of the present invention.
  • the communication unit 111 transmits (115) to the aiming unit 131 at least the settings of the algorithm for searching for the label and calculating the optimal approach distance to it, as described in the framework of the present invention.
  • the communication unit 111 transmits (117) to the navigation unit 141 at least the settings of the algorithm for calculating control actions, as described in the framework of the present invention.
  • the communication unit 111 receives (119) data, in particular over a radio channel, from the ground station 151, and also transmits (119) data, in particular over a radio channel, to the ground station 151, as described within the scope of the present invention.
  • the scanning unit 121 transmits (127) to the aiming unit 131 at least a signal to search for a new label, as described in the context of the present invention.
  • the scanning unit 121 transmits (125) to the communication unit 111 at least a set of scanned barcodes, for example in the format of a table of scanned barcodes, as described within the scope of the present invention.
  • the aiming unit 131 transmits (135) to the navigation unit 141 at least information (data) about the new destination, as described in the framework of the present invention.
  • the navigation unit 141 generates and transmits at least control commands (impacts) to the control unit of the power unit of the UAV 161, as described in the framework of the present invention.
  • the components (parts, blocks, modules) of the system can be connected with each other (and any other components, devices and services (services) capable of receiving information from the components (parts) of the described system and/or transmitting data to the described system components) through various types of communication, for example, through local computing network (LAN), Internet, (means of) mobile communications, satellite communications and/or through any other type or method of wired communication (for example, via a USB interface, RS-232/COM port interface, etc.) and/or wireless communications, for example, Bluetooth, Wi-Fi, mobile cellular communications (GSM), including 3G, 4G, LTE, in particular in the 850/900/1800/1900 MHz bands, satellite communications, trunking communications and data transmission channels with ultra-low power consumption, forming complex wireless networks with mesh topology (ZigBee), etc.
  • LAN local computing network
  • Internet Internet
  • mobile communications for example, via a USB interface, RS-232/COM port interface, etc.
  • wireless communications for example, Bluetooth, Wi-Fi,
  • connection between the components (parts, blocks, modules) of the system, an example version of which is shown in FIG. 1, their blocks can be carried out via at least one data transfer protocol, including a network protocol, for example, TCP/IP, HTTP/HTTPs (English Hyper Text Transfer Protocol), FTP ( English File Transfer Protocol, “file transfer protocol”), POP3 (English Post Office Protocol, “standard mail connection protocol”), SMTP (English Simple Mail Transfer Protocol, TELNET (remote access protocol), XMPP (Extensible Messaging and Presence Protocol, formerly known as Jabber) - an open, XML-based protocol for instant messaging and near-real-time presence information exchange), DTN, etc.
  • a network protocol for example, TCP/IP, HTTP/HTTPs (English Hyper Text Transfer Protocol), FTP ( English File Transfer Protocol, “file transfer protocol”), POP3 (English Post Office Protocol, “standard mail connection protocol”), SMTP (English Simple Mail Transfer Protocol, TELNET (remote access protocol), XMPP (Extens
  • Data storage can be carried out on at least one means, in particular a device, for storing information (data) and can be (in particular, can be implemented) at least one hard magnetic disk drive (HDD).
  • HDD hard magnetic disk drive
  • a device for storing information (data) and can be (in particular, can be implemented) at least one hard magnetic disk drive (HDD).
  • HDD hard magnetic disk drive
  • SSD solid-state drive
  • SSHD solid-state hybrid hard drive
  • SHD/SAN English Storage Area Network
  • NAS Network Attached Storage
  • the data may be stored in any known format, for example, in a database (DB), for example, in the form of at least one table or a set of related or unrelated database tables.
  • DB database
  • At least one said database may be a hierarchical, object, object-oriented, object-relational, relational, network and/or functional database, each of which may be centralized, concentrated, distributed, heterogeneous, homogeneous, fragmented/partitioned , replicated, spatial, temporal, spatio-temporal, cyclic, ultra-large database, etc., and various database management systems (DBMS) can be used to manage, create and use databases.
  • DBMS database management systems
  • the data in said data stores may be stored in at least one file, in particular a text file, or the data may be stored in any at least one other currently known data/information storage format or in a data format invented later.
  • FIG. 2 shows an exemplary circuit diagram of a navigation unit 141 in accordance with one embodiment of the present invention.
  • the navigation block 141 includes a module for receiving (data) settings of the algorithm 222 from the communication unit 111, which is configured to at least receive (receive) the settings of the algorithm and transfer them to the module for calculating control actions 232.
  • Settings of the algorithm for calculating (determining) control actions (commands) include the PID controller coefficients.
  • Communication unit 111 transmits the algorithm settings in the form of an array of numbers.
  • the communication unit 111 receives the algorithm settings in the form of a radio signal from the ground station 151 and converts the radio signal into an array of numbers.
  • Module 232 receives data, processes it using the coefficients of the PID controller, and generates control actions (commands) at the output.
  • the navigation unit 141 also includes a module for calculating (determining) control actions 232, which calculates (determining) control actions (transmitted to the control unit of the power part of the UAV 161), as described in the framework of the present invention, using data obtained from at least aiming unit 131, camera 171 and communication unit 111.
  • the navigation unit 141 also includes a module for receiving data from the camera and lidar 204, configured to at least receive data from the camera 171, process and transmit the received data to the module for calculating the position of the UAV in space 208.
  • Module for receiving data from the camera and lidar 204 receives data from camera 171 in the form of an image and converts it into a matrix of numbers, which is then used to calculate the position of the UAV in space in the module for calculating the position of the UAV in space 208.
  • the position of the UAV is determined by the position of the flight controller, therefore, knowing the position of camera 171 and the camera offset before the flight controller, the position of the flight controller should be calculated.
  • the flight controller position is calculated using the following formula: where Rf is the position of the flight controller, R r is the position of the camera, Q r is the quaternion of camera rotation, t is the radius vector connecting the center of the flight controller and the camera.
  • the navigation unit 141 also includes a module for calculating the position of the UAV in space 208, configured to calculate the position of the UAV in space, as described in the framework of the present invention, and transmitting the calculated position of the UAV to the module for calculating control actions 232.
  • the navigation unit 141 also includes a target (or new) destination receiving module 242, configured to receive the target (or new) destination from the aiming unit 131, processing and transmitting to the control calculation module 232.
  • the target destination receiving module 242 converts the three-dimensional Cartesian vector of the relative displacement of the UAV in three coordinates along the X, Y, Z axes and the quaternion of the UAV rotation, and then transmits this to the control module 232.
  • FIG. Figure 3 shows an example of a schematic diagram of the operation algorithm of the navigation unit 141, in particular, the process of generating control actions is shown, according to one of the variants of the present invention.
  • the navigation unit 141 in a particular case is a software module (software block, software-hardware unit, software-hardware module), in particular, an executable program located (placed) in the memory of the on-board computer of the UAV (on-board computer) 101 and is connected at least , with one recording image (in particular, a video image), in particular, connected to the on-board computer of the UAV 101 using at least one of the known interfaces for connecting such recording devices (and also configured to at least store, process, transmit, send, etc. data, including registered) devices, in particular cameras 171, including using USB, I2C, SCCB, SPI, CSI, etc.
  • an executable program located (placed) in the memory of the on-board computer of the UAV (on-board computer) 101 and is connected at least , with one recording image (in particular, a video image), in particular, connected to the on-board computer of the UAV 101 using at least one of the known interfaces for connecting such recording devices (and also configured to at least store, process, transmit,
  • the camera 171 may be part of the navigation unit 141 or may be connected to the navigation unit 141 (may be associated with the navigation unit) using at least one of the known communication methods (types, types, etc.), including using at least one of the known interfaces for connecting such recording (in particular, image) devices.
  • the navigation unit 141 is configured to at least determine the position of the UAV in space and calculate control actions, including for control unit of the power part of the UAV 161, using at least one recording image of the device, in particular the camera 171.
  • the determination (calculation) of the position of the UAV in space is carried out by the module for calculating the position of the UAV in space 208.
  • the calculation of control actions is carried out by the module for calculating control actions 232 .
  • the image recording device in particular the camera 171, can be a 3D camera (including one using the 3D stereo algorithm, with the possibility of three-dimensional scanning, recognition of elements (objects, etc. in the image, etc.), a depth camera, combined with an RGB camera, a tracking camera (tracking camera), including one that uses optical tracking, a graphics processor, including the ability to process (pre-processing, post-processing, etc.), and also including a measuring unit, including incorporating at least one video sensor to identify differences in images with different aspect resolutions (e.g. 1280x720, 1920x1080, 3840x2160, etc.
  • tracking cameras are designed specifically for determining the orientation and position of a real object in four-dimensional space-time.As a rule, such cameras have the ability to calculate the position of an object in space, as well as its orientation, relative to the initial position. The position of an object in space can be specified using the rotation quaternion and its Cartesian coordinates.
  • calibration values are specified (in particular, entered), in particular, in the process of setting up the UAV, at least at least once, for example, at the stage of assembling the UAV or before the start of operation of the UAV, or during the use of the UAV, including to improve accuracy, adjustments, etc. localization and construction of a map, etc., including depending on the data recorded by the camera 171, depending on the generated map, including its correspondence to the space surrounding the UAV in automatic mode, semi-automatic mode or manual mode (in particular , user, for example, warehouse operator, UAV operator, etc.).
  • the calibration values are entered by the user using a computing device associated with the UAV into the memory (in particular, the storage memory) of the UAV.
  • calibration values are values that can be used to calculate the UAV flight path, control actions for UAV engines (1051, FIG. 10), and various other UAV flight parameters.
  • the module for calculating the position of the UAV in space 208 one of the known methods (and algorithms) of localization and map construction can be used, for example, the SLAM algorithm (from English, simultaneous localization) can be used and mapping - simultaneous localization and construction of a map), carrying out the formation (construction, creation) of a map in an unknown space and updating the map in a previously known space with simultaneous control of the current position (location) and the path traveled.
  • the SLAM algorithm from English, simultaneous localization
  • mapping - simultaneous localization and construction of a map carrying out the formation (construction, creation) of a map in an unknown space and updating the map in a previously known space with simultaneous control of the current position (location) and the path traveled.
  • the image recording device in particular the camera 171
  • the image recording device can be configured to localize and build a map with the formation of a map in an unknown space and updating the map in a previously known space while simultaneously monitoring the current position and the path traveled, for example, in the camera 171 the SLAM algorithm can be implemented, including in hardware (using camera 171); in particular, the SLAM algorithm can be executed using camera 171.
  • localization and mapping with the formation and updating of map(s) in spaces with control of the current position and path can be implemented by means (in particular, at least one block, module, etc.) of an on-board computer UAV 101 (in particular, software), for example, navigation unit 141.
  • the camera can be a high-resolution camera (in particular, a video camera).
  • high-definition cameras high-definition cameras can be linked to the camera
  • these same cameras can be used as sensors for the SLAM algorithm.
  • lidar 191 produces a cloud of points with a frequency of about 10 Hz. Due to the high number of points and the high operating range of the lidar, it is possible to construct a detailed map, which allows the UAV to navigate it with high accuracy.
  • a tracking camera is used to correct lidar errors associated with low update rates. It allows the navigation algorithm to receive data about the odometry of the system (quaternion of position in space) with a higher frequency compared to the camera. This solution allows you to determine the path of the UAV with greater frequency, and therefore with greater accuracy.
  • SLAM allows you to combine data from a lidar and a tracking camera to produce a map with high accuracy based on this data.
  • the principle of its operation is based on combining point clouds obtained from the lidar at each moment in time, while the accumulated navigation error associated with the low frequency of the lidar operation is eliminated by a correction obtained using odometry data from the tracking camera.
  • the navigation unit 141 has the functionality of localization, building a warehouse map along with information about the filling of racks with goods, generating a space map, updating a room map, monitoring the current position of the UAV, implementing the SLAM algorithm, as well as managing the position of the UAV (in particular, coordinating the location of the UAV) in space .
  • a space map is a cloud of points in three dimensions.
  • the warehouse map, together with information about the filling of the racks with goods, represents the topology of the warehouse with information about the filling of the racks with goods entered into it.
  • the position of the UAV in space is obtained (recorded and generated, in particular, calculated) using one of the above methods.
  • the location of the UAV (in particular, the position in space) is formed in the format (in the form of) three-dimensional Cartesian coordinates relative to the UAV’s starting point.
  • the coordinate system can be reset (e.g., zeroed, parameters set to default, etc.) by command from ground station 151 at any time time (or preset, predetermined), including to increase the flexibility of the system and its reliability, for example, in the event of unforeseen circumstances, and can be used so that at any time it is possible to start the UAV flight again, that is, by other in other words, reset the UAV flight path to its initial position.
  • UAV can be calculated, for example, speed and acceleration along three axes, quaternion of rotation, angular velocity and acceleration, for example, using the SLAM, VSLAM algorithm or any other analogue, software or hardware.
  • the module for calculating control actions 232 To calculate control actions by the navigation block 141, in particular, the module for calculating control actions 232, the current location of the UAV (in particular, in relative coordinates) obtained from the module for calculating the position of the UAV in space 208 and calculated by the module for calculating the position of the UAV in space 208 using data received from the camera data receiving module and lidar 204 received from the camera 171, and the target destination received from the target destination receiving module 242 receiving it from the aiming unit 131.
  • the calculation (calculation) of the control actions is carried out using PID- regulator
  • the PID controller coefficients are set (adjusted), for example, at the stage of assembling/configuring the UAV, and can be changed during the operation of the described system using communication unit 111.
  • the PID controller coefficients can be changed, including depending on various external influences, for example, at a temperature of minus fifty degrees Celsius, the flight characteristics of the UAV change (in particular, significantly), which requires corresponding changes in the PID controller coefficients.
  • the PID controller coefficients are stored in the memory (for example, on a storage device) of the UAV, in particular, in non-volatile memory. Also, they can be saved (including simultaneously with storage in the UAV memory, including for the purpose of increasing reliability) in the memory of the ground station 151, for example, in a file format.
  • the coefficients of the PID controller can be changed upon command from the ground station 151 in order to change (including adjust) the behavior (including trajectory) of the UAV in the air. Depending on the circumstances, the user can personally change the parameters of the UAV, if he deems it necessary.
  • the PID controller is part of the control calculation module 232 and can be implemented in software using the following analytical formula: where u(t) is the control action at each time (t), e(t) is the “error” at each time, K p is the proportional coefficient, K is the integral component, K d is the differential component.
  • control commands are formed in the format of a list of numbers, for example, in the format of the following sequence of numbers: “4, 8, 15, 16, 23, 42”, where at least one value corresponds to at least one control command.
  • the navigation block 141 is designed to store preset warehouse parameters: cell numbering, structure and size of the rack in the number of pallets.
  • the navigation unit 141 is capable of storing the geometric dimensions of rack structures, UAV dimensions, the distance between two adjacent racks in meters, inches, centimeters and any other length and distance measurement systems.
  • step 305 the process of calculating (forming) control actions (at least one control action) by the navigation block 141 begins in step 305.
  • the navigation unit 141 checks whether the UAV's autopilot is enabled, for example, by checking (for example, by the autopilot enable/disable check module or one of the other modules of the navigation unit 141) a stored flag ("Yes" or "No") in the UAV's memory that whether the UAV autopilot is running, i.e. whether the automatic operation mode of the UAV is started.
  • the navigation unit 141 can operate if the UAV autopilot is turned off. If the autopilot is turned off, then in step 350 the process of calculating control actions ends.
  • the UAV autopilot can be turned on (by the user or programmatically, for example, by means of the ground station 151) at any time as needed, using the means of the ground station 151.
  • the UAV can independently make an emergency landing, avoiding collisions, but even in this case the block navigation 141 continues to function without disabling the autopilot.
  • the UAV control mode autonomous or “manual”
  • the UAV control mode can be switched by the user, and in the autonomous version there is no “manual” UAV control option, in particular, so that the UAV does not start operating without the user’s permission.
  • step 315 the data of the lidar 191 and from the camera 171 is received (in particular, input), in particular, the location (location data) of the UAV in space (340) is obtained by the calculation module control actions 232, calculated by the module for calculating the position of the UAV in space 208 using data from the camera 171 obtained from the module for receiving data from the camera and lidar 204: and also in step 320, the destination, in particular the target, is received (in particular, entered) destination (345), by the control action calculation module 232, obtained from the target destination receiving module 242, obtained from the aiming unit 131.
  • step 325 the control actions are calculated using the PID controller and the resulting PID controller coefficients (335) obtained from the communication unit 111 (which, in turn, receives them from the ground station 151), by the control action calculation module 232.
  • the process of calculating control actions returns to step 310.
  • the calculated control actions (330) are transmitted (sent) to the control unit of the power part of the UAV 161.
  • FIG. 4 shows an exemplary circuit diagram of an aiming unit 131, according to one embodiment of the present invention.
  • the aiming unit 131 includes a module for receiving a command to search for a new label 404, which receives command(s) to search for a new label from the scanning unit 121 and transmits the received command to search for a new label to the module for receiving data from the camera 414 (carrying out at least the conversion of the received raw byte array into a matrix of numbers used for further processing, as described within the framework of this technical solution), as well as into the module for calculating the position of the label in space 434 and into the collision avoidance and emergency landing module 444.
  • Module 414 upon command to search for a new label receives the next photo from camera 171 and searches for a label, barcode and/or other object on it, necessary to complete the UAV flight mission.
  • the aiming unit 131 also includes a camera data receiving module 414, configured to receive (receive) data transmitted by the camera 171, and configured to at least transmit the data to the label position calculation module 434 and to the collision avoidance module and emergency landing 444.
  • a camera data receiving module 414 configured to receive (receive) data transmitted by the camera 171, and configured to at least transmit the data to the label position calculation module 434 and to the collision avoidance module and emergency landing 444.
  • the aiming unit 131 also includes a module for receiving algorithm settings 424, configured to receive algorithm settings from the communication unit 111, and also configured to transfer the algorithm settings to the module for calculating the position of the label in space 434 and to the module for calculating the destination 454.
  • algorithm settings are transmitted from the ground station 151.
  • the communication unit 111 converts the radio signals into a sequence of numbers.
  • Label search settings include the type of label, the size of its various fields, the location of barcodes on the label, and other signs that distinguish this type of label.
  • the label search settings are transmitted as a list of the above parameters from the ground station 151 through the communication unit 111 to the UAV.
  • the approximate distance between two adjacent racks in the warehouse is transmitted to the UAV.
  • This data is received by the UAV in the form of a radio wave signal from the ground station 151.
  • the aiming unit 131 includes a module for calculating the position of the label in space 434, configured to calculate the position of the label in space, the ability to receive (receive) data from at least the module for receiving data from the camera 414, and configured to transmit (send) data , at least to the destination calculation module 454.
  • the aiming unit 131 also includes a collision avoidance and emergency landing module 444, configured to perform collision avoidance, emergency landing of the UAV, and configured to receive data from at least the camera data receiving module 414, as well as configured to transmit data to at least a destination calculation module 454.
  • the collision avoidance and emergency landing module 444 may transmit to the destination calculation module 454 the relative displacement of the UAV, for example, to land or avoid a collision with some an external object.
  • the aiming unit 131 includes a destination calculation module 454, configured to calculate the destination of the UAV, and also configured to receive data on the position of the label in space from the module for calculating the position of the label in space 434 and data from the collision avoidance and emergency module. landing 444, and also with the ability to transmit data about at least the calculated destination to the destination sending module 464.
  • the aiming unit 131 also includes a destination sending module 464 configured to transmit destination data to the navigation unit 141.
  • FIG. 5 shows an exemplary schematic diagram of the operating algorithm of the aiming unit 131, according to one of the variants of the present invention.
  • the aiming unit 131 operates by executing an executable program on the bot computer of the UAV 101 (and in a particular case is a software, firmware module, block) associated with the camera 171, the data recorded by which is used, among other things, to carry out at least a label search in space and calculating its position, including relative to the UAV.
  • the data of the label in space and its position is used by the aiming unit 131 to calculate (calculate, form) a new (target) destination (540), the data (for example, coordinates) of which is transmitted to the navigation unit 141 to move the UAV to the location of the next label.
  • a depth camera may be used instead of camera 171 (or in addition to camera 171) to calculate the distance to the label.
  • Such cameras equipped with infrared depth sensors, obtain an image of objects taking into account their depth, constructing (forming) a three-dimensional image of the scene in the frame from a specific point. Next, the constructed scene is used to position the UAV in space, and can also be saved as a file on a computer for further study.
  • the aiming unit 131 calculates a new destination (540), which is transmitted to the navigation unit 141 depending on the distance at which the UAV should be placed (in particular, “hover”) in front of the label.
  • the new destination contains data in the format of four values: X, Y, Z offset and UAV roll angle.
  • the destination is transmitted in the format of a sequence of four numbers.
  • the new destination is calculated depending on the flight route flight algorithm, or the autonomous flight trajectory of the UAV. This distance depends on the obtained parameters of the algorithm, in particular, on the obtained parameters of the warehouse (530), including the width of the warehouse aisle, the dimensions of the UAV and the positioning accuracy of the UAV in space.
  • These parameters are configured using the ground station 151 (in particular, using the facilities of the ground station 151) and are transmitted from the ground station 151 to the communication unit 111, for the (final) configuration of the UAV.
  • the position of the UAV in space can be calculated using Newton's second law in vector form: where Fi is any external force acting on the UAV, m is the mass of the UAV, v is the speed of the UAV at each moment of time, c is the speed of light.
  • Fi is any external force acting on the UAV
  • m is the mass of the UAV
  • v is the speed of the UAV at each moment of time
  • c is the speed of light.
  • the dimensions of the UAV plus minus the positioning accuracy of the UAV in space must be less than the distance between two adjacent racks with a margin of at least 35 measurement errors.
  • UAV does not catch the goods in the warehouse with its screws and/or does not crash, so that the movement of the UAV is also limited by the minimum permitted distance to an external object. If the constraint is violated, the target position is changed so that the UAV flies away from the external object to a safe distance.
  • unit 131 waits from scanning unit 121 for a signal about successful scanning of the current cell (510), in particular, a signal about successful scanning current cell, in a particular case, a signal that the current (in particular, the previous) cell has been successfully scanned, and, therefore, it is necessary to look for the next label or radio tag.
  • a signal about successful scanning current cell in a particular case, a signal that the current (in particular, the previous) cell has been successfully scanned, and, therefore, it is necessary to look for the next label or radio tag.
  • the UAV flies up to the very first cell (in particular, the one closest to the UAV) and tries to scan it.
  • the process of searching for the label, calculating the UAV's new destination, and transmitting it to the navigation unit begins at step 505.
  • the aiming unit 131 searches for the next label in space after the module for calculating the position of the label in space 434 receives a signal about the successful scanning of the current cell (510), the time allocated for scanning each cell is 30 seconds, from the scanning unit 121, in particular, from the module for receiving a command to search for a new label 404, and an array of distances to the cloud of points in the frame (520), received from the camera 171, in particular, from the module for receiving data from the camera 414, and such an array of points is formed by an algorithm, for example, SLAM, which can be implemented both in software and hardware, as well as using various cameras, including tracking cameras.
  • SLAM an algorithm
  • a pre-trained neural network can be used to search for a label.
  • This network is additionally trained on target labels using a video stream from a camera, in particular a depth camera, which allows you to compare information from an ordinary RGB image of a depth camera and information about the location of objects in space. This way the target label is located in space.
  • the aiming unit 131 calculates a new destination after receiving, at least from the communication unit 111, in particular from the module for receiving algorithm settings 424, at least algorithm settings, in particular, warehouse parameters (530).
  • warehouse parameters can be the dimensions of various rack structures, average pallet sizes, or the most common dimensions of the height and width of pallet spaces and goods in the warehouse.
  • the targeting unit 131 transmits (sends) the calculated new destination (540) to the navigation unit 141.
  • the destination is sent in the form of a quaternion describing the orientation of the UAV in space, as well as three Cartesian coordinates relative to the autopilot start location.
  • step 545 The process of searching for the label, calculating the UAV's new destination, and transmitting it to the navigation unit ends in step 545.
  • FIG. 6 shows an exemplary circuit diagram of a scanning unit 121 in accordance with one embodiment of the present invention.
  • the scanning unit 121 includes a filter settings receiving module 606 configured to at least receive filter settings (barcode filters) and transmit barcode filter settings to the barcode filtering module 606.
  • a filter settings receiving module 606 configured to at least receive filter settings (barcode filters) and transmit barcode filter settings to the barcode filtering module 606.
  • the scanning unit 121 operates by executing an executable program on the bot computer of the UAV 101 (and in a particular case is a software, firmware module, unit) associated with the scanner 181, in particular, a barcode scanner (barcodes, barcodes) or an RFID scanner (RFID tags, radio frequency tags), the data recorded by which is used, among other things, to at least scan barcodes or radio tags placed on goods.
  • a barcode scanner barcodes, barcodes
  • RFID scanner RFID tags, radio frequency tags
  • the scanner can be located on a gimbal (attached to a UAV), configured to automatically (in automatic mode) aim at a label or radio tag, using information received from camera 171, for example, a depth camera used by aiming unit 131, which allows increasing speed guidance and performance of the described system.
  • camera 171 for example, a depth camera used by aiming unit 131, which allows increasing speed guidance and performance of the described system.
  • the label (its parts, information placed on it) is recognized, using the same or another camera, or lidar, the distance to the label is calculated, then the process of gimbal guidance occurs.
  • the gimbal is guided in one of the private implementations of the system by command from a peripheral board including a microcontroller.
  • the UAV autonomously flies in front of the required label.
  • the scanning unit 121 includes a barcode filtering module 606, configured to receive data from the scanner 656 and configured to at least transmit the data to the table generation module 626, and also configured to generate a command to search for a label and with the ability transmitting the generated command to search for a label to the module for sending a command to search for a label 646.
  • a barcode filtering module 606 configured to receive data from the scanner 656 and configured to at least transmit the data to the table generation module 626, and also configured to generate a command to search for a label and with the ability transmitting the generated command to search for a label to the module for sending a command to search for a label 646.
  • a suitable character sequence is uniquely determined by the barcode filtering module 606 by its length, suffix, prefix or any regular expression, in particular by matching the character sequence and regular expressions for unique sequences (step 720, FIG. 7) and for non-unique sequences (step 725, FIG. 7).
  • the set of suitable character sequences is configured (by the user, for example, the administrator of the described system, developer, etc.) by means of the ground station 151 through (using) the communication unit 111, by entering a set of regular expressions into the software installed on the ground station 151, in particular , which uniquely define suitable sequences of characters (which are encrypted in the barcode or RFID tag).
  • suitable character sequences can be filtered based on the order in which they are scanned. In a particular case, the last barcode from the queue is removed, and the new barcode is moved to the beginning of the queue.
  • the queue may contain, for example, up to five (ten, etc.) non-repeatable barcodes, and the number of barcodes in the queue can be changed using the means of the ground station 151.
  • Several barcodes may be placed on the label.
  • at least one barcode is placed on the label, which is a unique number of the product that identifies it (in particular, being an identifier), and not a single product in the warehouse has such a number.
  • data encrypted in other barcodes can indicate the quantity of goods on a pallet, the date of manufacture, and others that can be repeated frequently.
  • radio tags instead of barcodes
  • a large amount of data can be processed immediately in one radio beacon, including a unique pallet number and other service information.
  • a unique code is read. If during the check (comparison) the sequence matches (step 735, FIG. 7) according to the regular expression to the unique code, in particular, it matches (step 725, FIG. 7), then the sequence is discarded (step 740, FIG. 7). If the unique code is read, a check is made to see if the sequence matches the non-unique codes (step 735, FIG. 7) according to the regular expression (step 720, FIG. 7). If the sequence is suitable, then it is saved into the database (or, in a particular case, into the resulting table, including that stored in the database or in the UAV’s memory).
  • step 750, FIG. 7 it is checked whether all codes for one pallet have been read (step 750, FIG. 7). If not, then the algorithm terminates (step 780, FIG. 7). If so, it is checked whether the entire rack has been calculated (step 755, FIG. 7), in particular based on at least the warehouse topology. If the entire rack has been calculated, proceed to step 770, FIG. 7. If not the entire rack has been calculated, then go to step 760, FIG. 7, in which a signal (765, FIG. 7) is sent to the aiming unit 131 to search for the next label. At step 775, FIG. 7, an inventory list is generated for this rack, which can be unloaded (step 770, FIG. 7) upon request using the ground station 151 through the communication unit 111.
  • the count of counted cells is increased in the UAV memory per unit.
  • the topology of the warehouse and a particular rack is loaded into the UAV in advance, for example, using the facilities of the ground station 151.
  • a counter is created, for example, from one to one hundred, if one hundred cells need to be scanned. So, in a particular case, the number of cells (pallet spaces) is equal to the maximum value of tiers in the rack, multiplied by the number of pallets on one tier. It is worth noting that there may not be a pallet with goods at the pallet location.
  • the scanning unit 121 also includes a label search command sending module 646, configured to transmit a label search command to the aiming unit 131.
  • the scanning unit 121 also includes a table generation module 626, configured to generate a table of scanned barcodes and transmit the generated table (scanned barcode table) to the table sending module 636.
  • a table generation module 626 configured to generate a table of scanned barcodes and transmit the generated table (scanned barcode table) to the table sending module 636.
  • the scanning unit 121 includes a table sending module 636, configured to transmit a table of scanned bar codes to the communication unit 111.
  • FIG. 7 shows an exemplary algorithm for filtering suitable character sequences by scanning unit 121, according to one embodiment of the present invention.
  • the process of filtering suitable character sequences by scanner 121 begins in step 705 with the acquisition of a character sequence (710) from scanner 181 by scanner 121, specifically scanner receive module 656.
  • step 715 the scanning unit 121 checks whether the unique pallet number has been read by the scanner 181.
  • step 720 the scanning unit 121, in particular the barcode filtering module 616, performs a character sequence and regular expression match for non-unique sequences using a set of regular expressions obtained from the communication unit 111, in particular, by the module for receiving filter settings 606.
  • the barcode filter of the barcode filtering module 616 in a particular case can be a regular expression. Also, barcodes and RFID tags can be filtered by type, length of character sequence, without using regular expressions directly.
  • step 725 the scanning unit 121, in particular the barcode filtering module 616, performs a character sequence and regular expression match for the unique sequences using a set of regular expressions obtained from the communication unit 111, in particular, the filter settings receiving module 606.
  • step 715 the barcode filtering module 616 checks whether the read unique number matches the character sequences, in particular, unique sequences and non-unique sequences. If it does not match, then in step 740 the sequence is discarded, i.e., this sequence is not taken into account in the further process of filtering suitable sequences and scanning continues. If it matches, then in step 745 the sequence is added to the memory of the UAV, for example, to a database, including saving in a set of files in the memory of the UAV, which can be loaded using the means of the ground station 151 during the upload of the inventory list.
  • the barcode filtering module 616 checks whether all the necessary (for example, you need to scan three barcodes on one label, or two barcodes and another on another label) character sequences on the pallet have been read. Such sequences of symbols are used to generate an inventory list (for carrying out, conducting, inventory in a warehouse). If not, then the process of filtering suitable sequences ends at step 780 (ie, if a barcode or character sequence was received in error, then it is discarded, bypassing the barcode filtering itself). A sufficient requirement is that the checksums must match. In a particular implementation, the checksum can be calculated in hardware by a microcontroller using a hardware CRC unit.
  • step 755 the barcode filtering module 616 checks to see if the entire rack has been scanned. If in step 755 it is determined that the entire rack has been calculated, then the process proceeds to step 770. If not, then in step 760 the barcode filtering module 616 generates and transmits (sends) a signal to search for a new label (765) to the aiming unit 131 module sending a command to search for label 646.
  • step 770 the table generation module 626 uploads the inventory list (775), which is transmitted to the communication unit 111 by the table sending module 636, and the filtering process of suitable sequences ends in step 780.
  • the inventory list is generated during the UAV flight and the calculation of goods in the warehouse. Stored in the memory of the UAV and transmitted to the ground station 151, for example, upon completion of the calculation of the rack.
  • FIG. 8 shows an exemplary circuit diagram of a communication unit 111, in accordance with one embodiment of the present invention.
  • the communication unit 111 operates by executing an executable program on the bot computer of the UAV 101 (and in a particular case is a software, firmware module, block) associated with the radio module 868, through which communication (in particular, data exchange) is provided between the UAV, in particular , UAV on-board computer 101, and ground station 151.
  • an executable program on the bot computer of the UAV 101 (and in a particular case is a software, firmware module, block) associated with the radio module 868, through which communication (in particular, data exchange) is provided between the UAV, in particular , UAV on-board computer 101, and ground station 151.
  • the 868 radio module can be a wireless serial port, a Bluetooth module, or a Wi-Fi module.
  • Data exchange between the UAV, in particular the on-board computer of the UAV 101, and the ground station 151 can be carried out using mobile cellular communications (GSM), including 3G, 4G, LTE, in particular in the 850/900/1800/1900 MHz bands , satellite communications, tracking communications and ultra-low power data transmission channels that form complex wireless networks with mesh topology (ZigBee), etc.
  • GSM mobile cellular communications
  • 3G, 4G, LTE in particular in the 850/900/1800/1900 MHz bands
  • satellite communications in particular in the 850/900/1800/1900 MHz bands
  • tracking communications and ultra-low power data transmission channels that form complex wireless networks with mesh topology (ZigBee), etc.
  • the communication unit 111 communicates between the UAV and the ground station 151.
  • the data transmission protocol may vary depending on the implementation options of the described system. Possible data transfer protocols can be Wifi, Bluetooth, or at a lower level TCP connection, SSL compound. Additionally, at the software implementation level, a data transfer protocol can be used over the specified one to increase the security of data transfer and information security of the entire system as a whole.
  • the communication unit 111 includes a data receiving module 808, configured to receive data from the scanning and data transmission unit, at least to the sending data transfer protocol processing module 818, in a particular case being part of the protocol processing module 878, in particular, its submodule (submodule).
  • a data receiving module 808 configured to receive data from the scanning and data transmission unit, at least to the sending data transfer protocol processing module 818, in a particular case being part of the protocol processing module 878, in particular, its submodule (submodule).
  • the communication unit 111 may also include a protocol processing module 878, which is configured to receive data from a data receiving module 808 and from a radio receiver 838, as well as transmitting data to a radio transmitter 828 and a data sending module 858, and which includes a data transmission protocol processing module for sending 818 and a data transfer protocol processing module for receiving 848.
  • a protocol processing module 878 which is configured to receive data from a data receiving module 808 and from a radio receiver 838, as well as transmitting data to a radio transmitter 828 and a data sending module 858, and which includes a data transmission protocol processing module for sending 818 and a data transfer protocol processing module for receiving 848.
  • the communication unit 111 also includes a sending data protocol processing module 818, configured to receive data from the data receiving module 808 and transmitting data to the radio transmitter 828, and in a particular case being a part (module, submodule, submodule) of the protocol processing module 878.
  • a sending data protocol processing module 818 configured to receive data from the data receiving module 808 and transmitting data to the radio transmitter 828, and in a particular case being a part (module, submodule, submodule) of the protocol processing module 878.
  • the communication unit 111 includes a receiving data transfer protocol processing module 848, configured to receive data from (from) the radio receiver 838 and transmit data to the data sending module 858, and in a particular case, being part (module, submodule, submodule) of the protocol processing module 878.
  • a receiving data transfer protocol processing module 848 configured to receive data from (from) the radio receiver 838 and transmit data to the data sending module 858, and in a particular case, being part (module, submodule, submodule) of the protocol processing module 878.
  • the communication unit 111 also includes a radio transmitter 828, configured to receive data from (from) the sending data protocol processing module 818, in a particular case being part of the protocol processing module 878, and with the ability to transmit the data to the ground station 151.
  • a radio transmitter 828 configured to receive data from (from) the sending data protocol processing module 818, in a particular case being part of the protocol processing module 878, and with the ability to transmit the data to the ground station 151.
  • the communication unit 111 also includes a radio receiver 838 configured to receive data from (from) ground station 151 and configured to transmit data to a receive protocol processing module 848, in particular being part of a protocol processing module 878, and to transmit data to the data sending module 858.
  • a radio receiver 838 configured to receive data from (from) ground station 151 and configured to transmit data to a receive protocol processing module 848, in particular being part of a protocol processing module 878, and to transmit data to the data sending module 858.
  • the communication unit 111 includes a data sending module, configured to receive data from the receiving data transfer protocol processing module 848, in a particular case, which is part of the protocol processing module 878, and with the ability to transmit data to the scanning unit 121, the navigation unit 141 and the aiming unit 131.
  • FIG. 9 shows an exemplary circuit diagram of a ground station 151 in accordance with one embodiment of the present invention.
  • Ground station 151 is a computing device on which software is installed with a user interface (user interface), such as graphics, text, etc. interface, which is used to at least configure the described system, including the UAV, including, but not limited to, the on-board computer of the UAV 101 and its modules, in manual mode, for example, by the user (administrator) using the means of the ground station 151 , automatic mode (via ground station 151) or semi-automatic (semi-automated) mode.
  • user interface user interface
  • user interface such as graphics, text, etc. interface
  • So computational the device may be a personal computer, an electronic computer (computer), a server, a remote server, a workstation, an all-in-one computer, a computer stand, a desktop computer, a test stand, a computer demo stand, etc., mobile devices such as laptop, tablet (laptop), smartphone, laptop, etc.
  • Ground station 151 may also be at least one device using (based on) at least one microcontroller, FPGA and ASIC, and may also use at least one processor, microprocessor, etc.
  • the ground station 151 is associated with (or includes) at least one communication device (module, unit, etc.) (in particular, including a radio receiver 904 and radio transmitter 902), for example, a Bluetooth module, a WiFi module or a wireless (including external) serial port for remote communication with the UAV, in particular with the on-board computer of the UAV 101, in particular with the communication unit 111 associated with it .
  • a communication device module, unit, etc.
  • the ground station 151 is associated with (or includes) at least one communication device (module, unit, etc.) (in particular, including a radio receiver 904 and radio transmitter 902), for example, a Bluetooth module, a WiFi module or a wireless (including external) serial port for remote communication with the UAV, in particular with the on-board computer of the UAV 101, in particular with the communication unit 111 associated with it .
  • the radio channel through which the ground station 151 and the UAV (in particular, the on-board computer of the UAV 101) exchange information can be Bluetooth, WiFi, or one of the known wireless serial ports.
  • the ground station may also operate without an operating system, such as in the case of ground station 151 implemented using a microcontroller, FPGA, or ASIC.
  • the user uses the means of the ground station 151 (for example, the destination calculation algorithm settings module 959, the label search algorithm settings module 969, the filter settings module 979), in particular, using the user interface 949 and data input means (devices), for example, a keyboard, a mouse, etc., the user enters warehouse parameters, for example, warehouse topology (number of racks, number of tiers, number of cells in one tier, geometric dimensions of racks, tiers, cells in any measurement system (for example, in the SI measurement system), aisle size between two racks), pallet dimensions (length, width and height in any measurement system), label parameters (label size, geographic location of barcodes on the label), target barcode parameters, radio tags, RF tags, QR codes (length, prefix, suffix, any regular expression that uniquely defines a suitable sequence of characters), PID controller coefficients for the navigation system, data upload format.
  • warehouse topology number of racks, number of tiers, number of cells in one tier, geometric dimensions of racks, tiers, cells in
  • the user using the ground station 151, can save and edit individual configurations of specific warehouses, as well as switch between them.
  • Initiation of the inventory process is also accomplished by the ground station 151, for example, the user may select a soft button on the graphical user interface 949 to initiate the inventory process, or the ground station may initiate the inventory process on a schedule specified by the user using the facilities of the ground station 151.
  • the data upload module 929 Upon completion of the warehouse inventory (actual work on the warehouse inventory), the data upload module 929 uploads data to the required format for each calculated rack (for example, by user command or according to a schedule, upon completion of inventory, etc.) to generate the resulting inventory list (from table data received by the table file receiving module 919 from the protocol processing module 909), or for loading the current state of warehouse inventory into the warehouse management system (WMS, from the English Warehouse Management System).
  • data can be uploaded into the required format during the inventory process, including for a partially counted rack, for each counted rack, for a set of racks, etc. upon receipt of a predefined set of data or upon completion of scanning at least one barcode, etc. including for generating a set of data, for example, in the format of the resulting inventory sheet, for transferring the current state of warehouse stocks to the warehouse management system, etc.
  • the ground station 151 includes a radio receiver 904 configured to receive data (including, but not limited to, UAV algorithm settings, photo/video from at least one camera installed on the UAV, rack inventory results, real-time UAV position monitoring), transmitted from the UAV, in particular, from the communication unit 111, and with the ability to transfer such data to the protocol processing module 909.
  • data including, but not limited to, UAV algorithm settings, photo/video from at least one camera installed on the UAV, rack inventory results, real-time UAV position monitoring
  • the ground station 151 includes a protocol processing module 909 configured to receive data from the settings sending module 989 and from (from) a radio receiver 904 and configured to transmit data to a radio transmitter 902.
  • the protocol processing module 909 is “mirrored” with respect to that on the UAV, in particular in the communication unit 111, in particular, uses the same protocols (instructions, etc.) to receive data from the UAV, in particular in the communication unit 111.
  • the ground station 151 also includes a table file receiving module 919 configured to receive a table (generated by the table generation module 626 of the scanning unit 121), in particular table data transmitted from the radio receiver 904, with the ability to download the data in the required format for each counted rack in including with the formation of the resulting inventory list (from the table data received by the table file receiving module 919 from the protocol processing module 909), or for loading the current state of warehouse stocks into the warehouse management system, and made with the ability to transfer data (data tables) to the unloading module data 929.
  • a table generated by the table generation module 626 of the scanning unit 121
  • the ability to download the data in the required format for each counted rack in including with the formation of the resulting inventory list from the table data received by the table file receiving module 919 from the protocol processing module 909), or for loading the current state of warehouse stocks into the warehouse management system, and made with the ability to transfer data (data tables) to the unloading module data 929.
  • the ground station 151 includes a table visualization module 939, configured to visualize the table (generated by the table generation module 626 of the scanning unit 121), in particular, table data transmitted from the radio receiver 904, using graphical interface elements 949.
  • the ground station 151 also includes a graphical user interface 949, in particular, a data input and data display module configured to display data received from the table visualization module 939 and user input, in particular, settings (parameters) transmitted to module for setting the algorithm for calculating the destination 959, module for setting the algorithm for searching for labels 969, module for setting filters 979. Also, the ground station 151 includes a module for setting the destination calculation algorithm 959, configured with the ability for the user to specify settings for the destination calculation algorithm using a graphical interface (user) 949 and with the ability to transfer such settings (parameters) to the settings sending module 989.
  • a graphical user interface 949 in particular, a data input and data display module configured to display data received from the table visualization module 939 and user input, in particular, settings (parameters) transmitted to module for setting the algorithm for calculating the destination 959, module for setting the algorithm for searching for labels 969, module for setting filters 979.
  • the ground station 151 includes a module for setting the destination calculation algorithm 959, configured
  • the configuration module for the destination calculation algorithm 959 includes a graphic element, in particular a “window”, in the graphical user interface, in which the user specifies (sets) warehouse parameters: geometric dimensions of pallets, beams, racks, tiers and others, which are subsequently used by the UAV autopilot to calculate the target destination when flying to the next pallet (tier, etc.).
  • the flight path of the UAV in particular, the specific flight path of the UAV is set using the means of the ground station 151 and in a particular case can be determined by the characteristics of a particular warehouse. It is also selected in what order to fly over the rack, and the order of flight is set by means of the ground station, for example, setting the UAV to fly from top to bottom or from left to right.
  • the ground station 151 also includes a label search algorithm settings module 969, configured to allow a user to specify label search algorithm settings using a graphical (user) interface 949 and to transmit such settings (parameters) to the settings sending module 989.
  • a label search algorithm settings module 969 configured to allow a user to specify label search algorithm settings using a graphical (user) interface 949 and to transmit such settings (parameters) to the settings sending module 989.
  • the label search algorithm configuration module 969 includes a graphical element, in particular a “window”, in the graphical user interface, in which the user specifies (sets) which label is now to be searched (in particular, which label to search for, including the first one, after processing the previous one, etc.) from a predefined (by the user, administrator, including using the tools of this module, graphical interface, data input device, etc.) list of labels that the block can recognize aiming 131.
  • a graphical element in particular a “window”
  • the user specifies (sets) which label is now to be searched (in particular, which label to search for, including the first one, after processing the previous one, etc.) from a predefined (by the user, administrator, including using the tools of this module, graphical interface, data input device, etc.) list of labels that the block can recognize aiming 131.
  • the ground station 151 also includes a filter settings module 979, configured to allow a user to specify filter settings (barcode filters) using a graphical (user) interface 949 and to transfer such settings (parameters) to the settings sending module 989.
  • a filter settings module 979 configured to allow a user to specify filter settings (barcode filters) using a graphical (user) interface 949 and to transfer such settings (parameters) to the settings sending module 989.
  • the filter configuration module 979 includes a graphical element, in particular a “window,” in the graphical user interface, in which the user specifies (sets) a regular expression by which barcodes are filtered (barcodes will be filtered), as well as additionally their length, or the ability to disable any filtering and accept all possible barcodes, and in a particular case, barcode filtering can be disabled so that all barcodes scanned by the scanner 181 are recorded in the non-volatile memory of the UAV.
  • a graphical element in particular a “window,” in the graphical user interface, in which the user specifies (sets) a regular expression by which barcodes are filtered (barcodes will be filtered), as well as additionally their length, or the ability to disable any filtering and accept all possible barcodes, and in a particular case, barcode filtering can be disabled so that all barcodes scanned by the scanner 181 are recorded in the non-volatile memory of the UAV.
  • the ground station 151 includes a settings sending module 989, configured to receive data from a destination calculation algorithm settings module 959, a label search algorithm settings module 969, a filter settings module 979 and with the ability to transmit data to the protocol processing module 909.
  • a settings sending module 989 configured to receive data from a destination calculation algorithm settings module 959, a label search algorithm settings module 969, a filter settings module 979 and with the ability to transmit data to the protocol processing module 909.
  • the ground station 151 also includes a radio transmitter 902 configured to receive data from a protocol processing module 909 and to transmit the data to a communications unit 111.
  • a radio transmitter 902 configured to receive data from a protocol processing module 909 and to transmit the data to a communications unit 111.
  • FIG. 10 shows an example circuit diagram of a UAV power section control unit 161, according to one embodiment of the present invention.
  • control unit of the power part of the UAV 161 includes a module for receiving control commands 1011, configured to receive control commands (control actions) from the navigation unit 141 and with the ability to transmit the received control commands (actions) to the module for converting commands into data packets 1021.
  • the control unit of the power part of the UAV 161 also includes a module for converting commands into data packets 1021, configured to receive control commands (control actions) from the module for receiving control commands 1011 and with the ability to convert the received control commands (actions) into packages (in particular, into sets ) data, and also configured to transmit generated data packets from received control commands (influences) to the module for sending data packets 1031.
  • a module for converting commands into data packets 1021 configured to receive control commands (control actions) from the module for receiving control commands 1011 and with the ability to convert the received control commands (actions) into packages (in particular, into sets ) data, and also configured to transmit generated data packets from received control commands (influences) to the module for sending data packets 1031.
  • control unit of the power part of the UAV 161 includes a module for sending data packets 1031, configured to receive data packets from (from) the module for converting commands into data packets 1021 and with the ability to transmit data packets to the flight controller 1041.
  • the UAV power section control unit 161 also includes a flight controller configured to at least receive data packets from the data packet sending module 1031 and transmit data, including data packets, including conversion, to the UAV 1051 engines.
  • the engines of the UAV 1051 can be controlled using one of the existing flight controllers (used by a wide range of people, in particular the community) 1041, allowing control of any UAV using a radio remote control.
  • the peripheral board in particular, from the data packet sending module 1031
  • data packets are transmitted using the same protocol through which the radio control panel transmits data to the flight controller 1041.
  • the use of existing flight controllers in particular allows to reduce the cost of the described system as a whole, since the existing flight controllers have already been debugged and tested by many people and its development is not required.
  • the described system can operate in two operating modes: the UAV can be controlled (including by the user) using an existing radio control panel, and the flight controller can be configured separately from the autopilot configuration.
  • control can be intercepted at any time, which can be used, among other things, when testing the described system under new conditions.
  • the control unit of the power part of the UAV 161 in a particular case consists of a peripheral board that receives (via the control command receiving module 1011) high-level commands from the navigation unit 141 and generates (via the module for converting commands into data packets 1021) data packets using one of many protocols (specifically, data transfer protocols) supported by the 1041 flight controller.
  • data transfer protocols supported by the 1041 flight controller (for data transfer between the peripheral board and the 1041 flight controller) can use the PWM (from the English Pulse-width modulation, pulse-width modulation), PPM (from the Pulse Position Modulation, phase-width modulation) protocol. pulse modulation), SBus, DSM2, DSMX, SUMD, etc.
  • PWM from the English Pulse-width modulation, pulse-width modulation
  • PPM from the Pulse Position Modulation, phase-width modulation
  • SBus from the Pulse Position Modulation, phase-width modulation
  • DSM2 DSMX SUMD,
  • the UAV power section control unit 161 also includes the UAV 1051 engines.
  • FIG. 11 shows an example of a general purpose computer system that includes a multi-purpose computing device in the form of a computer 20 or server including a processor 21, system memory 22, and a system bus 23 that interfaces various system components, including system memory, to the processor. 21.
  • the system bus 23 may be any of various types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
  • System memory includes a read-only memory (ROM) 24 and a random access memory (RAM) 25.
  • the ROM 24 stores the basic input/output system (BIOS) 26, which consists of basic routines that help exchange information between elements within the computer 20, e.g. at the time of launch.
  • BIOS basic input/output system
  • the computer 20 may also include a hard disk drive 27 for reading from and writing to a hard disk drive, not shown, a magnetic disk drive 28 for reading from or writing to a removable magnetic disk 29, and an optical disk drive 30 for reading from or recording onto a removable optical disk 31 such as a compact disc, digital video disc and other optical media.
  • the hard disk drive 27, the magnetic disk drive 28, and the optical disk drive 30 are connected to the system bus 23 via a hard disk drive interface 32, a magnetic disk drive interface 33, and an optical drive interface 34, respectively.
  • the storage devices and their associated computer-readable media provide non-volatile storage of computer-readable instructions, data structures, program modules, and other data for the computer 20.
  • Computer 20 includes a file system 36 associated with or included in operating system 35, one or more software application 37, other software modules 38, and program data 39.
  • the user may enter commands and information into the computer 20 using input devices such as a keyboard 40 and pointing device 42.
  • Other input devices may include a microphone, joystick, gamepad, satellite dish, scanner, or any other.
  • serial port interface 46 which is coupled to the system bus, but may be connected through other interfaces such as a parallel port, a game port, or a universal serial bus (USB).
  • a monitor 47 or other type of visual display device is also coupled to the system bus 23 via an interface, such as a video adapter 48.
  • personal computers typically include other output peripherals (not shown), such as speakers and printers.
  • Computer 20 may operate in a networked environment through logical connections to one or more remote computers 49.
  • Remote computer(s) 49 may be another computer, server, router, network PC, peering device, or other node on a single network, and also typically includes includes most or all of the elements described above with respect to computer 20, although only storage device 50 is shown.
  • Logical connections include local area network (LAN) 51 and wide area network (WAN) 52.
  • LAN local area network
  • WAN wide area network
  • a computer 20 used in a LAN network environment connects to a local area network 51 via a network interface or adapter 53.
  • a computer 20 used in a GCS network environment typically uses a modem 54 or other means to establish communications with a global computer network 52, such as the Internet.
  • Modem 54 which may be internal or external, is connected to system bus 23 via a serial port interface 46.
  • program modules or portions thereof described in connection with computer 20 may be stored on a remote storage device. Please note that the network connections shown are typical and other means may be used to establish communication links between computers.

Abstract

Данное техническое решение относится к вычислительной технике и, в частности, к технологии автономной инвентаризации. Технический результат, достигаемый предлагаемым данным техническим решением, заключается в значительном повышении скорости проведения процессов инвентаризаций складских помещений, повышении точности сканирования, просчета товара на складе, повышении эффективности инвентаризации, снижения числа ошибок и ложных сканирований, а также повышении уровня безопасности склада за счет исключения человека из процесса инвентаризации.

Description

Система автономной инвентаризации склада.
ОБЛАСТЬ ТЕХНИКИ
Данное техническое решение относится к вычислительной технике и, в частности, к технологии автономной инвентаризации.
УРОВЕНЬ ТЕХНИКИ
В настоящее время проблема организации и выполнения эффективного процесса инвентаризации складских помещений является очень актуальной. Данный процесс требует вовлечение больших человеческих ресурсов и довольно продолжительных временных затрат, в течение которого складское помещение приходится «замораживать» на время проведения инвентаризации. Кроме того, чаще всего в этом процессе принимают активное участие работники склада, что ставит безопасность их жизней под угрозу, и, следовательно, увеличивает риски для логистических компаний.
На сегодняшний момент все складские помещения можно разделить на 4 типа.
Полностью роботизированные склады. В данном случае, весь цикл складских операций - прием, хранение, учет и отгрузка товара полностью роботизированы, а, значит, проводить инвентаризацию на таких складах нет необходимости, так как система самостоятельно ведёт учет перемещения товара на складе в режиме реального времени.
К недостаткам такого подхода можно отнести его дороговизну и окупаемость только на очень больших объемах оборота товара на складе. Кроме того, существующие складские комплексы, не относящиеся к данному типу складских помещений, невозможно переделать под полностью роботизированные, без полной перестройки склада.
Полуавтоматизированные склады. На таких складах используются терминалы сбора данных и WMS -система для контроля и учета товара на складе. К таким складам можно отнести склады монопаллетного хранения, узко- и широкопроходные, и набивные, где инвентаризацию осуществляет персонал склада с помощью подъёмников.
Минусы данного подхода заключаются в том, что по-прежнему имеются довольно большие объёмы товара на складе, которые требуют учета, однако в качестве основной рабочей силы тут выступают люди, которые выполняют тяжелую и небезопасную для жизни работу. К тому же, по сравнению с роботизированными системами, люди тратят очень много времени на данные операции, что приводит к необходимости, во-первых, увеличению времени «заморозки» складских помещений на время проведения инвентаризации, а во-вторых, к увеличению рабочей силы на время проведения инвентаризации, то есть персонал склада работает в несколько смен одновременно.
Неавтоматизированные склады. Как правило, это склады небольшого объема хранения, набивного типа, где автоматизировать процесс инвентаризации даже с использованием WMS-системы и терминалов сбора данных не целесообразно по экономическим соображениям.
Проблема данных складов в том, что персонал склада вынужден вести учет товара с помощью инвентаризационных журналов и ведомостей, и вносить в них записи вручную. Этот метод имеет самые низкие точность учета товаров на складе и скорость проведения инвентаризации. Но из-за того, что существующие методы автоматизации учета товара являются слишком дорогостоящими, такие склады нельзя автоматизировать, так как этот процесс себя не окупит.
К последнему типу относятся склады специализированного хранения. Это могут быть склады, где хранятся товары добывающей промышленности (тут возможны специальные условия - высокий уровень загрязнённости воздуха, высокая температура) или склады, требующие поддержания низкой температуры (например, для мясных изделий). Условия окружающей среды на таких складах являются некомфортными для работы человека. Проблема их автоматизации является наиболее актуальной.
Резюмируя вышеизложенное, необходимо отметить, что основными недостатками существующих способов проведения инвентаризации складских помещений является низкая скорость сканирования ячеек, и, как следствие, продолжительный простой склада во время инвентаризации, а также большая опасность для жизни и здоровья работников склада из-за их большой вовлеченности в процесс инвентаризации складских помещений.
Таким образом, в уровне развития техники и технологий наблюдается необходимость в создании автономных систем инвентаризации.
СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯ
Технический результат, достигаемый предлагаемым данным техническим решением, заключается в значительном повышении скорости проведения процессов инвентаризаций складских помещений, повышении точности сканирования, просчета товара на складе, повышении эффективности инвентаризации, снижения числа ошибок и ложных сканирований, а также повышении уровня безопасности склада за счет исключения человека из процесса инвентаризации.
1. Согласно одному из вариантов реализации, предлагается система автономной инвентаризации, включающая:
• По крайней мере один БПЛА, включающий: о бортовой компьютер БПЛА (101); о блок связи (111), выполненный с возможностью
■ передачи данных в блок сканирования, по крайней мере настроек фильтров штрих-кодов;
■ передачи данных в блок прицеливания, по крайней мере, настроек алгоритма поиска этикетки и расчета оптимального расстояния подлета к ней;
■ передачи данных в блок навигации, по крайней мере, настроек алгоритма расчета управляющих воздействий;
■ получения и передачи данных от наземной станции, включая данные о складе и его топологии, размерах паллет, параметрах этикетки, параметрах целевых штрих-кодов, радиометок, RF-меток, QR-кодов, коэффициенты ПИД-регулятора для блока навигации; о блок сканирования (121), выполненный с возможностью :
■ получения данных от блока связи (111);
■ передачи данных и сигналов о поиске новой этикетки в блок прицеливания (131); ■ передачи данных в блок связи (111) о по крайней мере наборе отсканированных штрихкодов; о блок прицеливания (131), выполненный с возможностью
■ получения данных от блока связи (111);
■ передачи данных в блок навигации (141) о новом пункте назначения о блок навигации (141), выполненный с возможностью:
■ получения данных от блока связи (111), включая данные о настройке определения управляющих воздействий, включая коэффициенты ПИД-регулятора;
■ формирования и передачи в блок управления силовой частью БПЛА (161) управляющих команд;
■ определения положения БПЛА в пространстве на основании данных полученных с по крайней мере одной камеры (171) и лидара (191);
■ определения управляющих воздействий с использованием полученных коэффициентов ПИД-регулятора;
■ получения данных о новом пункте назначения от блока прицеливания (131); о блок управления силовой частью БПЛА (161) выполнен с возможностью:
■ получения управляющих команд от блока навигации (141) и преобразования команд в пакеты данных и отправления пакетов команд в полетный контроллер (1041); и включает по крайней мере:
■ полетный контроллер (1041), выполненный с возможностью управления двигателями БПЛА (1051);
■ по крайней мере один двигатель БПЛА (1051); о по крайней мере один сканер (181); о лидар (191); о по крайней мере одну камеру (171);
• По крайней мере одну наземную станцию (151), выполненную с возможностью: о получения и передачи данных на по крайней мере один БПЛА; о осуществления хранения и передачи данных на по крайней мере один БПЛА о складе и его топологии, размерах паллет, параметрах этикетки, параметрах целевых штрих-кодов, радиометок, RF-меток, QR-кодов, коэффициенты ПИД-регулятора для блока навигации; о формирования инвентаризационной ведомости на основании данных, полученных от по крайней мере одного БПЛА; о интеграции и выгрузки актуального состояния склада в систему управления складом;
В некоторых вариантах реализации камера является ЗВ-камерой.
В некоторых вариантах реализации котором 3D камера выполнена с возможностью трехмерного сканирования и распознавания элементов.
В некоторых вариантах реализации камера дополнительно содержит камеру глубины.
В некоторых вариантах реализации камера может быть выполнена с возможностью локализации и построения карты с осуществлением формирования карты в неизвестном пространстве и обновление карты в заранее известном пространстве с одновременным контролем текущего положения и пройденного пути.
В некоторых вариантах реализации блок связи (111) получает данные от наземной станции (151) по радиоканалу.
В некоторых вариантах реализации по крайней мере сканер (181) является сканером штрих кодов или сканером радиометок.
КРАТКОЕ ОПИСАНИЕ ГРАФИЧЕСКИХ МАТЕРИАЛОВ
ФИГ. 1 иллюстрирует примерный вариант системы, описываемой в настоящем изобретении, согласно одному из вариантов настоящего изобретения;
ФИГ. 2 иллюстрирует примерный вариант принципиальной схемы блока навигации, согласно одному из вариантов настоящего изобретения;
ФИГ. 3 иллюстрирует примерный вариант принципиальной схемы алгоритма работы блока навигации, в частности показан процесс формирования управляющих воздействий, согласно одному из вариантов настоящего изобретения;
ФИГ. 4 иллюстрирует примерный вариант принципиальной схемы блока прицеливания, согласно одному из вариантов настоящего изобретения;
ФИГ. 5 иллюстрирует примерный вариант принципиальной схемы алгоритма работы блока прицеливания, согласно одному из вариантов настоящего изобретения;
ФИГ. 6 иллюстрирует примерный вариант принципиальной схемы блока сканирования, согласно одному из вариантов настоящего изобретения;
ФИГ. 7 иллюстрирует примерный вариант алгоритма фильтрации подходящих последовательностей символов блоком сканирования, согласно одному из вариантов настоящего изобретения;
ФИГ. 8 иллюстрирует примерный вариант принципиальной схемы блока связи 111, согласно одному из вариантов настоящего изобретения;
ФИГ. 9 иллюстрирует примерный вариант принципиальной схемы наземной станции 151, согласно одному из вариантов настоящего изобретения;
ФИГ. 10 иллюстрирует примерный вариант принципиальной схемы блока управления силовой частью БПЛА, согласно одному из вариантов реализации настоящего изобретения;
ФИГ. 11 иллюстрирует пример компьютерной системы общего назначения.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Объекты и признаки настоящего технического решения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее техническое решение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспечивающими помощь специалисту в области техники в исчерпывающем понимании технического решения, и настоящее техническое решение определяется только в объеме приложенной формулы.
Используемые в настоящем описании настоящего технического решения термины «модуль», «компонент», «элемент» и подобные используются для обозначения компьютерных сущностей, которые могут являться аппаратным обеспечением/оборудованием (например, устройством, инструментом, аппаратом, аппаратурой, составной частью устройства, например, процессором, микропроцессором, интегральной схемой, печатной платой, в том числе электронной печатной платой, макетной платой, материнской платой и т.д., микрокомпьютером и так далее), программным обеспечением (например, исполняемым программным кодом, скомпилированным приложением, программным модулем, частью программного обеспечения или программного кода и так далее) и/или микропрограммой (в частности, прошивкой). Так, например, компонент может быть процессом, выполняющемся на процессоре (процессором), объектом, исполняемым кодом, программным кодом, файлом, программой/приложением, функцией, методом, (программной) библиотекой, подпрограммой, сопрограммой и/или вычислительным устройством (например, микрокомпьютером или компьютером) или комбинацией программных или аппаратных компонентов.
На ФИГ. 1 показан вариант системы, описываемой в настоящем изобретении, согласно одному из вариантов настоящего изобретения.
Описываемая система может быть использована в том числе для проведения инвентаризации складских помещений в том числе без участия человека, в частности в автономном (автоматическом) режиме.
Описываемая система позволяет повысить скорость проведения процессов инвентаризаций складских помещений, повысить точность сканирования и просчета товара на складе, а также повысить уровень безопасности проведения работ, в том числе за счет исключения человека из процесса инвентаризации.
Одним из результатов работы описываемой системы является физический просчет товара на складе, задокументированный в виде инвентаризационной ведомости, которая генерируется наземной частью системы в процессе или по завершению всех проделанных работ.
В частном случае использование БПЛА позволяет ускорить просчет ячеек, по сравнению с традиционными методами сканирования, а также не требует дополнительного оборудования для развёртывания системы. Наземная станция 151 используется, по крайней мере, для первоначальной настройки описываемой системы и получения данных инвентаризации, а также выгрузки данных по окончанию процесса инвентаризации, как описано в рамках настоящего изобретения.
В частном случае БПЛА может обмениваться данными с наземной станцией 151 или, в частном случае, может осуществляться передача данных с БПЛА на наземную станцию 151 по окончании инвентаризации, т.е. на протяжении всего цикла работ системы по проведению инвентаризации связь между БПЛА и наземной станцией 151 может не осуществляться.
Одна наземная станция 151 может являться частью нескольких систем, примерный вариант которой показан на ФИГ. 1, в частности, может быть связана с более чем одним БПЛА. Так, например, одна наземная станция может использоваться для подключения и настройки нескольких БПЛА.
В частном случае перед непосредственным началом инвентаризации с использованием средств наземной станции 151 осуществляется настройка (пользователем, в автоматизированном режиме с использованием алгоритмов, программного обеспечения, выполняемых на наземной станции 151) настройка БПЛА для последующих работ, в частности, осуществления функционирования БПЛА, наземной станции 151 в процессе проведения инвентаризации. Так, упомянутая настройка может включать следующие, но не ограничивающие, параметры склада, в частности в интерфейсе наземной станции 151: топология склада (количество стеллажей, количество ярусов, количество ячеек в одном ярусе, геометрические размеры стеллажей, ярусов, ячеек в любой системе измерения, размер прохода между двумя стеллажами), размеры паллет (длина, ширина и высота в любой системе измерения), параметры этикетки (размер этикетки, географическое расположение штрих-кодов на этикетке), параметры целевых штрих-кодов, радиометок, RF -меток, QR-кодов (длина, префикс, суффикс, любое регулярное выражение, однозначно определяющее подходящую последовательность символов), коэффициенты ПИД- регулятора для системы навигации, формат выгрузки данных и т.д.
Далее осуществляется сохранение заданных настроек (в частности, текущую конфигурацию системы) в памяти наземной станции 151 (например, в хранилище данных, связанном с хранилищем данных 151), в том числе с возможностью дальнейшего ее редактирования, а также с возможностью выбора (перехода) между сохраненными конфигурациями системы.
Далее осуществляется запуск процесса инвентаризации, например, с использованием элементов интерфейса наземной станции 151, в частности, графического интерфейса, например, по нажатию соответствующей кнопки.
Далее осуществляется функционирование системы, как описано в рамках настоящего изобретения, в процессе инвентаризации, причем в процессе инвентаризации или по его окончании, в частности, в процессе процесса просчета товара на складе или его завершении, БПЛА передает собранные и обработанные (в том числе сформированные) данные, полученные в процессе инвентаризации или являющиеся результатом инвентаризации, на наземную станцию 151, в частности, с помощью наземной станции 151 подключаются к БПЛА по радиоканалу и осуществляют выгрузку данных в требуемом формате, в том числе для формирования (составления) результирующей инвентаризационной ведомости, а также для загрузки актуального состояния склада в систему управления складом (англ. Warehouse Management System, аббр. WMS).
Показанная на ФИГ. 1 система включает бортовой компьютер БПЛА 101, размещаемый на БПЛА. БПЛА может являться квадрокоптером, октокоптером, мультикоптером, вертолетом и подобным летательным аппаратом, связанным с наземной станцией 151. БПЛА, в частности, бортовой компьютер БПЛА 101, и наземная станция 151 обмениваются данными по РЧ-каналу.
Бортовой компьютер БПЛА 101 связан с устройствами, в частности, периферийными устройствами, например такими как камеры (системы регистрации видеоизображения, устройства регистрации изображения, устройства регистрации видеоизображения, регистрирующие изображения устройства), в частности, видеокамеры, а также лидары, сканер(ы) штрих-кодов, сканер(ы) радиометок, радиомодуль (радиоблок и т. д.).
Бортовой компьютер БПЛА 101 является бортовой частью описываемой системы, в частности, является вычислительным устройством, выполнен с возможностью обеспечения, по крайней мере, функционирования блока связи 111, блока сканирования 121, блока прицеливания 131, блока навигации 141, а также с возможностью получения и обработки данных, передаваемых в блоки (модули, подмодули, подсистемы, системы, субблоки) бортового компьютера БПЛА 101 и получаемых от блоков (модулей и т.д.) бортового компьютера БПЛА 101, в том числе с возможностью обеспечения обмена данными (информацией) между блоками (модулями) бортового компьютера БПЛА 101, устройствами, связанными или содержащимися бортовым компьютером БПЛА 101, в том числе с периферийными устройствами, модулями (блоками) и т.д., в том числе с использованием блока связи 111.
Бортовым компьютером БПЛА 101 может являться, по крайней мере, одно устройство на базе (использующее), по крайней мере, один микроконтроллер, ПЛИС (программируемая интегральная логическая схема, англ, programmable logic device, PLD) и ASIC (от англ, application-specific integrated circuit, «интегральная схема специального назначения»), а также может использовать, по крайней мере, один процессор, микропроцессор и т. д.
Так, бортовой компьютер БПЛА 101 осуществляет обмен (119) данными с наземной станцией 151 и передаёт (145), по крайней мере, управляющие команды (управляющий воздействия) в блок управления силовой частью БПЛА (блок управления двигателями БПЛА) 161, как описано в рамках настоящего изобретения.
Бортовой компьютер БПЛА 101 содержит, по крайней мере, блок связи 111, блок сканирования 121, блок прицеливания 131, блок навигации 141, как описано в рамках настоящего изобретения. Блок связи 111 передает (113) в блок сканирования 121, по крайней мере, настройки фильтров штрих кодов, как описано в рамках настоящего изобретения.
Блок связи 111 передает (115) в блок прицеливания 131, по крайней мере, настройки алгоритма поиска этикетки и расчета оптимального расстояния подлета к ней, как описано в рамках настоящего изобретения.
Блок связи 111 передает (117) в блок навигации 141, по крайней мере, настройки алгоритма расчета управляющих воздействий, как описано в рамках настоящего изобретения.
Блок связи 111 получает (119) данные, в частности, по радиоканалу, от наземной станции 151, а также передает (119) данные, в частности, по радиоканалу, на наземную станцию 151, как описано в рамках настоящего изобретения.
Блок сканирования 121 передает (127) в блок прицеливания 131, по крайней мере, сигнал о поиске новой этикетки, как описано в рамках настоящего изобретения.
Блок сканирования 121 передает (125) в блок связи 111, по крайней мере, набор отсканированных штрихкодов, например, в формате таблицы с отсканированными штрихкодами, как описано в рамках настоящего изобретения.
Блок прицеливания 131 передает (135) в блок навигации 141, по крайней мере, информацию (данные) о новом пункте назначения, как описано в рамках настоящего изобретения.
Блок навигации 141 формирует и передает в блок управления силовой частью БПЛА 161, по крайней мере, управляющие команды (воздействия), как описано в рамках настоящего изобретения.
Так, компоненты (части, блоки, модули) системы, примерный вариант которой изображен на ФИГ. 1, могут быть связаны между собой (и любыми другими компонентами, устройствами и сервисами (службами), способными получать информацию от компонентов (частей) описываемой системы и/или передавать данные в описываемые компоненты системы) посредством различных видов связи, например, посредством локальной вычислительной сети (ЛВС), сети интернет, (средствами) мобильной связи, спутниковой связи и/или посредством любого другого вида или способа проводной связи (например, посредством USB-интерфейса, интерфейса стандарта RS-232/СОМ-порта и т.д.) и/или беспроводной связи, например, Bluetooth, Wi-Fi, мобильной сотовой связи (GSM), в том числе 3G, 4G, LTE, в частности, в диапазонах 850/900/1800/1900 МГц, спутниковой связи, транкинговой связи и каналов передачи данных со сверхнизким энергопотреблением, формирующие сложные беспроводные сети с ячеистой топологией (ZigBee) и т.д.
Связь между компонентами (частями, блоками, модулями) системы, примерный вариант которой изображен на ФИГ. 1, их блоками может быть осуществлена посредством, по крайней мере, одного протокола передачи данных, в том числе сетевого протокола, например, TCP/IP, HTTP/HTTPs (англ. Hyper Text Transfer Protocol, «протокол передачи гипертекста»), FTP (англ. File Transfer Protocol, «протокол передачи файлов»), POP3 (англ. Post Office Protocol, «стандартный протокол почтового соединения»), SMTP (англ. Simple Mail Transfer Protocol, «протокол, который задает набор правил для передачи почты»), TELNET (протокол удаленного доступа), ХМРР (от англ. Extensible Messaging and Presence Protocol, «расширяемый протокол обмена сообщениями и информацией о присутствии», ранее известный как Jabber - открытый, основанный на XML, протокол для мгновенного обмена сообщениями и информацией о присутствии в режиме, близком к режиму реального времени), DTN и т.д.
Хранение данных может осуществляться, по крайней мере, на одном средстве, в частности, устройстве, для хранения информации (данных) и может являться (в частности, может быть реализовано), по крайней мере, одним накопителем на жестких магнитных дисках (НЖМД/HDD, англ, hard (magnetic) disk drive), твердотельным накопителем (SSD, англ, solid-state drive), гибридным жестким диском (SSHD, англ, solid-state hybrid drive), сетью хранения данных (СХД/SAN, англ. Storage Area Network), сетевой системой хранения данных/сетевым хранилищем (NAS, англ. Network Attached Storage) и/или любым другим средством (устройством), позволяющим осуществлять, по крайней мере, запись и/или хранение данных. Данные могут храниться в любом известном формате, например, в базе данных (БД), например, в виде, по крайней мере, одной таблицы или набора связанных или не связанных между собой таблиц базы данных. По крайней мере, одна упомянутая база данных может являться иерархической, объектной, объектно-ориентированной, объектно- реляционной, реляционной, сетевой и/или функциональной базой данных, каждая из которых может быть централизованной, сосредоточенной, распределённой, неоднородной, однородной, фрагментированной/секционированной, тиражированной, пространственной, временной, пространственно-временной, циклической, сверхбольшой базой данных и т.д., причем для управления, создания и использования баз данных могут использоваться различные системы управления базами данных (СУБД).
Также, данные в упомянутых хранилищах данных могут храниться, по крайней мере, в одном файле, в частном случае, в виде текстового файла, либо данные могут храниться в любом, по крайней мере, одном другом известном в настоящее время формате хранения данных/информации или в формате данных, изобретенном позднее.
На ФИГ. 2 показан примерный вариант принципиальной схемы блока навигации 141, согласно одному из вариантов настоящего изобретения.
Блок навигации 141 включает модуль приема (данных) настроек алгоритма 222 из блока связи 111, который выполнен с возможностью, по крайней мере, получения (приема) настроек алгоритма и передачи их в модуль вычисления управляющих воздействий 232. Настройки алгоритма расчета (определения) управляющих воздействий (команд) включают коэффициенты ПИД-регулятора. Блок связи 111 передаёт настройки алгоритма в виде массива чисел. Блок связи 111 получает настройки алгоритма в виде радиосигнала с наземной станции 151, преобразует радиосигнал в массив чисел. Модуль 232 принимает данные, обрабатывает их, с использованием коэффициентов ПИД-регулятора, и на выходе формирует управляющие воздействия (команды).
Блок навигации 141 также включает модуль вычисления (определения) управляющих воздействий 232, осуществляющий вычисление (определение) управляющих воздействий (передаваемых в блок управления силовой частью БПЛА 161), как описано в рамках настоящего изобретения, с использованием данных, полученных, по крайней мере, из блока прицеливания 131, камеры 171 и блока связи 111. Блок навигации 141 также включает модуль приема данных с камеры и лидара 204, выполненный с возможностью, по крайней мере, получения данных с камеры 171, обработки и передачи полученных данных в модуль вычисления положения БПЛА в пространстве 208. Модуль приема данных с камеры и лидара 204 получает данные с камеры 171 в виде изображения и преобразует его в матрицу чисел, по которой в дальнейшем происходит вычисление положения БПЛА в пространстве в модуле вычисления положения БПЛА в пространстве 208. Положение БПЛА определяется положением полётного контроллера, поэтому, зная положение камеры 171 и смещение камеры до полётного контроллера, следует вычислить положение полётного контроллера. Положение полётного контроллера вычисляется по следующей формуле:
Figure imgf000012_0001
где Rf — положение полётного контроллера, Rr - положение камеры, Qr - кватернион поворота камеры, т - - радиус вектор соединяющий центр полётного контроллера и камеру.
Блок навигации 141 также включает модуль вычисления положения БПЛА в пространстве 208, выполненный с возможностью вычисления положения БПЛА в пространстве, как описано в рамках настоящего изобретения, и передачи вычисленного положения БПЛА в модуль вычисления управляющих воздействий 232.
Блок навигации 141 также включает модуль приема целевого (или нового) пункта назначения 242, выполненный с возможностью приема целевого (или нового) пункта назначения из блока прицеливания 131, обработки и передачи в модуль вычисления управляющих воздействий 232. Модуль приёма целевого пункта назначения 242 преобразует трёхмерный декартовый вектор относительного смещения БПЛА в три координаты по осям X, Y, Z и кватернион поворота БПЛА, а затем передаёт это в модуль управляющих воздействий 232.
На ФИГ. 3 показан примерный вариант принципиальной схемы алгоритма работы блока навигации 141, в частности показан процесс формирования управляющих воздействий, согласно одному из вариантов настоящего изобретения.
Блок навигации 141 в частном случае является программным модулем (программным блоком, программно-аппаратным блоком, программно-аппаратным модулем), в частности, исполняемой программой, размещающейся (размещаемой) в памяти бортового компьютера БПЛА (бортового компьютера) 101 и связан, по крайней мере, с одним регистрирующим изображение (в частности, видеоизображение), в частности, подключенным к бортовому компьютеру БПЛА 101 с использованием, по крайней мере, одного из известных интерфейсов подключения таких регистрирующих (а также выполненных с возможностью, по крайней мере, хранить, обрабатывать, передавать, отправлять и т.д. данные, в том числе регистрируемые) устройств, в частности камеры 171, в том числе с использованием USB, I2C, SCCB, SPI, CSI и т.д.
Камера 171 может являться частью блока навигации 141 или может подключаться к блоку навигации 141 (может быть связана с блоком навигации) с использованием, по крайней мере, одного из известных способов (типов, видов и т.д.) связи, в том числе с использованием, по крайней мере, одного из известных интерфейсов подключения подобных регистрирующих (в частности, изображение) устройств.
Блок навигации 141 выполнен с возможностью, по крайней мере, определения положения БПЛА в пространстве и вычисления управляющих воздействий, в том числе для блока управления силовой частью БПЛА 161, с использованием, по крайней мере, одного регистрирующего изображения устройства, в частности камеры 171. Определение (вычисление) положения БПЛА в пространстве осуществляется модулем вычисления положения БПЛА в пространстве 208. Вычисление управляющих воздействий осуществляется модулем вычисления управляющих воздействий 232.
Регистрирующее изображения устройство, в частности, камера 171, может являться ЗО-ка ерой (в том числе использующей алгоритм ЗО-стерео, с возможностью трехмерного сканирования, распознавания элементов (объектов и т.д. на изображении и др.), камерой глубины, совмещенной с RGB-камерой, трекинговой камерой (камерой трекинга), в том числе использующей оптический трекинг, графический процессор, в том числе с возможностью обработки (предварительной, последующей и т.д. обработки), а также включающей измерительный блок, в том числе включающая, по крайней мере, один видеодатчик, позволяющий идентифицировать различия изображений с различными разрешениями сторон (например, 1280x720, 1920x1080, 3840x2160 и т.д. пикселей). Одним из преимуществ использования трекинговых камер (камер трекинга) заключается в том, что они разработаны специально для определения ориентации и позиции реального объекта в четырёхмерном пространстве-времени. Как правило, такие камеры обладают возможностью вычислять положение объекта в пространстве, а также его ориентацию, относительно начального положения. Положение объекта в пространстве может задаваться с помощью кватерниона поворота и его декартовых координат.
Перед началом осуществления локализации и построения карты с осуществлением формирования карты в неизвестном пространстве и обновлением карты в заранее известном пространстве с одновременным контролем текущего положения и пройденного пути осуществляется задание (в частности, ввод) калибровочных значений, в частности, в процессе настройки БПЛА, по крайней мере, один раз, например, на этапе сборки БПЛА или перед началом функционирования БПЛА, или в процессе использования БПЛА, в том числе для повышения точности, корректировки и т.д. локализации и построения карты и т.д., в том числе в зависимости от данных, регистрируемых камерой 171, в зависимости от формируемой карты, в том числе ее соответствии окружающему БПЛА пространству в автоматическом режиме, в полуавтоматическом режиме или в ручном режиме (в частности, пользователем, например, оператором склада, оператором БПЛА и т.д.). В частном случае калибровочные значения вводятся пользователем с использованием вычислительного устройства, связанного с БПЛА, в память (в частности, память запоминающего устройства) БПЛА. В частном случае калибровочными значениями являются значения, которые могут быть использованы для расчёта траектории полёта БПЛА, управляющих воздействий для двигателей БПЛА (1051, ФИГ. 10), и различного рода других параметров полёта БПЛА.
Для определения положения БПЛА в пространстве блоком навигации 141, в частности, модулем вычисления положения БПЛА в пространстве 208, может быть использован один из известных способов (и алгоритмов) локализации и построения карты, например, может быть использован алгоритм SLAM (от англ, simultaneous localization and mapping — одновременная локализация и построение карты), осуществляющих формирование (построение, создание) карты в неизвестном пространстве и обновление карты в заранее известном пространстве с одновременным контролем текущего положения (местоположения) и пройденного пути. В частном случае регистрирующее изображения устройство, в частности, камера 171, может быть выполнено с возможностью локализации и построения карты с осуществлением формирования карты в неизвестном пространстве и обновление карты в заранее известном пространстве с одновременным контролем текущего положения и пройденного пути, например, в камере 171 может быть реализован алгоритм SLAM, в том числе аппаратно (средствами камеры 171), в частности, может выполняться алгоритм SLAM средствами камеры 171.
Также, локализация и построения карты с формированием и обновлением карт(ы) в пространствах с контролем текущего положения и пути, например алгоритм SLAM, может быть реализован средствами (в частности, по крайней мере одним блоком, модулем и т.д.) бортового компьютера БПЛА 101 (в частности, программно), например, блоком навигации 141. В частном случае камерой может являться камера (в частности, видеокамера) высокого разрешения. Так, на камере могут размещаться камеры высокого разрешения (камеры высокого разрешения могут быть связаны с камерой) для фотографирования (регистрации изображения) паллет. В случае необходимости эти же самые камеры могут быть использованы в качестве сенсоров для алгоритма SLAM.
Локализация и алгоритм построения карты устроены следующим образом: лидар 191 выдаёт облако точек с частотой порядка 10 Гц. Из-за высокого количества точек и высокой дальности работы лидара имеется возможность построить детальную карту, что позволяет БПЛА ориентироваться в нём с высокой точностью.
Для корректировки ошибок лидара, связанных с низкой частотой обновления, используется трекинговая камера. Она позволяет алгоритму навигации получать данные об одометрии системы (кватернион положения в пространстве) с большей частотой, в сравнении с камерой. Данное решение позволяет с большей частотой, а следовательно, и с большей точностью, определять путь БПЛА.
SLAM позволяет объединить данные с лидара и трекинговой камеры, чтобы на основании этих данных получить карту с высокой точностью. Принцип его работы основывается на объединении облаков точек, получаемых с лидара в каждый момент времени, при этом накапливаемая ошибка навигации, связанная с низкой частотой работы лидара, устраняется поправкой, получаемой с помощью данных одометрии с трекинговой камеры.
Блок навигации 141 обладает функционалом локализации, построения карты склада вместе с информацией о наполнении стеллажей товаром, формирование карты пространства, обновления карты помещения, контроля текущего положения БПЛА, реализации алгоритма SLAM, а также управления позицией БПЛА (в частности, координирования местоположения БПЛА) в пространстве. Карта пространства представляет из себя облако точек в трёхмерном измерении. Карта склада вместе с информацией о наполнении стеллажей товаром представляет из себя топологию склада с внесённой в неё информацию о наполнении стеллажей товаром.
Положение БПЛА в пространстве получается (регистрируется и формируется, в частности, вычисляется) одним из указанных выше способов. В одном из частных вариантов местоположение БПЛА (в частности, положение в пространстве) формируется в формате (в виде) трехмерных декартовых координат относительно точки старта БПЛА. Система координат может быть сброшена (например, обнулена, установлены значения параметров по умолчанию и т.д.) по команде с наземной станции 151 в любой момент времени (или предустановленный, заранее заданный), в том числе для увеличения гибкости системы и её надежности, например, в случае возникновения непредвиденных обстоятельств, и может быть использовано для того, чтобы в любой момент была возможность начать полёт БПЛА заново, то есть, другими словами, сбросить в начальное положение траекторию полёта БПЛА. Кроме того, могут осуществляться вычисления других параметров БПЛА, например скорость и ускорение по трем осям, кватернион поворота, угловая скорость и ускорение, например с использованием алгоритма SLAM, VSLAM или любым другим его аналогом, программно или аппаратно.
Для расчета управляющих воздействий блоком навигации 141, в частности, модулем вычисления управляющих воздействий 232, используются текущее местоположение БПЛА (в частности, в относительных координатах), полученное из модуля вычисления положения БПЛА в пространстве 208 и вычисленное модулем вычисления положения БПЛА в пространстве 208 с использованием данных, полученных из модуля приема данных с камеры и лидара 204, полученных от камеры 171, и целевой пункт назначения, полученный из модуля приема целевого пункта назначения 242, получающего его из блока прицеливания 131. Вычисление (расчет) управляющих воздействий осуществляется с использованием ПИД-регулятора. Коэффициенты ПИД-регулятора задаются (настраиваются), например, на этапе сборки/настройки БПЛА, и могут быть изменены в процессе работы описываемой системы с использованием блока связи 111. Коэффициенты ПИД-регулятора могут быть изменены в том числе в зависимости от различных внешних воздействий, например, при температуре минус пятьдесят градусов по Цельсию меняются (в частности, значительно) лётные характеристики БПЛА, что требует соответствующих изменений коэффициентов ПИД-регулятора. В частном случае коэффициенты ПИД- регулятора сохраняются в памяти (например, на запоминающем устройстве) БПЛА, в частности, в энергонезависимой памяти. Также, они могут быть сохранены (в том числе одновременно с сохранением в памяти БПЛА в том числе с целью повышения надежности) в памяти наземной станции 151, например, в формате файла. Кроме того, коэффициенты ПИД-регулятора могут быть изменены по команде с наземной станции 151 с целью изменить (в том числе скорректировать) поведение (в том числе траекторию) БПЛА в воздухе. В зависимости от обстоятельств пользователь может самолично менять параметры БПЛА, если так посчитает нужным.
ПИД-регулятор является частью модуля вычисления управляющих воздействий 232 и может быть реализован программно с использованием следующей аналитической формулы:
Figure imgf000015_0001
где u(t) - управляющее воздействие в каждый момент времени (t), e(t)- «ошибка» в каждый момент времени, Кр- пропорциональный коэффициент, К— интегральный компонент, Kd- дифференциальный компонент.
Для четырёх независимых осей (Ох, Оу, Oz, угол поворота по оси Oz) вычисляется независимое управляющее воздействие (газ, крен, тангаж, рысканье). Каждый цикл ПИД- регулятору на вход подаётся «ошибка» в виде разницы между целевой координатой по каждой оси и каждой из текущих осей, и на выходе формируется управляющее воздействие для блока управления силовой частью БПЛА 161. В частном случае управляющие команды формируются в формате списка чисел, например, в формате следующей последовательности чисел: «4, 8, 15, 16, 23, 42», где по меньшей мере одно значение соответствует по меньшей мере одной управляющей команде.
Также, блок навигации 141 выполнен с возможностью хранения заранее заданных параметров склада: нумерацию ячеек, структуру и размер стеллажа в количестве паллет. Кроме того, блок навигации 141 способен хранить геометрические габариты стеллажных конструкций, размеры БПЛА, расстояние между двумя соседними стеллажами в метрах, дюймах, сантиметрах и любых других системах измерения длин и расстояний.
Так, процесс вычисления (формирования) управляющих воздействий (по крайней мере, одного управляющего воздействия) блоком навигации 141 начинается в шаге 305.
В шаге 310 блок навигации 141 проверяет включен ли автопилот БПЛА, например, проверяя (например, модулем проверки включения/отключения автопилота или одним из других модулей блока навигации 141) сохраненный флаг («Да» или «Нет») в памяти БПЛА о том, запущен ли автопилот БПЛА, т.е. запущен ли автоматический режим функционирования БПЛА. В частном случае блок навигации 141 может осуществлять функционирование в случае отключения автопилота БПЛА. Если автопилот выключен, то в шаге 350 процесс вычисления управляющих воздействий заканчивается. Автопилот БПЛА может быть включен (пользователем или программно, например, средствами наземной станции 151) в любое время по необходимости, с использованием средств наземной станции 151. В автономном режиме БПЛА может самостоятельно совершить аварийную посадку, уходя от столкновений, но даже в этом случае блок навигации 141 продолжает функционировать без отключения автопилота. В частном случае режим управления БПЛА (автопилот или «ручной») может быть переключен пользователем, причем в автономном варианте отсутствует «ручной» вариант управления БПЛА, в частности, для того, чтобы без разрешения пользователя БПЛА не начинал работу.
Если в шаге блоком навигации 141 установлено, что автопилот включен, то в шаге 315 осуществляется получение (в частности, ввод) данных лидара 191 и с камеры 171, в частности, осуществляется получение местоположения (данных местоположения) БПЛА в пространстве (340) модулем вычисления управляющих воздействий 232, вычисленного модулем вычисления положения БПЛА в пространстве 208 с использованием данных с камеры 171, полученных из модуля приема данных с камеры и лидара 204: а также в шаге 320 осуществляется получение (в частности, ввод) пункта назначения, в частности, целевого пункта назначений (345), модулем вычисления управляющих воздействий 232, полученного из модуля приема целевого пункта назначения 242, полученного из блока прицеливания 131.
Далее, в шаге 325 осуществляется вычисление управляющих воздействий с использованием ПИД регулятора и получаемых коэффициентов ПИД регулятора (335), получаемых из блока связи 111 (который, в свою очередь, получает их из наземной станции 151), модулем вычисления управляющих воздействий 232. После вычисления управляющих воздействий процесс вычисления управляющих воздействий возвращается к шагу 310. Вычисленные управляющие воздействия (330) передаются (отправляются) в блок управления силовой частью БПЛА 161.
На ФИГ. 4 показан примерный вариант принципиальной схемы блока прицеливания 131, согласно одному из вариантов настоящего изобретения. Блок прицеливания 131 включает модуль принятия команды о поиске новой этикетки 404, осуществляющий получение команд(ы) о поиске новой этикетки из блока сканирования 121 и осуществляющий передачу полученной команды о поиске новой этикетки в модуль приема данных с камеры 414 (осуществляющий по меньшей мере преобразование полученного сырого массива байт в матрицу чисел, используемую для дальнейшей обработки, как описано в рамках настоящего технического решения), а также в модуль вычисления положения этикетки в пространстве 434 и в модуль ухода от столкновений и аварийной посадки 444. Модуль 414 по команде о поиске новой этикетки принимает очередную фотографию с камеры 171 и осуществляет поиск на ней этикетки, штрих-кода и/или другого объекта, необходимый для выполнения полётного задания БПЛА.
Блок прицеливания 131 также включает модуль приема данных с камеры 414, выполненный с возможностью получения (приема) данных, передаваемых камерой 171, и выполненный с возможностью, по крайней мере, передачи данных в модуль вычисления положения этикетки в пространстве 434 и в модуль ухода от столкновений и аварийной посадки 444.
Блок прицеливания 131 также включает модуль приема настроек алгоритма 424, выполненный с возможностью получения настроек алгоритма из блока связи 111, а также выполненный с возможностью передачи настроек алгоритма в модуль вычисления положения этикетки в пространстве 434 и в модуль вычисления пункта назначения 454. В блок связи 111 настройки алгоритма передаются с наземной станции 151. Блок связи 111 преобразует радиосигналы в последовательность чисел. Таким образом, модуль вычисления положения этикетки в пространстве 434 и модуль вычисления пункта назначения 454 получают разные данные, но в обоих случаях это последовательность разных чисел. Настройки поиска этикетки включают тип этикетки, размер её различных полей, расположение штрих-кодов на этикетке, других выделяющих этот тип этикеток знаков. Настройки поиска этикетки передаются в виде списка указанных выше параметров с наземной станции 151 через блок связи 111 в БПЛА. Для оптимального расстояния подлёта к этикетке на БПЛА передаётся примерное расстояние между двумя соседними стеллажами на складе. Эти данные поступают на БПЛА в виде радиоволнового сигнала с наземной станции 151.
Также, блок прицеливания 131 включает модуль вычисления положения этикетки в пространстве 434, выполненный с возможностью вычисления положения этикетки в пространстве, возможностью получения (приема) данных, по крайней мере, из модуля приема данных с камеры 414 и выполненный с возможностью передачи (отправки) данных, по крайней мере, в модуль вычисления пункта назначения 454.
Блок прицеливания 131 также включает модуль ухода от столкновений и аварийной посадки 444, выполненный с возможностью осуществления избегания (ухода) от столкновений, возможностью аварийной посадки БПЛА и выполненный с возможностью получения данных, по крайней мере, из модуля приема данных с камеры 414, а также выполненный с возможностью передачи данных, по крайней мере, в модуль вычисления пункта назначения 454. Модуль ухода от столкновений и аварийной посадки 444 может передавать в модуль вычисления пункта назначения 454 относительное смещение БПЛА, например, чтобы совершить посадку или уйти от столкновения с каким-то внешним объектом. Также, блок прицеливания 131 включает модуль вычисления пункта назначения 454, выполненный с возможностью осуществления вычисления пункта назначения БПЛА, а также выполненный с возможностью получения данных о положении этикетки в пространстве от модуля вычисления положения этикетки в пространстве 434 и данных от модуля ухода от столкновений и аварийной посадки 444, а также с возможностью передачи данных, по крайней мере, о вычисленном пункте назначения в модуль отправки пункта назначения 464.
Блок прицеливания 131 также включает модуль отправки пункта назначения 464, выполненный с возможностью передачи данных о пункте назначения в блок навигации 141.
На ФИГ. 5 показан примерный вариант принципиальной схемы алгоритма работы блока прицеливания 131, согласно одному из вариантов настоящего изобретения.
Блок прицеливания 131 функционирует посредством выполнения исполняемой программы на ботовом компьютере БПЛА 101 (и в частном случае является программным, программно-аппаратным модулем, блоком), связанным с камерой 171, регистрируемые которой данные используются в том числе для осуществления, по крайней мере, поиска этикетки в пространстве и вычисления ее положения, в том числе относительно БПЛА. Данные этикетки в пространстве и о ее положении используются блоком прицеливания 131 для вычисления (расчета, формирования) нового (целевого) пункта назначения (540), данные (например, координаты) которого передаются в блок навигации 141 для перемещения БПЛА к местоположению очередной этикетки.
В одном из частных вариантов реализации для расчета расстояния до этикетки вместо камеры 171 (или в дополнение к камере 171) может использоваться камера глубины. Такие камеры, оснащенные инфракрасными датчиками глубины, получают изображение объектов с учетом их глубины, осуществляя построение (формирование) трехмерного изображения сцены в кадре с конкретной точки. Далее построенная сцена используется для позиционирования БПЛА в пространстве, а также может сохраняться в виде файла на компьютере для дальнейшего изучения.
Блок прицеливания 131 вычисляет новый пункт назначения (540), который передается в блок навигации 141 в зависимости от того, на каком расстоянии должен разместиться (в частности «зависнуть») БПЛА перед этикеткой. Новый пункт назначения содержит данные в формате четырех значений: смещение по оси X, Y, Z и угол поворота крена БПЛА. Пункт назначения передаётся в формате последовательности четырёх чисел. Новый пункт назначения вычисляется в зависимости от алгоритма пролёта полётного маршрута, или траектории автономного пролёта БПЛА. Это расстояние зависит от полученных параметров алгоритма, в частности, от полученных параметров склада (530), в том числе ширины прохода склада, габаритов БПЛА и точности позиционирования БПЛА в пространстве. Данные параметры настраиваются с использованием наземной станции 151 (в частности, с использованием средств наземной станции 151) и передаются с наземной станции 151 в блок связи 111, для (конечной) конфигурации БПЛА.
Положение БПЛА в пространстве может быть вычислено с использованием второго закона Ньютона в векторном виде:
Figure imgf000018_0001
где Fi - любая внешняя сила, действующая на БПЛА, т - масса БПЛА, v - скорость БПЛА в каждый момент времени, с - скорость света. Точность этой формулы для расчета БПЛА в пространстве ограничена сверху точностью измерений параметров, входящих в эту формулу.
Для того чтобы рассчитать требуемое расстояние до этикетки в зависимости от размеров БПЛА и точности его позиционирования, достаточно удовлетворить следующему неравенству: габариты БПЛА плюс минус точность позиционирования БПЛА в пространстве должны быть меньше, чем расстояние между двумя соседними стеллажами с запасом хотя бы 35 погрешности измерений.
Одним из важных требований к перемещению БПЛА заключается в том, чтобы БПЛА не зацепил винтами товар на складе и/или не врезался, так что перемещение БПЛА в том числе ограничено минимально разрешенным расстоянием до внешнего объекта. Если ограничение нарушается, целевая позиция меняется таким образом, чтобы БПЛА отлетел от внешнего объекта на безопасное расстояние.
Также, для начала осуществления поиска следующей этикетки (или любой другой метки, изображения и т.д., в том числе радиометки) блок 131 ожидает от блока сканирования 121 сигнала об успешном сканировании текущей ячейки (510), в частности, сигнала об успешном сканировании текущей ячейки, в частном случае, сигнала о том, что текущая (в частности, предыдущая) ячейка успешно отсканирована, а, следовательно, необходимо искать следующую этикетку или радиометку. В самом начале полета (когда работа только началась) БПЛА подлетает к самой первой ячейке (в частности, ближайшей к БПЛА) и пытается осуществить ее сканирование.
Так, как показано на ФИГ. 5, процесс поиска этикетки, вычисления нового пункта назначения БПЛА и передачи его в блок навигации начинается в шаге 505.
В шаге 515 блоком прицеливания 131, в частности, модулем вычисления положения этикетки в пространстве 434, осуществляется поиск последующей этикетки в пространстве после получения модулем вычисления положения этикетки в пространстве 434 сигнала об успешном сканировании текущей ячейки (510), время выделенное на сканирование каждой ячейки составляет 30 секунд, от блока сканирования 121, в частности, от модуля принятия команды о поиске новой этикетки 404, и массива расстояний до облака точек в кадре (520), полученных от камеры 171, в частности, от модуля приема данных с камеры 414, причем такой массив точек формируется алгоритмом, например, SLAM, который может быть реализован как программно, так и аппаратно, а также с помощью различных камер в том числе и камер трекинга.
Для поиска этикетки может использоваться предобученная нейронная сеть. Данная сеть дообучается на целевых этикетках по видеопотоку с камеры, в частности камеры глубины, что позволяет сопоставлять информацию с обыкновенного RGB изображения камеры глубины и информацию о расположении объектов в пространстве. Таким образом находится целевая этикетка в пространстве.
Так, перед (и в том числе в процессе) инвентаризации осуществляется фотографирование паллет на складе и классификация всех этикеток на условно «нужные» и «ненужные». Соответственно, на этих данных обучается нейронная сеть, которая в дальнейшем по видеопотоку способна распознавать необходимые этикетки.
В шаге 525 блоком прицеливания 131, в частности, модулем вычисления пункта назначения 454, осуществляется вычисление нового пункта назначения после получения, по крайней мере, от блока связи 111, в частности, от модуля приема настроек алгоритма 424, по крайней мере, настроек алгоритма, в частности, параметров склада (530). Параметрами склада могут являться размеры различных стеллажных конструкций, средние размеры паллет или самые часто встречаемые размеры высоты и ширины паллетомест и товаров на складе.
В шаге 535 блоком прицеливания 131, в частности, модулем отправки пункта назначения 464, осуществляется передача (отправка) вычисленного нового пункта назначения (540) в блок навигации 141. Пункт назначения отправляется в виде кватерниона, описывающего ориентацию БПЛА в пространстве, а также трех декартовых координат относительно места старта автопилота.
Процесс поиска этикетки, вычисления нового пункта назначения БПЛА и передачи его в блок навигации заканчивается в шаге 545.
На ФИГ. 6 показан примерный вариант принципиальной схемы блока сканирования 121, согласно одному из вариантов настоящего изобретения.
Как показано на ФИГ. 6, блок сканирования 121 включает модуль приема настроек фильтров 606, выполненный с возможностью, по крайней мере, получения настроек фильтров (фильтров штрих-кодов) и передачи настроек фильтров штрих-кодов в модуль фильтрации штрих кодов 606.
Блок сканирования 121 функционирует посредством выполнения исполняемой программы на ботовом компьютере БПЛА 101 (и в частном случае является программным, программно-аппаратным модулем, блоком), связанным со сканером 181, в частности, сканером штрих кодов (штрих-кодов, штрихкодов) или сканером радиометок (RFID-меток, радиочастотных меток), регистрируемые которой данные используются в том числе для осуществления, по крайней мере, сканирования штрих-кодов или радиометок, размещенных на товарах.
Сканер может быть расположен на подвесе (закрепленном на БПЛА), выполненный с возможностью автоматического (в автоматическом режиме) наведения на этикетку или радиометку, с использованием информации, получаемой с камеры 171, например, камеры глубины, используемой блоком прицеливания 131, что позволяет увеличить скорость наведения и производительность описываемой системы. С использованием нейронной сети по RGB фотографии с камеры 171 осуществляется распознавание этикетки (ее частей, информации, размещенной на ней), с помощью той же или еще одной камеры, или лидара, осуществляется вычисляет расстояние до этикетки, затем происходит процесс наведения подвеса. Подвес наводится в одном из частных вариантов реализации системы по команде с периферийной платы, включающей микроконтроллер.
В другом варианте реализации системы, без использования подвеса, БПЛА в автономном режиме подлетает напротив необходимой этикетки.
Также, блок сканирования 121 включает модуль фильтрации штрих кодов 606, выполненный с возможностью получения данных со сканера 656 и выполненный с возможностью, по крайней мере, передачи данных в модуль формирования таблицы 626, а также выполненный с возможностью формирования команды о поиске этикетки и с возможностью передачи сформированной команды о поиске этикетки в модуль отправки команды о поиске этикетки 646.
Поступающая (получаемая) информация от сканера 181, в частности, от модуля приема данных со сканера 656 фильтруется модулем фильтрации штрих-кодов 606. В одном из частных вариантов реализации подходящая последовательность символов однозначно определяется модулем фильтрации штрих-кодов 606 по её длине, суффиксу, префиксу или любому регулярному выражению, в частности, посредством сопоставления последовательности символов и регулярных выражений для уникальных последовательностей (шаг 720, ФИГ. 7) и для неуникальных последовательностей (шаг 725, ФИГ. 7). Набор подходящих последовательностей символов настраивается (пользователем, например, администратором описываемой системы, разработчиком и т.д.) средствами наземной станции 151 через (с использованием) блока связи 111, посредством ввода набора регулярных выражений в установленное на наземной станции 151 программное обеспечение, в частности, однозначно определяющих подходящие последовательности символов (которые зашифрованы в штрих-коде или радиометке). Кроме того, подходящие последовательности символов могут фильтроваться исходя из очередности их сканирования. В частном случае последний штрих-код из очереди удаляется, а новый штрих-код перемещается в начало очереди. В частном случае очередь может содержать, например, до пяти (десяти и т.д.) неповторяемых штрих-кодов, причем количество штрихкодов в очереди может быть изменено с использованием средств наземной станции 151. На этикетке может размещаться несколько штрих-кодов. В частном случае, на этикетке размещается, по крайней мере, один штрих-код, являющийся уникальным номером товара, идентифицирующим его (в частности, являясь идентификатором), причем такой номер не имеет ни один товар на складе. Также данные, зашифрованные в других штрих-кодах могут обозначать количество товара на паллете, дату изготовления и другие, которые могут часто повторяться.
В частном случае, при использовании радиометок вместо штрих-кодов, может осуществляться сразу большой объем данных в одном радиомаяке, содержащий в том числе уникальный номер паллеты и другая служебная информация.
В частном случае, когда требуется считывать несколько штрих-кодов на одной паллете, осуществляется соблюдение очередности сканирования для корректной записи данных. Сначала считывается уникальный код. Если в ходе проверки (сравнения) последовательность подходит (шаг 735, ФИГ. 7) по регулярному выражению к уникальному коду, в частности, совпадает (шаг 725, ФИГ. 7), то последовательность отбрасывается (шаг 740, ФИГ. 7). Если уникальный код считан, осуществляется проверка того факта, подходит ли (шаг 735, ФИГ. 7) по регулярному выражению последовательность к неуникальным кодам (шаг 720, ФИГ. 7). Если последовательность подходит, то осуществляется ее сохранение в базу данных (или, в частном случае, в результирующую таблицу, в том числе, сохраненной в базе данных или в памяти БПЛА).
Далее проверяется, все ли коды на одну паллеты считаны (шаг 750, ФИГ. 7). Если нет, то алгоритм завершает свою работу (шаг 780, ФИГ. 7). Если да, то проверяется, просчитан ли весь стеллаж (шаг 755, ФИГ. 7), в частности, исходя, по крайней мере, из топологии склада. Если просчитан весь стеллаж, что осуществляется переход к шагу 770, ФИГ. 7. Если просчитан не весь стеллаж, то осуществляется переход к шагу 760, ФИГ. 7, в котором отправляется сигнал (765, ФИГ. 7) в блок прицеливания 131, для поиска следующей этикетки. В шаге 775, ФИГ. 7 формируется инвентаризационная ведомость для данного стеллажа, которая может быть выгружена (шаг 770, ФИГ. 7) по запросу с помощью наземной станции 151 через блок связи 111. В частном случае после считывания штрихкода на определенном месте, в памяти БПЛА счётчик просчитанных ячеек увеличивается на единицу. Топология склада и конкретного стеллажа загружается в БПЛА заранее, например, с использованием средств наземной станции 151. Так, например, создается счётчик, например, от единицы до ста, если необходимо просканировать сто ячеек. Так, в частном случае, количество ячеек (паллетомест), равно максимальному значению ярусов в стеллаже, умноженному на количество паллет на одном ярусе. Стоит отметить, что на паллетоместе паллеты с товаром может не быть.
Блок сканирования 121 также включает модуль отправки команды о поиске этикетки 646, выполненный с возможностью передачи команды о поиске этикетки в блок прицеливания 131.
Блок сканирования 121 также включает модуль формирования таблицы 626, выполненный с возможностью формирования таблицы отсканированных штрих кодов и передачи сформированной таблицы (таблицы отсканированных штрих кодов) в модуль отправки таблицы 636.
Также, блок сканирования 121 включает модуль отправки таблицы 636, выполненный с возможностью передачи таблицы отсканированных штрих кодов в блок связи 111.
На ФИГ. 7 показан примерный вариант алгоритма фильтрации подходящих последовательностей символов блоком сканирования 121, согласно одному из вариантов настоящего изобретения.
Процесс фильтрации подходящих последовательностей символов блоком сканирования 121 начинается в шаге 705 с получения последовательности символов (710) от сканера 181 блоком сканирования 121, в частности, модулем приема данных со сканера 656.
В шаге 715 блоком сканирования 121 осуществляется проверка того факта, считан ли уникальный номер паллеты сканером 181.
Если в шаге 715 было установлено, что уникальный номер паллеты считан, то в шаге 720 блоком сканирования 121, в частности, модулем фильтрации штрих кодов 616, осуществляется сопоставление последовательности символов и регулярных выражений для неуникальных последовательностей с использованием набора регулярных выражений, полученных из блока связи 111, в частности, модулем приема настроек фильтров 606. Фильтр штрих-кодов модуля фильтрации штрих кодов 616 в частном случае может являться регулярным выражением. Также, штрих-коды и RFID метки могут фильтроваться по типу, длине последовательности символов, без использования непосредственно регулярных выражений.
Если в шаге 715 было установлено, что уникальный номер паллеты считан, то в шаге 725 блоком сканирования 121, в частности, модулем фильтрации штрих кодов 616, осуществляется сопоставление последовательности символов и регулярных выражений для уникальных последовательностей с использованием набора регулярных выражений, полученных из блока связи 111, в частности, модулем приема настроек фильтров 606.
В шаге 715 модулем фильтрации штрих кодов 616 проверяется совпадает ли считанный уникальный номер с последовательностями символов, в частности, с уникальными последовательностями и неуникальными последовательностями. Если не совпадает, то в шаге 740 осуществляется отбрасывание последовательности, т. е. данная последовательность не учитывается в дальнейшем процессе фильтрации подходящих последовательностей и продолжается сканирование. Если совпадает, то в шаге 745 осуществляется добавление последовательности в память БПЛА, например, в базу данных, в том числе с сохранением в наборе файлов в памяти БПЛА, которые могут быть загружены с использованием средств наземной станции 151 во время выгрузки инвентаризационной ведомости.
Далее в шаге 750 модулем фильтрации штрих кодов 616 осуществляется проверка того факта, считаны ли все необходимые (например, требуется отсканировать три штрихкода на одной этикетке, или два штрих-кода и ещё один на другой этикетке) последовательности символов на паллете. Такие последовательности символов используются для формирования инвентаризационной ведомости (для осуществления, проведения, инвентаризации на складе). Если - нет, то процесс фильтрации подходящих последовательностей заканчивается в шаге 780 (т. е. что если штрих-код или последовательность символов были получены с ошибкой, то они отбрасывается, минуя непосредственно фильтрацию штрих-кодов). Достаточной необходимостью является совпадение контрольных сумм. В частном варианте реализации контрольная сумма может вычисляться аппаратно микроконтроллером с использованием аппаратного блока CRC.
Если в шаге 750 установлено, что считаны ли все необходимые последовательности символов на паллете, то в шаге 755 модулем фильтрации штрих кодов 616 проверяется, просчитан ли весь стеллаж. Если в шаге 755 установлено, что просчитан весь стеллаж, то процесс переходит к шагу 770. Если нет, то в шаге 760 модулем фильтрации штрих кодов 616 осуществляется формирование и передача (отправка) сигнала о поиске новой этикетки (765) в блок прицеливания 131 модулем отправки команды о поиске этикетки 646.
В шаге 770 модулем формирования таблицы 626 осуществляется выгрузка инвентаризационной ведомости (775), которая передается в блок связи 111 модулем отправки таблицы 636 и процесс фильтрации подходящих последовательностей заканчивается в шаге 780. Инвентаризационная ведомость формируется во время полёта БПЛА и просчёта товара на складе. Хранится в памяти БПЛА и передается на наземную станцию 151, например, по завершении просчёта стеллажа.
На ФИГ. 8 показан примерный вариант принципиальной схемы блока связи 111, согласно одному из вариантов настоящего изобретения.
Блок связи 111 функционирует посредством выполнения исполняемой программы на ботовом компьютере БПЛА 101 (и в частном случае является программным, программно-аппаратным модулем, блоком), связанным с радиомодулем 868, посредством которого обеспечивается связь (в частности, обмен данными) между БПЛА, в частности, бортовым компьютером БПЛА 101, и наземной станцией 151.
Радиомодуль 868 может являться беспроводным последовательным портом, Bluetooth-модулем или Wi-Fi-модулем. Обмен данными между БПЛА, в частности, бортовым компьютером БПЛА 101, и наземной станцией 151 может осуществляться с использованием мобильной сотовой связи (GSM), в том числе 3G, 4G, LTE, в частности, в диапазонах 850/900/1800/1900 МГц, спутниковой связи, тракинговой связи и каналов передачи данных со сверхнизким энергопотреблением, формирующие сложные беспроводные сети с ячеистой топологией (ZigBee) и т.д.
Блок связи 111 осуществляет коммуникацию БПЛА с наземной станцией 151. Протокол передачи данных может меняться в зависимости от вариантов реализации описываемой системы. В качестве возможных протоколов передачи данных может использоваться Wifi, Bluetooth, или на более низком уровне TCP соединение, SSL соединение. Дополнительно на уровне программной реализации может использоваться протокол передачи данных, поверх указанный для повышения безопасности передачи данных и информационной безопасности всей системы в целом.
Как показано на ФИГ. 8 блок связи 111 включает модуль приема данных 808, выполненный с возможностью получения данных из блока сканирования и передачи данных, по крайней мере, в модуль обработки протокола передачи данных на отправку 818, в частном случае являющийся частью модуля обработки протокола 878, в частности, его подмодулем (субмодулем).
Блок связи 111 также может включать модуль обработки протокола 878, который выполнен с возможностью получения данных из модуля приема данных 808 и от радиоприемника 838, а также с возможностью передачи данных в радиопередатчик 828 и модуль отправки данных 858, и который включает модуль обработки протокола передачи данных на отправку 818 и модуль обработки протокола передачи данных на прием 848.
Блок связи 111 также включает модуль обработки протокола передачи данных на отправку 818, выполненный с возможностью получения данных из модуля приема данных 808 и передачи данных в радиопередатчик 828, и в частном случае являющийся частью (модулем, подмодулем, субмодулем) модуля обработки протокола 878.
Также блок связи 111 включает модуль обработки протокола передачи данных на прием 848, выполненный с возможностью получения данных из (от) радиоприемника 838 и передачи данных в модуль отправки данных 858, и в частном случае являющийся частью (модулем, подмодулем, субмодулем) модуля обработки протокола 878.
Блок связи 111 также включает радиопередатчик 828, выполненный с возможностью получения данных от (из) модуля обработки протокола передачи данных на отправку 818, в частном случае являющегося частью модуля обработки протокола 878, и с возможностью передачи данных на наземную станцию 151.
Блок связи 111 также включает радиоприемник 838, выполненный с возможностью получения данных от (из) наземной станции 151 и выполненный с возможностью передачи данных в модуль обработки протокола передачи данных на прием 848, в частном случае являющегося частью модуля обработки протокола 878, и с возможностью передачи данных в модуль отправки данных 858.
Также блок связи 111 включает модуль отправки данных, выполненный с возможностью получения данных от модуля обработки протокола передачи данных на прием 848, в частном случае являющегося частью модуля обработки протокола 878, и с возможностью передачи данных в блок сканирования 121, блок навигации 141 и блок прицеливания 131.
На ФИГ. 9 показан примерный вариант принципиальной схемы наземной станции 151, согласно одному из вариантов настоящего изобретения.
Наземная станция 151 является вычислительным устройством, на котором установлено программное обеспечение с пользовательским интерфейсом (интерфейсом пользователя), например, графическим, текстовым и т.д. интерфейсом, с использованием которого осуществляется, по крайней мере, настройка описываемой системы, в том числе БПЛА, включая, но не ограничиваясь, бортовой компьютер БПЛА 101 и его модули, в ручном режиме, например, пользователем (администратором) с использованием средств наземной станции 151, автоматическом режиме (средствами наземной станции 151) или полуавтоматическом (полуавтоматизированном) режиме. Таким вычислительным устройством (в частности, наземной станцией 151) может являться персональный компьютер, электронная вычислительная машина (ЭВМ), сервер, удаленный сервер, рабочая станция, моноблок, компьютерный стенд, настольный компьютер, испытательный стенд, демонстрационный компьютерный стенд и т. д., мобильные устройства, например ноутбук, планшет (портативный компьютер), смартфон, портативный компьютер и т.д.
Наземная станция 151 также может являться, по крайней мере, одним устройством использующим (на базе), по крайней мере, один микроконтроллер, ПЛИС и ASIC, а также может использовать, по крайней мере, один процессор, микропроцессор и т. д.
В зависимости от реализации описываемой системы (или, по крайней мере, одной ее части) наземная станция 151 связана (или включает), по крайней мере, с одним устройством (модулем, блоком и т.д.) связи (в частности, включающим радиоприемник 904 и радиопередатчик 902), например, Bluetooth-модулем, WiFi-модулем или беспроводным (в том числе, внешним) последовательным портом для удаленной связи с БПЛА, в частности, с бортовым компьютером БПЛА 101, в частности блоком связи 111, связанным с ним.
В одном из частных вариантов реализации в качестве радиоканала, по которому обменяются информации наземная станция 151 и БПЛА (в частности, бортовой компьютер БПЛА 101), может являться Bluetooth, WiFi, один из известных беспроводных последовательных портов.
Наземная станция также может функционировать без операционной системы, например, в случае реализации наземной станции 151 на базе микроконтроллера, ПЛИС или ASIC.
С помощью (с использованием) средств наземной станции 151 (например, модуля настройки алгоритма расчета пункта назначения 959, модуля настройки алгоритма поиска этикеток 969, модуля настройки фильтров 979), в частности, с использованием интерфейса 949 пользователя и средств (устройств) ввода данных, например, клавиатуры, манипулятора типа «Мышь» и т.д., пользователь осуществляет ввод параметров склада, например, топологию склада (количество стеллажей, количество ярусов, количество ячеек в одном ярусе, геометрические размеры стеллажей, ярусов, ячеек в любой системе измерения (например, в системе измерений СИ), размер прохода между двумя стеллажами), размеры паллет (длина, ширина и высота в любой системе измерения), параметры этикетки (размер этикетки, географическое расположение штрих-кодов на этикетке), параметры целевых штрих-кодов, радиометок, RF -меток, QR-кодов (длина, префикс, суффикс, любое регулярное выражение, однозначно определяющее подходящую последовательность символов), коэффициенты ПИД-регулятора для системы навигации, формат выгрузки данных.
Также, пользователь с использованием средств наземной станции 151 может сохранять и редактировать отдельные конфигурации конкретных складов, а также переключаться между ними.
Запуск процесса инвентаризации также осуществляется средствами наземной станцией 151, например, пользователь может выбрать программную кнопку графического интерфейса 949 пользователя для запуска процесса инвентаризации, или наземная станция может запустить процесс инвентаризации по расписанию, заданному пользователю с использованием средств наземной станции 151.
По завершению инвентаризации склада (фактических работ по инвентаризации склада), модулем выгрузки данных 929 осуществляется выгрузка данных в требуемый формат для каждого просчитанного стеллажа (например, по команде пользователя или по расписанию, по факту окончания инвентаризации и т.д.) для формирования результирующей инвентаризационной ведомости (из данных таблицы, полученной модулем приема файла таблицы 919 из модуля обработки протокола 909), либо для загрузки актуального состояния складских запасов в систему управления складом (WMS, от англ. Warehouse Management System). В частном случае выгрузка данных в требуемый формат может осуществляться в процессе инвентаризации, в том числе для частично просчитанного стеллажа, для каждого просчитанного стеллажа, для набора стеллажей и т.д. при получении заранее заданного набора данных или по завершению сканирования хотя бы одного штрих-кода и т.д. в том числе для формирования набора данных, например, в формате результирующей инвентаризационной ведомости, для передачи актуального состояния складских запасов в систему управления складом и т.д.
Как показано на ФИГ. 9 наземная станция 151 включает радиоприемник 904, выполненный с возможностью получения данных (включая, но не ограничиваясь, настройки алгоритмов БПЛА, фото/видео по меньшей мере с одной камеры, установленной на БПЛА, результат инвентаризации стеллажа, мониторинг позиции БПЛА в реальном времени), передаваемых с БПЛА, в частности, из блока связи 111, и с возможностью передачи таких данных в модуль обработки протокола 909.
Также наземная станция 151 включает модуль обработки протокола 909, выполненный с возможностью получения данных из модуля отправки настроек 989 и из (от) радиоприемника 904 и выполненный с возможностью передачи данных в радиопередатчик 902.
Модуль обработки протокола 909 является «зеркальным» по отношению к таковому на БПЛА, в частности, в блоке связи 111, в частности, использует те же протоколы (инструкции и т. д.) для получения данных БПЛА, в частности блоком связи 111.
Наземная станция 151 также включает модуль приема файла таблицы 919, выполненный с возможностью получения таблицы (формируемой модулем формирования таблицы 626 блока сканирования 121), в частности, данных таблицы, передаваемой из радиоприемника 904, с возможностью выгрузки данных в требуемый формат для каждого просчитанного стеллажа в том числе с формированием результирующей инвентаризационной ведомости (из данных таблицы, полученной модулем приема файла таблицы 919 из модуля обработки протокола 909), либо для загрузки актуального состояния складских запасов в систему управления складом, и выполненный с возможностью передачи данных (таблицы данных) в модуль выгрузки данных 929.
Также наземная станция 151 включает модуль визуализации таблицы 939, выполненный с возможностью визуализации таблицы (формируемой модулем формирования таблицы 626 блока сканирования 121), в частности, данных таблицы, передаваемой из радиоприемника 904, при помощи элементов графического интерфейса 949.
Наземная станция 151 также включает графический интерфейс 949 пользователя, в частности, модуль ввода данных и отображения (визуализации) данных, выполненный с возможностью отображения данных, получаемых из модуля визуализации таблицы 939 и вводимых пользователем данных, в частности, настроек (параметров), передаваемых в модуль настройки алгоритма расчета пункта назначения 959, модуль настройки алгоритма поиска этикеток 969, модуль настройки фильтров 979. Также наземная станция 151 включает модуль настройки алгоритма расчета пункта назначения 959, выполненный с возможностью задания пользователем настроек алгоритма расчета пункта назначения с использованием графического интерфейса (пользователя) 949 и с возможностью передачи таких настроек (параметров) в модуль отправки настроек 989.
В одном из частных вариантов реализации модуль настройки алгоритма расчета пункта назначения 959 включает графический элемент, в частности «окно», в графическом интерфейсе пользователя, в котором пользователь указывает (задает) параметры склада: геометрические размеры паллет, балок, стоек, ярусов и другие, которые используются в дальнейшем автопилотом БПЛА для расчёта целевого пункта назначения при перелёте к следующей паллете (ярусу и т.д.). Так, траектория пролёта БПЛА, в частности, конкретная траектория пролёта БПЛА задаётся с использованием средств наземной станции 151 и в частном случае может определяться особенностями конкретного склада. Также выбирается в каком порядке облетать стеллаж, причем порядок облета задается средствами наземной станции, например задание пролета БПЛА сверху вниз или слева направо.
Наземная станция 151 также включает модуль настройки алгоритма поиска этикеток 969, выполненный с возможностью задания пользователем настроек алгоритма поиска этикеток с использованием графического интерфейса (пользователя) 949 и с возможностью передачи таких настроек (параметров) в модуль отправки настроек 989.
В одном из частных вариантов реализации модуль настройки алгоритма поиска этикеток 969 включает графический элемент, в частности «окно», в графическом интерфейсе пользователя, в котором пользователь указывает (задает), какую именно этикетку сейчас нужно искать (в частности, поиск какой этикетки осуществлять, в том числе первой, после обработки предыдущей и т.д.) из заранее заданного (пользователем, администратором, в том числе с использованием средств данного модуля, графического интерфейса, устройства ввода данных и т.д.) списка этикеток, которые умеет распознавать блок прицеливания 131.
Наземная станция 151 включает также модуль настройки фильтров 979, выполненный с возможностью задания пользователем настроек фильтров (фильтров штрих-кодов) с использованием графического интерфейса (пользователя) 949 и с возможностью передачи таких настроек (параметров) в модуль отправки настроек 989.
В одном из частных вариантов реализации модуль настройки фильтров 979 включает графический элемент, в частности «окно», в графическом интерфейсе пользователя, в котором пользователь указывает (задает) регулярное выражение, по которому фильтруются штрих-коды (будет осуществляться фильтрация штрих-кодов), а также дополнительно их длина, или возможность отключить любую фильтрацию и принимать все возможные штрих-коды, причем в частном случае фильтрация штрих-кодов может быть отключена для того, чтобы все сканируемые сканером 181 штрих-коды записывались в энергонезависимую память БПЛА.
Также наземная станция 151 включает модуль отправки настроек 989, выполненный с возможностью получения данных из модуля настройки алгоритма расчета пункта назначения 959, модуля настройки алгоритма поиска этикеток 969, модуля настройки фильтров 979 и с возможностью передачи данных в модуль обработки протокола 909.
Наземная станция 151 также включает радиопередатчик 902, выполненный с возможностью получения данных из модуля обработки протокола 909 и с возможностью передачи данных в блок связи 111. На ФИГ. 10 показан примерный вариант принципиальной схемы блока управления силовой частью БПЛА 161, согласно одному из вариантов реализации настоящего изобретения.
Как показано на ФИГ. 10 блок управления силовой частью БПЛА 161 включает модуль приема управляющих команд 1011, выполненный с возможностью получения управляющих команд (управляющих воздействий) из блока навигации 141 и с возможностью передачи полученных управляющих команд (воздействий) в модуль преобразования команд в пакеты данных 1021.
Блок управления силовой частью БПЛА 161 также включает модуль преобразования команд в пакеты данных 1021, выполненный с возможностью получения управляющих команд (управляющих воздействий) из модуля приема управляющих команд 1011 и с возможностью преобразования полученных управляющих команд (воздействий) в пакеты (в частности, в наборы) данных, а также выполненный с возможностью передачи сформированных пакетов данных из полученных управляющих команд (воздействий) в модуль отправки пакетов данных 1031.
Также, блок управления силовой частью БПЛА 161 включает модуль отправки пакетов данных 1031, выполненный с возможностью получения пакетов данных от (из) модуля преобразования команд в пакеты данных 1021 и с возможностью передачи пакетов данных в полетный контроллер 1041.
Блок управления силовой частью БПЛА 161 также включает полетный контроллер, выполненный с возможностью, по крайней мере, получать пакеты данных от модуля отправки пакетов данных 1031 и передавать данных, в том числе пакеты данные, в том числе с преобразованием, в двигатели БПЛА 1051.
Управление двигателями БПЛА 1051 может осуществляться с использованием одного из существующих полетных контроллеров (используемых широким кругом, в частности сообществом людей) 1041, позволяющим управлять произвольным БПЛА с помощью пульта радиоуправления. В полетный контроллер 1041 со стороны периферийной платы (в частности, из модуля отправки пакетов данных 1031) осуществляется передача пакетов данных по такому же протоколу, по которому передает данные пульт радиоуправления полетному контроллеру 1041.
В частном случае использование существующих полетных контроллеров в частности позволяет сократить стоимость описываемой системы в целом, поскольку существующие полетные контроллеры уже отлажены и протестированы множеством людей и не требуется его разработка. Также, описываемая система может функционировать в двух режимах работы: управление (в том числе пользователем) БПЛА может осуществляться с использованием существующего пульта радиоуправления, а также полетный контроллер может быть настроен отдельно от конфигурации автопилота. Кроме того, в любой момент может быть перехвачено управление, что может использоваться в том числе при тестировании описываемой системы в новых условиях.
Блок управления силовой частью БПЛА 161 в частном случае состоит из периферийной платы, которая принимает (посредством модуля приема управляющих команд 1011) высокоуровневые команды от блока навигации 141 и формирует (посредством модуля преобразования команд в пакеты данных 1021) пакеты данных с использованием одного из множества протоколов (в частности, протоколов передачи данных) поддерживаемых полетным контроллером 1041. Такими протоколами, в частности, протоколами передачи данных, поддерживаемыми полетным контроллером 1041 (для передачи данных между периферийной платой и полетным контроллером 1041) может использоваться протокол PWM (от англ. Pulse-width modulation, широтноимпульсная модуляция), РРМ (от англ. Pulse Position Modulation, фазово-импульсная модуляция), SBus, DSM2, DSMX, SUMD и т.д. Далее эти пакетные данных посылаются (посредством модуля отправки данных 1031) в полетный контроллер 1041. Таким образом, в частном случае, эмулируется управление БПЛА с пульта управления.
Блок управления силовой частью БПЛА 161 включает также двигатели БПЛА 1051.
На ФИГ, 11 показан пример компьютерной системы общего назначения, которая включает в себя многоцелевое вычислительное устройство в виде компьютера 20 или сервера, включающего в себя процессор 21, системную память 22 и системную шину 23, которая связывает различные системные компоненты, включая системную память с процессором 21.
Системная шина 23, может быть, любого из различных типов структур шин, включающих шину памяти или контроллер памяти, периферийную шину и локальную шину, использующую любую из множества архитектур шин. Системная память включает постоянное запоминающее устройство (ПЗУ) 24 и оперативное запоминающее устройство (ОЗУ) 25. В ПЗУ 24 хранится базовая система ввода/вывода 26 (БИОС), состоящая из основных подпрограмм, которые помогают обмениваться информацией между элементами внутри компьютера 20, например, в момент запуска.
Компьютер 20 также может включать в себя накопитель 27 на жестком диске для чтения с и записи на жесткий диск, не показан, накопитель 28 на магнитных дисках для чтения с или записи на съёмный магнитный диск 29, и накопитель 30 на оптическом диске для чтения с или записи на съёмный оптический диск 31 такой, как компакт-диск, цифровой видео-диск и другие оптические средства. Накопитель 27 на жестком диске, накопитель 28 на магнитных дисках и накопитель 30 на оптических дисках соединены с системной шиной 23 посредством, соответственно, интерфейса 32 накопителя на жестком диске, интерфейса 33 накопителя на магнитных дисках и интерфейса 34 оптического накопителя. Накопители и их соответствующие читаемые компьютером средства обеспечивают энергонезависимое хранение читаемых компьютером инструкций, структур данных, программных модулей и других данных для компьютера 20.
Хотя описанная здесь типичная конфигурация использует жесткий диск, съёмный магнитный диск 29 и съёмный оптический диск 31 , специалист примет во внимание, что в типичной операционной среде могут также быть использованы другие типы читаемых компьютером средств, которые могут хранить данные, которые доступны с помощью компьютера, такие как магнитные кассеты, карты флеш-памяти, цифровые видеодиски, картриджи Бернулли, оперативные запоминающие устройства (ОЗУ), постоянные запоминающие устройства (ПЗУ) и т.п.
Различные программные модули, включая операционную систему 35, могут быть сохранены на жёстком диске, магнитном диске 29, оптическом диске 31, ПЗУ 24 или ОЗУ 25. Компьютер 20 включает в себя файловую систему 36, связанную с операционной системой 35 или включенную в нее, одно или более программное приложение 37, другие программные модули 38 и программные данные 39. Пользователь может вводить команды и информацию в компьютер 20 при помощи устройств ввода, таких как клавиатура 40 и указательное устройство 42. Другие устройства ввода (не показаны) могут включать в себя микрофон, джойстик, геймпад, спутниковую антенну, сканер или любое другое.
Эти и другие устройства ввода соединены с процессором 21 часто посредством интерфейса 46 последовательного порта, который связан с системной шиной, но могут быть соединены посредством других интерфейсов, таких как параллельный порт, игровой порт или универсальная последовательная шина (УПШ). Монитор 47 или другой тип устройства визуального отображения также соединен с системной шиной 23 посредством интерфейса, например видеоадаптера 48. В дополнение к монитору 47, персональные компьютеры обычно включают в себя другие периферийные устройства вывода (не показано), такие как динамики и принтеры.
Компьютер 20 может работать в сетевом окружении посредством логических соединений к одному или нескольким удаленным компьютерам 49. Удаленный компьютер (или компьютеры) 49 может представлять собой другой компьютер, сервер, роутер, сетевой ПК, пиринговое устройство или другой узел единой сети, а также обычно включает в себя большинство или все элементы, описанные выше, в отношении компьютера 20, хотя показано только устройство хранения информации 50. Логические соединения включают в себя локальную сеть (ЛВС) 51 и глобальную компьютерную сеть (ГКС) 52. Такие сетевые окружения обычно распространены в учреждениях, корпоративных компьютерных сетях, интернете.
Компьютер 20, используемый в сетевом окружении ЛВС, соединяется с локальной сетью 51 посредством сетевого интерфейса или адаптера 53. Компьютер 20, используемый в сетевом окружении ГКС, обычно использует модем 54 или другие средства для установления связи с глобальной компьютерной сетью 52, такой как Интернет.
Модем 54, который может быть внутренним или внешним, соединен с системной шиной 23 посредством интерфейса 46 последовательного порта. В сетевом окружении программные модули или их части, описанные применительно к компьютеру 20, могут храниться на удаленном устройстве хранения информации. Надо принять во внимание, что показанные сетевые соединения являются типичными, и для установления коммуникационной связи между компьютерами могут быть использованы другие средства.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего технического решения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего технического решения, согласующиеся с сущностью и объемом настоящего технического решения.

Claims

ФОРМУЛА ИЗОБРЕТЕНИЯ
1. Система автономной инвентаризации, включающая:
• По крайней мере один БПЛА, включающий: о бортовой компьютер БПЛА (101); о блок связи (111), выполненный с возможностью
• передачи данных в блок сканирования, по крайней мере настроек фильтров штрих-кодов;
■ передачи данных в блок прицеливания, по крайней мере, настроек алгоритма поиска этикетки и расчета оптимального расстояния подлета к ней;
■ передачи данных в блок навигации, по крайней мере, настроек алгоритма расчета управляющих воздействий;
■ получения и передачи данных от наземной станции, включая данные о складе и его топологии, размерах паллет, параметрах этикетки, параметрах целевых штрих-кодов, радиометок, RF -меток, QR-кодов, коэффициенты ПИД-регулятора для блока навигации; о блок сканирования (121), выполненный с возможностью:
■ получения данных от блока связи (111);
■ передачи данных и сигналов о поиске новой этикетки в блок прицеливания (131);
■ передачи данных в блок связи (111) о по крайней мере наборе отсканированных штрихкодов; о блок прицеливания (131), выполненный с возможностью
■ получения данных от блока связи (111);
■ передачи данных в блок навигации (141) о новом пункте назначения о блок навигации (141), выполненный с возможностью:
■ получения данных от блока связи (111), включая данные о настройке определения управляющих воздействий, включая коэффициенты ПИД-регулятора;
■ формирования и передачи в блок управления силовой частью БПЛА (161) управляющих команд;
■ определения положения БПЛА в пространстве на основании данных полученных с по крайней мере одной камеры (171) и лидара (191);
■ определения управляющих воздействий с использованием полученных коэффициентов ПИД-регулятора;
■ получения данных о новом пункте назначения от блока прицеливания (131); о блок управления силовой частью БПЛА (161) выполнен с возможностью:
■ получения управляющих команд от блока навигации (141) и преобразования команд в пакеты данных и отправления пакетов команд в полетный контроллер (1041); и включает по крайней мере:
■ полетный контроллер (1041), выполненный с возможностью управления двигателями БПЛА (1051);
■ по крайней мере один двигатель БПЛА (1051); о по крайней мере один сканер (181); о лидар (191); о по крайней мере одну камеру (171);
• По крайней мере одну наземную станцию (151), выполненную с возможностью: о получения и передачи данных на по крайней мере один БПЛА; о осуществления хранения и передачи данных на по крайней мере один БПЛА о складе и его топологии, размерах паллет, параметрах этикетки, параметрах целевых штрих-кодов, радиометок, RF-меток, QR-кодов, коэффициенты ПИД-регулятора для блока навигации; о формирования инвентаризационной ведомости на основании данных, полученных от по крайней мере одного БПЛА; о интеграции и выгрузки актуального состояния склада в систему управления складом;
2. Система по п.1 , в котором камера является З -камерой.
3. Система по п.2, в котором 3D камера выполнена с возможностью трехмерного сканирования и распознавания элементов.
4. Система по п.1 , в котором камера дополнительно содержит камеру глубины.
5. Система по п.1, в котором камера может быть выполнена с возможностью локализации и построения карты с осуществлением формирования карты в неизвестном пространстве и обновление карты в заранее известном пространстве с одновременным контролем текущего положения и пройденного пути.
6. Система по п.1, в котором блок связи (111) получает данные от наземной станции (151) по радиоканалу.
7. Система по п.1, в котором по крайней мере сканер (181) является сканером штрих кодов или сканером радиометок.
PCT/RU2022/000163 2022-04-27 2022-05-17 Система автономной инвентаризации склада WO2023211307A1 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2022111560 2022-04-27
RU2022111560A RU2022111560A (ru) 2022-04-27 Система автономной инвентаризации склада

Publications (1)

Publication Number Publication Date
WO2023211307A1 true WO2023211307A1 (ru) 2023-11-02

Family

ID=88519366

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2022/000163 WO2023211307A1 (ru) 2022-04-27 2022-05-17 Система автономной инвентаризации склада

Country Status (1)

Country Link
WO (1) WO2023211307A1 (ru)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593743A (zh) * 2012-08-17 2014-02-19 东莞市领先电子科技有限公司 基于rfid技术和自由飞行技术的仓库管理系统
US20140344118A1 (en) * 2013-05-14 2014-11-20 DecisionGPS, LLC Automated Inventory Management
US20150363665A1 (en) * 2014-06-16 2015-12-17 Sony Corporation 3d scanning with depth cameras using mesh sculpting
US20160150217A1 (en) * 2014-11-20 2016-05-26 Cappasity Inc. Systems and methods for 3d capturing of objects and motion sequences using multiple range and rgb cameras
US20160247115A1 (en) * 2013-07-02 2016-08-25 Jasper Mason PONS Airborne scanning system and method
US20220019970A1 (en) * 2016-08-31 2022-01-20 Corvus Robotics, Inc. Method and system for warehouse inventory management using drones

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593743A (zh) * 2012-08-17 2014-02-19 东莞市领先电子科技有限公司 基于rfid技术和自由飞行技术的仓库管理系统
US20140344118A1 (en) * 2013-05-14 2014-11-20 DecisionGPS, LLC Automated Inventory Management
US20160247115A1 (en) * 2013-07-02 2016-08-25 Jasper Mason PONS Airborne scanning system and method
US20150363665A1 (en) * 2014-06-16 2015-12-17 Sony Corporation 3d scanning with depth cameras using mesh sculpting
US20160150217A1 (en) * 2014-11-20 2016-05-26 Cappasity Inc. Systems and methods for 3d capturing of objects and motion sequences using multiple range and rgb cameras
US20220019970A1 (en) * 2016-08-31 2022-01-20 Corvus Robotics, Inc. Method and system for warehouse inventory management using drones

Similar Documents

Publication Publication Date Title
US11835953B2 (en) Adaptive autonomy system architecture
CN110609569B (zh) 一种应用于电力杆塔的自主控制无人机精准巡检系统和方法
CA2920359C (en) Vehicle user interface adaptation
JP2020098567A (ja) 適応検知・回避システム
Recchiuto et al. Post‐disaster assessment with unmanned aerial vehicles: A survey on practical implementations and research approaches
Li et al. A novel distributed architecture for UAV indoor navigation
KR20190001436A (ko) 다수의 무인비행체 시스템과 군집 지능을 사용한 현실 3d 공간 탐색 시스템 및 방법
US20210335138A1 (en) Flight log uploading method, device, mobile terminal and unmanned aerial vehicle
US20190339081A1 (en) Unmanned aerial vehicle with enclosed propulsion system for 3-d data gathering and processing
JP6861434B2 (ja) 飛行体の誘導方法、誘導装置、及び誘導システム
US11875689B2 (en) Management apparatus, management method and management system
CN112462797A (zh) 一种利用灰色预测模型的视觉伺服控制方法及系统
Suzuki Recent researches on innovative drone technologies in robotics field
Meng et al. DTUAV: a novel cloud–based digital twin system for unmanned aerial vehicles
CN112136137A (zh) 一种参数优化方法、装置及控制设备、飞行器
WO2023211307A1 (ru) Система автономной инвентаризации склада
US10467376B2 (en) Unmanned aircraft systems and methods of assembly
del Cerro et al. Aerial fleet in rhea project: A high vantage point contributions to robot 2013
JP7360683B2 (ja) 作業計画生成システム
CN108269389A (zh) 无人机及其智能监控系统
Moiz et al. QuadSWARM: A Real-Time Autonomous Surveillance System using Multi-Quadcopter UAVs
WO2020154937A1 (zh) 一种负载的控制方法、装置及控制设备
Coelho et al. An IoT-enabled modular quadrotor architecture for real-time aerial object tracking
WO2020118500A1 (zh) 控制方法、控制系统、计算机可读存储介质和可飞行设备
KR20210001370A (ko) 드론을 이용한 화물 운반 장치 및 방법

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: 22940416

Country of ref document: EP

Kind code of ref document: A1