Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SENSING AND CONTROL OF A RAPIDLY-COMMANDED HYDRAULIC ACTUATOR
Document Type and Number:
WIPO Patent Application WO/2021/247095
Kind Code:
A1
Abstract:
An example method includes receiving input information indicative of a mode of operation of a machine (100), wherein the machine comprises a hydraulic actuator (114); determining based on the input information that a rapid-commanding mode of operation is requested for the hydraulic actuator; changing a control strategy of the hydraulic actuator to a modified control strategy that enables the hydraulic actuator to operate in the rapid-commanding mode of operation; and controlling the hydraulic actuator based on the modified control strategy.

Inventors:
CARL BLAKE (US)
Application Number:
PCT/US2021/016286
Publication Date:
December 09, 2021
Filing Date:
February 03, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
PARKER HANNIFIN CORP (US)
International Classes:
E02F3/32; E02F9/20; E02F9/22; G05B13/02
Foreign References:
EP2805910A12014-11-26
US20200123738A12020-04-23
US20180100290A12018-04-12
EP2775150A12014-09-10
US5287699A1994-02-22
EP1505717A12005-02-09
US202063034196P2020-06-03
Attorney, Agent or Firm:
SHENOUDA, Amir, M. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A method comprising: receiving, at a controller of a machine, input information indicative of a mode of operation of the machine, wherein the machine comprises a hydraulic actuator , and wherein the controller receives the input information over a communication network of the machine; determining, by the controller based on the input information, that a rapid- commanding mode of operation is requested, wherein the rapid-commanding mode of operation comprises cycling the hydraulic actuator in opposite directions in rapid succession at a particular frequency; changing, by the controller, a control strategy of the hydraulic actuator to a modified control strategy that alleviates latency in the communication network and enables the hydraulic actuator to operate in the rapid-commanding mode of operation; and controlling, by the controller, the hydraulic actuator based on the modified control strategy.

2. The method of claim 1, wherein the machine comprises a joystick configured to provide a signal to the controller, wherein a magnitude of the signal indicates a commanded speed for the hydraulic actuator, wherein controlling the hydraulic actuator based on the modified control strategy comprises modifying the commanded speed indicated by the magnitude of the signal.

3. The method of claim 1, wherein changing the control strategy comprises changing a communication rate over the communication network to alleviate latency.

4. The method of claim 3, wherein the communication network is a Controller

Area Network (CAN), and wherein changing the communication rate comprises increasing a Baud-rate or increasing message transmission rate of the CAN to alleviate latency.

5. The method of claim 1, wherein the hydraulic actuator is a hydraulic cylinder actuator having a piston slidably accommodated in a cylinder of the hydraulic cylinder actuator, wherein the machine comprises: (i) a source of fluid, (ii) a fluid reservoir, (iii) an electrically-actuated valve configured to control fluid flow from the source of fluid to the hydraulic cylinder actuator and control fluid flow from the hydraulic cylinder actuator to the fluid reservoir, and (iv) a joystick configured to provide a signal to the controller indicative of a speed command for the piston, wherein controlling the hydraulic cylinder actuator based on the modified control strategy comprises providing a command signal to a solenoid coil of the electrically-actuated valve, wherein the command signal modifies the speed command indicated by the signal from the joystick.

6. The method of claim 1, wherein the machine comprises: an electric motor coupled to a pump and configured to drive the pump to provide fluid to the hydraulic actuator, wherein changing the control strategy of the hydraulic actuator to the modified control strategy comprises modifying a motor control system of the electric motor.

7. The method of claim 6, wherein the motor control system comprises a closed- loop feedback controller configured to control a command signal to the electric motor based on (i) a difference between a commanded speed and an actual speed of the electric motor, and a (ii) a plurality of gains, and wherein modifying the motor control system comprises increasing the gains of the closed-loop feedback controller. 8 The method of claim 7, wherein the closed-loop feedback controller comprises a rate limiter configured to limit a rate of change of the command signal to the electric motor, and wherein modifying the motor control system comprises modifying the rate of change of the command signal set by the rate limiter.

9. The method of claim 6, wherein the machine further comprises a joystick configured to provide a signal over the communication network to the controller, wherein a magnitude of the signal is indicative of a commanded speed or commanded force for the hydraulic actuator, wherein the motor control system comprises an inverter configured to receive direct current (DC) electric power from a power source and provide three-phase electric power to the electric motor, wherein modifying the motor control system comprises the inverter controlling the electric motor without relying on the magnitude of the signal from the joystick provided over the communication network.

10. The method of claim 9, wherein the inverter controlling the electric motor comprises the inverter executing a preset routine of repetitive cycles, each cycle comprising accelerating the electric motor in a first direction, decelerating the electric motor to a stop, and accelerating the electric motor in a second direction opposite the first direction.

11. The method of claim 9, wherein the inverter controlling the electric motor comprises the inverter taking over control of the electric motor from the controller for a particular period of time.

12. A machine comprising: a hydraulic actuator; a joystick; an electric motor; a pump coupled to the electric motor, wherein the electric motor is configured to drive the pump to provide fluid to the hydraulic actuator; and a controller configured to perform operations comprising: receiving a signal from the joystick, determining based on the signal that a rapid-commanding mode of operation is requested, wherein the rapid-commanding mode of operation comprises cycling the electric motor in opposite directions in rapid succession at a particular frequency, modifying a motor control system of the electric motor to enable the hydraulic actuator to operate in the rapid-commanding mode of operation, and controlling the electric motor based on modification of the motor control system.

13. The machine of claim 12, wherein the motor control system comprises a closed-loop feedback controller configured to control a command signal to the electric motor based on (i) a difference between a commanded speed and an actual speed of the electric motor, and a (ii) a plurality of gains, and wherein modifying the motor control system comprises increasing the gains of the closed-loop feedback controller.

14. The machine of claim 13, wherein the closed-loop feedback controller comprises a rate limiter configured to limit a rate of change of the command signal to the electric motor, and wherein modifying the motor control system comprises modifying the rate of change of the command signal set by the rate limiter.

15. The machine of claim 12, receiving the signal from the joystick comprises receiving the signal over a communication network of the machine, wherein modifying the motor control system comprises alleviating latency in the communication network.

16. The machine of claim 15, wherein the motor control system comprises an inverter configured to receive direct current (DC) electric power from a power source and provide three-phase electric power to the electric motor, wherein alleviating latency in the communication network comprises the inverter controlling the electric motor without relying on a magnitude of the signal from the joystick provided over the communication network.

17. The machine of claim 16, wherein the inverter controlling the electric motor comprises the inverter executing a preset routine of repetitive cycles, each cycle comprising accelerating the electric motor in a first direction, decelerating the electric motor to a stop, and accelerating the electric motor in a second direction opposite the first direction.

18. The machine of claim 16, wherein the inverter controlling the electric motor comprises the inverter taking over control of the electric motor from the controller for a particular period of time.

19. An electrohydraulic control system comprising: an electric motor; a pump coupled to the electric motor, wherein the electric motor is configured to drive the pump to provide fluid to a hydraulic actuator; an inverter configured to receive direct current (DC) electric power from a power source and provide three-phase electric power to the electric motor; and a controller configured to perform operations comprising: receiving a signal indicative of a commanded speed or commanded torque for the electric motor, determining based on the signal that a rapid-commanding mode of operation is requested, wherein the rapid-commanding mode of operation comprises cycling the electric motor in opposite directions in rapid succession at a particular frequency, modifying a motor control system of the electric motor to enable the hydraulic actuator to operate in the rapid-commanding mode of operation, and controlling the electric motor by way of the inverter based on modification of the motor control system.

20. The electrohydraulic control system of claim 19, wherein controlling the electric motor by way of the inverter based on the modification of the motor control system comprises the inverter executing a preset routine of repetitive cycles, each cycle comprising accelerating the electric motor in a first direction, decelerating the electric motor to a stop, and accelerating the electric motor in a second direction opposite the first direction.

Description:
Sensing and Control of a Rapidly-Commanded Hydraulic Actuator

CROSS-REFERENCE TO RELATED APPLICATION [0001] This application claims priority to U.S. Provisional Application No. 63/034,196, filed June 3, 2020, which is incorporated herein by reference in their entirety.

