Speed control for construction machinery

By installing sensors and computer systems on construction machinery, the speed can be adjusted in real time to reduce surface deviation, thus solving the problem of inaccurate speed control in construction machinery and improving construction quality and efficiency.

CN116802363BActive Publication Date: 2026-05-05CATERPILLAR TRIMBLE CONTROL TECHNOLOGIES LLC
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CATERPILLAR TRIMBLE CONTROL TECHNOLOGIES LLC
Filing Date
2021-11-19
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Existing construction machinery is difficult to control precisely during construction, resulting in unevenness and low construction efficiency.

Method used

By installing sensors, especially inertial sensors, the position and environment of construction machinery are monitored in real time. Combined with a computer system, speed control is performed to adjust the speed of the construction machinery to reduce the deviation between the actual surface and the target surface.

Benefits of technology

It achieves higher construction quality and efficiency, reduces unevenness during construction, and improves construction accuracy and stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116802363B_ABST
    Figure CN116802363B_ABST
Patent Text Reader

Abstract

This paper describes systems, methods, and other techniques for controlling the speed of construction machinery operating on a construction site. While the construction machinery moves forward or backward at this speed, sensor data is captured using one or more sensors on the machinery. The actual surface area of ​​the construction site is estimated based on the sensor data. The deviation between the target surface and the actual surface is calculated. An actual performance metric is calculated based on this deviation. The actual performance metric is compared with the target performance metric to determine a speed adjustment. The speed of the construction machinery is then adjusted accordingly.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-reference to related applications

[0002] This application claims priority to U.S. Provisional Patent Application No. 17 / 103281, filed November 24, 2020, entitled "Speed ​​Control for Construction Machinery," the entire contents of which are incorporated herein by reference for all purposes. Background Technology

[0003] Modern construction machinery has dramatically improved the efficiency of performing a wide range of construction projects. For example, earthmoving machinery with automated slope control systems can reduce the slope of a project area using fewer passageways than previously done manually. As another example, modern asphalt pavers and other road marking machines have allowed for the replacement of old roads and the construction of new roads to occur in the order of hours and days, instead of weeks and months as before. Due to automation in various aspects, construction projects can be performed by far fewer construction workers than before. Much of the technological advancement in construction machinery is attributable to the availability of precise sensors that allow for real-time monitoring of the condition and location of machine components and / or the environment surrounding the machine. Despite these improvements in modern construction machinery, new systems, methods, and technologies are still needed. Summary of the Invention

[0004] This disclosure broadly relates to techniques for controlling the speed of heavy equipment. Specifically, many of the embodiments described herein relate to speed adjustment techniques for earthmoving and construction machinery.

[0005] The following provides a summary of various embodiments of the invention as a list of examples. As used below, any reference to a series of examples should be understood as a separate reference to each of these examples (e.g., "Examples 1 to 4" should be understood as "Examples 1, 2, 3 or 4").

[0006] Example 1 is a computer-implemented method for controlling the speed of construction machinery operating on a construction site, the method comprising: capturing sensor data using one or more sensors of the construction machinery while the construction machinery moves forward or backward at a speed; estimating the actual surface of the construction site based on the sensor data captured using the one or more sensors; calculating the deviation between a target surface and the actual surface; calculating an actual performance metric based on the deviation; comparing the actual performance metric with the target performance metric to determine a speed adjustment, wherein the speed adjustment is determined to reduce the error between the actual performance metric and the target performance metric; and adjusting the speed of the construction machinery by means of the speed adjustment.

[0007] Example 2 is a computer-implemented method of Example 1, wherein the deviation includes multiple distances between the target surface and the actual surface.

[0008] Example 3 is a computer-implemented method of Example 1, wherein adjusting the speed of construction machinery by speed adjustment includes: providing speed adjustment to the speed controller of the construction machinery.

[0009] Example 4 is a computer-implemented method of Example 1, wherein one or more sensors include inertial sensors mounted on tools of construction machinery.

[0010] Example 5 is a computer-implemented method of Example 4, wherein an inertial sensor is configured to detect the vertical movement of a tool while the construction machinery is moving.

[0011] Example 6 is a computer-implemented method of Example 1, wherein comparing actual performance metrics with target performance metrics to determine speed adjustment includes: calculating the error between the actual performance metrics and the target performance metrics; and determining speed adjustment based on the error.

[0012] Example 7 is a computer-implemented method of Example 1, where the actual performance metric is an increasing function of the deviation.

[0013] Example 8 is a computer-implemented method of Example 7, wherein: if the actual performance metric is less than the target performance metric, the speed adjustment is positive; and if the actual performance metric is greater than the target performance metric, the speed adjustment is negative.

[0014] Example 9 is a computer-implemented method of Example 1, where the actual performance metric is a decreasing function of the deviation.

[0015] Example 10 is a computer-implemented method of Example 9, wherein: if the actual performance metric is less than the target performance metric, the speed adjustment is negative; and if the actual performance metric is greater than the target performance metric, the speed adjustment is positive.

[0016] Example 11 is a non-transitory computer-readable medium including instructions that, when executed by one or more processors, cause one or more processors to perform operations for controlling the speed of construction machinery operating within a construction site, the operations including: capturing sensor data using one or more sensors of the construction machinery while the construction machinery moves forward or backward at a speed; estimating the actual surface of the construction site based on the sensor data captured using the one or more sensors; calculating the deviation between a target surface and the actual surface; calculating an actual performance metric based on the deviation; comparing the actual performance metric with the target performance metric to determine a speed adjustment, wherein the speed adjustment is determined to reduce the error between the actual performance metric and the target performance metric; and adjusting the speed of the construction machinery by means of the speed adjustment.

[0017] Example 12 is a non-transitory computer-readable medium of Example 11, wherein the deviation includes multiple distances between the target surface and the actual surface.

[0018] Example 13 is a non-transitory computer-readable medium of Example 11, wherein adjusting the speed of construction machinery by speed adjustment includes: providing speed adjustment to the speed controller of the construction machinery.

