Control method and apparatus

WO2026200723A1PCT designated stage Publication Date: 2026-10-01HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2026/084905
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-03-27
Filing Date
2026-03-20
Publication Date
2026-10-01

Smart Images

  • Figure CN2026084905_01102026_PF_FP_ABST
    Figure CN2026084905_01102026_PF_FP_ABST
Patent Text Reader

Abstract

A control method and apparatus. The control method comprises: S401, when a vehicle is stuck, acquiring first state information of the vehicle, wherein the first state information comprises traveling information and vehicle information, the traveling information indicates the traveling state of the vehicle before the vehicle is stuck, and the vehicle information indicates device parameters of a power system in the vehicle; S402, acquiring first driving force information of the vehicle on the basis of the first state information, wherein the first driving force information comprises a minimum driving force and a maximum driving force which conform to road conditions at a current stuck location; and S403, driving the vehicle on the basis of the first driving force information, wherein: the vehicle gradually increases the driving force thereof from the minimum driving force until the vehicle is freed from the current stuck location, and the driving force corresponding to the vehicle being freed from the current stuck location is less than or equal to the maximum driving force; or the vehicle gradually increases the driving force thereof from the minimum driving force to the maximum driving force. The method can meet autonomous driving requirements under complex road conditions.
Need to check novelty before this filing date? Find Prior Art

Description

Control methods and devices

[0001] This application claims priority to Chinese Patent Application No. 202510372486.X, filed on March 27, 2025, entitled "Control Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of autonomous driving, and more particularly to a control method and apparatus. Background Technology

[0003] The development of autonomous driving technology has gone through several stages. In recent years, with the advancement of artificial intelligence, sensor technology, and computing power, autonomous driving is gradually moving from concept to reality.

[0004] Currently, autonomous driving technology has developed to the stage of conditional automation, meaning it can achieve autonomous driving under specific conditions (such as highways), with the driver able to take over when requested by the system. However, despite rapid technological advancements, autonomous driving still faces many challenges. For example, autonomous vehicles may encounter difficulties in certain situations, such as complex road conditions like mud, sand, or snow, and the decision-making capabilities of autonomous driving technology in complex road conditions remain a bottleneck. Summary of the Invention

[0005] This application provides a control method and apparatus that can meet the driving needs of autonomous vehicles in complex road conditions.

[0006] Firstly, this application provides a control method. The method includes: when a vehicle is stuck in a rut, acquiring first state information of the vehicle, the first state information including driving information and vehicle information, the driving information indicating the vehicle's driving state before it became stuck, and the vehicle information indicating the equipment parameters of the vehicle's power system. Based on the first state information, acquiring first driving force information of the vehicle, the first driving force information including a minimum driving force and a maximum driving force suitable for the road conditions at the current stuck location. Based on the first driving force information, driving the vehicle; wherein: the vehicle gradually increases the driving force from the minimum driving force to escape the current stuck location, the driving force corresponding to the vehicle escaping the current stuck location is less than or equal to the maximum driving force, or the vehicle gradually increases the driving force from the minimum driving force to the maximum driving force. Thus, this application, by combining the vehicle's driving state, obtains the minimum and maximum driving forces required for the vehicle to escape the current stuck location, thereby driving the vehicle to escape the current location, providing an automatic escape method applicable to the driving needs of autonomous vehicles in complex road conditions.

[0007] In one possible implementation, obtaining the vehicle's first driving force information based on the first state information includes: obtaining the vehicle's driving resistance at the current stuck location and the road surface characteristics at the stuck location based on the first state information. The first driving force information is then obtained based on the driving resistance and road surface characteristics. In this way, this application can estimate the road conditions at the current stuck location based on the vehicle's driving state and its dynamic characteristics, thereby obtaining the maximum and minimum driving forces that conform to the road conditions at the current stuck location.

[0008] In one possible implementation, based on the first state information, the driving resistance and road surface characteristics of the vehicle at the current stuck location are obtained. This includes: inputting the first state information into a vehicle powertrain model to obtain an estimated driving force; wherein the vehicle powertrain model is trained based on a vehicle powertrain database, which includes different driving states and identical equipment parameters of vehicles of the same model. Based on the estimated driving force, the road surface characteristics of the current stuck location are obtained. Thus, this application can, based on a pre-trained model and combined with the vehicle's dynamic characteristics, obtain the minimum and maximum driving forces that satisfy the road conditions at the current stuck location.

[0009] In one possible implementation, based on the first state information, the driving resistance and road surface characteristics of the vehicle at the current stuck location are obtained, including: inputting the first state information and the estimated driving force value into the vehicle dynamics model to obtain the driving resistance of the vehicle at the current stuck location. Thus, by combining mechanical characteristics, this application can obtain the driving resistance that the vehicle needs to overcome at the current stuck location.

[0010] In one possible implementation, the first driving force information of the vehicle is obtained based on driving resistance and road surface characteristic information, including: determining the maximum driving force based on the road surface characteristic information; and determining the minimum driving force based on the driving resistance. Thus, this application can obtain the corresponding minimum driving force based on the driving resistance that the vehicle needs to overcome to escape the current stuck location. Furthermore, it can obtain the maximum driving force allowed to escape the current stuck location based on the road surface characteristics of the current stuck location.

[0011] In one possible implementation, before driving the vehicle based on driving resistance and road surface characteristic information, and based on the first driving force information, the method further includes: acquiring environmental perception information, which indicates the surrounding environment of the stuck location; and determining the first driving direction based on the environmental perception information. Thus, this application can plan a reasonable escape path for the vehicle based on the environmental state of the vehicle's cycle.

[0012] In one possible implementation, determining the first driving direction based on environmental perception information includes: determining whether there is an obstacle in the first direction based on the environmental perception information; if there is an obstacle in the first direction, determining whether there is an obstacle in a second direction; if there is no obstacle in the second direction, determining the second direction as the first driving direction. In this way, this application can plan a reasonable escape path for the vehicle based on the environmental conditions of the vehicle's cycle.

[0013] In one possible implementation, driving the vehicle based on the first driving force information includes: driving the vehicle based on the first driving force information and the first driving direction.

[0014] In one possible implementation, the method further includes: driving the vehicle based on the first driving force information and the first driving direction, while the vehicle is still stuck, acquiring second state information of the vehicle, the second state information including operating information and vehicle information, the operating information indicating the operating state of the vehicle when driven based on the first driving force information and the first driving direction; acquiring second driving force information of the vehicle based on the second state information, the second driving force information including the minimum and maximum driving forces in the second driving direction that conform to the road conditions of the current stuck location; and driving the vehicle based on the second driving force information and the second driving direction. Thus, by attempting to escape the current location in different directions, this application can increase the probability of escaping the stuck location. Furthermore, this application can re-estimate the corresponding maximum and minimum driving forces based on the real-time acquired operating information, further improving the accuracy of the acquired maximum and minimum driving forces and effectively increasing the success rate of automatically escaping the current stuck location.

[0015] In one possible implementation, the method further includes: sending vehicle-stuck information to a cloud server, the vehicle-stuck information instructing the cloud server to send vehicle-stuck notifications to other vehicles, and the vehicle-stuck notifications instructing other vehicles to avoid the vehicle-stuck location. In this way, by notifying other vehicles of relevant information about the vehicle-stuck location, this application can prevent other vehicles from getting stuck in that location.

[0016] Secondly, this application provides a control device, comprising: an acquisition module, configured to acquire first state information of a vehicle when the vehicle is stuck in a stuck state, the first state information including driving information and vehicle information, the driving information indicating the driving state of the vehicle before it was stuck in a stuck state, and the vehicle information indicating the equipment parameters of the power system in the vehicle; the acquisition module is further configured to acquire first driving force information of the vehicle based on the first state information, the first driving force information including a minimum driving force and a maximum driving force that are consistent with the road conditions at the current stuck location; and a driving module, configured to drive the vehicle based on the first driving force information; wherein: the vehicle gradually increases the driving force from the minimum driving force to get out of the current stuck location, the driving force corresponding to the vehicle getting out of the current stuck location is less than or equal to the maximum driving force, or the vehicle gradually increases the driving force from the minimum driving force to the maximum driving force.

[0017] In one possible implementation, the acquisition module is specifically used to: acquire, based on the first state information, the driving resistance of the vehicle at the current stuck location and the road surface characteristics of the stuck location; and acquire, based on the driving resistance and road surface characteristics information, the first driving force information.

[0018] In one possible implementation, the acquisition module is specifically used to: input the first state information into the vehicle power system model to obtain the driving force estimate; wherein: the vehicle power system model is trained based on the vehicle power system database, which includes different driving states and the same equipment parameters of vehicles with the same vehicle model; and based on the driving force estimate, obtain the road surface characteristic information of the current stuck location.