BACKGROUND

[0002] It is common for a machine, such as hydraulic excavators, wheel loaders, loading shovels, backhoe shovels, mining equipment, industrial machinery and the like, to have one or more actuated components such as lifting and/or tilting arms, booms, buckets, steering and turning functions, traveling means, etc. The machine may thus include several hydraulic actuators such as hydraulic actuator cylinders and motors.

[0003] Traditional hydraulic control of a machine, such as an excavator, involves a hydro mechanical joystick that is movable by an operator of the machine to control motion of a hydraulic actuator. The joystick provides pilot flow to shift a main control spool within a valve, which directs flow to the hydraulic actuator.

[0004] Some machines require rapid directional switching of a hydraulic actuator. In an excavator, for example, the operator may wish to “shake” the bucket periodically to dump stuck dirt out. The hydro-mechanical joystick configuration allows for fast shifting of the main control spool as there is limited latency between the joystick command and movement of the hydraulic actuator.

[0005] In modernizing machines, hydraulic systems involve electrohydraulic control systems that use electronic controllers and sensors to operate the hydraulic system more efficiently compared to hydro-mechanical hydraulic systems. Electrohydraulic control systems include electronic joysticks rather than hydro-mechanical joysticks.

[0006] The electrohydraulic control system may include a communication network that facilitates communication between the joysticks, sensors, the controller, solenoid actuators, etc. In some cases, the communication network can cause latency in communication between the various components of the system. Such latency can lead to a delayed response and limited bandwidth for the hydraulic actuator, which can cause a reduced performance and an inability to perform an actuator shake.

[0007] It may thus be desirable to have an electrohydraulic control system that alleviates such latency issues. It is with respect to these and other considerations that the disclosure made herein is presented.

SUMMARY

[0008] The present disclosure describes implementations that relate to sensing and control of a rapidly-commanded hydraulic actuator.

[0009] In a first example implementation, the present disclosure describes a method. The method includes: (i) receiving, at a controller of a machine, input information indicative of a mode of operation of the machine, wherein the machine comprises a hydraulic actuator, and wherein the controller receives the input information over a communication network of the machine; (ii) determining, by the controller based on the input information, that a rapid- commanding mode of operation is requested, wherein the rapid-commanding mode of operation comprises cycling the hydraulic actuator in opposite directions in rapid succession at a particular frequency; (iii) changing, by the controller, a control strategy of the hydraulic actuator to a modified control strategy that alleviates latency in the communication network and enables the hydraulic actuator to operate in the rapid-commanding mode of operation; and (iv) controlling, by the controller, the hydraulic actuator based on the modified control strategy.

[0010] In a second example implementation, the present disclosure describes a machine. The machine includes: a hydraulic actuator; a joystick; an electric motor; a pump coupled to the electric motor, wherein the electric motor is configured to drive the pump to provide fluid to the hydraulic actuator; and a controller configured to perform operations. The operations include: (i) receiving a signal from the joystick, (ii) determining based on the signal that a rapid-commanding mode of operation is requested, wherein the rapid-commanding mode of operation comprises cycling the electric motor in opposite directions in rapid succession at a particular frequency, (iii) modifying a motor control system of the electric motor to enable the hydraulic cylinder actuator to operate in the rapid-commanding mode of operation, and (iv) controlling the electric motor based on modification of the motor control system. [0011] In a third example implementation, the present disclosure describes an electrohydraulic control system. The electrohydraulic control system includes: an electric motor; a pump coupled to the electric motor, wherein the electric motor is configured to drive the pump to provide fluid to a hydraulic actuator; an inverter configured to receive direct current (DC) electric power from a power source and provide three-phase electric power to the electric motor; and a controller configured to perform operations. The operations include: (i) receiving a signal indicative of a commanded speed or commanded torque for the electric motor, (ii) determining based on the signal that a rapid-commanding mode of operation is requested, wherein the rapid-commanding mode of operation comprises cycling the electric motor in opposite directions in rapid succession at a particular frequency, (iii) modifying a motor control system of the electric motor to enable the hydraulic actuator to operate in the rapid-commanding mode of operation, and (iv) controlling the electric motor by way of the inverter based on modification of the motor control system.

[0012] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, implementations, and features described above, further aspects, implementations, and features will become apparent by reference to the figures and the following detailed description.

BRIEF DESCRIPTION OF THE FIGURES

[0013] The novel features believed characteristic of the illustrative examples are set forth in the appended claims. The illustrative examples, however, as well as a preferred mode of use, further objectives and descriptions thereof, will best be understood by reference to the following detailed description of an illustrative example of the present disclosure when read in conjunction with the accompanying Figures.

[0014] Figure 1 illustrates a machine, in accordance with an example implementation.

[0015] Figure 2 illustrates a block diagram of an electrohydraulic control system, in accordance with an example implementation.

[0016] Figure 3 illustrates an electrohydraulic control system having an electrohydraulic actuation subsystem that includes an electrically-actuated valve controlling fluid flow to and from a hydraulic cylinder actuator, in accordance with an example implementation.

[0017] Figure 4 illustrates an electrohydraulic control system having another electrohydraulic actuation subsystem that includes an electric motor and pump controlling fluid flow to and from a hydraulic cylinder actuator, in accordance with an example implementation.

[0018] Figure 5 is a flowchart of a method for operating a machine in at least two modes of operations, in accordance with an example implementation.

[0019] Figure 6 illustrates a block diagram of a motor control system of an electric motor, in accordance with an example implementation.

[0020] Figure 7 illustrates a block diagram of a proportional-integral closed-loop feedback controller, in accordance with an example implementation. [0021] Figure 8 illustrates a graph showing operation of an electrohydraulic control system without enabling a mode of operation associated with rapid commanding, in accordance with an example implementation.

[0022] Figure 9 illustrates a graph showing operation of an electrohydraulic control system with enabling a mode of operation associated with rapid commanding, in accordance with an example implementation.

[0023] Figure 10 is a flowchart of a method for operating an electrohydraulic control system, in accordance with an example implementation.

DETAILED DESCRIPTION

[0024] An example hydraulic machine, such as an excavator, can use multiple hydraulic actuators to accomplish a variety of tasks. To enhance efficiency of a hydraulic machine, an electrohydraulic control system can be used to control the hydraulic actuators.

[0025] An electrohydraulic control system can include a communication network, such as a controller area network (CAN) for example, that facilitates communication between various components of the system including the joysticks, sensors, the controller, solenoid actuators, etc. Such communication network may have a particular bandwidth or communication rate that is set or limited to avoid overloading the communication network. Limited communication rate within the communication network may cause latency in signal communication through the communication network. Additional sources of latency can be in the controller of the electrohydraulic control system and the responsiveness and bandwidth of the physical system (e.g., pumps, motors, actuators, etc.). Latency can be defined as a time interval between a command signal and response, or a time delay between the cause and the effect of some physical change in the electrohydraulic control system. Latency is thus a consequence of the limited velocity with which any physical interaction can propagate.

[0026] In a hydraulic machine, such as an excavator, the operator may wish to shake some of the actuators to dump out any stuck dirt in the implements (e.g., the bucket, the arm, etc.). For instance, a piston of a hydraulic actuator coupled to a bucket is moved back and forth at a rapid rate to shake the bucket. Latency issues in the communication network can lead to a reduced performance and an inability to perform rapid movement of an actuator to accomplish a “shake” operation, for example.

[0027] It may thus be desirable to configure the electrohydraulic control system of the machine in a manner that alleviates the effect of such communication issues on the ability to perform a shake or rapid commanding of an implement. Disclosed herein are machines, systems, and methods for managing the electrohydraulic control system to alleviate the effect of such communication issues on the ability to perform rapid commanding of an actuator.

[0028] Figure 1 illustrates a machine 100, in accordance with an example implementation. The machine 100 can include a boom 102, an arm 104, bucket 106, and cab 108 mounted to a rotating platform 110. The rotating platform 110 can sit atop an undercarriage with wheels or tracks such as track 112. The arm 104 can also be referred to as a dipper or stick.