[0019] Example 14 is a non-transitory computer-readable medium of Example 11, wherein one or more sensors include inertial sensors mounted on tools of construction machinery.

[0020] Example 15 is a non-transitory computer-readable medium of Example 14, wherein an inertial sensor is configured to detect vertical movement of a tool while the construction machinery is moving.

[0021] Example 16 is a system comprising: one or more processors; and a computer-readable medium including instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including: capturing sensor data using one or more sensors of the construction machinery while the construction machinery moves forward or backward at a speed; estimating the actual surface of the construction site based on the sensor data captured using the one or more sensors; calculating a deviation between a target surface and the actual surface; calculating an actual performance metric based on the deviation; comparing the actual performance metric with the target performance metric to determine a speed adjustment, wherein the speed adjustment is determined to reduce the error between the actual performance metric and the target performance metric; and adjusting the speed of the construction machinery by means of the speed adjustment.

[0022] Example 17 is the system of Example 16, where the deviation includes multiple distances between the target surface and the actual surface.

[0023] Example 18 is a system similar to Example 16, wherein adjusting the speed of construction machinery by speed adjustment includes: providing speed adjustment to the speed controller of the construction machinery.

[0024] Example 19 is a system similar to that of Example 16, wherein one or more sensors include inertial sensors mounted on tools of construction machinery.

[0025] Example 20 is a system similar to Example 19, wherein an inertial sensor is configured to detect the vertical movement of a tool while the construction machinery is moving. Attached Figure Description

[0026] These accompanying drawings (included to provide a further understanding of this disclosure) are contained in and form part of this specification, illustrating embodiments of this disclosure and, together with the detailed description, serving to explain the principles of this disclosure. No attempt is made to show the structural details of this disclosure in more detail than is necessary for a basic understanding of this disclosure and for practicing its various modes.

[0027] Figure 1 Example implementations of one or more technologies of this disclosure in a built environment are shown.

[0028] Figure 2 An example mechanical control system is shown.

[0029] Figure 3 An example control process that can be implemented by a mechanical control system is shown.

[0030] Figure 4 Example curves are shown to demonstrate performance metrics as a function of velocity for three different surface types.

[0031] Figure 5 Example curves are shown to demonstrate performance metrics as a function of velocity for three different surface types.

[0032] Figure 6 A method for controlling the speed of construction machinery operating on a construction site is shown.

[0033] Figure 7 An example computer system including various hardware components is shown.

[0034] In the accompanying drawings, similar parts and / or features may have the same numerical reference labels. Furthermore, various parts of the same type can be distinguished by a letter following the reference label, or by a second numerical reference label following a dash, which distinguishes similar parts and / or features. If only the first numerical reference label is used in the specification, the description applies to any similar parts and / or features having the same first numerical reference label, regardless of suffixes. Detailed Implementation

[0035] The embodiments described herein relate to systems, methods, and other techniques for controlling the speed of heavy equipment, such as earthmoving machinery. By controlling the speed of the machinery in the described manner, better control of the machine tool can be achieved, resulting in a better finished grade surface with reduced roughness, an undesirable effect that typically occurs when machinery moves at a certain speed. The embodiments described herein can improve slope-reducing surfaces by optimizing the speed of the machinery for a range of surface types (e.g., sand, clay, gravel, etc.) and a range of surface designs.

[0036] In some cases, the techniques described herein provide a speed control loop to operate on a control unit that takes into account the vehicle's travel speed. The speed control loop can directly affect the stability of the main control loop (which may be referred to as the vertical slope control loop) that handles the vertical control of the tool (e.g., a shovel, plowshare, bucket, etc.). Therefore, the vertical slope control loop can be combined to increase or decrease the speed of the machinery to obtain optimal results. In some cases, if the output from the main vertical slope control loop begins to exhibit reduced stability (e.g., an increase in the output level or actuation of a valve), the speed control loop can increase or decrease the vehicle speed to increase the stability of the vertical slope control loop.

[0037] The control unit can measure and record statistical data related to the finished slope surface (which can be referred to as the actual surface). This forms the core of the data for the speed control loop to process and adjust the speed. The speed control loop can utilize hysteresis to avoid over-driving or over-correcting the platform's speed. Furthermore, the speed control loop can be configured based on the brand / model of the machinery it is installed on, and based on test data, has a predetermined speed range within which optimal stability is more likely to be achieved.

[0038] In the following description, various examples will be described. Specific configurations and details are listed for illustrative purposes to provide a thorough understanding of the examples. However, it will also be apparent to those skilled in the art that the examples can be practiced without the specific details. Furthermore, well-known features may be omitted or simplified so as not to obscure the embodiments being described.

[0039] Figure 1 Example implementations of one or more technologies of this disclosure in a built environment are illustrated. Specifically, Figure 1Construction machinery 150 is shown deployed at a construction site 124 and controlled at least in part by a control unit 160. In various embodiments, the control unit 160 may be communicatively coupled to a position sensor 155 and / or an inertial sensor 165 mounted on the construction machinery 150. Although construction site 124 is generally described herein as corresponding to an earthmoving site, such as a road or building construction site, this disclosure is applicable to a variety of construction, maintenance, or agricultural projects in which heavy equipment is used. Similarly, although construction machinery 150 is generally described herein as corresponding to earthmoving construction machinery, the various techniques described herein are applicable to a wide variety of construction machinery or heavy equipment, such as graders, excavators, bulldozers, backhoe excavators, pavers (e.g., concrete, asphalt, slipform, vibratory, etc.), compactors, scrapers, loaders, material handlers, combine harvesters, spreaders, etc.

[0040] In some embodiments, construction machinery 150 may include a tractor having wheels, axles, and a gasoline, diesel, electric, or steam-powered engine to provide power and traction to the construction machinery 150 to travel along a desired path, typically at a constant speed. In some cases, construction machinery 150 may be a tracked vehicle incorporating continuous tracks of tracks or track plates driven by the vehicle's wheels. An operator of construction machinery 150 may provide input to control unit 160 using various input devices such as levers, switches, buttons, pedals, steering wheels, and touchscreens, which may cause various actuators to move construction machinery 150.