[0019] In one possible implementation, the acquisition module is specifically used to: input the first state information and the estimated driving force into the vehicle dynamics model to obtain the driving resistance of the vehicle at the current stuck location.

[0020] In one possible implementation, the acquisition module is specifically used to: determine the maximum driving force based on road surface characteristic information; and determine the minimum driving force based on driving resistance.

[0021] In one possible implementation, the device further includes: a sensing module for acquiring environmental sensing information, the environmental sensing information indicating the surrounding environment of the stuck vehicle location; and a determining module for determining a first driving direction based on the environmental sensing information.

[0022] In one possible implementation, the determining module is specifically used to: determine whether there is an obstacle in a first direction based on environmental perception information; if there is an obstacle in the first direction, determine whether there is an obstacle in a second direction; if there is no obstacle in the second direction, determine that the second direction is the first driving direction.

[0023] In one possible implementation, the drive module is specifically used to drive the vehicle based on the first driving force information and the first driving direction.

[0024] In one possible implementation, the acquisition module is further configured to acquire second state information of the vehicle when the vehicle is still stuck in a stuck state, based on the first driving force information and the first driving direction. The second state information includes operating information and vehicle information, and the operating information indicates the operating state of the vehicle when it is driven based on the first driving force information and the first driving direction. The acquisition module is further configured to acquire second driving force information of the vehicle based on the second state information. The second driving force information includes the minimum driving force and the maximum driving force in the second driving direction that are consistent with the road conditions at the current stuck location. The driving module is further configured to drive the vehicle based on the second driving force information and the second driving direction.

[0025] In one possible implementation, the device further includes: a communication module for sending vehicle-stuck information to a cloud server, the vehicle-stuck information instructing the cloud server to send vehicle-stuck notifications to other vehicles, and the vehicle-stuck notifications instructing other vehicles to avoid the vehicle-stuck location.

[0026] Thirdly, embodiments of this application provide a computing device cluster, including at least one computing device, each computing device including a processor and a memory, wherein the processor of the at least one computing device is used to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster executes the control method in the first aspect or any possible implementation of the first aspect.

[0027] Fourthly, embodiments of this application provide a computer program product containing instructions that, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the control method in the first aspect or any possible implementation thereof.

[0028] Fifthly, embodiments of this application provide a computer-readable storage medium including computer program instructions, which, when executed by a cluster of computing devices, enable the cluster of computing devices to perform the control method in the first aspect or any possible implementation thereof. Attached Figure Description

[0029] Figure 1 is a schematic diagram of the structure of a vehicle 100 as an example;

[0030] Figure 2 is a schematic diagram of an exemplary autonomous driving system;

[0031] Figure 3 is an exemplary system architecture diagram;

[0032] Figure 4 is a schematic flowchart illustrating an exemplary control method;

[0033] Figure 5 is a schematic flowchart illustrating an exemplary control method;

[0034] Figure 6 is a schematic diagram illustrating an exemplary scenario of a vehicle getting stuck.

[0035] Figure 7 is an exemplary diagram showing the markings at a vehicle stuck in the mud;

[0036] Figure 8 is a schematic flowchart illustrating an exemplary control method;

[0037] Figure 9 is a schematic flowchart illustrating an exemplary control method;

[0038] Figure 10 is a schematic flowchart illustrating an exemplary control method;

[0039] Figure 11 is a schematic diagram illustrating an exemplary scenario of a vehicle getting stuck.

[0040] Figure 12 is a schematic diagram of the structure of an exemplary control device;

[0041] Figure 13 is a schematic diagram of the structure of an exemplary computing device;

[0042] Figure 14 is a schematic diagram of the structure of an exemplary computing device;

[0043] Figure 15 is a schematic diagram of the structure of a computing device cluster as an example. Detailed Implementation

[0044] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0045] Referring to Figure 1, which is a schematic diagram of the structure of a vehicle 100 as an example.

[0046] The vehicle 100 can be a manually driven vehicle, or the vehicle 100 can be configured to a fully or partially automated driving mode.

[0047] In one example, vehicle 100 can control itself while in autonomous driving mode, and can determine the current state of the vehicle and its surrounding environment through human intervention, determine the possible behaviors of at least one other vehicle in the surrounding environment, and determine the confidence level corresponding to the probability of the other vehicle performing the possible behavior, and control vehicle 100 based on the determined information. When vehicle 100 is in autonomous driving mode, vehicle 100 can be set to operate without human interaction.

[0048] The vehicle 100 may include various subsystems, such as a travel system 110, a sensing system 120, a control system 130, one or more peripheral devices 140, a power supply 160, a computer system 150, and a user interface 170.

[0049] Optionally, vehicle 100 may include more or fewer subsystems, and each subsystem may include multiple components. Furthermore, each subsystem and component of vehicle 100 may be interconnected via wired or wireless means.

[0050] Exemplarily, the mobility system 110 may include components for providing powered motion to the vehicle 100. In one embodiment, the mobility system 110 may include an engine 111, a transmission 112, an energy source 113, and wheels 114 / tires. The engine 111 may be an internal combustion engine, an electric motor, an air compressor engine, or other combinations of engines; for example, a hybrid engine consisting of a gasoline engine and an electric motor, or a hybrid engine consisting of an internal combustion engine and an air compressor engine. The engine 111 can convert the energy source 113 into mechanical energy.

[0051] For example, energy source 113 may include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries, and other sources of electricity. Energy source 113 may also provide energy to other systems of vehicle 100.

[0052] For example, the transmission 112 may include a gearbox, a differential, and a drive shaft; wherein the transmission 112 can transmit mechanical power from the engine 111 to the wheels 114.

[0053] In one embodiment, the transmission 112 may also include other components, such as a clutch. The drive shaft may include one or more shafts that can be coupled to one or more wheels 114.

[0054] For example, the sensing system 120 may include several sensors for sensing information about the environment surrounding the vehicle 100.

[0055] For example, the sensing system 120 may include a positioning system 121 (e.g., GPS, BeiDou, or other positioning systems), an inertial measurement unit (IMU) 122, a radar 123, a laser rangefinder 124, and a camera 125. The sensing system 120 may also include sensors from the internal systems of the monitored vehicle 100 (e.g., an in-vehicle air quality monitor, fuel gauge, oil temperature gauge, etc.). Sensor data from one or more of these sensors can be used to detect objects and their corresponding characteristics (position, shape, orientation, speed, etc.). This detection and identification is a key function for the safe operation of the autonomous vehicle 100.

[0056] The positioning system 121 can be used to estimate the geographical location of the vehicle 100. The IMU 122 can be used to sense changes in the position and orientation of the vehicle 100 based on inertial acceleration. In one embodiment, the IMU 122 can be a combination of an accelerometer and a gyroscope.

[0057] For example, radar 123 can use radio signals to sense objects in the surrounding environment of vehicle 100. In some embodiments, in addition to sensing objects, radar 123 can also be used to sense the speed and / or direction of travel of objects.

[0058] For example, the laser rangefinder 124 can use lasers to sense objects in the environment in which the vehicle 100 is located.

[0059] In some embodiments, the laser rangefinder 124 may include one or more laser sources, a laser scanner, and one or more other laser sources.

[0060] Detectors, and other system components.

[0061] For example, camera 125 can be used to capture multiple images of the surrounding environment of vehicle 100. For example, camera 125 can be a still camera or a video camera.

[0062] As shown in Figure 1, the control system 130 controls the operation of the vehicle 100 and its components. The control system 130 may include various components, such as a steering system 131, a throttle 132, a braking unit 133, a computer vision system 134, a route control system 135, and an obstacle avoidance system 136.

[0063] For example, the steering system 131 can be operated to adjust the forward direction of the vehicle 100. For example, in one embodiment, it can be a steering wheel system. The throttle 132 can be used to control the operating speed of the engine 111 and thus the speed of the vehicle 100.

[0064] For example, braking unit 133 can be used to control the deceleration of vehicle 100; braking unit 133 can use friction to slow down wheel 114. In other embodiments, braking unit 133 can convert the kinetic energy of wheel 114 into electric current. Braking unit 133 can also take other forms to slow down the rotational speed of wheel 114 to control the speed of vehicle 100.

[0065] As shown in Figure 1, the computer vision system 134 is operable to process and analyze images captured by the camera 125 to identify objects and / or features in the environment surrounding the vehicle 100. These objects and / or features may include traffic signals, road boundaries, and obstacles. The computer vision system 134 may use object recognition algorithms, Structure from Motion (SFM) algorithms, video tracking, and other computer vision techniques. In some embodiments, the computer vision system 134 may be used to map the environment, track objects, estimate object velocities, and so on.

