Patent Description:
Lawn mowers are widely used in gardening to trim lawn and vegetation. Lawn mowers generally include hand push lawn mowers and riding lawn mowers. A user sits on and drives the riding lawn mower to perform lawn mowing tasks, making lawn mowing more efficient and less tiring. Riding lawn mowers are equipped with operating members that allow the user to drive the riding lawn mower to walk at a desired walking speed and in a desired walking direction. Generally, a riding lawn mower includes at least a left drive wheel and a right drive wheel, respectively driven by a left motor and a right motor, to achieve the desired walking speed and the desired walking direction.

The most common types of operating members for riding lawn mowers are lap bars and steering wheels. In the related art, the most common steering on a zero turn mower is lap bar steering. Lap bar mowers accelerate by pushing the bars forward and steer similarly to riding a horse. When you want to turn the mower left, pull the left bar towards yourself, and when turning right, pull the right bar. By pushing the one of the bars forward and pulling the other one of the bars towards yourself, the left drive wheel and the right driven wheel are driven in different directions from each other, thereby making a "zero turn". The front wheels on a lap bar mower are generally casters and roll freely like on a shopping cart. When travelling or working on a flat lawn, lap bar riding lawn mowers are perfectly fine.

However, it is problematic when the riding lawn mower travels or works on a slope; especially when traversing a sloping surface horizontally, an inclined downward force is applied to the riding lawn mower due to the gravity of the riding lawn mower, so the riding lawn mower tends to make a turn inclined downward. Further, the wheels are subject to forces of different magnitudes, for example, the wheels on the lower side of the slope are subject to a greater inclined downward force than the wheels on the higher side of the slope. Also, as the front wheels are configured to roll freely, the riding lawn mower doesn't have much traction force in the front, so the front wheels of the riding lawn mower have a tendency slide down the slope. In this case, the user has to manipulate the operating member very dedicatedly to compensate for the inclined downward force in order for the riding lawn mower to turn to or keep the desired direction. Especially for lap bar riding lawn mowers, it is very hard for the user to manipulate two lap bars to keep adjusting for the right compensation to traverse a sloping surface, bringing a bad driving experience.

Engineers have been working for years to overcome this issue. For example, some riding lawn mowers on the market are equipped with several high-flotation / low pressure tires to allow it to traverse the steep slopes. However, the high-flotation / low pressure tires increases the cost of the riding lawn mower, as well as the size of the riding lawn mower. For another example, according to a riding type grass mower vehicle disclosed in the <CIT> (<CIT>) (paragraphs [<NUM>-<NUM>, <NUM>-<NUM>], <FIG>, <FIG>), the vehicle includes at least two main drive wheels and a caster wheel. The vehicle further includes a switching means for switching to either a forcible steering mode in which the caster wheel is forcibly steered by a steering power source, or to a free steering mode in which the caster wheel is rendered freely steerable by blocking the power transmission from the steering power source. With this vehicle, in the case of traveling on or traversing a ground surface or grass field having a slope, the mode is switched over to the forcible steering mode, whereby it becomes possible to prevent the caster wheel to be oriented more downward than the direction desired by the driver. However, switching between the two steering modes may require more driving skills from the user and the caster wheel may not provide enough torque to offset the inclined downward turning tendency on a steep slope. As another solution to the above-described problem, in the <CIT> (<CIT>) (paragraphs [<NUM>-<NUM>, <NUM>-<NUM>], <FIG>), there are provided a roll angle detecting means (a roll angle sensor) for detecting a state wherein the vehicle is pivotally inclined relative to an axis extending through the center of gravity of the vehicle oriented along the fore/aft direction, and a roll angle correcting means. However, the roll angle is not the only influencing factor for the inclined downward force. Theoretically, other factors such as frictional force between the wheels and the sloping surface also influence the correcting amount, and these factors may also change over time. <CIT> discloses a further example of riding lawn mower provided with manoeuvring levers and related hardware and software.

The application discloses a riding lawn mower with a control method that provides stable acceleration and flexible steering, and also automatically compensates for the torque required when the riding lawn mower traverses a sloping surface, thereby providing the user with an easier driving experience when traversing a sloping surface.

According to an embodiment of the invention, a riding lawn mower is provided including: a seat for a user to sit thereon; a chassis configured to support the seat; a walking assembly configured to drive the riding lawn mower to walk, the walking assembly includes at least one first walking wheel and two second walking wheels, the two second walking wheels are a left second walking wheel and a right second walking wheel, the walking assembly further includes a left walking motor for driving the left second walking wheel and a right walking motor for driving the right second walking wheel; a left operating member and a right operating member, the left operating member is operable by the user to generate a left operational amount, the right operating member is operable by the user to generate a right operational amount; a walking motor control module configured to receive at least one of the left operational amount or the right operational amount, and control at least one of the left walking motor or the right walking motor; wherein the walking motor control module includes a target speed calculation unit, the target speed calculation unit including: an input unit configured to generate a left reference speed and a right reference speed from at least one of the left operational amount or the right operational amount; a decoupling unit configured to generate a first velocity and a second velocity from the left reference speed and the right reference speed; a processing unit configured to independently obtain a first processed velocity from the first velocity and obtain a second processed velocity from the second velocity; and an output unit configured to generate a left target speed for the left walking motor or a right target speed for the right walking motor from the first processed velocity and the second processed velocity.

In one embodiment, the first velocity is a linear velocity and the second velocity is an angular velocity.

In one embodiment, the riding lawn mower further includes a left walking motor control module configured to control the left walking motor and a right walking motor control module configured to control the left walking motor.

In one embodiment, the left walking motor control module calculates the left target speed for the left walking motor, and the right walking motor control module calculates the right target speed for the left walking motor.

In one embodiment, the left walking motor control module receives both the left operational amount and the right operational amount, the left reference speed is a mapped value of the left operational amount, and the right reference speed is a mapped value of the right operational amount.

In one embodiment, the left walking motor control module receives the left operational amount and an actual rotational speed of the right walking motor.

In one embodiment, the decoupling unit calculates the first velocity as an average value of the left reference speed and the right reference speed, and calculates the second velocity as a difference between the left reference speed and the right reference speed divided by a distance between the left second walking wheel and the right second walking wheel.

In one embodiment, the processing unit makes the processed first velocity subject to a maximum acceleration value.

