The present disclosure relates to the field of powered vehicles configured to transport goods and materials.
Powered vehicles configured to transport goods and materials, such as forklift trucks, end-riders, center-riders, pallet trucks, walkies, and the like, may have a plurality of forces acting upon the vehicle during operation. These forces may dynamically change during operation as conditions of the vehicle change. For example, adjustments in the position of the goods and materials being transported, adjustments in the travel speed of the vehicle, and adjustments in a turn radius of the vehicle may cause changes in the forces acting upon the vehicle. Compensating for these changes in forces can help prevent the vehicle or load from becoming unstable during handling, which otherwise may cause the vehicle to tip over or lift a wheel and/or the load to come unsecured or topple. Toppling could result in injury to the operator of the vehicle, damage to the vehicle, damage to the load, and/or damage to the environment. Accordingly, operators of the vehicles are trained to avoid instability of the vehicle and load; however, human error may still result in instability of the vehicle or load.
Some legacy approaches to address instability of vehicles relied on compensating for the forces only when the vehicle is in a static, non-moving condition and/or only responding to the instability condition of the vehicle in a reactive fashion, viz. once the vehicle had entered the instability condition. Relying on compensating for the forces only when the vehicle is in the static, non-moving condition fails to take into consideration changes in the forces that may occur during operation of the vehicle. While responding to the instability condition in a reactive fashion improves upon the static, non-moving condition compensation, the approach provides only a limited ability for attempting to correct the instability condition.
Examples will be readily understood by the following detailed description in conjunction with the accompanying drawings. To facilitate this description, like reference numerals designate like structural elements. Examples are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings.
In the following detailed description, reference is made to the accompanying drawings which form a part hereof wherein like numerals designate like parts throughout, and in which is shown by way of illustration examples that may be practiced. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. Therefore, the following detailed description is not to be taken in a limiting sense, and the scope of examples is defined by the appended claims and their equivalents.
Aspects of the disclosure are disclosed in the accompanying description. Alternate examples of the present disclosure and their equivalents may be devised without parting from the spirit or scope of the present disclosure. It should be noted that like elements disclosed below are indicated by like reference numbers in the drawings.
Various operations may be described as multiple discrete actions or operations in turn, in a manner that is most helpful in understanding the claimed subject matter. However, the order of description should not be construed as to imply that these operations are necessarily order dependent. In particular, these operations may not be performed in the order of presentation. Operations described may be performed in a different order than the described example. Various additional operations may be performed and/or described operations may be omitted in additional examples.
For the purposes of the present disclosure, the phrase “A and/or B” means (A), (B), or (A and B). For the purposes of the present disclosure, the phrase “A, B, and/or C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B and C).
The description may use the phrases “in an example,” or “in examples,” which may each refer to one or more of the same or different examples. Furthermore, the terms “comprising,” “including,” “having,” and the like, as used with respect to examples of the present disclosure, are synonymous.
As used herein, the term “circuitry” may refer to, be part of, or include an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and/or memory (shared, dedicated, or group) that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality.
As used in reference to the operation systems herein, the term “operation” may refer to a single procedure (such as adjusting a travel speed of a vehicle) that may be performed by the operation systems. As used in reference to the operator input device herein, the term “action” may refer to a procedure to be performed by the vehicle that may be made up of one or more operations to be performed by the operation systems.
The control system 100 may include a processor 102. The processor 102 may be included in a controller 110 of the control system 100 in some examples. In other examples, the processor 102 may be located separate from the controller 110. The circuitry of the controller 110 may include one or more processors (including the processor 102), one or more memory devices 103, one or more other electronic components, or some combination thereof. In particular, the controller 110 may include one or more memory devices 103 with instructions stored thereon, wherein the instructions, when executed by the processor 102, may cause the processor 102 to perform one or more of the operations described throughout this disclosure. In other examples, the one or more memory devices 103 with the instructions may be located separate from the controller 110.
The control system 100 may further include an operator input device 104, which may be a single device or a collection of devices. For example, the operator input device 104 may include, e.g., a steering wheel, a joystick, a control handle, a throttle input, one or more buttons, one or more levers, a touch screen display, a forward/reverse/neutral selector or other suitable input device, singularly or in any combination thereof. The operator input device 104 may detect inputs from an operator and may provide signals to the processor 102 that indicate the input received from the operator. In some examples, the operator input device 104 may further include an operator skill level input that allows the operator to indicate his or her skill level and/or certification level (collectively referred to as “operator skill level”).
The control system 100 may further include one or more sensors 106. The sensors 106 may sense and/or measure one or more conditions of the vehicle and provide signals to the processor 102 that indicate values of the conditions of the vehicle. In other examples, the sensors 106 may sense and/or measure one or more environmental conditions around the vehicle and provide signals to the processor 102 that indicate values for items in the surrounding environment. In other examples, sensors 106 may sense and/or measure one or more conditions of the vehicle and provide signals to the processor 102 that indicate values of the conditions of the vehicle and may sense and/or measure one or more environmental conditions around the vehicle and provide signals to the processor 102 that indicate values for items in the surrounding environment. The sensors 106 may include a speed sensor 106a, an angle sensor 106b, a load weight sensor 106c, a load moment of inertia sensor, a mast tilt sensor 106d, a carriage height sensor 106e, and other suitable sensors for sensing and/or measuring vehicle conditions, a distance sensor 106, a proximity sensor, a geo-fence sensor, a driving surface condition sensor, or other suitable sensors for sensing and/or measuring environmental conditions.
The speed sensor 106a may measure a travel speed and/or an acceleration/deceleration of the vehicle. In particular, the speed sensor 106a may measure a rotational speed of one or more wheels of the vehicle and indicate the rotational speed of the wheels to the processor 102. In some examples, the speed sensor 106a may be coupled to a drive wheel of the vehicle and may indicate the rotational speed of the drive wheel. In other examples, the speed sensor 106a may be coupled to two or more of the drive wheels of the vehicle and may indicate the rotational speeds of each of the drive wheels, which may allow for determination of differences in rotational speeds between each of the drive wheels. In some examples, the speed sensor 106a may be coupled to a motor of the vehicle rather than the drive wheels and may indicate a speed of the motor. The travel speed, acceleration, and/or deceleration of the vehicle may be determined based on the rotational speeds of the drive wheels or the speed of the motor. In implementations where the motor transmits power to the drive wheels via a gear box or transmission, the ratio of the motor rotation compared to the wheel rotation may be factored into computation of the vehicle travel speed, acceleration, and/or deceleration. Where output is through a transmission capable of multiple ratios (also called “gears”), the selected transmission ratio or gear may further be used in computations to determine an accurate measurement of wheel rotation.
The angle sensor 106b may measure an angle of one or more of the wheels of the vehicle. In particular, the angle sensor 106b may measure an angle of one or more of the wheels relative to a base angle (which is often an angle of the wheels at which the vehicle would travel in a straight line) and may indicate the angle to the processor 102. The angle sensor 106b may be coupled to a steer wheel of the vehicle and may indicate the angle of the steer wheel relative to the base angle. In other implementations where steering is effected with different angular geometry or mechanisms, the angle sensor 106b may be configured to measure wheel angle (or steering mechanism angle) as appropriate so that processor 102 has an accurate measurement of steeling or vehicle directional control.
The load weight sensor 106c may measure a weight of a load supported by a carriage of the vehicle. In particular, the load weight sensor 106c may measure a weight of a load supported by a support element (such as forks) and may indicate the weight to the processor 102. The load weight sensor 106c may be coupled to the support element and/or an actuation element (such as a hydraulic cylinder, an electric cylinder, a linear actuator, a screw jack, a chain) that translates a position of the lift element and may indicate the weight of the load experienced by the support element and/or the actuation element.
The load moment of inertia sensor may measure, calculate, or estimate the center of gravity of a load supported by a carriage of the vehicle. In some implementations, the load moment of inertia can be calculated based on measurements from the load weight sensor 106c in combination with other sensors, e.g. mast tilt sensor 106d, carriage height sensor 106e, etc.
The mast tilt sensor 106d may measure a tilt of a mast of the vehicle. In particular, the mast tilt sensor 106d may measure an angle of the mast relative to a base angle (which is often an angle at which the mast is perpendicular to a surface on which the vehicle is located) and may indicate the angle to the processor 102. The mast tilt sensor 106d may be coupled to the mast and may indicate the angle of the mast relative to the base angle.
The carriage height sensor 106e may measure a height of a carriage of the vehicle. In particular, the carriage height sensor 106e may measure a height at which the carriage is located relative to a base height (which is often at a bottom of a stroke of the actuation element of the vehicle) and may indicate the height to the processor 102. The carriage height sensor 106e may be coupled to the carriage and/or the mast and may indicate the height of the carriage relative to the base height. In other implementations, the carriage height may be measured indirectly. For example, one or more sensors may be affixed to a carriage lift mechanism, and measure some aspect of the lift mechanism, e.g. extension of some lift mechanism component, volume of fluid flow, number of rotations of a lift motor or jack screw, or another suitable moving structure. From this measurement and with knowledge of the carriage and lift mechanism geometry, the carriage height may be computed.
Other suitable vehicle condition sensors 106 may include one or more wheel force sensors, a vehicle level sensor, a carriage level sensor, one or more support element force differential sensors, a mast tilt force sensor, a vehicle direction sensor, or some combination thereof. The wheel force sensors may measure the force experienced by one or more of the wheels affected by the body of the vehicle and/or the load. The vehicle level sensor may measure an orientation of the body of the vehicle relative to the level position of the body. The carriage level sensor may measure an orientation of the carriage relative to a level position of the carriage. The support element weight force sensors may measure forces experienced by different portions (such as different forks) of the support element and/or differentials between the forces experienced by different portions of the support element, or steer axle strain. The mast tilt force sensor may measure an amount of force to maintain the mast at the current tilt angle and/or the amount of force to cause the mast to transition to a different tilt angle. The vehicle direction sensor may determine a forward or reverse travel direction of the vehicle. The sensors 106 may indicate the values of the measurements to the processor 102.
The distance sensor 106 may measure a distance between the vehicle and one or more objects. Example distance sensors include, e.g., ultrasonic sensors, radiation emitting and receiving sensors, machine vision systems, or other suitable system.
The proximity sensor may detect when a vehicle is within one or more predetermined distances of a predetermined object. For example, a radio frequency identification (RFID) reader may communicate with the processor 102 and a RFID badge may be worn by a pedestrian. Another RFID badge may be included on another vehicle. When the pedestrian RFID badge is within one of the predetermined distances of the vehicle the RFID proximity sensor may send a signal to the processor 102 indicating which predetermined object is within which predetermined distance of the vehicle. Other types of sensors may be employed. For another example, a distance sensor 106, depending upon how it detects distances (e.g. using millimeter wave or another type of emission that be capable of imaging through intervening objects), may be able to detect and ascertain proximity to objects that are not otherwise within visible line of sight.
The geo-fence sensor may detect when a vehicle is within one or more predetermined areas. For example, a video camera may communicate with image analyzing software and may send a signal to the processor 102 indicating that the vehicle is in a predetermined area when the vehicle enters a predetermined area. Alternatively, the functionality of a geo-fence area may be emulated through the use of high-precision location services, e.g, radio beacons placed around a particular area of vehicle operation intended to be fenced, augmented GPS services such as D-GPS that may provide accuracy to within a few centimeters, ultra-wideband beacons that offer precise ranging from known landmarks, or a combination of any of the foregoing, for a few examples.
The driving surface condition sensor may detect a condition of a driving surface, such as comprising a low coefficient material such as ice or comprising a height differential such as an edge of a dock or stairwell, and may send a signal to the processor 102 indicating the driving surface condition.
Other suitable environmental sensors may include sensors adapted to determine vehicle location (in addition or alternatively to the aforementioned geo-fence sensors). For example, a camera or range finder may be oriented to look up, away from the surface upon which a vehicle may be traveling. Where a location for vehicle operation includes both inside and outside locations, defined as the presence or absence of a roof or other covering, a camera or range finder may be able to immediately sense the presence of an overhead structure, and so provide an indication to processor 102 about whether the vehicle is located inside or outside. For another example, a temperature sensor may detect the ambient temperature around a vehicle. The ambient temperature may affect various operational characteristics, such as braking power, engine power, the possible presence of ice or snow (especially in conjunction with a sensor to determine positioning outside), and/or other parameters. A wind speed sensor, potentially useful in exposed exterior areas where a vehicle may not be sheltered from prevailing winds, may be useful to determine whether wind loads on a load being manipulated by a vehicle may need to be considered in setting operational limitations.
The control system 100 may further include one or more operation systems 108. The operation systems 108 may include systems that control one or more operations of the vehicle. The operation systems 108 may include a drive system 108a, a carriage height system 108b, a mast tilt system 108c, a suspension system 108d, an operator display system 108e, and/or one or more other systems 108f.
The drive system 108a may control the operation of the drive wheels and the steer wheels of the vehicle. For example, the drive system 108a may control the rotational speed, direction, acceleration, and deceleration of the drive wheels of the vehicle. Further, the drive system 108a may control angles of the steer wheels of the vehicle. The drive system 108a may include one or more of an engine, a motor, a transmission, a drive axle, steer wheel rotation actuators, or some combination thereof.
The carriage height system 108b may control the operation of the carriage height. For example, the carriage height system 108b may control a height of the carriage and changes in a height of the carriage. The carriage height system 108b may include one or more of a hydraulic cylinder, an electric cylinder, a linear actuator, a screw jack, a chain, or some combination thereof, that is coupled to the carriage and controls the height of the carriage.
The mast tilt system 108c may control the operation of the mast tilt. For example, the mast tilt system 108c may control a tilt of the mast and changes in tilt of the mast. The mast tilt system 108c may include one or more of a hydraulic cylinder, an electric cylinder, a linear actuator, a screw jack, or some combination thereof, that is coupled to the mast and controls the tilt of the mast.
The suspension system 108d may control the operation of suspension of the vehicle. For example, the suspension system 108d may control an amount of force, an amount of resistance, an amount of extension of the suspension of the vehicle, or some combination thereof. The suspension system 108d may include one or more of springs, shock absorbers, linkages, or some combination thereof, that support a body of the vehicle on the wheels of the vehicle or that support a portion of the body of the vehicle on another portion of the body of the vehicle.
The operator display system 108e may control one or more indications provided to an operator. For example, the operator display system 108e may control operator displays (such as lights and/or screen displays), sound emitting elements, haptic systems, or some combination thereof. The operator display system 108e may include one or more lights, screen displays (such as the touch screen display), speakers, actuators that may apply force, or some combination thereof, that can provide indications to the operator.
The other systems 108f may include, singularly or in any combination, energy source systems, operator comfort systems, or other suitable systems. The energy source systems may include one or more systems controlling access or use of an energy source (such as a battery and/or fuel tank of the vehicle) of the vehicle, such as energy source cutoff actuators and/or energy source regulators. The operator comfort systems may include one or more systems that control comfort features of the vehicle, such as operator seat cushioning elements, operator seat support suspension elements, and/or operator seat support actuators.
In some examples, the processor 102 receives signals from the operator input 104 and the sensors 106. Based on the signals from the sensors 106, the processor 102 sets limits for one or more of top speed, range of motion, and rate of change, as appropriate, for one or more of the operation systems 108. Therefore, as vehicle conditions and environmental conditions change, one or more of the limits for top speed, range of motion, and rate of change, as appropriate, may be changed for one or more of the operation systems 108. In response to receiving signals from the operator input 104, the processor 102 may provide signals to one or more of the operation systems 108 that cause the operation systems to implement operations to produce the actions desired by the operator. Depending on the vehicle and/or environmental conditions, requested actions may occur at a reduced top speed, range of motion, or rate of change compared to the vehicle's maximum capacity for each operation systems' 108 top speed, range of motion, and rate of change, or such desired actions may not occur.
The vehicle 200 may include a body 202 supported on a surface by one or more wheels 204. The body 202 may include an operator compartment 206 with a seat 208 in which an operator of the vehicle 200 may sit. The vehicle 200 may include one or more operator input devices 104 (
The wheels 204 may include one or more drive wheels 204a and one or more steer wheels 204b. The drive wheels 204a may be fixed in a single direction and rotational force may be applied to the drive wheels 204a by the drive system 108a (
The vehicle 200 may further include front end equipment 214. The front end equipment 214 may be coupled to a side of the body 202. In the illustrated examples, the front end equipment 214 is coupled to the side of the body 202 at which the drive wheels 204a are located. In other examples, the front end equipment 214 may be located to the side of the body 202 where the steer wheels 204b are located. The body 202 of the vehicle 200 may counterbalance the front end equipment 214 and/or any carried or secured load about the drive wheels 204a.
The front end equipment 214 may include a mast 216. The mast 216 may be rotationally coupled to the side of the body 202. For example, the mast 216 may have a rotation point located toward a bottom end 218 of the mast 216, where the mast 216 may rotate about the rotation point causing a top end 220 of the mast to move toward or further away from the body 202 as the mast 216 is rotated.
The front end equipment 214 may further include a carriage 222. The carriage 222 may include a support element 224 and a backstop 226. In the illustrated example, the support element 224 includes two forks that are to engage with a load and lift the load. For example, the forks may engage with a pallet, where the pallet may have one or more items stacked upon the pallet. In other examples, the support element 224 may include other means to engage with and lift a load, e.g. roll clamp, carton clamp, etc. The support element 224 may be coupled to the backstop 226 and the backstop 226 may prevent or reduce the chance of the load from interfering with the mast 216 or contacting the user. The carriage 222 may be movably coupled to the mast 216 and may be translated vertically along the mast 216 to raise and lower the carriage 222. For example, the carriage 222 may be coupled to the mast 216 via a hydraulic cylinder, an electric cylinder, a linear actuator, a screw jack, a chain, or some combination thereof, which may allow the carriage to be vertically translated in relation to the mast 216. In some embodiments, carriage 222 may additionally or alternatively be configured to translate in a horizontal position, such as parallel to the surface upon which vehicle 200 may rest, to facilitate load positioning and placement where maneuvering space may otherwise be limited.
The vehicle 200 may include the speed sensor 106a. The speed sensor 106a may include or be implemented using one or more of, e.g., a rotary sensor, an optical sensor, a magnetic sensor, a hall-effect sensor, or some combination thereof. The speed sensor 106a may be coupled to one or more of the drive wheels 204a. The speed sensor 106a may measure the rotational speed of the drive wheels 204a and may provide a signal to the processor 102 that indicates the rotational speed of the drive wheels 204a. The processor 102 may determine a travel of the vehicle 200 based on the indication of the rotational speed of the drive wheels 204a.
In other examples, the speed sensor 106a may he coupled to an engine or motor of the vehicle 200 and may measure the rotational speed of the engine. The speed sensor 106a may provide a signal to the processor 102 that indicates the rotational speed of the engine. The processor 102 may determine a travel speed of the vehicle 200 based on the indication of the rotational speed of the engine.
The vehicle 200 may further include the angle sensor 106b. The angle sensor 106b may include one or more of, e.g., a rotary sensor, an optical sensor, a magnetic sensor, a hall-effect sensor, a rotary potentiometer, a linear potentiometer, or some combination thereof. The angle sensor 106b may be coupled to one or more of the steer wheels 204b. The angle sensor 106b may measure the angle of the steer wheels 204b and may provide a signal to the processor 102 that indicates the angle of the steer wheels 204b. The processor 102 may determine a direction of travel of the vehicle 200 based on the indication of the angle of the steer wheels 204b.
The vehicle 200 may further include the load weight sensor 106c. The load weight sensor 106c may include one or more of, e.g., a pressure transducer, a hydraulic pressure transducer, a tension measurement device, a strain measurement device, one or more tilt cylinder pins, or some combination thereof. The load weight sensor 106c may be coupled to the carriage 222, the support element 224, a hydraulic cylinder, an electric cylinder, a linear actuator, a screw jack, a chain, or some combination thereof. The load weight sensor 106c may measure the weight of a load supported by the support element 224 and may provide a signal to the processor 102 that indicates the weight of a load. The processor 102 may determine the weight and/or the mass of the load based on the indication of the weight of the load.
The vehicle 200 may further include a mast tilt sensor 106d. The mast tilt sensor 106d may include one or more of, e.g., a rotary sensor, an optical sensor, a magnetic sensor, a hall-effect sensor, a rotary potentiometer, a linear potentiometer, or some combination thereof. The mast tilt sensor 106d may be coupled to the front end equipment 214, or some portion thereof. The mast tilt sensor 106d may measure the tilt of the mast 216 and may provide a signal to the processor 102 that indicates the tilt of the mast 216. The processor 102 may determine the tilt of the mast 216 based on the indication of the tilt.
The vehicle 200 may further include a carriage height sensor 106e. The carriage height sensor 106e may include one or more of, e.g., an optical sensor, a magnetic sensor, a hall-effect sensor, a displacement sensor, a string potentiometer, a laser or similar range finder, or some combination thereof or another suitable mechanism to detect distance. The carriage height sensor 106e may be coupled to the carriage 222, the electric cylinder, the linear actuator, the screw jack, the chain, or some combination thereof The carriage height sensor 106e may measure the height of the carriage 222 and may provide a signal to the processor 102 that indicates the height of the carriage 222. The processor 102 may determine the height of the carriage 222 based on the indication of the height.
The vehicle 200 may further include one or more of the other sensors 106. The other sensors 106 may measure forces applied to the wheels 204 by the body 202, tilt of the body 202, tilt of the carriage 222, the differential of forces experienced between portions (such as the different forks) of the support element 224, the amount of force to maintain or change the tilt of the mast 216, or other suitable vehicle condition, or some combination thereof. The other sensors 106 may provide one or more signals to the processor 102 that indicate the values of the measurements, where the processor 102 may determine one or more conditions of the vehicle 200 based on the indicated values.
The vehicle 200 may further include one or more environmental sensors 106. For example, a distance sensor 106 that may measure a distance between the vehicle and one or more objects, a proximity sensor that may detect when a vehicle is within one or more predetermined distances of a predetermined object, a geo-fence sensor that may detect when a vehicle is within one or more predetermined areas, a driving surface condition sensor that may detect a condition of a driving surface, or other suitable environmental sensor.
The vehicle 200 may further include the drive system 108a. The drive system 108a may control a rotational speed of the drive wheels 204a, a rotational acceleration and deceleration of the drive wheels 204a, an angle of the steer wheels 204b, or some combination thereof. In particular, the drive system 108a may receive one or more signals from the processor 102 and maintain or adjust a rotational speed of the drive wheels 204a and/or an angle or rate of angle change of the steer wheels 204b based on the signals.
The vehicle 200 may further include the carriage height system 108b. The carriage height system 108b may control a height of the carriage 222. In particular, the carriage height system 108b may receive one or more signals from the processor 102 and maintain or adjust a height, or a rate of height change, of the carriage 222 based on the signals.
The vehicle 200 may further include the mast tilt system 108c. The mast tilt system 108c may control a tilt of the mast 216. In particular, the mast tilt system 108c may receive one or more signals from the processor 102 and maintain or adjust the tilt, or a rate of tilt change, of the mast 216 based on the signals.
The vehicle 200 may further include the operator display system 108e. The operator display system 108e, or some portion thereof, may be located within the operator compartment 206. The operator display system 108e may control one or more indications provided to the operator. In particular, the operator display system 108e may receive one or more signals from the processor 102 and provide one or more indications to the operator based on the signals. The indications may include displaying an image on a screen display, changing a color of the screen display, lighting a light, emitting a sound, applying a force to the operator, or some combination thereof. Further, in some examples, the vehicle 200 may include one or more of the other systems 108f.
The processor 102 may receive signals from the sensors 106, where the signals indicate values associated with one or more conditions of the vehicle 200, one or more conditions of the environment surrounding the vehicle 200, or a combination of one or more conditions of the vehicle 200 and one or more conditions of the environment surrounding the vehicle 200. For examples, the conditions may include movement of the vehicle 200, a weight of a load supported by the support element, a position of the load, an object in the environment, a position in the environment, or other suitable conditions. The processor 102 may determine one or more forces acting upon a center of mass of the vehicle 200, as is described further throughout this disclosure. The processor 102 may determine one or more environmental conditions that may affect operation of the vehicle 200. The processor 102 may further receive signals from the operator input devices 104 of the vehicle requesting that the vehicle 200 perform an action, such as moving or adjusting a position of the load. Based upon the forces acting upon the center of mass, environmental conditions, and/or current conditions of the vehicle, the processor 102 may determine speed, rate of change, and/or travel limits for a requested action. The processor 102 may transmit one or more signals to the operation systems 108 that cause the operation system 108 to perform operations to implement the action within the speed, rate of change, and/or travel limits for the action, and may determine new speed, rate of change, and/or travel limits for other actions as the action occurs.
The net center of mass 310 may be determined based on the centers of mass of the components of the arrangement 300. In particular, the net center of mass 310 may be determined based on centers of mass of the components of the arrangement 300 that are static during operation of the vehicle 200 and centers of mass of the components of the arrangement 300 that may be dynamic during operation of the vehicle 200. The net center of mass 310 may be determined based on the center of mass 304 of the body 202 (which may he static during operation), the center of mass 306 of the front end equipment 214 (which may be dynamic during operation), and the center of mass 308 of the load 302 (which may be dynamic during operation). In arrangements where the vehicle 200 is not supporting the load 302, the net center of mass 310 may be determined based on the center of mass 304 of the body 202 and the center of mass 306 of the front end equipment 214.
The processor 102 (
The processor 102 may further determine the center of mass 306 of the front end equipment 214. The center of mass 306 of the front end equipment 214 is a point mass combination of the masses and positions of the centers of mass for components of the front end equipment 214. For example, the center of mass 306 may be the weighted average of the centers of mass for each of the components of the front end equipment 214. The center of mass 306 may be dynamic during operation and may be dependent on a position of the carriage 222, a tilt of the mast 216, any other moveable portions of the front end equipment, e.g. fork position, any side shift, or some combination thereof.
The location of center of mass 306 at a particular position of the carriage 222 may be determined by determining the locations of the centers of mass 306 for the carriage 222 in multiple positions and extrapolation or interpolation from the values of the multiple positions to determine the location of the center of mass 306 at the particular position of the carriage 222. For example, locations of the center of mass 306 may be determined for three positions of the carriage 222: 1) the carriage 222 located at a fully lowered position; 2) the carriage 222 located between the fully lowered position and a fully raised position; and 3) the carriage 222 located at the fully raised position. The locations of the center of mass 306 for particular locations of the carriage 222 may then be interpolated from the locations of the center of mass 306 for the three positions of the carriage 222. Alternatively, one or more sensors 106 may be utilized to sense the actual position of carriage 222, and so calculate the center of mass 306 based upon the known position of carriage 222. Depending upon the requirements of a given implementation, this calculation may be performed in real time, may be determined using a pre-computed look-up table, or otherwise derived by any suitable technique.
The location of the center of mass 306 of the front end equipment 214 may further be dependent on a tilt of the mast 216. In particular, the processor 102 may receive an indication of angle of the tilt of the mast 216 and may adjust the center of mass 306 determined based on the height of the carriage 222. The processor 102 may retrieve data that indicates a point of rotation about which the mast 216 rotates and identify a signal from the mast tilt sensor 106d that indicates an angle of the tilt of the mast 216. Based on the point of the rotation and the angle, the processor 102 may adjust the center of mass 306 of the front end equipment 214 that was determined based on the height of the carriage 222 and the tilt of the mast 216. In some examples, adjusting the center of mass 306 may include normalizing to a three-dimensional coordinate system that may be superimposed over the vehicle, where a (0,0,0) coordinate of the three-dimensional coordinate system corresponds to the center 312 of the drive axle. In some implementations, this adjustment may be made as part of the initial or overall calculations of the center of mass 306. For example, where a look-up table (that may be stored in memory device 103) is employed, the look-up table may factor in or otherwise accept as inputs the tilt of the mast 216, in addition to the position of carriage 222 and support elements 224.
The processor 102 may further determine the center of mass 308 of the load 302. The center of mass 308 of the load 302 is a point mass representation of the load 302 that is known, estimated, or calculable. For example, the center of mass 308 may be the weighted average of the centers of mass of each component comprising the load 302. The processor 102 may determine dimensions of the load 302, receive an input (such as from the operator input device 104 (
In some examples where the vehicle 200 includes the other sensors 106f of carriage level sensors, support element force differential sensors, and/or mast tilt force sensors, the processor 102 may estimate the location of the center of mass 308 based on the signals received from the other sensors 106f. For example, the processor 102 may determine a position of the center of mass 308 along a plane perpendicular to the backstop 226 of the carriage 222 based on a signal received from the carriage level sensors or the support element force differential sensors. The processor 102 may further determine a distance of the location of the center of mass 308 from the backstop 226 of the carriage 222 based on the signal based on the mast tilt force sensors. The processor 102 may determine an intersection between the plane and the distance from the backstop 226, which indicates the location of the center of mass 308 in the directions parallel to the support element.
The processor 102 may utilize the center of mass 304 of the body 202, the center of mass 306 of the front end equipment 214, and the center of mass 308 of the load 302 to determine a net center of mass 310 of the arrangement 300. For example, the processor 102 may assign weights to the centers of mass of the body 202, the front end equipment 214, and the load 302. The processor 102 may determine the net center of mass 310 based on the weights and the locations of the center of mass 304 of the body 202, the center of the mass 306 of the front end equipment 214, and the center of mass 308 of the load 302.
In some examples, the processor 102 may be unable to determine a position of the center of mass 308 of the load 302, a shape of the load 302, and/or a size of the load 302. In these examples, the processor 102 may assume a predetermined shape and size of the load 302, and may assume worst-case center of masses of the load 302 for each scenario for performing stability analysis of the vehicle 200.
In the illustrated example, the processor 102 may assume a load 302 supported by the support element 224 (
The processor 102 may determine the center of mass of the load 302 to be in a worst-case position from each potential tip axis of the vehicle 200, where the worst-case position may result in tip-over or lifting of a wheel of the vehicle 200. In instances where there are multiple potential tip axes, the processor 102 may identify multiple positions for the center of mass of the load 302. For example, the processor 102 identifies three positions for the center of mass of the load 302 in the illustrated example: 1) first worst-case center of mass 410 that corresponds to a first potential tip axis; 2) second worst-case center of mass 412 that corresponds to a second potential tip axis; and 3) third worst-case center of mass 414 that corresponds to a third potential tip axis. In some implementations, processor 102 may additionally or alternatively determine the worst-case position in terms of likely instability or toppling of load 302. In such a position, vehicle 200 may not be in danger of tip-over from wheel lift, but the load 302 may nevertheless become unstable or topple over. Such a determination may be useful where the load 302 cannot be fully secured to support elements 224, for example.
The processor 102 may determine one or more centers of mass for the arrangement 300 based on the center of mass 304 (
As described above, each determined center of mass may be expressed longitudinally relative to a fixed datum, such as the center of the drive axle 312. Laterally (left-right across vehicle 200), the datum may be expressed as a positive (right) or negative (left) offset from a centerline of vehicle 200, which runs along the longitudinal axis of vehicle 200. Alternatively, the lateral datum may be selected as another arbitrary point, such as the center of the left drive wheel. Vertically, the datum may be expressed as the top of the surface upon which vehicle 200 moves, where the surface forms a plane that contacts the wheels of vehicle 200. It will be understood that selection of any reference datum (laterally, longitudinally, and/or vertically) is somewhat arbitrary, and serves primarily as a fixed reference point by which the position of the center of mass may be expressed. In some implementations, a reference datum is selected as a single point from which a center of mass may be expressed in three coordinates (longitudinal, lateral, and vertical). However, the reference datum for a given axis need not be identical with the reference datums for other axes; other implementations may use two or more datums, possibly distinct for each axis.
A force may act upon the body 202 of the vehicle 200, as represented by body force vector 504. The first force may be generated by gravity acting upon the body 202. The processor 102 may determine a direction and magnitude of the body force vector 504 based on data retrieved from the memory devices 103, signals received from one or more of the sensors 106, or some combination thereof. For example, the processor 102 may determine the direction of the body force vector 504 based on a signal received from the sensors 106 (such as the vehicle level sensor) that indicates an orientation of the body 202 (the illustrated example being a level orientation). Further, the processor 102 may determine the magnitude of the body force vector 504 based upon data retrieved from the memory devices 103 that indicates a mass or weight of the body 202, or a signal received from one of the sensors 106 (such as a wheel force sensor) that indicates a mass or weight of the body 202. The processor 102 may determine that the force acting on the body 202 causes a first force to act upon the net center of mass 310, as represented by the first force vector 506.
A force may act upon the front end equipment 214 of the vehicle 200, as represented by front end force vector 508. The force may be generated by gravity acting upon the front end equipment 214. The processor 102 may determine a direction and magnitude of the front end force vector 508 based on data retrieved from the memory devices 103, signals received from one or more of the sensors 106, or some combination thereof For example, the processor 102 may determine the direction of the front end force vector 508 based on the signal received from the sensors 106 that indicates the orientation of the body 202. Further, the processor 102 may determine the magnitude of the front end force vector 508 based on data retrieved from the memory devices 103 that indicates the mass or weight of the front end equipment 214. The processor 102 may determine that the force acting on the front end equipment 214 causes a second force to act upon the net center of mass 310, as represented by second force vector 510. The processor 102 may determine a direction and magnitude of the second force vector 510 by normalizing the front end force vector 508 about the center 312 of the drive axle to determine the effect of the front end force vector 508 on the net center of mass 310. The processor 102 may treat the front end force vector 508 as acting on the center of mass 306 (
A force may act upon the load 302, as represented by load force vector 512. The force may be generated by gravity acting upon the load 302. The processor 102 may determine a direction and magnitude of the load force vector 512 based on data retrieved from the memory devices 103, signals received from one or more of the sensors 106, or some combination thereof. For example, the processor 102 may determine the direction of the load force vector 512 based on the signal received from the sensors 106 that indicates the orientation of the body 202. Further, the processor 102 may determine the magnitude of the load force vector 512 based on data retrieved from the memory devices 103 that indicates the mass or weight of the load 302, or a signal received from the sensors 106 (such as the load weight sensor 106c) that indicates the mass or the weight of the load 302. The processor 102 may determine that the force acting on the load 302 causes a third force to act upon the net center of mass 310, as represented by third force vector 514. The processor 102 may determine a direction and magnitude of the third force vector 514 by normalizing the load force vector 512 about the center 312 of the drive axle to determine the effect of the load force vector 512 on the net center of mass 310. The processor 102 may treat the load force vector 512 as acting on the center of mass 308 (
The processor 102 may determine the net resultant force vector 502 that acts on the net center of mass 310 based on the first force vector 506, the second force vector 510, and the third force vector 514. In particular, the processor 102 may sum the first force vector 506, the second force vector 510, and the third force vector 514 to determine the net resultant force vector 502. The net resultant force vector 502 may represent static forces that act upon the net center of mass 310. The static forces includes forces that act upon the vehicle 200 regardless of travel speed, acceleration/deceleration, direction of travel of the vehicle 200, movement of the carriage 222 (
A first force may act upon the net center of mass 310 due to acceleration of the vehicle 200, as represented by first force vector 602. In particular, the first force may be generated by resistance of the mass of the arrangement 600 to a change in travel speed of the vehicle 200. The processor 102 may determine a direction and magnitude of the first force vector 602 based on data retrieved from the memory devices 103 (
A second force may act upon the net center of mass 310 due to the cornering of the vehicle 200, as represented by second force vector 604. In particular, the second force may comprise a centrifugal force generated by resistance of the mass of the arrangement 600 to a change in travel direction (and thus resisting the inertia tending to keep the mass of the arrangement 600 traveling in a straight line) of the vehicle 200. The processor 102 may determine a direction and magnitude of the second force vector 604 based on data retrieved from the memory devices 103, a signal received from one or more of the sensors 106, a signal received from the operator input device 104, or some combination thereof. For example, the processor 102 may determine the direction of the second force vector 604 based on an angle of the steer wheels of the vehicle 200 as indicated by a signal from the angle sensor 106b (
The processor 102 may further utilize dynamic forces (such as the first force represented by the first force vector 602 and the second force represented by the second force vector 604) in determining the net resultant force vector 502 (
Although the various force vectors 502, 504, 506, 508, 510, 512, 602 and 604 are depicted as being in a single direction (vertical or horizontal), it will be understood that these are simplified for illustrative purposes; vectors may be angular, with both vertical and horizontal (lateral and/or longitudinal) components, depending upon the particular configuration and orientation of vehicle 200. Thus, a given vector may have three x y and z components, corresponding variously to lateral, longitudinal, and vertical directions. For example, where vehicle 200 is traveling on an incline, force vectors 502-512 will have both vertical and horizontal components, as the applied force is angled relative to the travel surface. Where vehicle 200 is turning on an incline, the force vectors may have vertical, lateral, and longitudinal components. Processor 102, in embodiments, is configured to account for these angled force vectors. The actual direction and constituent components may be measured by the various sensors 106 described herein, which may be configured to sense physical aspects across three dimensions. For example, a three-axis accelerometer and/or three-axis gyroscope may be used as one or more sensors 106 to measure the orientation and movement of vehicle 200 in three dimensions. Each vector may be represented using a matrix corresponding to each constituent direction, and processor 102 may employ matrix mathematics in its computations.
Further,
The processor 102 may determine a relationship between the net resultant force vector 502 and the stability polygon 702. In particular, the processor 102 may retrieve data from the memory devices 103 (
Processor 102 may compute the stability polygon 702, including each of its various potential tip axes, dynamically to address scenarios where vehicle 200 is both static and moving. Using inputs from the various sensors 106, such as, e.g., speed sensor 106a, angle sensor 106b, load weight sensor 106c, mast tilt sensor 106d, carriage height sensor 106e, plus other sensors 106 that may provide input into the loading and orientation of vehicle 200, processor 102 can compute the potential tip axes comprising stability polygon 702. As these configurations may change, e.g. the vehicle 200 may being moving or may stop, the carriage height may change as a load is lifted or lowered, the vehicle weight and balance may change as a load is picked up or removed, the mast tilt may change in response to load changes, etc., processor 102 typically will recompute the stability polygon 702 axes on a repeated basis. :In some embodiments, processor 102 may recompute the stability polygon 702 on a regular basis, e.g. may update once or several times per second, or another suitable interval depending upon the needs of a given implementation. In some implementations, processor 102 may recompute the stability polygon 702 on a nearly continuous basis to ensure that vehicle handling and operation is maintained within predefined limits.
In other embodiments, processor 102 may recompute the stability polygon 702 each time a change in the signal from at least one of the sensors 106 is detected. In such an embodiment, the number of times that stability polygon 702 is recomputed in a given time frame may depend upon factors such as the sample rate of a given sensor 106. Such a change may indicate a potential change in the configuration of vehicle 200 and its load 302, that would potentially render invalid the computed stability polygon 702, and any subsequent control limits or modifications based upon the computed stability polygon 702. Each of the potential tip axes may be computed and recomputed substantially simultaneously. Further still, although stability polygon 702 is depicted as triangular with three potential tip axes, different configurations and/or geometries of vehicle 200 may require computation of additional tip axes, e.g. stability polygon 702 may effectively be a square, trapezoid, pentangle, hexagon, etc.
The processor 102 may further determine a distance or distances from the portion of the stability polygon 702 through which the net resultant force vector 502 is directed. In the illustrated example, the processor 102 determines that the point 720 is a distance 722 of side 724 of the stability polygon 702. The processor 102 may compare the distance 722 to a predetermined distance. In some examples, the processor 102 determines the distance 722 and based on the distance 722 may implement speed, rate of change, and/or travel limits for one or more of the operation systems 108. The processor 102 may also implement speed, rate of change, and/or travel limits for one or more of the operation systems 108 further based on other criteria such as operator skill level or environmental conditions. For example, implementing speed, rate of change, and/or travel limits for one or more of the operation systems 108 may include limiting a maximum drive speed of the vehicle 200, an acceleration and/or deceleration of the vehicle 200, a maximum height of the carriage 222 (
The processor 102 may determine one or more forces acting upon the load 302 and the component of each of the forces that could cause the load 302 to be pitched off of the support element 224 during operation of the vehicle 200. A gravitational force acts upon the load 302, as represented by gravitational force vector 804. The processor 102 may determine a direction and/or a magnitude of the gravitational force vector 804 based on, e.g., an orientation of the vehicle 200, a tilt angle of the mast 216, a weight and/or mass of the load 302, an orientation sensor (such as a vehicle level sensor) to determine whether vehicle 200 is on an incline, or some combination thereof. For example, the processor 102 may determine a direction of the gravitational force vector 804 based on a signal indicating an orientation of the vehicle 200 received from the vehicle level sensor, a signal indicating an orientation of the carriage 222 received from the carriage level sensor, or some combination thereof. The processor 102 may determine a magnitude of the gravitational force vector 804 based on, e.g., data retrieved from the memory devices 103 (
The processor 102 may further determine a component of the gravitational force vector 804 that could exceed the static friction force holding load 302 to the support element(s) 224, thus causing the load 302 to be pitched, as indicated by the first component vector 806. The first component vector 806 may be directed parallel to the support element 224 and away from the backstop 226 of the carriage 222. In particular, the processor 102 may perform calculations to determine a direction and magnitude of the first component vector 806 based on the gravitational force vector 804, a tilt of the mast 216, an orientation of the carriage 222, an orientation of the vehicle 200, vehicle speed, or some combination thereof. For example, the processor 102 may determine the direction of the first component vector 806 based on a signal that indicates a tilt angle of the mast 216 received from the mast tilt sensor 106d (
The processor 102 may further determine an amount of resistive force that resists translation of the load 302 across the support element 224, as indicated by resistive force vector 808. The resistive force may be generated by friction between the support element 224 and the load 302. In particular, the processor 102 may determine a friction coefficient of the support element 224. The processor 102 may retrieve information indicating the friction coefficient for the support element 224 from the memory devices 103, receive a signal indicating the friction coefficient from the operator input device 104, or some combination thereof. The processor 102 may further determine a component of the gravitational force vector 804 directed perpendicular to the support element 224, as indicated by the second component vector 810. The processor 102 may perform calculations to determine a direction and magnitude of the second component vector 810 based on the gravitational force vector 804, the tilt of the mast 216, the orientation of the carriage 222, the orientation of the vehicle 200, or some combination thereof. The processor 102 may determine the amount of resistive force that may resist translation of the load 302 based on the friction coefficient of the support element 224 and the second component vector 810. In particular, the processor 102 may determine a maximum amount of resistive force that may be generated by the friction between the support element 224 and the load 302. Based on the mass of load 302 and its associated inertia when vehicle 200 is in motion, this resistive force may determine at least in part the maximum rate computed by processor 102 at which vehicle 200 may be slowed from a given speed while inhibiting load 302 from sliding off of support element 224. As deceleration causes load 302 to exert a force at least partially opposed to the resistive force that is proportional to the mass of load 302 and the rate of deceleration, viz. faster stopping results in more opposing force, processor 102 may limit the allowable deceleration rate to keep the opposing force less than the resistive force.
The processor 102 may further determine a risk and/or likelihood of the load 302 being pitched based on the maximum amount of resistive force. For example, the processor 102 may compare the first component vector 806 with the maximum amount of resistive force to determine the risk and/or likelihood of the load 302 being pitched. Further, the processor 102 may implement one or more speed, rate of change, and/or travel limits for one or more of the operation systems 108 to reduce the risk and/or likelihood of the load 302 being pitched based on the comparison. For example, the processor 102 may limit a range of tilt of the mast 216, a rate of change in the tilt of the mast 216, a rate of change in height adjustment of the carriage 222, an acceleration/deceleration of the vehicle 200, or some combination thereof, to maintain the first component vector 806 at a lower magnitude than the maximum amount of resistive force.
Processor 102 may further dynamically determine a maximum speed of vehicle 200 based on the maximum amount of resistive force. This maximum speed may be computed based at least partially upon the deceleration limits mentioned above to prevent load 302 from sliding off of support element 224, which translates into an estimated minimum stopping distance to bring vehicle 200 to a complete stop. Other factors that impact stopping distance, such as center of mass and weight of load 302, discussed above, as well as surface conditions that may be sensed by one or more sensors 106, may also factor into a maximum speed determination. The selection of a maximum speed may further be made with respect to operational and/or other predetermined limits, such as, e.g., an operator's desired maximum stopping distance, geolocation data indicating vehicle 200 being located in an area that offers only limited stopping distances, any sensed obstacles or potential obstacles in proximity to vehicle 200, etc. Thus, processor 102 may dynamically modify the maximum speed of vehicle 200 to ensure that the minimum stopping distance of vehicle 200 does not exceed a desired or otherwise specified maximum stopping distance. This will be described further below.
For brevity, analysis of the pitching of the load 302 based on gravitational force has been illustrated. However, it is to be understood that the processor 102 may further take into account the apparent centrifugal forces acting on the load 302 caused by the inertia of the load 302 during cornering of the vehicle 200. The processor 102 may also take into account translational forces acting on the load 302 caused by acceleration/deceleration of the vehicle 200. For example, the processor 102 may determine a direction and magnitude of the apparent centrifugal force based on data retrieved from the memory devices 103, a signal received from one or more of the sensors 106, a signal received from the operator input device 104, or some combination thereof. For example, the processor 102 may determine the direction of the apparent centrifugal force based on an angle of the steer wheels of the vehicle 200 as indicated by a signal from the angle sensor 106b (
The processor 102 may generate the operational limit representation 900 based on a relationship of a net resultant force vector (such as the net resultant force vector 502 (
The processor 102 may then determine maximum values of the operation corresponding to each of the instability conditions of the vehicle 200 and the risk and/or likelihood of the load 302 being pitched or toppling and/or vehicle 200 overturning or lifting a wheel based on the current conditions of the vehicle 200. In the illustrated example, the processor 102 determines the maximum travel speed of the vehicle 200 for each angle of the steer wheel based on the conditions of the vehicle 200. The conditions of the vehicle 200 may include a mass or weight of the load 302 being supported by the vehicle 200, a tilt of a mast of the vehicle 200, a height of a carriage of the vehicle 200, an orientation of the vehicle 200, an orientation of the carriage, or some combination thereof. For example, the processor 102 may determine the maximum travel speeds of the vehicle 200 for the current angle of the steer wheel that would result in instability of the vehicle 200, such as toppling or lifting a wheel, based on the stability polygon and pitching of the load 302 based on the load pitch analysis, and may plot the maximum travel speeds on the operational limit representation 900.
In the illustrated example, plotted maximum travel speed representations based on the angle of the steer wheel illustrated include: forward travel left lateral stability line 902; forward travel right lateral stability line 904; forward travel longitudinal stability line 906; forward travel stop pitch line 908; forward travel centrifugal pitch line 910; reverse travel left lateral stability line 912; reverse travel right lateral stability line 914; reverse travel left lateral stop stability line 916; reverse travel right lateral stop stability line 918; and reverse travel centrifugal pitch line 920. Forward travel may correspond to vehicle travel with the load located on a side of the vehicle in the direction of travel and reverse travel may correspond to vehicle travel with the load located on a side of the vehicle opposite from the direction of travel. For example, the front of vehicle 200 would correspond to the side of the vehicle in the direction of forward travel and opposite the direction of reverse travel. Left lateral stability may correspond to a tip point located toward a left side of the vehicle 200 (such as the tip axis represented by second line 710 (
The processor 102 may determine a stable area 922 that has travel speeds less than all the maximum travel speed representations, which may be indicated as the area inside of overall forward stability line 924 and overall reverse stability line 926. The stable area 922 indicates travel speeds of the vehicle 200 where the processor 102 has determined that the vehicle 200 would be in a stable condition and not at risk of pitching the load, and/or the vehicle 200 overturning or lifting a wheel.
In response to receiving a request to perform an action from the operator input device 104 (
In some embodiments, depending upon the desired feel of the controls of vehicle 102, the operator input device 104 may allow full range of command, with processor 102 interpreting the range to he within the stable area 922. For example, where the operator input device 104 is a speed control or throttle, the processor 102 may interpret a neutral or zero position of the input device 104 as corresponding to a zero speed, where the vehicle 200 is stationary. Advancing the operator input device 104 to maximum or full speed will result in the processor 102 causing vehicle 102 to accelerate up to the limit of the stable area 922 (with respect to other inputs such as steering, forward-neutral-reverse settings, etc.), which is considered by processor 102 to be 100% allowable speed. It should further be understood that other operational limit representations may also be in play, such as an operational limit of maximum allowable acceleration or deceleration. Thus, moving the throttle to a full open position may not only be limited to a speed within the stable area 922, but also to a limited maximum acceleration that is kept within a stable area. By way of another example, where operator input device 104 commands braking (e.g. a separate brake pedal, or application of brakes integral with a throttle), the maximum allowed braking power, for example, when the accelerator is released but the brake is not applied, or when the brake is applied, may be limited to stay within a stable area, such as stable area 922, to prevent pitching of load 302 and/or rollover or lifting a wheel of vehicle 200.
From the perspective of an operator of such an example, full range of operation of the input device(s) 104 is always available, with the effects of control operation adjusted by processor 102 to maintain stability. In other examples, in addition to processor 102 restricting vehicle operation to a stable area 922, the operator input device(s) 104 may be physically restricted in movement, vibrate, increase resistance, or otherwise signal the operator when the control is advanced to a position that would otherwise cause the vehicle to become unstable apart from the limiting action of processor 102.
In some examples, the processor 102 may further adjust a suspension of the vehicle 200 to increase the stable area 922 for the requested action. For example, the processor 102 may transmit a signal to the suspension system 108d to adjust the suspension system 108d of the vehicle to increase the stable area 922. The adjustment of the suspension system 108d may include increasing or decreasing an amount of resistance of the suspension system 108d to compression, extending or contracting portions of the suspension system 108d, or some combination thereof. In some other examples, if so configured the processor 102 may adjust other parameters, e.g., the height of the carriage 222, tilt of the mast, to increase the stable area 922 for the requested action.
It should further be understood that the foregoing approach of operational limit representations may be applied to any control and system on vehicle 200. For example, lowering or raising of the mast with a load 302 and/or mast tilt may be limited in speed and/or travel. Where processor 102 determines that lifting a load past a certain height or tilt would result in the vehicle 200 becoming unstable, the carriage 222 may be limited in maximum height/tilt to stay in a stable area.
Still further, it should be understood that, much as the stability polygon 702 may be dynamically recomputed to continually account for changing signals from sensors 106, the operational limit representation 900, which is essentially derived from or otherwise reflects the stability polygon 702, is likewise continually recomputed to account for changing conditions. For example, where a vehicle function that may impact the stability polygon 702 changes, such as a steering angle, the size or the geometry of the stability polygon 702 may be correspondingly changed.
During operation of a vehicle 200, certain operations may cause the vehicle 200 to jolt or jerk. While jolting, or jerking may not cause the vehicle 200 to enter an unstable condition or cause the load to be pitched, the jolting or jerking may be uncomfortable for an operator of the vehicle 200. Accordingly, it may be preferable to reduce the jolting and jerking of the vehicle 200. The processor 102 (
In particular, the processor 102 may determine the magnitude of a force to be caused by an action in response to receiving a request from the operator input device 104 (
The processor 102 may compare the magnitude of the force vector 1012 with a jerk force threshold. The jerk force threshold may be a predefined magnitude of force that has been determined to cause jolting or jerking of the vehicle 200. In some examples, the processor 102 may further convert the magnitude of the force vector 1012 or the jerk force threshold based on a moment of the force vector 1012 about a potential tip axis of the vehicle 200 to normalize the force vector 1012 and the jerk force threshold about the moment for comparison.
If the processor 102 determines that the magnitude of the force vector 1012 is less than the jerk force threshold, the processor 102 may determine the action may be performed as requested. If the processor 102 determines that the magnitude of the force vector 1012 is greater than the jerk force threshold, the processor 102 may determine that the action should be modified to reduce or prevent jolting or jerking of the vehicle 200. For example, the processor 102 may reduce the predefined stopping rate to a modified stopping rate that causes a magnitude of the force vector 1012 to be less than jerk force threshold. The processor 102 may transmit a signal to the carriage height system 108b to indicate the predefined stopping rate (when the magnitude of the force vector 1012 is determined to be less than the jerk force threshold at the predefined stopping rate) or the modified stopping rate (when the magnitude of the force vector 1012 is determined to be greater than the jerk force threshold at the predefined rate). Thus, in embodiments, the action may be modified to reduce or avoid jerk much as commands from an input device may be modified to maintain stability of vehicle 200, as discussed above.
While the jerk reduction operation is described in relation to stopping of the lowering of the support element 224, it is to be understood that a jerk reduction operation may be performed to reduce or prevent jolting or jerking of the vehicle 200 caused by other forces acting upon the vehicle 200, the load 302, or both. For example, jerk reduction operations may be performed based on forces produced by stopping raising/lowering of the support element 224, initiating raising/lowering of the support element 224, acceleration/deceleration of the vehicle 200, initiating tilt adjustment of a mast of the vehicle 200, terminating tilt adjustment of the mast, or some combination thereof. The jerk reduction operations may include reducing a stopping rate of raising/lowering of the support element 224, reducing an initial raising/lowering rate of the support element 224, reducing an acceleration/deceleration of the vehicle, reducing an initial tilt adjustment rate of the mast, reducing a termination rate of the tilt adjustment of the mast, or some combination thereof.
In some implementations, jerk reduction may be accomplished alternatively or additionally by means of speed reduction, e.g. limiting vehicle speed or mast or support element 224 speed to an amount that will not allow the jerk force threshold to be exceeded. In still other implementations, jerk reduction may be accomplished as part of implementing an operational limit, such as operational limit representation 900. In such implementations, the stable area, such as stable area 922, may be computed with respect to reduction or elimination of jerk in addition to ensuring vehicle and load stability. In some situations, jerk reduction or elimination may impose greater restrictions than would otherwise be necessarily imposed to ensure vehicle and load stability. In other situations, vehicle and load stability limits may be within the limits necessary to avoid or reduce jerk, viz. jerk would only be experienced if the vehicle 200 were controlled outside the limits of the stable area.
In some examples, the vehicle 200 may implement one or more jerk reduction operations without determining a magnitude of the force that would he caused by the action. For example, the jerk reduction operations may be implemented by the processor 102 in response to certain conditions of the vehicle 200. Some conditions may include a carriage of the vehicle 200 approaching an end of a carriage stroke of the vehicle, a mast approaching an end of a mast throw of the vehicle 200, or some combination thereof. The jerk reduction operations may include slowing a rate of change of a position of the carriage in response to determining the carriage is approaching the end of the carriage stroke, slowing a rate of change of tilt adjustment of the mast in response to the determination that the mast is approaching the end of the mast throw, or some combination thereof.
In some examples, the processor 102 may further limit one or more operations of the vehicle 200 based on conditions of the vehicle 200. In particular, the processor 102 may receive one or more signals from the sensors 106 and may determine one or more conditions of the vehicle 200. The processor 102 may identify an operation to be limited based on the conditions of the vehicle 200 and may limit one or more operations based on the conditions.
For example, the processor 102 may limit a rate of change of a tilt of the mast 216 based on a location of the carriage 222. In particular, the processor 102 may receive a signal from the carriage height sensor 106e that indicates a height of the carriage 222 and the processor 102 may determine a height of the carriage 222, based on the signal. The processor 102 may provide for a higher rate of change of the tilt of the mast 216 when the carriage 222 is at a low height than when the carriage 222 as a higher height. In some examples, the processor 102 may cause the rate of change of the tilt of the mast 216 to vary such that the carriage 222 is translated in the horizontal direction at the same rate regardless of the height of the carriage 222.
In some examples, the processor 102 may limit a tilt range of the mast 216 based on a height of the carriage 222 and a weight of a load 302 supported by the carriage 222. In particular, the processor 102 may receive a signal from the carriage height sensor 106e that indicates a height of the carriage 222. The processor 102 may further receive a signal that indicates a weight of the load 302 from the load weight sensor 106c or retrieve a weight of the load 302 from the memory devices 103, which may have previously been entered by an operator The processor 102 may provide for a greater range of tilt when the carriage 222 is located at a low height and is supporting a relatively light load 302 than when the carriage 222 is located at a higher height and is supporting a relatively heavier load 302.
In some examples, the processor 102 may limit a speed of height adjustment of the carriage 222 based on a weight of a load 302 supported by the carriage 222, a height of the carriage 222, and/or a tilt of the mast 216. In particular, the processor 102 may receive a signal that indicates a weight of the load 302 from the load weight sensor 106c or retrieve a weight of the load 302 from the memory devices 103. The processor 102 may receive a signal that indicates a height of the carriage 222 from the carriage height sensor 106e. Further, the processor 102 may receive a signal that indicates a tilt of the mast 216 from the mast tilt sensor 106d. The processor 102 may provide for a greater height adjustment rate of the carriage 222 for a light load supported at a low height and with a tilt of the mast 216 being toward the vehicle 200 than when a heavier load is supported at a higher height with the tilt of the mast 216 being away from the vehicle 200.
In some examples, the processor 102 may limit a travel speed, acceleration, and/or deceleration of the vehicle 200 based on a weight of a load 302 supported by the carriage 222, a height of the carriage 222, a tilt of the mast 216, and/or an angle of the steer wheels 204b. The processor 102 may receive a signal indicating the weight of the load 302 from the load weight sensor 106c, or as above, may retrieve the weight from a memory device(s) 103 that may have been previously entered by an operator. The processor 102 may receive a signal indicating the height of the carriage 222 from the carriage height sensor 106e. The processor 102 may further receive a signal indicating a tilt of the mast 216 from the mast tilt sensor 106c. Further, the processor 102 may receive a signal indicating the angle of the steer wheels 204b from the angle sensor 106b. The processor 102 may provide for a greater travel speed, acceleration, and/or deceleration for a light load supported at a low height with the mast 216 tilted toward the vehicle 200 and a small angle of the steer wheels 204 than when a heavier load is supported at a higher height with the mast 216 tilted away from the vehicle 200 and the steer wheels 204 are at a larger angle.
In examples where condition-based operation limits are implemented, the lowest or most conservative operation limits may be implemented by the processor 102, similar to the contrast between operation within a stable area of an operational limit and operation to reduce or prevent jerk. For example, when the condition-based operation limits are lower or more conservative than the stability and load pitch analysis-based operation limits, viz. operation within a stable area, such as stable area 922 of an operational limit representation 900 (
The vehicle 200 may have one or more restrictions on operation for proper operation and/or suitability for the operating environment. For example, the vehicle 200 may have a restriction on a weight and/or mass of a load (such as the load 302 (
For example, the processor 102 may determine a weight and/or mass of the load 302 upon initial lifting of the load. In particular, the processor 102 may receive a signal indicating a weight and/or mass of the load 302 from the load weight sensor 106c. The processor 102 may compare a weight and/or mass of the load 302 with a restricted weight and/or mass for the load 302 to determine whether the vehicle 200 presents proper operation. In response to determining that the weight and/or mass of the load 302 is less than the restricted weight and/or mass for the load, the processor 102 may provide full operation of the vehicle 200, subject to the above-discussed operational limits.
In response to determining that the weight and/or mass of the load 302 is greater than the restricted weight and/or mass for the load, the processor 102 may prevent the vehicle from performing certain operations. In certain examples, the processor 102 may only allow lowering of the carriage of the vehicle 200 and/or tilting forward of the mast of the vehicle 200 to return the load 302 to the surface from which it was initially lifted. In particular, the processor 102 may transmit signals to the carriage height system 108b (
During operation of the vehicle 200, an operator of the vehicle 200 may request actions to be performed by the vehicle 200 where such action has a limitation imposed on it. These actions may exceed one or more of the limitations imposed on operations (such as limitations of operations based on the stability polygon 702 (
In particular, the vehicle 200 may be programmed to allow one or more actions to be performed without limiting operations of the vehicle 200 associated with the actions. For example, a manufacturer of the vehicle 200, an end user, or an authorized operator may signal the processor 102 to perform the operator-commanded actions regardless of the limitations on the operations. For example, the processor 102 may be signaled to allow a request to brake the vehicle 200 to override the limitations on deceleration of the vehicle 200. In particular, the processor 102 may cause a brake of the vehicle 200 to be applied at a brake level indicated by a signal received from the operator input device 104 regardless of the deceleration of the vehicle 200 caused by the braking and any limitations on deceleration of the vehicle 200. The processor 102 may further be programmed, configured, or signalled by the manufacturer, the end user, or the authorized operator to allow other actions to override the limits.
As operators of the vehicle 200 become more experienced with the vehicle 200 and/or receive more training on the vehicle 200, the operators may gain higher skill levels with the vehicle. As a skill level of the operator progresses, an operator or manager may want to have fewer limitations on vehicle 200 operations based on operator's experience and his or her skill level. Further, a skilled operator may be less sensitive to conditions of the vehicle 200 that may make less skilled operators uncomfortable during operation. For example, an experienced operator may be sufficiently skilled to be comfortable with full-speed operation of the various systems of vehicle 200. An inexperienced operator potentially getting used to the vehicle controls, in contrast, may benefit from diminished control sensitivities and limits upon operational speeds, to give the inexperienced operator more time to adjust to possible erroneous inputs and/or make corrections. The operational limits discussed above (
The processor 102 may receive a signal indicating an operator skill level of the operator from the operator input device 104, or another suitable input method. In some examples, the processor 102 may store an indication of the operator skill level within the memory devices 103 of the vehicle 200. The processor 102 may utilize the operator skill level in determining when to implement limits on operations and/or how much each of the operations should be limited based on the current operator skill level.
The operator skill level operation reduction table 1100 may be stored in the memory devices 103. The processor 102 may access the operator skill level operation reduction table 1100. The processor 102 may identify one or more limitation amounts and/or limitation sensitivities associated with the current operator skill level.
In the illustrated example, the operator skill level operation reduction table 1100 includes limitation amounts and limitation sensitivities for three operator level skill levels, as indicated by first column 1102, second column 1104, and third column 1106. Each skill level, as may be seen, includes entries for multiple operational parameters of a vehicle 200. Other embodiments may have more or fewer skill levels, as may be determined by the needs of a given implementation, or may provide for creation of an arbitrary number of levels with varying limits. Likewise, other embodiments may vary the number and/or type of operational parameters depending upon the specifics of a given implementation.
In response to receiving a request to perform an action from the operator input device 104 (
in response to determining that an operation should be limited, the processor 102 may identify an amount by which to reduce the operation below a maximum operation value. For example, the processor 102 may identify the travel speed reduction row 1110 and a travel speed reduction amount associated with the operator skill level in the illustrated example. The processor 102 may modify a requested travel speed to be a certain amount below a maximum allowed travel speed (which may be determined based on the operational limit representation 900 (
At operation 1202, the processor may identify one or more values received from the sensors (
At operation 1204, the processor may determine a center of mass of an arrangement that includes the vehicle. In arrangements where the vehicle is not supporting a load, the processor may determine the center of mass of the arrangement based on the components of the vehicle (i.e. a body of the vehicle and front end equipment of the vehicle). In an arrangement where the vehicle is supporting a load, the processor may determine the center of mass of the arrangement based on the components of the vehicle and the load. The processor may perform one or more of the features for determining the center of mass described in relation to
At operation 1206, the processor may determine a net resultant force based on the values received from the sensors. In particular, the processor may determine one or more forces acting upon the center of mass of the arrangement. The processor may perform one or more of the features for determining a net resultant force described in relation to
At operation 1208, the processor may determine a relationship between the net resultant force and a stability polygon for the vehicle. In particular, the processor may determine whether the net resultant force is directed through the stability polygon that is superimposed at a base of the vehicle. The processor may perform one or more of the features for determining a relationship between a net resultant force and a stability polygon as described in relation to
At operation 1210, the processor may determine a maximum allowable limit of operation, e.g. an operational limit representation (
At operation 1212, the processor may signal one or more of the operation systems 108 (
At operation 1302, the processor may identify one or more values received from sensors, such as sensors 106 (
At operation 1304, the processor may generate one or more operational limit representations (such as the operational limit representation 900 (
At operation 1306, the processor may identify a request to perform an action. In particular, the processor may identify a signal indicating a request for the vehicle to perform an action received from an operator input device, such as operator input device 104 (
At operation 1308, the processor may determine whether the requested action would exceed operational limits of one or more operations. In particular, the processor may determine one or more operations to be performed by the operation systems to achieve the requested action and may identify one or more of the operational limit representations that correspond to the one or more operations. The processor may compare each of the determined operations to be performed to achieve the requested action with the corresponding operational limit representations to determine whether the operations fall within the stable areas (such as the stable area 922 (
At operation 1310, the processor may modify the action in response to determining that the action exceeds the operational limits. In particular, the processor may modify actions that exceed the operational limits to a modified action, where all of the operations to be performed to achieve the modified action fall within the stable areas of the corresponding operational limit representations. For example, the processor may reduce values of one or more of the operations (such as reducing a travel speed, reducing an amount of acceleration/deceleration, reducing a rate of change of a height of a carriage of the vehicle, reducing a rate of change of tilt of a mast of the vehicle, or some combination thereof) associated with the requested action to produce the modified action. Note that modification, as used here, does not necessarily mean actual modification of a signal to an operational system. Rather, modification may simply mean mapping a received input from the input device to an appropriate output that will result in operations within the stable area. For example, an operator may request full throttle (100%), which the processor may map to the maximum allowable speed that is contained within the stable area. Where the 100% will exceed determined operational limits, the 100% value will not result in an actual 100%, but rather the maximum allowable speed. In instances where the processor determines that the action does not exceed the operational limits, operation 1310 may be omitted from the procedure 1300.
In addition to adjustments to keep operational parameters within a stable area of operation, other adjustments may be made here that are not necessarily stability related. For example, where operator skill levels are implemented, the action may be modified in operation 1310 to keep any requested action to within allowable limits for the designated operator skill level (
At operation 1312, the processor may instruct one or more of the operation systems (such as operation systems 108 in
At operation 1402, the processor may identify a request to perform an action. In particular, the processor may identify a signal indicating a request for performance of an action received from an operator input device, such as the operator input device 104 (
At operation 1404, the processor may determine a force to be generated by performance of the action. In particular, the processor may determine one or more operations to be performed to achieve the requested action. The processor may determine a magnitude and direction of a force to be produced by performance of the operations, as described in relation to
At operation 1406, the processor may determine whether the force exceeds a force threshold. In particular, the processor may compare a magnitude of the force to be produced by performance of the operations to a force threshold indicating a maximum magnitude, as described in relation to
At operation 1408, the processor may modify the requested action to a modified action in response to determining that the force to be produced exceeds the force threshold. Modification may be similar to modification of actions as described above with respect to operation 1310 of procedure 1300. In particular, the processor may modify the action such that the operations to he performed to achieve the requested action produce a force that does not exceed the force threshold. For example, the processor may reduce values of one or more of the operations (such as reducing a travel speed, reducing an amount of acceleration/deceleration, reducing a rate of change of a height of a carriage of the vehicle, reducing a rate of change of tilt of a mast of the vehicle, or some combination thereof) associated with the requested action to produce the modified action. In instances where the processor determines the requested action does not exceed the force threshold, operation 1408 may be omitted from the procedure 1400.
At operation 1410, the processor may instruct one or more of vehicle operation systems, such as the operation systems 108 (
Multiple examples of systems, apparatuses, and methods for controlling a vehicle are described herein. Different examples of the systems, apparatuses, and methods described herein may perform different procedures. In particular, the examples disclosed herein may perform procedure 1200, procedure 1300, procedure 1400, or some combination thereof. In some examples, a system for controlling a vehicle is described herein. The system may include sensors and a processor coupled to the sensors. The processor may identify one or more values received from the one or more sensors, wherein the one or more values are associated with one or more conditions of the vehicle, and determine, based on the one or more values, a net resultant force vector of one or more forces acting on a center of mass of the vehicle. The processor may further determine a relationship between the net resultant force vector and a stability polygon that is superimposed at a base of the vehicle, and determine whether to initiate a stability assistance operation based on the relationship between the net resultant force vector and the stability polygon.
Further, a computer-readable media having instruction stored for thereon for implementation within a vehicle is disclosed herein. In particular, the computer-readable media having instructions stored thereof, wherein the instructions, in response to execution by a processor of a vehicle, may cause the processor to identify one or more values received from one or more sensors, wherein the values are associated with one or more instantaneous conditions of the vehicle, and determine, based on the one or more values, a net resultant force vector of one or more forces acting on a center of mass of the vehicle. The instructions may further cause the processor to determine a relationship between the net resultant force vector and a stability polygon that is superimposed at a base of the vehicle, and determine, based on the relationship between the net resultant force vector and the stability polygon, whether to initiate a stability assistance operation.
Further, a method for controlling a vehicle is described herein. The method may include identifying one or more values received from one or more sensors of the vehicle, wherein the one or more values are associated with one or more instantaneous conditions of the vehicle, and generating an operational limit representation that corresponds to an operation of the vehicle, wherein the operational limit representation indicates operational limits of the operation based on the one or more values. Further, the method may include identifying a request to perform an action associated with the operation, determining that the action exceeds the operational limits of the operation based on the operational limit representation, and modifying the action in response to the determination that the action exceeds the operational limits.
It will be apparent to those skilled in the art that various modifications and variations can be made in the disclosed examples of the disclosed device and associated methods without departing from the spirit or scope of the disclosure. Thus, it is intended that the present disclosure covers the modifications and variations of the examples disclosed above provided that the modifications and variations come within the scope of any claims and their equivalents.
This application claims priority to U.S. Provisional Patent Application No. 62/725,879, filed Aug. 31, 2018, the contents of which is herein incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
4074794 | Scholl | Feb 1978 | A |
4509127 | Yuki | Apr 1985 | A |
4511974 | Nakane et al. | Apr 1985 | A |
6050770 | Avitan | Apr 2000 | A |
6256566 | Kamiya et al. | Jul 2001 | B1 |
6385518 | Rickers et al. | May 2002 | B1 |
6477455 | Panizzolo | Nov 2002 | B2 |
6985795 | Scotese | Jan 2006 | B2 |
7165643 | Bozem | Jan 2007 | B2 |
7216024 | Abels et al. | May 2007 | B1 |
7706947 | Bozem et al. | Apr 2010 | B2 |
8140228 | McCabe | Mar 2012 | B2 |
8543261 | Anderson et al. | Sep 2013 | B2 |
8731785 | McCabe et al. | May 2014 | B2 |
8744648 | Anderson et al. | Jun 2014 | B2 |
9002557 | Goncalves | Apr 2015 | B2 |
9139408 | Alveteg | Sep 2015 | B2 |
9169110 | Gerdes et al. | Oct 2015 | B2 |
9207673 | Pulskamp et al. | Dec 2015 | B2 |
9222854 | Singh et al. | Dec 2015 | B2 |
9358975 | Watts | Jun 2016 | B1 |
10494789 | Berkemeier et al. | Dec 2019 | B2 |
10507826 | Giorgio Bort | Dec 2019 | B2 |
10782202 | Bonnet et al. | Sep 2020 | B2 |
11305650 | Chandrasekar | Apr 2022 | B2 |
20070208483 | Rabin | Sep 2007 | A1 |
20100204891 | Biggerstaff | Aug 2010 | A1 |
20120239262 | Reinert | Sep 2012 | A1 |
20130124041 | Belser et al. | May 2013 | A1 |
20170123428 | Levinson et al. | May 2017 | A1 |
20180229988 | Gault et al. | Aug 2018 | A1 |
20200071144 | Draayer et al. | Mar 2020 | A1 |
20200399105 | Draayer et al. | Dec 2020 | A1 |
Number | Date | Country |
---|---|---|
201400714 | Oct 2014 | AU |
2045207 | Apr 2009 | EP |
2233427 | Sep 2011 | EP |
3059202 | Aug 2016 | EP |
3059202 | Jul 2019 | EP |
2290149 | Dec 1995 | GB |
2356624 | May 2001 | GB |
2356624 | May 2001 | GB |
2004069568 | Aug 2004 | WO |
2009130528 | Oct 2009 | WO |
2009130718 | Oct 2009 | WO |
2015121818 | Aug 2015 | WO |
2017050358 | Mar 2017 | WO |
Entry |
---|
Machine translation WO2004069568 from espacenet. (Year: 2004). |
Emam et al., “A Monitoring Device of Forklifts Stability Triange”, vol. 43, No. 2, XP002796846, DOI: 10.24874/mvm.2017.43.02.02; Retrieved from Internet: http://oaji.net/articles/2019/766-1557768611.pdf on Jan. 14, 2000. |
Toyota Forklifts, “Toyota material HandlingSystem of Active Stability (SAS)”; Jun. 9, 2017; XP054980153, Retreived from Internet: www.youtube.com/watch?v-yOB7gAwBe6o; retrieved on Jan. 14, 2020. |
Emam et al., “A Monitoring Device of Forklifts Stability Triangle”, vol. 43, No. 2, XP002796846, DOI: 10.24874/mvm.2017.43.02.02; Retrieved from Internet: http://oaji.net/a rtides/2019/766-1557768611. pdf on Jan. 14, 2020. |
Extended European Search Report, EPO Appl. No. 19194545.0 (dated Feb. 10, 2020). |
First Office Action, Chinese Pat. Appl. No. 201910822439.5 (dated Mar. 2, 2022). |
First Office Action, U.S. Appl. No. 17/009,568 (dated Aug. 26, 2022). |
Response to Extended European Search Report, EPO Appl. No. 19194545.0 (dated Sep. 10, 2020). |
Toyota Forklifts, “Toyota Material Handling System of Active Stability (SAS)”; Jun. 9, 2017; XP054980153, Retrieved from Internet: www.youtube.com/watch?v=yOB7gAwBe6o; retrieved on Jan. 14, 2020. |
Response to First Office Action, Chinese Pat. Appl. No. 201910822439.5 (dated Sep. 19, 2022). |
Response to First Office Action, U.S. Appl. No. 17/009,568 (dated Feb. 24, 2023). |
Office Action, European Patent Office, Appl. No. 19194545.0 (dated Mar. 29, 2023). |
Second Office Action, U.S. Appl. No. 17/009,568 (dated Mar. 3, 2023). |
Response to Second Office Action, U.S. Appl. No. 17/009,568 (dated Mar. 31, 2023). |
Second Office Action, Chinese Pat. Appl. No. 201910822439.5 (dated Jan. 19, 2023). |
Response to European Patent Office in EP 19194545.0 (dated Apr. 24, 2023). |
EPO Appl. 19 194 545.0-1017, Communication pursuant to Article 94(3) EPC (Aug. 2, 2023). |
Number | Date | Country | |
---|---|---|---|
20200071144 A1 | Mar 2020 | US |
Number | Date | Country | |
---|---|---|---|
62725879 | Aug 2018 | US |