[0066] For example, the route control system 135 can be used to determine the driving route of the vehicle 100. In some embodiments, the route control system 135 can combine data from sensors, GPS, and one or more predetermined maps to determine the driving route of the vehicle 100.

[0067] As shown in Figure 1, obstacle avoidance system 136 can be used to identify, assess and avoid or otherwise traverse potential obstacles in the environment of vehicle 100.

[0068] In one instance, the control system 130 may include additional or alternative components besides those shown and described. Alternatively, some of the components shown above may be reduced.

[0069] As shown in Figure 1, the vehicle 100 can interact with external sensors, other vehicles, other computer systems or users through peripheral devices 140; wherein, the peripheral devices 140 may include a wireless communication system 141, an on-board computer 142, a microphone 143 and / or a speaker 144.

[0070] In some embodiments, peripheral device 140 may provide a means for vehicle 100 to interact with user interface 170. For example, on-board computer 142 may provide information to users of vehicle 100. User interface 116 may also operate on-board computer 142 to receive user input; on-board computer 142 may be operated via touchscreen. In other cases, peripheral device 140 may provide a means for vehicle 100 to communicate with other devices located within the vehicle. For example, microphone 143 may receive audio (e.g., voice commands or other audio input) from users of vehicle 100. Similarly, speaker 144 may output audio to users of vehicle 100.

[0071] As shown in Figure 1, the wireless communication system 141 can communicate wirelessly with one or more devices directly or via a communication network. For example, the wireless communication system 141 can use 3G cellular communication; such as Code Division Multiple Access (CDMA), EVDO, Global System for Mobile Communications (GSM) / General Packet Radio Service (GPRS), or 4G cellular communication, such as Long Term Evolution (LTE); or 5G cellular communication. The wireless communication system 141 can communicate using WiFi and a wireless local area network (WLAN).

[0072] In some embodiments, the wireless communication system 141 may communicate directly with the device using an infrared link, Bluetooth, or ZigBee protocol; other wireless protocols, such as various vehicle communication systems, may also be used. For example, the wireless communication system 141 may include one or more dedicated short range communications (DSRC) devices, which may include public and / or private data communications between the vehicle and / or roadside stations.

[0073] As shown in Figure 1, power source 160 can provide power to various components of vehicle 100. In one embodiment, power source 160 can be a rechargeable lithium-ion or lead-acid battery. One or more such battery packs can be configured to provide power to various components of vehicle 100. In some embodiments, power source 160 and energy source 113 can be implemented together, as is the case in some fully electric vehicles.

[0074] For example, some or all of the functions of vehicle 100 may be controlled by computer system 150, wherein computer system 150 may include at least one processor 151 that executes instructions 153 stored in a non-transitory computer-readable medium, such as memory 152. Computer system 150 may also be multiple computing devices that control individual components or subsystems of vehicle 100 in a distributed manner.

[0075] For example, processor 151 can be any conventional processor, such as a commercially available CPU.

[0076] Alternatively, the processor may be a dedicated device such as an ASIC or other hardware-based processor. Although Figure 1 functionally illustrates a processor, memory, and other components of a computer within the same block, those skilled in the art will understand that the processor, computer, or memory may actually include multiple processors, computers, or memories that may or may not be stored in the same physical enclosure. For example, memory may be a hard disk drive or other storage media located in an enclosure different from that of the computer. Therefore, references to processors or computers will be understood to include references to a collection of processors or computers or memories that may or may not operate in parallel. Unlike using a single processor to perform the steps described herein, some components, such as steering and deceleration components, may each have their own processor that performs calculations only related to the component's specific function.

[0077] In the various aspects described herein, the processor may be located remotely from the vehicle and communicate wirelessly with the vehicle. In other aspects, some of the processes described herein are executed on a processor located within the vehicle, while others are executed by a remote processor, including taking the necessary steps to perform a single operation.

[0078] In some embodiments, memory 152 may contain instructions 153 (e.g., program logic) that can be executed by processor 151 to perform various functions of vehicle 100, including those described above. Memory 152 may also contain additional instructions, such as instructions to send data to, receive data from, interact with, and / or control one or more of the mobility system 110, sensing system 120, control system 130, and peripheral devices 140.

[0079] For example, in addition to instruction 153, memory 152 may also store data, such as road maps, route information, vehicle position, direction, speed, and other such vehicle data, as well as other information. This information can be used by vehicle 100 and computer system 150 during operation of vehicle 100 in autonomous, semi-autonomous, and / or manual modes.

[0080] As shown in Figure 1, the user interface 170 can be used to provide information to or receive information from a user of the vehicle 100. Optionally, the user interface 170 may include one or more input / output devices within a set of peripheral devices 140, such as a wireless communication system 141, an on-board computer 142, a microphone 143, and a speaker 144.

[0081] In embodiments of this application, computer system 150 can control the functions of vehicle 100 based on inputs received from various subsystems (e.g., mobility system 110, sensing system 120, and control system 130) and from user interface 170.

[0082] For example, computer system 150 can utilize input from control system 130 to control braking unit 133 to avoid obstacles detected by sensing system 120 and obstacle avoidance system 136. In some embodiments, computer system 150 is operable to provide control over many aspects of vehicle 100 and its subsystems.

[0083] Alternatively, one or more of these components may be installed separately from or associated with vehicle 100. For example, memory 152 may exist partially or completely separately from vehicle 100. The components may be communicatively coupled together in a wired and / or wireless manner.

[0084] Optionally, the above components are just an example. In actual applications, the components in the above modules may be added or deleted according to actual needs. Figure 1 should not be construed as a limitation on the embodiments of this application.

[0085] Optionally, vehicle 100 may be an autonomous vehicle traveling on a road, capable of identifying objects in its surrounding environment to determine adjustments to its current speed. These objects may be other vehicles, traffic control equipment, or other types of objects.

[0086] In some examples, each identified object can be considered independently, and based on the object's individual characteristics, such as its current speed, acceleration, and distance from the vehicle, the speed that the autonomous vehicle should adjust can be determined.

[0087] Optionally, the vehicle 100 or a computing device associated with the vehicle 100 (such as the computer system 150, computer vision system 134, and memory 152 as shown in Figure 1) can predict the behavior of the identified object based on the characteristics of the identified object and the state of the surrounding environment (e.g., traffic, rain, ice on the road, etc.).

[0088] Optionally, since each identified object depends on the behavior of others, the behavior of a single identified object can also be predicted by considering all identified objects together. Vehicle 100 can adjust its speed based on the predicted behavior of the identified objects. In other words, the autonomous vehicle can determine, based on the predicted behavior of the objects, that the vehicle will need to adjust to a steady state (e.g., accelerate, decelerate, or stop). In this process, other factors can also be considered in determining the speed of vehicle 100, such as the lateral position of vehicle 100 on the road, the curvature of the road, the proximity of static and dynamic objects, etc.

[0089] In addition to providing instructions to adjust the speed of the autonomous vehicle, the computing device can also provide instructions to modify the steering angle of the vehicle 100 so that the autonomous vehicle follows a given trajectory and / or maintains a safe lateral and longitudinal distance from objects near the autonomous vehicle (e.g., cars in adjacent lanes on the road).

[0090] The aforementioned vehicle 100 can be a car, truck, motorcycle, bus, ship, airplane, helicopter, lawnmower, recreational vehicle, amusement park vehicle, construction equipment, tram, golf cart, train, and handcart, etc., and this application embodiment does not impose any special limitations.

[0091] In one possible implementation, the vehicle 100 shown in Figure 1 above can be an autonomous vehicle, and the autonomous driving system will be described in detail below.

[0092] Referring to Figure 2, which is a schematic diagram of an exemplary autonomous driving system.

[0093] The autonomous driving system shown in Figure 2 includes a computer system 201, which includes a processor 203 coupled to a system bus 205. The processor 203 can be one or more processors, each of which can include one or more processor cores. A display adapter 207 (video adapter) drives a display 209, which is coupled to the system bus 205. The system bus 205 is coupled to an input / output (I / O) bus 213 via a bus bridge 211, and an I / O interface 215 is coupled to the I / O bus. The I / O interface 215 communicates with various I / O devices, such as input devices 217 (e.g., keyboard, mouse, touchscreen), and a media tray 221 (e.g.,...). (Multimedia interface, etc.). Transceiver 223 can send and / or receive radio communication signals, and camera 255 can capture images and dynamic digital video images. The interface connected to I / O interface 215 can be a USB port 225.