In one embodiment, the riding lawn mode has different driving modes.

In one embodiment, the processing unit is configured with different coefficients or functions for calculating the processed first velocity from the first velocity or calculating the processed second velocity from the second velocity across different driving modes.

According to an embodiment, a riding lawn mower is provided including: a seat for a user to sit thereon; a chassis configured to support the seat; a walking assembly configured to drive the riding lawn mower to walk, the walking assembly includes a walking wheel and a walking motor for driving the walking wheel; an operating member operable by the user to generate an operational amount; a walking motor control module configured to receive the operational amount and control the walking motor; the walking motor control module includes: a target speed calculation unit configured to generate a target speed of the walking motor based on the operational amount, a velocity controller configured to generate a target current of the walking motor based on the target speed and a detected actual speed of the walking motor; a flux controller and a torque controller configured to generate a first voltage adjustment amount and a second voltage adjustment amount according to the target current and a detected actual current of the walking motor; wherein the walking control module includes a compensator for compensating load on the walking motor.

In one embodiment, the velocity controller includes a proportional term of the difference of the target speed and the detected actual speed of the walking motor.

In one embodiment, the velocity controller includes a current compensator, which generates a compensation amount based on the detected actual current of the walking motor.

In one embodiment, the velocity controller includes a disturbance observer and a feedback compensator.

In one embodiment, the disturbance observer derives a compensation amount based on the detected actual speed of the walking motor and the target current output by the velocity controller.

In one embodiment, the torque controller includes a proportional term of the difference of a quadrature axis portion of the target current and a quadrature axis portion of the detected actual current of the walking motor.

In one embodiment, the torque controller includes a disturbance observer and a feedback compensator.

In one embodiment, the disturbance observer derives a compensation amount based on the quadrature axis portion of the detected actual current of the walking motor and the second voltage adjustment amount output by the torque controller.

In one embodiment, the operating member includes a left operating member and a right operating member, the left operating member is operable by the user to generate a left operational amount, the right operating member is operable by the user to generate a right operational amount.

In one embodiment, the target speed calculation unit is configured to generate the target speed of the walking motor through generating a linear velocity and an angular velocity from the left operational amount and the right operational amount.

As shown in <FIG>, a riding lawn mower <NUM> can be operated by a user sitting on the riding lawn mower <NUM> to effectively and quickly trim the lawn, vegetation, etc. Comparing with hand push/walk behind lawn mowers, the riding lawn mower <NUM> of the present disclosure does not require the user to push the machine, nor does it require the user to walk on the ground. Further, because of its large size, the riding lawn mower <NUM> is able to carry larger or more batteries, which brings a longer working time, so that the user can trim larger lawn areas, and trim for a longer time effortlessly. Furthermore, in terms of energy source, unlike existing riding lawn mowers, the riding lawn mower <NUM> uses electric energy rather than gasoline or diesel, thus the riding lawn mower <NUM> is more environmental friendly, cheaper in usage cost, and less prone to leakage, failure and maintenance.

Those skilled in the art should understand that, in the disclosure of this application, the terms "controller", "control module", "module", "unit" and "processor" may include or relate to at least one of hardware or software.

Those skilled in the art should understand that, in the disclosure of this application, the terms "up", "down", "front", "rear", "left", "right" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, which are only for the convenience of describing the present application, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore the above terms should not be understood as a limitation of the present application.

Referring to <FIG>, the riding lawn mower <NUM> includes: a cutting assembly <NUM>, a walking assembly <NUM>, an operating assembly <NUM>, a power supply assembly <NUM>, a seat <NUM>, a chassis <NUM>, and a deck <NUM>. The chassis <NUM> is the main supporting frame of the riding lawn mower <NUM>, and the chassis <NUM> at least partially extends in a front and rear direction. The seat <NUM> is configured for a user to sit thereon, and the seat <NUM> is mounted on the chassis <NUM>. The deck <NUM> is configured to accommodate the cutting assembly <NUM>, and the deck <NUM> is installed under the chassis <NUM>. According to <FIG>, the direction toward which the user sits on the seat <NUM> is defined as the front or the front side of the riding lawn mower <NUM>; and the direction opposite to the front is defined as the rear or rear side of the riding lawn mower <NUM>. The user's left hand direction is defined as the left or left side of the riding lawn mower <NUM>; and the user's right hand direction is defined as the right or right side of the riding lawn mower <NUM>. The direction toward the plane on which the riding lawn mower <NUM> walks is defined as the down or lower side of the riding lawn mower <NUM>; and the direction opposite to the down is defined as the up or upper side of the riding lawn mower <NUM>.

Referring to <FIG>, the cutting assembly <NUM> includes a cutting member, such as, for example, a blade, for realizing a cutting function. The cutting assembly <NUM> is mounted to the chassis <NUM>, under the deck <NUM>. In other words, the deck <NUM> forms a semi-opening accommodating cavity to accommodate the cutting member. The cutting assembly <NUM> further includes a cutting motor <NUM> for driving the cutting member to rotate. The cutting assembly <NUM> may include more than one cutting members and more than one cutting motors <NUM>. In one embodiment, the riding lawn mower <NUM> includes two cutting members and two cutting motors <NUM>, namely a left cutting motor <NUM> and a right cutting motor 112R. The cutting motors <NUM> are controlled by a cutting control module <NUM>, or two cutting control modules, namely a left cutting motor control module <NUM> and a right cutting motor control module 113R, to drive the cutting members <NUM> to rotate. In some embodiments, the cutting control module includes a control chip, such as MCU, ARM, and so on.

The walking assembly <NUM> is configured to enable the riding lawn mower <NUM> to walk on the ground. The walking assembly <NUM> may include at least one first walking wheel <NUM> and at least two second walking wheels <NUM>, for example, two second walking wheels <NUM>, namely a left second walking wheel <NUM> and a right second walking wheel 122R. The first walking wheel <NUM> is configured to rotate freely. The first walking wheel <NUM> has a first diameter; the second walking wheel <NUM> has a second diameter larger than the first diameter. The walking assembly <NUM> may also include at least one walking motor <NUM>, for example, two walking motors <NUM>, namely a left walking motor <NUM> and a right walking motor 123R, for driving the second walking wheels <NUM>. In this way, when the two walking motors <NUM> drive the corresponding second walking wheels <NUM> to rotate at different speeds, a speed difference is generated between the two second walking wheels <NUM>, so as to steer the riding lawn mower <NUM>. The walking motor <NUM> is controlled by a walking motor control module <NUM>. In some embodiments, the walking motor control module <NUM> includes a control chip, such as MCU, ARM, and so on. In one embodiment, two walking motor control modules <NUM> control the two walking motors <NUM>, respectively.