[0041] In some cases, construction machinery 150 may include tool 121, which may be a major component of construction machinery 150 and is controlled to interact with elements of construction site 124. For example, at an earthmoving site, tool 121 may be a component of construction machinery 150 (e.g., a bulldozer blade, an excavator bucket, a compactor roller, or some other ground-jointing tool) that interacts with the material to be sloped (e.g., pushing, shoveling, cutting, digging, pressing, etc.). As another example, in agricultural sites, tool 121 may be the harvesting platform of a combine harvester or the boom of a spreader. As yet another example, at a road construction site, tool 121 may be the screed of an asphalt paver.

[0042] It should be understood that in some embodiments, tool 121 and construction machinery 150 can be considered as separate bodies with a semi-rigid coupling between them. The coupling is semi-rigid, meaning the objects can move relative to each other, but they can also be fixed in a given orientation. Some examples of semi-rigid couplings used on construction or earthmoving equipment include C-frames, angled C-frames, push arms, L-shaped push arms, etc.

[0043] In some embodiments, control unit 160 may determine the geospatial location 122 of construction machinery 150 based on sensor data captured by one or more sensors (e.g., position sensor 155) mounted to construction machinery 150. For example, position sensor 155 may be a Global Navigation Satellite System (GNSS) receiver that receives radio signals from one or more GNSS satellites. The location of the GNSS receiver can be calculated by processing the received radio signals. In some cases, during operation of construction machinery 150, geospatial location 122 is determined and used to query site design 170, which can provide a translation between a two-dimensional (2D) or three-dimensional (3D) location within construction site 124 and a target slope (e.g., target inclination and / or target elevation). The obtained target slope can be fed into slope controller 163, which may employ various control mechanisms (e.g., proportional-integral-derivative (PID) controller) to drive the actual slope (e.g., actual inclination and / or actual elevation) toward the target slope. The actual slope of the construction machinery 150 can be adjusted by sending control signals to one or more actuators mechanically coupled to the tool.

[0044] In some embodiments, the control unit 160 may use inertial data 158 (along with other types of sensor data) captured by inertial sensors 165 mounted to tool 121 to determine the actual surface 126 of the ground or ground at construction site 124. For example, the inertial data 158 may be analyzed to track the vertical, horizontal, and / or angular movement of tool 121 as construction machinery 150 moves in a forward or backward direction. The movement of tool 121 and the known speed of construction machinery 150 may be used to create a 3D representation of the actual surface 126 or different representations with fewer or more data points.

[0045] The actual surface 126 is compared with the target surface to calculate the deviation D(t) between the two. The speed adjustment module 136 can use the deviation D(t) obtained from the comparison to determine a new target speed 134 for the construction machinery 150. Typically, if the deviation D(t) is large enough, the target speed 134 is determined to be less than the current speed, and if the deviation D(t) is small enough, the target speed 134 is determined to be greater than the current speed. Finally, the target speed 134 is fed into the speed controller, which can employ various control mechanisms (such as a PID controller) to drive the actual speed toward the target speed 134.

[0046] In the example shown, construction machinery 150 attempts to reduce the slope of the ground at construction site 124 to a flat target surface. When construction machinery 150 reaches point X1, the actual surface 126 is estimated and determined to deviate significantly from the flat target surface. Therefore, at point X1, speed adjustment module 136 determines that the target speed 134 should be reduced. When construction machinery 150 reaches point X2, the actual surface 126 is estimated again and determined to deviate too little from the flat target surface relative to the target performance metric. Therefore, speed adjustment module 136 determines that the target speed 134 should be increased from its previous value. When construction machinery 150 reaches point X3, the actual surface 126 is estimated again and determined to deviate too much from the flat target surface relative to the target performance metric. Therefore, speed adjustment module 136 determines that the target speed 134 should be reduced from its previous value. The target speed 134 is reduced again in a similar manner at each of points X4 and X5, after which construction machinery 150 reaches its final speed, resulting in a deviation between the actual surface 126 and the target surface that is determined to be within an acceptable amount.

[0047] A target performance metric can be selected to balance efficiency and accuracy, allowing construction projects to be completed on time while maintaining quality levels. In some cases, the above steps can be repeated in response to changes in the target performance metric, changes in the target surface, and / or after a predetermined amount of time. For example, the speed adjustment module 136 can be executed at a predetermined rate, such as every 0.1 seconds, 1 second, 10 seconds, etc., as the construction machinery 150 moves.

[0048] Figure 2 An example mechanical control system 230 according to some embodiments of the present disclosure is illustrated. The mechanical control system 230 may include various input devices 252, sensors 254, actuators 256, and computing devices for allowing one or more operators of the construction machinery to perform construction operations. Components of the mechanical control system 230 may be mounted to or integrated with components of the construction machinery, such that the construction machinery may include the mechanical control system 230. Components of the mechanical control system 230 may be communicatively coupled to each other via one or more wired and / or wireless connections.

[0049] The mechanical control system 230 may include a control unit 260 that receives data and inputs from various sensors and generates commands to be sent to various actuators and output devices. In the illustrated example, the control unit 260 receives input data from input device 252 and sensor data from sensor 254, and generates control signals 278 to be sent to actuator 256. The control unit 260 may include one or more processors and associated memory. In some embodiments, the control unit 260 may be communicatively coupled to an external computing system 262 located outside the mechanical control system 230 and the construction machinery. The external computing system 262 may send instructions to the control unit 260 detailing construction operations. For example, the external computing system 262 may send a site design 270 to the control unit 260. The external computing system 262 may also send alarms and other general information (such as traffic conditions, weather conditions, the location and status of material transport vehicles, etc.) to the control unit 260.