[0094] The processor 203 can be any conventional processor, such as a reduced instruction set computer (RISC) processor, a complex instruction set computer (CISC) processor, or a combination thereof.

[0095] Alternatively, processor 203 may be a dedicated device such as an application-specific integrated circuit (ASIC); processor 203 may be a neural network processor or a combination of a neural network processor and the aforementioned conventional processor.

[0096] Optionally, in the various embodiments described herein, the computer system 201 may be located remotely from the autonomous vehicle and may communicate wirelessly with the autonomous vehicle. In other aspects, some of the processes described herein are executed on a processor located within the autonomous vehicle, while others are executed by a remote processor, including taking actions necessary to perform a single manipulation.

[0097] Computer system 201 can communicate with software deployment server 249 via network interface 229. Network interface 229 can be a hardware network interface, such as a network interface card (NIC). Network 227 can be an external network, such as the Internet, or an internal network, such as Ethernet or a virtual private network (VPN). Optionally, network 227 can also be a wireless network, such as a Wi-Fi network or a cellular network.

[0098] As shown in Figure 2, the hard disk drive interface is coupled to the system bus 205, the hardware driver interface 231 can be connected to the hard disk drive 233, and the system memory 235 is coupled to the system bus 205. Data running in the system memory 235 can include the operating system 237 and application programs 243. The operating system 237 can include an interpreter 239 (shell) and a kernel 241. The shell 239 is an interface between the user and the operating system kernel. The shell can be the outermost layer of the operating system; it manages the interaction between the user and the operating system, such as waiting for user input, interpreting user input for the operating system, and processing various operating system outputs. The kernel 241 can consist of the parts of the operating system used to manage memory, files, peripherals, and system resources. Interacting directly with the hardware, the operating system kernel typically runs processes and provides inter-process communication, CPU time slice management, interrupts, memory management, I / O management, etc. Application 243 includes programs related to controlling autonomous driving, such as programs managing the interaction between the autonomous vehicle and obstacles on the road, programs controlling the autonomous vehicle's route or speed, and programs controlling the interaction between the autonomous vehicle and other autonomous vehicles on the road. Application 243 also exists on the system of software deployment server 249. In one embodiment, when autonomous driving-related programs 247 need to be executed, computer system 201 can download the application from software deployment server 249.

[0099] For example, application 243 could also be a program that controls autonomous vehicles to perform automatic parking.

[0100] For example, sensor 253 may be associated with computer system 201 and may be used to detect the environment around computer 201.

[0101] For example, sensor 253 can detect animals, cars, obstacles, and pedestrian crossings. Furthermore, the sensor can also detect the environment around the aforementioned animals, cars, obstacles, and pedestrian crossings, such as the environment around the animals, for example, other animals around the animals, weather conditions, and ambient light levels.

[0102] Alternatively, if the computer 201 is located on an autonomous vehicle, the sensors may be cameras, infrared sensors, chemical detectors, microphones, etc.

[0103] For example, in an automatic parking scenario, sensor 253 can be used to detect the size or position of parking spaces and surrounding obstacles around the vehicle, thereby enabling the vehicle to perceive the distance between the parking spaces and surrounding obstacles, perform collision detection during parking, and prevent the vehicle from colliding with obstacles.

[0104] In one example, the computer system 150 shown in Figure 1 can also receive information from other computer systems or transfer information to other computer systems. Alternatively, sensor data collected from the sensing system 120 of the vehicle 100 can be transferred to another computer for processing.

[0105] Referring to Figure 3, which is an exemplary system architecture diagram.

[0106] For example, as shown in Figure 3, data from computer system 150 can be transmitted to the cloud via a network. The cloud may optionally be a server cluster consisting of one or more cloud servers. Cloud server 320 is used for further processing. The network and intermediate nodes can include various configurations and protocols, including the Internet, World Wide Web, Intranet, Virtual Private Network, Wide Area Network, Local Area Network, Private Network using proprietary communication protocols of one or more companies, Ethernet, WiFi, and HTTP, as well as various combinations thereof; such communication can be carried out by any device capable of transmitting data to and from other computers, such as modems and wireless interfaces.

[0107] The cloud server can be configured similarly to computer system 312, with processor 330, memory 340, instruction set 350, and data set 360.

[0108] For example, the data 360 of server 320 may include, but is not limited to, the vehicle's device parameters (the concept is described below).

[0109] Referring to Figure 4, which is a schematic flowchart of an exemplary control method, the specific steps include, but are not limited to, the following:

[0110] S401, when the vehicle is stuck, acquire the first state information of the vehicle. The first state information includes driving information and vehicle information. The driving information indicates the driving state of the vehicle before it was stuck, and the vehicle information indicates the equipment parameters of the power system in the vehicle.

[0111] In this embodiment of the application, after a vehicle determines that it is stuck, it can obtain the vehicle's first state information. The first state information includes the vehicle's driving information (also known as driving status information or historical driving status information) and vehicle information.

[0112] For example, driving information indicates the vehicle's driving status before it became stuck. Specifically, driving information can be historical driving information within a preset time period (e.g., 10 seconds, which can be set according to actual needs) before the vehicle became stuck (the concept will be introduced below).

[0113] For example, vehicle information indicates the equipment parameters of the powertrain in the vehicle. The powertrain may include all or part of the equipment in the travel system 100 shown in FIG1. ​​For example, the equipment parameters of the powertrain include, but are not limited to, at least one of the following: wheel parameters, transmission parameters, engine parameters (which can also be understood as generator parameters), etc.

[0114] Referring to Figure 5, which is a schematic flowchart of an exemplary control method, steps S404 to S406 may be included before step S401.

[0115] S404, obtain real-time driving information.

[0116] For example, a vehicle can acquire its driving status in real time or periodically and record the corresponding driving information (referred to as real-time driving information in this application example). For instance, a vehicle can acquire its driving status within 1 second every 1 second.

[0117] Specifically, the vehicle can obtain its real-time driving status from sensing systems, driving systems, and / or control systems, and record the corresponding real-time driving information. Real-time driving information includes, but is not limited to, at least one of the following: load, gear, torque, speed, acceleration, steering angle, etc.

[0118] Each time the vehicle acquires real-time driving information, it saves it to storage. The real-time driving information saved in storage can also be called historical driving information, and this application does not make such a limitation.

[0119] S405, determine if the vehicle is stuck.

[0120] For example, a vehicle can determine whether it is stuck based on real-time driving information. Specifically, during normal driving, the vehicle's computer system sends drive commands to the power system (which may be all or part of the devices in the driving system 100 shown in Figure 1) to drive the vehicle.

[0121] Optionally, if the driving commands issued by the vehicle do not match the actual driving state of the vehicle when the vehicle is stuck, it can be determined that the vehicle is stuck.

[0122] Referring to Figure 6, which is an exemplary schematic diagram of a vehicle stuck in mud, this embodiment of the application only uses an engineering vehicle in autonomous driving mode getting stuck in a muddy road as an example, as shown in Figure 5. The engineering vehicle is working on an unpaved road, and its wheels get stuck in the mud.

[0123] Specifically, after a vehicle is stuck, it continuously issues drive commands. If the vehicle does not generate speed or displacement, or if the difference between the generated speed or displacement and the speed or displacement the vehicle should have generated as indicated by the drive command exceeds a threshold (which can be set according to actual needs), then the vehicle fails to produce a result matching the driving state indicated by the drive command.

[0124] S406, report vehicle stuck.

[0125] For example, a vehicle sends a stuck-in-the-ground information to the cloud (i.e., a cloud server). This stuck-in-the-ground information instructs the cloud server to send a stuck-in-the-ground notification to other vehicles, which instructs them to avoid the stuck location.

[0126] Specifically, the vehicle sends a stuck-in-the-ground information to the cloud server. This information includes, but is not limited to, the location of the stuck vehicle. The cloud server receives the stuck-in-the-ground information and marks the stuck area on a map based on the location, as shown in Figure 7. This stuck-in-the-ground area can be a circular area with a radius of 5 meters centered on the stuck location, and can be set according to actual needs. The shape and size of the area in this application are only illustrative examples. The cloud server can send a stuck-in-the-ground notification to other vehicles, which includes information about the stuck area (including its size and location). After receiving the stuck-in-the-ground notification, other vehicles (which can be autonomous or non-autonomous vehicles) can avoid the stuck area to prevent other vehicles from getting stuck.

[0127] Optionally, the cloud server may display prompts on its user interface or send prompts to the relevant equipment of maintenance personnel to remind them to maintain the site. After maintaining the site, maintenance personnel can operate the cloud server to remove the marking of the stuck-in area. In response to the received operation, the cloud server removes the marking of the stuck-in area and sends a stuck-in area removal notification to other vehicles to indicate that the stuck-in area has been removed and other vehicles no longer need to avoid the stuck-in area.