The power supply assembly <NUM> is configured to supply electric power to the riding lawn mower <NUM>. In some embodiments, the power supply assembly <NUM> includes a plurality of battery packs <NUM> capable of supplying electric power to the riding lawn mower <NUM>. The power supply assembly <NUM> is configured to at least supply electric power to the cutting motors <NUM> and the walking motors <NUM>. The power supply assembly <NUM> may also supply electric power to other electronic components in the riding lawn mower <NUM>, such as the cutting control module <NUM> and the walking motor control module <NUM>. The power supply assembly <NUM> may include a power supply management module <NUM> to coordinate and control the discharge process of at least one battery packs <NUM>. In some embodiments, the power supply assembly <NUM> is provided on the rear side of the seat <NUM> on the chassis <NUM>.

The operating assembly <NUM> is operable by the user, and the user sends control instructions through the operating assembly <NUM> to control the operation of the riding lawn mower <NUM>. The operating assembly <NUM> can be operated by the user to set the cutting speed, walking speed, walking direction, etc. of the riding lawn mower <NUM>. In other words, the operating assembly <NUM> is operable by the user to set an operating status for the riding lawn mower <NUM>, wherein the operating status includes a cutting status and a walking status. For example, the walking motor control module <NUM> is configured to receive an operational amount from an operating member <NUM> of the operating assembly <NUM> and control the walking assembly <NUM> based on the operational amount. The operating assembly <NUM> may include a combination of one or more operating members <NUM> such as pedal, lever, handle, and steering wheel. Further, the operating assembly <NUM> includes one or more operation sensing module <NUM> enabled to sense the states or operational amount of the operating members <NUM>.

In one embodiment, as shown in <FIG>, the operating members <NUM> include a left operating member <NUM> and a right operating member 131R. The left operating member <NUM> is operable by the user to generate a left operational amount, the right operating member 131R is operable by the user to generate a right operational amount. Specifically, the left operating member <NUM> is a left operating lever <NUM>; and the right operating member 131R is a right operating lever 131R. The detected states / operational amount of the left operating lever <NUM> and the right operating lever 131R are used by the walking motor control module <NUM> to control the left walking motor <NUM> and the right walking motor 123R, so as to control the two second walking wheels <NUM>. Specifically, the operation sensing module <NUM> includes at least one position sensor, which is configured to detect the position of the operating lever <NUM>. The position sensor may be a magnetic sensor, and the operating lever <NUM> may be coupled with a magnetic element so that the magnetic sensor can detect the position of the magnetic element, and thus the position of the operating lever <NUM>. When the operating lever <NUM> is in different positions, the position sensor outputs detected position signals representing different positions. The positions of the operating lever <NUM> may be angular positions and may be represented by angle values. In one embodiment, the operation sensing module <NUM> includes a left operation sensing module <NUM> for detecting the position of the left operating lever <NUM>, and a right operation sensing module 132R for detecting the position of the right operating lever 131R.

The riding lawn mower <NUM> may further include a bus module <NUM>, and the bus module <NUM> is connected with a variety of modules, for example, the bus module <NUM> is at least connected with the cutting control module <NUM>, the walking motor control module <NUM>, the operation sensing module <NUM>, and the power supply management module <NUM>. The cutting control module <NUM>, the walking motor control module <NUM>, the operation sensing module <NUM>, and the power supply management module <NUM> can all send data to the bus module <NUM>, and receive data through the bus module <NUM>. Each module may obtain the bus control right to send data by competing for the busy line B/F, and the module that obtains the bus control right realize occupation and release of the bus through a "busy bus" signal and an "idle bus" signal. All modules are enabled to receive data from the bus module <NUM>, determine whether the information is relevant and take corresponding actions.

Referring to a communication system of the riding lawn mower <NUM> according to a specific embodiment as shown in <FIG>: there are two cutting control modules <NUM>, namely a left cutting control module <NUM> and a right cutting control module 112R, which are respectively configured to control a left cutting motor <NUM> and a right cutting motor 112R; there are two walking motor control modules <NUM>, namely a left walking motor control module <NUM> and a right walking motor control module 124R, which are respectively configured to control the left walking motor <NUM> and the right walking motor 123R; there are two operating levers <NUM> and two operation sensing modules <NUM>: a left operation sensing module <NUM> configured to detect the state of the left operating lever <NUM>, and a right operation sensing module 132R configured to detect the state of the right operating lever 131R.

Referring to <FIG>, in an embodiment, a control system of the walking assembly <NUM> includes a left walking control system and a right walking control system. The left walking control system and right walking control system have the same or similar functions and components. For example, the left walking control system mainly includes: the left walking motor control module <NUM>, a left walking motor drive circuit <NUM>, a left walking motor detection module <NUM>, the left walking motor <NUM>, the left operation sensing module <NUM>, and the right operation sensing module 132R. The right walking control system mainly includes: the right walking motor control module 124R, a right walking motor drive circuit 127R, a right walking motor detection module 128R, the right walking motor 123R, the left operation sensing module <NUM>, and the right operation sensing module 132R. In one embodiment, through the bus module <NUM>, the left walking motor control module <NUM> is communicationally connected with both the left operation sensing module <NUM> and the right operation sensing module 132R; likewise, the right walking motor control module 124R is communicationally connected with both the left operation sensing module <NUM> and the right operation sensing module 132R. In one embodiment, the walking motor control module <NUM> may be configured to receive data from only one operation sensing module <NUM>.