[0029] Movement of the boom 102, the arm 104, the bucket 106, and the rotating platform 110 can be achieved through the use of hydraulic fluid, with hydraulic cylinders and hydraulic motors. Particularly, the boom 102 can be moved with a boom hydraulic cylinder actuator 114, the arm 104 can be moved with an arm hydraulic cylinder actuator 116, and the bucket 106 can be moved with a bucket hydraulic cylinder actuator 118.

[0030] The rotating platform 110 can be rotated by a swing drive. The swing drive can include a slew ring or a swing gear to which the rotating platform 110 is mounted. The swing drive can also include a swing hydraulic motor actuator 120 disposed under the rotating platform 110 and coupled to a gear box. The gear box can be configured to have a pinion that is engaged with teeth of the swing gear. As such, actuating the swing hydraulic motor actuator 120 with pressurized fluid causes the swing hydraulic motor actuator 120 to rotate the pinion of the gear box, thereby rotating the rotating platform 110.

[0031] The cab 108 can include control tools for the operator of the machine 100. For instance, the machine 100 can include a drive-by-wire system having a right joystick 122 and a left joystick 124 that can be used by the operator to provide electric signals to a controller of the machine 100. The controller then provides electric command signals to various electrically-actuated components of the machine 100 to drive the various actuators mentioned above and operate the machine 100. As an example, the left joystick 124 can operate the arm hydraulic cylinder actuator 116 and the swing hydraulic motor actuator 120, whereas the right joystick 122 can operate the boom hydraulic cylinder actuator 114 and the bucket hydraulic cylinder actuator 118. The machine 100 is used herein as an example to illustrate the disclosed systems and methods. However, it should be understood that other types of machines (e.g., skid steer, wheel loader, etc.) can be used.

[0032] To enhance efficiency of the hydraulic system driving the actuators of the machine 100, an electrohydraulic control system can be used, rather than a conventional hydro mechanical system. Particularly, the machine 100 can include electronic joysticks, sensors, one or more controllers, electronically-actuated hydraulic components (e.g., such as solenoid valves), electric motors driving pumps, etc. The components of the electrohydraulic control system of the machine 100 can be connected through a communication network to facilitate transmission of signals therebetween.

[0033] During operation of the machine 100, an operator may desire to shake or rapidly move the boom 102, the arm 104, or the bucket 106 to shake dirt off the machine 100. For example, the operator periodically commands a bucket shake operation to dump dirt off the bucket 106. The bucket 106 and the bucket hydraulic cylinder actuator 118 are used herein to illustrate executing a shake operation as an example of a rapid commanding operation of a hydraulic actuator. However, the control system can be used to implement rapid commanding on other hydraulic actuators as well.

[0034] Figure 2 illustrates a block diagram of an electrohydraulic control system 200, in accordance with an example implementation. The electrohydraulic control system 200 is a portion of the hydraulic control system of the machine 100, for example. Particularly, the electrohydraulic control system 200 is the portion associated with the bucket hydraulic cylinder actuator 118 and the bucket 106. The bucket 106 is represented as a block coupled to a piston of the bucket hydraulic cylinder actuator 118 in Figure 2.

[0035] The electrohydraulic control system 200 includes the right joystick 122 that is in communication with a controller 202 via a communication bus 204. In an example, the communication bus 204 is a CAN bus including cables and wires that facilitate transmission of signals between various components of the electrohydraulic control system 200 (e.g., between the right joystick 122 and the controller 202).

[0036] The controller 202 includes one or more processors or microprocessors and may include data storage (e.g., memory, transitory computer-readable medium, non-transitory computer-readable medium, etc.). The data storage may have stored thereon instructions that, when executed by the one or more processors of the controller 202, cause the controller 202 to perform operations described herein.

[0037] The electrohydraulic control system 200 further includes an electrohydraulic actuation subsystem 206. When the operator moves the right joystick 122 to actuate the bucket hydraulic cylinder actuator 118, the controller 202 receives an input signal from the right joystick 122 via the communication bus 204 indicative of the speed at which the operator desires to move the bucket 106. The controller 202 in turn provides command signals to the electrohydraulic actuation subsystem 206 via the communication bus 204 to actuate it and provide hydraulic fluid to, and receive return fluid from, the bucket hydraulic cylinder actuator 118.

[0038] The electrohydraulic actuation subsystem 206 can have several configurations. Figures 3 and 4 provide example implementations of the electrohydraulic control system 200 and the electrohydraulic actuation subsystem 206. [0039] Figure 3 illustrates an electrohydraulic control system 300 having an electrohydraulic actuation subsystem 302 that includes an electrically-actuated valve 304 controlling fluid flow to and from the bucket hydraulic cylinder actuator 118, in accordance with an example implementation. The electrohydraulic control system 300 represents an example implementation of the electrohydraulic control system 200 and the electrohydraulic actuation subsystem 302 represents an example implementation of the electrohydraulic actuation subsystem 206.

[0040] The electrohydraulic control system 300 is configured to control the rate and direction of hydraulic fluid flow to the bucket hydraulic cylinder actuator 118. The bucket hydraulic cylinder actuator 118 includes a cylinder 306 and a piston 308 slidably accommodated in the cylinder 306 and configured to move in a linear direction therein. The piston 308 includes a piston head 310 and a rod 312 extending from the piston head 310 along a longitudinal axis direction of the cylinder 306. The rod 312 is coupled to the bucket 106. The piston head 310 divides the internal space of the cylinder 306 into a first chamber 316 and a second chamber 318.

[0041] The first chamber 316 can be referred to as head side chamber as the fluid therein interacts with the piston head 310, and the second chamber 318 can be referred to as rod side chamber as the rod 312 is disposed partially therein. Fluid flows to and from the first chamber 316 through a workport 315, and flows to and from the second chamber 318 through a workport 317.

[0042] The electrohydraulic control system 300 includes a source 320 of fluid. The source 320 of fluid can be a pump (e.g., fixed displacement, variable displacement pump, a load- sense variable displacement pump, etc.), for example. The pump receives fluid from a fluid tank or fluid reservoir 322 of the electrohydraulic control system 300, and the source 320 then provides fluid flow to the electrically-actuated valve 304 via supply fluid line 321. The fluid reservoir 322 is configured as a fluid storage containing fluid at a low pressure level, e.g., 75-100 pound per square inch (psi). The term “fluid line” is used throughout herein to indicate one or more fluid passages, conduits or the like that provide the indicated connectivity.

[0043] Fluid returns to the fluid reservoir 322 from the electrically-actuated valve 304 via return fluid line 323. In an example, the controller 202 sends command signals to the source 320 to vary the amount of fluid flow discharged from the source 320, e.g., command signal changes a swash plate angle of a piston pump to vary the amount of fluid flow discharged therefrom.

[0044] In the example implementation shown in Figure 3, the electrically-actuated valve 304 is configured as a directional control valve having a valve inlet port 324 fluidly coupled to the source 320 via the supply fluid line 321. The electrically-actuated valve 304 also has a return port 326 fluidly coupled to the fluid reservoir 322 via the return fluid line 323. The electrically-actuated valve 304 further includes (i) a valve workport 328 that is fluidly coupled to the workport 317 of the bucket hydraulic cylinder actuator 118 via fluid line 329 and valve workport 330 that is fluidly coupled to the workport 315 of the bucket hydraulic cylinder actuator 118 via fluid line 331.

[0045] The electrically-actuated valve 304 is configured to fluidly couple one of the valve workports 328, 330 to the source 320 while fluidly coupling the other valve workport to the fluid reservoir 322 based on a state of actuation of the electrically-actuated valve 304. Particularly, the electrically-actuated valve 304 has solenoid coil 332 and solenoid coil 334. The solenoid coils 332, 334 can be energized by the controller 202.

[0046] As depicted in Figure 3, signal lines 333, 335 connect the controller 202 to the solenoid coils 332, 334. In an example, the signal lines 333, 335 are included in the communication bus 204 and carry messages (e.g., CAN messages) to a local controller of the electrically-actuated valve 304. In another example, the signal lines 333, 335 transmit current or voltage from the controller 202 to the solenoid coils 332, 334 to actuate the electrically- actuated valve 304 without a local controller in between.