[0128] For example, if a vehicle determines that it is stuck, it can retrieve historical driving information from storage for a predetermined period of time (e.g., 10 seconds, which can be set according to actual needs) prior to getting stuck, as well as the equipment parameters of the vehicle's power system.

[0129] For example, during vehicle operation, real-time driving information is acquired every second and saved to storage. After determining that it is stuck, the vehicle can retrieve historical driving information from storage, which is the real-time driving information acquired within 10 seconds before the current time point (i.e., the time point at which it was determined to be stuck).

[0130] Typically, equipment parameters are preset values, such as wheel parameters. Optionally, the equipment parameters for each vehicle model are factory-set (i.e., set by the vehicle manufacturer), and the cloud server can store the equipment parameters of the powertrain corresponding to different vehicle models. Vehicles of the same model have the same powertrain equipment parameters. Optionally, the equipment parameters corresponding to that vehicle can be retrieved from the cloud each time the vehicle is started.

[0131] S402, based on the first state information, obtain the first driving force information of the vehicle, which includes the minimum driving force and the maximum driving force that are consistent with the road conditions at the current stuck location.

[0132] For example, after obtaining the first state information, the vehicle can obtain the first driving force information based on the first state information. The first driving force information includes the minimum and maximum driving forces that are consistent with the road conditions at the current location where the vehicle is stuck.

[0133] Specifically, in this embodiment, the vehicle can estimate the road conditions at the current stuck location based on the first state information, and calculate the maximum and minimum driving forces corresponding to the road conditions at the current stuck location. The road conditions at the stuck location include the driving resistance that needs to be overcome to get out of the stuck location and the road surface characteristics corresponding to the current stuck location (i.e., the road adhesion coefficient in the following embodiments).

[0134] Wherein: driving force is optionally the force that propels the vehicle forward when it is moving, which is the force of torque output by the generator transmitted to the wheels through the transmission, and the unit is Newton (N).

[0135] The torque can optionally be the torque output from the crankshaft end of the generator, measured in Newton-meters (Nm).

[0136] Specifically, based on the first state information, the vehicle obtains the driving resistance and road surface characteristics at the current stuck location. The road surface characteristics include the road adhesion coefficient, which indicates the road surface characteristics (or road adhesion condition) of the currently stuck surface.

[0137] Referring to Figure 8, which is a schematic flowchart illustrating an exemplary control method, S402 specifically includes, but is not limited to, the following steps:

[0138] For example, the vehicle inputs its initial state information into the vehicle powertrain model to obtain an estimated driving force. The vehicle powertrain model is trained based on a vehicle powertrain database, which includes different driving states and identical equipment parameters of vehicles of the same model as this vehicle.

[0139] Optionally, the model used in the vehicle powertrain model can be a general model. The cloud server can train this model based on data from the vehicle powertrain database to obtain the vehicle powertrain model. The cloud server can then transmit the trained model to all vehicles of that vehicle type. For example, taking a work vehicle as an example, the cloud server obtains vehicle driving data (i.e., driving information used to record driving status) of vehicles of that vehicle type (which may be multiple vehicles) in the actual working environment, such as, but not limited to, speed, acceleration, torque, mass, gradient information, driving force, etc. The cloud server uses the driving information such as speed, acceleration, torque, mass, and gradient information, as well as the corresponding equipment parameters of that vehicle type (such as wheel radius, transmission ratio, etc.) as the input information to the model, and uses the driving force as the training and test sets for the output features to train the model and obtain the vehicle powertrain model. The specific training process may include steps such as training, evaluation, and optimization, which will not be elaborated in this application.

[0140] Optionally, the cloud server can periodically train the vehicle powertrain model to obtain an updated vehicle powertrain model, and then push the updated vehicle powertrain model to the corresponding vehicle model. Different vehicle models correspond to different vehicle powertrain models.

[0141] Referring again to Figure 8, the vehicle obtains road surface characteristic information of the current stuck location based on the estimated driving force. Specifically, in real-world scenarios, a portion of the torque of the drive wheels cannot be fully converted into acceleration due to the limitations of tire adhesion to the road surface. This application can estimate the road adhesion coefficient (i.e., the road surface characteristic information in this embodiment) by comparing torque and actual acceleration.

[0142] The road surface adhesion coefficient is a parameter used to describe the magnitude of friction between the tire and the road surface. Different road surface materials have different adhesion coefficients, and the dryness, wetness, icing, or snow accumulation of the road surface will significantly affect the road surface adhesion coefficient.

[0143] In this embodiment of the application, the vehicle can obtain the road surface adhesion coefficient based on formula (1):

[0144] Where m is the mass of the vehicle and g is the acceleration due to gravity.

[0145] Referring again to Figure 8, specifically, the vehicle inputs the first state information and the estimated driving force into the vehicle dynamics model to obtain the driving resistance corresponding to the current stuck location. The vehicle dynamics model can be a dynamic equation to represent the relationship between driving force and driving resistance. Optionally, the dynamic equation can refer to formula (2): F 行驶阻力 =F 驱动力 -F 重力分量 -ma (2)

[0146] Where m is mass and a is acceleration.

[0147] The driving resistance in this application embodiment can be understood as the resistance that a vehicle overcomes during operation (or driving), including but not limited to at least one of the following: rolling resistance (resistance generated by the contact between the tire and the ground), air resistance (resistance generated by the interaction with the air), slope resistance (the component of gravity that needs to be overcome when driving on a slope), etc. It can be understood that the driving resistance in this application is the sum of at least one resistance that the vehicle overcomes during operation.

[0148] Optionally, as described above, the driving information in the first state information acquired by the vehicle can be real-time driving information saved within a preset time period before getting stuck. For example, the vehicle acquires and saves real-time driving information every 1 second, and after the vehicle determines that it is stuck, it acquires the real-time driving information (also called historical driving information) saved within 10 seconds before the current time point (i.e., when it is determined to be stuck). In this way, the first state information acquired by the vehicle includes real-time driving information corresponding to each second within 10 seconds. Based on the real-time driving information corresponding to each second, the vehicle can acquire the driving force and driving resistance corresponding to each second. The vehicle determines the maximum value among the acquired driving resistances as the target driving resistance, that is, all subsequent calculations are based on this target driving resistance. And, the driving force corresponding to the target driving resistance is the target driving force. The driving force corresponding to the target driving resistance is the driving force value used when calculating the target driving resistance.

[0149] For example, a vehicle can obtain first driving force information based on driving resistance and road surface characteristics.

[0150] Please refer to Figure 8. Based on road surface characteristics, the vehicle determines its maximum driving force. Specifically, when a vehicle gets stuck, it is likely in a muddy and / or slippery (e.g., snowy) environment. The vehicle's driving force during extrication must not exceed the maximum allowable value of the road surface adhesion coefficient (i.e., the maximum driving force); otherwise, skidding will occur. The vehicle can obtain its maximum driving force F based on the following formula. max F max =μ·W (3) W=m·g·cos (θ) (4)

[0151] Where μ is the road adhesion coefficient, W is the weight component of the vehicle perpendicular to the road surface, that is, the vertical component of the vehicle's weight. cos(θ) represents the slope component of the current stuck location.

[0152] Optionally, the maximum driving force can also be slightly greater than the maximum driving force value obtained by the formula, that is, the maximum driving force obtained by formula (3) plus the first value. The first value can be set according to actual needs, and this application does not limit it.

[0153] Referring again to Figure 8, the vehicle determines the minimum driving force based on driving resistance. Specifically, as mentioned above, driving resistance can be understood as the resistance that the vehicle overcomes during operation (or driving). Correspondingly, under normal circumstances (e.g., in a normal driving scenario where the vehicle is not stuck), the minimum driving force generated must be greater than or equal to the driving resistance in order for the vehicle to generate sufficient driving force to overcome the driving resistance and enable the vehicle to drive normally (forward or backward). Accordingly, in this embodiment, the vehicle can determine that the value of the driving resistance is the value of the minimum driving force. Of course, in some instances, the value of the minimum driving force can also be greater than the value of the driving resistance, which can be set according to actual needs, and this application does not limit it.

[0154] S403, based on the first driving force information, drive the vehicle; wherein: the vehicle gradually increases the driving force from the minimum driving force to get out of the current stuck location, the driving force corresponding to the vehicle getting out of the current stuck location is less than or equal to the maximum driving force, or the vehicle gradually increases the driving force from the minimum driving force to the maximum driving force.