Referring to <FIG>, according to an embodiment of the left walking control system, the left walking motor control module <NUM> is configured to control the operation of the left walking motor <NUM>. The left walking motor control module <NUM> is configured to compute a target rotational speed of the left walking motor <NUM> according to the detected position signals of the left operation sensing module <NUM> and the right operation sensing module 132R; and further compute a control amount of the left walking motor <NUM> according to the target rotational speed of the left walking motor <NUM> and the detected values of the left walking motor detection module <NUM>, and output a control signal to the left walking motor drive circuit <NUM>, thereby controlling the left walking motor drive circuit <NUM> to make the left walking motor drive circuit <NUM> drive the left walking motor <NUM> to reach or substantially reach the target rotational speed of the left walking motor <NUM>. The control amount of the left walking motor <NUM> includes the input voltage and/or the input current of the left walking motor <NUM>. The power supply circuit <NUM> is connected to the power supply component <NUM>, and the power supply circuit <NUM> is used to receive the power from the power supply component <NUM> and convert the power of the power supply component <NUM> into at least the power used by the left walking motor control module <NUM> and the left walking motor drive circuit <NUM>.

The user manipulates the operating levers <NUM> to issue commands on the walking speed and the walking direction of the riding lawn mower <NUM>. It has been a long-discussed topic to provide an adequate response to the user's commands during driving: the response shall not be too slow, which harms the agility of the riding lawn mower <NUM> and makes the user feel frustrated; the response shall not be too fast either, because sharp, sudden, or even violent movements make the user feel uncomfortable, and less easy to control the riding lawn mower <NUM>. However, related solutions such as filtering do not hit the point. If the position signals of the operating lever <NUM> are directly filtered, there will be a lag in steering when the acceleration is reduced to a comfortable level, that is, related solutions either sacrifice comfortableness for responsiveness, or sacrifice responsiveness for comfortableness.

Human bodies have different perceptions to velocity, acceleration, and jerk, wherein acceleration is the time derivative of velocity and jerk is the time derivative of acceleration. Jerk is generally undesirable because it creates abrupt, jerky motion. Moderate accelerations make the user feel good with a sense of control, showing good responsiveness of the machine; whereas jerks make the user feel uncomfortable, for example, the user may feel a poke on the waist. Velocity includes linear velocity and angular velocity; similarly, acceleration includes linear acceleration and angular acceleration; and jerk includes linear jerk and angular jerk. In physics, linear velocity is the velocity of an object in a straight line, whereas angular velocity is how fast an objects spins, rotates, or turns; linear acceleration refers to the time rate of change of velocity without a change in direction, whereas angular acceleration refers to the time rate of change of angular velocity.

Therefore, the goal is to keep the rate at which acceleration is increasing or decreasing as small as possible, and at the same time, ensure the responsiveness of the riding lawn mower <NUM>, especially the responsiveness of steering. Generally, in linear movement, the riding lawn mower <NUM> has more time to reach the desired speed, in other words, it is acceptable to speed up a little bit slower; whereas in steering movement, the riding lawn mower <NUM> needs to turn to the desired direction in time, otherwise, the riding lawn mower <NUM> may miss mowing lanes when performing mowing jobs. Thus, in our disclosure, the linear velocity and the angular velocity of the riding lawn mower <NUM> are decoupled from the detected position signals of the left operation sensing module <NUM> and the right operation sensing module 132R. The linear velocity of the riding lawn mower <NUM> reflects the desired walking speed, and the angular velocity of the riding lawn mower <NUM> reflects the desired walking direction. In this way, the linear velocity and the angular velocity of the riding lawn mower <NUM> can be processed separately and independently to achieve the goal of stable acceleration but flexible steering.

In one embodiment, referring to <FIG>, the left walking motor control module <NUM> is configured to compute a target rotational speed of the left walking motor <NUM> from the detected position signals of the left operation sensing module <NUM> and the right operation sensing module 132R through the following steps:.

S2: obtain a first velocity v and a second velocity ω from the left reference speed vlref and the right reference speed vrref.

In one embodiment, the first velocity v is the linear velocity of the riding lawn mower <NUM>, and the second velocity ω is an angular velocity of the riding lawn mower <NUM>; and the process of obtaining the linear velocity and the angular velocity from the left reference speed vlref and the right reference speed vrref can be referred to as decoupling. In one embodiment, decoupling can be implemented as follows: the first velocity v is an average value of the left reference speed vlref and the right reference speed vrref, that is, v = (vlref + vrref)/<NUM>; the second velocity ω is the difference between the left reference speed vlref and the right reference speed vrref divided by the distance l between the left second walking wheel and the right second walking wheel, that is, v = (vrref - vlref)/l. The decoupling of the first velocity v and the second velocity ω of the riding lawn mower <NUM>, i.e., the linear velocity and the angular velocity of the riding lawn mower <NUM>, enables the first velocity v and the second velocity ω of the riding lawn mower <NUM>, i.e., the linear velocity and the angular velocity of the riding lawn mower <NUM>, to be processed separately and independently.

S3: obtain a first processed velocity pv from the first velocity v; obtain a second processed velocity pω from the second velocity ω.

The first velocity v and the second velocity ω are not directly used by the walking motor control module <NUM> in the next step. Instead, the first velocity v and the second velocity ω are separately processed to mitigate the variation of the first velocity v and the second velocity ω. In one embodiment, the processed first velocity pv may be a function incorporating the value of the processed first velocity pv in previous iterations. For example, the processed first velocity pv of time T may be calculated from the first velocity v of time T and the processed first velocity pv of time T-<NUM>, such as: pvT= θ*vT + (<NUM>-θ)*pVT-<NUM>, wherein θ is the coefficient for calculating the processed first velocity pv, and the processed first velocity pv can be initialized with <NUM>. In this case, the acceleration of the processed first velocity pv is relatively stable, and the jerk of the processed first velocity pv is reduced. In another embodiment, the processed first velocity pv may gradually accelerate until the processed first velocity pv reaches the current first velocity v. For example, the processed first velocity pv is incremented by a fixed amount per iteration or per unit of time until the processed first velocity pv reaches the current first velocity v: pVT= pvT-<NUM>+α<NUM>, wherein α<NUM> is the increment velocity amount per iteration or per unit of time, and the processed first velocity pv can be initialized with <NUM>. The processed first velocity pv can also be expressed in the integral form of time t, that is, pv = pv<NUM> + ∫ α<NUM>dt. Of course, α<NUM> is negative when the first velocity v decreases. In this case, the acceleration α1 of the processed first velocity pv is kept constant, and thus the jerk of the processed first velocity pv is <NUM>. In yet another embodiment, the acceleration of the processed first velocity pv is not a constant, but a controlled function of time t, such as <MAT>, wherein <MAT> is a variable acceleration of the processed first velocity pv; then the processed first velocity pv is calculated as <MAT>. Specifically, a feed-forward control method could be adopted to calculate the desired acceleration of the processed first velocity pv based on a time-preview of the first velocity profile, wherein the acceleration of the processed first velocity pv is subject to a maximum acceleration value.