[0050] In some embodiments, the mechanical control system 230 includes one or more input devices 252 for receiving various input data from a user (e.g., target surface, target slope, site plan). The input device 252 may include a keyboard, touchscreen, touchpad, switch, lever, button, steering wheel, accelerator pedal, brake pedal, etc. The input device 252 may be mounted on any physical part of the construction machinery. The input device 252 may further receive user input indicating desired movement of the construction machinery, desired movement of tools, etc.

[0051] In some embodiments, sensor 254 may include one or more position sensors 255, inertial sensors 265, image capture devices, proximity sensors, ground sensing radar devices, and / or Hall effect sensors, among other possibilities. Position sensor 255 may be a combination of a GNSS receiver and a total station, whereby the GNSS receiver uses radio signals received from satellites to determine position, and the total station determines position by combining distance, vertical angle, and horizontal angle measurements. Inertial sensor 265 may be one or more sensors that detect movement of components of construction machinery rigidly attached to or mounted to the machinery. For example, inertial sensor 265 may include one or more gyroscopes for detecting angular acceleration, angular rate, and / or angular position; one or more accelerometers for detecting linear acceleration, linear velocity, and / or linear position; one or more inertial measurement units (IMUs), wherein each IMU may include one or more accelerometers, one or more gyroscopes, and / or one or more magnetometers for detecting data of the types described above, among other possibilities.

[0052] In some embodiments, the inertial sensor 265 can directly detect angular rate and can be integrated to obtain angular position; alternatively, the inertial sensor can directly measure angular position and can determine changes in angular position (e.g., calculate derivatives) to obtain angular rate. In many instances, the inertial sensor 265 can be used to determine the yaw angle (rotation angle relative to the vertical axis), pitch angle (rotation angle relative to the lateral axis), and / or roll angle (rotation angle relative to the longitudinal axis) of components of construction machinery.

[0053] Control unit 260 may include various controllers and modules to assist in generating control signal 278. Each controller and module may include dedicated hardware and / or may be executed using the main processor and / or memory of control unit 260. In some embodiments, control unit 260 includes slope controller 263, which drives an actual / measured / estimated slope toward a target slope. In some cases, slope controller 263 calculates the measured slope using sensor data, performs a comparison between the measured slope and the target slope, and generates control signal 278 to cause actuator 256 to move in a manner that drives the measured slope toward the target slope. Similarly, control unit 260 may include speed controller 242, which drives an actual / measured / estimated speed toward a target speed. In some cases, speed controller 242 receives a measured speed or calculates a measured speed using sensor data, performs a comparison between the measured speed and the target speed, and generates control signal 278 to cause actuator 256 to move in a manner that drives the measured speed toward the target speed.

[0054] Control signal 278 may include a direct current (DC) or alternating current (AC) voltage signal, a DC or AC current signal, and / or a signal containing information. An example of a signal containing information may be a Controller Area Network (CAN) message, which may be transmitted along a CAN bus or other communication medium. In some cases, one or more control signals 278 may include pneumatic or hydraulic pressure. Upon receiving control signal 278, actuator 256 may be moved in a specified manner, such as by extending, retracting, rotating, lifting, or lowering by a specified amount. Actuator 256 may use various forms of power to provide movement to components of the construction machinery. For example, actuator 256 may be electric, hydraulic, pneumatic, mechanical, or thermal, among other possibilities.

[0055] Figure 3 An example control process 300, which can be implemented by a mechanical control system (such as mechanical control system 230), is shown according to some embodiments of the present disclosure. Figure 3The diagram illustrates various actions performed by a mechanical control system and the movement of data between controllers and modules that generate control signals to be sent to actuators. In some cases, each iteration of the control process 300 begins at block 302, where one or more sensors mounted to the construction machinery (e.g., mounted to a tool) are used to capture sensor data 359. Sensors may include position sensors, inertial sensors, ultrasonic sensors, laser sensors, and other types of sensors mounted on the construction machinery. Block 302 may include block 302A, where one or more inertial sensors mounted to the construction machinery (e.g., mounted to a tool) are used to capture inertial data 358. At block 304, the actual surface 326 of the construction site is estimated based on the sensor data 359 and / or the inertial data 358. At block 306, the deviation 368 (e.g., deviation D(t)) between the target surface 344 and the actual surface 326 is calculated.

[0056] In some cases, the target surface 344 is included in the site design. In some cases, the target surface 344 may include a target slope 328 that can be provided to the slope controller 363. In block 308, the geospatial location 322 of the construction machinery is detected using one or more position sensors. In block 310, the geospatial location 322 can be used to query the site design to obtain the target surface 344. A deviation 368 can be provided to the speed adjustment module 336, and in block 312, an actual performance metric 348 is calculated based on the deviation 368. The target performance metric 346 can also be provided to the speed adjustment module 336 using an input device, or the target performance metric 346 can be specified in the site design, and in block 314, an error 372 between the actual performance metric 348 and the target performance metric 346 is calculated.

[0057] In box 316, a speed adjustment is determined based on error 372. This speed adjustment can be incorporated (e.g., added to) a previous target speed to produce a target speed 334, which is provided to speed controller 342. In one example, if error 372 is less than a threshold or trending downwards, the system is considered to be operating "below range," and therefore the speed adjustment is negative, causing the target speed 334 to decrease. In the same example, if error 372 is less than the threshold and trending upwards, the system is considered to be operating "upwards," and therefore the speed adjustment is positive, causing the target speed 334 to increase. In the same example, if error 372 is greater than the threshold and trending upwards, the system is considered to be operating "above target," and therefore the speed adjustment is positive, causing the target speed 334 to increase. In the same example, if none of the above conditions are true, the system is considered to be operating "within range," and therefore the speed adjustment is zero, thus maintaining the target speed 334. In some examples, the rate of change of speed is a function of the magnitude of error 372 (e.g., proportional).