[0047] When neither of the solenoid coils 332, 334 is actuated, the electrically-actuated valve 304 operates in a neutral state that blocks fluid flow therethrough and the bucket hydraulic cylinder actuator 118 does not move. The term “block” is used throughout herein to indicate substantially preventing fluid flow except for minimal or leakage flow of drops per minute, for example.

[0048] When the solenoid coil 332 is energized, the electrically-actuated valve 304 operates in a first state in which fluid received from the source 320 at the valve inlet port 324 flows to the valve workport 330, then to the workport 315 of the bucket hydraulic cylinder actuator 118, causing the piston 308 to move in a first direction or extend (e.g., move to the left in Figure 3). Fluid discharged from the workport 317 is received at the valve workport 328 and flows to the return port 326 then via the return fluid line 323 to the fluid reservoir 322.

[0049] When the solenoid coil 334 is energized, the electrically-actuated valve 304 operates in a second state in which fluid received from the source 320 at the valve inlet port 324 flows to the valve workport 328, then to the workport 317 of the bucket hydraulic cylinder actuator 118, causing the piston 308 to move in a second direction or retract (e.g., move to the right in Figure 3). Fluid discharged from the workport 315 is received at the valve workport 330 and flows to the return port 326 then via the return fluid line 323 to the fluid reservoir 322.

[0050] In an example, the electrically-actuated valve 304 is an on/ofif valve. In another example, the electrically-actuated valve 304 is a proportional valve where the magnitude of the electric command signal to the solenoid coils 332, 334 is proportional to the fluid flow rate through the electrically-actuated valve 304. This way, the electrically-actuated valve 304 meters fluid flow to control the speed of the piston 308 and/or pressure levels in the first chamber 316 and the second chamber 318.

[0051] Figure 4 illustrates an electrohydraulic control system 400 having another electrohydraulic actuation subsystem 402 that includes an electric motor 404 and pump 406 controlling fluid flow to and from the bucket hydraulic cylinder actuator 118, in accordance with an example implementation. The electrohydraulic control system 400 represents another example implementation of the electrohydraulic control system 200 and the electrohydraulic actuation subsystem 402 represents another example implementation of the electrohydraulic actuation subsystem 206.

[0052] The electrohydraulic actuation subsystem 402 is configured to control the rate and direction of hydraulic fluid flow to the bucket hydraulic cylinder actuator 118 by controlling the speed and direction of the electric motor 404 used to drive the pump 406, which is configured as a bi-directional fluid flow source. The pump 406 has a first pump port 408 connected to the workport 315 via a fluid line 409 and a second pump port 410 connected to the workport 317 via a fluid line 411.

[0053] The first pump port 408 and the second pump port 410 are configured to be both inlet and outlet ports based on direction of rotation of the electric motor 404 and the pump 406. As such, the electric motor 404 and the pump 406 rotate in a first rotational direction to withdraw fluid from the first pump port 408 and discharge fluid through second pump port 410, or conversely rotate in a second rotational direction to withdraw fluid from the second pump port 410 and discharge fluid through the first pump port 408.

[0054] As depicted in Figure 4, the pump 406 and the bucket hydraulic cylinder actuator 118 are configured in a closed-loop hydraulic circuit. Particularly, fluid is circulated in a loop between the pump 406 and the bucket hydraulic cylinder actuator 118 rather than in an open- loop circuit where a pump draws fluid from a reservoir and fluid then return to the reservoir. Particularly, the pump 406 provides fluid through the first pump port 408 to the workport 315 or through the second pump port 410 to the workport 317, and fluid being discharged from the other workport returns to the corresponding port of the pump 406. As such, fluid is circulating between the pump 406 and the bucket hydraulic cylinder actuator 118.

[0055] In an example, the pump 406 can be a fixed displacement pump and the amount of fluid flow provided by the pump 406 is controlled by the speed of the electric motor 404 (i.e., by rotational speed of an output shaft of the electric motor 404 coupled to an input shaft of the pump 406). For example, the pump 406 can be configured to have a particular pump displacement PD that determines the amount of fluid discharged from the pump 406 in cubic inches per revolution (in 3 /rev), for example. The electric motor 404 can be running at a commanded speed having units of revolutions per minute (RPM). As such, multiplying the speed of the electric motor 404 by PD determines the fluid flow rate Q in cubic inches per minute (in 3 /min) provided by the pump 406 to the bucket hydraulic cylinder actuator 118.

[0056] The flow rate Q in turn determines the linear speed of the piston 308. For instance, if the electric motor 404 is rotating the pump 406 in a first rotational direction to provide fluid to the first chamber 316, the piston 308 extends at a speed V t = — . On the other hand, if the

A H electric motor 404 is rotating the pump 406 in a second rotational direction to provide fluid to the second chamber 318, the piston 308 retracts at a speed V ? = — - — .

A Annular

[0057] The implementation in Figure 4 with a closed-loop circuit, a variable speed motor, and a fixed displacement pump is an example implementation for illustration. In another example configuration, an open-loop circuit can be used, and the electric motor can be a fixed speed motor driving a variable displacement pump. For instance, the pump can be a variable displacement piston pump with a swash plate, the angle of which can be varied to vary the amount of fluid flow discharged by the pump. Fluid can be drawn by the pump from a fluid reservoir and provided to the bucket hydraulic cylinder actuator 118, and fluid returning from the bucket hydraulic cylinder actuator 118 flows to the fluid reservoir.

[0058] The piston head 310 has a diameter DH, whereas the rod 312 can has a diameter DR. As such, fluid in the first chamber 316 interacts with a cross-sectional surface area of piston head 310 that is equal to A H = p-j^-. On the other hand, fluid in the second chamber 318 interacts with an annular surface area of the piston 308 that is equal to A Annuiar = p H R .