[0155] For example, the vehicle can generate a corresponding throttle command (also known as a drive command) based on the first driving force information to drive the vehicle. During the driving process, the vehicle gradually increases the driving force from the minimum driving force to escape the current stuck location, or gradually increases the driving force to the maximum driving force. It can be understood that driving the vehicle as described in this embodiment can optionally involve generating a specified amount of driving force.

[0156] Referring to Figure 9, which is a schematic flowchart of an exemplary control method, S403 specifically includes, but is not limited to, the following steps:

[0157] Specifically, the vehicle may store a table showing the correspondence between driving force and torque (or other storage formats, which are not limited in this application), the table including the correspondence between each driving force and torque. The vehicle can look up the corresponding torque value based on the driving force (e.g., minimum driving force) in the table. For example, the vehicle can determine the minimum torque value based on the minimum driving force and the maximum torque value based on the maximum driving force. In the embodiments of this application, the vehicle can gradually increase the driving force from the minimum driving force, and the vehicle can also obtain multiple driving forces between the minimum and maximum driving forces by a preset driving force increase range (which can be set according to actual needs), and determine the corresponding torque value.

[0158] Taking a vehicle driven by minimum driving force as an example, as shown in Figure 9, the vehicle determines the minimum torque value by looking up a corresponding table based on the minimum driving force. The vehicle can then generate a throttle command based on the minimum torque value, indicating the throttle position. Optionally, in some instances, the corresponding table mentioned above may also include the relationship between driving force and throttle value; this application does not limit this. Once the vehicle receives the throttle command, it can control the engine's operating speed based on the throttle value indicated by the command. Specifically, the engine responds to throttle control by outputting the minimum torque value. The torque output by the engine (e.g., the minimum torque value) is transmitted to the wheels through the transmission, generating the driving force (i.e., the minimum driving force) that propels the vehicle forward.

[0159] In this embodiment, even when the vehicle is stuck, it still acquires real-time driving information. In one example, as the vehicle gradually increases its driving force, it can determine whether it has left the current stuck location based on the real-time driving information and the issued driving commands. For example, if the driving state indicated by the vehicle's real-time driving information matches the driving state indicated by the driving commands, it can be determined that the vehicle has left the current stuck location, i.e., it has escaped the stuck state. Wherein, if the vehicle escapes the stuck state, the driving force corresponding to its escape can be less than or equal to the maximum driving force. For example, if the vehicle's driving force reaches the maximum driving force just as it leaves the current stuck location, then the driving force corresponding to its escape is the maximum driving force. Of course, in some examples, the vehicle may have already left the current stuck location before its driving force reaches the maximum driving force; in this case, the driving force corresponding to its escape is less than the maximum driving force. After escaping the stuck location, the vehicle can proceed forward or backward in normal autonomous driving mode.

[0160] In another example, as the vehicle gradually increases its driving force, its driving state consistently fails to conform to the driving command's indication until the driving force reaches its maximum value (i.e., maximum driving force). At this point, the vehicle determines that its attempt to escape the stuck location has failed. Optionally, the vehicle's driving force can be maintained at its maximum value for a certain duration (e.g., 3s to 5s, which can be set according to actual needs).

[0161] In one possible implementation, before executing S403, the vehicle can determine whether the maximum driving force is greater than the driving resistance. If the maximum driving force is greater than the driving resistance, S403 can continue to be executed. If the maximum driving force is less than or equal to the driving resistance, it can be determined that the vehicle cannot automatically escape the stuck area, and the vehicle can send an alarm message to the cloud, indicating that manual intervention is required to allow the vehicle to escape the current stuck location. Optionally, in this embodiment, if the maximum driving force is less than or equal to the driving resistance, the vehicle can also try to gradually increase the driving force from the minimum driving force to attempt to escape the current stuck location until it escapes the current stuck location, or the vehicle slips, or the maximum driving force is reached. Here, vehicle slippage can be understood as the wheels rotating, but the vehicle not displacing.

[0162] Referring to Figure 10, which is a flowchart illustrating an exemplary control method, the environment in which a vehicle is stuck may contain various types of obstacles, as shown in Figure 11. Using a fixed sequence of drive and steering commands may cause the vehicle to collide with its surroundings. When the vehicle is identified as needing to escape, it can combine environmental perception information to generate a safe and feasible escape trajectory, ensuring safety during the escape process. Specifically, as shown in Figure 10, in this embodiment, before S403, the steps may further include S1001 and S1002. Specifically, in S1001, the vehicle acquires environmental perception information. This environmental perception information indicates the surrounding environment of the stuck location. In S1002, the vehicle can determine a first driving direction based on the environmental perception information, thereby planning a driving path. Correspondingly, in S403, the vehicle can drive itself based on the first driving information and the first driving direction. Specifically, the vehicle can gradually increase its driving force from the minimum driving force to escape the current stuck location, or increase its driving force to the maximum driving force in the first driving direction.

[0163] Specifically, the vehicle can determine whether there is an obstacle in a first direction based on environmental perception information. In one example, if there is no obstacle in the first direction, then the first direction is determined to be the first driving direction. In another example, if there is an obstacle in the first direction, the vehicle can determine whether there is an obstacle in a second direction based on environmental perception information. If there is no obstacle in the second direction, then the second direction is determined to be the first driving direction. An obstacle can be understood as an object that may obstruct the vehicle's forward or backward movement in a specified direction, including vehicles, walls, pedestrians, etc.

[0164] Optionally, if the distance between the obstacle and the vehicle in a specified direction (e.g., the first direction) is less than or equal to a preset distance (e.g., 5 meters, which can be set according to actual needs), it can be determined that there may be a collision risk in that direction.

[0165] For example, the vehicle can generate steering commands and send them to the steering system. The steering system can adjust the vehicle's direction based on the driving direction indicated by the steering command (e.g., the first driving direction). In other words, during the driving process, the vehicle can adjust its driving direction (e.g., the first driving direction) based on the steering command and generate corresponding driving force based on the throttle command, so that the vehicle attempts to leave the current location in the first driving direction with a specified driving force.

[0166] In one possible implementation, the vehicle can determine multiple feasible driving directions based on environmental perception information, such as the first driving direction, second driving direction, third driving direction, and fourth driving direction shown in Figure 11. The vehicle can attempt to escape the current stuck location from each direction in sequence (the sorting method can be set according to requirements). For example, if the vehicle is driving based on the first driving force information and the first driving direction, and the vehicle is still stuck, the vehicle repeats steps S401 to S403. Specifically, the vehicle acquires the vehicle's second state information. The second state information includes operating information and vehicle information. The operating information indicates the operating state of the vehicle when driving based on the first driving force information and the first driving direction. This can be understood as follows: as described above, when the vehicle is stuck, it still acquires and saves real-time driving information. That is, the vehicle acquires and saves real-time driving information during the previous attempt to escape the current stuck location. During the current attempt to escape the current location, the vehicle can acquire the real-time driving information saved within a predetermined time period (e.g., still 10 seconds) before the current moment, which is the operating information described in this embodiment. Based on the second state information, the vehicle can obtain second driving force information, which includes the minimum and maximum driving forces in the second driving direction that are suitable for the road conditions at the current stuck location. This can also be understood as re-estimating the minimum and maximum driving forces suitable for the current stuck location based on the dynamic characteristics of the previous attempt to escape the current location. The specific calculation method can be found above and will not be repeated here. Accordingly, the vehicle can drive itself based on the second driving information and the second driving direction.

[0167] In another possible implementation, once a vehicle successfully escapes the predicament (i.e., leaves the current stuck location), it can transmit relevant information about the escape process (including vehicle status, equipment parameters, maximum driving force, minimum driving force, driving resistance, road surface characteristics, etc.) to the cloud. The cloud server can then send escape instructions to all vehicles, or vehicles near the stuck location, or vehicles that might pass through it, including the aforementioned information. Other vehicles can use this information to determine whether they are likely to get stuck at the location and whether they can successfully escape if stuck. If it is determined that the vehicle will not get stuck or can successfully escape if stuck, the vehicle does not need to give way when passing through the stuck location.

[0168] In another possible implementation, the vehicle can further increase driving force by downshifting or engaging the differential lock during the extrication process, thereby increasing the probability of successfully extricating itself from the predicament.

[0169] In another possible implementation, as shown in Figure 11, if the vehicle fails to extricate itself from the predicament in all driving directions (from the first to the fourth driving direction), the vehicle can send an extrication failure message to the cloud server. This message requests manual intervention. In response to the received extrication failure message, the cloud server can display an alarm message on the user interface to notify maintenance personnel to handle the situation.

[0170] Optionally, the number of attempts to extricate the vehicle can be set, for example, to 5 times, depending on actual needs. The vehicle can attempt to escape from the current stuck location in up to 5 directions.