[0058] In some cases, the target speed 334 can be filtered to prevent it from changing too quickly, which could produce undesirable results. This can be achieved using low-pass filtering, hysteresis, rate limiting, and other possibilities. In some cases, the speed controller 342 can be configured to receive various types of travel speed commands, such as absolute travel speed commands (e.g., traveling at 1.5 m / s) or travel speed commands relative to the nominal speed (e.g., traveling at a speed 0.1 m / s higher than the currently set travel speed). The computer executing the mechanical travel speed commands can be equipped with the ability to track and compensate for the actual travel speed of the machinery.

[0059] The above steps of control process 300 can be repeated after a predetermined time interval, such as... Figure 3 The delay box is shown in the figure. Alternatively or additionally, this step may be repeated in response to one or more of the following: availability of new sensor data 359 and / or new inertial data 358, changes in the target surface 344 and / or changes in the target performance metric 346, and other possibilities.

[0060] Figure 4 Example curves showing performance metrics as a function of velocity for three different surface types are shown according to some embodiments. In the example shown, the actual performance metrics 448 for the three different surface types are plotted as a function of the velocity of the construction machinery, having velocity represented on the horizontal axis and performance metrics represented on the vertical axis. As described herein, the actual performance metrics 448 are calculated based on the deviation D(t), and... Figure 4In the example, each actual performance metric 448 is an increasing function of the deviation, such that a higher value of the performance metric corresponds to a lower accuracy of the actual surface (e.g., the performance metric could be a non-uniformity of the deviation). While the construction machinery is traveling on one of surface types 1, 2, or 3, the control process drives the machinery's speed toward a speed where the corresponding actual performance metric 448 is equal to the target performance metric 446. This "final" speed varies for each surface type. For example, the final speed V1 for surface type 1 is less than the final speed V2 for surface type 2, which in turn is less than the final speed V3 for surface type 3.

[0061] Figure 5 Example curves showing performance metrics as a function of velocity for three different surface types, according to some embodiments, are shown. Similar to... Figure 4 The actual performance metrics 548 for three different surface types were plotted as a function of the speed of the construction machinery, with speed represented on the horizontal axis and performance metrics represented on the vertical axis. Figure 4 On the contrary, Figure 5 In the example, each of the actual performance metrics 548 is a decreasing function of the deviation, such that a higher value of the performance metric corresponds to a better accuracy of the actual surface (e.g., the performance metric could be the smoothness of the deviation). While the construction machinery is traveling on one of surface types 1, 2, or 3, the control process drives the construction machinery toward a speed where the corresponding actual performance metric 548 is equal to the target performance metric 546. Figure 4 and Figure 5 It demonstrates how to achieve the same final speed using different performance metrics, and how different final speeds can be achieved for different surface types.

[0062] Figure 6 A method 600 for controlling the speed of construction machinery (e.g., construction machinery 150) operating within a construction site (e.g., construction site 124) is illustrated. During the execution of method 600, one or more steps of method 600 may be omitted, and the steps of method 600 need not be executed in the order shown. One or more steps of method 600 may be executed by one or more processors (such as those included in control units (e.g., control units 160, 260) of the construction machinery). Method 600 may be implemented as a computer-readable medium or computer program product including instructions that, when executed by one or more computers, cause the one or more computers to perform the steps of method 600.

[0063] In step 602, while the construction machinery moves forward or backward at a speed, sensor data (e.g., sensor data 359) is captured using one or more sensors of the construction machinery (e.g., sensor 254). The sensor data may include inertial data (e.g., inertial data 158, 258, 358) captured by inertial sensors (e.g., inertial sensors 165, 265). The inertial sensors may be attached to or mounted to the construction machinery, such as to a tool (e.g., tool 121) attached to the construction machinery. In some embodiments, the inertial data indicates the vertical, horizontal, and / or angular movement of the tool as the construction machinery moves. The sensor data may further include one or more geospatial locations of the construction machinery (e.g., geospatial locations 122, 222, 322) captured by position sensors (e.g., position sensors 155, 255) attached to or mounted to the construction machinery. In some cases, one or more geospatial locations may be used to determine the actual speed of the construction machinery.

[0064] In step 604, the actual surface of the construction site (e.g., actual surface 126, 326) is estimated based on sensor data captured using one or more sensors. In some embodiments, the actual surface may be a 3D representation of the ground or surface at a construction site where construction machinery has passed and / or where the slope has been reduced. In some embodiments, the actual surface may be multiple heights determined based on the vertical, horizontal, and / or angular movement of a tool determined using inertial data.

[0065] In step 606, the deviation (e.g., deviation 368) between the target surface (e.g., target surface 344) and the actual surface is calculated. The target surface can be extracted from a site design (e.g., site design 170, 270) or can be set by an input device (e.g., input device 252). In some embodiments, the target surface can be a 3D representation of the ground surface or ground at a construction site. In some embodiments, method 600 includes the step of receiving the target surface. The deviation can include one or more distances between the target surface and the actual surface. For example, the deviation can include a single distance or multiple distances. In some cases, each of the one or more distances can be time-referenced (e.g., associated with the time when sensor data is captured by construction machinery), and in some cases, the deviation can be expressed as a function of time. In some examples, the deviation can include N values ​​corresponding to the N most recent values ​​of the actual surface.

[0066] In step 608, a practical performance metric (e.g., practical performance metric 348, 448, 548) is calculated based on the deviation. In some embodiments, the practical performance metric may include a single value calculated based on a statistical analysis of the deviation. For example, the practical performance metric may be equal to the mean of the deviation, a weighted average of the deviations (newer deviation values ​​are weighted more heavily than less recent deviation values), the inverse of the deviation, the inverse of the mean of the deviations, the maximum value of the deviation, the minimum value of the deviation, a fitting parameter derived from the parameterization of the deviation, or some other statistical measure of the deviation or N values ​​of the deviation. Thus, the practical performance metric may be an increasing function of the deviation (e.g., the practical performance metric increases as the deviation generally increases) or a decreasing function of the deviation (e.g., the practical performance metric decreases as the deviation generally increases).

