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 Japanese Patent Application Publication No. 2008-168871 (JP 2008-168871 A) (paragraphs [0012-0033, 0080-0106],
According to an example, 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 example, the first velocity is a linear velocity and the second velocity is an angular velocity.
In one example, 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 example, 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 example, 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 example, the left walking motor control module receives the left operational amount and an actual rotational speed of the right walking motor.
In one example, 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 example, the processing unit makes the processed first velocity subject to a maximum acceleration value.
In one example, the riding lawn mode has different driving modes.
In one example, 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 example, 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 example, 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 example, the velocity controller includes a current compensator, which generates a compensation amount based on the detected actual current of the walking motor.
In one example, the velocity controller includes a disturbance observer and a feedback compensator.
In one example, 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 example, 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 example, the torque controller includes a disturbance observer and a feedback compensator.
In one example, 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 example, 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 example, 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
It is appreciated that aspects of this disclosure are also applicable to riding machines of other types, as long as the riding machine can output power in other forms besides walking power in order to realize other functions besides walking, such as, for example, riding snow blowers, riding agricultural machines, and riding sweepers. In fact, as long as these tools include the substance described below in this disclosure, they all fall within the scope of this disclosure.
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
According to
Referring to
The walking assembly 12 is configured to enable the riding lawn mower 100 to walk on the ground. The walking assembly 12 may include at least one first walking wheel 121 and at least two second walking wheels 122, for example, two second walking wheels 122, namely a left second walking wheel 122L and a right second walking wheel 122R. The first walking wheel 121 is configured to rotate freely. The first walking wheel 121 has a first diameter; the second walking wheel 122 has a second diameter larger than the first diameter. The walking assembly 12 may also include at least one walking motor 123, for example, two walking motors 123, namely a left walking motor 123L and a right walking motor 123R, for driving the second walking wheels 122. In this way, when the two walking motors 123 drive the corresponding second walking wheels 122 to rotate at different speeds, a speed difference is generated between the two second walking wheels 122, so as to steer the riding lawn mower 100. The walking motor 123 is controlled by a walking motor control module 124. In some examples, the walking motor control module 124 includes a control chip, such as MCU, ARM, and so on. In one example, two walking motor control modules 124 control the two walking motors 123, respectively.
The power supply assembly 14 is configured to supply electric power to the riding lawn mower 100. In some examples, the power supply assembly 14 includes a plurality of battery packs 141 capable of supplying electric power to the riding lawn mower 100. The power supply assembly 14 is configured to at least supply electric power to the cutting motors 112 and the walking motors 123. The power supply assembly 14 may also supply electric power to other electronic components in the riding lawn mower 100, such as the cutting control module 113 and the walking motor control module 124. The power supply assembly 14 may include a power supply management module 144 to coordinate and control the discharge process of at least one battery packs 141. In some examples, the power supply assembly 14 is provided on the rear side of the seat 15 on the chassis 16.
The operating assembly 13 is operable by the user, and the user sends control instructions through the operating assembly 13 to control the operation of the riding lawn mower 100. The operating assembly 13 can be operated by the user to set the cutting speed, walking speed, walking direction, etc. of the riding lawn mower 100. In other words, the operating assembly 13 is operable by the user to set an operating status for the riding lawn mower 100, wherein the operating status includes a cutting status and a walking status. For example, the walking motor control module 124 is configured to receive an operational amount from an operating member 131 of the operating assembly 13 and control the walking assembly 12 based on the operational amount. The operating assembly 13 may include a combination of one or more operating members 131 such as pedal, lever, handle, and steering wheel. Further, the operating assembly 13 includes one or more operation sensing module 132 enabled to sense the states or operational amount of the operating members 131.
In one example, as shown in
The riding lawn mower 100 may further include a bus module 18, and the bus module 18 is connected with a variety of modules, for example, the bus module 18 is at least connected with the cutting control module 113, the walking motor control module 124, the operation sensing module 132, and the power supply management module 142. The cutting control module 113, the walking motor control module 124, the operation sensing module 132, and the power supply management module 142 can all send data to the bus module 18, and receive data through the bus module 18. 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 18, determine whether the information is relevant and take corresponding actions.
Referring to a communication system of the riding lawn mower 100 according to a specific example as shown in
Referring to
Referring to
The user manipulates the operating levers 131 to issue commands on the walking speed and the walking direction of the riding lawn mower 100. 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 100 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 100. However, related solutions such as filtering do not hit the point. If the position signals of the operating lever 131 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 100, especially the responsiveness of steering. Generally, in linear movement, the riding lawn mower 100 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 100 needs to turn to the desired direction in time, otherwise, the riding lawn mower 100 may miss mowing lanes when performing mowing jobs. Thus, in our disclosure, the linear velocity and the angular velocity of the riding lawn mower 100 are decoupled from the detected position signals of the left operation sensing module 132L and the right operation sensing module 132R. The linear velocity of the riding lawn mower 100 reflects the desired walking speed, and the angular velocity of the riding lawn mower 100 reflects the desired walking direction. In this way, the linear velocity and the angular velocity of the riding lawn mower 100 can be processed separately and independently to achieve the goal of stable acceleration but flexible steering.
In one example, referring to
In one example, the walking motor control module 124 is configured with built-in functions or tables to map the position signal of each operating lever 131 into corresponding reference speed, for example, the walking motor control module 124 maps the position signal of the left operation sensing module 132L into a left reference speed vlref, and maps the position signal of the right operation sensing module 132R into a right reference speed vrref. Specifically, the left operating lever 131L and the right operating lever 131R each have a forward position, a reverse position, and a neutral position. When the user wants to go forward, the user pushes the left operating lever 131L and the right operating lever 131R to a certain position in the forward position, the left walking motor control module 124L obtains a positive left reference speed and a positive right reference speed corresponding to the current positions of the operating levers 131 detected by the operation sensing module 132. When user wants to go backward, the user pulls the left operating lever 131L and the right operating lever 131R to a certain position in the reverse position, the left walking motor control module 124L obtains a negative left reference speed and a negative right reference speed corresponding to the current positions of the operating levers 131 detected by the operation sensing module 132. When the user wants to make a zero turn, the user pushes one of the left operating lever 131L or the right operating lever 131R to a certain position in the forward position and pulls one of the left operating lever 131L or the right operating lever 131R to a certain position in the reverse position, the left walking motor control module 124L obtains a negative reference speed and a positive reference speed corresponding to the current positions of the operating levers 131 detected by the operation sensing module 132.
In one example, the first velocity v is the linear velocity of the riding lawn mower 100, and the second velocity ω is an angular velocity of the riding lawn mower 100; 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 example, 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)/2; 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 100, i.e., the linear velocity and the angular velocity of the riding lawn mower 100, enables the first velocity v and the second velocity ω of the riding lawn mower 100, i.e., the linear velocity and the angular velocity of the riding lawn mower 100, to be processed separately and independently.
The first velocity v and the second velocity ω are not directly used by the walking motor control module 124 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 example, 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−1, such as:
pv
T=0*vT+(1−θ)*pvT−1 (1)
wherein θ is the coefficient for calculating the processed first velocity pv, and the processed first velocity pv can be initialized with 0. 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 example, 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−1+α1, wherein α1 is the increment velocity amount per iteration or per unit of time, and the processed first velocity pv can be initialized with 0. The processed first velocity pv can also be expressed in the integral form of time t, that is, pv=pv0+∫α1dt. Of course, α1 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 0. In yet another example, the acceleration of the processed first velocity pv is not a constant, but a controlled function of time t, such as αtv=f1(t), wherein at is a variable acceleration of the processed first velocity pv; then the processed first velocity pv is calculated as pv=pv0+∫αtvMt. 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 example, 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 100 during turning. In another example, 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−1+α2, wherein α2 is the increment amount per iteration or per unit of time, and the processed second velocity pω can be initialized with 0. The processed second velocity pω can also be expressed in the integral form of time t, that is, pω0=pω0+∫α2dt. Of course, α2 is negative when the second velocity ω decreases. In this case, the acceleration α2 of the processed second velocity pω is kept constant, and thus the jerk of the processed second velocity pω is 0. In yet another example, the acceleration of the processed second velocity pω is not a constant, but a controlled function of time t, such as αtω=f2(t), wherein αtω is a variable acceleration of the processed second velocity pω; then the processed second velocity pω is calculated as pω0=pω0+∫αtωdt. 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 100, i.e., the linear velocity and the angular velocity of the riding lawn mower 100, are processed separately after decoupling, the processing of the (linear) acceleration response of the riding lawn mower 100 the processing of the steering response of the riding lawn mower 100 do not affect each other.
In one example, the riding lawn mower 100 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 100 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 pc)) in different driving modes are configured to be different. For example,
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 127, which includes the left walking motor drive circuit 127L and the right walking motor drive circuit 127R. In one example, 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 123L, 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 124L and the right walking motor control module 124R. Thereby, the left walking motor control module 124L uses the left target speed nl* to control the left walking motor 123L, the right walking motor control module 124R uses the right target speed nr* to control the right walking motor 123R, simultaneously. In one example, the target rotational speed of the left walking motor 123L can be computed from the detected position signals from one of the left operation sensing module 132L or the right operation sensing module 132R. For example, the left walking motor control module 124L can also compute the target speed nl* of the left walking motor 123L from the detected position signals of the left operation sensing module 132L 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 124L. 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 123L.
Having the target speed nl* of the left walking motor 123L, the left walking motor control module 124L further needs operational parameters of the left walking motor 123L itself in order to realize a closed-loop control of the left waking motor 123L. The left walking motor detection module 128L is coupled to the left walking motor 123L, and is configured to detect operational parameters of the left walking motor 123L, for example, such as, the rotor position, the actual rotational speed, and/or the phase currents of the left walking motor 123L. In one example, the left walking motor detection module 128L includes a speed detection sensor, which is arranged near or inside the left walking motor 123L to obtain the actual rotational speed of the left walking motor 123L; for example, a photoelectric sensor installed near the left walking motor 123L to obtain the actual rotational speed of the left walking motor 123L; for another example, a Hall sensor arranged near the rotor of the left walking motor 123L to obtain the rotor position and the actual rotational speed of the left walking motor 123L. In one example, if the left walking motor 123L is a brushless motor, the electrical signal output by the left walking motor 123L is a periodically changed back electromotive force, thus, by detecting one of the least of the current or voltage of the left walking motor 123L and spotting the zero-crossing point of the back electromotive force, the actual rotational speed of the left walking motor 123L can be obtained.
More details of the control method adopted by the left walking motor control module 124L will be described with reference to
In one example, the target speed calculation unit 1248 is configured to receive the detected position signals of the left operation sensing module 132L and the right operation sensing module 132R and outputs the target rotational speed nl* of the left walking motor 123L. The target speed calculation unit 1248 implements the steps of S1-S4 as described above. In one example, as shown in
The velocity controller 1241 is connected with the target speed calculation unit 1248 and the speed detection module 1283. The velocity controller 1241 obtains the target rotational speed nl* of the left walking motor 123L from the target speed calculation unit 1248 and the actual rotational speed nl of the left walking motor 123L detected by the speed detection module 1283. The velocity controller 1241 is configured to generate a target current is* of the left walking motor 123L according to the target rotational speed nl* and the actual rotational speed nl of the left walking motor 123L through comparison and adjustment. The resulted target current is* is configured to make the actual rotational speed nl of the left walking motor 123L approach the target rotational speed nl* of the left walking motor 123L.
In the related art, the velocity controller 1241 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 123L, that is, the difference between the actual rotational speed nl of the left walking motor 123L and the target rotational speed nl* of the left walking motor 123L, 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 123L is large. For example, as shown in
In one example, referring to
In another example, the velocity controller 1241 further includes a disturbance observer 1292 to observe the load in real time and add feed-forward compensation, which eliminates the influence of the load. In one example, the disturbance observer 1292 is an extended state observer (ESO) which takes the detected actual speed of the left walking motor 123L and the control amount of the velocity controller 1241, 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 100 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 123L, 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
The current distribution unit 1242 is connected to the velocity controller 1241, 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 0. The target direct axis current id* and the target quadrature axis current iq* distributed by the current distribution unit 1242 according to the target current is* can cause the rotor of the left walking motor 123L to generate different electromagnetic torque Te, so that the left walking motor 123L can reach the target rotational speed nl* through a desired acceleration.
The current transformation unit 1247 obtains the three-phase currents iu, iv, and iw through the current detection module 1281 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 1247 includes Park transformation and Clark transformation.
The flux controller 1243 is connected with the current distribution unit 1242 and current transformation unit 1247. The flux controller 1243 obtains the target direct axis current id* from the current distribution unit 1242 and the actual direct axis current id from the current transformation unit 1247. The flux controller 1243 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 1243 may include a PI controller, and the flux controller 1243 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 1244 is also connected with the current distribution unit 1242 and current transformation unit 1247. The torque controller 1244 obtains the target quadrature axis current iq* from the current distribution unit 1242 and the actual quadrature axis current iq from the current transformation unit 1247, 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 1244 adopts a Proportional Integral (PI) controller. The problem with using a PI controller in the torque controller 1244 is the same as using a PI controller in the velocity controller 1241, which will not be repeated herein. Similarly, in one example, the torque controller 1244 includes a disturbance observer 1294 to observe the load in real time and add feed-forward compensation, which eliminates the influence of the load. In one example, the disturbance observer 1294 is an extended state observer (ESO) which takes the detected actual current of the left walking motor 123L and the control amount of the torque controller 1244, estimates the total disturbance and tracks the underlying noise-free trend in real time.
Specifically, referring to
The voltage transformation unit 1245 obtains the first voltage adjustment amount Ud and the second voltage adjustment amount Uq from the flux controller 1243 and the torque controller 1244 respectively, as well as the position of the rotor of the left walking motor 123L from the rotor position detection module 1282, 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 123L, and output them to the PWM signal generation unit 1246. Optionally, the voltage transformation unit 1245 includes inverse Park transformation.
The PWM signal generation unit 1246 generates PWM signals for controlling the switching elements of the left walking motor drive circuit 127L according to the intermediate voltage adjustment amounts Ua and Ub, so that the power supply assembly 14 can output three-phase voltages Uu, Uv, Uw to be applied to the windings of the walking motor 123. In one example, the PWM signal generation unit 1246 adopts the SVPWM technique. In one example, Uu, Uv, Uw are three-phase symmetrical sine wave voltages or saddle wave voltages, and the three-phase voltages Uu, Uv, Uw form a 120° phase difference with each other.
The left walking motor drive circuit 127L is connected to the left walking motor control module 124L and the left walking motor 123L, and configured to control the operation of the left walking motor 123L according to the signal output by the left walking motor control module 124L. Optionally, the left walking motor 123L may be connected to the left second walking wheel 122L through a deceleration device. The output speed of the left walking motor 123L is decelerated by the deceleration device 41L and then output to the left second walking wheel 122L to drive the left second walking wheel 122L to rotate. The torque of the left walking motor 123L is transmitted to the left second walking wheel 122L through the deceleration device to drive the left second walking wheel 122L. In other examples, the left walking motor 123L directly drive the left second walking wheel 122L.
With the control method described in this disclosure, one the one hand, referring to
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 example, the riding lawn mower 100 has a central walking motor control module 124C instead of the left walking motor control module 124L and the right walking motor control module 124R, and the central walking motor control module 124C controls both the left walking motor 123L and the right walking motor 123R with the same control method, which will not be repeated herein.
Aspects of this disclosure are also applicable to riding machines of other types, as long as the riding machine can output power in other forms besides walking power in order to realize other functions besides walking. The above described examples, of course, are not to be construed as limiting the breadth of the present invention. Modifications, and other alternative constructions, will be apparent which are within the spirit and scope of the invention as defined in the appended claims.
This application is a continuation of International Application Number PCT/CN2021/120368, filed on Sep. 24, 2021, which application is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2021/120368 | Sep 2021 | US |
Child | 18328005 | US |