In one embodiment, the processed second velocity pω has reduced amplitude compared to the second velocity ω. For example, the processed second velocity pω is the multiplication of the second velocity ω and a coefficient β, that is: pω= β*ω. In this case, the acceleration of the processed second velocity pω is relatively stable compared to that of the second velocity ω, and the jerk of the processed second velocity pω is reduced. In addition, the processed second velocity pω may be capped at a predefined maximum steering velocity to further ensure safety of the riding lawn mower <NUM> during turning. In another embodiment, the processed second velocity pω may gradually accelerate until the processed second velocity pω reaches the current second velocity ω. For example, the processed second velocity pω is incremented by a fixed amount per iteration or per unit of time until the processed second velocity pω reaches the current second velocity ω: pωT= pωT-<NUM>+α<NUM>, wherein α<NUM> is the increment amount per iteration or per unit of time, and the processed second velocity pω can be initialized with <NUM>. The processed second velocity pω can also be expressed in the integral form of time t, that is, pω = pω<NUM> + ∫ α<NUM>dt. Of course, α<NUM> is negative when the second velocity ω decreases. In this case, the acceleration α<NUM> of the processed second velocity pω is kept constant, and thus the jerk of the processed second velocity pω is <NUM>. In yet another embodiment, the acceleration of the processed second velocity pω is not a constant, but a controlled function of time t, such as <MAT>, wherein <MAT> is a variable acceleration of the processed second velocity pω; then the processed second velocity pω is calculated as pω = pω<NUM> + <MAT>. Specifically, a feed-forward control method could be adopted to calculate the desired acceleration of the processed second velocity pω based on a time-preview of the second velocity profile. Therefore, the acceleration of the first velocity v, i.e., the linear acceleration, is minimized or reduced; and the acceleration of the second velocity ω, i.e., the angular acceleration, is reduced independently. At the same time, since the first velocity v and the second velocity ω of the riding lawn mower <NUM>, i.e., the linear velocity and the angular velocity of the riding lawn mower <NUM>, are processed separately after decoupling, the processing of the (linear) acceleration response of the riding lawn mower <NUM> the processing of the steering response of the riding lawn mower <NUM> do not affect each other.

In one embodiment, the riding lawn mower <NUM> provides the user with different driving modes. For example, the user may select the driving mode another operating member of the operating assembly, which is not limited herein. Different driving modes are configured with different responsiveness, giving the user a bunch of driving experiences to select from. For example, the riding lawn mower <NUM> has a standard mode, a control mode, and a sports mode. In order to achieve different control effects for these driving modes, the coefficients or functions for calculating at least one of the processed first velocity pv or the processed second velocity pω in different driving modes are configured to be different. For example, <FIG> shows the coefficient β in different driving modes and how β affects the processing of the second velocity. The sport mode is configured with the fastest acceleration among the three driving modes, thus the coefficient βport for calculating the processed second velocity pω in the sports mode is the biggest. The standard mode is configured with a slower acceleration than that of the sport mode, thus the coefficient βstandard for calculating the processed second velocity pω in the standard mode is less than that in the sport mode. The control mode is configured with the slowest acceleration among the three driving modes, thus the coefficient βcontrol for calculating the processed second velocity pω in the control mode is the smallest. As shown in <FIG>, the processed second velocity pω may be capped at the same predefined maximum steering velocity, that is, the maximum processed second velocity pω of the three driving modes are the same. Thereby, the sport mode gives a quicker response for a sporty drive, whereas the control mode gives a controlled drive with a slower response. In terms of the processing of the first velocity, in one example, the average acceleration during the control mode is <NUM>/s<NUM>, and it takes <NUM> to reach the maximum walking speed from <NUM> speed; the average acceleration during the standard mode is <NUM>/s<NUM>, and it takes <NUM> to reach the maximum walking speed from <NUM> speed; the average acceleration during the sport mode is <NUM>/s<NUM>, and it takes <NUM> to reach the maximum walking speed from <NUM> speed.

S4: obtain a left target speed nl* for the left walking motor <NUM> from the first processed velocity pv and the second processed velocity pω.

As the linear velocity and the angular velocity, i.e., the first processed velocity pv and the second processed velocity pω, cannot be directly applied to drive the walking motor drive circuit <NUM>, which includes the left walking motor drive circuit <NUM> and the right walking motor drive circuit 127R. In one embodiment, the first processed velocity pv and the second processed velocity pω are used to compute a left target speed nl* and a right target speed nr*. The left target speed nl* is the target rotational speed of the left walking motor <NUM>, whereas the right target speed nr* is the target rotational speed of the right walking motor 123R. In a specific implementation, the right target speed nr* is computed as the sum of the first processed velocity pv and the second processed velocity pω divided by the distance l between the left second walking wheel and the right second walking wheel, that is, the right target speed nr* = pv + pω/l; whereas the left target speed nl* is computed as the subtraction of the first processed velocity pv and the second processed velocity pω divided by the distance l between the left second walking wheel and the right second walking wheel, that is, the left target speed nl* = pv - pω/l.

The above algorithm can be implemented identically in the left walking motor control module <NUM> and the right walking motor control module 124R. Thereby, the left walking motor control module <NUM> uses the left target speed nl* to control the left walking motor <NUM>, the right walking motor control module 124R uses the right target speed nr* to control the right walking motor 123R, simultaneously. In one embodiment, the target rotational speed of the left walking motor <NUM> can be computed from the detected position signals from one of the left operation sensing module <NUM> or the right operation sensing module 132R. For example, the left walking motor control module <NUM> can also compute the target speed nl* of the left walking motor <NUM> from the detected position signals of the left operation sensing module <NUM> and the actual rotational speed nr of the right walking motor 123R. In one construction, a feed forward control may be adopted to predict the right reference speed vrref from the actual rotational speed nr of the right walking motor 123R, so that the detected position signals of the right operation sensing module 132R is not required by the left walking motor control module <NUM>. Symmetrically, the right walking motor control module 124R can also compute the target speed nr* of the right walking motor 123R from the detected position signals of the right operation sensing module 132R and the actual rotational speed nl of the left walking motor <NUM>.