[0067] In step 610, the actual performance metric is compared with a target performance metric (e.g., target performance metrics 346, 446, 546) to determine a speed adjustment. The speed adjustment can be determined such that the error is reduced when the speed adjustment is applied. The target performance metric can be extracted from the site design or can be set by an input device. In some embodiments, step 610 may include one or both of steps 610A and 610B. In step 610A, the error between the actual performance metric and the target performance metric is calculated. In some cases, the error is calculated by subtracting the actual performance metric from the target performance metric. In step 610B, the speed adjustment is determined based on the error. In embodiments where the actual performance metric is an increasing function of the deviation, the speed adjustment is positive if the actual performance metric is less than the target performance metric, and negative if the actual performance metric is greater than the target performance metric. In embodiments where the actual performance metric is a decreasing function of the deviation, the speed adjustment is negative if the actual performance metric is less than the target performance metric, and positive if the actual performance metric is greater than the target performance metric.

[0068] In step 612, the speed of the construction machinery is adjusted by speed adjustment. In some embodiments, for example, a new target speed (e.g., target speed 134, 334) is determined based on the previous target speed and the speed adjustment by adding the speed adjustment to the previous target speed. In some embodiments, step 612 may include providing the speed adjustment to a speed controller of the construction machinery (e.g., speed controller 142, 242, 342), which may employ various control mechanisms to drive the actual speed of the construction machinery toward the target speed. In some embodiments, one or more control signals (e.g., control signal 278) may be generated and sent to one or more actuators of the construction machinery (e.g., actuator 256) to adjust the speed of the construction machinery by speed adjustment.

[0069] Figure 7 An example computer system 700 including various hardware elements is illustrated according to some embodiments of the present disclosure. The computer system 700 may be incorporated into or integrated with the devices described herein, and / or may be configured to perform some or all of the steps of the methods provided by various embodiments. For example, in various embodiments, the computer system 700 may be incorporated into control units 160, 260 and / or may be configured to perform method 600. It should be noted that... Figure 7 This only means providing a general illustration of the various components, any or all of which can be used appropriately. Therefore, Figure 7 It broadly illustrates how individual system components can be implemented in a relatively separate or relatively more integrated manner.

[0070] In the example shown, computer system 700 includes communication medium 702, one or more processors 704, one or more input devices 706, one or more output devices 708, communication subsystem 710, and one or more memory devices 712. Computer system 700 can be implemented using various hardware implementations and embedded system technologies. For example, one or more elements of computer system 700 can be implemented as a field-programmable gate array (FPGA), such as those made by... or Commercially available devices, System-on-a-Chip (SoC), Application-Specific Integrated Circuit (ASIC), Application-Specific Standard Product (ASSP), microcontrollers and / or hybrid devices such as SoC FPGA, and other possibilities.

[0071] Various hardware components of the computer system 700 can be coupled via a communication medium 702. Although the communication medium 702 is shown as a single connection for clarity, it should be understood that the communication medium 702 can include various quantities and types of communication media for transmitting data between hardware components. For example, the communication medium 702 can include one or more wires (e.g., conductive traces, paths or leads on a printed circuit board (PCB) or integrated circuit (IC), microstrip, stripline, coaxial cable), one or more optical waveguides (e.g., optical fiber, stripline waveguide), and / or one or more wireless connections or links (e.g., infrared wireless communication, radio communication, microwave wireless communication), and other possibilities.

[0072] In some embodiments, the communication medium 702 may include one or more buses connecting pins of hardware components of the computer system 700. For example, the communication medium 702 may include a bus connecting the processor 704 to the main memory 714, referred to as the system bus, and a bus connecting the main memory 714 to an input device 706 or an output device 708, referred to as the expansion bus. The system bus may consist of several components, including an address bus, a data bus, and a control bus. The address bus can transfer memory addresses from the processor 704 to address bus circuitry associated with the main memory 714, so that the data bus can access the data contained at the memory address and transfer it back to the processor 704. The control bus can carry commands from the processor 704 and return status signals from the main memory 714. Each bus may include multiple lines for carrying multi-bit information, and each bus may support serial or parallel data transmission.

[0073] Processor 704 may include one or more central processing units (CPUs), graphics processing units (GPUs), neural network processors or accelerators, digital signal processors (DSPs), and / or the like. The CPU may take the form of a microprocessor, fabricated on a single IC chip with a metal-oxide-semiconductor field-effect transistor (MOSFET) structure. Processor 704 may include one or more multi-core processors, where each core can simultaneously read and execute program instructions with other cores.

[0074] Input device 706 may include one or more of a variety of user input devices, such as a mouse, keyboard, microphone, and various sensor input devices, such as image capture devices, pressure sensors (e.g., barometers, tactile sensors), temperature sensors (e.g., thermometers, thermocouples, thermistors), motion sensors (e.g., accelerometers, gyroscopes, tilt sensors), light sensors (e.g., photodiodes, photodetectors, charge-coupled devices), and / or the like. Input device 706 may also include means for reading and / or receiving removable storage devices or other removable media. Such removable media may include optical discs (e.g., Blu-ray discs, DVDs, CDs), memory cards (e.g., compressed flash memory cards, Secure Digital (SD) cards, Memory Sticks), floppy disks, Universal Serial Bus (USB) flash drives, external hard disk drives (HDDs) or solid-state drives (SSDs), etc.

[0075] Output device 708 may include one or more of a variety of devices for converting information into a human-readable form, such as, but not limited to, display devices, speakers, printers, and / or the like. Output device 708 may also include devices for writing to removable storage devices or other removable media, such as those described with reference to input device 706. Output device 708 may also include various actuators for causing physical movement of one or more components. Such actuators may be hydraulic, pneumatic, or electric, and may be controlled by signals provided by computer system 700.

[0076] The communication subsystem 710 may include hardware components for connecting the computer system 700 to systems or devices located outside the computer system 700, such as via a computer network. In various embodiments, the communication subsystem 710 may include wired communication devices (e.g., a universal asynchronous receiver-transmitter (UART)), optical communication devices (e.g., an optical modem), infrared communication devices, and radio communication devices (e.g., a wireless network interface controller) coupled to one or more input / output ports. Devices, IEEE 802.11 devices, Wi-Fi devices, Wi-Max devices, cellular devices, and other possibilities.

