Moving device control method and moving device
By installing positioning components and motor encoders on mobile devices and combining them with information collected by identification, the actual displacement and direction of the mobile devices can be accurately determined, solving the problem of low position detection accuracy in existing technologies and improving operational accuracy and system efficiency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- BEIJING GEEKPLUS TECH CO LTD
- Filing Date
- 2026-01-23
- Publication Date
- 2026-07-30
AI Technical Summary
In existing technologies, mobile devices suffer from problems such as low position detection accuracy, slow operating speed, complex installation, and poor expandability during the handling of goods. In particular, when the wheels slip or spin idly, the operating error is large, which affects the efficiency and accuracy of the warehousing system.
By installing a positioning component on the mobile device, the markers arranged along the running direction are collected. Combined with the measured displacement measured by the motor encoder, the actual displacement of the mobile device is determined. The error is then eliminated through a compensation algorithm, thereby improving the accuracy of position detection.
It improves the running and stopping accuracy of mobile equipment, reduces errors caused by wheel slippage or idling, and enhances the work efficiency of the warehousing system and the stability of mobile equipment.
Smart Images

Figure CN2026074442_30072026_PF_FP_ABST
Abstract
Description
Mobile device control methods and mobile devices
[0001] This application is based on and claims priority to Chinese Patent Application No. 202510123962.4, filed on January 26, 2025, entitled “Mobile Device Control Method and Mobile Device”, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of smart warehousing, and in particular to a mobile device control method and a mobile device. Background Technology
[0003] In warehousing and logistics systems, goods are typically moved using mobile devices (such as robots). During the movement of goods, the position of the mobile device can be determined by a motor encoder installed on its motor, thereby controlling the device to perform corresponding operations. Summary of the Invention
[0004] This application provides a mobile device control method and a mobile device, including the following technical solutions:
[0005] In a first aspect, embodiments of this application provide a mobile device control method, applied to a control module of a mobile device, wherein a positioning component is coupled to the control module;
[0006] The methods include:
[0007] The identification is collected by the positioning component, and at least two pieces of information are obtained; the identification is arranged along the running direction of the mobile device.
[0008] Based on at least two pieces of collected information, determine the actual displacement and direction of movement of the mobile device;
[0009] Obtain the measured displacement of the mobile device;
[0010] Based on the direction of movement, as well as the actual and measured displacements at the same moment, the corresponding operating error of the mobile device is determined, and the operating error is compensated.
[0011] Secondly, embodiments of this application provide a mobile device, including a control module, a driver, and a displacement measurement component; both the driver and the displacement measurement component are coupled to the control module, and a positioning component is coupled to the control module; wherein, the driver is configured to control the movement of the mobile device;
[0012] The displacement measurement component is configured to detect the measured displacement of the mobile device during operation.
[0013] The positioning component is configured to: collect at least two pieces of information by collecting identifiers arranged along the running direction of the mobile device;
[0014] The control module is configured to: determine the actual displacement and direction of movement of the mobile device based on at least two pieces of acquired information; determine the corresponding operating error of the mobile device based on the direction of movement, as well as the actual displacement and measured displacement at the same moment, and compensate for the operating error.
[0015] Thirdly, embodiments of this application also provide an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the method in any embodiment of the first aspect.
[0016] Fourthly, embodiments of this application also provide a computer-readable storage medium storing computer instructions for causing the computer to perform the method in any of the embodiments of the first aspect.
[0017] Fifthly, embodiments of this application also provide a computer program product, including a computer program that, when executed by a processor, implements the method in any of the embodiments of the first aspect described above.
[0018] In a sixth aspect, embodiments of this application also provide a computer program that, when executed by a processor, implements the method in any of the embodiments of the first aspect. Attached Figure Description
[0019] Figure 1 is a schematic diagram of a warehousing system provided in an embodiment of this application;
[0020] Figure 2 is a schematic diagram of the internal structure of a mobile device provided in an embodiment of this application;
[0021] Figure 3A is a structural schematic diagram of an identifier provided in an embodiment of this application;
[0022] Figure 3B is a schematic diagram of the structure of a mobile device provided in an embodiment of this application;
[0023] Figure 3C is a schematic diagram of an application scenario of a mobile device control method provided in an embodiment of this application;
[0024] Figure 3D is a schematic diagram of the structure of another mobile device provided in an embodiment of this application;
[0025] Figure 3E is a schematic diagram of an application scenario for another mobile device control method provided in an embodiment of this application;
[0026] Figure 4A is a flowchart illustrating a mobile device control method provided in an embodiment of this application;
[0027] Figure 4B is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0028] Figure 5A is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0029] Figure 5B is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0030] Figure 5C is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0031] Figure 6A is a schematic diagram showing the positional relationship between a second device and an identification strip according to an embodiment of this application;
[0032] Figure 6B is a schematic diagram showing the relationship between a first pulse signal, a second pulse signal, and the moving direction of a mobile device according to an embodiment of this application.
[0033] Figure 7 is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0034] Figure 8A is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0035] Figure 8B is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0036] Figure 9 is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0037] Figure 10 is a flowchart illustrating another mobile device control method provided in an embodiment of this application;
[0038] Figure 11 is a schematic diagram of the structure of a control module provided in an embodiment of this application;
[0039] Figure 12 is a schematic diagram of the internal structure of a robot provided in an embodiment of this application;
[0040] Figure 13 is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0041] To enable those skilled in the art to better understand the technical solutions in the embodiments of this application, and to make the above-mentioned objectives, features and advantages of the embodiments of this application more apparent and understandable, the technical solutions in the embodiments of this application will be further described in detail below with reference to the accompanying drawings.
[0042] In warehousing and logistics systems, goods are typically moved using mobile devices (such as robots). During the process of moving goods using these mobile devices, it is often necessary to locate the devices themselves.
[0043] In some embodiments, the position of the mobile device can be determined by detecting address patches using sensors. Specifically, photoelectric sensors are installed on the mobile device, and detection patches are installed at each shelf location. As the mobile device moves, the photoelectric sensors detect and count the detection patches at the passing locations. When the count reaches a target value, the mobile device moves to the target location. However, to avoid errors in photoelectric sensor detection that could cause the mobile device to stop at the wrong location, the operating speed of the mobile device is usually relatively low, resulting in low efficiency of the warehousing system. Furthermore, to ensure the mobile device stops smoothly in the middle of the shelf location, the installation position of each detection patch needs to be adjusted, which involves a large installation workload and hinders expansion. Additionally, after the photoelectric sensor detects a detection patch, the mobile device needs to slow down and stop. If the wheels slip, the stopping accuracy of the mobile device will have a significant error.
[0044] In some embodiments, the location of a mobile device can be determined by scanning a barcode or QR code with a camera installed on the mobile device to obtain map information and thus determine the location of the mobile device. However, in this method, the movement of the mobile device's wheels during operation causes changes in the camera's depth of field, resulting in code loss; moreover, due to the low camera frame rate, the mobile device cannot promptly correct errors based on the location determined by the camera detection.
[0045] In some embodiments, the position of the mobile device can be determined by laser ranging. A reflector is installed at the starting point of the path the mobile device moves through. A laser sensor on the mobile device then detects the reflector to output distance information between the mobile device and the reflector, as well as robot speed and acceleration. However, when the path is long, the laser angle is easily affected by the track and the swing angle of the mobile device, which can cause the laser spot to fail to properly scan the reflector, resulting in distance detection failure. Furthermore, for dual-wheeled mobile devices, if one wheel slips during operation, this method cannot promptly calibrate the mobile device's attitude.
[0046] In some embodiments, the position of the mobile device can be determined by a motor encoder mounted on the motor of the mobile device, thereby controlling the mobile device to perform corresponding operations. However, during the process of transporting goods, i.e., during the operation of the mobile device, the wheels of the mobile device may slip, which will cause a large error between the theoretical position of the mobile device determined by the motor encoder and the actual position of the mobile device, thus reducing the operating accuracy of the mobile device.
[0047] Based on this, this application provides a mobile device control method. This mobile device control method can obtain at least two types of acquisition information by acquiring identifiers, and determine the actual position (actual displacement) of the mobile device based on the at least two types of acquisition information. Then, based on the actual position of the mobile device and the measured position (measured displacement) measured by the displacement measurement components on the mobile device (e.g., motor encoder, laser sensor), the corresponding running error of the mobile device is determined, and the running error is compensated to eliminate the error caused by the slippage or idling of the mobile device's wheels, thereby improving the accuracy of real-time position detection of the mobile device and improving the running accuracy and stopping accuracy of the mobile device.
[0048] Figure 1 is a schematic diagram of a warehousing system provided in some embodiments of this application. As shown in Figure 1, the warehousing system 100 includes multiple carriers 10, mobile devices 20, control devices (not shown in Figure 1), and signs (not shown in Figure 1). The signs are arranged within the warehousing system 100 along the running direction of the mobile devices 20.
[0049] In some embodiments, the carrier 10 may include multiple storage locations (also referred to as placement locations). These placement locations can be used to place target objects, which may be containers, bins, goods, pallets, or the original packaging of goods. This application does not limit this; the following embodiments use containers as an example for illustrative purposes.
[0050] For example, the placement position can be a rectangular prism-shaped storage space, and multiple placement positions on the carrier 10 can be neatly arranged along the length, width, and height directions of the carrier 10. The container can be a product specifically designed for the carrier 10, a regular cargo box (also called a material box), or cargo packaging (also called an original box); this embodiment does not limit the specific type of container used.
[0051] In some embodiments, the carrier 10 can be a shelf. For example, the carrier 10 can be a movable shelf or a fixed shelf. The shelf includes at least one partition that divides the carrier 10 into at least two layers. Each partition of the carrier 10 has at least one placement position, and each placement position can accommodate at least one container. The container placed in each placement position can be a box or a pallet; this embodiment does not limit the specific type. It should be noted that the carrier 10 includes, but is not limited to, partitioned shelves, container shelves, picking shelves, movable shelves, and buffer shelves. The carrier 10 provided in this embodiment can refer to any carrier used for placing containers.
[0052] In some embodiments, the carrier 10 can be a high-density storage rack or a low-density storage rack. When the carrier 10 is a high-density storage rack, the gaps between containers are smaller.
[0053] In some embodiments, the carrier 10 can be a single-sided carrier, a double-sided carrier, or a four-sided carrier (i.e., containers can be taken from four sides). This application embodiment does not limit this; the embodiment uses a double-sided carrier 10 as an example for illustrative purposes. For instance, when the carrier 10 is a double-sided shelf, partition structures can be provided between multiple placement positions along the vertical direction; each side of the carrier 10 can have 30 placement positions, for a total of 60 placement positions on both sides. This application embodiment does not limit the type of carrier 10 or the number of placement positions included; this is merely an illustrative example.
[0054] In some embodiments, multiple vehicles 10 may be arranged in rows and columns in the storage area of the storage system 100. The area between two adjacent rows or columns of vehicles may be referred to as an aisle.
[0055] In some embodiments, the mobile device 20 may be referred to as a handling device or a handling robot, and is configured to move to a target vehicle to perform pick-up and drop operations on the target object in the target placement position on the target vehicle.
[0056] For example, the mobile device 20 can be a handling robot, such as a stacker crane, a robot that moves on a shelf, etc. For example, the stacker crane can move to the target carrier and take the target object from the target placement position of the target carrier using a pick-and-place device, or place the target object into the target placement position of the target carrier.
[0057] In some embodiments, the mobile device 20 includes a control module, a driver, and a displacement measurement component; wherein the driver and the displacement measurement component are both coupled to the control module, and a positioning component is coupled to the control module.
[0058] For example, the displacement measurement component is configured to measure the measured displacement of the mobile device 20, where the measured displacement refers to the theoretical displacement of the mobile device 20 during operation. The displacement measurement component can be a laser sensor, a motor encoder, or other components capable of determining the theoretical displacement of the mobile device 20 during operation; this application embodiment does not limit the specific components. The following embodiments will use a motor encoder as an example to illustrate the displacement measurement component.
[0059] In some embodiments, as shown in FIG2, the mobile device 20 includes a control module, a driver, and a motor encoder; wherein the driver is coupled to the motor encoder, and the motor encoder is coupled to the control module.
[0060] In some embodiments, the driver is configured to control the movement of the mobile device 20.
[0061] For example, after the control device obtains the order to be processed, it generates a handling instruction based on the order to be processed and sends it to the mobile device 20. After receiving the handling instruction sent by the control device, the mobile device 20 will respond to the handling instruction by controlling the current of the motor in the mobile device 20 through the driver, thereby driving the motor to work, so as to drive the walking wheels of the mobile device 20 to rotate, thereby enabling the mobile device 20 to move.
[0062] In one embodiment, the motor encoder (i.e., the displacement measurement component) is configured to detect the measured displacement of the mobile device 20 during operation.
[0063] For example, the motor encoder can be installed on the output shaft of the drive wheel in the traveling wheels of the mobile device 20, or it can be installed on the output shaft of the non-drive wheel in the traveling wheels of the mobile device 20. This application embodiment does not limit this. The motor encoder counts pulses based on the operation of the traveling wheels of the mobile device 20 during its movement, thereby obtaining the measured displacement.
[0064] In some embodiments, a positioning component is coupled to the control module. The positioning component is configured to acquire at least two pieces of information by collecting markers arranged along the running direction of the mobile device. The control module is configured to determine the actual displacement and direction of movement of the mobile device based on the at least two pieces of information. Then, based on the direction of movement and the actual and measured displacements at the same time, the control module determines the corresponding running error of the mobile device and finally compensates for the running error.
[0065] In some embodiments, as shown in FIG3A, the identifier 30 includes a plurality of identification codes 301 and an identifier bar 302.
[0066] In some embodiments, the positioning component includes a first device and a second device. The first device is configured to acquire the identification code 301 in the identifier 30 to obtain a target image; the second device is configured to acquire the identifier strip 302 in the identifier 30 to obtain detection information.
[0067] Exemplarily, the first device can be an image acquisition device or other device capable of acquiring the identifier 30 to obtain a target image. This application embodiment does not limit this. The following embodiments use an image acquisition device as an example to illustrate the first device. The image acquisition device can be a camera, a QR code camera, or a video camera; this application embodiment does not limit this. The second device can be a photoelectric sensor or other device capable of acquiring the identifier 30 to obtain detection information. This application embodiment does not limit this. The following embodiments use a photoelectric sensor as an example to illustrate the second device. The photoelectric sensor can be an infrared photoelectric sensor or a color mark sensor; this application embodiment does not limit this.
[0068] In some embodiments, the identification code 301 may be a QR code (as shown in Figure 3A) or a barcode; this application embodiment does not limit this. The following embodiments use a QR code as an example for illustrative purposes.
[0069] For example, by identifying the identification code 301, the mobile device 20 can determine the target location information corresponding to the mobile device 20. The target location information may include the current coordinates of the mobile device 20, the vehicle number of the vehicle where the identification code 301 is located, etc. Among them, the current coordinates of the mobile device 20 may refer to the position of the mobile device 20 relative to the vehicle 10, or it may refer to the position of the mobile device 20 in the warehousing system.
[0070] In some embodiments, the identification bar 302 includes a plurality of first objects and a plurality of second objects, which are arranged sequentially and alternately.
[0071] For example, the identification strip 302 can be a color band composed of alternating blocks of two colors, meaning the first object and the second object can be blocks of different colors. The color of the first object can be a color with low infrared reflectivity, and the color of the second object can be a color with high infrared reflectivity. For example, the first object can be black, and the second object can be white. When the first object is a black block and the second object is a white block, as the mobile device 20 moves, when the second device detects a black block (i.e., the first object), the second device does not trigger and outputs a low level; when the second device detects a white block (i.e., the second object), the second device triggers and outputs a high level. That is, when the second device moves from a black block to a white block, the low level output by the second device changes to a high level, generating a rising edge pulse signal; when the second device moves from a white block to a black block, the high level output by the second device changes to a low level, generating a falling edge pulse signal.
[0072] It should be noted that the type of the second device will affect the signal it outputs when triggered. For example, the second device may output a low level or a high level when triggered. This application embodiment does not limit this. This application embodiment uses the example of the second device outputting a high level when triggered and a low level when not triggered for illustrative purposes.
[0073] As another example, the identification strip 302 can also be a strip with alternating holes, where the first object can be a hole and the second object can be the area between two adjacent holes. As the mobile device 20 moves, if the second device does not detect an obstacle (i.e., the second object), it will not trigger and will output a low level; if the second device detects an obstacle, it will trigger and output a high level. That is, when the second device moves from the hole to the area between two adjacent holes, the low level output by the second device changes to a high level, generating a rising edge pulse signal; when the second device moves from the area between two adjacent holes to the hole, the high level output by the second device changes to a low level, generating a falling edge pulse signal.
[0074] It should be noted that the form of the identification strip 302 is not limited in the embodiments of this application. In the following embodiments, the identification strip 302 is a color strip composed of alternating color blocks of two colors as an example for illustrative purposes.
[0075] In some embodiments, multiple identification codes 301 and identification strips 302 can be integrally arranged or separately arranged. This application embodiment does not limit this. Furthermore, the identification strip 302 can be arranged on one side of the identification code 301 or on both sides of the identification code 301, that is, the relative positions of the identification code 301 and the identification strip 302 can be set according to actual needs. This application embodiment also does not limit the relative positional relationship between the identification code 301 and the identification strip 302.
[0076] For example, as shown in Figure 3A, multiple identification codes 301 and identification strips 302 can be set up as a whole. In this way, when deploying multiple identification codes 301 and identification strips 302, it is only necessary to fix the identification 30 at the required position along the running direction of the mobile device 20, which can reduce the difficulty of construction.
[0077] In some embodiments, the sum of the widths of the first object and the second object is equal to the width of the identification code 301. For example, if the width of the identification code 301 is 36mm, then the widths of the first object and the second object can be 18mm. This makes it easier to determine the actual displacement of the mobile device later.
[0078] In some embodiments, the identifiers 30 can be arranged in the tunnel along the running direction of the mobile device 20, that is, multiple identification codes 301 and identifier strips 302 can be arranged in the tunnel along the length of the tunnel. The position of the identifiers 30 in the tunnel can be determined according to actual needs, and this embodiment does not limit this.
[0079] For example, in different application scenarios, the mobile device 20 is different, and the arrangement of multiple identification codes 301 and identification strips 302 in the alley can also be different.
[0080] In some embodiments, as shown in FIG3B, the mobile device 20 is a stacker crane, which includes a mobile chassis 21, a gantry 22, and a pick-and-place device 23. The mobile chassis 21 may be equipped with wheels that rotate under the drive of a motor, thereby moving the mobile chassis 21. The gantry 22 may be mounted on the mobile chassis 21. For example, the gantry 22 may be fixedly connected to the mobile chassis 21, or detachably connected via bolts, screws, or other connecting components. The mobile chassis 21 can move the gantry 22 together. The pick-and-place device 23 may be mounted on the gantry 22 and can rise and fall along the gantry 22, thereby adjusting the height position of the pick-and-place device 23 on the gantry 22 to perform container retrieval operations from containers stored at different heights on the carrier 10.
[0081] In some embodiments, FIG3C provides a schematic diagram of an application scenario for a mobile device control method. As shown in FIG3C, the identifier 30 can be fixed on the ground of the aisle. At this time, the positioning components (i.e., the first device and the second device) can be set on the mobile chassis of the stacker crane. When the stacker crane moves in the aisle, the identifier 30 will be located below the mobile chassis of the stacker crane, that is, the first device and the second device will be located above the multiple identifier codes 30 and the identifier strips 302. As the mobile device 20 moves, the first device will pass by the multiple identifier codes 30 and collect the multiple identification codes 301, and the second device will pass by the identifier strips 302 and collect the identifier strips 302.
[0082] It should be noted that the relative positions of the multiple identification codes 301 and the identification bar 302 with the mobile device 20 can be determined according to actual needs, and this application embodiment does not limit this.
[0083] In some embodiments, as shown in FIG3D, the mobile device 20 is a robot moving on a shelf. The robot moving on the shelf may include a lifting mechanism 31 and a pick-and-place mechanism 32. The pick-and-place mechanism 32 is configured to pick up and place target items and is disposed on the lifting mechanism 31. The lifting mechanism 31 cooperates with the track 40. For example, the lifting mechanism 31 may be suspended on the track 40 and can move along the track 40 to drive the pick-and-place mechanism 32 to move along the carrier, so that the pick-and-place mechanism 32 can move to the position corresponding to the transfer of different columns on the carrier or the movable carrier.
[0084] Exemplarily, the lifting mechanism 31 includes a traveling assembly 312 and a stand 311, wherein the stand 311 is configured to extend along the height direction; the pick-and-place mechanism 32 is disposed on the stand 311 and configured to move along the height direction of the carrier to different storage locations on different levels of the carrier. The traveling assembly 312 is disposed on the stand 311 and is guided onto a track 40. The lifting mechanism 31 can move on the track 40 under the drive of the traveling assembly 312, thereby causing the stand 311 to move synchronously, so that the pick-and-place mechanism 32 can move along the length direction of the carrier with the stand 311. In this way, the pick-and-place mechanism 32 can move along the length and height directions of the carrier to the target placement location and perform pick-and-place operations on the target object in the target placement location.
[0085] It should be noted that in this embodiment, both the pick-and-place device 22 and the pick-and-place mechanism 32 can transfer the target item through various methods such as adsorption, pulling, hooking, and clamping. For example, the pick-and-place device 22 and the pick-and-place mechanism 32 can be suction cup structures, which can be adsorbed onto the side wall of the target item by negative pressure adsorption or magnetic adsorption; the pick-and-place device 22 and the pick-and-place mechanism 32 can also be structures such as a gripping fork or a robotic arm that can achieve pull-type transfer of the target item, or a hooking mechanism that can hook the front edge of the target item. This embodiment does not limit the structure of the pick-and-place components.
[0086] In some embodiments, the track 40 may be provided as one or more tracks. This application does not limit this. The following embodiments use two tracks 40 as an example for illustrative purposes.
[0087] For example, based on Figure 3D, Figure 3E provides another application scenario. As shown in Figure 3E, to improve the stability of the robot moving on the shelf, the track 40 can be set to two tracks. The two tracks 40 can be fixed to any two crossbeams on the carrier 10. For example, one track 40 can be fixed to the crossbeam at the top of the carrier 10, and the other track 40 can be fixed to the crossbeam at the bottom of the carrier 10. When the lifting mechanism 31 moves on the track 40 under the drive of the walking assembly 312, the first end of the upright 311 moves along the track 40 fixed to the crossbeam at the top of the carrier 10, and the second end moves along the track 40 fixed to the crossbeam at the bottom of the carrier 10.
[0088] In some embodiments, positioning components (i.e., the first device and the second device) may be disposed on the walking component 312, and a plurality of identification codes 301 and identification strips 302 may be disposed on the track 40 along the length direction of the track 40.
[0089] For example, identification codes 301 and marker strips 302 can be set on the track 40 corresponding to the positioning component, or on the crossbeam on the carrier 10 corresponding to the track 40, so that when the upright 311 moves along the track, the first device on the walking component 312 will pass through multiple marker codes 30 and collect multiple identification codes 301, and the second device will pass through the marker strips 302 and collect the marker strips 302, so as to determine the actual displacement distance of the upright 311.
[0090] In some embodiments, as shown in FIG2, the second device includes at least a first sub-device (the first photoelectric sensor in FIG2) and a second sub-device (the second photoelectric sensor in FIG2). The first sub-device and the second sub-device are spaced apart by a first distance. The first sub-device is configured to acquire a first pulse signal from the identification strip; the second sub-device is configured to acquire a second pulse signal from the identification strip; the detection information includes the first pulse signal and the second pulse signal, and the relative phase difference between the first pulse signal and the second pulse signal is a preset angle. The preset angle is a preset value and can be set according to actual needs; this embodiment does not limit this. For example, the preset value can be 20°, 30°, 90°, 270°, etc.
[0091] For example, the relative phase difference between the first pulse signal and the second pulse signal is assumed to be a preset angle of 90°. When the sum of the widths of the first object and the second object is 36mm, the first distance can be 36mm × n + 9mm, where n ≥ 0 and n is an integer. For example, the first distance can be 9mm, 45mm, 81mm, etc.
[0092] It is understandable that when the phase difference between the signal output by the first photoelectric sensor (i.e., the first sub-device) (i.e., the first pulse signal) and the signal output by the second photoelectric sensor (i.e., the second sub-device) (i.e., the second pulse signal) is preset by an angle, there is a time difference between the pulse changes in the same direction between the first and second pulse signals. That is, the moment when the high level in the first pulse signal changes to the low level will be earlier or later than the moment when the high level in the second pulse signal changes to the low level. Thus, the direction of movement can be determined based on the sequential relationship of the changes in the same direction of the first and second pulse signals, facilitating subsequent compensation of the motor encoder.
[0093] It should be noted that the phase difference between the signal output by the first photoelectric sensor (i.e., the first sub-device) (i.e., the first pulse signal) and the signal output by the second photoelectric sensor (i.e., the second sub-device) (i.e., the second pulse signal) can be 90° or 270°. In this case, the first and second photoelectric sensors can achieve an effect similar to a quadrature encoder, i.e., they can filter out glitches generated under abnormal conditions, eliminate interference caused by pulse edge oscillations, and effectively reduce cumulative errors during operation without relying on other positioning methods, thereby improving the operating accuracy of the mobile device 20.
[0094] It should also be noted that the signals output by the first sub-device and the second sub-device can be not only pulse signals, but also binary sequences, etc. This application embodiment does not limit this.
[0095] In some embodiments, the number of positioning components on the mobile device 20 can be one or more. The number of positioning components can be determined based on the number of drivers on the mobile device 20; for example, drivers and positioning components can be configured in a one-to-one correspondence. This application embodiment does not limit the relationship between the number of positioning components and drivers.
[0096] For example, as shown in FIG2, the number of positioning components can be two. Positioning components are provided on both the first and second sides of the mobile device 20, and the first and second sides are arranged opposite to each other. The positioning component provided on the first side is configured to collect the identifier located on the first side of the mobile device; the positioning component provided on the first side is configured to collect the identifier located on the second side of the mobile device.
[0097] In some embodiments, based on Figures 3B and 3C, when the mobile device 20 is a stacker crane, the first side of the mobile device 20 can refer to the left side of the mobile chassis 21 of the stacker crane, and the second side of the mobile device 20 can refer to the right side of the mobile chassis 21 of the stacker crane. During the movement of the stacker crane on the ground, when the mobile chassis 21 passes over a ground marker 30, the positioning component located on the left side of the mobile chassis 21 can collect data on the marker 30 located on the left side of the mobile chassis 21 (i.e., the marker 30 located on the first side of the mobile device 20) to determine the actual displacement on the left side of the mobile chassis 21; similarly, the positioning component located on the right side of the mobile chassis 21 can collect data on the marker 30 located on the right side of the mobile chassis 21 (i.e., the marker 30 located on the second side of the mobile device 20) to determine the actual displacement on the right side of the mobile chassis 21. In this way, it can be determined whether the actual displacements corresponding to the left and right sides of the mobile chassis 21 are equal. If the actual displacements on the left and right sides of the mobile chassis 21 are different, it means that the mobile chassis 21 of the stacker crane may be tilted. In this case, the motor encoder on the left side of the mobile chassis 21 can be compensated based on the actual displacement on the left side, and the motor encoder on the right side of the mobile chassis 21 can be compensated based on the actual displacement on the right side.
[0098] It should be noted that the number of ground markers 30 can be one or more. For example, there can be one ground marker 30, which includes two marker strips 302 and multiple identification codes 301, with the two marker strips 302 located on either side of the multiple identification codes 301 (as shown in Figure 3C). When the stacker crane passes over the ground marker 30, the positioning component located on the left side of the mobile chassis 21 collects the marker strips 302 and multiple identification codes located to the left of the multiple identification codes 301, while the positioning component located on the right side of the mobile chassis 21 collects the marker strips 302 and multiple identification codes 301 located to the right of the multiple identification codes 301. Alternatively, there can be two ground markers 30, arranged side-by-side in the aisle. When the stacker crane passes the ground marker 30, the positioning component on the left side of the mobile chassis 21 collects the marker 30 corresponding to the left positioning component among the two markers 30, and the positioning component on the right side of the mobile chassis 21 collects the marker 30 corresponding to the right positioning component among the two markers 30.
[0099] In some embodiments, as shown in Figures 3D and 3E, when the mobile device 20 is a robot moving on a shelf, if the two ends (i.e., the top and bottom ends) of the upright 311 of the robot moving on the shelf are driven by different walking components 312, that is, when both ends of the upright 311 are drive wheels, the markings 30 (i.e., identification code 301 and marking strip 302) can be set on the two tracks 40, or on the crossbeams on the carrier 10 corresponding to the tracks 40, or on any crossbeam on the carrier 10. This application embodiment does not limit this.
[0100] For example, as shown in FIG3E, the marker 30 is disposed on two tracks 40 (a first track disposed on a crossbeam at the top of the carrier 10 and a second track disposed on a crossbeam at the bottom of the carrier 10); the first side of the mobile device 20 may refer to the top of the stand 311 of the robot moving on the shelf, and the second side of the mobile device 20 may refer to the bottom of the stand 311 of the robot moving on the shelf. During the movement of the stand 311 along the track 40, the marker 30 located on the first track (i.e., the marker 30 located on the first side of the mobile device 20) can be collected by the positioning component disposed on the top of the stand 311 to determine the actual displacement of the top of the stand 311; the marker 30 located on the second track (i.e., the marker 30 located on the second side of the mobile device 20) can be collected by the positioning component disposed on the bottom of the stand 311 to determine the actual displacement of the bottom of the stand 311. This allows us to determine whether the actual displacements at the top and bottom of the support frame 311 are equal. If the actual displacements at the top and bottom of the support frame 311 are different, it means that the support frame 311 may be tilted. In this case, the motor encoder in the walking component 312 corresponding to the top of the support frame 311 can be compensated based on the actual displacement at the top of the support frame 311, and the motor encoder in the walking component 312 corresponding to the bottom of the support frame 311 can be compensated based on the actual displacement at the bottom of the support frame 311. In this way, the posture of the support frame 311 can be corrected in time, thereby improving the operational stability of the mobile device 20.
[0101] It should be noted that if one end of the upright 311 of the robot moving on the shelf is a driving wheel and the other end is a driven wheel, then a mark 30 can be set on the track 40 corresponding to the driving wheel in the two tracks 40, or a mark 30 can be set on the crossbeam on the carrier 10 corresponding to the driving wheel.
[0102] In some embodiments, during the vertical movement of the pick-and-place device 23 along the gantry 22, the actual displacement of the pick-and-place device 23 can be determined by identifying the identification codes affixed to each partition (beam) of the carrier 10; alternatively, a mark 30 can be set on the gantry 22 along its height direction, and a positioning component can be set on the pick-and-place device 23. The positioning component can collect the mark 30 on the gantry 22 to determine the actual displacement of the pick-and-place device 23, thereby achieving positioning of the pick-and-place device 23. Similarly, during the movement of the pick-and-place mechanism 32 along the upright 311, the actual displacement of the pick-and-place mechanism 32 can be determined by identifying the identification codes affixed to each partition of the carrier 10; alternatively, a mark 30 can be set on the upright 311 along its height direction, and a positioning component can be set on the pick-and-place mechanism 32. The positioning component can identify and detect the mark 30 on the upright 311 to determine the actual displacement of the pick-and-place mechanism 32.
[0103] For example, as shown in Figure 3E, when the mobile device 20 is a robot moving on a shelf, a positioning component (not shown in the figure) can be installed on the pick-and-place mechanism 32 of the robot moving on the shelf, and a marker 30 can be installed on the stand 311 along the height direction of the stand 311. During the vertical movement of the pick-and-place mechanism 32 along the stand 311, the marker 30 on the stand 311 can be collected by the positioning component to determine the actual displacement of the pick-and-place mechanism 32, and the corresponding operating error of the pick-and-place mechanism 32 can be compensated based on the actual displacement of the pick-and-place mechanism 32.
[0104] In some embodiments, if the two sides of the pick-and-place mechanism 32 in the robot moving on the shelf are driven by different drivers, positioning components can be provided on both sides of the pick-and-place mechanism 32, and markers 30 are provided on both sides of the upright 311 to correspond to the two sides of the pick-and-place mechanism 32. This allows the positioning components on both sides of the pick-and-place mechanism 32 to collect the markers 30 on both sides of the upright 311 when the pick-and-place mechanism 32 moves vertically along the upright 311, thereby determining whether the actual displacements on both sides of the pick-and-place mechanism 32 are equal, thus preventing the pick-and-place mechanism 32 from tilting during movement. If the two sides of the pick-and-place mechanism 32 in the robot moving on the shelf are driven by the same driver, a positioning component is provided on the active side of the pick-and-place mechanism 32, and a marker 30 is provided on the side of the upright 311 corresponding to the active side of the pick-and-place mechanism 32. It should be noted that the relative relationship between the positioning component and the pick-and-place device 23 in the stacker crane, as well as the relative relationship between the marker 30 and the mast 22, are similar to those in the robot moving on the shelf, and will not be repeated here.
[0105] In some embodiments, the control module is configured to determine the actual displacement and direction of movement of the mobile device based on at least two pieces of acquired information; and based on the direction of movement, as well as the actual displacement and measured displacement at the same moment, determine the corresponding operating error of the mobile device and compensate for the operating error.
[0106] In some examples, the control device and the mobile device 20 are communicatively connected for data communication. For example, the control device can communicate with the mobile device 20 via a local area network (LAN), a wireless local area network (WLAN), or other networks.
[0107] In some examples, the control device can be a server or a terminal device, or a device deployed with a Warehouse Management System (WMS) and a Robot Management System (RMS). The terminal device can include at least one of a personal computer, laptop computer, smartphone, tablet computer, and portable wearable device; the server can include a standalone server or a server cluster consisting of multiple servers, which is not limited in this embodiment.
[0108] The mobile device control method provided in this application embodiment will be described below with reference to Figure 4. It should be noted that the mobile device control method provided in this application embodiment is implemented through the mobile device 20 shown in Figure 2, such as through the control module in the mobile device 20.
[0109] Figure 4A is a flowchart illustrating a mobile device control method provided in an embodiment of this application. As shown in Figure 4A, in some embodiments, the mobile device control method provided in this application includes S401-S404.
[0110] S401. Collect the identifier through the positioning component to obtain at least two pieces of information.
[0111] In some embodiments, the control module controls the positioning component to collect the identifiers arranged along the running direction of the mobile device, and obtain at least two pieces of information.
[0112] In some embodiments, there may be one or more identifiers. When there are multiple identifiers, the types of the multiple identifiers may be the same or different. Each identifier may include one or more collection objects, and the number and types of collection objects included in different types of identifiers may be the same or different. The embodiments of this application do not limit the number and types of collection objects included in each identifier.
[0113] In some embodiments, the at least two pieces of information collected by the positioning component from the identifier can be of the same type or different types. The collected information can be determined based on the type of the object collected by the positioning component or based on the type of identifier collected by the positioning component. This application embodiment does not limit this. The following embodiments use the example of collected information based on the type of object collected by the positioning component for illustrative purposes.
[0114] For example, if the object collected by the positioning component includes a QR code, then at least two pieces of collected information may include an image containing the QR code. If the object collected by the positioning component includes multiple interleaved black and white blocks, then at least two pieces of collected information may include a binary array or pulse signal corresponding to the multiple interleaved black and white blocks; if the object collected by the positioning component includes a first QR code and a second QR code, then at least two pieces of collected information may include an image containing the first QR code and an image containing the second QR code. This application does not limit the scope of the embodiments.
[0115] In some embodiments, the positioning component can collect data from the same type of objects within the same identifier to obtain at least two different types of collection information or two identical types of collection information; it can also collect data from different types of objects within the same identifier to obtain at least two different types of collection information or two identical types of collection information. The positioning component can also collect data from identifiers of the same type to obtain at least two different types of collection information or two identical types of collection information; it can also collect data from identifiers of different types to obtain at least two different types of collection information or two identical types of collection information. This application does not limit the scope of these embodiments.
[0116] In some embodiments, the positioning component may include one or more devices. When the positioning component includes one device, it can collect data on the same identifier using that single device to obtain at least two identical or at least two different types of data; alternatively, it can collect data on multiple identical or different identifiers using that single device to obtain at least two identical or at least two different types of data. When the positioning component comprises multiple devices, it can collect data on the same identifier using multiple devices to obtain at least two identical or at least two different types of data; similarly, it can collect data on multiple identical or different identifiers using multiple devices to obtain at least two identical or at least two different types of data. This application does not limit the scope of the embodiments described herein.
[0117] In some embodiments, when the positioning component includes multiple devices, the types of the multiple devices may be the same or different. This application embodiment does not limit this. Specifically, devices of the same type can obtain the same or different types of collected information when collecting the same type of identifier (collection object). Similarly, devices of the same type can obtain the same or different types of collected information when collecting different types of identifiers (collection objects); devices of different types can obtain the same or different types of collected information when collecting the same type of identifier (collection object); and devices of different types can obtain the same or different types of collected information when collecting different types of identifiers (collection objects). This application embodiment does not limit this. The following embodiments use an example where the positioning component includes two devices (a first device and a second device), and both devices collect information from the same identifier.
[0118] In some embodiments, as shown in FIG4B, the positioning component may include a first device and a second device, and at least two types of acquired information include a target image and / or detection information. S401 may include S4011-S4012.
[0119] S4011. The first device collects the identification data to obtain the target image or detection information.
[0120] S4012. The identification is collected by the second device to obtain detection information or target image.
[0121] It should be noted that since the acquisition frequencies of the first device and the second device may be the same or different, the execution order of S4011 and S4012 is not limited in this embodiment.
[0122] In some embodiments, the identifier may include multiple identification codes. In this case, S4011 may include: acquiring the multiple identification codes through the first device to obtain a target image.
[0123] In some embodiments, the identifier may further include an identifier strip, which includes a plurality of first objects and a plurality of second objects, arranged sequentially and alternately. In this case, step S4012 may include: acquiring detection information by using a second device to collect data from the identifier strip.
[0124] Both the identification code and the tag are configured to indicate the current location of the mobile device.
[0125] In some embodiments, the first device may be an image acquisition device, and the second device may be a photoelectric sensor.
[0126] For example, since multiple identification codes and tags are arranged along the direction of travel of the mobile device, the mobile device will pass over multiple identification codes and tags during its movement. As the mobile device moves, the image acquisition device (i.e., the first device) can acquire multiple identification codes in the tags to obtain a target image, while the photoelectric sensor (i.e., the second device) acquires the tags in the tags to obtain detection information.
[0127] S402. Based on at least two pieces of collected information, determine the actual displacement and direction of movement of the mobile device.
[0128] In some embodiments, the control module in the mobile device acquires at least two pieces of information collected by the positioning component, and determines the actual displacement and direction of movement of the mobile device based on the at least two pieces of information collected.
[0129] For example, the control module can determine the actual displacement and direction of movement of the mobile device based on the target image from at least two acquired information sources. The control module can also determine the actual displacement and direction of movement of the mobile device based on detection information from at least two acquired information sources. Furthermore, the control module can determine a third actual displacement and direction of movement of the mobile device based on the target image, and a fourth actual displacement and direction of movement of the mobile device based on the detection information. Then, based on the third and fourth actual displacements, a method for determining the actual displacement of the mobile device is established. For example, the average value between the third and fourth actual displacements can be determined as the final actual displacement of the mobile device. This application does not limit this aspect.
[0130] In some embodiments, in order to compensate for the operating errors of the mobile device in a timely manner, as shown in FIG5A, S402 may include S4021a.
[0131] S4021a. If the first device meets the preset conditions, the actual displacement and direction of movement are determined based on the detection information.
[0132] In some embodiments, preset conditions are used to indicate the acquisition status of multiple identification codes by the first device. These preset conditions can be set according to actual needs, and the content of the preset conditions is not limited in this application embodiment.
[0133] In some embodiments, the preset conditions may include the inability to obtain the code value and pixel value corresponding to the target identification code. Here, the target identification code is the identification code in the target image that can be successfully recognized.
[0134] For example, if the first device fails to acquire the target image, or if the target image does not contain a target identification code, or if data is lost due to a communication error, the control module may be unable to obtain the code value and pixel value corresponding to the target identification code. In this case, if the first device is determined to meet the preset conditions, the control module determines the actual displacement and direction of movement based on the detection information.
[0135] In some embodiments, when the first device is an image acquisition device, due to the low frame rate of the image acquisition device (e.g., a camera), the image acquisition device may not be acquiring an image at the current moment, meaning it has not acquired the target image. In this case, the control module determines the actual displacement and direction of movement of the mobile device based on the detection information obtained from the second device. Furthermore, since the target image is acquired by the image acquisition device while the mobile device is moving, the target image may not contain an identification code, may contain a complete identification code, may contain a partial identification code, or may contain multiple identification codes. Therefore, if at the current moment, when the image acquisition device is acquiring an image, the mobile device moves between two adjacent identification codes, resulting in the target image acquired by the image acquisition device not containing an identification code, or containing a partial identification code insufficient for successful recognition, it means that the target image does not contain the target identification code. To avoid affecting the operating accuracy of the mobile device, the control module can determine the actual displacement of the mobile device based on the detection information obtained from the second device. Furthermore, if the mobile device moves too fast or swings too much, the clarity of the identification code in the target image captured by the image acquisition device at any given moment may be low. This could prevent the control module from successfully identifying the identification code in the target image, meaning that the target identification code is not present in the target image. In this case, the control module can determine the actual displacement and direction of movement of the mobile device based on the detection information obtained from the second device. Moreover, in some application scenarios, if a communication error occurs between the image acquisition device and the control module, resulting in data loss, the control module can determine the actual displacement and direction of movement of the mobile device based on the detection information obtained from the second device.
[0136] In some embodiments, when the second device includes at least a first sub-device and a second sub-device, and the first sub-device and the second sub-device are spaced apart by a first distance, obtaining detection information by collecting the identification strip through the second device may include: collecting the identification strip through the first sub-device to obtain a first pulse signal, and collecting the identification strip through the second sub-device to obtain a second pulse signal.
[0137] The detection signal may include a first pulse signal and a second pulse signal, with the relative phase difference between the first pulse signal and the second pulse signal being a preset angle, such as 90° or 270°. In this case, as shown in Figure 5B, determining the actual displacement and direction of movement of the mobile device based on the detection information may include steps S501-S502.
[0138] S501. Based on the pulse change direction and change time corresponding to the first pulse in the first pulse signal and the second pulse in the second pulse signal within the same time period, determine the movement direction.
[0139] The pulse change direction includes rising edge and falling edge. Rising edge refers to the pulse signal changing from low level to high level, and falling edge refers to the pulse signal changing from high level to low level. The first pulse and the second pulse are pulse signals within the same time period.
[0140] In some embodiments, the sum of the widths of the first object and the second object is a period length. Since the phase difference between the first pulse signal and the second pulse signal is a preset angle, the movement direction of the mobile device can be determined by determining the pulse change direction and change time within the same time period in the first pulse signal and the second pulse signal.
[0141] In some embodiments, S501 may include: if the pulse change directions of the first pulse and the second pulse are the same, and the change time of the first pulse is earlier than the change time of the second pulse, then the running direction of the mobile device is determined to be the first direction; if the pulse change directions of the first pulse and the second pulse are the same, and the change time of the first pulse is later than the change time of the second pulse, then the running direction of the mobile device is determined to be the second direction.
[0142] The first direction is different from the second direction.
[0143] For example, suppose the second device is a photoelectric sensor, and the relative positional relationship between the first sub-device (photoelectric sensor A), the second sub-device (photoelectric sensor B), and the identification strip is shown in a of Figure 6A. If, during the first time period, both the first pulse in the first pulse signal and the second pulse in the second pulse signal output by photoelectric sensor A are falling edges (selected by the dashed box in a of Figure 6B), and the change time of the first pulse is earlier than the change time of the second pulse, then the mobile device moves to the left (i.e., in the first direction). If, during the second time period, both the first pulse in the first pulse signal and the second pulse in the second pulse signal output by photoelectric sensor A are rising edges (selected by the dashed box in b of Figure 6B), and the change time of the first pulse is later than the change time of the second pulse, then the mobile device moves to the right (i.e., in the second direction).
[0144] S502. Based on the direction of movement, the first pulse signal, and the second pulse signal, determine the number of first pulses and the number of second pulses corresponding to the detection information, and determine the actual displacement based on the number of first pulses, the number of second pulses, and the first distance.
[0145] The first pulse count indicates the number of pulses generated when the mobile device moves in the forward direction; the second pulse count indicates the number of pulses generated when the mobile device moves in the reverse direction. Forward and reverse refer to two opposite directions. The first distance between the first sub-device and the second sub-device is a preset value, which can be determined based on the sum of the widths of the first and second objects.
[0146] In some embodiments, forward movement of the mobile device means that the mobile device moves toward the target placement location in response to a handling command sent by the control device. Reverse movement of the mobile device means that the mobile device moves away from the target placement location.
[0147] For example, after the control module executes S501 to obtain the movement direction of the mobile device, it determines whether the mobile device is moving in a positive or negative direction at the current moment based on the movement direction of the mobile device.
[0148] In some embodiments, the sum of the number of pulses generated when the mobile device moves forward in the first pulse signal and the number of pulses generated when the mobile device moves forward in the second pulse signal can be determined as the first pulse number; and the sum of the number of pulses generated when the mobile device moves backward in the first pulse signal and the number of pulses generated when the mobile device moves backward in the second pulse signal can be determined as the second pulse number.
[0149] For example, if the first sub-device and the second sub-device both output 2 pulses when the mobile device moves in the positive direction for one cycle, then the number of the first pulses is 4.
[0150] In some embodiments, as shown in FIG5C, determining the actual displacement based on the first pulse count, the second pulse count, and the first distance may include S601-S602.
[0151] S601. Determine the pulse number difference between the first pulse number and the second pulse number.
[0152] S602. The product of the pulse number difference and the first distance is determined as the actual displacement.
[0153] In some embodiments, the pulse number difference between the first pulse number and the second pulse number is obtained by subtracting the second pulse number from the first pulse number. Then, the pulse number difference is multiplied by the first distance to obtain the product between the pulse number difference and the first distance. Finally, the product between the pulse number difference and the first distance is determined as the actual displacement.
[0154] For example, as shown in Figure 6A, the distance between photoelectric sensor A (i.e., the first sub-device) and photoelectric sensor B (i.e., the second sub-device) is 9mm, that is, the first distance is 9mm, and the mobile device moves forward to the right. If the marking strip consists of multiple alternating black and white blocks, with the black blocks being the first object and the white blocks being the second object, and the initial positions of photoelectric sensor A and photoelectric sensor B are shown as a in Figure 6A, then when the mobile device moves to the right (i.e., forward) by 9mm, causing photoelectric sensor A and photoelectric sensor B to move from position a in Figure 6A to position b in Figure 6A, photoelectric sensor A outputs 0 pulses, and photoelectric sensor B outputs 1 pulse, the first pulse count is 0+1=1. If the mobile device is moved to the left (i.e., reverse) by an external force by 18mm, causing photoelectric sensor A and photoelectric sensor B to move from position b in Figure 6A to position c in Figure 6A, photoelectric sensor A outputs 1 pulse, and photoelectric sensor B outputs 1 pulse, the second pulse count is 1+1=2. At this point, the actual displacement of the mobile device is (1-2)×9mm=-9mm, which means the actual displacement of the mobile device is 9mm to the left.
[0155] It is understandable that when a mobile device moves towards a target placement location in response to a handling command sent by a control device, it will move away from the target placement location if subjected to an external force (e.g., manual pushing). In this embodiment, the actual displacement of the mobile device is determined based on the pulse number difference between the first pulse number and the second pulse number. This reduces the impact of the number of pulses generated when the mobile device moves in the opposite direction on the determination of the actual displacement, thus improving the accuracy of the obtained actual displacement of the mobile device.
[0156] In some embodiments, to further improve the operating accuracy of the mobile device, as shown in FIG7, S402 may include S4021b.
[0157] S4021b If the first device does not meet the preset conditions, the actual displacement and direction of movement are determined based on the target image.
[0158] The preset conditions are configured to indicate the first device's acquisition status of multiple identification codes, that is, the preset conditions are the same as the preset conditions in S4021a.
[0159] As shown in Figure 8A, in some embodiments, determining the actual displacement and direction of movement based on the target image may include S801-S803.
[0160] S801. Obtain the code value and pixel value corresponding to the target identification code in the target image.
[0161] The target identification code is an identification code configured in the target image to determine the location information of the mobile device.
[0162] In some embodiments, the first device performs recognition processing on the target image to obtain the code value and pixel value corresponding to the target identification code in the target image. The code value represents the identifier of the identification code.
[0163] S802. Determine the target location information of the mobile device based on the code value and pixel value.
[0164] The target location information refers to the current location of the mobile device.
[0165] In some embodiments, as shown in FIG8B, S802 may include S8021-S8023.
[0166] S8021. Determine the first position corresponding to the mobile device based on the code value.
[0167] S8022. Determine the second position corresponding to the mobile device based on the pixel value.
[0168] S8023. Based on the first location and the second location, determine the target location information of the mobile device.
[0169] In some embodiments, the first position represents the location of the target identification code, and the second position indicates the offset between the mobile device and the target identification code. The sum of the first and second positions can be determined as the target location information of the mobile device. The target location information of the mobile device indicates the current location of the mobile device.
[0170] For example, assuming the code value of the zero-position identification code is 1, S8021 determines that the current code value corresponding to the mobile device is 20. If the width of the identification code is 36mm and there is no gap between two adjacent identification codes, then the first position corresponding to the mobile device is: 20 × 36mm = 720mm. At this time, if S8022 determines that the second position corresponding to the mobile device is 3mm, then the target position information of the mobile device is 720mm + 3mm = 723mm. If S8022 determines that the second position corresponding to the mobile device is -3mm, then the target position information of the mobile device is 720mm + (-3)mm = 717mm.
[0171] S803. Based on the target location information, determine the actual displacement and direction of movement of the mobile device.
[0172] In some embodiments, the position information of the previous moment is obtained, and the position information of the previous moment is subtracted from the target position information of the current moment to obtain the actual displacement of the mobile device. Then, the direction of movement of the mobile device can be determined based on the positive or negative value of the actual displacement.
[0173] In some embodiments, as shown in FIG9, the mobile device control method provided in this application embodiment may further include S901-S902.
[0174] S901. If the target image contains multiple identification codes to be processed, determine the distance between each identification code to be processed and the mobile device.
[0175] Among them, the identification code to be processed is the identification code located in the target image among multiple identification codes that awaits further processing.
[0176] S902. Based on the distance between each identification code to be processed and the first device, determine the target identification code from multiple identification codes to be processed.
[0177] In some embodiments, the target image acquired by the first device may contain one or more identification codes to be processed. After acquiring the target image, the first device can determine the number of identification codes to be processed in the acquired target image. If the target image contains multiple identification codes to be processed, the first device determines the distance between the center point of each identification code to be processed and the first device.
[0178] In some embodiments, as shown in FIG10, S902 may include S9021-S9022.
[0179] S9021. If the distances between multiple identification codes to be processed and the first device are different, the identification code closest to the mobile device among the multiple identification codes to be processed shall be determined as the target identification code.
[0180] S9022. If the distance between multiple unprocessed identification codes and the first device is the same, then any one of the multiple unprocessed identification codes is determined as the target identification code.
[0181] In some embodiments, the first device may determine the pixel value of each identifier to be processed, and determine whether the distance between each identifier to be processed and the first device is the same based on the pixel value of each identifier to be processed. If the distances between multiple identifiers to be processed and the first device are different, the identifier to be processed that is closest to the first device is determined from the multiple identifiers to be processed based on the pixel value of each identifier to be processed, and the identifier to be processed that is closest to the first device is determined as the target identifier. If the distances between multiple identifiers to be processed and the first device are the same, any one of the multiple identifiers to be processed is determined as the target identifier.
[0182] It should be noted that the distance between the identification code to be processed and the first device can be equivalent to the distance between the identification code to be processed and the mobile device. That is, in this embodiment of the application, the target identification code can also be determined from multiple identification codes to be processed based on the distance between the identification code to be processed and the mobile device.
[0183] It is understood that in this embodiment, the sampling rate of the second device can be higher than that of the first device, and the accuracy of the actual displacement determined based on the acquisition information of the first device is higher than that determined by the acquisition information of the second device. When the first device is an image acquisition device and the second device is a photoelectric sensor, since the sampling rate of the photoelectric sensor is higher than that of the image acquisition device, the actual displacement of the mobile device can be determined in a timely manner by detecting the identification strip using the photoelectric sensor, thereby compensating for the corresponding operating error of the mobile device in a timely manner. Furthermore, the actual displacement of the mobile device determined based on the target image obtained by the image acquisition device from the identification code is more accurate; therefore, compensating for the corresponding operating error of the mobile device based on the actual displacement obtained by the image acquisition device from the identification code can further improve the operating accuracy of the mobile device. Thus, combining the second device and the first device not only allows for timely error calibration but also improves the operating accuracy of the mobile device.
[0184] It should be noted that the positioning component on the mobile device provided in this application embodiment may only include the second device, that is, the actual displacement of the mobile device may be determined based solely on the detection information detected by the second device, and the operating error of the mobile device may be compensated.
[0185] S403. Obtain the measured displacement of the mobile device.
[0186] In some embodiments, the control module obtains the measured displacement of the mobile device from the displacement measurement component on the mobile device.
[0187] For example, when the displacement measurement component is a motor encoder, the motor encoder determines the theoretical displacement of the mobile device by measuring the number of rotations of the motor of the mobile device and sends it to the control module. The control module receives the theoretical displacement sent by the motor encoder and determines the theoretical displacement as the measured displacement.
[0188] S404. Based on the direction of movement, and the actual and measured displacement at the same moment, determine the corresponding operating error of the mobile device, and compensate for the operating error.
[0189] In some embodiments, the control module in the mobile device acquires the measured displacement detected by the displacement measurement component, and determines the corresponding operating error of the mobile device based on the direction of movement and the actual displacement and measured displacement at the same time.
[0190] For example, the control module can determine the difference between the actual displacement and the measured displacement at the same moment as the operating error of the mobile device, and perform compensation based on the operating error of the mobile device. For instance, the control module obtains the difference between the actual displacement and the measured displacement at the same moment by subtracting the measured displacement at the same moment from the actual displacement, thereby obtaining the operating error of the mobile device.
[0191] In some embodiments, when the displacement measurement component is a motor encoder, the direction of movement of the mobile device can be represented by the sign of the numerical value. For example, when the mobile device moves in a first direction, the measured displacement detected by the motor encoder can be set to a negative value; when the mobile device moves in a second direction, the measured displacement detected by the motor encoder can be set to a positive value. In this case, the control module can determine the compensation direction for the motor encoder based on the sign of the corresponding operating error of the mobile device, and by compensating for the error of the motor encoder, the corresponding operating error of the mobile device can be compensated, thereby improving the accuracy of real-time position detection of the mobile device and improving the running accuracy and stopping accuracy of the mobile device.
[0192] For example, if the difference between the actual displacement and the measured displacement at the same moment is positive, the driver determines the compensation direction for the motor encoder as the second direction; if the difference between the actual displacement and the measured displacement at the same moment is negative, the driver determines the compensation direction for the motor encoder as the first direction.
[0193] In some embodiments, a positioning component is provided on both a first side and a second side of the mobile device, with the first side and the second side being disposed opposite to each other; wherein, the positioning component provided on the first side is configured to collect an identifier located on the first side of the mobile device; and the positioning component provided on the first side is configured to collect an identifier located on the second side of the mobile device.
[0194] In some embodiments, if the absolute value of the actual displacement corresponding to the first side of the mobile device is greater than the absolute value of the actual displacement corresponding to the second side of the mobile device, then the speed of the first side is adjusted from the first speed to the second speed, and / or the speed of the second side is adjusted from the third speed to the fourth speed; wherein the first speed is greater than the second speed; and the third speed is less than the fourth speed.
[0195] In some embodiments, the control module determines the relationship between the absolute value of the actual displacement corresponding to the first side of the mobile device and the absolute value of the actual displacement corresponding to the second side of the mobile device. If the absolute value of the actual displacement corresponding to the first side of the mobile device is greater than the absolute value of the actual displacement corresponding to the second side of the mobile device, it means that the speed of the first side of the mobile device is greater than the speed of the second side of the mobile device, and the mobile device will tilt towards the second side. To correct the attitude of the mobile device, the speed of the second side of the mobile device may not be adjusted, and the speed of the first side of the mobile device may be adjusted from the first speed to the second speed; alternatively, the speed of the first side of the mobile device may not be adjusted, and the speed of the second side of the mobile device may be adjusted from the third speed to the fourth speed; alternatively, the speed of the first side of the mobile device may be adjusted from the first speed to the second speed while the speed of the second side of the mobile device is adjusted from the third speed to the fourth speed. This application embodiment does not limit this.
[0196] In some embodiments, the mobile device control method provided in this application may further include: when the mobile device is started, collecting the current identifier through a positioning component to obtain information to be processed, and determining the current location information of the mobile device based on the information to be processed.
[0197] The current location information refers to the location of the mobile device after it is started. Mobile device startup includes the initial startup of the mobile device and the restart of the mobile device.
[0198] In some embodiments, if the mobile device is started, the first device in the positioning component collects the identification code corresponding to the current location of the mobile device to obtain corresponding information to be processed, that is, the information to be processed includes the identification code corresponding to the current location of the mobile device. Then, the first device in the positioning component processes the identification code in the image to be processed to obtain the code value and pixel value corresponding to the identification code. Based on the code value and pixel value corresponding to the identification code in the image to be processed, the current location information of the mobile device can be determined. It should be noted that the method for determining the current location information of the mobile device based on the code value and pixel value corresponding to the identification code in the image to be processed is similar to S801-S802, and will not be described again here.
[0199] Understandably, this way, mobile devices don't need to return to zero after restarting; they can continue working from their current position, which improves work efficiency.
[0200] Based on the same inventive concept, this application also provides a control module for implementing the mobile device control method described above. The solution provided by this control module is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more control module embodiments provided below can be found in the limitations of the mobile device control method described above, and will not be repeated here.
[0201] In some embodiments, FIG11 is a schematic diagram of the structure of a control module according to an embodiment of the present application. As shown in FIG11, the control module includes:
[0202] The acquisition unit 1110 is configured to acquire the identifiers and obtain at least two pieces of acquisition information; the identifiers are arranged along the running direction of the mobile device.
[0203] The determining unit 1120 is configured to determine the actual displacement and direction of movement of the mobile device based on at least two pieces of acquired information; and to determine the corresponding operating error of the mobile device based on the direction of movement, as well as the actual displacement and the measured displacement at the same moment.
[0204] The acquisition unit 1130 is configured to acquire the measured displacement of the mobile device;
[0205] The compensation unit 1140 is configured to compensate for operational errors.
[0206] In some embodiments, at least two types of information to be acquired include a target image and / or detection information; the acquisition unit 1110 is further configured to acquire the identifier to obtain a target image or detection information; and to acquire the identifier to obtain detection information or a target image.
[0207] In some embodiments, the identifier includes multiple identification codes; the acquisition unit 1110 is further configured to acquire the multiple identification codes to obtain a target image.
[0208] In some embodiments, the identifier further includes an identifier bar, which includes a plurality of first objects and a plurality of second objects, which are arranged sequentially and alternately; the acquisition unit 1110 is further configured to acquire the identifier bar to obtain detection information.
[0209] In some embodiments, the determining unit 1120 is further configured to determine the actual displacement and direction of movement based on the detection information if the first device meets the preset conditions; wherein the preset conditions are configured to indicate the acquisition status of the first device for multiple identification codes.
[0210] In some embodiments, the second device includes at least a first sub-device and a second sub-device, with a first distance separating the first sub-device and the second sub-device; the acquisition unit 1110 is further configured to acquire the identification strip to obtain a first pulse signal, and to acquire the identification strip to obtain a second pulse signal; wherein, the detection signal includes the first pulse signal and the second pulse signal; the relative phase difference between the first pulse signal and the second pulse signal is a preset angle;
[0211] The determining unit 1120 is further configured to determine the movement direction based on the pulse change direction and change time corresponding to the first pulse in the first pulse signal and the second pulse in the second pulse signal; the first pulse and the second pulse are pulse signals within the same time period, and the pulse change direction includes rising edge and falling edge; based on the movement direction, the first pulse signal and the second pulse signal, the number of first pulses and the number of second pulses corresponding to the detection information are determined, and based on the number of first pulses, the number of second pulses and the first distance, the actual displacement is determined; the number of first pulses indicates the number of pulses generated when the mobile device moves in the forward direction; the number of second pulses indicates the number of pulses generated when the mobile device moves in the reverse direction.
[0212] In some embodiments, the determining unit 1120 is further configured to determine the pulse number difference between the first pulse number and the second pulse number; and to determine the actual displacement by multiplying the pulse number difference by the first distance.
[0213] In some embodiments, the determining unit 1120 is further configured to determine the running direction of the mobile device as a first direction if the pulse change directions of the first pulse and the second pulse are the same and the change time of the first pulse is earlier than the change time of the second pulse; and to determine the running direction of the mobile device as a second direction if the pulse change directions of the first pulse and the second pulse are the same and the change time of the first pulse is later than the change time of the second pulse; the first direction and the second direction are different.
[0214] In some embodiments, the determining unit 1120 is further configured to determine the actual displacement and direction of movement based on the target image if the first device does not meet the preset conditions; wherein the preset conditions are configured to indicate the acquisition status of the first device for multiple identification codes.
[0215] In some embodiments, the acquisition unit 1130 is further configured to acquire the code value and pixel value corresponding to the target identification code in the target image;
[0216] The determining unit 1120 is also configured to determine the target position information of the mobile device based on the code value and the pixel value; and to determine the actual displacement and direction of movement of the mobile device based on the target position information.
[0217] In some embodiments, the determining unit 1120 is further configured to determine a first position corresponding to the mobile device based on a code value; determine a second position corresponding to the mobile device based on a pixel value; the second position indicates the offset between the mobile device and the target identification code; and determine target position information of the mobile device based on the first position and the second position.
[0218] In some embodiments, the determining unit 1120 is further configured to determine the distance between each identification code to be processed and the mobile device if the target image includes a plurality of identification codes to be processed; and to determine the target identification code from the plurality of identification codes to be processed based on the distance between each identification code to be processed and the mobile device.
[0219] In some embodiments, the determining unit 1120 is further configured to determine the target identification code as the identification code among the multiple identification codes that are closest to the mobile device if the distances between the multiple identification codes to be processed and the mobile device are different; and to determine any one of the multiple identification codes to be processed as the target identification code if the distances between the multiple identification codes to be processed and the mobile device are the same.
[0220] In some embodiments, a positioning component is provided on both a first side and a second side of the mobile device, with the first side and the second side being disposed opposite to each other; wherein, the positioning component provided on the first side is configured to collect an identifier located on the first side of the mobile device; and the positioning component provided on the first side is configured to collect an identifier located on the second side of the mobile device.
[0221] In some embodiments, the determining unit 1120 is further configured to adjust the speed of the first side from the first speed to the second speed, and / or adjust the speed of the second side from the third speed to the fourth speed if the absolute value of the actual displacement corresponding to the first side of the mobile device is greater than the absolute value of the actual displacement corresponding to the second side of the mobile device; wherein the first speed is greater than the second speed; and the third speed is less than the fourth speed.
[0222] In some embodiments, the acquisition unit 1110 is further configured to acquire the current identifier when the mobile device starts up, and obtain information to be processed;
[0223] The determining unit 1120 is also configured to determine the current location information of the mobile device based on the information to be processed.
[0224] For specific limitations on mobile device control devices and the beneficial effects they can achieve, please refer to the limitations on mobile device control methods mentioned above, which will not be repeated here.
[0225] Figure 12 shows a schematic diagram of the internal structure of a robot according to an embodiment of this application. This robot, also known as a mobile device, includes a processor, memory, communication interface, display screen, and input device connected via a system bus. The robot's processor is configured to provide computing and control capabilities. The robot's memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The robot's communication interface is configured to communicate with external terminals via wired or wireless means. Wireless communication can be achieved through Wi-Fi, carrier networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements the mobile device control method of this application embodiment. The robot's display screen can be an electronic display screen, an LCD screen, or an e-ink display screen. The robot's input device can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the robot's shell, or an external keyboard, touchpad, or mouse, etc.
[0226] Figure 13 shows a schematic diagram of the internal structure of an electronic device according to an embodiment of this application. The electronic device can be a server. It includes a processor, a memory, and a network interface connected via a system bus. The processor is configured to provide computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The database is configured to store height parameters and three-dimensional map data. The network interface is configured to communicate with an external terminal via a network connection. When the computer program is executed by the processor, it implements the mobile device control method of this application embodiment.
[0227] Those skilled in the art will understand that the structures shown in Figures 12 and 13 are merely block diagrams of some structures related to the present application and do not constitute a limitation on the robots and electronic devices to which the present application is applied. Specific robots and electronic devices may include more or fewer components than shown in the figures, or combine certain components, or have different component arrangements.
[0228] In a specific implementation, this application provides an electronic device, including a processor and a memory, wherein a computer program is stored in the memory, and when the computer program is executed by the processor, it implements the steps of the method in any of the above embodiments.
[0229] In a specific implementation, embodiments of this application provide a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the method in any of the above embodiments.
[0230] In a specific implementation, this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method in any of the above embodiments.
[0231] In a specific implementation, this application provides a computer program that, when executed by a processor, implements the steps of the method in any of the above embodiments.
[0232] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases, etc. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, etc., etc., and are not limited to these.
[0233] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0234] The above embodiments are merely illustrative of several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A mobile device control method, applied to a control module of a mobile device, wherein a positioning component is coupled to the control module; The method includes: The positioning component collects the identifier to obtain at least two pieces of information. The markings are arranged along the direction of travel of the mobile device; Based on the at least two pieces of collected information, the actual displacement and direction of movement of the mobile device are determined. Obtain the measured displacement of the mobile device; Based on the direction of movement, and the actual displacement and the measured displacement at the same moment, the operating error corresponding to the mobile device is determined, and the operating error is compensated.
2. The method according to claim 1, wherein, The positioning component includes a first device; the at least two pieces of acquired information include a target image; The step of collecting the identifier through the positioning component yields at least two pieces of information, including: The target image is obtained by capturing the identifier using the first device.
3. The method according to claim 2, wherein, The identifier includes multiple identification codes; The step of acquiring the target image by collecting the identifier through the first device includes: The target image is obtained by collecting multiple identification codes using the first device.
4. The method according to claim 3, wherein, Determining the actual displacement and direction of movement of the mobile device based on the at least two pieces of collected information includes: If the first device does not meet the preset conditions, the actual displacement and the direction of movement are determined based on the target image; wherein the preset conditions are used to indicate the acquisition status of the first device for the multiple identification codes.
5. The method according to claim 4, wherein, Determining the actual displacement and the direction of movement based on the target image includes: Obtain the code value and pixel value corresponding to the target identification code in the target image; Based on the code value and the pixel value, the target location information of the mobile device is determined; Based on the target location information, the actual displacement and the direction of movement of the mobile device are determined.
6. The method according to claim 5, wherein, Determining the target location information of the mobile device based on the code value and the pixel value includes: The first location corresponding to the mobile device is determined based on the code value; The second position corresponding to the mobile device is determined based on the pixel value; the second position indicates the offset between the mobile device and the target identification code. Based on the first location and the second location, the target location information of the mobile device is determined.
7. The method according to claim 4, wherein, The preset conditions include the inability to obtain the code value and pixel value corresponding to the target identification code; the target identification code is the identification code in the target image that can be successfully identified.
8. The method according to claim 7, wherein, The method further includes: If the target image includes multiple identification codes to be processed, then the distance between each identification code to be processed and the mobile device is determined; The target identification code is determined from the plurality of identification codes to be processed based on the distance between each of the identification codes to be processed and the first device.
9. The method according to claim 8, wherein, The step of determining the target identification code from a plurality of identification codes to be processed based on the distance between each of the identification codes to be processed and the first device includes: If the distances between the multiple identification codes to be processed and the first device are different, then the identification code that is closest to the first device among the multiple identification codes to be processed is determined as the target identification code; If the distance between multiple unprocessed identification codes and the first device is the same, then any one of the multiple unprocessed identification codes is determined as the target identification code.
10. The method according to claim 1, wherein, The positioning component includes a second device; the at least two pieces of acquired information include detection information; The step of collecting the identifier through the positioning component yields at least two pieces of information, including: The detection information is obtained by collecting the identifier using the second device.
11. The method according to claim 10, wherein, The identifier also includes an identifier bar, which includes a plurality of first objects and a plurality of second objects, the plurality of first objects and the plurality of second objects being arranged sequentially and alternately; The step of collecting the identifier through the second device to obtain the detection information includes: The detection information is obtained by collecting data from the identification strip using the second device.
12. The method according to claim 11, wherein, The second device includes at least a first sub-device and a second sub-device, with a first distance separating the first sub-device and the second sub-device; The step of collecting detection information from the identification strip using the second device includes: The first sub-device acquires a first pulse signal from the identification strip, and the second sub-device acquires a second pulse signal from the identification strip; wherein, the detection signal includes the first pulse signal and the second pulse signal; the relative phase difference between the first pulse signal and the second pulse signal is a preset angle; Determining the actual displacement and the direction of movement based on the detected information includes: The direction of movement is determined based on the pulse change direction and time corresponding to the first pulse in the first pulse signal and the second pulse in the second pulse signal, respectively; the first pulse and the second pulse are pulse signals within the same time period, and the pulse change direction includes rising edge and falling edge. Based on the direction of movement, and the first pulse signal and the second pulse signal, the number of first pulses and the number of second pulses corresponding to the detection information are determined, and the actual displacement is determined based on the number of first pulses, the number of second pulses and the first distance; the number of first pulses indicates the number of pulses generated when the mobile device moves in the forward direction; the number of second pulses indicates the number of pulses generated when the mobile device moves in the reverse direction.
13. The method according to claim 12, wherein, Determining the actual displacement based on the first pulse count, the second pulse count, and the first distance includes: Determine the pulse number difference between the first pulse number and the second pulse number; The actual displacement is determined by multiplying the difference in the number of pulses by the first distance.
14. The method according to claim 12, wherein, Determining the movement direction based on the pulse change direction and change time corresponding to the first pulse in the first pulse signal and the second pulse in the second pulse signal includes: If the pulse change directions of the first pulse and the second pulse are the same, and the change time of the first pulse is earlier than the change time of the second pulse, then the running direction of the mobile device is determined to be the first direction; If the first pulse and the second pulse change in the same direction, and the change time of the first pulse is later than the change time of the second pulse, then the running direction of the mobile device is determined to be the second direction; the first direction is different from the second direction.
15. The method according to claim 1, wherein, The positioning component is provided on both a first side and a second side of the mobile device, with the first side and the second side being arranged opposite to each other; wherein, the positioning component provided on the first side is configured to collect the identifier located on the first side of the mobile device; the positioning component provided on the first side is configured to collect the identifier located on the second side of the mobile device.
16. The method according to claim 15, wherein, The method further includes: If the absolute value of the actual displacement corresponding to the first side of the mobile device is greater than the absolute value of the actual displacement corresponding to the second side of the mobile device, then the speed of the first side is adjusted from the first speed to the second speed, and / or the speed of the second side is adjusted from the third speed to the fourth speed; wherein the first speed is greater than the second speed; and the third speed is less than the fourth speed.
17. The method according to claim 1, wherein, The method further includes: When the mobile device is started, the current identifier is collected by the positioning component to obtain information to be processed, and the current location information of the mobile device is determined based on the information to be processed.
18. A mobile device, comprising a control module, a driver, and a displacement measurement component; wherein the driver and the displacement measurement component are both coupled to the control module, and a positioning component is coupled to the control module; wherein, The driver is configured to control the movement of the mobile device; The displacement measurement component is configured to detect the measured displacement of the mobile device during operation. The positioning component is configured to: collect the identifiers arranged along the running direction of the mobile device to obtain at least two pieces of information; The control module is configured to: determine the actual displacement and direction of movement of the mobile device based on the at least two pieces of collected information; Based on the direction of movement, and the actual displacement and the measured displacement at the same moment, the operating error corresponding to the mobile device is determined, and the operating error is compensated.
19. The mobile device according to claim 18, wherein, The positioning component includes a first device, the first device being configured to: The identification code in the identifier is collected to obtain the target image.
20. The mobile device according to claim 18, wherein, The positioning component includes a second device, the second device being configured to: The identification bar in the identification is collected to obtain detection information; the identification bar includes multiple first objects and multiple second objects, which are arranged sequentially and alternately.
21. The mobile device according to claim 20, wherein, The second device includes at least a first sub-device and a second sub-device, with a first distance separating the first sub-device and the second sub-device; in; The first sub-device is configured to acquire a first pulse signal from the identification bar; The second sub-device is configured to acquire a second pulse signal from the identification strip; wherein the detection information includes the first pulse signal and the second pulse signal, and the relative phase difference between the first pulse signal and the second pulse signal is a preset angle.
22. The mobile device according to any one of claims 18-21, wherein, The positioning component is provided on both a first side and a second side of the mobile device, with the first side and the second side positioned opposite each other; wherein... The positioning component disposed on the first side is configured to: collect the identifier located on the first side of the mobile device; The positioning component located on the first side is configured to collect the identifier located on the second side of the mobile device.
23. An electronic device comprising a memory and a processor, wherein the memory stores a computer program, wherein, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 17.
24. A computer-readable storage medium having a computer program stored thereon, wherein, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 17.
25. A computer program product comprising a computer program that, when executed by a processor, implements the steps of the method according to any one of claims 1 to 17.