Having the target speed nl* of the left walking motor <NUM>, the left walking motor control module <NUM> further needs operational parameters of the left walking motor <NUM> itself in order to realize a closed-loop control of the left waking motor <NUM>. The left walking motor detection module <NUM> is coupled to the left walking motor <NUM>, and is configured to detect operational parameters of the left walking motor <NUM>, for example, such as, the rotor position, the actual rotational speed, and/or the phase currents of the left walking motor <NUM>. In one embodiment, the left walking motor detection module <NUM> includes a speed detection sensor, which is arranged near or inside the left walking motor <NUM> to obtain the actual rotational speed of the left walking motor <NUM>; for example, a photoelectric sensor installed near the left walking motor <NUM> to obtain the actual rotational speed of the left walking motor <NUM>; for another example, a Hall sensor arranged near the rotor of the left walking motor <NUM> to obtain the rotor position and the actual rotational speed of the left walking motor <NUM>. In one embodiment, if the left walking motor <NUM> is a brushless motor, the electrical signal output by the left walking motor <NUM> is a periodically changed back electromotive force, thus, by detecting one of the least of the current or voltage of the left walking motor <NUM> and spotting the zero-crossing point of the back electromotive force, the actual rotational speed of the left walking motor <NUM> can be obtained.

More details of the control method adopted by the left walking motor control module <NUM> will be described with reference to <FIG>. Specifically, the left walking motor control module <NUM> includes: a target speed calculation unit <NUM>, a velocity controller <NUM>, a current distribution unit <NUM>, a flux controller <NUM>, a torque controller <NUM>, a voltage transformation unit <NUM>, a current transformation unit <NUM> and a PWM signal generation unit <NUM>. The left walking motor detection module <NUM> includes: a current detection module <NUM>, a rotor position detection module <NUM>, and a speed detection module <NUM>. These modules are introduced for the sake of clear description; in implementation, one operational parameter may be calculated from another, for example, the rotational speed of the motor can be deducted from information about the rotor position, therefore, these modules can be combined.

In one embodiment, the target speed calculation unit <NUM> is configured to receive the detected position signals of the left operation sensing module <NUM> and the right operation sensing module 132R and outputs the target rotational speed nl* of the left walking motor <NUM>. The target speed calculation unit <NUM> implements the steps of S1-S4 as described above. In one embodiment, as shown in <FIG>, the target speed calculation unit <NUM> includes: an input unit 1248A configured to generate a left reference speed vlref and a right reference speed vrref from at least one of the left operational amount or the right operational amount; a decoupling unit 1248B configured to generate a first velocity v and a second velocity ω from the left reference speed vlref and the right reference speed vrref; a processing unit 1248C configured to obtain a first processed velocity pv from the first velocity v and obtain a second processed velocity pω from the second velocity ω; and an output unit 1248D configured to generate a left target speed nl* for the left walking motor from the first processed velocity and the second processed velocity. The input unit 1248A, the decoupling unit 1248B, the processing unit 1248C and the output unit 1248D each functions as S1, S2, S3 and S4 described above.

The velocity controller <NUM> is connected with the target speed calculation unit <NUM> and the speed detection module <NUM>. The velocity controller <NUM> obtains the target rotational speed nl* of the left walking motor <NUM> from the target speed calculation unit <NUM> and the actual rotational speed nl of the left walking motor <NUM> detected by the speed detection module <NUM>. The velocity controller <NUM> is configured to generate a target current is* of the left walking motor <NUM> according to the target rotational speed nl* and the actual rotational speed nl of the left walking motor <NUM> through comparison and adjustment. The resulted target current is* is configured to make the actual rotational speed nl of the left walking motor <NUM> approach the target rotational speed nl* of the left walking motor <NUM>.

In the related art, the velocity controller <NUM> adopts a Proportional Integral (PI) controller. As the name suggests, the PI controller consists of a proportional term and an integral term. Increasing the proportional gain has the effect of proportionally increasing the control signal for the same level of error. The fact that the controller will "push" harder for a given level of error tends to cause the closed-loop system to react more quickly, but also to overshoot more. Another effect of increasing the proportional gain is that it tends to reduce, but not eliminate, the steady-state error. The addition of an integral term to the controller tends to further help reduce steady-state error. If there is a persistent, steady error, the integrator builds and builds, thereby increasing the control signal and driving the steady- state error down. A drawback of the integral term, however, is that it can make the system more sluggish (and oscillatory) since when the error signal changes sign, it may take a while for the integrator to "unwind". If the integral term is too large, it will cause overshoot, and if the integral term is too small, the response will be slow and insufficient.

One proposed solution in this disclosure is to cancel the integral term and uses pure proportional gain to adjust the speed error of the left walking motor <NUM>, that is, the difference between the actual rotational speed nl of the left walking motor <NUM> and the target rotational speed nl* of the left walking motor <NUM>, which solves the problem of control lag caused by the integral term. However, pure proportional control will have a larger steady-state error, especially when the load of the left walking motor <NUM> is large. For example, as shown in <FIG>, when the riding lawn mower <NUM> travels or works on a slope; especially when traversing a sloping surface horizontally, an inclined downward force is applied to the riding lawn mower <NUM> due to the gravity of the riding lawn mower <NUM>, increasing the load of the riding lawn mower <NUM>, causing the riding lawn mower <NUM> to have a inclined downward turning tendency. Further, the walking wheels are subject to forces of different magnitudes, for example, the wheels on the lower side of the slope are subject to a greater inclined downward force than the wheels on the higher side of the slope. Therefore, the second walking wheel <NUM> on the lower side of the slope has a larger load, so the steady-state error for controlling the second walking wheel <NUM> on the lower side of the slope becomes larger, as a result, the second walking wheel <NUM> on the lower side of the slope cannot provide enough torque to make the riding lawn mower <NUM> walk in a desired direction. Plus, as the first walking wheel <NUM> is configured to roll freely, the riding lawn mower <NUM> doesn't have much traction force in the front, so first walking wheel <NUM> of the riding lawn mower <NUM> also have a tendency slide down the slope. Therefore, the left walking control module <NUM> introduces a compensator for compensating the load on the left walking motor <NUM>.