[0077] Memory device 712 may include various data storage devices of computer system 700. For example, memory device 712 may include various types of computer memory with varying response times and capacities, ranging from faster response times and lower capacity memories, such as processor registers and caches (e.g., L0, L1, L2), to medium response times and medium capacity memories, such as random access memory, to lower response times and lower capacity memories, such as solid-state drives and hard disk drives. Although processor 704 and memory device 712 are shown as separate components, it should be understood that processor 704 may include different levels of on-processor memory, such as processor registers and caches that may be used by a single processor or shared among multiple processors.

[0078] Memory device 712 may include main memory 714, which can be directly accessed by processor 704 via the memory bus of communication medium 702. For example, processor 704 can continuously read and execute instructions stored in main memory 714. Therefore, as Figure 7As shown, various software elements can be loaded into main memory 714 for read and execution by processor 704. Typically, main memory 714 is volatile memory, which loses all data when power is off, and therefore requires power to retain the stored data. Main memory 714 may further include a small portion of non-volatile memory containing software (e.g., firmware, such as BIOS) used to read other software stored in memory device 712 into main memory 714. In some embodiments, the volatile memory of main memory 714 is implemented as random access memory (RAM), such as dynamic RAM (DRAM), and the non-volatile memory of main memory 714 is implemented as read-only memory (ROM), such as flash memory, erasable programmable read-only memory (EPROM), or electrically erasable programmable read-only memory (EEPROM).

[0079] Computer system 700 may include software elements, shown as currently residing within main memory 714, which may include an operating system, device drivers, firmware, compilers, and / or other code, such as one or more application programs, which may include computer programs provided by various embodiments of this disclosure. By way of example only, one or more steps described with respect to any of the methods discussed above may be implemented as instructions 716 executable by computer system 700. In one example, such instructions 716 may be received by computer system 700 using communication subsystem 710 (e.g., via a wireless or wired signal carrying instructions 716), carried by communication medium 702 to memory device 712, stored in memory device 712, read into main memory 714, and executed by processor 704 to perform one or more steps of the described method. In another example, instructions 716 may be received by computer system 700 using input device 706 (e.g., via a reader of a removable medium), carried by communication medium 702 to memory device 712, stored in memory device 712, read into main memory 714, and executed by processor 704 to perform one or more steps of the described method.

[0080] In some embodiments of this disclosure, instruction 716 is stored on a computer-readable storage medium or simply a computer-readable medium. Such a computer-readable medium may be non-transitory and therefore may be referred to as a non-transitory computer-readable medium. In some cases, the non-transitory computer-readable medium may be incorporated into computer system 700. For example, the non-transitory computer-readable medium may be one of the memory devices 712, such as... Figure 7As shown, instruction 716 is stored within memory device 712. In some cases, the non-transitory computer-readable medium may be separable from computer system 700. In one example, the non-transitory computer-readable medium may be a removable medium provided to input device 706, such as those media described with reference to input device 706, like... Figure 7 As shown, instruction 716 is provided to input device 706. In another example, the non-transitory computer-readable medium may be a component of a remote electronic device (e.g., a mobile phone) that can wirelessly transmit data signals carrying instruction 716 to computer system 700 using communication subsystem 716, such as... Figure 7 As shown in the figure, instruction 716 is provided to the communication subsystem 710.

