The present invention relates generally to diagnostics of a materials handling vehicle, and, more particularly, to controlling a traction speed of the vehicle.
Forklifts and other types of industrial vehicles are expected to operate under a variety of different conditions. Further, such vehicles typically include a number of different functional systems such as a traction system to control a travelling speed of the vehicle and a steering system to control a direction in which the vehicle travels.
Under various vehicle operating conditions, it may be beneficial to vary the manner in which the traction wheel and steered wheel of the vehicle are controlled to reduce forces exerted on a vehicle operator due to vehicle movement.
In accordance with a first aspect of the present invention, a computer-implemented method is provided for controlling a traction motor of a materials handling vehicle. The method comprises: receiving, by a processor, steering command signals from a steering control input sensor of the materials handling vehicle; generating, by the processor, a current output value proportional to a rate of change of the steering command signals; determining, by the processor, a raw target steering angle value; calculating, by the processor, a current target steering angle value based on: the current output value compared to a predetermined threshold, and the raw target steering angle value compared to a previously calculated target steering angle value; calculating, by the processor, a traction speed limit based on the calculated current target steering angle value; calculating, by the processor, a traction setpoint based on the traction speed limit; and controlling the traction motor of the materials handling vehicle based on the traction setpoint.
The calculated current target angle value equals the raw target angle value when the raw target angle value is greater than the previously calculated target angle value.
The calculated current target angle value equals the previously calculated target angle value when: the current output value is greater than or equal to the predetermined threshold; and the raw target angle value is less than or equal to the previously calculated target angle value.
The calculated current target angle value equals a value that is closer to the raw target angle value than the previously calculated target angle value when: the current output value is less than the predetermined threshold; and the raw target angle value is less than or equal to the previously calculated target angle value.
The calculated current target angle value may be calculated by applying a smoothing filter function to the raw target angle value. The smoothing filter function may comprise an adjustable multiplier coefficient.
Generating a current output value proportional to a rate of change of the steering command signals may comprise: calculating, by the processor, a current input value proportional to a rate of change of the steering command signals; comparing the current input value to a previous output value; if the current input value is equal to or less than the previous output value, calculating by the processor a current output value by multiplying the previous output value by a predetermined decay rate of a filter; and if the input value is greater than the previous output value, setting the current output value equal to the current input value.
Determining, by the processor, whether the current output value is greater than or equal to the predetermined threshold.
The current target angle value may be calculated based on: whether the current output value is greater than or equal to the predetermined threshold, and whether the raw target angle value is less than or equal to the previously calculated target angle value.
Controlling the traction motor may comprise controlling at least one of a speed of the traction motor or a torque of the traction motor.
In accordance with a second aspect of the present invention, a system is provided for controlling a traction motor of a materials handling vehicle. The system may comprise: a steering control input sensor of the materials handling vehicle; a processor coupled to memory, wherein the memory stores program code that is executed by the processor to: receive steering command signals from the steering control input sensor of the materials handling vehicle; generate a current output value proportional to a rate of change of the steering command signals; determine a raw target angle value; calculate a current target angle value based on: the current output value compared to a predetermined threshold, and the raw target angle value compared to a previously calculated target angle value; calculate a traction speed limit based on the calculated current target angle value; and calculate a traction setpoint based on the traction speed limit. A traction controller may control the traction motor of the materials handling vehicle based on the traction setpoint. The traction speed limit may be a traction wheel speed limit or a traction motor speed limit.
The calculated current target angle value equals the raw target angle value when the raw target angle value is greater than the previously calculated target angle value.
The calculated current target angle value equals the previously calculated target angle value when: the current output value is greater than or equal to the predetermined threshold; and the raw target angle value is less than or equal to the previously calculated target angle value.
The calculated current target angle value equals a value that is closer to the raw target angle value than the previously calculated target angle value when: the current output value is less than the predetermined threshold; and the raw target angle value is less than or equal to the previously calculated target angle value.
The calculated current target angle value may be calculated by applying a smoothing filter function to the raw target angle value. The smoothing filter function may comprise an adjustable multiplier coefficient.
The processor when executing the program code to generate a current output value proportional to a rate of change of the steering command signals calculates a current input value proportional to a rate of change of the steering command signals; compares the current input value to a previous output value; and if the current input value is equal to or less than the previous output value, calculates a current output value by multiplying the previous output value by a predetermined decay rate of a filter; and if the input value is greater than the previous output value, sets the current output value equal to the current input value.
The memory stores program code that is executed by the processor to: determine whether the current output value is greater than or equal to the predetermined threshold.
The current target angle value may be calculated based on: whether the current output value is greater than or equal to the predetermined threshold, and whether the raw target angle value is less than or equal to the previously calculated target angle value.
The traction controller may control at least one of a speed of the traction motor or a torque of the traction motor.
In accordance with a third aspect of the invention, a system is provided for controlling a traction motor of a materials handling vehicle. The system may comprise: a steering control input sensor of the materials handling vehicle; and a processor configured to: receive steering command signals from the steering control input sensor of the materials handling vehicle; generate a current output value proportional to a rate of change of the steering command signals; determine a raw target steering angle value; calculate a current target steering angle value based on: the current output value compared to a predetermined threshold, and the raw target steering angle value compared to a previously calculated target steering angle value; calculate a traction speed limit based on the calculated current target steering angle value; and calculate a traction setpoint based on the traction speed limit. A traction controller may control the traction motor of the materials handling vehicle based on the traction setpoint. Any of the features described in relation to the second aspect of the invention are equally applicable to the present aspect.
In accordance with a fourth aspect of the present invention, a vehicle is provided that comprises the system according to the second or third aspect of the present invention.
In accordance with a fifth aspect of the present invention, a method is provided for controlling a traction motor of a materials handling vehicle. The method comprises: receiving steering command signals from a steering control input sensor of the materials handling vehicle; generating a current output value proportional to a rate of change of the steering command signals; determining a raw target steering angle value; calculating a current target steering angle value based on: the current output value compared to a predetermined threshold, and the raw target steering angle value compared to a previously calculated target steering angle value; calculating a traction speed limit based on the calculated current target steering angle value; calculating a traction setpoint based on the traction speed limit; and controlling the traction motor of the materials handling vehicle based on the traction setpoint. Any of the features described in relation to the first aspect of the invention are equally applicable to the present aspect.
In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration, and not by way of limitation, specific preferred embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and that changes may be made without departing from the spirit and scope of the present invention.
Referring now to
The vehicle 10 includes a main body or power unit 12, which includes a frame 14 defining a main structural component of the vehicle 10 and which houses a battery 15. The vehicle 10 further comprises a pair of fork-side support wheels 16 coupled to first and second outriggers 18, a driven and steered wheel 20 mounted near a first corner at a rear 12A of the power unit 12, and a caster wheel (not shown) mounted to a second corner at the rear 12A of the power unit 12. The wheels 16, 20 allow the vehicle 10 to move across a floor surface.
An operator's compartment 22 is located within the power unit 12 for receiving an operator driving the vehicle 10. A tiller knob 24 is provided within the operator's compartment 22 for controlling steering of the vehicle 10. The speed and direction of movement (forward or reverse) of the vehicle 10 are controlled by the operator via a multi-function control handle 26 provided adjacent to an operator seat 28, which control handle 26 may control one or more other vehicle functions as will be appreciated by those having ordinary skill in the art. The vehicle 10 further includes an overhead guard 30 including a vertical support structure 32 affixed to the vehicle frame 14.
A load handling assembly 40 of the vehicle 10 includes, generally, a mast assembly 42 and a carriage assembly 44, which is movable vertically along the mast assembly 42. The mast assembly 42 is positioned between the outriggers 18 and includes a fixed mast member 46 affixed to the frame 14, and nested first and second movable mast members 48, 50. It is noted that the mast assembly 42 may include additional or fewer movable mast members than the two shown in
The vehicle 10 of
In the illustrated embodiment, the VCM 200 includes one or more processors or microcontrollers 216, input/output hardware 218, network interface hardware 220, a data storage component 222, and a memory component 202. The data storage component 222 and the memory component 202 may each be configured as volatile and/or nonvolatile memory and as such, may include random access memory (including SRAM, DRAM, and/or other types of RAM), flash memory, secure digital (SD) memory, registers, compact discs (CD), digital versatile discs (DVD), and/or other types of non-transitory computer-readable mediums. Any stored information that is intended to be available after the vehicle 10 is shutdown and restarted may beneficially be stored in non-volatile memory. Also, depending on the particular embodiment, the non-transitory computer-readable medium, mentioned above, may reside within the VCM 200 and/or external to the VCM 200.
Additionally, the memory component 202 may store software or applications that can be executed (i.e., using executable code) by the one or more processors or microcontrollers 216. Thus, the memory component 202 may store an operating application or logic 204, a traction application or logic 208, a steering application or logic 206, a hoist application or logic 210, and accessory application(s) or logic 212. The operating logic 204 may include an operating system and other software such as, for example, diagnostic-related applications for managing components of the VCM 200. The traction application or logic 208 may be configured with one or more algorithms and parameters for facilitating optimal traction control for the vehicle 10. The steering application or logic 206 may be configured with one or more algorithms and parameters for facilitating optimal steering control of the vehicle 10. The hoist application or logic 210 may include one or more algorithms and parameters for facilitating optimal hoist control of the vehicle 10, which acts as the primary load handling assembly system used to raise and lower the moveable assembly 47 of the vehicle 10. Additionally, the accessory application or logic 212 may include one or more algorithms and parameters for providing control of accessories of the vehicle 10 such as an auxiliary load handling assembly system, which performs additional tasks such as tilt and sideshift of the carriage assembly 44. A local communication interface 214 is also included in
The one or more processors or microcontrollers 216 may include any processing component operable to receive and execute instructions (such as program code from the data storage component 222 and/or the memory component 202). The processors or microcontrollers 216 may comprise any kind of a device which receives input data, processes that data through computer instructions, and generates output data. Such a processor can be a microcontroller, a hand-held device, laptop or notebook computer, desktop computer, microcomputer, digital signal processor (DSP), mainframe, server, cell phone, personal digital assistant, other programmable computer devices, or any combination thereof. Such processors can also be implemented using programmable logic devices such as field programmable gate arrays (FPGAs) or, alternatively, realized as application specific integrated circuits (ASICs) or similar devices. The term “processor” is also intended to encompass a combination of two or more of the above recited devices, e.g., two or more microcontrollers.
The input/output hardware 218 may include and/or be configured to interface with a monitor, positioning system, keyboard, touch screen, mouse, printer, image capture device, microphone, speaker, gyroscope, compass, and/or other device for receiving, sending, and/or presenting data. The network interface hardware 220 may include and/or be configured for communicating with any wired or wireless networking hardware, including an antenna, a modem, LAN port, wireless fidelity (Wi-Fi) card, WiMax card, mobile communications hardware, and/or other hardware for communicating with other networks and/or devices. From this connection, communication may be facilitated between the VCM 200 and other computing devices including other components coupled with a CAN bus or similar network on the vehicle 10.
It should be understood that the components illustrated in
This application incorporates by reference to each of commonly assigned and co-pending U.S. patent application Ser. No. 15/234,120, filed on Aug. 11, 2016, entitled MODEL BASED DIAGNOSTICS BASED ON TRACTION MODEL; U.S. patent application Ser. No. 15/234,152, filed on Aug. 11, 2016, entitled DIAGNOSTIC SUPERVISOR TO DETERMINE IF A TRACTION SYSTEM IS IN A FAULT CONDITION; and U.S. patent application Ser. No. 15/234,168, filed on Aug. 11, 2016, entitled STEERING AND TRACTION APPLICATIONS FOR DETERMINING A STEERING CONTROL ATTRIBUTE AND A TRACTION CONTROL ATTRIBUTE.
It also should be understood that the VCM 200 may communicate with various sensors and other control circuitry of the vehicle 10 to coordinate the various conditions of manual operation and automatic operation of the vehicle 10.
In the description below, the following terms are used and are intended to convey the following definitions:
steering command signals: sensor output signal values from the operator steering mechanism.
Wheel_Angle_Cmd: a value generated by the steering application and is a transformation of a digitized value of the steering control input into units that reflect an angle/angular velocity value.
Raw Wheel_Angle_Target, or raw target steering angle ϕT: based on the operator's input, this is a value generated by the steering application. Depending on the current operation of a vehicle its value can be one of either the Wheel_Angle_Cmd or a Wheel_Angle.
Wheel_Angle_Target, or target steering angle ΘT: based on the operator's input, the operating conditions of the vehicle, and the raw target steering angle ϕT this is a value calculated by the steering application and provided to the traction application in order to calculate a second Trx_Speed_Limit2.
Wheel_Angle_Limit: a highest allowable steered wheel angle, generated by the steering application based on the measured value of the traction wheel/motor speed and can be used to modify the Wheel_Angle_Setpoint in order to stay within a desired Wheel Angle-to-Traction Speed relationship.
Wheel_Angle_Setpoint, or steering setpoint ω1 or θ1: a value generated by the steering application, based on the operator's input, but modified based on traction speed, this is the input sent to the steering control module to effect a change in the steered wheel angle/angular velocity.
Steering feedback (ω2 or θ2), or Wheel_Angle: a measured value of the steered wheel angle/angular velocity, generated by the steering control module.
traction speed command signals: a value received from a sensor/actuator that the operator manipulates.
Trx_Speed_Cmd: a value generated by the traction application and is a transformation of the digitized voltage reading of the traction speed control input into units that reflect a speed.
First Trx_Speed_Limit1: a highest allowable traction wheel/motor speed for a particular wheel angle value, based on a desired wheel angle—to—traction speed relationship such as defined by the graph in
Second Trx_Speed_Limit2: The second Trx_Speed_Limit2 is generated by the traction application and uses an initial or modified Wheel_Angle_Target as the particular wheel angle value, see
traction speed setting ω4: a value generated by the traction application, based on the operator's input, but modified based on the Trx_Speed_Limit2; this velocity value will eventually be converted to a torque value by the traction application.
traction set point, τ1: a torque value based on the traction speed setting and the current speed of the vehicle, and is generated by the traction application.
Trx_Speed, or speed feedback, ω3: is a measured value of the traction wheel/motor speed, generated by the traction control module.
Referring to
In
The steering application 206 additionally produces the target steering angle θT or Wheel_Angle_Target which is provided to the traction application 208. As discussed below, with respect to
The traction torque setpoint τ1 can be provided to a traction control module (TCM) 258. The TCM 258 uses the traction torque setpoint τ1 for controlling the operation of the traction motor 264 as discussed further below. The TCM 258 monitors the traction motor 264 and provides a traction feedback speed ω3 to the traction application 208 and the steering application 206. It may be beneficial in some embodiments to convert the traction speed, or speed feedback, ω3, to an actual linear speed of the vehicle 10 by the traction application 208. If, for example, the speed feedback ω3 was an angular speed of the traction motor 264, then the traction application 208 could scale that value to an actual linear speed, v3, of the vehicle 10 based on a) a gearing ratio between the traction motor 264 and the driven wheel 20 and b) the circumference of the driven wheel 20. Alternatively, if the speed feedback ω3 was an angular speed of the driven wheel 20, then the traction application 208 could scale that value to an actual linear speed, v3, of the vehicle 10 based on the circumference of the driven wheel 20. The linear speed of the vehicle equals the linear speed of the driven wheel 20, presuming there is no slip at the driven wheel.
The traction setpoint τ1 is determined by the traction application 208 using a Trx_Speed_Cmd which is generated by the traction application 208 and is based on traction speed command signals 260 received from an operator controlled traction speed control input sensor 262, such as the multi-function control handle 26 of the vehicle 10, and the target steering angle θT output from the steering application 206. The traction setpoint τ1 is output from the traction application 208 to the TCM 258 as a torque value which results in a corresponding speed of a traction motor 264 under the control of the TCM 258.
In step 302, the steering application 206, which is executing on the processor 216 of the VCM 200, receives the steering command signals 278 to control the steered wheel 20 of the vehicle 10 and a measured, feedback value θ2, ω2 of a control attribute related to the steered wheel, such as a steered wheel angle or a steering motor angular velocity. The steering application 206 also receives a measured, feedback value ω3 of a control attribute related to a traction wheel 20 of the vehicle 10, such as a traction wheel speed or a traction motor speed.
Then, based on the steering command signals 278, the measured value θ2, ω2 of the control attribute related to the steered wheel and the measured value of the control attribute related to the traction wheel, the steering application determines, in step 304, a setpoint value θ1, ω1 of the control attribute related to the steered wheel, and a raw target steering angle ϕT of the steered wheel. The manner in which the raw target steering angle ϕT calculated is discussed below with regards to
In step 306, the steering application 206, determines whether or not the initial value calculated for the raw target steering angle ϕT should be adjusted to a different value, based on the present operating conditions of the vehicle. As explained in detail below, the traction speed of a vehicle can be limited based on an angle of the steered wheel in order to control the forces applied to the operator so as to help maintain operator stability. During conditions in which the steered wheel angle remains relatively constant, the traction speed and wheel angle are such that a target acceleration can typically be achieved. However, during dynamic steering conditions (i.e. during steering wheel angle adjustments) the targets for allowable vehicle speeds and steered wheel angles may be more difficult to achieve because the steered wheel angle can be adjusted very quickly as compared to the adjustment of the speed of the vehicle. As a result, the traction system and the steering system can cause a) the untimely application of traction acceleration, b) traction slippage, and c) a less than desirable feel realized by the operator.
As discussed below with respect to
Thus, the steering application 206 can operate to further adjust the raw target steering angle ϕT of the steered wheel in order to limit the traction speed during the larger-to-smaller and some subsequent smaller-to-larger wheel angle adjustments as discussed further below. As an example, while the steered wheel angle is held relatively steady at a large, i.e., high magnitude, steered wheel angle value, the traction system control logic will achieve its defined speed. Upon receiving steering command signals that will result in returning the steered wheel angle to a wheel angle having an absolute value less than that of an initial large steered wheel angle (e.g., a change from a sharp turn condition to a straight-ahead travel condition) the steering application 206 can calculate a current value of the raw target steering angle ϕT of the steered wheel that is based on the smaller wheel angle. However, as discussed below with respect to
In step 308, the traction application 208, which is executing on the processor 216 of the VCM 200, receives the measured speed feedback ω3 of the control attribute related to the traction wheel 20, the target steering angle θT from the steering application 206, and the traction speed command signals 260 to control the traction motor 264, which, in turn, controls the speed of the traction wheel 20 of the vehicle 10. Based on the traction speed command signals 260, the measured speed feedback ω3 of the control attribute related to the traction wheel, and the target steering angle θT, the traction application 208 determines, in step 310, a setpoint value τ1 or ω4 of the control attribute related to the traction wheel 20.
If the absolute value of the raw target steering angle ϕT calculated in step 304 is greater than an absolute value of a previously calculated target steering angle θT, as shown in step 322 and also shown in step 370 of
If, in step 324, it is determined that the rate of change or current output value y[t] is equal to or greater than the predetermined threshold, then that indicates the operator is moving the steering control mechanism quickly and moving it in a way that will cause the absolute value of the steered wheel angle to decrease from its present absolute value. Under those vehicle operating conditions, the target steering angle θT is, in step 326, set equal to the previously calculated target steering angle, via steps 378, 382, 386 of
If, in step 324 it is determined that the rate of change or current output value y[t] is not equal to or greater than the predetermined threshold, then that indicates the operator is moving the steering control mechanism relatively slowly and moving it in a way that will cause the steered wheel angle to decrease from its present value. Under those vehicle operating conditions, the target steering angle θT is, in step 328, calculated by a filter that generates a value that decays from the previously calculated target steering angle towards the raw target steering angle ϕT. The details of this filter are described below with respect to
As mentioned above, the steering application 206 provides or outputs the target steering angle θT in step 330.
In step 338, the steering application applies a filter to the current input value x[t] to smooth calculation of a filter output signal y[t] that is proportional to, and indicative of, the rate at which the operator is moving the vehicle steering control mechanism.
Referring to
In step 356, the filter calculates a first sum s1[t] that equals (i1[t]−y[t−1]). In step 358, similar to step 350, the current input value x[t] to the filter is compared to a previous output value y[t−1] of the filter. If x[t] is greater than y[t−1], then control passes to step 360 where a second intermediate value, i2, of the filter is set equal 0. If the current input value x[t] is less than or equal to the previous output value y[t−1], then control passes to step 362, where the second intermediate value i2[t] is set equal to the sum s1[t]. In step 364, the filter calculates a product p1 that equals the product of the second intermediate value i2[t] and a predetermined decay rate of the filter, g1. The value for g1 may be, for example, between 0.9 and 0.999 with the higher value representing a slower decay rate of the filter.
In step 366, the filter calculates a second sum s2[t] that equals (i1[t]−p1). In step 368, the filter calculates the output value y[t] which is equal to s2[t]. As mentioned above, this output value y[t] can be used to determine if the operator is moving the steering mechanism relatively fast by comparing the value y[t] to a predetermined threshold.
Values from example filter calculations performed in accordance with
The sixth input value x[t]=3, see
Plots P1 and P2 in
The filter depicted in
a) the absolute value of the raw target steering angle is greater than the absolute value of the previous target steering angle corresponding to step 329 of
b) the absolute value of the raw target steering angle is equal to or less than the absolute value of the previous target steering angle and HndlSpdGTThrsh is FALSE, corresponding to step 328 of
Otherwise the intermediate value g(t) is equal to the previous target steering angle, corresponding to step 326 of
In reaching step 328 of
In step 384, the filter calculates a product p2[t] that equals the product of i3[t] and a predetermined decay rate of the filter, g2 (also referred to herein as “an adjustable multiplier coefficient”). The value for g2 may be, for example, between 0.9 and 0.999 with the higher value representing a slower decay rate of the filter. In step 384, the filter calculates the output h[t] which is equal to (g[t]−p2[t]) and this value h[t] is output in step 386. As mentioned above, this output value h[t] can be used as a current value for the target steering angle θT.
Values from example filter calculations performed in accordance with
Plots P3 and P4 in
As mentioned earlier, the steering application 206 and the traction application 208 operate in conjunction with one another to control a steered wheel angle and traction speed of the vehicle 10. The steering control input sensor 276 associated with a steering wheel or tiller knob can generate steering command signals 278 that vary according to an operator's manipulation of the apparatus. Each of these signals can then be converted to a digital value which can be scaled and adjusted to represent a value that has units appropriate for either a steered wheel angle (e.g., units of degrees) or an angular velocity of the steering motor (e.g., units of RPM). For instance, such a value can be referred to as a Wheel_Angle_Cmd and represents the operator's desired wheel position or steering motor angular velocity. One priority of a steering system comprising the steering control input sensor 276, the steering application 206, the SCM 272, the steering motor 274 and the steered wheel 20 is to position the steered wheel to the desired operator setting indicated by the Wheel_Angle_Cmd. Because the Wheel_Angle can be adjusted very quickly by the steering system, this rapid positional change may produce operator instability. Therefore, it is desirable that the steering application 206 produces control that will achieve the Wheel_Angle_Cmd as quickly as possible and without significant delay while also, in appropriate circumstances, reducing the traction speed so as to achieve a desired Wheel Angle-to-Traction Speed relationship (one example of which is depicted in
Even though the operator's input may result in a Wheel_Angle_Cmd indicating that the operator desires the steered wheel to have an angle x, the steering system can position the steered wheel per the operator command as quickly as possible without operator perceived delay, but in order to maintain operation within the defined Wheel Angle-to-Traction Speed relationship the steering application 206 of the VCM 200 may not immediately issue the new command x to the SCM 272 based on the traction wheel/motor speed feedback or Trx_Speed but rather apply a slight delay to the signal, x. For instance, while a vehicle is traveling relatively fast, there may be a reduced likelihood that a sharp steering change can produce operation within the defined Wheel Angle-to-Traction Speed relationship as compared to when the vehicle is traveling relatively slowly. Accordingly, a current measured value of the traction speed or Trx_Speed of the vehicle can be used to delay movement to commanded angle x so as to achieve operation within a desired Wheel Angle-to-Traction Speed relationship, such as shown in
Also, the Wheel_Angle_Target can be used by the traction application 208 to determine a maximum allowable traction speed at which the vehicle can be traveling at a wheel angle equal to the Wheel_Angle_Target so as to maintain a desired Wheel Angle-to-Traction Speed relationship, such as shown in
An example control algorithm, or process, for the steering application 206 of the VCM 200, is illustrated in
In
Referring to
The steering application 206 can also receive the measured steered wheel angle θ2 of the steered wheel 20 or the measured angular velocity ω2 of the steering motor 274, i.e., a measured Wheel_Angle, that has a value indicative of the present angle of the vehicle's steered wheel or angular velocity of the steering motor. In step 406, a determination is made as to whether the vehicle's current traction speed, Trx_Speed, is less than the first Trx_Speed Limit1. If it is not, then the traction speed of the vehicle is reduced by the traction application 208 while the steering application 206 adjusts the Wheel_Angle to equal the Wheel_Angle_Cmd with a slight delay based on the traction speed. As shown by block 410 of
According to an example algorithm depicted in
Referring back to
As is apparent from
As an example, upon receiving Wheel_Angle_Commands to cause the steered wheel angle to move quickly and continuously from +45 degrees to −46 degrees, the steering application 206 determines from step 410, 418 or 420 a corresponding initial raw target steering angle ϕT of the steered wheel for each command and inputs each value into step 306, which comprises steps 320-330. Presuming the absolute value of each initial raw target steering angle ϕT is less than or equal to an absolute value of a corresponding previous target steering angle θT for the Wheel_Angle_Commands of +44 degrees to −45 degrees and each output value y[t] generated in step 320 is greater than the predetermined threshold, the steering application 206 outputs from step 330 a target steering angle θT=+45 degrees for each Wheel_Angle_Command of +44 degrees to −45 degrees. Thus, even though the Wheel_Angle_Commands vary from +44 degrees to −45 degrees, by providing the previously-calculated, larger target steering angle θT value =+45 degrees to the traction application, the traction application will hold the traction speed limitation, i.e., the second Trx_Speed_Limit2, to the value realized at the +45 degree Wheel_Angle_Target until the absolute value of the raw target steering angle ϕT is greater than the absolute value of a corresponding previous target steering angle θT, or the wheel adjustment stops, or at least, the output value y[t] generated in step 320 drops below the predetermined threshold. The absolute value of the raw target steering angle ϕT will be greater than the absolute value of the previous target steering angle θT, which equals 45 degrees in this example, when the raw target steering angle ϕT=−46 degrees.
The Trx_Speed_Cmd reflects a vehicle speed that the operator desires to reach. In step 454, the traction application 208 may use the second Trx_Speed_Limit2 to reduce the Trx_Speed_Cmd in order to calculate an allowable Trx_Speed_Setting, ω4.
For example, a lookup table 520 constructed from a graph 524 in
When the Trx_Speed is equal to or greater than the first Trx_Speed_Limit1 in step 406 in
The traction setpoint may be a traction speed setpoint ω4 defined by the Trx_Speed_Setting ω4, or the traction setpoint may be a traction torque setpoint τ1 that can be calculated based on the Trx_Speed_Setting and a current Trx_Speed of the vehicle. As one example and as known to those skilled in the prior art, a proportional-integral-derivative (PID) controller can be used that receives, as an input, a difference value between the Trx_Speed_Setting and the Trx_Speed and calculates, as output, the torque setpoint τ1. Thus, in step 456, the traction application 208 calculates the traction setpoint τ1 which the TCM 258 will use to control operation of the traction motor 264. The traction setpoint τ1 is calculated so as to control the traction motor speed, e.g., to reduce the Trx_Speed of the vehicle when the Trx_Speed is equal to or greater than the first Trx_Speed_Limit1 in step 406 in
In step 472, the steering application also determines a value of the target steering angle θT. This angle can then be modified as described above under the prescribed conditions. Independent of the logical flow of the steering application, the traction application executes in order to determine a second, traction setpoint (i.e., τ1 or ω4). In particular, in step 474, the traction application receives the target steering angle θT (i.e., Wheel_Angle_Target) and traction speed command signals as input. In step 476, the traction application uses the Wheel_Angle_Target or target steering angle θT and the graph of
Thus, respective processors, or computing circuitry, of the VCM 200 and the TCM 258 communicate with one another to cooperatively calculate a current target angle value θT, a traction wheel speed limit (second Trx_Speed_Limit2), and a traction setpoint τ1 in order to control the traction motor 264 of the materials handling vehicle 10 using the traction setpoint τ1.
The logical flow of the flowchart of
Additionally, the flowcharts of
The flowchart of
The flowchart of
While particular embodiments of the present invention have been illustrated and described, it would be obvious to those skilled in the art that various other changes and modifications can be made without departing from the spirit and scope of the invention. It is therefore intended to cover in the appended claims all such changes and modifications that are within the scope of this invention.
This application is related to and claims the benefit of provisional patent application entitled “TRACTION SPEED RECOVERY BASED ON STEER WHEEL DYNAMIC,” Application Ser. No. 62/445,889, filed Jan. 13, 2017, the disclosure of which is incorporated by reference herein in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
4595433 | Ford et al. | Jun 1986 | A |
4942529 | Avitan et al. | Jul 1990 | A |
5258914 | Schmitt | Nov 1993 | A |
5850616 | Matsuno | Dec 1998 | A |
6799652 | Nissen et al. | Oct 2004 | B2 |
6807471 | Fujimori | Oct 2004 | B2 |
6971470 | McGoldrick | Dec 2005 | B2 |
7017689 | Gilliland et al. | Mar 2006 | B2 |
7023174 | Fromme et al. | Apr 2006 | B2 |
7025157 | Lindsay et al. | Apr 2006 | B2 |
7165643 | Bozem et al. | Jan 2007 | B2 |
7278509 | Schröder et al. | Oct 2007 | B2 |
7568547 | Yamada et al. | Aug 2009 | B2 |
7599776 | Sonderegger et al. | Oct 2009 | B2 |
7661493 | Rose | Feb 2010 | B2 |
7665555 | Rose et al. | Feb 2010 | B2 |
7706947 | Bozem et al. | Apr 2010 | B2 |
7784880 | Glaeske et al. | Aug 2010 | B2 |
7849955 | Grabill | Dec 2010 | B2 |
7979189 | Nihei | Jul 2011 | B2 |
7980352 | Wetterer et al. | Jul 2011 | B2 |
8140228 | McCabe et al. | Mar 2012 | B2 |
8172033 | Corbett et al. | May 2012 | B2 |
8230976 | Baldini | Jul 2012 | B2 |
8235161 | Passeri et al. | Aug 2012 | B2 |
8395491 | Kümmel et al. | Mar 2013 | B2 |
8412431 | Wetterer et al. | Apr 2013 | B2 |
8463511 | Uematsu et al. | Jun 2013 | B2 |
8521384 | O'Connor | Aug 2013 | B2 |
8649953 | Sherman | Feb 2014 | B2 |
8694194 | Waltz et al. | Apr 2014 | B2 |
8718890 | Wetterer et al. | May 2014 | B2 |
8731785 | McCabe et al. | May 2014 | B2 |
8788156 | Nishimura | Jul 2014 | B2 |
8886378 | Hammer et al. | Nov 2014 | B2 |
8892294 | Waltz et al. | Nov 2014 | B2 |
8918263 | Zent et al. | Dec 2014 | B2 |
9082293 | Wellman et al. | Jul 2015 | B2 |
9421963 | Wetterer et al. | Aug 2016 | B2 |
9868445 | Mangette et al. | Jan 2018 | B2 |
20030079932 | Ono | May 2003 | A1 |
20030114970 | Hara | Jun 2003 | A1 |
20050027427 | Nagaya et al. | Feb 2005 | A1 |
20050072621 | Hara et al. | Apr 2005 | A1 |
20050162114 | Makaran | Jul 2005 | A1 |
20060052927 | Watanabe et al. | Mar 2006 | A1 |
20060065470 | Manken et al. | Mar 2006 | A1 |
20060102397 | Buck et al. | May 2006 | A1 |
20060211535 | Casey | Sep 2006 | A1 |
20070007080 | Manthey et al. | Jan 2007 | A1 |
20070175693 | Krimbacher | Aug 2007 | A1 |
20070212680 | Friedrichs et al. | Sep 2007 | A1 |
20070225885 | Hara et al. | Sep 2007 | A1 |
20090194358 | Corbett et al. | Aug 2009 | A1 |
20090222156 | Krueger | Sep 2009 | A1 |
20100025144 | Huang et al. | Feb 2010 | A1 |
20120123614 | Laws et al. | May 2012 | A1 |
20120136539 | Bryant | May 2012 | A1 |
20130138290 | Falkenstein | May 2013 | A1 |
20130338886 | Callea et al. | Dec 2013 | A1 |
20140143607 | Vogt et al. | May 2014 | A1 |
20140163804 | Kaneko et al. | Jun 2014 | A1 |
20140188324 | Waltz et al. | Jul 2014 | A1 |
20140195127 | Hoffman | Jul 2014 | A1 |
20140209406 | Wetterer et al. | Jul 2014 | A1 |
20140277871 | Goncalves et al. | Sep 2014 | A1 |
20140278021 | Fackler et al. | Sep 2014 | A1 |
20150032423 | Tang | Jan 2015 | A1 |
20150090507 | Okada et al. | Apr 2015 | A1 |
20150096826 | Eden et al. | Apr 2015 | A1 |
20150158522 | Thayer | Jun 2015 | A1 |
20150274196 | Park et al. | Oct 2015 | A1 |
20150291155 | Jonsson et al. | Oct 2015 | A1 |
20150331061 | Hirschbold et al. | Nov 2015 | A1 |
20160016482 | Lee | Jan 2016 | A1 |
20160129803 | Grewal et al. | May 2016 | A1 |
20160160470 | Kishimoto et al. | Jun 2016 | A1 |
20160264387 | Yoon et al. | Sep 2016 | A1 |
20160272081 | Lee | Sep 2016 | A1 |
20160289056 | Castaneda et al. | Oct 2016 | A1 |
20170001663 | Moberg | Jan 2017 | A1 |
20170015330 | Armbruster et al. | Jan 2017 | A1 |
20170028993 | Addison et al. | Feb 2017 | A1 |
20170028994 | Addison et al. | Feb 2017 | A1 |
20170029023 | Otterbein | Feb 2017 | A1 |
20170043765 | Mangette et al. | Feb 2017 | A1 |
20170043786 | Mangette et al. | Feb 2017 | A1 |
20170043787 | Mangette et al. | Feb 2017 | A1 |
20170043804 | Mangette et al. | Feb 2017 | A1 |
20180134310 | Benak et al. | May 2018 | A1 |
Number | Date | Country |
---|---|---|
1695974 | Nov 2005 | CN |
4311485 | Oct 1994 | DE |
19702313 | Apr 1998 | DE |
10114600 | Jan 2002 | DE |
10204955 | Aug 2002 | DE |
10205632 | Oct 2002 | DE |
10204742 | Jul 2003 | DE |
10301435 | Dec 2003 | DE |
10358907 | Jul 2004 | DE |
102004001318 | Aug 2004 | DE |
10354663 | Jun 2005 | DE |
102004028828 | Jan 2006 | DE |
102005022089 | Nov 2006 | DE |
102006035863 | Feb 2008 | DE |
102006041254 | Mar 2008 | DE |
102006050506 | Apr 2008 | DE |
102008012007 | Sep 2009 | DE |
102010007615 | Sep 2010 | DE |
102009020157 | Nov 2010 | DE |
112009004544 | Aug 2012 | DE |
102011013248 | Sep 2012 | DE |
102012209788 | Dec 2013 | DE |
102013011883 | Jan 2015 | DE |
10355933 | Apr 2015 | DE |
0436567 | Oct 1992 | EP |
1089901 | Jan 2002 | EP |
1186459 | Mar 2002 | EP |
1281600 | Feb 2003 | EP |
1183579 | Oct 2004 | EP |
1607309 | Dec 2005 | EP |
1301387 | Mar 2006 | EP |
0930216 | Jul 2006 | EP |
1268257 | Jul 2006 | EP |
1360103 | Aug 2006 | EP |
1741615 | Jan 2007 | EP |
1325857 | May 2007 | EP |
1527980 | Dec 2009 | EP |
2218627 | Aug 2010 | EP |
1880919 | May 2011 | EP |
1594026 | Jul 2011 | EP |
2145812 | Nov 2011 | EP |
1399344 | Aug 2012 | EP |
2164746 | Aug 2012 | EP |
2508403 | Oct 2012 | EP |
2404803 | Nov 2012 | EP |
2172359 | Dec 2012 | EP |
2551161 | Jan 2013 | EP |
2368785 | Sep 2013 | EP |
2483130 | Nov 2013 | EP |
2664515 | Nov 2013 | EP |
2582564 | Feb 2014 | EP |
2374692 | Mar 2014 | EP |
2630023 | May 2014 | EP |
2674387 | May 2015 | EP |
2613986 | Aug 2016 | EP |
3078574 | Oct 2016 | EP |
2862594 | May 2005 | FR |
2042217 | Sep 1980 | GB |
2125577 | Mar 1984 | GB |
2370819 | Dec 2001 | GB |
2391848 | Feb 2004 | GB |
2413547 | Jun 2007 | GB |
2425996 | Jan 2009 | GB |
2523462 | Aug 2015 | GB |
11310399 | Nov 1999 | JP |
2000142065 | May 2000 | JP |
2003306160 | Oct 2003 | JP |
2005253143 | Sep 2005 | JP |
2010095354 | Apr 2010 | JP |
2010195118 | Sep 2010 | JP |
2012254705 | Dec 2012 | JP |
2013126868 | Jun 2013 | JP |
5418705 | Feb 2014 | JP |
100225961 | Oct 1999 | KR |
2015004511 | Jan 2015 | KR |
200202389 | Jan 2002 | WO |
2004098941 | Nov 2004 | WO |
2011027758 | Mar 2011 | WO |
2012032133 | Mar 2012 | WO |
2013006742 | Jan 2013 | WO |
2013033179 | Mar 2013 | WO |
2014189877 | Nov 2014 | WO |
2015152276 | Oct 2015 | WO |
2015178843 | Nov 2015 | WO |
2015178845 | Nov 2015 | WO |
2017030774 | Feb 2017 | WO |
2017030879 | Feb 2017 | WO |
Entry |
---|
Ryan J. Rink; Final Office Action; U.S. Appl. No. 15/234,120; dated Mar. 28, 2018; United States Patent and Trademark Office; Alexandria, Virginia. |
Ryan J. Rink; Notice of Allowance and Fees Due; U.S. Appl. No. 15/234,168; dated Mar. 29, 2018; United States Patent and Trademark Office; Alexandria, Virginia. |
Paul Pemberton; International Search Report and Written Opinion; International application No. PCT/US2017/060990; dated Mar. 29, 2018; European Patent Office; Rijswijk, Netherlands. |
Ryan J. Rink; Corrected Notice of Allowability; U.S. Appl. No. 15/234,168; dated Apr. 19, 2018; United States Patent and Trademark Office; Alexandria, Virginia. |
Janusch, Stefan; International Search Report and Written Opinion; International Application No. PCT/US2016/044981; dated Nov. 9, 2016; European Patent Office; Rijswijk, Netherlands. |
Plenk, Rupert; International Search Report and Written Opinion; International Application No. PCT/US2016/046456; dated Nov. 25, 2016; European Patent Office; Rijswijk, Netherlands. |
Plenk, Rupert; International Search Report and Written Opinion; International Application No. PCT/US2016/046460; dated Nov. 25, 2016; European Patent Office; Rijswijk, Netherlands. |
Plenk, Rupert; International Search Report and Written Opinion; International Application No. PCT/US2016/046466; dated Nov. 25, 2016; European Patent Office; Rijswijk, Netherlands. |
Bendidi, Rachid; Notice of Allowance; U.S. Appl. No. 15/234,152; dated Aug. 31, 2017; United States Patent and Trademark Office; Alexandria, Virginia. |
Rink, Ryan J.; Office Action; U.S. Appl. No. 15/234,120; dated Nov. 1, 2017; United States Patent and Trademark Office; Alexandria, Virginia. |
Luzcando, Gissele; EIC 3600 Search Report; U.S. Appl. No. 15/234,152; dated Aug. 8, 2017; STIC Scientific & Technical Information Center; United States Patent and Trademark Office, Alexandria, Virginia. |
Song, Dafeng et al.; “Software-in-the-loop simulation of traction control system”; Nongye Jixie Xuebao (Transactions of the Chinese Society of Agricultural Machinery) 36.8; Aug. 2005; pp. 27-29—Reference is from EIC 3600 Search Report. |
Matveev, Alexey S.; “Nonlinear sliding mode control of an unmanned agricultural tractor in the presence of sliding and control saturation”; Robotics and Autonomous Systems; Sep. 2013; pp. 973-987—Reference is from EIC 3600 Search Report. |
Keen, Alex et al.; “Improvements to the tractive efficiency of agricultural tractors carrying out cultivations”; American Society of Agricultural and Biological Engineers Annual International Meeting 2009; 7; pp. 4669-4682—Reference is from EIC 3600 Search Report. |
Rink, Ryan J.; Office Action; U.S. Appl. No. 15/234,168; dated Nov. 22, 2017; united States Patent and Trademark Office; Alexandria, VA. |
U.S. Appl. No. 15/808,962; entitled “High Speed Straight Ahead Tiller Desensitization;” filed Nov. 10, 2017 by Stephen Mangette. |
Rink, Ryan J.; Office Action; U.S. Appl. No. 15/224,945; dated Jul. 12, 2018; United States Patent and Trademark Office, Alexandria, VA. |
Rink, Ryan J.; Office Action; U.S. Appl. No. 15/234,120; dated Jul. 20, 2018; United States Patent and Trademark Office, Alexandria, VA. |
Bruce Sheppard; International Search Report and Written Opinion; International Application No. PCT/US2017/060988; dated Feb. 26, 2018; European Patent Office; Rijswijk, Netherlands. |
Athina Nickitas-Etienne; International Preliminary Report on Patentability; International Application No. PCT/US2016/04498; dated Feb. 20, 2018; International Bureau of WIPO; Geneva, Switzerland. |
Mineko Mohri; International Preliminary Report on Patentability; International Application No. PCT/US2016/046456; dated Feb. 20, 2018; International Bureau of WIPO; Geneva, Switzerland. |
Mineko Mohri; International Preliminary Report on Patentability; International Application No. PCT/US2016/046460; dated Feb. 20, 2018; International Bureau of WIPO; Geneva, Switzerland. |
Simin Baharlou; International Preliminary Report on Patentability; International Application No. PCT/US2016/046466; dated Feb. 20, 2018; International Bureau of WIPO; Geneva, Switzerland. |
Rink, Ryan J.; Final Office Action; U.S. Appl. No. 15/234,120; dated Dec. 28, 2018; United States Patent and Trademark Office, Alexandria, VA. |
Whalen, Michael F.; Final Office Action; U.S. Appl. No. 15/224,945; dated Feb. 7, 2019; United States Patent and Trademark Office, Alexandria, VA. |
Number | Date | Country | |
---|---|---|---|
20180201156 A1 | Jul 2018 | US |
Number | Date | Country | |
---|---|---|---|
62445889 | Jan 2017 | US |