Movable mechanical control system
By introducing a surface-following logic system and a control signal generator logic system into a hydraulic excavator, mobile mechanical control with improved operational accuracy and safety is achieved without increasing costs, thus addressing the shortcomings of existing hydraulic excavators in terms of operational accuracy and safety.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- DEERE & CO
- Filing Date
- 2021-06-22
- Publication Date
- 2026-04-28
AI Technical Summary
There is room for improvement in the operational precision and safety of existing hydraulic excavators, especially in achieving precise operation control without significantly increasing costs.
A movable mechanical system is adopted, which receives operator input through a user interface mechanism, uses a surface following logic system to identify the movement of the tool relative to the control surface, and generates control signals through a control signal generator logic system to control the movement of the controllable linkage device to achieve precise operation of the tool.
It improves the operational accuracy and safety of hydraulic excavators, simplifies the operation process, reduces the skill requirements for operators, and decreases the possibility of misoperation.
Smart Images

Figure CN113969602B_ABST
Abstract
Description
Technical Field
[0001] This manual relates to excavators used in heavy construction projects. More specifically, this manual relates to the control modes in such excavators. Background Technology
[0002] Hydraulic excavators are heavy construction equipment that typically weigh between 3,500 and 200,000 pounds. These excavators have a boom, stick, bucket (or attachments), and a cab on a rotating platform, sometimes referred to as a "house." A set of tracks is located below the house and provides movement for the hydraulic excavator.
[0003] Hydraulic excavators are used in a wide range of operations, including digging holes or trenches, demolition, placing or lifting large objects, and landscaping. Precise operation of the excavator is crucial for providing efficient operation and safety. Providing a system and method that improves the operational accuracy of excavators without significantly increasing costs would benefit the technology of hydraulic excavators.
[0004] The above discussion is provided to provide general background information only and is not intended to help determine the scope of the subject matter for which protection is sought. Summary of the Invention
[0005] A movable machine includes a tool connected to the movable machine via one or more controllable linkages. The movable machine includes a user interface mechanism configured to receive input from an operator. The movable machine includes one or more controllers configured to implement a surface-following logic system configured to receive input from the user interface mechanism and, based on the input, identify a desired movement of the tool relative to a control surface. The one or more controllers are configured to implement a control signal generator logic system that generates control signals based on the identified movement to control the one or more controllable linkages.
[0006] This summary is provided to introduce some concepts in a simplified form, which will be further described in the detailed description below. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to help determine the scope of the claimed subject matter. The claimed subject matter is not limited to embodiments that address any or all of the deficiencies pointed out in the background art. Attached Figure Description
[0007] Figure 1 This is a schematic diagram illustrating an exemplary movable machine.
[0008] Figure 2 This is a block diagram illustrating an exemplary movable machine.
[0009] Figure 3 This is a flowchart illustrating an exemplary method for controlling a movable machine.
[0010] Figures 4A to 4B This is a diagram illustrating an exemplary control mode for a movable machine.
[0011] Figure 5 This is a block diagram illustrating an exemplary computing system. Detailed Implementation
[0012] Figure 1 This is a schematic diagram illustrating an exemplary machine 100 as an excavator. The excavator or machine 100 includes a chamber 102 having an operator's cab 104 rotatably disposed above a track section 106. The chamber 102 can rotate 360 degrees about the track section 106 via a rotatable coupling 108. A boom 110 extends from the chamber 102 and can be raised or lowered in the direction indicated by arrow 112 based on the actuation of a hydraulic cylinder 114. A stick or boom 116 is pivotally connected to the boom 110 via a linkage pin 118 and moves in the direction of arrow 120 based on the actuation of a hydraulic cylinder 122. A bucket or tool 124 is pivotally connected to the stick 116 at a linkage pin 126 and can rotate about the linkage pin 126 in the direction of arrow 128 based on the actuation of a hydraulic cylinder 130. In some examples, the tool 124 may also rotate in other directions. For example, a tilting rotor or other linkage may be provided for additional rotation of tool 124 (or other linkage of machine 100).
[0013] The universal control mode is the ISO control mode. In ISO control mode, the left joystick controls the rotation (left and right) of the chamber 102 around the rotatable coupling 108 and the extension or retraction (e.g., opening and closing, indicated by arrow 120) of the boom 110, while the right joystick controls the raising and lowering (e.g., up and down, indicated by arrow 112) of the boom 110 and the coiling (e.g., closing and dumping, indicated by arrow 128) of the bucket 124. Essentially, due to the pivoting connection of the linkage around the linkage pin, the movement of the linkage will be circular around the linkage pin. To move the bucket 124 along a non-circular path, the operator must use the joysticks simultaneously in multiple directions.
[0014] In the alternative control mode, actuation of the joystick along one axis (through control of the bucket 124 and other linkages) moves the bucket 124 in a first direction parallel to surface 131 (e.g., the X-axis relative to surface 131 and away from chamber 102). Another actuation of the joystick along another axis (through control of the bucket 124 and other linkages) moves the bucket 124 in a second direction parallel to surface 131 and perpendicular to the first direction (e.g., the Y-axis relative to surface 131 and perpendicular to boom 110). Examples of parallel movement are indicated by arrows 132-1, 132-2, 132-3, and 132-4. This movement of the bucket 124 parallel or substantially parallel to surface 131 can be referred to as the feed rate. Actuation of one of the joysticks along another axis actuates the bucket 124 in a direction perpendicular or substantially perpendicular to surface 131 (e.g., the normal to surface 131). Examples of movement perpendicular to surface 131 are indicated by arrows 133-1, 133-2, and 133-2. It can be seen that the vertical movement depends on the position of bucket 124 along or along a path parallel to control surface 131. Finally, an actuation lever on another axis controls the angle of orientation of bucket 124 relative to surface 131. For example, bucket 124 may be coiled so that it is cut into or extended into surface 131, thereby causing the cutting edge of bucket 124 to scrape or level surface 131. As shown, machine 100 is an excavator; however, the system and method described herein can also be used on other types of machines.
[0015] Figure 2 This is a block diagram illustrating an exemplary machine 100 in an exemplary environment 200. Environment 200 includes machine 100, remote system 201, operator 203, and may also include other items, as shown in block 205. Remote system 201 may include various systems, such as other mobile machinery, servers, computers, mobile electronic devices, etc. Remote system 201 can communicate with machine 100 and other components via various network protocols (e.g., Bluetooth, Wi-Fi, cellular data, LAN, WAN, etc.). Certain blocks representing sub-components of other components may be arranged wholly or partially in other locations within environment 200.
[0016] Machine 100 includes a controller and / or processor 202, a user interface device 210, a data storage device 212, a sensor 220, a controllable subsystem 240, and a control system 250, and may also include other items as shown in block 234. The controller and processor 202 may include processors, servers, and other hardware, software, and combinations thereof. The controller and processor 202 implements the logic components of the control system 250.
[0017] User interface device 210 includes equipment for operator 203 to interact with machine 100. For example, interface device 210 may include a joystick. Of course, user interface device 210 may also include other items such as a touch screen, pedals, steering wheel, handheld controller, etc. In some examples, user interface device 210 is arranged on remote system 201 as a mobile device.
[0018] The controllable subsystem 240 includes actuator 242, a rotatable chamber 102, a track section 106, and a linkage 109, and may also include other items as shown in box 214. The rotatable chamber 102 rotates about the track section 106. The rotatable chamber 102 includes an operator's cab 104 in which an operator 203 sits and controls the machine 100. The rotatable chamber 102 may also include other items as shown in box 105. For example, the rotatable chamber 102 includes an engine that powers the machine 100. The track section 106 includes tracks that propel the machine 100 around the work site. The linkage 109 includes a boom 110, a stick 116, and a tool 124, and may also include other items as shown in box 125. The linkage 109 allows the machine 100 to perform various controls over the working environment. As shown, the tool 124 is a bucket. However, the tool 124 may also include various different attachments, such as a baler.
[0019] Machine 100 includes a controller 202, a user interface device 210, a data storage device 212, a sensor 220, a sensor position determination logic system 230, a controllable subsystem 240, and a control system 250, and may also include other items, as shown in box 234. Illustratively, these components are part of machine 100; however, some of the boxes shown may be located remotely from machine 100 (e.g., on a remote server, on a different machine, etc.).
[0020] Controller 202 is configured to receive one or more inputs and execute a series of programming steps to generate one or more suitable machine outputs for controlling the operation of machine 100 (e.g., implementing various logic components). Controller 202 may include one or more microprocessors, or even one or more suitable general-purpose computing environments, as described in more detail below. Controller 202 is connected to user interface device 210 to receive machine control inputs from an operator in the cab. Examples of operator inputs include joystick movements, pedal movements, machine control settings, touchscreen inputs, etc. Furthermore, user interface device 210 includes one or more operator displays to provide the operator with information about excavator operation.
[0021] Data memory 212 stores various information for the operation of machine 100. As shown, data memory 212 includes actuator data 213, machine geometry 214, and binding 215, but may also include other items, as shown in box 216. Actuator data 213 includes various information about the actuator 242 of the actuated controllable subsystem 240. For example, actuator data 213 includes data indicating the maximum torque, acceleration, speed, etc., of the actuator 242 actuating the controllable subsystem 240. Since the characteristics of actuator 242 may vary based on the attitude of machine 100, actuator data 213 may also include data specific to a particular attitude or other specific data. For example, when boom 110 is lowered and stick 116 is extended, the maximum vertical acceleration of bucket 124 is less than when boom 110 is raised and stick 116 is retracted halfway.
[0022] The geometry data 214 includes the dimensions and pivot points of each controllable subsystem 240 of the machine 100. For example, the machine geometry 214 includes data indicating the distance between the first link pin of the boom 110 and the second link pin of the boom 110. In some examples, the geometry data 214 includes three-dimensional models of the various sub-components of the machine 100.
[0023] The binding data 215 includes data indicating control commands corresponding to operator inputs on various interface devices 210. For example, in standard control mode, movement of the joystick along an axis raises and lowers the boom 110. In optional control mode, movement of the joystick along an axis actuates various linkages 109 to move the tool 124 parallel to the control path.
[0024] Sensor 220 includes an inertial measurement unit (IMU), linkage sensors, and may also include various other sensors. The IMU sensors can be positioned at various locations on machine 100. For example, IMU sensors can be placed on the rotatable chamber 102, boom 110, boom 116, and tool 124. IMU sensors are capable of sensing acceleration, direction, rotation, displacement, etc. The IMU sensors are arranged on these and other components of machine 100 to precisely control machine 100. Sensor 220 also includes linkage sensors, which may include strain gauges, linear displacement sensors, potentiometers, etc. Linkage sensors can sense the force applied to the controllable subsystem 240 and / or the direction of the controllable subsystem through the displacement of their actuators. For example, boom 110 is typically actuated by a hydraulic cylinder, and the displacement of the piston in the cylinder will be related to the position of boom 110 relative to rotatable chamber 102. In another example, a potentiometer may be located near the connecting pin between boom 110 and boom 116. The potentiometer will output a signal indicating the angle between the boom 110 and the stick 116.
[0025] The control system 250 includes a mode selection logic system 252, a control surface generation logic system 254, a control binding generator logic system 255, a control signal generator logic system 256, a surface following logic system 258, and may also include other items, as shown in box 260.
[0026] The mode selection logic system 252 allows the operator to place the machine 100 into various control modes. These control modes enable the user interface device 210 to be bound to different control protocols. For example, in the standard ISO or SAE control modes disclosed above, the joystick user interface device 210 controls actuators connected to the boom 110, stick 116, and bucket 124. In the surface-following control mode, the user interface device 210 controls the machine 100 relative to a control surface. For example, actuating the joystick causes the control system 250 to control the machine 100 such that a portion of the bucket 124 follows a control path along the control surface. Or, for example, actuating the user interface device 210 causes the control system 250 to control the machine 100 such that a portion of the bucket 124 moves away from the control surface.
[0027] The control surface generation logic system 254 generates a control surface. The control surface is typically a target surface or a desired surface; however, for example, the control surface can be other types of surfaces. The control binding generator logic system 256 binds the user interface device 210 to control signals and stores this binding as binding data 215 in the data memory 212.
[0028] The control signal generator logic system 256 generates a control signal and sends the control signal to the actuator 242 to actuate the components of the machine 100.
[0029] The surface following logic system 258 includes a linkage control logic system 264, a normal determination logic system 265, a linkage scaling logic system 266, a tool control logic system 268, and a tool stabilization logic system 269, and may also include other items as shown in box 270. The linkage control logic system 264 calculates the movement of the linkage 109 to maintain the tool 124 parallel or perpendicular / away from the control surface. For example, in order for the tool 124 to move along a flat control path toward chamber 102, the linkage control logic system 264 determines that the boom 110 must be raised and the stick 116 retracted.
[0030] The normal determination logic system 265 calculates the normal relative to the control path / control surface at a given time. The normal can be a true normal (e.g., a direction perpendicular to the ramp of the control path at a given point along the control path) or a non-traditional normal, which includes directions that intersect the control path / control surface only at a certain point. In some examples, the axis of gravity or the machine's Z-axis (e.g., the axis around which chamber 102 rotates) can be used as the normal. In this case, if the control path / control surface has a vertical portion or is nearly vertical, the normal can be modified to be perpendicular or nearly perpendicular to the axis of gravity or the machine's Z-axis.
[0031] The linkage scaling logic system 266 determines the scaling ratio of the movement speed of each linkage 109 relative to each other. For example, the boom 110 is typically not actuated as quickly as the stick 116 and tool 124. Therefore, when the boom 110 and another linkage 109 move simultaneously, the movement speed of the smaller linkage must be proportional to the actuation speed of the boom 110. When the actuator's flow and power limits are reached, the linkage scaling logic system 266 can scale or ramp back the command. For example, an operator may be operating a joystick at full stroke, but the required actuator (across multiple linkages) may not be able to reach full movement speed and maintain the control path; therefore, the maximum speed is scaled to the maximum speed of the slowest actuator, and the controlled tool follows the control path at its new, scaled maximum speed. The linkage scaling logic system 266 can also scale commands across dimensions. For example, if a parallel command and a vertical command are issued simultaneously, but only one of these commands cannot be completed at the commanded speed, the movement in both dimensions can be scaled (e.g., proportional to the user-commanded speed) to the limited speed.
[0032] The tool control logic system 268 controls the orientation of tool 124 relative to a control surface (or a current control path parallel or substantially parallel to the control surface). The movement of tool 124 is primarily relative to the control surface; however, the angle of tool 124 can be adjusted relative to the surface. This is useful when tool 124 is a bucket and operations such as cutting, scraping, or backfilling are required. All these operations will require different angles of tool 124 relative to the control surface. As tool control logic system 268 rotates tool 124, linkage control logic system 264 adjusts other linkages 109 so that the operating portion of tool 124 is positioned on the control path (e.g., as the bucket rotates, linkage control logic system 264 holds the cutting edge of bucket 124 on the control path).
[0033] When other parts of machine 100 move, tool stabilization logic system 269 stabilizes tool 124. For example, tool stabilization logic system 269 holds the operating point of the bucket on the control path / surface when machine 100 moves. Tool stabilization logic system 269 can also maintain the angle of tool 124 relative to the control path / surface. In some examples, tool stabilization logic system 269 holds the operating point of tool 124 in space when tool 124 is rotated, for example, by controlling other linkages 109 and / or rotation chamber 102.
[0034] Figure 3 This is a flowchart illustrating an exemplary operation 300 of controlling machine 100. Operation 300 begins at block 310, where the operator places machine 100 into a surface-following control mode. As shown in block 312, the operator can manually place machine 100 into the control mode. For example, by actuating a user interface mechanism corresponding to the surface-following control mode on a touchscreen. As shown in block 314, machine 100 can automatically enter the surface-following control mode. For example, machine 100 defaults to this control mode when the operator loads a target surface. As shown in block 315, machine 100 can also enter the surface-following control mode in other ways.
[0035] Operation 300 is performed at box 320, where the desired surface is acquired. This surface can be received from or generated from other sources. As shown in box 322, the desired surface can be received from a workplace description server, or the operator can upload a description to machine 100. As shown in box 324, the desired surface can be generated automatically. For example, a flat surface at a given elevation is input, and a plane is generated. Or, for example, certain dimensions of an underground excavation are given, and the surface is generated as a topless rectangular prism. As shown in box 326, the surface can also be acquired in other ways.
[0036] Operation 300 is performed in box 330, where a coordinate system is generated based on the surface from box 320. As shown in box 332, a set of axes parallel to the surface can be generated. As shown in box 334, a set of control axes perpendicular to the surface is defined. In some examples, perpendicular to the surface includes axes that are nearly perpendicular or simply axes that are far from the surface. For example, a control surface with vertical axes having a slope (inclination greater than 0 degrees or less than 90 degrees) could correspond to the axis of gravity or the machine's Z-axis, rather than the surface normal. The aforementioned axes do not necessarily have to be linear like conventional axes. As shown in box 336, the axes can be smoothed. For example, a sharp intersection is formed where two planes of the control surface intersect, and technically, there is no normal at this intersection. Therefore, the edges can be smoothed or the normal at the edges can be calculated as the average between the intersecting planes. The coordinate system can also be generated in other ways, as shown in box 338.
[0037] Operation 300 is performed at box 340, where controls are bound to machine controls. As shown in box 342, a set of user interface controls is bound to feed movements (e.g., movements parallel to / nearly parallel to the control surface). As shown in box 344, another set of user interface controls is bound to normal movements (e.g., movements perpendicular to / away from the control surface). As shown in box 345, some user interface controls may be bound to other movements. For example, a set of user interface controls may be bound to one or more rotations of the tool relative to the control surface.
[0038] Operation 300 is performed at box 350, where user input is received at one or more user interface mechanisms in box 340. User input may include data indicating changes in the tool relative to the control surface. As shown in box 352, the one or more user interface mechanisms include one or more joysticks. For example, there may be one joystick for the operator's left hand and another joystick for the operator's right hand. As shown in box 354, the one or more user interface mechanisms include one or more pedals. For example, there may be one pedal for the operator's left foot and another pedal for the operator's right foot. Of course, other user interface mechanisms, as shown in box 356, may also be used.
[0039] Operation 300 is performed at box 360, where tool change commands are converted into actuator actuation commands. As shown in box 362, change commands corresponding to feed can be converted into actuator commands. For example, a change parallel to the surface toward machine 100 may include raising boom 110 and retracting stick 116. As shown in box 363, change commands corresponding to normal translation can be converted into actuator commands. For example, a change upward and away from the surface may include raising boom 110 and extending stick 116. As shown in box 366, change commands corresponding to tool orientation can be converted into actuator commands. For example, a change in tool orientation may include coiling stick 124. As shown in box 368, change commands may require scaling the speeds of individual actuators. For example, the actuator of stick 116 at full speed may exceed the actuator of boom 110 at full speed, causing the tool to deviate from its intended path. Therefore, the actuator of the stick 116 can be scaled down to match the speed of the actuator of the boom 110. Of course, the command can also be converted into a linkage command in other ways, as shown in box 369.
[0040] Operation 300 is performed at box 370, where a linkage command is sent to the linkage actuator. As shown in box 372, the signal can be electrical. For example, the signal is an electrical signal sent to a hydraulic valve controller. As shown in box 374, the signal can be mechanical. For example, a lever mechanically opens a hydraulic valve. As shown in box 376, linkage commands can also be sent in other ways. For example, a combination of electrical and machine signals can be sent to the linkage actuator.
[0041] Operation 300 is performed at box 380, where it is determined whether there are any further controls to be completed. If not, operation 300 ends. If there are other controls to be completed, operation 300 is performed again at box 350.
[0042] Figure 4A This is an illustration of an exemplary machine 100 executing control commands. Two joysticks, a left joystick 422 and a right joystick 420, are shown in the lower left corner. The operator uses these joysticks 420, 422 to control various movements of the machine 100. As shown, the bucket 124 is located on a control path 402 that is parallel to and offset from a control surface 400. As shown, the operating point / line / plane 408 of the bucket 124 follows the control path 402. The operating point 408 of the bucket 124 is the cutting edge of the bucket 124 and is part of the bucket 124 that is typically used by the operator to complete the work. In examples where the tool is not a bucket or the bucket is used in other ways, the operating point 408 may be located at different parts of the tool. As shown, the bucket 124 follows the control path at a controlled angle 409 (e.g., the apex of angle 409 is the operating point). This angle can be controlled to change the function of the bucket 124 (e.g., from digging to scraping or dumping). At some transition points along control path 402, angle 409 may be unsustainable. In such cases, angle 409 may be changed at these points to prevent another part of bucket 124 (e.g., the part other than operating point 408) from affecting the surface and actually deviating from control path 402 because a part of bucket 124 may displace ground material.
[0043] Control surface 400 is a visual representation of a 3-D mesh and does indeed represent a physical surface. However, in some examples, it can correspond to a physical surface or a desired product surface. Control path 402 can be substantially parallel to control surface 400. For example, transition 440 of control surface 400 has been smoothed to smooth transition 442 of control path 402. Control path 402 is offset from line 404 by a distance.
[0044] In one example, movement of the joystick 422 along directions 430 and 426 causes the bucket 124 and the accompanying linkage to move left or right (e.g., move out). Figure 4A The control joystick 422 is a 2D plane and parallel to the control surface 400. Movement of the joystick 422 along directions 424 and 428 causes the bucket 124 to move along the control path 402 (e.g., toward or away from the machine 100). Movement of the joystick 420 along directions 434 and 438 causes the bucket 124 to rotate (e.g., around an operating point 408, which may be fixed to the control path 402 or fixed in any direction as the bucket 124 rotates). Movement of the joystick 420 along directions 432 and 436 moves the bucket 124 toward or away from the control surface 400. In one example, away from the control surface 400 is directly perpendicular to the control path 400, as shown by line 404. In another example, away from the control surface 400 is mapped to the axis of gravity (where the path has some horizontal component), the Z-axis of the machine 100, or some other direction, as shown by line 406.
[0045] Figure 4B This is an illustration of an exemplary machine 100 that executes control commands. Figure 4B The components are similar to Figure 4A Those in the [section], and similar parts are numbered similarly. However, in [the section]... Figure 4B In this configuration, control surface 450 replaces control surface 400. In this case, the control path and control surface 450 are identical because operating point 408 is on and does not deviate from surface 450. Bucket 124 is at an angle 467 relative to surface 450. Similar movements of levers 420 and 422 can move operating point 408 along control surface 450, rotate bucket 124 about operating point 408, and move bucket 124 away from control surface 450. When operating point 408 is actuated to limit point 460, angle 467 must be adjusted; otherwise, bucket 124 will hit the bottom of the trench.
[0046] The current discussion has mentioned processors and servers. In one embodiment, the processor and server include a computer processor having associated memory and timing circuitry, not shown separately. The processor and server are functional components of the system or device to which they belong and are activated by the system or device, and perform the functions of other components or items in those systems.
[0047] Note that the above discussion has described various different systems, components, and / or logical systems. It should be understood that these systems, components, and / or logical systems can consist of hardware items (e.g., processors and associated memory or other processing units, some of which are described below) that perform the functions associated with those systems, components, and logical systems. Additionally, as described below, systems, components, and / or logical systems can consist of software loaded into memory and subsequently executed by a processor, server, or other computing unit. Systems, components, and / or logical systems can also include different combinations of hardware, software, firmware, etc., some examples of which are described below. These are merely some examples of different structures that can be used to form the aforementioned systems, components, and / or logical systems. Other structures may also be used.
[0048] Furthermore, multiple user interface displays have been discussed. These displays can take various forms and may have various user-actuable input mechanisms. For example, user-actuable input mechanisms may be text boxes, checkboxes, icons, links, drop-down menus, search boxes, etc. The input mechanisms can also be actuated in various ways. For example, they can be actuated using a pointing or clicking device (e.g., a ball or mouse). They can be actuated using hardware buttons, switches, joysticks or keyboards, finger switches or finger pads, etc. Virtual keyboards or other virtual actuators can also be used. Furthermore, if the screen displaying the input mechanism is a touch-sensitive screen, touch gestures can be used to actuate the input mechanism. Additionally, if the device displaying the input mechanism has a voice recognition component, voice commands can be used to actuate the input mechanism.
[0049] Several data storage devices are also discussed. It should be noted that these data storage devices can be categorized into various types. They can all be local data storage devices for the system accessing them, or they can all be remote, or some can be local while others are remote. This paper considers all of these configurations.
[0050] Furthermore, the accompanying diagram shows multiple boxes, each assigned a specific function. It should be noted that fewer boxes can be used, allowing the function to be performed by fewer components. Alternatively, more boxes can be used, with the function distributed among more components.
[0051] Figure 5 It is one of the deployable ones Figure 2 An example of a computing environment consisting of components or parts thereof (for example). Reference Figure 5An exemplary system for implementing some embodiments includes a general-purpose computing device in the form of a computer 810. Components of the computer 810 may include, but are not limited to, a processing unit 820 (which may include a controller 202), a system memory 830, and a system bus 821 that connects various system components, including the system memory, to the processing unit 820. The system bus 821 may be any of several types of bus architectures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of various bus architectures. Regarding... Figure 2 The described memory and program can be deployed in Figure 5 In the corresponding part.
[0052] Computer 810 typically includes a variety of computer-readable media. Computer-readable media can be any available medium accessible to computer 810, and includes volatile and non-volatile media, removable and non-removable media. By way of example, and not limitation, computer-readable media can include computer storage media and communication media. Computer storage media are distinct from and do not include modulated data signals or carriers. It includes hardware storage media, which includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media include, but are not limited to: RAM, ROM, EEPROM, flash memory or other storage technologies, CD-ROM, digital versatile optical disc (DVD) or other optical disc storage, cassette tape, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to computer 810. Communication media can embody computer-readable instructions, data structures, program modules, or other data in a transmission mechanism and include any information transmission medium. The term "modulated data signal" refers to a signal whose characteristics are set or altered in a manner that encodes information in the signal.
[0053] System memory 830 includes computer storage media in the form of volatile and / or non-volatile memory, such as read-only memory (ROM) 831 and random access memory (RAM) 832. A basic input / output system 833 (BIOS) containing basic routines is typically stored in ROM 831, which, for example, facilitates the transfer of information between components within computer 810 during startup. RAM 832 typically contains data and / or program modules that can be immediately accessed by processing unit 820 and / or currently operated by processing unit 820. By way of example, and not limitation, Figure 5 The diagram illustrates the operating system 834, application program 835, other program modules 836, and program data 837.
[0054] Computer 810 may also include other removable / non-removable volatile / non-volatile computer storage media. This is by way of example only. Figure 5 The illustration depicts a hard disk drive 841 that reads from or writes to a non-removable, non-volatile magnetic medium, a disk drive 851, a non-volatile disk 852, an optical disk drive 855, and a non-volatile optical disk 856. The hard disk drive 841 is typically connected to the system bus 821 via a non-removable memory interface (e.g., interface 840), and the disk drive 851 and optical disk drive 855 are typically connected to the system bus 821 via a removable memory interface (e.g., interface 850).
[0055] Alternatively or additionally, the functionality described herein may be performed at least in part by one or more hardware logic components. Examples, but not limited to, of the types of hardware logic components that may be used include field-programmable gate arrays (FPGAs), programmable integrated circuits (e.g., ASICs), programmable standard products (e.g., ASSPs), application single-chip systems (SoCs), complex programmable logic devices (CPLDs), and the like.
[0056] The above discussion and Figure 5 The driver and its associated computer storage media illustrated in the diagram provide storage for computer-readable instructions, data structures, program modules, and other data for the computer 810. Figure 5 For example, hard disk drive 841 is illustrated as storing operating system 844, application program 845, other program modules 846, and program data 847. Note that these components may be the same as or different from operating system 834, application program 835, other program modules 836, and program data 837.
[0057] Users can type commands and information into computer 810 using input devices such as keyboard 862, microphone 863, and clicking devices 861 (e.g., mouse, trackball, or touchpad). Other input devices (not shown) may include joysticks, game pads, satellite TV antennas, scanners, or the like. While these and other input devices are typically connected to processing unit 820 via user input interface 860, which is coupled to the system bus, they can be connected via other interfaces and bus structures. Visual display 891 or other types of display devices are also connected to system bus 821 via, for example, video interface 890. In addition to a monitor, the computer may include other peripheral output devices, such as speakers 897 and printers 896, which can be connected via peripheral output interface 895.
[0058] Computer 810 operates in a networked environment using a logical connection (e.g., a local area network—LAN or a wide area network—WAN) to one or more remote computers (e.g., remote computer 880).
[0059] When used in a LAN networked environment, computer 810 connects to LAN 871 via a network interface or adapter 870. When used in a WAN networked environment, computer 810 typically includes a modem 872 or other devices for establishing communication via WAN 873 (e.g., the Internet). In a networked environment, program modules may be stored in remote memory storage devices. For example, Figure 5 The illustration shows that remote application 885 can reside on remote computer 880.
[0060] It should also be noted that the different embodiments described herein can be combined in different ways. That is, portions of one or more embodiments can be combined with portions of one or more other embodiments. All these aspects are considered herein. The flowcharts are shown in a given order, but it is conceivable that these steps can be performed in a different order than shown.
[0061] Example 1 is a movable machine, comprising:
[0062] The tool is connected to the movable machinery via one or more controllable linkage devices;
[0063] A user interface mechanism, configured to receive input from an operator; and
[0064] One or more controllers, wherein the one or more controllers are configured to implement:
[0065] A surface-following logic system configured to receive input from a user interface mechanism and, based on the input, identify the desired motion of the tool relative to a control surface; and
[0066] A control signal generator logic system generates control signals based on the identified motion to control the one or more controllable linkage devices.
[0067] Example 2 is a movable machine of any or all of the foregoing examples, wherein the desired motion of the tool relative to the control surface includes tool motion parallel to the control surface, and the control signal generator logic system generates the control signal to control the one or more controllable linkages to move the tool in a direction parallel to the control surface.
[0068] Example 3 is a movable machine of any or all of the foregoing examples, wherein the control signal generator logic system generates the control signal to control the one or more controllable linkages to maintain the angle of the tool relative to the direction parallel to the control surface when the tool moves parallel to the control surface.
[0069] Example 4 is a movable machine of any or all of the foregoing examples, wherein the desired movement of the tool relative to the control surface includes tool movement away from the control surface, and the control signal generator logic system generates the control signal to control the one or more controllable linkages to move the tool in a direction away from the control surface.
[0070] Example 5 is a movable machine of any or all of the foregoing examples, wherein the control signal generator logic system generates control signals to control the one or more controllable linkages to move the tool in a direction perpendicular to the control surface.
[0071] Example 6 is a movable machine of any or all of the foregoing examples, wherein the desired movement of the tool relative to the control surface includes tool rotation, and the control signal generator logic system generates control signals to control the one or more controllable linkages to cause the tool to rotate relative to a point on the control surface.
[0072] Example 7 is a movable machine of any or all of the foregoing examples, wherein the control signal generator logic system generates control signals to control the one or more controllable linkages to hold a portion of the tool at a position in space as the tool rotates, wherein the portion of the tool is a distance from the pivot point of the tool.
[0073] Example 8 is a movable machine of any or all of the foregoing examples, wherein the user interface mechanism includes one or more joysticks.
[0074] Example 9 is a movable machine of any or all of the foregoing examples, wherein movement of one of the one or more levers in one direction indicates movement of the tool parallel to the control surface.
[0075] Example 10 is a movable machine of any or all of the foregoing examples, wherein movement of one of the one or more levers in a second direction indicates movement of the tool away from the control surface.
[0076] Example 11 is a movable machine of any or all of the previous examples, wherein the movement of one of the one or more levers in a third-order upward direction indicates rotation of the tool relative to a point on the control surface.
[0077] Example 12 is a method for controlling an excavator, the method comprising:
[0078] A control coordinate system is generated relative to the control surface;
[0079] Receive input from operators through the user interface mechanism;
[0080] Mapping the input to a tool transformation in the control coordinate system; and
[0081] The excavator is controlled based on the tool changes on the control surface.
[0082] Example 13 is a method of any or all previous examples, wherein the control coordinate system includes an axis parallel to the control surface and an axis perpendicular to the control surface.
[0083] Example 14 is a method of any or all previous examples, wherein the tool transformation in the control coordinate system includes the movement of the tool on an axis parallel to the control surface.
[0084] Example 15 is a method of any or all previous examples, wherein controlling the excavator includes maintaining an angle of the tool relative to the direction of the tool's movement.
[0085] Example 16 is a method of any or all of the previous examples, wherein the tool transformation includes rotating the tool; and wherein controlling the excavator includes rotating the tool about the tool's operating point, the operating point of the tool being disengaged from the tool's linkage pin.
[0086] Example 17 is a method of any or all previous examples, wherein the operation point is located on the control surface.
[0087] Example 18 is a control system for an excavator, comprising:
[0088] A control surface logic system, wherein the control surface logic system receives a control surface;
[0089] User interface logic system, which receives user input from a joystick;
[0090] A binding association logic system that associates the user input with motion parallel to the control surface; and
[0091] A control signal generator logic system generates control signals and sends them to a controllable subsystem to move the tool based on identified motion parallel to the control surface.
[0092] Example 19 is a control system of any or all of the previous examples, wherein the user interface logic system receives a second user input from a second joystick, and the binding association logic system associates the second user input with movement away from or toward the control surface, and the control signal generator logic system generates a second control signal and sends the second control signal to a controllable subsystem to move the tool based on movement away from or toward the control surface.
[0093] Example 20 is a control system of any or all of the previous examples, wherein a user interface logic system receives a second user input from a second joystick, and the binding association logic system associates the second user input with the rotation of the tool, and the control signal generator logic system generates a tool control signal and sends the tool control signal to the actuator of the tool to move the tool based on the rotation of the tool.
[0094] Although the subject matter has been described in language specific to structural features and / or methodological behavior, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or behaviors described above. Rather, the specific features and behaviors described above are disclosed only as exemplary forms for implementing the claims.
Claims
1. A movable machine, comprising: Tool (124), the tool being connected to the movable machinery via one or more controllable linkage devices (109); User interface mechanism, configured to receive input from an operator; as well as One or more controllers (202), said one or more controllers being configured to implement: A control surface generation logic system configured to generate a target control surface, the target control surface including a multi-planar target control surface; A coordinate system generation system is configured to generate a three-dimensional control coordinate system, the three-dimensional control coordinate system comprising a plurality of sets of axes, wherein the axes in each set of axes are parallel to the corresponding planes of the multi-plane target control surface; Surface-following logic system (258), the surface-following logic system being configured to: Receive the input from the user interface mechanism and identify the desired motion of the tool in the three-dimensional control coordinate system in reference to the multi-plane target control surface based on the input; as well as A control signal generator logic system (256) generates control signals based on the identified desired motion to control the one or more controllable linkage devices (109).
2. The movable machinery according to claim 1, wherein, The desired motion of the tool relative to the multi-plane target control surface includes tool motion parallel to the multi-plane target control surface, and the control signal generator logic system generates the control signal to control the one or more controllable linkage devices to move the tool in a direction parallel to the multi-plane target control surface.
3. The movable machinery according to claim 2, wherein, The control signal generator logic system generates the control signal to control the one or more controllable linkage devices to maintain the angle of the tool relative to the direction parallel to the multi-plane target control surface when the tool moves parallel to the multi-plane target control surface.
4. The movable machinery according to claim 1, wherein, The desired motion of the tool relative to the multi-plane target control surface includes tool motion away from the multi-plane target control surface, and the control signal generator logic system generates the control signal to control the one or more controllable linkage devices to move the tool in a direction away from the multi-plane target control surface.
5. The movable machinery according to claim 4, wherein, The control signal generator logic system generates the control signal to control the one or more controllable linkage devices to move the tool in a direction perpendicular to the multi-plane target control surface.
6. The movable machinery according to claim 1, wherein, The desired motion of the tool relative to the multi-plane target control surface includes tool rotation, and the control signal generator logic system generates the control signal to control the one or more controllable linkages to cause the tool to rotate relative to a point on the multi-plane target control surface.
7. The movable machinery according to claim 6, wherein, The control signal generator logic system generates the control signal to control the one or more controllable linkage devices to hold a portion of the tool in a position in space as the tool rotates, wherein the portion of the tool is a distance away from the pivot point of the tool.
8. The movable machinery according to claim 1, wherein, The user interface mechanism includes one or more joysticks.
9. A method for controlling an excavator, the method comprising: Generate a target control surface, the target control surface including a multi-planar target control surface; A three-dimensional control coordinate system is generated, the three-dimensional control coordinate system comprising multiple sets of axes, wherein the axes in each set of axes are parallel to the corresponding planes of the multi-plane target control surface; Receive input from operators through the user interface mechanism; A tool transformation that maps the input to a reference multi-plane target control surface in the three-dimensional control coordinate system; as well as The excavator is controlled based on the tool transformation in the three-dimensional control coordinate system.
10. A control system for an excavator, comprising: A control surface generation logic system (254) generates a multi-plane target control surface as the target control surface; Surface-following logic system, wherein the surface-following logic system: A three-dimensional control coordinate system is generated, the three-dimensional control coordinate system comprising multiple sets of axes, wherein the axes in each set of axes are parallel to the corresponding planes of the multi-plane target control surface; It receives user input from the joystick and identifies the desired motion of the tool in the three-dimensional control coordinate system with reference to the multi-plane target control surface; A binding association logic system that associates user input with motion parallel to the multi-plane target control surface; as well as A control signal generator logic system (256) generates control signals and sends them to a controllable subsystem (240) to move the tool based on the motion parallel to the multi-plane target control surface.
Citation Information
Patent Citations
Shovel control method and shovel control device
US20180187394A1
Force feedback control for backhoe
US5019761A