In one embodiment, referring to <FIG>, the velocity controller <NUM> further includes a current compensator <NUM>. The current compensator <NUM> compensates for extra current caused by the load, for example, applied to the second walking wheel <NUM> on the lower side of the slope. As shown in <FIG>, the current compensator <NUM> obtains the actual current is of the left walking motor <NUM>. In one embodiment, the current compensator <NUM> is connected with the current detection module <NUM>. The current compensator <NUM> generates a compensation amount based on the actual current is of the left walking motor <NUM>, for example, the compensation amount C is the actual current is of the left walking motor <NUM> multiplied by a compensation coefficient K, that is, the compensation amount C = K*is. Thus, the target current is* output by the velocity controller <NUM> is a sum of the proportional gain ip* of the speed error of the left walking motor <NUM> and the compensation amount C.

In another embodiment, the velocity controller <NUM> further includes a disturbance observer <NUM> to observe the load in real time and add feed-forward compensation, which eliminates the influence of the load. In one embodiment, the disturbance observer <NUM> is an extended state observer (ESO) which takes the detected actual speed of the left walking motor <NUM> and the control amount of the velocity controller <NUM>, estimates the total disturbance and tracks the underlying noise-free trend in real time. Thereby, external disturbances and unknown internal dynamics are accommodated in such a way that control can be exerted in the absence of a detailed mathematical model. Dynamic processes such as the air resistance, and the gravitational force, the friction force and so on are treated as a single total disturbance. The total disturbance is then treated as an additional state of the riding lawn mower <NUM> that is computed in real-time by the ESO to be corrected for in the feedback process. By cancelling the total disturbance, the plant, i.e., the left walking motor <NUM>, is reduced to its simplest form and as such is easily controllable via the proportional term. This method has the advantages of no control overshoot and fast load compensation.

Specifically, referring to <FIG>, the disturbance observer <NUM> obtains the actual rotational speed nl of the left walking motor <NUM>, for example, through the speed detection module <NUM>, as well as the target current is* output by the velocity controller <NUM>. The disturbance observer <NUM> estimates the total disturbance according to the actual rotational speed nl and the target current is*. In this embodiment, the total disturbance in represented by a load torque T̂L of the left walking motor <NUM>. The disturbance observer <NUM> may make use of mathematical models such as a cascading mathematical model or a convergence mathematical model to estimate the load torque T̂L of the left walking motor <NUM>. As a simplified explanation, the total torque T of the left walking motor <NUM> is the electromagnetic torque Te deducted by the load torque T̂L, wherein the electromagnetic torque Te can also be expressed as the product of the target current is* and the torque constant KT of the left walking motor <NUM>. The torque constant KT is a known constant specific to motor's design, including its magnetic strength, number of wire turns, and armature length. The torque T of the left walking motor <NUM> also equals the product of the moment of inertia J of the left walking motor <NUM>, which is also a constant value, and the time derivative of the actual rotational speed nl of the left walking motor <NUM>. After the disturbance observer <NUM> estimates the load torque T̂L, a correction amount of T̂L/KT is applied to the proportional gain ip* of the speed error of the left walking motor <NUM> in a feedback compensator <NUM>.

The current distribution unit <NUM> is connected to the velocity controller <NUM>, and is configured to distribute a target direct axis current id* and a target quadrature axis current iq* based on the target current is*. The target quadrature axis current iq* and the target direct axis current id* can be obtained by calculation, or can be set directly, for example, id* may be set to <NUM>. The target direct axis current id* and the target quadrature axis current iq* distributed by the current distribution unit <NUM> according to the target current is* can cause the rotor of the left walking motor <NUM> to generate different electromagnetic torque Te, so that the left walking motor <NUM> can reach the target rotational speed nl* through a desired acceleration. -
The current transformation unit <NUM> obtains the three-phase currents iu, iv, and iw through the current detection module <NUM> and performs current transformation to convert the three-phase currents iu, iv, and iw into two-phase currents, which are the actual direct axis current id and the actual quadrature axis current iq, respectively. Optionally, the current transformation unit <NUM> includes Park transformation and Clark transformation.

The flux controller <NUM> is connected with the current distribution unit <NUM> and current transformation unit <NUM>. The flux controller <NUM> obtains the target direct axis current id* from the current distribution unit <NUM> and the actual direct axis current id from the current transformation unit <NUM>. The flux controller <NUM> is configured to generate a first voltage adjustment amount Ud according to the target direct axis current id* and the actual direct axis current id through comparison and adjustment. The resulted first voltage adjustment amount Ud is configured to make the actual direct axis current id approach the target direct axis current id* as soon as possible. The flux controller <NUM> may include a PI controller, and the flux controller <NUM> includes comparing the target direct axis current id* and the actual direct axis current id, and performing a PI adjustment according to the comparison result to generate the first voltage adjustment amount Ud. The torque controller <NUM> is also connected with the current distribution unit <NUM> and current transformation unit <NUM>. The torque controller <NUM> obtains the target quadrature axis current iq* from the current distribution unit <NUM> and the actual quadrature axis current iq from the current transformation unit <NUM>, and generates a second voltage adjustment amount Uq. The second voltage adjustment amount Uq is configured to make the actual quadrature axis current iq approach the target quadrature axis current iq* as soon as possible.

In the related art, the torque controller <NUM> adopts a Proportional Integral (PI) controller. The problem with using a PI controller in the torque controller <NUM> is the same as using a PI controller in the velocity controller <NUM>, which will not be repeated herein. Similarly, in one embodiment, the torque controller <NUM> includes a disturbance observer <NUM> to observe the load in real time and add feed-forward compensation, which eliminates the influence of the load. In one embodiment, the disturbance observer <NUM> is an extended state observer (ESO) which takes the detected actual current of the left walking motor <NUM> and the control amount of the torque controller <NUM>, estimates the total disturbance and tracks the underlying noise-free trend in real time.