[0171] In one possible implementation, this application embodiment only uses a vehicle getting out of trouble as an example for illustration. Optionally, the control method in this application embodiment can also be applied to getting out of trouble scenarios for other types of equipment, such as robots. Optionally, the control method in this application embodiment can also be applied to other possible environments, such as deserts, the moon, etc.

[0172] In this application embodiment, the above embodiments are all described using the vehicle performing each step as an example. The control method in this application embodiment can also be executed by the cloud. For example, the cloud can execute S401 to S403 to drive the vehicle away from the current stuck location. Specifically, when the vehicle is stuck, the cloud server can obtain the vehicle's first state information. In one example, the vehicle can report to the cloud server every time it obtains real-time driving information, so that the cloud server can obtain the vehicle's driving information before it got stuck based on the real-time driving information reported by the vehicle. In another example, the vehicle can also report driving information to the cloud server after it gets stuck. Optionally, the cloud server stores the vehicle's device parameters, and the vehicle does not need to report the device parameters.

[0173] The cloud server can obtain the vehicle's initial driving force information based on the initial state information. The specific acquisition method is described above and will not be repeated here. In one example, after obtaining the initial driving force information, the cloud server can send the information to the vehicle to drive it. Specifically, after obtaining the initial driving force information, the vehicle can generate a corresponding throttle command to gradually increase the driving force from the minimum to the maximum driving force or to move away from the current location. In another example, after obtaining the initial driving force information, the cloud server can generate and issue a corresponding throttle command to drive the vehicle, which can then generate the corresponding driving force based on the throttle command.

[0174] Referring to Figure 12, which is a schematic diagram of an exemplary control device, this application provides a control device including an acquisition module and a drive module. The acquisition module is used to acquire first state information of the vehicle when it is stuck in a stuck state. The first state information includes driving information and vehicle information. The driving information indicates the driving state of the vehicle before it became stuck, and the vehicle information indicates the equipment parameters of the power system in the vehicle. The acquisition module is further used to acquire first driving force information of the vehicle based on the first state information. The first driving force information includes a minimum driving force and a maximum driving force that conform to the road conditions at the current stuck location. The drive module is used to drive the vehicle based on the first driving force information; wherein the vehicle gradually increases its driving force from the minimum driving force to escape the current stuck location, and the driving force corresponding to the vehicle escaping the current stuck location is less than or equal to the maximum driving force, or the vehicle gradually increases its driving force from the minimum driving force to the maximum driving force.

[0175] Both the acquisition module and the driver module can be implemented in software or hardware. For example, the implementation of the acquisition module will be described below. Similarly, the implementation of the driver module can be referenced from that of the acquisition module.

[0176] As an example of a software functional unit, a module can include code running on a computing instance. A computing instance can include at least one of a physical host (computing device), a virtual machine, or a container. Furthermore, the aforementioned computing instance can be one or more. For example, a module can include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code can be distributed within the same region or in different regions. Further, the multiple hosts / virtual machines / containers used to run the code can be distributed within the same availability zone (AZ) or in different AZs, each AZ comprising one or more geographically proximate data centers. Typically, a region can include multiple AZs.

[0177] Similarly, multiple hosts / virtual machines / containers used to run this code can be distributed within the same Virtual Private Cloud (VPC) or across multiple VPCs. Typically, a VPC is set up within a region. Communication between two VPCs within the same region, as well as between VPCs in different regions, requires a communication gateway to be set up within each VPC to enable interconnection between VPCs.

[0178] As an example of a hardware functional unit, an acquisition module may include at least one computing device, such as a server. Alternatively, an acquisition module may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The aforementioned PLD may be implemented using a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), generic array logic (GAL), or any combination thereof.

[0179] The acquisition module includes multiple computing devices that can be distributed within the same region or in different regions. Similarly, the acquisition module can be distributed within the same Availability Zone (AZ) or in different AZs. Likewise, the acquisition module can be distributed within the same Virtual Private Cloud (VPC) or multiple VPCs. These multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.

[0180] It should be noted that, in other embodiments, the acquisition module can be used to execute any step in the control method, and the driving module can be used to execute any step in the control method. The steps implemented by the acquisition module and the driving module can be specified as needed, and the full functionality of the control device can be achieved by implementing different steps in the control method through the acquisition module and the driving module respectively.

[0181] This application also provides a computing device 1300. As shown in FIG13, the computing device 1300 includes: a bus 1302, a processor 1304, a memory 1306, and a communication interface 1309. The processor 1304, the memory 1306, and the communication interface 1309 communicate with each other via the bus 1302. The computing device 1300 may be a cloud server or a vehicle. It should be understood that this application does not limit the number of processors and memories in the computing device 1300.

[0182] Bus 1302 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, only one line is used in Figure 13, but this does not imply that there is only one bus or one type of bus. Bus 1302 can include pathways for transmitting information between various components of computing device 1300 (e.g., memory 1306, processor 1304, communication interface 1309).

[0183] The processor 1304 may include any one or more processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).

[0184] The memory 1306 may include volatile memory, such as random access memory (RAM). The memory 1306 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).

[0185] The memory 1306 stores executable program code, and the processor 1304 executes the executable program code to implement the functions of the aforementioned acquisition module and drive module, thereby realizing the control method in this embodiment. That is, the memory 1306 stores instructions for executing the control method.

[0186] The communication interface 1309 uses transceiver modules such as, but not limited to, network interface cards and transceivers to enable communication between the computing device 1300 and other devices or communication networks.

[0187] This application also provides a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a vehicle or other device with an autonomous driving mode.

[0188] As shown in Figure 14, the computing device cluster includes at least one computing device 1400. The memory 1406 of one or more computing devices 1400 in the computing device cluster may store the same instructions for executing control methods.

[0189] The computing device 1400 includes a bus 1402, a processor 1404, a memory 1406, and a communication interface 1408. The processor 1404, the memory 1406, and the communication interface 1408 communicate with each other via the bus 1402.

[0190] In some possible implementations, the memory 1406 of one or more computing devices 1400 in the computing device cluster may also store a portion of the instructions for executing the control method. In other words, a combination of one or more computing devices 1400 can jointly execute the instructions for executing the control method.

[0191] It should be noted that the memory 1406 in different computing devices 1400 within the computing device cluster can store different instructions, which are used to execute certain functions of the aforementioned acquisition module and drive module. For example, the instructions stored in the memory 1406 of different computing devices 1400 can implement the functions of one or more of the acquisition module and drive module included in the aforementioned control device.

[0192] In some possible implementations, one or more computing devices in a computing device cluster can be connected via a network. This network can be a wide area network (WAN) or a local area network (LAN), etc. Figure 15 illustrates one possible implementation. As shown in Figure 15, two computing devices 1500A and 1500B are connected via a network. Specifically, they are connected to the network through communication interfaces 1508 in each computing device.

[0193] The computing device 1500A includes a bus 1502, a processor 1504, a memory 1506, and a communication interface 1508. The processor 1504, the memory 1506, and the communication interface 1508 communicate with each other via the bus 1502.

[0194] The computing device 1500B includes a bus 1502, a processor 1504, a memory 1506, and a communication interface 1508. The processor 1504, the memory 1506, and the communication interface 1508 communicate with each other via the bus 1502.

[0195] In this type of possible implementation, the memory 1506 in computing device 1500A stores instructions for performing the functions of the aforementioned acquisition module. Meanwhile, the memory 1506 in computing device 1500B stores instructions for performing the functions of the aforementioned drive module.

[0196] It should be understood that the functions of computing device 1500A shown in Figure 15 can also be performed by multiple computing devices 1500. Similarly, the functions of computing device 1500B can also be performed by multiple computing devices 1500.

[0197] This application embodiment also provides another computing device cluster. The connection relationship between the computing devices in this computing device cluster can be similarly referred to the connection method of the computing device cluster described in Figures 14 and 15. The difference is that the memory 1506 of one or more computing devices 1500 in this computing device cluster can store the same instructions for executing control methods.

[0198] In some possible implementations, the memory 1506 of one or more computing devices 1500 in the computing device cluster may also store a portion of the instructions for executing the control method. In other words, a combination of one or more computing devices 1500 can jointly execute the instructions for executing the control method.

[0199] It should be noted that the memory 1506 in different computing devices 1500 within the computing device cluster can store different instructions for executing some functions of the aforementioned control device. For example, the instructions stored in the memory 1506 of different computing devices 1500 can implement the functions of the acquisition module and the drive module of the aforementioned control device.

