EP4170100A1 - Method and system for controlling the stability conditions of a machine - Google Patents

Method and system for controlling the stability conditions of a machine Download PDF

Info

Publication number
EP4170100A1
EP4170100A1 EP21204161.0A EP21204161A EP4170100A1 EP 4170100 A1 EP4170100 A1 EP 4170100A1 EP 21204161 A EP21204161 A EP 21204161A EP 4170100 A1 EP4170100 A1 EP 4170100A1
Authority
EP
European Patent Office
Prior art keywords
machine
stability
operational
region
velocity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
EP21204161.0A
Other languages
German (de)
French (fr)
Other versions
EP4170100B1 (en
Inventor
Marta NICCOLINI
Alfredo Argiolas
Simona CASINI
Kazuhiro Fujio
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yanmar Holdings Co Ltd
Original Assignee
Yanmar Holdings Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yanmar Holdings Co Ltd filed Critical Yanmar Holdings Co Ltd
Priority to EP21204161.0A priority Critical patent/EP4170100B1/en
Publication of EP4170100A1 publication Critical patent/EP4170100A1/en
Application granted granted Critical
Publication of EP4170100B1 publication Critical patent/EP4170100B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/24Safety devices, e.g. for preventing overload
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/26Indicating devices
    • E02F9/264Sensors and their calibration for indicating the position of the work tool
    • E02F9/265Sensors and their calibration for indicating the position of the work tool with follow-up actions (e.g. control signals sent to actuate the work tool)

Definitions

  • the present disclosure relates to a method and a corresponding system for controlling the stability conditions of a machine, such as a construction machine.
  • Safety can be considered as one of the most relevant aspects during every working activity.
  • construction sites can be easily identified as one of the riskiest fields for several reasons.
  • working or construction machines are used in a large variety of tasks and quick motion and/or sudden changes of motion direction are often required.
  • heavy payloads are continuously loaded and unloaded, sometimes pushing the machine stability over its limits, thus creating potentially risky and fatal conditions for the operator. When these conditions occur, the machine can experience a rollover (i.e.
  • the machine can roll over onto its side or end through approximately 90° from its main vertical medial plane) and tipping over (the machine can move more than 90°, close to 180° from its main vertical medial plane) and the operator safety must be preserved even under these situations in order to prevent severe or even fatal injuries.
  • the object is solved by a method for controlling the stability conditions of a machine moveable on a ground having at least an operational component, in particular a hydraulic cylinder, for moving a portion of the machine, and being maneuvered by an operator through operational commands.
  • the method comprises:
  • a control system for controlling the stability conditions of a machine moveable on a ground having at least an operational component, in particular a hydraulic or electric actuator, for moving a portion of the machine, and being maneuvered by an operator through operational commands, the system comprising:
  • a computer program comprising computer readable instructions which, when implemented on a computer, causes the computer to carry out a method according to the above-mentioned aspect.
  • the present method and control system can be applied to construction machines such as hydraulic excavator, electric excavator, wheel loader and compact truck loader and Industrial vehicle such as forklift, and remote control system that controls these work machine.
  • the operational component can be a control valve.
  • the operational component can be an inverter or a motor.
  • Examples of the present method and control system may avoid instability of construction machines expected in various different situations, thereby allowing the operation of construction machines safely and comfortably.
  • the control method and control system according to these examples can be applied to construction machines performing a variety of works, such as excavation, loading and unloading of heavy objects, etc.
  • Static stability conditions can be prioritized over dynamic stability conditions, especially for low-speed, low-acceleration, high-load works such as loading and unloading of heavy objects.
  • control method and control system can dynamically manage the operator input in order to avoid critical conditions that may evolve in risky rollover accidents.
  • This is particularly relevant when implemented in mini or mid-size machines, such as excavators, because these machines are usually more prone to be used in dangerous situations, especially in presence of high joint accelerations due to critical conditions or large payloads, given the reduced size of their footprint.
  • a general formulation of forces and equilibrium of moments around the center of gravity (CoG) of the machine is used in order to overcome an unstable condition for the operator while controlling the machine during his/her activity.
  • Figure 1 illustrates the process steps of the control method 100.
  • the method 100 can be applied to different working machines, such as excavators, loaders, demolition machines and, generally speaking, to mobile manipulators. It can be used both for onsite maneuvers and remote operations (like in the case of remotely operated machines).
  • the method can be implemented in general machines composed by: a traveling part, a main rotational joint (machine swing), and a serial arm, as in the case of conventional excavators.
  • the working machine 1 comprises at least an operational component 2 in order to move a portion 3 of the machine 1, such as an arm, a shovel, or a base element.
  • the operational component 2 can be any type of actuator , for example hydraulic or electrical, useful to move a portion 3 of the machine 1.
  • the operational component 2 can be a hydraulic cylinder or a linear motor for giving an unidirectional force through a unidirectional stroke.
  • the portion 3 moved by the operational component 2 can be for instance the base of a main body of the machine 1, the arm of the machine 1, the shovel located at the end of the arm, etc...
  • the machine 1 is maneuvered by an operator who gives operational commands for actuating the operational component 2 and thus moving the corresponding portion 3 of the machine 1.
  • a first sensor signal 4 is acquired using a first sensor 13 configured to measure the position of the portion 3 of the machine 1.
  • the first sensor 13 can be a position sensor, such as a potentiometer that is located at said portion 3.
  • a second sensor signal 5 is acquired using a second sensor 14 configured to measure the variation of the position (i.e. the velocity or acceleration) of the portion 3 of the machine 1 relative to the ground G.
  • the second sensor 14 can be a force sensor, such as an inertial measurement unit (IMU) that is also located at said portion 3.
  • IMU inertial measurement unit
  • the operational commands serve to actuate the operational component 2 and transmitting an operational velocity to the portion 3 of the machine 1. It is noted that the steps S101, S102, and S103 do not need to be carried out according to this sequence. In fact, a different sequence can also be conceivable. Alternatively, two or all three steps S101, S102, and S103 can be carried out at the same time or almost at the same time.
  • a control signal 7 is output to control the operational component 2 as a function of said stability condition. Specifically, if it is determined that the machine 1 fulfils the stability condition, i.e. if it is determined that the machine is not going to tip over, no control signal 7 different from the operator's command is required. On the other hand, if it is determined that the machine 1 does not meet the stability condition, i.e. if it is determined that the machine is going to tip over, the control signal 7 (different from the operator's command) is generated in order to actively control the operational component 2 and avoid risky situations due to the lack of stability conditions.
  • the stability condition is determined by monitoring and estimating both the static and the dynamic stability conditions of the machine 1, that is by monitoring and estimating the position of the center of gravity and of an index of stability of the machine 1, relative to a contact area of the machine 1 with the ground G.
  • the static stability condition is affected by the position of the CoG only and does not consider the effect of velocities or accelerations. When the projection of CoG falls outside the footprint area of the machine 1, the machine 1 theoretically tips over.
  • the dynamic stability condition is affected by CoG position but also by velocities and accelerations of the joints. Due to high accelerations, the machine 1 could fall down even if the CoG is inside the footprint.
  • the index of dynamic stability takes into account also the effect of accelerations. If the ZMP projection falls outside the border of the machine footprint, the machine 1 theoretically will lift up from the ground (that does not mean that it will tip-over).
  • the determination of the stability condition is carried out by a velocity scaling process followed by acceleration scaling process.
  • the velocity is scaled using information on payload and on the position of CoG relative to the footprint of the machine.
  • the method can control and scale the velocity of at least the arm and the movable base or cabin.
  • the velocity is set to zero if the position of CoG is approaching a prohibited area (border edge of the footprint).
  • the control method i.e. the algorithm used for carrying out the method
  • the acceleration can be scaled.
  • the ZMP is used as an indication of stability of the machine and is projected on the machine's footprint.
  • the acceleration is scaled (i.e. decreased) until the ZMP is within a certain threshold value.
  • the method can be applied in a first situation in the case of low speed, low accelerations, high payload, as well as in the case of heavy weights loading and unloading, for which the contribution of the position of the center of gravity is more relevant of the contribution of the index of stability of the machine 1.
  • the method can be applied in a second situation in the case of high speed, high accelerations, large oscillations, as well as in the case of digging and earthmoving, for which the evaluation of the index of stability of the machine 1 is the most critical factor to be considered.
  • both the center of gravity and the index of stability of the machine 1 are used as parameters to actively and dynamically manage the operational commands on the operational component 2 in order to maintain the required machine stability.
  • FIG. 2 illustrates a schematic representation of the control system 12.
  • the control system 12 comprises at least a first sensor 13, for example a potentiometer, for measuring the position of a component or portion 3 of the machine 1 and at least a second sensor 14, for example an IMU, for measuring a variation of position of a component or portion 3 of the machine 1 relative to the ground G.
  • the system 12 comprises a control stability module 15 that receives a first sensor signal 4 originated from the first sensor 13, a second sensor signal 5 originated from the second sensor 14 and a command signal 6 originated from a joystick 20 or steering element actuated by an operator.
  • the control stability module 15 is configured to determine a stability condition of the machine 1 based on the first sensor signal 4, the second sensor signal 5 and the command signal 6, and to output a control signal 7 to control the operational component 2 as a function of the determined stability condition.
  • the control stability module 15 comprises a static stability module 16 and a dynamic stability module 17 for monitoring and estimating both the static and the dynamic stability conditions of the machine 1, that is by monitoring and estimating the position of the center of gravity and of an index of stability of the machine 1, relative to a contact area of the machine 1 with the ground G.
  • Figure 3 describes in more detail the components of the control system 12 and in particular of the static stability module 16 and the dynamic stability module 17 and their involvement in the method 100 for controlling the stability of the machine 1.
  • the first sensor signal 4 i.e. a signal derived by a potentiometer or by an IMU
  • the second sensor signal 5 i.e. a signal derived by an IMU
  • the command signal 6 are received by the static velocity module 16 and are used by a velocity scaling module 18 to carry out a velocity scaling process and to generate a corrected operational velocity 21.
  • the method 100 comprises determining a payload of the machine 1, wherein monitoring the static stability comprises a velocity scaling process obtained based on a function using as input values both the payload of the machine 1 and the position of the center of gravity of the machine 1 relative to a contact area of the machine 1 with the ground G, the method 100 comprising generating the corrected operational velocity 21 based on said velocity scaled process.
  • the control system 12 can comprise a dedicated sensor, such as a pressure sensor.
  • the method 100 comprises calculating a commanded acceleration 23 at an actual time step and defined by the difference of the corrected operational velocity 21 and an operational velocity 22 as calculated at a previous time step divided by the time step Ts of the algorithm (i.e. a discrete derivative of the operational velocity 21), generating a corrected operational acceleration 24, integrating said corrected operational acceleration 24 and generating an operational velocity 25 to control the operational component 2.
  • the dynamic stability module 17 comprises an acceleration scaling module 19 for receiving the commanded acceleration 23 at the actual time step and generating the corrected operational acceleration 24.
  • the time step Ts of the algorithm is intended as the inverse of the running frequency of said algorithm, i.e. the time interval passed between two consecutive algorithm iteration steps.
  • estimating the dynamic stability comprises an acceleration scaling process and the method 100 comprises generating the corrected operational acceleration 24 based on the acceleration scaling process, wherein in particular the acceleration scaling process is carried out after the velocity scaling process.
  • the acceleration scaling comprises a prediction of a position of a stability index relative to the ground G and specifically relative to a stability region as will be defined in more detail with reference to the following figures 7A and 7B .
  • the stability index can be the zero moment point, ZMP, of the machine 1.
  • the acceleration scaling module iteratively scales down the desired acceleration using a prediction of the stability index using a ZMP algorithm.
  • Figure 4 describes in more detail the method 100 for controlling the stability of the machine 1 by combining both the static and dynamic stability conditions.
  • the sensors e.g. potentiometers and/or IMU
  • the sensor readings are used to reconstruct the state of the machine 1 and to estimate the payload.
  • the position of the center of gravity is evaluated and a velocity scale gain is computed.
  • the velocity scaling process is then carried out taking the operator commands (command signal 6) into account and the corrected operational velocity 21 is generated.
  • a commanded acceleration 23 is generated by operating the discrete derivative of the corrected operational velocity 21.
  • the acceleration scaling process is carried out on the commanded acceleration 23 with a ZMP estimation taking the state reconstruction of the machine 1 into account.
  • the ZMP estimation also uses information related to the payload of the machine 1.
  • the corrected operational acceleration 2 is then integrated and the operational velocity 25 is generated to control the actuator (operational component 2).
  • FIG. 5A the velocity scale is directly carried out on the operator commands in order to obtain a scaled velocity (i.e. corrected operational velocity 21).
  • a scaled velocity i.e. corrected operational velocity 21.
  • This approach is simple and straightforward.
  • small velocities would be scaled.
  • a saturation process is added to the scaling.
  • scaled maximum velocities are set as saturation values and the operator commands are used for the saturation process. In this case, if the velocities commanded by the operator are too small, these are not scaled.
  • the maximum scaling is computed in all the portions 3 of the machine 1 that are taken into account, in particular with respect to joints, and the same scaling gain is applied to all portions 3 (i.e. joints). This is useful to ensure that the motion of a component 2 of the machine 1 (for example the bucket) in the Cartesian space is the same in position but slower in velocity.
  • FIG. 6 shows a possible construction machine 1 that could benefit from the control method 100 and the control system 12 of the present disclosure.
  • the machine 1 is an excavator machine with a base and an articulated arm movable on a ground G.
  • the machine 1 comprises a lower body 26 including the track frame and an upper body 27 including a cabin and a swing cylinder bottom.
  • the machine 1 comprises an articulated arm composed by a first arm section 28 including a bottom bracket, swing cylinder rod and boom cylinder bottom, a second arm section 29 including a boom, a boom cylinder rod and an arm cylinder bottom, and a third arm section 30 including an arm cylinder rod a bucket link and a bucket cylinder bottom.
  • the machine 1 comprises an extremity section 31 including a bucket, a bucket cylinder rod and a bucket arm.
  • the method performs a control action based on the estimation of both static and dynamic stability conditions, achieved through the monitoring and the estimation of the position of center of gravity and the index of stability, i.e. ZMP (mainly related to machine forces/torques and, generally speaking, accelerations).
  • ZMP mainly related to machine forces/torques and, generally speaking, accelerations.
  • the machine state is known.
  • the machine skeleton and the joints have to be equipped with a set of sensors 13, 14 that acquire position, velocity and acceleration of each link while the machine 1 is moving relative to the ground G.
  • the algorithm formulation is independent on the type and number of sensors installed.
  • one or more Inertial Measurement Units (IMU) 14 and/or one or more potentiometers 13 are suitably located in the machine 1.
  • the potentiometer 13 can be located at the joints of the machine 1 and the IMU 14 can be located at the movable portions 3 of the machine 1. In this way, joints position can be directly measured by the potentiometers 13, while velocities and accelerations can be measured by the IMUs 14.
  • FIG 6 a possible configuration of IMUs 14 and potentiometers 13 is presented together with their position on a mini excavator frame.
  • the number of sensors depends on the selected machine kinematics, and it is directly related to its own degrees of freedom and moving links.
  • the considered excavator of figure 6 has five degrees of freedom (boom swing, boom, arm, bucket, cabin turning), but one of them (the boom swing) has not been considered for ease of implementation.
  • the main swing has been considered.
  • the position of the center of gravity is determined within a stability region 8 defined in the contact area of the machine 1 with the ground G and wherein said stability region 8 comprises at least a first region 9 and a second region 10, as shown in figures 7A and 7B .
  • the first region 9 can be contained in the second region 10, wherein the perimeter of the second region 10 is larger than the perimeter of the first region 9.
  • the perimeter of the second region 10 can partially coincide with the perimeter of the first region 9.
  • the first region 9 and the second region 10 have the same shape and the shape can be a polygonal shape or an elliptical shape.
  • both the first region 9 and the second region 10 can have a rectangular shape, as shown in figure 7A or both the first region 9 and the second region 10 can have an elliptical shape, as shown in figure 7B .
  • the operational component 2 is controlled by the operational commands of the operator and if the position of the center of gravity is within the second region 10, than the operational velocity is reduced to a scaled velocity and the operational component 2 is controlled by the control signal 7.
  • the stability region 8 comprises a third region 11, the first region 9 and the second region 10 being contained in the third region 11, wherein if the position of the center of gravity is within the second region 10 and is approaching the third region 11, than the operational velocity is set to zero.
  • the third region 11 has the same shape as the first region 9 and second region 10 and represents the border edge of the stability region 8.
  • each combination of center of gravity and ZMP 2D coordinates that falls into this area is considered not critical and the operational commands of the operator are passed without modifications.
  • each combination of center of gravity and ZMP 2D coordinates that falls into the second region 10 (“controlled area") is considered to be managed by the control algorithm.
  • this is a "prohibited critical area”. Hypothetically, the position of the center of gravity should not ever fall in this area (in fact the velocity is set to zero when the center of gravity is approaching the third region 11) while ZMP combinations that fall into this area will be managed like in the "controlled area”.
  • figure 7B can be extremely advantageous compared to that of figure 7A in case of oscillations of the machine's body, for example when the arm of the machine (excavator) 1 is stationary and the cabin rotates.
  • the regions have a rectangular shape, by measuring the distance variation of the center of gravity from the border during the rotation, when the base of the machines 1 rotates close to the corners, a profile with a discontinuity would be created.
  • an elliptical or almost circular shape of the regions would ensure a smoother profile without discontinuities.
  • Figure 8 shows an example of the controller area velocity scaling profile function that can be used in the algorithm.
  • the algorithm uses the current and predicted measurement of the center of gravity and ZMP.
  • the center of gravity is defined as the average location of the weight of the object and can be obtained by the position of each machine link.
  • the ZMP is defined as the point on the contact surface in which the sum of the reaction forces does not produce any moment in the horizontal direction.
  • the velocity scaling function of figure 8 shows that by increasing the distance of the center of gravity (GoG) from the border, the CoG falls in the safe area or first region 9 and no scaling is required.
  • the distance of the CoG from the border being equal, the CoG passes from the safe area (first region 9) to the controlled area (second region 10) by increasing the payload. In this case, a velocity scaling is required.
  • the CoG falls in the prohibited area (third region 11) and no motion is allowed. It is noted that the probability of falling in the prohibited area increases by increasing the payload and reducing the distance of the CoG from the border.
  • the probability of falling in the safe area increases by decreasing the payload and by increasing the distance of the CoG from the border.
  • the dimension of the stability region 8 can be changed on real time based on the payload of the machine 1, wherein in particular the surface of the first region 9 and of the second region 10 can be changed as a function of the payload.
  • FIGS 9A and 9B show a condition with small payload and figure 9B shows a condition with a large payload.
  • the first region 9 (safe area) of figure 9A is bigger than the first region 9 of figure 9B .
  • the prohibited area (third region 11) of figure 9A is smaller than the third region 11 of figure 9B .
  • the stability region 8 and in particular the surfaces of the respective first, second and third regions 9, 10, 11 are conveniently changed.
  • the controlled and the prohibited area become bigger and the operational component 2 can be controlled by the control system 12.
  • the first and third regions i.e. the safe area and the prohibited area
  • the velocity in the second region 10 can be scaled using a second order function.
  • Figure 10 schematically shows a computer system for implementing methods of examples of the disclosure.
  • Figure 10 shows an example of a computing device 2000 for example which may be arranged to implement one or more of the examples of the methods described herein.
  • the computing device 2000 comprises main unit 2002.
  • the main unit 2002 may comprise a processor 2004 and a system memory 2006.
  • the processor 2004 may comprise a processor core 2008, a cache 2010, and one or more registers 2012.
  • the processor core 2008 may comprise one or more processing cores and may comprise a plurality of cores which may run a plurality of threads.
  • the processor 2004 may be of any suitable type such as microcontroller, microprocessor, digital signal processor or a combination of these, although it will be appreciated that other types of processor may be used.
  • the processor core 2008 may comprise one or more processing units.
  • the processor core 2008 comprises one or more of a floating point unit, an arithmetic unit, a digital signal processing unit, or a combination of these and/or plurality of other processing units, although it will be appreciated that other processing units could be used.
  • the cache 2010 may comprise a plurality of caches such as a level one cache and a level two cache, although other appropriate cache arrangements could be used.
  • the processor 2004 comprises a memory controller 2014 operable to allow communication between the processor 2004 and the system memory 2006 via a memory bus 2016.
  • the memory controller 2014 may be implemented as an integral part of the processor 2004, or it may be implemented as separate component.
  • the system memory 2006 may be of any suitable type such as non-volatile memory (e.g. flash memory or read only memory), volatile memory (such as random access memory (RAM)), and/or a combination of volatile and non-volatile memory.
  • the system memory 2006 may be arranged to store code for execution by the processor 2004 and/or data related to the execution.
  • the system memory may store operating system code 2018, application code 2020, and program data 2022.
  • the application code 2020 may comprise code to implement one or more of the example methods described herein, for examples to implement the steps described above with reference to Figures 1 and 3-5 .
  • the application code 2020 may be arranged to cooperate with the program data 2022 or other media, for example to allow acquiring sensor and command signals, determining a stability condition and outputting a control signal.
  • the computing device 2000 may have additional features, functionality or interfaces.
  • main unit 2002 may cooperate with one or more peripheral devices for example to implement the methods described herein.
  • the computing device 2000 comprises, as peripheral devices, an output interface 2024, a peripheral interface 2026, a storage device 2028, and a communication module 2030.
  • the computing device comprises an interface bus 2032 arranged to facilitate communication between the main unit 2002 and the peripheral devices.
  • the output device 2024 may comprise output devices such as a graphical processing unit (GPU) 2034 and audio output unit 2036 for example arranged to be able to communicate with external devices such as a display, and/or loudspeaker, via one or more suitable ports such as audio/video (A/V) port.
  • the peripheral interface 2026 may comprise a serial interface 2038, a parallel interface 2040, and an input/output port(s) 2042 which may be operable to cooperate with the main unit 2002 to allow communication with one or more external input and/or output devices via the I/O port 2042.
  • the I/O port 2042 may communicate with one or more input devices such as a keyboard, mouse, touch pad, voice input device, scanner, imaging capturing device, video camera, and the like, and/or with one or more output devices such as a 2D printer (e.g. paper printer), or 3D printer, or other suitable output device.
  • input devices such as a keyboard, mouse, touch pad, voice input device, scanner, imaging capturing device, video camera, and the like
  • output devices such as a 2D printer (e.g. paper printer), or 3D printer, or other suitable output device.
  • signals may be received via the I/O port 2042 and/or the communication module 2030.
  • the storage device may comprise removable storage media 2044 and/or non-removable storage media 2046.
  • the removable storage media may be random access memory (RAM), electrically erasable programmable read only memory (EEPROM), read only memory (ROM) flash memory, or other memory technology, optical storage media such as compact disc (CD) digital versatile disc (DVD) or other optical storage media, magnetic storage media such as floppy disc, magnetic tape, or other magnetic storage media.
  • RAM random access memory
  • EEPROM electrically erasable programmable read only memory
  • ROM read only memory
  • flash memory or other memory technology
  • optical storage media such as compact disc (CD) digital versatile disc (DVD) or other optical storage media
  • magnetic storage media such as floppy disc, magnetic tape, or other magnetic storage media.
  • Non-removable storage media 2046 may comprise a magnetic storage media such as a hard disk drive, or solid state hard drive, or other suitable media, although it will be appreciated that any suitable non-removable storage media could be used.
  • the storage device 2028 may allow access by the main unit 2002 for example to implement the methods described herein.
  • the communication module may comprise a wireless communication module 2048 and a wired communication module 2050.
  • the wireless communication module may be arranged to communicate wirelessly via a suitable wireless communication standard for example relating to Wi-Fi, Bluetooth, near field communication, optical communication (such as infrared), acoustic communication, or via a suitable mobile telecommunications standard.
  • the wired communication module may allow communication via a wired or optical link for example by Ethernet or optical cable.
  • any suitable communication module could be used.
  • control stability module 15, the static stability module 16, the dynamic stability module 17, the velocity scaling module 18 and acceleration scaling module 19 may for example be implemented by a control unit.
  • one or more of the control stability module 15, the static stability module 16, the dynamic stability module 17, the velocity scaling module 18 and acceleration scaling module 19 may be implemented by the main unit 2002, although it will be appreciated that other suitable implementations could be used.
  • these modules may be implemented by the main unit 2002 in cooperation with the output device 2024, although it will be appreciated that other suitable implementations could be used.
  • elements of the disclosed methods may be implemented in a computing device in any suitable manner.
  • a conventional computing device may be adapted to perform one or more of the methods described herein by programming/adapting one or more processors of the computing device.
  • the programming/adapting may be implemented in the form of a computer program product comprising computer implementable instructions stored on a data carrier and/or carried by a signal bearing medium, such as floppy disk, hard disk, optical disk, solid state drive, flash memory, programmable read only memory (PROM), random access memory (RAM), or any combination of these or other storage media or signal bearing medium, or transmitted via a network such as a wireless network, Ethernet, the internet, or any other combination of these or other networks.
  • a signal bearing medium such as floppy disk, hard disk, optical disk, solid state drive, flash memory, programmable read only memory (PROM), random access memory (RAM), or any combination of these or other storage media or signal bearing medium, or transmitted via a network such as a wireless network, Ethernet, the internet, or any other combination
  • a computer program may comprise computer readable instructions which, when implemented on a computing device, cause the computing device to carry out a method according examples of the disclosure.
  • a storage medium may comprise the computer program, for example, as mentioned above.
  • other suitable computer architectures could be used such as those based on one or more parallel processors.
  • at least some processing may be implemented on one or more graphical processing units (GPUs).
  • GPUs graphical processing units
  • computing device 2000 is described as a general purpose computing device, it will be appreciated that this could be implemented in any appropriate device, such as mobile phone, smart phone, camera, video camera, tablet device, server device, with modifications and/or adaptation if appropriate to the features described above, for example dependent on the desired functionality and hardware features.

Abstract

Method (100) for controlling the stability conditions of a machine (1) moveable on a ground (G) having at least an operational component (2), in particular a hydraulic cylinder, for moving a portion (3) of the machine (1), and being maneuvered by an operator through operational commands, the method (100) comprising acquiring (S101) at least a first sensor signal (4) defining the position of the portion of the machine (1); acquiring (S102) at least a second sensor signal (5) defining a variation of the position of the portion of the machine (1) relative to the ground (G); acquiring (S103) at least a command signal (6) defining the operational commands of the operator for actuating the operational component (2) and for transmitting an operational velocity to said portion (3) of the machine (1); determining (S104) a stability condition of the machine (1) based on the first sensor signal (4), the second sensor signal (5) and the command signal (6), and outputting (S105) a control signal (7) to control the operational component (2) as a function of the determined stability condition, wherein the stability condition is determined by monitoring and estimating both the static and the dynamic stability conditions of the machine (1), in particular by monitoring and estimating the position of the center of gravity and of an index of stability of the machine (1), relative to a contact area of the machine (1) with the ground (G).

Description

  • The present disclosure relates to a method and a corresponding system for controlling the stability conditions of a machine, such as a construction machine.
  • Safety can be considered as one of the most relevant aspects during every working activity. Among all the possible working scenarios, construction sites can be easily identified as one of the riskiest fields for several reasons. In fact, working or construction machines are used in a large variety of tasks and quick motion and/or sudden changes of motion direction are often required. Moreover, even if not properly allowed (like in the case of excavators), heavy payloads are continuously loaded and unloaded, sometimes pushing the machine stability over its limits, thus creating potentially risky and fatal conditions for the operator. When these conditions occur, the machine can experience a rollover (i.e. the machine can roll over onto its side or end through approximately 90° from its main vertical medial plane) and tipping over (the machine can move more than 90°, close to 180° from its main vertical medial plane) and the operator safety must be preserved even under these situations in order to prevent severe or even fatal injuries.
  • According to several investigations, it seems that the most relevant number of hazards while maneuvering a construction machine is related to machine instability conditions, that can be usually generated if the commands to the machine are given in improper ways, and/or with wrong equipment or when the machine safety instructions are not properly followed by the operator.
  • In recent years, solutions are proposed addressing the problem of improving the safety of operators maneuvering construction machines and applying concepts related to the dynamic and control movement of the robots, for example using the Zero Moment Point (ZMP) or equivalent approaches. However, these solutions are in some case complicated and not always very effective since they only provide control systems that passively report critical conditions, thereby alerting the operator when the machine is going to reach an unstable condition. However, prior art systems cannot prevent the occurrence of risky or fatal situation, in case the operator does not notice, or consciously ignores, the machine warnings.
  • It is therefore an object of the invention to obtain an efficient method and system for controlling the stability of a construction machine that actively acts on preventing risky situations.
  • The object is solved by a method for controlling the stability conditions of a machine moveable on a ground having at least an operational component, in particular a hydraulic cylinder, for moving a portion of the machine, and being maneuvered by an operator through operational commands. The method comprises:
    • acquiring at least a first sensor signal defining the position of the portion of the machine;
    • acquiring at least a second sensor signal defining a variation of the position of the portion of the machine relative to the ground,
    • acquiring at least a command signal defining the operational commands of the operator for actuating the operational component and for transmitting an operational velocity to said portion of the machine;
    • determining a stability condition of the machine based on the first sensor signal, the second sensor signal and the command signal, and
    • outputting a control signal to control the operational component as a function of the determined stability condition,
    • wherein the stability condition is determined by monitoring and estimating both the static and the dynamic stability conditions of the machine, in particular by monitoring and estimating the position of the center of gravity and of an index of stability of the machine, relative to a contact area of the machine with the ground.
  • According to another aspect, there is provided a control system for controlling the stability conditions of a machine moveable on a ground having at least an operational component, in particular a hydraulic or electric actuator, for moving a portion of the machine, and being maneuvered by an operator through operational commands, the system comprising:
    • at least a first sensor for generating a first sensor signal defining the position of the portion of the machine;
    • at least a second sensor for generating a second sensor signal defining a variation of the position of the portion of the machine relative to the ground; and
    • a control stability module for receiving the first sensor signal, the second sensor signal, and at least a command signal defining the operational commands of the operator for actuating the operational component and for transmitting an operational velocity to said portion of the machine, the control stability module determining a stability condition of the machine based on the first sensor signal, the second sensor signal and the command signal, and outputting a control signal to control the operational component as a function of the determined stability condition,
    • wherein the control stability module comprises a static stability module and a dynamic stability module for monitoring and estimating both the static and the dynamic stability conditions of the machine, in particular by monitoring and estimating the position of the center of gravity and of an index of stability of the machine, relative to a contact area of the machine with the ground.
  • In an additional aspect, there is provided a working machine comprising the control system according to the above-mentioned aspect.
  • In a further aspect, there is provided a computer program comprising computer readable instructions which, when implemented on a computer, causes the computer to carry out a method according to the above-mentioned aspect.
  • In another aspect, there is provided a storage medium comprising the computer program according to the above-mentioned aspect.
  • Other aspects and features are defined in the appended claims.
  • Advantageously, the present method and control system can be applied to construction machines such as hydraulic excavator, electric excavator, wheel loader and compact truck loader and Industrial vehicle such as forklift, and remote control system that controls these work machine. In particular, in case the construction machine is a hydraulic excavator, loader or a generic mobile manipulator, the operational component can be a control valve. In case the construction machine is an electric excavator, loader or a generic mobile manipulator, the operational component can be an inverter or a motor.
  • Examples of the present method and control system may avoid instability of construction machines expected in various different situations, thereby allowing the operation of construction machines safely and comfortably. In particular, the control method and control system according to these examples can be applied to construction machines performing a variety of works, such as excavation, loading and unloading of heavy objects, etc. Static stability conditions can be prioritized over dynamic stability conditions, especially for low-speed, low-acceleration, high-load works such as loading and unloading of heavy objects.
  • Advantageously, the control method and control system according to these examples can dynamically manage the operator input in order to avoid critical conditions that may evolve in risky rollover accidents. This is particularly relevant when implemented in mini or mid-size machines, such as excavators, because these machines are usually more prone to be used in dangerous situations, especially in presence of high joint accelerations due to critical conditions or large payloads, given the reduced size of their footprint. Specifically, a general formulation of forces and equilibrium of moments around the center of gravity (CoG) of the machine is used in order to overcome an unstable condition for the operator while controlling the machine during his/her activity.
  • Examples of the disclosure will now be described by way of example only with reference to the accompanying drawings, in which like references refer to like parts, and in which:
    • Figure 1 is a flowchart of the control method according to an example;
    • Figure 2 is a schematic representation of the control system according to an example;
    • Figure 3 is a representation of the components of the control system according to an example;
    • Figure 4 is a detailed representation of the components of the control system according to an example;
    • Figures 5A-5B are schematic representations of the velocity scaling processes according to an example;
    • Figures 6 is a schematic representation of a working machine according to an example;
    • Figures 7A-7B are schematic representations of two stability regions according to two different examples;
    • Figure 8 is a diagram of the velocity profile function according to an example;
    • Figures 9A-9B are schematic representations of the variation of the stability region according to an example; and
    • Figure 10 is a computer system for implementing the method according to an example.
  • A system and a method for controlling the stability conditions of a machine are disclosed. In the following description, a number of specific details are presented in order to provide a thorough understanding of the examples of the disclosure. It will be apparent however to a person skilled in the art that these specific details need not be employed in order to practice the examples of the disclosure. Conversely, specific details known to the person skilled in the art are omitted for the purposes of clarity in presenting the examples.
  • Figure 1 illustrates the process steps of the control method 100. The method 100 can be applied to different working machines, such as excavators, loaders, demolition machines and, generally speaking, to mobile manipulators. It can be used both for onsite maneuvers and remote operations (like in the case of remotely operated machines). In other words, the method can be implemented in general machines composed by: a traveling part, a main rotational joint (machine swing), and a serial arm, as in the case of conventional excavators. As will be described in more detail below, the working machine 1 comprises at least an operational component 2 in order to move a portion 3 of the machine 1, such as an arm, a shovel, or a base element.
  • The operational component 2 can be any type of actuator , for example hydraulic or electrical, useful to move a portion 3 of the machine 1. For example, the operational component 2 can be a hydraulic cylinder or a linear motor for giving an unidirectional force through a unidirectional stroke. The portion 3 moved by the operational component 2 can be for instance the base of a main body of the machine 1, the arm of the machine 1, the shovel located at the end of the arm, etc...
  • The machine 1 is maneuvered by an operator who gives operational commands for actuating the operational component 2 and thus moving the corresponding portion 3 of the machine 1.
  • At step S101, a first sensor signal 4 is acquired using a first sensor 13 configured to measure the position of the portion 3 of the machine 1. For example, the first sensor 13 can be a position sensor, such as a potentiometer that is located at said portion 3. At step S102, a second sensor signal 5 is acquired using a second sensor 14 configured to measure the variation of the position (i.e. the velocity or acceleration) of the portion 3 of the machine 1 relative to the ground G. For example, the second sensor 14 can be a force sensor, such as an inertial measurement unit (IMU) that is also located at said portion 3. The acquisition of a command signal 6 defining the operational commands of the operator is carried out at step S103. The operational commands serve to actuate the operational component 2 and transmitting an operational velocity to the portion 3 of the machine 1. It is noted that the steps S101, S102, and S103 do not need to be carried out according to this sequence. In fact, a different sequence can also be conceivable. Alternatively, two or all three steps S101, S102, and S103 can be carried out at the same time or almost at the same time.
  • Based on the first sensor signal 4, the second sensor signal 5 and the command signal 6, the stability condition of the machine 1 is determined at step S104. At step S105, a control signal 7 is output to control the operational component 2 as a function of said stability condition. Specifically, if it is determined that the machine 1 fulfils the stability condition, i.e. if it is determined that the machine is not going to tip over, no control signal 7 different from the operator's command is required. On the other hand, if it is determined that the machine 1 does not meet the stability condition, i.e. if it is determined that the machine is going to tip over, the control signal 7 (different from the operator's command) is generated in order to actively control the operational component 2 and avoid risky situations due to the lack of stability conditions.
  • In particular, the stability condition is determined by monitoring and estimating both the static and the dynamic stability conditions of the machine 1, that is by monitoring and estimating the position of the center of gravity and of an index of stability of the machine 1, relative to a contact area of the machine 1 with the ground G. In particular, the static stability condition is affected by the position of the CoG only and does not consider the effect of velocities or accelerations. When the projection of CoG falls outside the footprint area of the machine 1, the machine 1 theoretically tips over. On the other hand, the dynamic stability condition is affected by CoG position but also by velocities and accelerations of the joints. Due to high accelerations, the machine 1 could fall down even if the CoG is inside the footprint. The index of dynamic stability (for example computed using the ZMP) takes into account also the effect of accelerations. If the ZMP projection falls outside the border of the machine footprint, the machine 1 theoretically will lift up from the ground (that does not mean that it will tip-over).
  • Specifically, the determination of the stability condition is carried out by a velocity scaling process followed by acceleration scaling process. The velocity is scaled using information on payload and on the position of CoG relative to the footprint of the machine. In a machine like an excavator, the method can control and scale the velocity of at least the arm and the movable base or cabin. Advantageously, the velocity is set to zero if the position of CoG is approaching a prohibited area (border edge of the footprint). In particular, the control method (i.e. the algorithm used for carrying out the method) constantly monitors where the CoG is located relative to the contact area of the machine (footprint) and also monitors where the index of stability (ZMP) will go if applying the acceleration provided by the operational commands of the operator. Based on this prediction, the acceleration can be scaled. In particular, the ZMP is used as an indication of stability of the machine and is projected on the machine's footprint. The acceleration is scaled (i.e. decreased) until the ZMP is within a certain threshold value.
  • By combining both static and dynamic stability conditions a large variety of tasks that can be performed also with conventional construction machines. In particular, thanks to this control method 100, a complete range of risky conditions can be avoided. For example, the method can be applied in a first situation in the case of low speed, low accelerations, high payload, as well as in the case of heavy weights loading and unloading, for which the contribution of the position of the center of gravity is more relevant of the contribution of the index of stability of the machine 1. Also, the method can be applied in a second situation in the case of high speed, high accelerations, large oscillations, as well as in the case of digging and earthmoving, for which the evaluation of the index of stability of the machine 1 is the most critical factor to be considered. In order to guarantee the machine stability in both above-mentioned situations, both the center of gravity and the index of stability of the machine 1 are used as parameters to actively and dynamically manage the operational commands on the operational component 2 in order to maintain the required machine stability.
  • Figure 2 illustrates a schematic representation of the control system 12. The control system 12 comprises at least a first sensor 13, for example a potentiometer, for measuring the position of a component or portion 3 of the machine 1 and at least a second sensor 14, for example an IMU, for measuring a variation of position of a component or portion 3 of the machine 1 relative to the ground G. In addition, the system 12 comprises a control stability module 15 that receives a first sensor signal 4 originated from the first sensor 13, a second sensor signal 5 originated from the second sensor 14 and a command signal 6 originated from a joystick 20 or steering element actuated by an operator. The control stability module 15 is configured to determine a stability condition of the machine 1 based on the first sensor signal 4, the second sensor signal 5 and the command signal 6, and to output a control signal 7 to control the operational component 2 as a function of the determined stability condition. In particular, the control stability module 15 comprises a static stability module 16 and a dynamic stability module 17 for monitoring and estimating both the static and the dynamic stability conditions of the machine 1, that is by monitoring and estimating the position of the center of gravity and of an index of stability of the machine 1, relative to a contact area of the machine 1 with the ground G.
  • Figure 3 describes in more detail the components of the control system 12 and in particular of the static stability module 16 and the dynamic stability module 17 and their involvement in the method 100 for controlling the stability of the machine 1. The first sensor signal 4 (i.e. a signal derived by a potentiometer or by an IMU), the second sensor signal 5 (i.e. a signal derived by an IMU) and the command signal 6 are received by the static velocity module 16 and are used by a velocity scaling module 18 to carry out a velocity scaling process and to generate a corrected operational velocity 21. In particular, the method 100 comprises determining a payload of the machine 1, wherein monitoring the static stability comprises a velocity scaling process obtained based on a function using as input values both the payload of the machine 1 and the position of the center of gravity of the machine 1 relative to a contact area of the machine 1 with the ground G, the method 100 comprising generating the corrected operational velocity 21 based on said velocity scaled process. For the determination of the payload, the control system 12 can comprise a dedicated sensor, such as a pressure sensor.
  • In one example, the method 100 comprises calculating a commanded acceleration 23 at an actual time step and defined by the difference of the corrected operational velocity 21 and an operational velocity 22 as calculated at a previous time step divided by the time step Ts of the algorithm (i.e. a discrete derivative of the operational velocity 21), generating a corrected operational acceleration 24, integrating said corrected operational acceleration 24 and generating an operational velocity 25 to control the operational component 2. In particular, the dynamic stability module 17 comprises an acceleration scaling module 19 for receiving the commanded acceleration 23 at the actual time step and generating the corrected operational acceleration 24. It is noted that in this context the time step Ts of the algorithm is intended as the inverse of the running frequency of said algorithm, i.e. the time interval passed between two consecutive algorithm iteration steps.
  • In one example, estimating the dynamic stability comprises an acceleration scaling process and the method 100 comprises generating the corrected operational acceleration 24 based on the acceleration scaling process, wherein in particular the acceleration scaling process is carried out after the velocity scaling process.
  • According to an advantageous example, the acceleration scaling comprises a prediction of a position of a stability index relative to the ground G and specifically relative to a stability region as will be defined in more detail with reference to the following figures 7A and 7B. In particular, the stability index can be the zero moment point, ZMP, of the machine 1. The acceleration scaling module iteratively scales down the desired acceleration using a prediction of the stability index using a ZMP algorithm.
  • Figure 4 describes in more detail the method 100 for controlling the stability of the machine 1 by combining both the static and dynamic stability conditions. First of all, the sensors (e.g. potentiometers and/or IMU) are read and the corresponding sensor signals are received by the control system 12. The sensor readings are used to reconstruct the state of the machine 1 and to estimate the payload. Based on the state reconstruction and the payload estimation, the position of the center of gravity is evaluated and a velocity scale gain is computed. The velocity scaling process is then carried out taking the operator commands (command signal 6) into account and the corrected operational velocity 21 is generated. Next, a commanded acceleration 23 is generated by operating the discrete derivative of the corrected operational velocity 21. Using the operational velocity 22 calculated at a previous time step and not a velocity directly measured by the sensors serves to avoid any feedback loop that may cause instabilities and to avoid the system dynamics to influence the algorithm. Next, the acceleration scaling process is carried out on the commanded acceleration 23 with a ZMP estimation taking the state reconstruction of the machine 1 into account. Advantageously, the ZMP estimation also uses information related to the payload of the machine 1. The corrected operational acceleration 2 is then integrated and the operational velocity 25 is generated to control the actuator (operational component 2).
  • It is noted that regarding the velocity scaling process, two different approaches can be taken into account. These approaches are illustrated in figures 5A and 5B. According to a first approach (Fig. 5A), the velocity scale is directly carried out on the operator commands in order to obtain a scaled velocity (i.e. corrected operational velocity 21). This approach is simple and straightforward. However, in this case also small velocities would be scaled. According to a second approach (Fig. 5B), a saturation process is added to the scaling. In particular, scaled maximum velocities are set as saturation values and the operator commands are used for the saturation process. In this case, if the velocities commanded by the operator are too small, these are not scaled. After the saturation step, the maximum scaling is computed in all the portions 3 of the machine 1 that are taken into account, in particular with respect to joints, and the same scaling gain is applied to all portions 3 (i.e. joints). This is useful to ensure that the motion of a component 2 of the machine 1 (for example the bucket) in the Cartesian space is the same in position but slower in velocity.
  • Figure 6 shows a possible construction machine 1 that could benefit from the control method 100 and the control system 12 of the present disclosure. The machine 1 is an excavator machine with a base and an articulated arm movable on a ground G. Specifically, the machine 1 comprises a lower body 26 including the track frame and an upper body 27 including a cabin and a swing cylinder bottom. Also, the machine 1 comprises an articulated arm composed by a first arm section 28 including a bottom bracket, swing cylinder rod and boom cylinder bottom, a second arm section 29 including a boom, a boom cylinder rod and an arm cylinder bottom, and a third arm section 30 including an arm cylinder rod a bucket link and a bucket cylinder bottom. Finally, the machine 1 comprises an extremity section 31 including a bucket, a bucket cylinder rod and a bucket arm.
  • As mentioned above, the method performs a control action based on the estimation of both static and dynamic stability conditions, achieved through the monitoring and the estimation of the position of center of gravity and the index of stability, i.e. ZMP (mainly related to machine forces/torques and, generally speaking, accelerations). In order to guarantee the correctness and the effectiveness of the stability control, it is necessary that the machine state is known. In order to obtain this information, the machine skeleton and the joints have to be equipped with a set of sensors 13, 14 that acquire position, velocity and acceleration of each link while the machine 1 is moving relative to the ground G. Other than this requirement, the algorithm formulation is independent on the type and number of sensors installed.
  • As a possible set of sensors for the machine state reconstruction, one or more Inertial Measurement Units (IMU) 14 and/or one or more potentiometers 13 are suitably located in the machine 1. For example, the potentiometer 13 can be located at the joints of the machine 1 and the IMU 14 can be located at the movable portions 3 of the machine 1. In this way, joints position can be directly measured by the potentiometers 13, while velocities and accelerations can be measured by the IMUs 14.
  • In figure 6 a possible configuration of IMUs 14 and potentiometers 13 is presented together with their position on a mini excavator frame. The number of sensors depends on the selected machine kinematics, and it is directly related to its own degrees of freedom and moving links. As an example, the considered excavator of figure 6 has five degrees of freedom (boom swing, boom, arm, bucket, cabin turning), but one of them (the boom swing) has not been considered for ease of implementation. In addition to the implement degrees of freedom, the main swing has been considered. So that, for this machine configuration, three IMU 14 and three potentiometers 13 have been installed: three IMUs 14 (undercarriage, boom link, arm link), while three potentiometers 13 are placed on the first, on the third and on the fourth joint (boom swing joint has been considered as static, as previously mentioned).
  • Thanks to this sensor architecture, the whole machine state can be reconstructed, so that joints position, velocity and acceleration can be used as inputs for the designed algorithm.
  • According to one example, the position of the center of gravity is determined within a stability region 8 defined in the contact area of the machine 1 with the ground G and wherein said stability region 8 comprises at least a first region 9 and a second region 10, as shown in figures 7A and 7B. The first region 9 can be contained in the second region 10, wherein the perimeter of the second region 10 is larger than the perimeter of the first region 9. Alternatively, the perimeter of the second region 10 can partially coincide with the perimeter of the first region 9. Advantageously, the first region 9 and the second region 10 have the same shape and the shape can be a polygonal shape or an elliptical shape. For example, both the first region 9 and the second region 10 can have a rectangular shape, as shown in figure 7A or both the first region 9 and the second region 10 can have an elliptical shape, as shown in figure 7B.
  • In particular, if the position of the center of gravity is within the first region 9, than the operational component 2 is controlled by the operational commands of the operator and if the position of the center of gravity is within the second region 10, than the operational velocity is reduced to a scaled velocity and the operational component 2 is controlled by the control signal 7.
  • According to another example, the stability region 8 comprises a third region 11, the first region 9 and the second region 10 being contained in the third region 11, wherein if the position of the center of gravity is within the second region 10 and is approaching the third region 11, than the operational velocity is set to zero.
  • As shown in figures 7A and 7B, the third region 11 has the same shape as the first region 9 and second region 10 and represents the border edge of the stability region 8.
  • In order to maintain high performances and without influencing the operator commands if not strictly required, if the machine state/condition is evaluated as "safe", that is if the center of gravity falls within the first region 9, the control system 12 does not act on the operator input. In other words, each combination of center of gravity and ZMP 2D coordinates that falls into this area is considered not critical and the operational commands of the operator are passed without modifications. On the other hand, each combination of center of gravity and ZMP 2D coordinates that falls into the second region 10 ("controlled area") is considered to be managed by the control algorithm. As regards the third region 11, this is a "prohibited critical area". Hypothetically, the position of the center of gravity should not ever fall in this area (in fact the velocity is set to zero when the center of gravity is approaching the third region 11) while ZMP combinations that fall into this area will be managed like in the "controlled area".
  • It is noted that the configuration of figure 7B can be extremely advantageous compared to that of figure 7A in case of oscillations of the machine's body, for example when the arm of the machine (excavator) 1 is stationary and the cabin rotates. In this case, if the regions have a rectangular shape, by measuring the distance variation of the center of gravity from the border during the rotation, when the base of the machines 1 rotates close to the corners, a profile with a discontinuity would be created. On the other hand, an elliptical or almost circular shape of the regions would ensure a smoother profile without discontinuities.
  • In order to increase the overall system flexibility and adaptation to different machines, all the variables for describing the aforementioned regions have been considered as parameters and each of them can be set as a function of payload, safety coefficient, number of processed samples in a single time step, etc. In the same way, the speed scaling function can be adapted depending on the specific application, task and machine. In any case, the operator motion direction is not altered by the algorithm, because velocities and accelerations are just scaled down and not inverted. Furthermore, the scaling gain is always lower than 1, thus velocities can be only decreased and not increased.
  • Figure 8 shows an example of the controller area velocity scaling profile function that can be used in the algorithm. When a risky condition occurs, due to the position of the center of gravity approaching the third region 11, the operator's velocities are scaled to zero in the direction of critical position of the center of gravity before the tip over of the machine. Thanks to an hysteresis mechanism, in this situation the operator is always able to restore a safe stability condition. It is also important to note that the algorithm is capable of handling the operation of the mobile base as well as of the manipulator part.
  • As previously mentioned, the algorithm uses the current and predicted measurement of the center of gravity and ZMP. The center of gravity is defined as the average location of the weight of the object and can be obtained by the position of each machine link. On the other hand, the ZMP is defined as the point on the contact surface in which the sum of the reaction forces does not produce any moment in the horizontal direction. In this analysis a variation of the standard equation obtained by Kato and Vukobratovic can been used:
    Figure imgb0001
    where:
    • m i corresponds to the mass of the single machine link;
    • p i corresponds to the center of mass (single machine link);
    • i corresponds to the acceleration of the center of mass (single machine link).
  • The velocity scaling function of figure 8 shows that by increasing the distance of the center of gravity (GoG) from the border, the CoG falls in the safe area or first region 9 and no scaling is required. The distance of the CoG from the border being equal, the CoG passes from the safe area (first region 9) to the controlled area (second region 10) by increasing the payload. In this case, a velocity scaling is required. By further increasing the payload, the CoG falls in the prohibited area (third region 11) and no motion is allowed. It is noted that the probability of falling in the prohibited area increases by increasing the payload and reducing the distance of the CoG from the border. On the other hand, the probability of falling in the safe area increases by decreasing the payload and by increasing the distance of the CoG from the border.
  • According to another example, the dimension of the stability region 8 can be changed on real time based on the payload of the machine 1, wherein in particular the surface of the first region 9 and of the second region 10 can be changed as a function of the payload. This is shown in figures 9A and 9B, wherein figure 9A shows a condition with small payload and figure 9B shows a condition with a large payload. It is noted that the first region 9 (safe area) of figure 9A is bigger than the first region 9 of figure 9B. Also, the prohibited area (third region 11) of figure 9A is smaller than the third region 11 of figure 9B. For example, based on the presence or absence of payload in the bucket of the excavator, the stability region 8 and in particular the surfaces of the respective first, second and third regions 9, 10, 11 are conveniently changed. In fact, by increasing the payload, the controlled and the prohibited area become bigger and the operational component 2 can be controlled by the control system 12. In one example, the first and third regions (i.e. the safe area and the prohibited area) can be changed linearly as a function of the payload (e.g. through a linear interpolation). On the other hand, the velocity in the second region 10 (controlled area) can be scaled using a second order function.
  • Figure 10 schematically shows a computer system for implementing methods of examples of the disclosure. In particular, Figure 10 shows an example of a computing device 2000 for example which may be arranged to implement one or more of the examples of the methods described herein. In examples, the computing device 2000 comprises main unit 2002. The main unit 2002 may comprise a processor 2004 and a system memory 2006. In examples, the processor 2004 may comprise a processor core 2008, a cache 2010, and one or more registers 2012. In examples, the processor core 2008 may comprise one or more processing cores and may comprise a plurality of cores which may run a plurality of threads. The processor 2004 may be of any suitable type such as microcontroller, microprocessor, digital signal processor or a combination of these, although it will be appreciated that other types of processor may be used.
  • In examples, the processor core 2008 may comprise one or more processing units. In examples, the processor core 2008 comprises one or more of a floating point unit, an arithmetic unit, a digital signal processing unit, or a combination of these and/or plurality of other processing units, although it will be appreciated that other processing units could be used. In examples, the cache 2010 may comprise a plurality of caches such as a level one cache and a level two cache, although other appropriate cache arrangements could be used.
  • In examples, the processor 2004 comprises a memory controller 2014 operable to allow communication between the processor 2004 and the system memory 2006 via a memory bus 2016. The memory controller 2014 may be implemented as an integral part of the processor 2004, or it may be implemented as separate component.
  • In examples, the system memory 2006 may be of any suitable type such as non-volatile memory (e.g. flash memory or read only memory), volatile memory (such as random access memory (RAM)), and/or a combination of volatile and non-volatile memory. In examples, the system memory 2006 may be arranged to store code for execution by the processor 2004 and/or data related to the execution. For example, the system memory may store operating system code 2018, application code 2020, and program data 2022. In examples, the application code 2020 may comprise code to implement one or more of the example methods described herein, for examples to implement the steps described above with reference to Figures 1 and 3-5. The application code 2020 may be arranged to cooperate with the program data 2022 or other media, for example to allow acquiring sensor and command signals, determining a stability condition and outputting a control signal.
  • In examples, the computing device 2000 may have additional features, functionality or interfaces. For example main unit 2002 may cooperate with one or more peripheral devices for example to implement the methods described herein. In examples, the computing device 2000 comprises, as peripheral devices, an output interface 2024, a peripheral interface 2026, a storage device 2028, and a communication module 2030. In examples, the computing device comprises an interface bus 2032 arranged to facilitate communication between the main unit 2002 and the peripheral devices.
  • In examples, the output device 2024 may comprise output devices such as a graphical processing unit (GPU) 2034 and audio output unit 2036 for example arranged to be able to communicate with external devices such as a display, and/or loudspeaker, via one or more suitable ports such as audio/video (A/V) port. In examples, the peripheral interface 2026 may comprise a serial interface 2038, a parallel interface 2040, and an input/output port(s) 2042 which may be operable to cooperate with the main unit 2002 to allow communication with one or more external input and/or output devices via the I/O port 2042. For example, the I/O port 2042 may communicate with one or more input devices such as a keyboard, mouse, touch pad, voice input device, scanner, imaging capturing device, video camera, and the like, and/or with one or more output devices such as a 2D printer (e.g. paper printer), or 3D printer, or other suitable output device. For example, signals may be received via the I/O port 2042 and/or the communication module 2030. In examples, the storage device may comprise removable storage media 2044 and/or non-removable storage media 2046. For example, the removable storage media may be random access memory (RAM), electrically erasable programmable read only memory (EEPROM), read only memory (ROM) flash memory, or other memory technology, optical storage media such as compact disc (CD) digital versatile disc (DVD) or other optical storage media, magnetic storage media such as floppy disc, magnetic tape, or other magnetic storage media. However, it will be appreciated that any suitable type of removable storage media could be used. Non-removable storage media 2046 may comprise a magnetic storage media such as a hard disk drive, or solid state hard drive, or other suitable media, although it will be appreciated that any suitable non-removable storage media could be used. The storage device 2028 may allow access by the main unit 2002 for example to implement the methods described herein.
  • In examples, the communication module may comprise a wireless communication module 2048 and a wired communication module 2050. For example, the wireless communication module may be arranged to communicate wirelessly via a suitable wireless communication standard for example relating to Wi-Fi, Bluetooth, near field communication, optical communication (such as infrared), acoustic communication, or via a suitable mobile telecommunications standard. The wired communication module may allow communication via a wired or optical link for example by Ethernet or optical cable. However, it will be appreciated that any suitable communication module could be used.
  • Referring to Figures 2 and 3, the control stability module 15, the static stability module 16, the dynamic stability module 17, the velocity scaling module 18 and acceleration scaling module 19 may for example be implemented by a control unit. In examples, one or more of the control stability module 15, the static stability module 16, the dynamic stability module 17, the velocity scaling module 18 and acceleration scaling module 19 may be implemented by the main unit 2002, although it will be appreciated that other suitable implementations could be used. In examples, these modules may be implemented by the main unit 2002 in cooperation with the output device 2024, although it will be appreciated that other suitable implementations could be used.
  • It will be appreciated that in examples of the disclosure, elements of the disclosed methods may be implemented in a computing device in any suitable manner. For example, a conventional computing device may be adapted to perform one or more of the methods described herein by programming/adapting one or more processors of the computing device. As such, in examples, the programming/adapting may be implemented in the form of a computer program product comprising computer implementable instructions stored on a data carrier and/or carried by a signal bearing medium, such as floppy disk, hard disk, optical disk, solid state drive, flash memory, programmable read only memory (PROM), random access memory (RAM), or any combination of these or other storage media or signal bearing medium, or transmitted via a network such as a wireless network, Ethernet, the internet, or any other combination of these or other networks.
  • In other words, in examples, a computer program may comprise computer readable instructions which, when implemented on a computing device, cause the computing device to carry out a method according examples of the disclosure. In examples, a storage medium may comprise the computer program, for example, as mentioned above. It will also be appreciated that other suitable computer architectures could be used such as those based on one or more parallel processors. Furthermore, at least some processing may be implemented on one or more graphical processing units (GPUs). Although computing device 2000 is described as a general purpose computing device, it will be appreciated that this could be implemented in any appropriate device, such as mobile phone, smart phone, camera, video camera, tablet device, server device, with modifications and/or adaptation if appropriate to the features described above, for example dependent on the desired functionality and hardware features.
  • Although a variety of techniques and examples of such techniques have been described herein, these are provided by way of example only and many variations and modifications on such examples will be apparent to the skilled person and fall within the spirit and scope of the present invention, which is defined by the appended claims and their equivalents.
  • Reference Signs
  • 1
    Machine
    2
    Operational component
    3
    Portion of the machine
    4
    First sensor signal
    5
    Second sensor signal
    6
    Command signal
    7
    Control signal
    8
    Stability region
    9
    First region
    10
    Second region
    11
    Third region
    12
    Control system
    13
    First sensor
    14
    Second sensor
    15
    Control stability module
    16
    Static stability module
    17
    Dynamic stability module
    18
    Velocity scaling module
    19
    Acceleration scaling module
    20
    Joystick
    21
    Corrected operational velocity
    22
    Commanded operational velocity
    23
    Commanded acceleration
    24
    Corrected operational acceleration
    25
    Operational velocity
    26
    Lower body
    27
    Upper body
    28
    First arm section
    29
    Second arm section
    30
    Third arm section
    31
    Extremity section
    100
    Method
    2000
    Computing device
    2002
    Main unit
    2004
    Processor
    2006
    System memory
    2008
    Processor core
    2010
    Cache
    2012
    Register
    2014
    Memory controller
    2016
    Memory bus
    2018
    Operating system code
    2020
    Application code
    2022
    Program data
    2024
    Output interface
    2026
    Peripheral interface
    2028
    Storage device
    2030
    Communication module
    2032
    Interface bus
    2034
    Graphical processing unit
    2036
    Audio output unit
    2038
    Serial interface
    2040
    Parallel interface
    2042
    Input/output port
    2044
    Removable storage media
    2046
    Non-removable storage media
    2048
    Wireless communication module
    2050
    Wired communication module