Specifically, referring to <FIG>, the disturbance observer <NUM> obtains the actual quadrature axis current iq of the left walking motor <NUM>, for example, through the current transformation module <NUM>, as well as the second voltage adjustment amount Uq output by the torque controller <NUM>. The disturbance observer <NUM> estimates the total disturbance according to the actual quadrature axis current iq and the second voltage adjustment amount Uq. In this embodiment, the total disturbance in represented by a load voltage Ê of the left walking motor <NUM>. The disturbance observer <NUM> may make use of mathematical models such as a cascading mathematical model or a convergence mathematical model to estimate the load voltage Ê of the left walking motor <NUM>. After the disturbance observer <NUM> estimates the load voltage E, it is applied to the proportional gain Up* of the quadrature axis current error of the left walking motor <NUM>, that is, the difference of the target quadrature axis current iq* and the actual quadrature axis current iq of the left walking motor <NUM> in a feedback compensator <NUM>. To be cost efficient, the left walking motor control module <NUM> is configured to introduce a disturbance observer and a feedback compensator in either the velocity controller <NUM> or the flux controller <NUM>.

The voltage transformation unit <NUM> obtains the first voltage adjustment amount Ud and the second voltage adjustment amount Uq from the flux controller <NUM> and the torque controller <NUM> respectively, as well as the position of the rotor of the left walking motor <NUM> from the rotor position detection module <NUM>, and converts the first voltage adjustment amount Ud and the second voltage adjustment amount Uq into intermediate voltage adjustment amounts Ua and Ub related to the three-phase voltage Uu, Uv, Uw applied to the left walking motor <NUM>, and output them to the PWM signal generation unit <NUM>. Optionally, the voltage transformation unit <NUM> includes inverse Park transformation.

The PWM signal generation unit <NUM> generates PWM signals for controlling the switching elements of the left walking motor drive circuit <NUM> according to the intermediate voltage adjustment amounts Ua and Ub, so that the power supply assembly <NUM> can output three-phase voltages Uu, Uv, Uw to be applied to the windings of the walking motor <NUM>. In one embodiment, the PWM signal generation unit <NUM> adopts the SVPWM technique. In one embodiment, Uu, Uv, Uw are three-phase symmetrical sine wave voltages or saddle wave voltages, and the three-phase voltages Uu, Uv, Uw form a <NUM>° phase difference with each other.

The left walking motor drive circuit <NUM> is connected to the left walking motor control module <NUM> and the left walking motor <NUM>, and configured to control the operation of the left walking motor <NUM> according to the signal output by the left walking motor control module <NUM>. Optionally, the left walking motor <NUM> may be connected to the left second walking wheel <NUM> through a deceleration device. The output speed of the left walking motor <NUM> is decelerated by the deceleration device <NUM> and then output to the left second walking wheel <NUM> to drive the left second walking wheel <NUM> to rotate. The torque of the left walking motor <NUM> is transmitted to the left second walking wheel <NUM> through the deceleration device to drive the left second walking wheel <NUM>. In other embodiments, the left walking motor <NUM> directly drive the left second walking wheel <NUM>.

With the control method described in this disclosure, one the one hand, referring to <FIG>, the left walking motor control module <NUM> responds quickly to make the actual rotational speed nl of the left walking motor <NUM> approach the target rotational speed nl* of the left walking motor <NUM> with no overshoot, even if the riding lawn mower <NUM> is affected by other disturbance factors, for example, such as, traversing a sloped surface and subject to extra load. During such process, the actual current is of the left walking motor <NUM> approximates the target current is* of the left walking motor <NUM>. On the other hand, as the left walking motor control module <NUM> generates the target rotational speed nl* of the left walking motor <NUM> based on the detected position signals of the left operating member <NUM> and the right operating member 131R, or based on the detected position signal of the left operating member <NUM> and the actual rotational speed nr of the right walking motor 123R, the generated target rotational speed nl* of the left walking motor <NUM> accommodates for the needs of stable acceleration and flexible steering at the same time, thereby providing the user a comfortable and responsive driving experience. In addition, the generated target rotational speed nl* of the left walking motor <NUM> also enables a variety of driving mode configurations, thus the user can choose different driving modes for different driving experiences. The right walking control system is similar or identical to the left walking control system, except that the right walking control module 124R calculates the right target speed nr* and controls the right walking motor 123R, and therefore will not be repeated herein. In one embodiment, the riding lawn mower <NUM> has a central walking motor control module 124C instead of the left walking motor control module <NUM> and the right walking motor control module 124R, and the central walking motor control module 124C controls both the left walking motor <NUM> and the right walking motor 123R with the same control method, which will not be repeated herein.

Claim 1:
A riding lawn mower (<NUM>), comprising:
a seat (<NUM>) for a user to sit thereon;
a chassis (<NUM>) configured to support the seat (<NUM>);
a walking assembly (<NUM>) configured to drive the riding lawn mower to walk, the walking assembly comprises at least one first walking wheel (<NUM>) and two second walking wheels (<NUM>), the two second walking wheels are a left second walking wheel (<NUM>) and a right second walking wheel (122R), the walking assembly further comprises a left walking motor (<NUM>) for driving the left second walking wheel and a right walking motor (123R) for driving the right second walking wheel;
a left operating member (<NUM>) and a right operating member (131R), the left operating member being operable by the user to generate a left operational amount, the right operating member being operable by the user to generate a right operational amount;
a walking motor control module (<NUM>) configured to receive at least one of the left operational amount or the right operational amount, and control at least one of the left walking motor or the right walking motor;
wherein the walking motor control module comprises a target speed calculation unit (<NUM>), the target speed calculation unit comprising:
an input unit (1248A) configured to generate a left reference speed and a right reference speed from at least one of the left operational amount or the right operational amount;
characterized in that the walking motor control module further comprises:
a decoupling unit (1248B) configured to generate a first velocity and a second velocity from the left reference speed and the right reference speed, wherein the decoupling unit calculates the first velocity as an average value of the left reference speed and the right reference speed, and calculates the second velocity as a difference between the left reference speed and the right reference speed divided by a distance between the left second walking wheel and the right second walking wheel;
a processing unit (1248C) configured to independently obtain a first processed velocity from the first velocity and obtain a second processed velocity from the second velocity, wherein the processing unit makes the processed first velocity subject to a maximum acceleration value; and
an output unit (1248D) configured to generate a left target speed for the left walking motor or a right target speed for the right walking motor from the first processed velocity and the second processed velocity.