[0081] Instruction 716 may take any suitable form that can be read and / or executed by computer system 700. For example, instruction 716 may be source code (written in a human-readable programming language such as Java, C, C++, C#, Python), object code, assembly language, machine code, microcode, executable code, and / or the like. In one example, instruction 716 is provided to computer system 700 in the form of source code, and a compiler is used to translate instruction 716 from the source code into machine code, which can then be read into main memory 714 for execution by processor 704. As another example, instruction 716 is provided to computer system 700 in the form of an executable file with machine code, which can be immediately read into main memory 714 for execution by processor 704. In various examples, instruction 716 may be provided to computer system 700 in encrypted or unencrypted form, compressed or uncompressed form, as an installation package for broader software deployment, or as initialization, etc.

[0082] In one aspect of this disclosure, a system (e.g., computer system 700) is provided to perform methods according to various embodiments of this disclosure. For example, some embodiments may include a system comprising one or more processors (e.g., processor 704) communicatively coupled to a non-transitory computer-readable medium (e.g., memory device 712 or main memory 714). The non-transitory computer-readable medium may have instructions stored therein (e.g., instruction 716) that, when executed by the one or more processors, cause the one or more processors to perform the methods described in the various embodiments.

[0083] In another aspect of this disclosure, a computer program product including instructions (e.g., instruction 716) is provided to perform methods according to various embodiments of this disclosure. The computer program product may be tangibly embodied in a non-transitory computer-readable medium (e.g., memory device 712 or main memory 714). The instructions may be configured to cause one or more processors (e.g., processor 704) to perform the methods described in the various embodiments.

[0084] In another aspect of this disclosure, a non-transitory computer-readable medium (e.g., memory device 712 or main memory 714) is provided. The non-transitory computer-readable medium may have instructions stored therein (e.g., instruction 716) that, when executed by one or more processors (e.g., processor 704), cause one or more processors to perform the methods described in the various embodiments.

[0085] The methods, systems, and apparatus discussed above are examples. Various configurations may appropriately omit, substitute, or add various processes or components. For example, in alternative configurations, the method may be performed in a different order than described, and / or various stages may be added, omitted, and / or combined. Furthermore, features described with respect to certain configurations can be combined into various other configurations. Different aspects and elements of the configurations can be combined in a similar manner. Moreover, technology is evolving; therefore, many elements are examples and do not limit the scope of this disclosure or the claims.

[0086] Specific details are provided in the description to offer a thorough understanding of exemplary configurations, including implementations. However, configurations can be practiced without these specific details. For example, well-known circuits, processes, algorithms, structures, and techniques have been shown without unnecessary detail to avoid obscuring the configurations. This specification provides only exemplary configurations and does not limit the scope, applicability, or configuration of the claims. Rather, the foregoing description of the configurations will provide those skilled in the art with possible descriptions for implementing the described techniques. Various changes can be made to the function and arrangement of the elements without departing from the spirit or scope of this disclosure.

[0087] Several example configurations have been described, and various modifications, alternative structures, and equivalents may be used without departing from the spirit of this disclosure. For example, the aforementioned elements may be components of a larger system, in which other rules may take precedence over or otherwise modify the application of the technology. Furthermore, multiple steps may be taken before, during, or after considering the aforementioned elements. Therefore, the above description does not limit the scope of the claims.

[0088] As used herein and in the appended claims, unless the context clearly indicates otherwise, the singular forms “a,” “an,” and “the” include plural references. Thus, for example, a reference to “user” includes a reference to one or more such users, and a reference to “processor” includes a reference to one or more processors and their equivalents known to those skilled in the art, and so on.

[0089] Furthermore, when the terms “comprise,” “comprising,” “contains,” “containing,” “include,” “including,” and “includes” are used in this specification and the appended claims, they are intended to specify the presence of the stated feature, integer, component, or step, but do not preclude the presence or addition of one or more other features, integers, components, steps, actions, or groups.

[0090] It should also be understood that the examples and embodiments described herein are for illustrative purposes only and will suggest various modifications or changes thereto to those skilled in the art, and will be included within the spirit and scope of this application and the scope of the appended claims.

Claims

1. A computer-implemented method for controlling the speed of construction machinery operating on a construction site, the method comprising: While the construction machinery is moving forward or backward at the speed, sensor data is captured using one or more sensors of the construction machinery; The actual surface of the construction site is estimated based on the sensor data captured using the one or more sensors. Calculate the deviation between the target surface and the actual surface; Calculate the actual performance metric based on the aforementioned deviation; The actual performance metric is compared with the target performance metric to determine a speed adjustment, wherein the speed adjustment is determined to reduce the error between the actual performance metric and the target performance metric; and Adjusting the speed of the construction machinery by means of the speed adjustment, wherein adjusting the speed of the construction machinery by means of the speed adjustment includes: providing the speed adjustment to the speed controller of the construction machinery.

2. The computer-implemented method according to claim 1, wherein, The deviation includes multiple distances between the target surface and the actual surface.

3. The computer-implemented method according to claim 1, wherein, The one or more sensors include inertial sensors mounted on tools of the construction machinery.

4. The computer-implemented method according to claim 3, wherein, The inertial sensor is configured to detect the vertical movement of the tool while the construction machinery is moving.

5. The computer-implemented method according to claim 1, wherein, Comparing the actual performance metric with the target performance metric to determine the speed adjustment includes: Calculate the error between the actual performance metric and the target performance metric; and The speed adjustment is determined based on the error.

6. The computer-implemented method according to claim 1, wherein, The actual performance metric is an increasing function of the deviation.

7. The computer-implemented method according to claim 6, wherein: If the actual performance metric is less than the target performance metric, then the speed is adjusted to positive. as well as If the actual performance metric is greater than the target performance metric, then the speed adjustment is negative.

8. The computer-implemented method according to claim 1, wherein, The actual performance metric is a decreasing function of the deviation.

9. The computer-implemented method according to claim 8, wherein: If the actual performance metric is less than the target performance metric, then the speed adjustment is negative; as well as If the actual performance metric is greater than the target performance metric, then the speed adjustment is positive.

10. A non-transitory computer-readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to perform operations for controlling the speed of construction machinery operating on a construction site, the operations comprising: While the construction machinery is moving forward or backward at the speed, sensor data is captured using one or more sensors of the construction machinery; The actual surface of the construction site is estimated based on the sensor data captured using the one or more sensors. Calculate the deviation between the target surface and the actual surface; Calculate the actual performance metric based on the aforementioned deviation; The actual performance metric is compared with the target performance metric to determine a speed adjustment, wherein the speed adjustment is determined to reduce the error between the actual performance metric and the target performance metric; and Adjusting the speed of the construction machinery by means of the speed adjustment, wherein adjusting the speed of the construction machinery by means of the speed adjustment includes: providing the speed adjustment to the speed controller of the construction machinery.

11. The non-transitory computer-readable medium according to claim 10, wherein, The deviation includes multiple distances between the target surface and the actual surface.

12. The non-transitory computer-readable medium according to claim 10, wherein, The one or more sensors include inertial sensors mounted on tools of the construction machinery.

13. The non-transitory computer-readable medium according to claim 12, wherein, The inertial sensor is configured to detect the vertical movement of the tool while the construction machinery is moving.

14. A system comprising: One or more processors; as well as A computer-readable medium including instructions that, when executed by one or more processors, cause the one or more processors to perform operations, the operations including: While the construction machinery is moving forward or backward at a speed, one or more sensors of the construction machinery are used to capture sensor data; The actual surface of the construction site is estimated based on the sensor data captured using the one or more sensors. Calculate the deviation between the target surface and the actual surface; Calculate the actual performance metric based on the aforementioned deviation; The actual performance metric is compared with the target performance metric to determine a speed adjustment, wherein the speed adjustment is determined to reduce the error between the actual performance metric and the target performance metric; and Adjusting the speed of the construction machinery by means of the speed adjustment, wherein adjusting the speed of the construction machinery by means of the speed adjustment includes: providing the speed adjustment to the speed controller of the construction machinery.

15. The system according to claim 14, wherein, The deviation includes multiple distances between the target surface and the actual surface.

16. The system according to claim 14, wherein, The one or more sensors include inertial sensors mounted on tools of the construction machinery.

17. The system according to claim 16, wherein, The inertial sensor is configured to detect the vertical movement of the tool while the construction machinery is moving.

Citation Information

Patent Citations

  • Control system for work vehicle, method, and work vehicle

    US20200131740A1

  • Worksite management system

    WO2019115016A1