Claims (15)

  1. Method (100) for controlling the stability conditions of a machine (1) moveable on a ground (G) having at least an operational component (2), in particular a hydraulic cylinder, for moving a portion (3) of the machine (1), and being maneuvered by an operator through operational commands, the method (100) comprising:
    acquiring (S101) at least a first sensor signal (4) defining the position of the portion of the machine (1);
    acquiring (S102) at least a second sensor signal (5) defining a variation of the position of the portion of the machine (1) relative to the ground (G);
    acquiring (S103) at least a command signal (6) defining the operational commands of the operator for actuating the operational component (2) and for transmitting an operational velocity to said portion (3) of the machine (1);
    determining (S104) a stability condition of the machine (1) based on the first sensor signal (4), the second sensor signal (5) and the command signal (6), and
    outputting (S105) a control signal (7) to control the operational component (2) as a function of the determined stability condition,
    wherein the stability condition is determined by monitoring and estimating both the static and the dynamic stability conditions of the machine (1), in particular by monitoring and estimating the position of the center of gravity and of an index of stability of the machine (1), relative to a contact area of the machine (1) with the ground (G).
  2. The method (100) according to claim 1, further comprising determining a payload of the machine (1), wherein monitoring the static stability comprises a velocity scaling process obtained based on a function using as input values both the payload of the machine (1) and the position of the center of gravity of the machine (1) relative to a contact area of the machine (1) with the ground (G), the method (100) comprising generating a corrected operational velocity (21) based on said velocity scaled process.
  3. The method (100) according to any one of clams 1 to 2, wherein the position of the center of gravity is determined within a stability region (8) defined in the contact area of the machine (1) with the ground (G) and wherein said stability region (8) comprises at least a first region (9) and a second region (10).
  4. The method (100) of claim 3, wherein
    a. the first region (9) is contained in the second region (10), the perimeter of the second region (10) being larger than the perimeter of the first region (9), and wherein in particular the first region (9) and the second region (10) have a polygonal shape or an elliptical shape; and/or
    b. the dimension of the stability region (8) can be changed on real time based on the payload of the machine (1), wherein in particular the surface of the first region (9) and of the second region (10) can be changed as a function of the payload.
  5. The method (100) according to any one of claims 3 or 4, wherein if the position of the center of gravity is within the first region (9), than the operational component (2) is controlled by the operational commands of the operator and if the position of the center of gravity is within the second region (10), than the operational velocity is reduced to a scaled velocity and the operational component (2) is controlled by the control signal (7).
  6. The method (100) according to any one of claims 3 to 5, wherein the stability region (8) comprises a third region (11), the first region (9) and the second region (10) being contained in the third region (11) and wherein if the position of the center of gravity is within the second region (10) and is approaching the third region (11), than the operational velocity is set to zero.
  7. The method (100) according to any one of claims 2 to 6, further comprising calculating a commanded acceleration (23) at an actual time step and defined by the discrete derivative of the corrected operational velocity (21, generating a corrected operational acceleration (24), integrating said corrected operational acceleration (24) and generating an operational velocity (25) to control the operational component (2).
  8. The method (100) according to any one of claims 1 to 7,wherein estimating the dynamic stability comprises an acceleration scaling process, the method (100) comprising generating a corrected operational acceleration based on said acceleration scaling process, wherein in particular the acceleration scaling process is carried out after the velocity scaling process.
  9. The method (100) according to claims 7 or 8, wherein the acceleration scaling comprises a prediction of a position of a stability index relative to a stability region (8).
  10. The method (100) according to any one of claims 1 to 9, wherein the stability index is the zero moment point, ZMP, of the machine (1).
  11. Control system (12) for controlling the stability conditions of a machine (1) moveable on a ground (G) having at least an operational component (2), in particular a hydraulic or electric actuator, for moving a portion (3) of the machine (1), and being maneuvered by an operator through operational commands, the system (12) comprising:
    at least a first sensor (13) for generating a first sensor signal (4) defining the position of the portion of the machine (1);
    at least a second sensor (14) for generating a second sensor signal (5) defining a variation of the position of the portion of the machine (1) relative to the ground (G); and
    a control stability module (15) for receiving the first sensor signal (4), the second sensor signal (5), and at least a command signal (6) defining the operational commands of the operator for actuating the operational component (2) and for transmitting an operational velocity to said portion (3) of the machine (1), the control stability module (15) determining a stability condition of the machine (1) based on the first sensor signal (4), the second sensor signal (5) and the command signal (6), and outputting a control signal (7) to control the operational component (2) as a function of the determined stability condition,
    wherein the control stability module (15) comprises a static stability module (16) and a dynamic stability module (17) for monitoring and estimating both the static and the dynamic stability conditions of the machine (1), in particular by monitoring and estimating the position of the center of gravity and of an index of stability of the machine (1), relative to a contact area of the machine (1) with the ground (G).
  12. The system (12) of claim 11, wherein the static stability module (16) comprises a velocity scaling module (18) for receiving the first sensor signal (4), the second sensor signal (5) and the command signal (6) and for generating a corrected operational velocity (21) and the dynamic stability module (17) comprises an acceleration scaling module (19) for receiving a commanded acceleration (23) at an actual time step and defined by the discrete derivative of the corrected operational velocity (21), generating a corrected operational acceleration (24), integrating said corrected operational acceleration (24) and generating a corrected operational velocity (25) to control the operational component (2).
  13. A working machine (1) comprising the control system (12) according to any one of claims 11 to 12.
  14. A computer program comprising computer readable instructions which, when implemented on a computer, causes the computer to carry out a method (100) according to any one of claims 1 to 10.
  15. A storage medium comprising the computer program according to claim 14.
EP21204161.0A 2021-10-22 2021-10-22 Method and system for controlling the stability conditions of a machine Active EP4170100B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP21204161.0A EP4170100B1 (en) 2021-10-22 2021-10-22 Method and system for controlling the stability conditions of a machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP21204161.0A EP4170100B1 (en) 2021-10-22 2021-10-22 Method and system for controlling the stability conditions of a machine

Publications (2)

Publication Number Publication Date
EP4170100A1 true EP4170100A1 (en) 2023-04-26
EP4170100B1 EP4170100B1 (en) 2024-04-17

Family

ID=78371939

Family Applications (1)

Application Number Title Priority Date Filing Date
EP21204161.0A Active EP4170100B1 (en) 2021-10-22 2021-10-22 Method and system for controlling the stability conditions of a machine

Country Status (1)

Country Link
EP (1) EP4170100B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100204891A1 (en) * 2009-02-12 2010-08-12 Cnh America Llc Acceleration control for vehicles having a loader arm
US20170284056A1 (en) * 2016-03-30 2017-10-05 Hitachi Construction Machinery Co., Ltd. Drive control system for work machine
US20210214919A1 (en) * 2018-10-03 2021-07-15 Sumitomo Heavy Industries, Ltd. Shovel

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100204891A1 (en) * 2009-02-12 2010-08-12 Cnh America Llc Acceleration control for vehicles having a loader arm
US20170284056A1 (en) * 2016-03-30 2017-10-05 Hitachi Construction Machinery Co., Ltd. Drive control system for work machine
US20210214919A1 (en) * 2018-10-03 2021-07-15 Sumitomo Heavy Industries, Ltd. Shovel

Also Published As

Publication number Publication date
EP4170100B1 (en) 2024-04-17

Similar Documents

Publication Publication Date Title
JP6564739B2 (en) Work machine
US10521703B2 (en) System and method for controlling machine pose using sensor fusion
US10401176B2 (en) System and method for determining machine state using sensor fusion
KR102268035B1 (en) working machine
US11530920B2 (en) Controlling movement of a machine using sensor fusion
US9348327B2 (en) Work machine
EP3814579B1 (en) Controller and control system with enhanced orientation detection for mobile hydraulic equipment
US11414836B2 (en) Work machine
AU2011337114B2 (en) Loading analysis system and method
US10087603B2 (en) Stability control system for machine in motion
CN111051620B (en) Working machine
US20180373275A1 (en) Sensor fusion feedback for controlling fluid pressures in a machine
JP2013204260A (en) Remote control device for vehicle, vehicle and remote control method of vehicle
WO2015200424A1 (en) Method and apparatus for machine synchronization
WO2019189503A1 (en) Working machine
CN113167054A (en) System including working machine, method executed by computer, method for manufacturing learned position estimation model, and data for learning
US20180224280A1 (en) Iterative estimation of centripetal accelerations of inertial measurement units in kinematic chains
EP4170100A1 (en) Method and system for controlling the stability conditions of a machine
US20210154833A1 (en) Intuitive Control of Lifting Equipment
WO2022186215A1 (en) Work machine
JP7434967B2 (en) Operation support server, work equipment, and performance information provision method
CN114428483A (en) Remote control end force feedback control method, device and system for working machine
JP6816783B2 (en) crane
KR20230003092A (en) construction machinery
JP2023083786A (en) Work machine

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20211022

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20231114

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D