[0200] This application also provides a computer program product containing instructions. The computer program product may be a software or program product containing instructions, capable of running on a computing device or stored on any usable medium. When the computer program product is run on at least one computing device, it causes the at least one computing device to perform the control method described in the above embodiments.

[0201] This application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium that a computing device can store, or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive). The computer-readable storage medium includes instructions that instruct the computing device to execute the control method described in the above embodiments.

[0202] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.

[0203] The terms "first" and "second," etc., used in the specification and claims of this application are used to distinguish different objects, not to describe a specific order of objects. For example, "first target object" and "second target object," etc., are used to distinguish different target objects, not to describe a specific order of target objects.

[0204] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0205] In the description of the embodiments in this application, unless otherwise stated, "multiple" means two or more. For example, multiple processing units means two or more processing units; multiple systems means two or more systems.

[0206] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

Claims

1. A control method characterized by, include: When a vehicle is stuck in a stuck state, the first state information of the vehicle is obtained. The first state information includes driving information and vehicle information. The driving information indicates the driving state of the vehicle before it was stuck in the stuck state, and the vehicle information indicates the equipment parameters of the power system in the vehicle. Based on the first state information, the first driving force information of the vehicle is obtained, and the first driving force information includes the minimum driving force and the maximum driving force that are consistent with the road conditions of the current stuck vehicle location. Based on the first driving force information, the vehicle is driven; wherein: the vehicle gradually increases the driving force from the minimum driving force to get out of the current stuck location, the driving force corresponding to the vehicle getting out of the current stuck location is less than or equal to the maximum driving force, or the vehicle gradually increases the driving force from the minimum driving force to the maximum driving force.

2. The method of claim 1, wherein, The step of obtaining the first driving force information of the vehicle based on the first state information includes: Based on the first state information, obtain the driving resistance of the vehicle at the current stuck location and the road surface characteristics of the stuck location; Based on the driving resistance and the road surface characteristics information, the first driving force information is obtained.

3. The method according to claim 2, characterized in that, The step of obtaining the driving resistance of the vehicle at the current stuck location and the road surface characteristics information corresponding to the stuck location based on the first state information includes: The first state information is input into the vehicle powertrain model to obtain the driving force estimate; wherein: the vehicle powertrain model is trained based on the vehicle powertrain database, and the vehicle powertrain database includes different driving states and the same equipment parameters of vehicles with the same model as the vehicle. Based on the estimated driving force, obtain the road surface characteristics information of the current vehicle stuck location.

4. The method according to claim 3, characterized in that, The step of obtaining the driving resistance of the vehicle at the current stuck location and the road surface characteristics information corresponding to the stuck location based on the first state information includes: The first state information and the estimated driving force are input into the vehicle dynamics model to obtain the driving resistance of the vehicle at the current stuck location.

5. The method according to claim 2, characterized in that, The step of obtaining the first driving force information of the vehicle based on the driving resistance and the road surface characteristic information includes: The maximum driving force is determined based on the road surface characteristic information; The minimum driving force is determined based on the driving resistance.

6. The method according to any one of claims 1 to 5, characterized in that, Before driving the vehicle based on the first driving force information, the method further includes: Acquire environmental perception information, which indicates the surrounding environment of the vehicle stuck location; Based on the environmental perception information, the first driving direction is determined.

7. The method according to claim 6, characterized in that, Determining the first driving direction based on the environmental perception information includes: Based on the environmental perception information, determine whether there is an obstacle in the first direction; If there is an obstacle in the first direction, determine whether there is an obstacle in the second direction; If there is no obstacle in the second direction, the second direction is determined to be the first driving direction.

8. The method according to claim 6, characterized in that, The step of driving the vehicle based on the first driving force information includes: The vehicle is driven based on the first driving force information and the first driving direction.

9. The method according to claim 6 or 8, characterized in that, The method further includes: When the vehicle is driven based on the first driving force information and the first driving direction, and the vehicle is still stuck, the second state information of the vehicle is obtained. The second state information includes operating information and vehicle information. The operating information indicates the operating state of the vehicle when it is driven based on the first driving force information and the first driving direction. Based on the second state information, the second driving force information of the vehicle is obtained. The second driving force information includes the minimum driving force and the maximum driving force in the second driving direction that are consistent with the road conditions at the current stuck location. The vehicle is driven based on the second driving force information and the second driving direction.

10. The method according to any one of claims 1 to 9, characterized in that, The method further includes: Send a vehicle stuck information to the cloud server. The vehicle stuck information instructs the cloud server to send a vehicle stuck notification to other vehicles. The vehicle stuck notification instructs other vehicles to avoid the vehicle stuck location.

11. A control device, characterized in that, include: The acquisition module is used to acquire first status information of the vehicle when the vehicle is stuck in a stuck state. The first status information includes driving information and vehicle information. The driving information indicates the driving state of the vehicle before it was stuck in the stuck state, and the vehicle information indicates the equipment parameters of the power system in the vehicle. The acquisition module is further configured to acquire the first driving force information of the vehicle based on the first state information, wherein the first driving force information includes the minimum driving force and the maximum driving force that are consistent with the road conditions of the current stuck location. A drive module is used to drive the vehicle based on the first drive force information; wherein: the vehicle gradually increases the drive force from the minimum drive force to get out of the current stuck location, the drive force corresponding to the vehicle getting out of the current stuck location is less than or equal to the maximum drive force, or the vehicle gradually increases the drive force from the minimum drive force to the maximum drive force.

12. The apparatus according to claim 11, characterized in that, The acquisition module is specifically used for: Based on the first state information, obtain the driving resistance of the vehicle at the current stuck location and the road surface characteristics of the stuck location; Based on the driving resistance and the road surface characteristics information, the first driving force information is obtained.

13. The apparatus according to claim 12, characterized in that, The acquisition module is specifically used for: The first state information is input into the vehicle powertrain model to obtain the driving force estimate; wherein: the vehicle powertrain model is trained based on the vehicle powertrain database, and the vehicle powertrain database includes different driving states and the same equipment parameters of vehicles with the same model as the vehicle. Based on the estimated driving force, obtain the road surface characteristics information of the current vehicle stuck location.

14. The apparatus according to claim 13, characterized in that, The acquisition module is specifically used for: The first state information and the estimated driving force are input into the vehicle dynamics model to obtain the driving resistance of the vehicle at the current stuck location.

15. The apparatus according to claim 12, characterized in that, The acquisition module is specifically used for: The maximum driving force is determined based on the road surface characteristic information; The minimum driving force is determined based on the driving resistance.

16. The apparatus according to any one of claims 11 to 15, characterized in that, The device further includes: A perception module is used to acquire environmental perception information, which indicates the surrounding environment of the vehicle stuck location; The determination module is used to determine the first driving direction based on the environmental perception information.

17. The apparatus according to claim 16, characterized in that, The determining module is specifically used for: Based on the environmental perception information, determine whether there is an obstacle in the first direction; If there is an obstacle in the first direction, determine whether there is an obstacle in the second direction; If there is no obstacle in the second direction, the second direction is determined to be the first driving direction.

18. The apparatus according to claim 16, characterized in that, The driving module is specifically used for: The vehicle is driven based on the first driving force information and the first driving direction.

19. The apparatus according to claim 16 or 18, characterized in that, The acquisition module is further configured to acquire second state information of the vehicle when the vehicle is driven based on the first driving force information and the first driving direction and the vehicle is still stuck in the vehicle state. The second state information includes running information and vehicle information. The running information indicates the running state of the vehicle when the vehicle is driven based on the first driving force information and the first driving direction. The acquisition module is further configured to acquire the second driving force information of the vehicle based on the second state information, wherein the second driving force information includes the minimum driving force and the maximum driving force in the second driving direction that are consistent with the road conditions at the current stuck location; The drive module is also used to drive the vehicle based on the second drive force information and the second drive direction.

20. The apparatus according to any one of claims 11 to 19, characterized in that, The device further includes: The communication module is used to send vehicle-stuck information to the cloud server. The vehicle-stuck information instructs the cloud server to send vehicle-stuck notifications to other vehicles, and the vehicle-stuck notifications instruct other vehicles to avoid the vehicle-stuck location.

21. A computing device cluster, characterized in that, It includes at least one computing device, each computing device including a processor and memory; The processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device to cause the cluster of computing devices to perform the method as described in any one of claims 1 to 9.

22. A computer program product containing instructions, characterized in that, When the instruction is executed by the computing device cluster, the computing device cluster causes the computing device cluster to perform the method as described in any one of claims 1 to 10.

23. A computer-readable storage medium, characterized in that, Includes computer program instructions, which, when executed by a cluster of computing devices, perform the method as described in any one of claims 1 to 10.