[0059] The area AAnnuiar is smaller than the piston head area AH. Thus, as the piston 308 extends (e.g., moves to the left in Figure 3) or retracts (e.g., moves to the right in Figure 3) within the cylinder 306, the amount of fluid flow QH going into or being discharged from the first chamber 316 is greater than the amount of fluid flow QAmuiar being discharged from or going into the second chamber 318. Particularly, if the piston 308 is moving at a particular velocity V, then Q H = A H V is greater thmQ Annuiar = A Annu[ar V. The difference in flow can be determined as Q H — Q Annuia r = A R V, where AR is the cross-sectional area of the rod 312 and is equal to p— . With this configuration, the bucket hydraulic cylinder actuator 118 can be referred to as an unbalanced actuator as fluid flow to/from one chamber thereof is not equal to fluid flow to/from the other chamber.

[0060] As such, the amount of fluid flow rate provided from or received at the first pump port 408 to or from the first chamber 316 is greater than the amount of fluid flow rate provided from or received at the second pump port 410 to or from the second chamber 318. Such discrepancy between the fluid flow rate provided by the pump 406 and fluid flow rate received thereat can cause cavitation and the pump 406 might not operate properly. The electrohydraulic actuation subsystem 402 provides for a configuration to make up for such discrepancy in fluid flow rate.

[0061] Particularly, the electrohydraulic actuation subsystem 402 includes a boost circuit 412 configured to boost the fluid flow rate, or consume any excess flow, to make up for the discrepancy in fluid flow rates. The boost circuit 412 can, for example, include a charge pump that is configured to draw fluid from a fluid reservoir 414 and provide the fluid to boost flow line 415. In another example, the boost circuit 412 comprises an accumulator configured to store pressurized fluid, and the fluid reservoir 414 might not be used. The boost circuit 412 is also configured to receive excess fluid flowing through the boost flow line 415 and provide a path for such excess fluid to the fluid reservoir 414 (or to an accumulator in the example where the boost circuit 412 includes an accumulator).

[0062] The electrohydraulic actuation subsystem 402 further includes a boost flow valve 416 configured to fluidly couple the chambers 316, 318 to the boost flow line 415. The boost flow valve 416 is depicted as a box as several types of valves can be configured to perform operations of the boost flow valve 416. The boost flow valve can be a shuttle valve, a reverse shuttle valve, or a directional control valve, as examples.

[0063] In an example, the boost flow valve 416 is a hydro-mechanical valve configured to be responsive to pressure difference across the pump 406 (i.e., pressure difference between the fluid line 409 and the fluid line 411). In another example, the boost flow valve 416 is electrically-actuated via command signals from the controller 202.

[0064] In the configuration depicted in Figure 4, the boost flow valve 416 has a first pilot port 418 fluidly coupled to the fluid line 409 and a second pilot port 420 fluidly coupled to the fluid line 411. The boost flow valve 416 also has a third or boost port 422 fluidly coupled to the boost flow line 415. The boost flow valve 416 is configured to (i) connect the fluid line 411 to the boost flow line 415 to supply boost fluid through the boost flow line 415 to the fluid line 411, or (ii) connect the fluid line 409 to the boost flow line 415 such that excess fluid from the first chamber 316 is provided to the boost flow line 415.

[0065] As such, the boost flow valve 416 provides a fluid flow path from the boost flow line 415 to the second pump port 410 to make up for the difference between flow rate of fluid provided to the first chamber 316 and flow rate of fluid returning through the fluid line 411 from the second chamber 318 when the piston 308 extends. Conversely, when the piston 308 retracts, the boost flow valve 416 provides a fluid flow path for the excess flow of fluid returning through the fluid line 409 from the first chamber 316 to the boost flow line 415.

[0066] The controller 202 receives input information from the right joystick 122 via the communication bus 204 and receives sensor information via signals from various sensors of the electrohydraulic control system 400. In response, the controller 202 provides electrical signals to various components of the electrohydraulic control system 400 to operate the bucket hydraulic cylinder actuator 118.

[0067] For example, the controller 202 receives a command or an input from the right joystick 122 of the machine 100 to move the piston 308 in a given direction at a particular desired speed (e.g., to extend or retract the piston 308). The controller 202 also receives sensor information indicative of one or more of position or speed of the piston 308, pressure levels in various hydraulic lines, chambers, or ports of the electrohydraulic control system 400, magnitude of the load to which the bucket 106 is subjected, etc. Responsively, the controller 202 provides command signals to the electric motor 404 via a power electronics module such as an inverter 424 to move the piston 308 in the commanded direction and at a desired commanded speed in a controlled manner. [0068] The electrohydraulic control system 400 further includes a power source 426 that is electrically-coupled to the inverter 424 and the controller 202. In an example the power source 426 includes a battery. In another example, the power source 426 is an electric generator coupled to a prime mover (e.g., engine) of the machine 100. In an example, the inverter 424 includes an arrangement of semiconductor switching elements (transistors) that support conversion of direct current (DC) electric power provided from the power source 426 to three-phase electric power capable of driving the electric motor 404. The power source 426 is also electrically-coupled to the controller 202 to provide power thereto and receive commands therefrom.

[0069] As such, the electrohydraulic control system 300 and the electrohydraulic control system 400 represent example implementations of the electrohydraulic control system 200, all of which representing systems relying on electrical signal and communication over a communication bus to operate an actuator such as the bucket hydraulic cylinder actuator 118 of the machine 100.

[0070] The electrohydraulic control systems 200, 300, 400 enable the machine 100 to operate in at least two modes of operation. A first mode of operation, which can be referred to as a standard mode of operation, which involves operating the machine 100 smoothly. For example, the controller 202 operates the electrically-actuated valve 304 or the electric motor 404 in a gradual, as opposed to abrupt manner, such that the acceleration and deceleration of the piston 308 of the bucket hydraulic cylinder actuator 118 is controlled, and jerky movements are avoided. This way, the bucket 106 moves in a smooth manner with gradual starts and stops, and less abrupt movements that can shake the structure and components of the machine 100.

[0071] Operating in the first or standard mode of operation continues until the operator determines that dirt has accumulated on a particular implement, such as the bucket 106. At such point, the operator desires to “shake” the implement to clean it out and dump the dirt off the implement. The term “shake” is used herein to indicate rapidly commanding the actuator, e.g., the bucket hydraulic cylinder actuator 118, by cycling the piston 308 or cycling the electric motor 404 in opposite directions in rapid succession at a particular frequency, e.g., 4- 5 back and forth cycles per second or 4-5 Hertz (Hz). This way, the bucket 106 shakes off the dirt accumulated thereon. The shake operation can also be used for other purposes that can be accomplished with rapid commanding of the associated actuator.

[0072] Modernizing machines such as the machine 100 to be controlled by electrohydraulic control systems (e.g., the electrohydraulic control systems 200, 300, 400) can render the machine 100 more efficient. However, electronic control of the machine can also affect operation in the second mode of operation.

[0073] In an example, the communication rate over the communication bus 204 is limited to avoid overloading the communication bandwidth. In another example, communication between the controller 202 and the components commanded by the controller 202, such as the electrically-actuated valve 304, the inverter 424, the power source 426, or the electric motor 404, is hindered by latency issues on the communication bus 204 or other cables/wires. Latency in the communication between the various components of an electrohydraulic control system may lead to a delayed response and limited bandwidth for the actuator being rapidly commanded. As a result, the operator might not be able to perform a shake operation.

[0074] As such, it is desirable to configure the machine 100, and particularly the controller 202, to detect that the operator desires to operate in the second mode of operation and responsively change control strategy of the electrohydraulic control system of the machine 100 to perform operations that alleviate latency issues and enable rapid commanding of an actuator. [0075] Figure 5 is a flowchart of a method 500 for operating the machine 100 in at least two modes of operations, in accordance with an example implementation. For example, the method 500 is implemented by the controller 202 to operate the machine 100 and its electrohydraulic control system (e.g., any of the electrohydraulic control systems 200, 300, 400). The method 500 includes one or more operations or actions as illustrated by blocks 502-508. The bucket hydraulic cylinder actuator 118 is used herein as an example; however, it should be understood that the operations described herein are applicable to other actuators of the machine 100. For example, the operations can be applied to a rotary actuator (e.g., a hydraulic motor) rather than a hydraulic cylinder actuator. As such, the operations described throughout herein can be applied to any hydraulic actuator.

[0076] At block 502, the method 500 includes receiving, at the controller 202, input information indicative of a mode of operation of the machine 100. The input information can be sensor information provided by various sensors coupled to the machine 100 or input information from other input devices. For example, the controller 202 receives signals over the communication bus 204 from the right joystick 122 indicative of position or angle of the right joystick 122 relative to its neutral, unactuated position. The controller 202 also has access to, or is able to determine, the temporal characteristics of the commands from the right joystick 122, i.e., command magnitude versus time.

[0077] At decision block 504, the method 500 includes determining, by the controller 202, whether rapid commanding (e.g., bucket shake) is requested by the operator. Based on the input information that the controller 202 receives at the block 502, the controller 202 determines whether the operator requested operating the machine 100 and the bucket hydraulic cylinder actuator 118 in a smooth manner or requested a bucket shake. Particularly, the controller 202 determines whether a parameter or a group of parameters meet particular threshold values or threshold criteria, and accordingly determines whether a bucket shake operation is commanded.

[0078] For example, based on the magnitude of the command received from the right joystick 122, the controller 202 determines how many times the right joystick 122 has moved back and forth past its neutral, unactuated position. In other words, the controller 202 determines the frequency with which magnitude of the command signal from the right joystick 122 crosses the command zero value, which represents the neutral, unactuated position of the right joystick 122.

[0079] Based on the magnitude and/or frequency of the command signal from the right joystick 122, the controller 202 determines whether the operator desires to operate in a first mode of operation at block 506 or desires to operate in a second mode of operation at block 508 in which the controller 202 enables rapid commanding of the bucket hydraulic cylinder actuator 118 (i.e., enables shaking the bucket 106). The second mode of operation can be referred to as a rapid-commanding mode of operation.

[0080] For example, if the frequency of the command signal from the right joystick 122 crosses a zero value at a rate that is lower than a threshold crossing frequency, the controller 202 operates the machine 100 in the first mode of operation at the block 506 in which the controller 202 smoothly controls the bucket hydraulic cylinder actuator 118 to avoid jerky movements of the machine 100. An example threshold crossing frequency is 4 or 5 cycles (zero crossings) per second, e.g., 4-5 (Hz). In this example, if the frequency of the command signal from the right joystick 122 is less than the threshold crossing frequency (e.g., 4 Hz), the controller 202 operates in the first, smooth mode of operation. If the frequency exceeds the threshold crossing frequency, the controller 202 switches to the second mode of operation of the block 508 to enable bucket shaking. [0081] Switching to, or operating in, the second mode of operation involves performing one or more operations at the block 508 that alleviate communication latency or other issues that hinders hinder rapid commanding of the bucket hydraulic cylinder actuator 118. As an example, the controller 202 modifies magnitude of the speed of, or magnitude of the force to be applied by, the piston 308 that corresponds to the magnitude of a signal from the right joystick 122.

[0082] For example, the controller 202 has access to a look-up table or schedule of gains that maps the position of the right joystick 122 (e.g., the magnitude of the signal indicative of the angle or position of the right joystick 122) to respective speeds for the piston 308. The commanded speed is then mapped to an electric current or voltage that the controller 202 sends one of the solenoid coils 332, 334 or to the inverter 424 that controls the electric motor 404. In response, the electrically-actuated valve 304 or the pump 406 provides a fluid flow rate to the bucket hydraulic cylinder actuator 118 that causes the piston 308 to move at the commanded speed. In another example, the look-up table may directly map the angle or position of the right joystick 122 to a corresponding current or voltage. In another example, the look-up table maps the angle or position of the right joystick 122 to a commanded force to be applied by the bucket hydraulic cylinder actuator 118 (or commanded torque in the case of a hydraulic motor actuator or a commanded torque for the electric motor 404).

[0083] In these examples, operating in the second mode of operation involves using a different look-up table or modifying the look-up table such that the signal from the right joystick 122 is mapped to a modified piston speed (i.e., greater piston speed) for the piston 308 (or modified force/torque to be applied by the hydraulic actuator), enabling higher acceleration and deceleration of the piston 308. In other words, rather than using look-up table values that enable smooth operation of the bucket 106 in the first mode of operation, the values are changed to greater values that enable jerking the bucket 106 back and forth to perform a shaking operation.

[0084] In another example, rather than a look-up table, the controller 202 applies a joystick gain (e.g., a scalar value) that is multiplied by the magnitude of the signal from the right joystick 122 to determine a corresponding piston speed or electric current/voltage value associated with a force/torque value. In this example, the controller 202 applies a different, higher gain to the magnitude of the signal from the right joystick 122 when operating in the second mode of operation.

[0085] In an example, operations associated with switching to, or operating in, the second mode of operation involves changing the communication rate through the communication bus 204. A communication network is characterized by a particular Baud-rate, which refers to the rate (speed) at which data is transmitted over the network, i.e., the number of times a signal changes state per second. One Baud is equivalent to one bit per second. Baud-rate is typically expressed in kilobits-per-second (kbps).

[0086] As an example, if the communication bus 204 is a CAN bus, the Baud-rate can be set to 125 kbps, 250 kbps, 500 kbps, or 1000 kbps (1 Mega bit per second or Mbps). The 125 kbps rate is associated with a CAN communication protocol referred to as CANopen and the 250 kbps Baud-rate is associated with J1939 CAN protocol. The larger the Baud-rate, the faster the communication is across the communication bus 204 and bandwidth is increased.

[0087] While increasing the communication rate enables the controller 202 to detect and monitor high frequency events such as rapid joystick shifting back and forth associated with bucket shake, continually operating at a high Baud-rate (e.g., 1 Mbps) may overload the communication bus 204. Overloading the communication bus 204 can cause a communication interruption or time-out that affects operation of the machine 100. [0088] In an example, the controller 202 is configured to operate at a lower communication rate, e.g., 250 kbps, when operating in the first mode of operation. At such lower communication, if the operator moves the right joystick 122 back and forth at a rapid pace to shake the bucket 106, the rapid succession of peaks in both directions might not be transmitted properly across the communication bus 204 and the controller 202 might thus miss input values from the right joystick 122 that indicate a high commanded speed for the piston 308.

[0089] Thus, in this example, when the controller 202 detects, based on the input information at the block 502, that a rapid commanding (e.g., bucket shake) operation is requested by the operator, the controller 202 switches to the second mode of operation and increases the communication rate to a higher rate, e.g., 500 kbps or 1 Mbps. At such a higher rate of communication, the controller 202 is able to detect rapid changes in the magnitude of the signal from the right joystick 122. This switch to a higher rate of communication enables the controller 202 to respond to rapid changes in the signal from the right joystick 122 by changing the magnitude of the current/voltage to the solenoid coil 332, 334 or the inverter 424. This way, a bucket shake operation can be accomplished.

[0090] In another example, as an alternative or in addition to changing the Baud-rate, the controller 202 can change the message transmission rate over the communication network (e.g., over the communication bus 204). For instance, if the message transmission rate is a message every 100 millisecond (ms) in the first mode of operation, the controller 202 can change the message transmission rate to send a message every 10 ms. At such a higher message transmission rate of communication, the controller 202 is able to detect rapid changes in the magnitude of the signal from the right joystick 122. This switch to a higher message transmission rate enables the controller 202 to respond to rapid changes in the signal from the right joystick 122 by changing the magnitude of the current/voltage to the solenoid coil 332, 334 or the inverter 424. This way, a bucket shake operation can be accomplished.

[0091] In the example implementations involving the electrohydraulic control system 400 having the electric motor 404, switching from the first mode of operation to the second mode of operation may involve changing the control strategy of the electric motor 404. For example, controlling the electric motor 404 involves a closed-loop feedback system for precise control of speed and/or torque of the electric motor 404. The closed-loop feedback system can be implemented in the controller 202 or the inverter 424. In an example, switching to the second mode of operation involves changing parameters of the closed-loop feedback system or changing the control mode of the closed-loop feedback system (e.g., from a speed mode of control to a current/torque control mode).

[0092] Figure 6 illustrates a block diagram of a motor control system 600 of the electric motor 404, in accordance with an example implementation. In an example, the motor control system 600 is implemented by or comprises the inverter 424. In another example, the motor control system 600 is implemented by the controller 202. In another example, a portion (e.g., speed loop) of the motor control system 600 is implemented by the controller 202 and another portion (e.g., the current loop) is implemented by the inverter 424.

[0093] In the example implementation shown in Figure 6, the motor control system 600 is a closed-loop feedback control system having two control loops or control modules, a speed control module 602 and a current control module 604. In an example, the controller 202 converts the signal from the right joystick 122 to a speed command for the electric motor 404 (i.e., rotational speed of an output shaft coupled to a rotor of the electric motor 404). The controller 202 provides the speed command as a speed command signal 606 to the speed control module 602. [0094] The speed control module 602 then determines a reference current command 608 based on an error or difference between the speed command signal 606 and a speed sensor information signal 614 from a sensor coupled to the electric motor 404. For example, the electric motor 404 includes a speed sensor (e.g., a tachometer) that provides the speed sensor information signal 614 to the speed control module 602, which implements closed-loop speed control to control the speed of the electric motor 404.

[0095] The speed control module 602 provides the reference current command 608 to the current control module 604. The current control module 604 then provides a current command 610 to drive the electric motor 404. The electric motor 404 includes a current sensor that provides current sensor information signal 612 to the current control module 604, which implements closed-loop current control to control the current provided to the electric motor 404.

[0096] As an example for illustration, the speed control module 602 and the current control module 604 include a proportional-integral (PI) controller. A PI controller is used herein as an example for illustration; however, it should be understood that other types of closed-loop feedback control systems can be used, such as a proportional-integral-derivative (PID) controller.

[0097] Figure 7 illustrates a block diagram of a PI controller 700, in accordance with an example implementation. The PI controller 700 represents either the PI speed controller of the speed control module 602 or the PI current controller of the current control module 604.

[0098] An error signal 702 representing the difference between a commanded value (e.g., commanded speed or current) and a feedback value (actual speed or actual current provided by a respective sensor) is determined. As such, the error signal 702 represents a difference between the speed command signal 606 and speed sensor information signal 614 or the difference between the reference current command 608 and the current sensor information signal 612.

[0099] The error signal 702 is multiplied by a proportional gain Kp at block 704. The error signal 702 is also integrated (e.g., accumulated overtime) at block 706. The result of the integration at the block 706 is then multiplied by an integral gain Ki at block 708.

[00100] The output of the block 708 is then summed with the output of the block 704 at summation block 710 to generate a command signal 711. In examples, the PI controller 700 includes a rate limiter block 712 configured to limit or control the rate of change of the command signal 711 to be less than a threshold rate of change to preclude jerky or abrupt changes in the speed of the electric motor 404 (and thus jerky movements of the bucket hydraulic cylinder actuator 118). For instance, if the error signal 702 has a large value, the result of the summation block 710 can also have a large value. To make smooth changes to the command signal 711, the rate limiter block 712 gradually changes the command signal 711 to prevent sudden, jerky movements.

[00101] In an example, the PI controller 700 also includes a block 714 configured to multiply a scalar value or gain by the output of the rate limiter block 712. The scalar value can be used for unit conversion or scaling, for example.

[00102] With the configuration of Figure 7, the PI controller 700 generates a reference command 716 (e.g., the reference current command 608 or the current command 610). As mentioned above, when the controller 202 switches to the second mode of operation to allow for rapid commanding or bucket shake, the controller 202 may change the control strategy of the electric motor 404 for a particular period of time (e.g., 3 seconds) that is sufficient for performing a bucket shake operation. [00103] Changing the control strategy can be implemented in several ways. In an example, the controller 202 increases one or more of the gains K P or Ki at the blocks 704, 708, respectively. In this example, increasing the gains in the speed control module 602 and/or the current control module 604 increases the responsiveness of the electric motor 404. Responsiveness of the electric motor 404 can be indicated by the acceleration and deceleration values of the electric motor 404. Allowing the acceleration and deceleration of the electric motor 404 to increase by increasing the gains facilitates accelerating the electric motor 404 to a high speed in a given rotational direction within a short period of time (e.g., 0.1-0.2 seconds), decelerating quickly to a stop, then accelerating in a reverse direction to a high speed in an opposite rotational direction within a short period of time (e.g., 0.1 -0.2 seconds). The increased acceleration and deceleration of the electric motor 404 enable the electric motor 404 to drive the piston 308 of the bucket hydraulic cylinder actuator 118 back and forth at a high frequency (e.g., 4 Hz) to accomplish a bucket shake operation.

[00104] In another example, in addition or as an alternative to increasing the gains, the controller 202 changes the slope of the rate limiter block 712 to change the rate of change of speed allowed by the rate limiter block 712 or disable the rate limiter block 712. As depicted in Figure 7, in an example, the controller 202 sends a rate limiter adjustment signal 718 to the rate limiter block 712 to change its characteristics, e.g., change the slope that determines the allowed rate of change in the command signal 711 or disable the rate limiter block 712 to allow for step-wise changes in the command signal 711, which can enable larger accelerations and decelerations of the electric motor 404.

[00105] As another example of changing the control strategy to enable bucket shaking, the inverter 424 takes over control of the electric motor 404 for a particular period of time (e.g., 3 seconds) without relying on signals from the controller 202 or the right joystick 122. Particularly, once the bucket shake operation is detected by the controller 202 as described above with respect to the block 502 of the method 500, the controller 202 commands or indicates to the inverter 424 to execute a preset routine of repetitive cycles (e.g., 4 cycles), each cycle comprising accelerating the electric motor 404 in a first direction, decelerating the electric motor 404 to a stop, and accelerating the electric motor 404 in a second direction opposite the first direction to enable bucket shake.

[00106] This way, the inverter 424 does not rely or respond to signals from the right joystick 122. Rather, the inverter 424 executes control of the electric motor 404 independent of the signal from the right j oystick 122 or the controller 202. As such, communication latency or delays are circumvented as the inverter 424 controls the electric motor 404 without relying on signals from the controller 202.

[00107] In an example, the inverter 424 executes the preset routine for a preset period of time (e.g., 2-3 seconds), and the controller 202 then takes over again. In another example, the inverter 424 executes the preset routine for the bucket shake operation until the controller 202 determines that the bucket shake operation is over as indicated by the signals from the right joystick 122. In this example, the controller 202 monitors the signal from the right joystick 122 to continually determine (e.g., based on frequency or zero crossings) whether the bucket shake operation is still desired by the operator. In other words, the controller 202 relies on the frequency of the signal from the right joystick 122 to determine whether the bucket shake operation is ongoing without relying on a magnitude of the signal as the inverter 424 takes over and executes the preset routine.

[00108] In an example, the motor control system 600 controls the torque output of the electric motor 404 in addition to or instead of the rotational speed of the electric motor 404. Electric current provided to the electric motor 404 corresponds to a torque output of the electric motor 404. In particular, the torque (7) that the electric motor 404 produces is determined as T = K t I, where Kt is the motor torque constant and is based on a constant multiplied by a length of a stator of the electric motor 404 and the number of turns of the windings of the stator. The power ( P ) generated by the electric motor 404 is determined as P = Tw = K t Ia>, where w is the rotational speed of the rotor or the output shaft of the electric motor 404. By controlling the current I, the torque and power can be controlled to a desired level.

[00109] In an example, switching from the first mode of operation of the block 506 to the second mode of operation of the block 508 entails switching from a speed control mode (e.g., controlling speed of the electric motor 404 and the piston 308) to a current/torque/power control mode for controlling the torque or power output of the electric motor 404. This way, higher deceleration and decelerations rates may be achieved to enable rapid commanding of the bucket hydraulic cylinder actuator 118.

[00110] Figure 8 illustrates a graph 800 showing operation of the electrohydraulic control system 200, 300, 400 without enabling the second mode of operation associated with rapid commanding, in accordance with an example implementation. The graph 800, for example, illustrates operation of the electrohydraulic control system 200, 300, 400 while the block 508 of the method 500 is disabled and the electrohydraulic control system 200, 300, 400 operates in the first or standard mode of operation at the block 506.

[00111] The x-axis of the graph 800 depicts time and the y-axis depicts magnitude of various signals represented by lines 802, 804, and 806. Line 802 represents mechanical movement of the right joystick 122 over time. For example, the line 802 is the signal generated by an angle or position sensor coupled to the right joystick 122. Further, points of the line 802 correspond to particular speed commands for the piston 308.

[00112] Line 804 represents the signal from the right joystick 122 as received at the controller 202. Due to communication rate limitations of the communication bus 204 (e.g., due to bandwidth limitation of the communication bus 204), the line 804 shows that the signal “seen” or received at the controller 202 is phase-shifted or delayed relative to the line 802, and further the peak magnitudes of the signal represented by the line 804 does not match or reach the peak magnitudes of the signal represented by the line 802. As such, the speed commands for the piston 308 as perceived by the controller 202 may be lower than actual commanded speeds provided by the right joystick 122.

[00113] Line 806 represents movement of the piston 308. For example, the line 806 represents the speed of movement of the piston 308. Due to further signal communication limitations from the controller 202 to other components (e.g., to the electrically-actuated valve 304 or the inverter 424) and bandwidth limitations of the physical system (e.g., valve, pump, electric motor, fluid lines, etc.), the line 806 shows that the response of the piston 308 is phase-shifted or delayed relative to the line 804. Further, the line 806 indicates that the speed of movement of the piston 308 does not reach commanded speeds indicated by the line 804, much less the line 802.

[00114] Figure 9 illustrates a graph 900 showing operation of the electrohydraulic control system 200, 300, 400 with enabling the second mode of operation associated with rapid commanding, in accordance with an example implementation. The graph 900, for example, illustrates operation of the electrohydraulic control system 200, 300, 400 while switching to the second mode of operation of the block 508 of the method 500 is enabled upon detecting a bucket shake request at the decision block 504.

[00115] The lines 802, 804 are the same in Figure 9 as in Figure 8. However, line 902 illustrates movement (e.g., speed) of the piston 308 before and after switching to the second mode of operation of the block 508. Particularly, for the first few cycles (e.g., about 3 cycles) the electrohydraulic control system 200, 300, 400 operates in the first mode of operation of the block 506. Using the techniques described with respect to the decision block 504 above, the controller 202 determines that the operator is requesting a rapid commanding (bucket shake) and at point 904 switches to the second mode of operation of the block 508.

[00116] Switching to the second mode of operation of the block 508 comprises any or a combination of the actions described above with respect to the block 508 and Figures 6-7. As a result of switching to the second mode of operation at the point 904, the peak magnitudes of movement (e.g., peak speeds) of the piston 308 as indicated by the line 902 after the point 904 is substantially larger than the peak magnitudes before switching at the point 904. Further, the slope of the line 902 increases after the point 904 indicating higher accelerations/decelerations of the piston 308. Such substantial increase in the speed and/or acceleration of the piston 308 can accomplish a bucket shake operation.

[00117] Figure 10 is a flowchart of a method 1000 for operating an electrohydraulic control system, in accordance with an example implementation. For example, the method 1000 can be implemented with the electrohydraulic control systems 200, 300, 400 by the controller 202 to control the machine 100.

[00118] The method 1000 may include one or more operations, or actions as illustrated by one or more of blocks 1002-1008. Although the blocks are illustrated in a sequential order, these blocks may also be performed in parallel, and/or in a different order than those described herein. Also, the various blocks may be combined into fewer blocks, divided into additional blocks, and/or removed based upon the desired implementation. It should be understood that for this and other processes and methods disclosed herein, flowcharts show functionality and operation of one possible implementation of present examples. Alternative implementations are included within the scope of the examples of the present disclosure in which functions may be executed out of order from that shown or discussed, including substantially concurrent or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art. [00119] At block 1002, the method 1000 includes receiving, at a controller (e.g., the controller 202) of a machine (e.g., the machine 100), input information indicative of a mode of operation of the machine, wherein the machine comprises a hydraulic actuator (e.g., the bucket hydraulic cylinder actuator 118), and wherein the controller receives the input information over a communication network (e.g., the communication network comprising the communication bus 204) of the machine.

[00120] At block 1004, the method 1000 includes determining, by the controller based on the input information, that a rapid-commanding mode of operation (e.g., the second mode of operation described above) is requested, wherein the rapid-commanding mode of operation comprises cycling the hydraulic actuator (e.g., cycling the piston 308 by cycling the electric motor 404) in opposite directions in rapid succession at a particular frequency (e.g., moving the piston back and forth at a 4-5 Hz frequency or moving the output shaft of the electric motor 404 in opposite rotational directions at the particular frequency).

[00121] At block 1006, the method 1000 includes changing, by the controller, a control strategy of the hydraulic actuator to a modified control strategy that alleviates latency in the communication network and enables the hydraulic actuator to operate in the rapid- commanding mode of operation. Alleviating latency may comprise lowering latency in the communication network or bypassing portions of the communication network to speed up communication between various components of the electrohydraulic system.

[00122] At block 1006, the method 1000 includes controlling, by the controller, the hydraulic actuator based on the modified control strategy.

[00123] The method 1000 can further include any of the operations throughout the disclosure. For example, the machine includes a joystick (e.g., the right joystick 122) configured to provide a signal to the controller, wherein a magnitude of the signal indicates a commanded speed for the piston. The operation of controlling the hydraulic actuator based on the modified control strategy can include modifying the commanded speed or commanded force/torque indicated by the magnitude of the signal.

[00124] In an example, the operation of changing the control strategy includes changing a communication rate over the communication network to alleviate latency. For instance, if the communication network is CAN, the operation of changing the communication rate includes increasing a Baud-rate or message transmission rate of the CAN to alleviate latency in the communication network.

[00125] Further, as mentioned above (see Figure 3), the machine can include a source of fluid (e.g., the source 320), (ii) a fluid reservoir (e.g., the fluid reservoir 322), (iii) an electrically-actuated valve (e.g., electrically-actuated valve 304) configured to control fluid flow from the source of fluid to the hydraulic cylinder actuator and control fluid flow from the hydraulic cylinder actuator to the fluid reservoir. The machine also includes a joystick (e.g., the right joystick 122) configured to provide a signal to the controller indicative of a speed command for the piston. In this example, the operation of controlling the hydraulic cylinder actuator based on the modified control strategy includes providing a command signal to a solenoid coil of the electrically-actuated valve wherein the command signal modifies the speed command indicated by the signal from the joystick, e.g., a look-up table mapping joystick command to piston speed command can be changed or a gain multiplied by the joystick command can be increased to increase the speed of the piston.

[00126] In another example (see Figure 4), wherein the machine comprises: an electric motor (e.g., the electric motor 404) coupled to a pump (e.g., the pump 406) and configured to drive the pump to provide fluid to the hydraulic cylinder actuator and move the piston. In this example, the operation of changing the control strategy of the hydraulic cylinder actuator to the modified control strategy can include modifying a motor control system (e.g., the motor control system 600) of the electric motor.

[00127] In an example as shown in Figures 6-7, the motor control system includes a closed- loop feedback controller (e.g., the PI controller 700) configured to control a command signal to the electric motor based on (i) a difference between a commanded speed and an actual speed of the electric motor (e.g., the error signal 702, and a (ii) a plurality of gains (e.g., Kp, Ki, and K described above). The operation of modifying the motor control system can include increasing the gains of the closed-loop feedback controller.

[00128] In an example, the closed-loop feedback controller (e.g., the PI controller 700) includes a rate limiter (e.g., the rate limiter block 712) configured to limit a rate of change of the command signal to the electric motor. In this example, modifying the motor control system can include modifying the rate of change of the command signal set by the rate limiter (e.g., via the rate limiter adjustment signal 718).

[00129] In an example, the motor control system includes an inverter (e.g., the inverter 424 configured to receive DC electric power from a power source (e.g., the power source 426) and provide three-phase electric power to the electric motor. The operation of modifying the motor control system can include the inverter controlling the electric motor without relying on the magnitude of the signal from the joystick provided over the communication network.

[00130] In another example, the inverter executes a preset routine of repetitive cycles, each cycle comprising accelerating the electric motor in a first direction, decelerating the electric motor to a stop, and accelerating the electric motor in a second direction opposite the first direction. In another example, the inverter takes over control of the electric motor from the controller for a particular period of time. [00131] The detailed description above describes various features and operations of the disclosed systems with reference to the accompanying figures. The illustrative implementations described herein are not meant to be limiting. Certain aspects of the disclosed systems can be arranged and combined in a wide variety of different configurations, all of which are contemplated herein.

[00132] Further, unless context suggests otherwise, the features illustrated in each of the figures may be used in combination with one another. Thus, the figures should be generally viewed as component aspects of one or more overall implementations, with the understanding that not all illustrated features are necessary for each implementation.

[00133] Additionally, any enumeration of elements, blocks, or steps in this specification or the claims is for purposes of clarity. Thus, such enumeration should not be interpreted to require or imply that these elements, blocks, or steps adhere to a particular arrangement or are carried out in a particular order.

[00134] Further, devices or systems may be used or configured to perform functions presented in the figures. In some instances, components of the devices and/or systems may be configured to perform the functions such that the components are actually configured and structured (with hardware and/or software) to enable such performance. In other examples, components of the devices and/or systems may be arranged to be adapted to, capable of, or suited for performing the functions, such as when operated in a specific manner.

[00135] By the term “substantially” or “about” it is meant that the recited characteristic, parameter, or value need not be achieved exactly, but that deviations or variations, including for example, tolerances, measurement error, measurement accuracy limitations and other factors known to skill in the art, may occur in amounts that do not preclude the effect the characteristic was intended to provide [00136] The arrangements described herein are for purposes of example only. As such, those skilled in the art will appreciate that other arrangements and other elements (e.g., machines, interfaces, operations, orders, and groupings of operations, etc.) can be used instead, and some elements may be omitted altogether according to the desired results. Further, many of the elements that are described are functional entities that may be implemented as discrete or distributed components or in conjunction with other components, in any suitable combination and location.

[00137] While various aspects and implementations have been disclosed herein, other aspects and implementations will be apparent to those skilled in the art. The various aspects and implementations disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope being indicated by the following claims, along with the full scope of equivalents to which such claims are entitled. Also, the terminology used herein is for the purpose of describing particular implementations only, and is not intended to be limiting.