Automatic vehicle control
The integration of a removable input device and external control systems in multiple-purpose vehicles allows operators to control vehicle functions remotely, addressing the need for frequent entry and exit, thereby simplifying operations.
Patent Information
- Application Number
- CN202210855865.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-07-20
- Filing Date
- 2022-07-19
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2042-07-19
AI Technical Summary
When operating a multipurpose vehicle, the operator needs to frequently enter and exit the vehicle to use internal control devices, resulting in increased task complexity and inconvenient existing control devices when used externally.
Removable input devices and external control devices are provided, allowing operators to operate vehicles outside the vehicle, combining object sensors and vehicle controllers to achieve automatic follow-up and obstacle avoidance functions, and support manual and automatic mode switching.
It improves operational convenience, reduces the complexity of operators operating vehicles outside the vehicle, enhances the vehicle's automation control capabilities, and supports multiple operating modes.
Smart Images

Figure CN115703413B_ABST
Abstract
Description
[0001] Cross - reference to related applications
[0002] This disclosure relates to U.S. Provisional Patent Application No. 63 / 223,863, entitled "Automated Vehicle Control", with docket number PLR - 06 - 29483.01P - US, filed on July 20, 2021, the entire disclosure of which is hereby expressly incorporated by reference. Background Art
[0003] An operator may use a multi - purpose vehicle to perform any one of a variety of tasks, some of which may place the operator outside of the vehicle. For example, a multi - purpose vehicle can be used to carry equipment or collect items. However, the control devices for operating the multi - purpose vehicle are typically located within the vehicle, such that the operator may need to repeatedly leave and re - enter the vehicle during such tasks. Additionally, even in cases where manual control devices are more accessible, using such control devices may introduce additional complexity or difficulty to the task at hand. Summary of the Invention
[0004] In one example, a removable input device for a vehicle is provided. The removable input device includes: a housing adapted to be coupled to the vehicle; a beacon; a prime - mover activation control device; a function input control device; and a device controller configured to receive user input from the prime - mover activation control device and the function input control device, wherein the user input associated with the prime - mover activation control device is configured to start the vehicle, and the user input associated with the function input control device is configured to control a function of the vehicle.
[0005] In another example, a multi - purpose vehicle is provided. The multi - purpose vehicle includes: a frame; a power source supported by the frame; a bed supported by the frame; an operator area having a first set of control devices accessible when the operator is sitting in the operator area; and a second set of control devices separate from the first set of control devices and accessible when the operator is outside of the operator area.
[0006] In another example, another multi - purpose vehicle is provided. The multi - purpose vehicle includes: a frame; a power source supported by the frame; an object sensor supported by the frame; and a vehicle controller configured to: receive an indication to initiate an object - following function for a target; process data from the object sensor to identify the target; and control the power source of the multi - purpose vehicle according to the received indication to cause the multi - purpose vehicle to follow the identified target.
[0007] In yet another example, a method for automatic control of a vehicle is provided. The method includes: receiving an indication to initiate an object following function for a target; processing data from an object sensor of the vehicle to identify the target; and controlling a power source of the vehicle in accordance with the received indication to cause the vehicle to follow the identified target, thereby providing an object following function.
[0008] In yet another example, a method for managing a vehicle under automatic control is provided. The method includes: receiving user input to initiate automatic vehicle control; providing an indication to initiate automatic vehicle control to a vehicle controller of the vehicle; receiving an indication of a detected obstacle from the vehicle controller; updating a display to indicate that the vehicle has encountered the detected obstacle; receiving user input including a manual movement of the vehicle; and providing an indication of the manual movement of the vehicle to the vehicle controller.
[0009] The above and other features of the present invention and the manner of implementing them will become more apparent by referring to the following description of embodiments of the present invention in conjunction with the accompanying drawings, and the present invention itself will be better understood. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 is a perspective view of an exemplary multi-purpose vehicle.
[0011] Figure 2A shows Figure 1 a left side view of the exemplary multi-purpose vehicle of
[0012] Figure 2B shows Figure 1 another left side view of the exemplary multi-purpose vehicle of
[0013] Figure 3 shows Figure 1 a top view of the exemplary multi-purpose vehicle of
[0014] Figure 4 shows Figure 1 a front view of the exemplary multi-purpose vehicle of
[0015] Figure 5 shows Figure 1 a rear view of the exemplary multi-purpose vehicle of
[0016] Figure 6 shows Figure 1 a side view of a portion of the multi-purpose vehicle of , which shows the arrangement of a front differential, a power source, a transmission, and a rear differential.
[0017] Figure 7 shows a front view of an exemplary removable input device for Figure 1 the exemplary multi-purpose vehicle of
[0018] Figure 8 Shows a perspective view of another example removable input device for an example multi - purpose vehicle Figure 1 that is a vehicle part of an example vehicle, a representative view of the removable input device, and an operator device.
[0019] Figure 9 is Figure 1 a vehicle part of an example vehicle, Figures 7 to 8 a representative view of the removable input device, and an operator device.
[0020] Figure 10A Shows an overview diagram of an example method for a vehicle to follow an object according to aspects described herein.
[0021] Figure 10B Shows an overview diagram of an example method for controlling the following behavior of a vehicle.
[0022] Figure 11 Shows an overview diagram of an example method for a vehicle to process voice commands according to aspects described herein.
[0023] Figure 12A Shows an overview diagram of an example method for a vehicle to perform an automatic movement and process detected obstacles according to aspects described herein.
[0024] Figure 12B Shows an overview diagram of an example method for processing detected objects at a removable input device or an operator device.
[0025] Figure 13 Shows an overview diagram of an example user interface for configuring automatic vehicle control according to aspects described herein.
[0026] Figure 14 Shows a schematic diagram of a computing system for implementing aspects of automatic vehicle control, for example, at an operator device.
[0027] In all of the several views, corresponding reference numerals indicate corresponding parts. Unless otherwise noted, the drawings are to scale. Detailed Description
[0028] Various embodiments of the present disclosure will be described in detail with reference to the accompanying drawings, in which in all of the several views, the same reference numerals indicate the same parts and components. Referring to the various embodiments does not limit the scope of the present disclosure, which is limited only by the scope of the appended claims. Additionally, any examples set forth in this specification are not intended to be limiting, but merely illustrate some of the many possible embodiments of the claimed invention.
[0029] Refer to Figures 1 to 6, which shows an illustrative embodiment of a vehicle 100. The illustrated vehicle 100 includes a plurality of ground engaging members 102. Illustratively, the ground engaging members 102 are wheels 104 and associated tires 106. Other example ground engaging members include skis and tracks. In one embodiment, one or more of the wheels may be replaced with tracks, such as the Prospector Pro tracks available from Polaris Industries, Inc., 2100 Highway 55, Medina, Minnesota 55340.
[0030] As described herein, one or more of the ground engaging members 102 are operatively coupled to a power source 130 to provide power for the movement of the vehicle 100. Example power sources include internal combustion engines and electric motors.
[0031] Referring Figure 1 to the illustrated embodiment, a first set of wheels, one on each side of the vehicle 100, generally corresponds to a front axle 108. A second set of wheels, one on each side of the vehicle 100, generally corresponds to a rear axle 110. Although each of the front axle 108 and the rear axle 110 is shown having a single ground engaging member 102 on each side, multiple ground engaging members 102 may be included on each side of the respective front axle 108 and rear axle 110.
[0032] As Figure 1 configured therein, the vehicle 100 is a four-wheel, two-axle vehicle. In one embodiment, one or more modular segments (not shown) may be added to the vehicle 100 to convert the vehicle 100 into a three-axle vehicle, a four-axle vehicle, etc. For example, the modular segment may include a frame coupled to the frame 116 of the vehicle 100 (see Figures 2A to 2B ), which may be supported by ground engaging members associated therewith. Such a frame may be coupled to the frame 116 through a plurality of connection points such that the frame does not rotate relative to the frame 116.
[0033] Vehicle 100 includes an operator area 160 that is typically supported by an operator area portion 126 of frame 116. The operator area 160 includes a seat 161 for one or more passengers to sit on. The operator area 160 also includes a plurality of operator control devices 180 through which an operator can provide input to the control devices of vehicle 100. The control devices 180 include a steering wheel 182 that is rotated by the operator to change the orientation of one or more of the ground-engaging members 102, such as the wheels associated with the front axle 108, so as to steer vehicle 100. In one embodiment, the steering wheel 182 changes the orientation of the wheels of the front axle 108 and the rear axle 110 to provide four-wheel steering. In an example, the control devices 180 also include a first foot pedal and a second foot pedal. The first foot pedal can be actuated by the vehicle operator to control the acceleration and speed of vehicle 100 by controlling the power source 130, and the second foot pedal can be actuated by the operator to decelerate vehicle 100 through the braking system.
[0034] As shown in FIGS. 2 to Figure 4 shown, the control device 180 also includes a shift input control device 164 that is operably coupled to a shiftable transmission of the transmission 132 ( Figure 6 ), to convey whether the shiftable transmission is in a low forward gear, a high forward gear, a reverse gear, a neutral gear, and whether it includes a parking position. Although the shift input control device 164 is shown as a lever, other types of inputs can also be used. The shift input control device 164 is positioned on the right hand side of the steering column 194.
[0035] The control device 180 also includes a parking brake input control device 166, as Figures 3 to 4 shown. The parking brake input control device 166 is operably coupled to the parking brake device of vehicle 100. In one embodiment, the parking brake device is positioned on one of the drive trains 138 and 140. In one embodiment, the master cylinder operably coupled to the parking brake input control device 166 is positioned below the instrument panel body member 162. Although the parking brake input control device 166 is shown as a lever, other types of inputs can also be used. The parking brake input control device 166 is positioned on the left hand side of the steering column 194.
[0036] Referring to Figure 3 , the vehicle operator position 192 on the seat 161 is shown. As Figure 3 shown, the steering column 194 of the steering wheel 182 is centered (arrow 196) left and right of the vehicle operator position 192, as shown by line 198.
[0037] Although example functions have been described with respect to the shift input control device 164 and the parking brake input control device 166, it should be understood that in other examples, such functions may be provided by a single input control device and / or may be removed from the vehicle 100 to provide external control. Additional examples of these aspects will be discussed below with reference to the removable input devices 200 and 250 in Figure 7 and Figure 8 respectively.
[0038] Vehicle 100 is also shown as including object sensors 114. Example sensors include, but are not limited to, cameras (e.g., visible light cameras or infrared cameras), LIDAR (Light Detection and Ranging), radar, or ultrasonic sensors, global positioning system (GPS) sensors, magnetometers (e.g., for measuring relative and / or global magnetic fields), and / or radio devices. For example, each of the object sensors 114 may include an ultra-wideband (UWB) radio such that the position of another device (e.g., an operator device or a removable input device) can be determined. As another example, the object sensors 114 may include one or more infrared and / or visible light cameras such that computer vision techniques can be used to perform object recognition to identify one or more objects around the vehicle 100, or as another example, thermal signatures can be used to identify the operator of the vehicle 100.
[0039] For example, the object sensors 114 may use computer vision and / or machine learning techniques to learn and / or identify objects (e.g., to identify objects and / or classify the identified objects) such that the objects can be tracked, followed, avoided, and / or used for other processing in accordance with the aspects described herein. The distance and / or orientation of the objects relative to the vehicle 100 can be determined, e.g., based on the size and position of a group of one or more pixels associated with the objects in the image data obtained from the object sensors 114. In cases where the object sensors 114 include multiple cameras, image data obtained from different perspectives can be used to improve object detection, depth / distance detection, and / or position detection. For example, a set of anchor points can be identified for each respective perspective, and the set of anchor points can be used to generate a three-dimensional (3D) representation of at least a portion of the objects and / or the environment around the vehicle 100. It should be understood that any of a variety of additional or alternative techniques may be used in other examples, including but not limited to photogrammetry and simultaneous localization and mapping (SLAM).
[0040] In some cases, the object sensor 114 can include a transmitter and a detector. For example, one object sensor 114 can be an infrared light source, and another object sensor 114 can be an infrared detector, such as a camera capable of detecting infrared light. Thus, a target object having a high infrared reflectivity or a specific pattern can be detected by the object sensor 114, enabling the vehicle 100 to identify and follow the target object. For example, the target object can be attached to an operator or another vehicle. As another example, the target object can be part of or otherwise integrated into an article of clothing, such as a vest. The target object can have one or more known dimensions such that the distance between the vehicle 100 and the target object can be determined based on the size of the object captured by the object sensor 114, and the orientation can be determined based on the displacement of the object relative to the center position of the object sensor 114. As another example, multiple cameras can be used to determine the orientation such that the displacement of the object can be determined for each camera and processed accordingly to generate the orientation of the target relative to the vehicle 100.
[0041] Although two object sensors 114 are shown, it should be understood that any number of sensors can be used. Additionally, each of the object sensors 114 need not be the same type of sensor. For example, a camera can be used in combination with a GPS sensor to provide a higher resolution of positioning than obtained by using either sensor type alone. It should also be understood that the object sensor 114 can be positioned at any of a variety of other locations and need not be limited to being positioned on or within the vehicle 100. For example, one or more object sensors can be fixed to the exterior of the vehicle 100 or supported by an unmanned aerial vehicle such as a drone, and so on.
[0042] As Figure 2B shown, the sensor 114 can be positioned on the roof of the vehicle 100 or on the top portion of the roll cage 117. As shown, the roll cage 117 is attached to the frame in front of the operator area 160 and is also attached to the vehicle 100 towards the rear of the operator area 160 such that it extends along at least a portion of the vehicle 100. In an example, an additional structure 118 can be attached to the roll cage 117 to provide protection for the sensor 114 located on top of the vehicle 100.
[0043] Thus, in addition to other examples of such automatic vehicle control, according to aspects described herein, the object sensor 114 can be used to provide an object following function and an obstacle avoidance function. For example, the object sensor 114 can be used to identify and / or track an object that the vehicle 100 should follow (e.g., within a predetermined distance and / or according to a predefined offset distance or angle). As an example, the object sensor 114 can be used to determine the position of an operator device, a removable input device, or a target object (e.g., using one or more visible light cameras, infrared cameras, and / or UWB radios, as well as other sensors), such that the position of the vehicle 100 can be updated relative to the target to maintain a predetermined distance and / or a predetermined orientation as needed. As another example, the object sensor 114 can identify and track one or more other vehicles, such that a "string" of vehicles can be automatically formed and / or the position of the vehicle 110 can be maintained relative to one or more other vehicles. Thus, the data output from the object sensor 114 can be processed to identify objects and / or distinguish human operators, target objects, and / or foreign objects, such as grass, trees, or fences.
[0044] In other cases, the object sensor 114 can identify obstacles in the path of the vehicle 100 (e.g., when the vehicle 100 is operating according to the automatic vehicle control techniques). Thus, manual control of the vehicle 100 can be provided to the operator at least temporarily (e.g., via an operator device or a removable input device), enabling the operator to maneuver the vehicle 100 to avoid the identified obstacles.
[0045] The vehicle 100 is also shown as including a bed 150 having a cargo-carrying surface 152. The cargo-carrying surface 152 can be flat, have a corrugated profile, and / or consist of several parts. In one embodiment, the bed 150 is rigidly coupled to the frame 116. In one embodiment, the bed 150 is rotatably coupled to the frame 116 and can be tilted such that the front portion 154 is higher relative to the rear portion 156. The rear portion 156 includes a tailgate 158, which can be lowered to improve access to the bed 150. The bed 150 also includes a plurality of mounts for receiving expansion holders (not shown), which can couple various attachments to the bed 150. More details of such mounts and expansion holders are provided in U.S. Patent No. 7,055,454, entitled "Vehicle Expansion Holder," filed on July 13, 2004, and issued to Whiting et al., the disclosure of which is hereby expressly incorporated by reference. When modular segments are coupled to the vehicle 100, the bed 150 can be replaced with a longer bed or platform that extends over such modular segments.
[0046] The bed 150 is also depicted as having an external control device 112, which is described in Figure 3Shown in greater detail in. Compared with the control device 180 included in the operator area 160, the external control device 112 is positioned to be accessible when the operator is outside the vehicle 100 (e.g., outside the operator area 160). As shown in the figure, the external control device 112 includes a forward input control device 112A and a reverse input control device 112B. Thus, the operator of the vehicle 100 can actuate the forward input control device 112A to move the vehicle 100 forward, or actuate the reverse input control device 112B to move the vehicle 100 backward, even if the operator is not in the operator area 160.
[0047] Although the external control device 112 is shown as including a forward input control device and a reverse input control device, it should be understood that any of a variety of other input control devices may be used. For example, the external control device 112 may additionally or alternatively include a joystick input control device that is operable to move the vehicle 100 in various directions (e.g., to provide a function similar to that of the steering wheel 182). As another example, the external control device 112 may be located in any of a variety of other positions, or may be removable. For example, the external control device 112 may be removably attached to the bed 150 and may wirelessly control the vehicle 100 such that the external control device 112 can be repositioned to a location convenient for the operator (e.g., the right or left side of the vehicle 100, depending on the task for which the vehicle 100 is being used). As another example, the external control device 112 may have a housing adapted to be removably coupled to the bed 150, such as a housing in one of the holes 113.
[0048] As another example, the external control device 112 may include a handle, lever, or other mechanism outside the vehicle 110 that can be pushed or pulled to control the movement of the vehicle 110. In another example, the external control device 112 may include a tether of adjustable length, where the amount by which the tether has been extended is proportional to the speed of the vehicle, and the angle of the tether can affect the direction of travel of the vehicle 100. In some cases, the tether may be removably attached to the operator or another vehicle (e.g., magnetically or using a detachable snap), causing the vehicle 100 to correspondingly follow the operator, another vehicle, or any one of a variety of other objects.
[0049] Turn to Figure 6, the power source 130, shown as an internal combustion engine, is supported by the frame 116. The power source 130 is shown as an internal combustion engine. In one embodiment, the power source 130 is a multi-fuel engine capable of utilizing various fuels. An exemplary multi-fuel engine capable of utilizing various fuels is disclosed in U.S. Patent Application Serial No. 11 / 445,731, docket number PLR-00-1505.01P, filed on June 2, 2006, the disclosure of which is hereby expressly incorporated by reference. In one embodiment, the power source 130 is a hybrid electric engine. In one embodiment, the power source 130 is an electric motor.
[0050] The power source 130 is coupled to the front differential 134 and the rear differential 136 through a transmission 132 and corresponding drive trains 138 and 140. Like other drive trains mentioned herein, the drive trains 138 and 140 can include multiple components and are not limited to straight axles. For example, the front differential 134 can include two output shafts (not shown), each output shaft coupling a corresponding ground engaging member 102 of the front wheel axle 108 to the front differential 134. In a similar manner, the rear differential 136 includes two output shafts, each output shaft coupling a corresponding ground engaging member 102 of the rear wheel axle 110 to the rear differential 136.
[0051] In one embodiment, the transmission 132 can include a shiftable transmission and a continuously variable transmission (“CVT”). The CVT is coupled to the power source 130 and the shiftable transmission. The shiftable transmission is coupled to the drive train 138, the drive train 138 is coupled to the front differential 134 and the drive train 140, and the drive train 140 is coupled to the rear differential 136. In one embodiment, the shiftable transmission can shift between a high gear for normal forward driving, a low gear for towing, and a reverse gear for reverse driving. In one embodiment, the shiftable transmission further includes a parking setting that locks the output drive of the shiftable transmission from rotating. Exemplary shiftable transmissions and CVTs are disclosed in U.S. Patent 6,725,962 and U.S. Patent 6,978,857, the disclosures of which are hereby expressly incorporated by reference. In other examples, one or more wheel axles (e.g., wheel axle 108 or 110) can be non-powered wheel axles.
[0052] Various configurations of the front differential 134 and the rear differential 136 can be envisioned. Regarding the front differential 134, in one embodiment, the front differential 134 has a first configuration and a second configuration. In the first configuration, power is provided to two ground engaging members 102 of the front wheel axle 108, and in the second configuration, power is provided to one ground engaging member 102 of the front wheel axle 108.
[0053] Regarding the rear differential 136, in one embodiment, the rear differential 136 is a locking differential, wherein power is provided to two ground engaging members 102 of the rear axle 110 via an output shaft. When the rear differential 136 is in a locked configuration, power is provided to both wheels of the rear axle 110. When the rear differential 136 is in an unlocked configuration, power is provided to one wheel of the rear axle 110.
[0054] Additional discussion of the vehicle 100 and related aspects is disclosed in U.S. Patent No. 7,950,486, the disclosure of which is hereby expressly incorporated by reference.
[0055] Figure 7 A front view of an example removable input device 200 is shown. In the example, aspects of the removable input device 200 may be similar to those of the shift input control device 164 and / or the brake input control device 166 discussed above with respect to Figures 1 to 6 For example, a removable input device 200 may be provided in place of the shift input control device 164 and / or the brake input control device 166 and provide similar functionality thereto.
[0056] As shown, the removable input device 200 is removably coupled to the shaft 202. For example, the shaft 202 may include a set of magnets configured to attract a similar but opposite set of magnets of the removable input device 200. As another example, the shaft 202 may include one or more pins configured to be inserted into one or more grooves of the removable input device 200. The grooves of the removable input device 200 may be configured such that the shaft 202 can be disposed within the removable input device 200, after which the removable device 200 can be rotated about the shaft 202 to fix the removable input device 200 in place relative to the shaft 202. It will be appreciated that any of a variety of mechanisms may be used to removably couple the removable input device 200 to the shaft 202. The housing 214 of the removable input device 200 may be formed such that it can be removably coupled to the vehicle (e.g., outside of the operator area when it is detached from the shaft 202). For example, the removable input device 200 may be removably coupled to the bed 150 of the vehicle 100 using one of the holes 113 and used in a remote operation mode.
[0057] The shaft 202 may also include a charging device and / or a communication device for the removable input device 200. As an example, the shaft 202 may include a set of contacts that are electrically coupled to the removable input device 200 when the removable input device 200 is mechanically coupled or "docked" with the shaft 202. The set of contacts may provide power to charge a rechargeable battery of the removable input device 200. The removable input device 200 may include a charging indicator to indicate the charging status associated with the battery (e.g., charge level and whether the battery is charging). As another example, the set of contacts may electrically couple a controller of the removable input device 200 to a controller of the vehicle 100. Thus, when the removable input device 200 is coupled to the shaft 202, the removable input device 200 may communicate with the vehicle 100 using wired communication, and in the case where the removable input device 200 is separated from the shaft 202, the removable input device 200 may use wireless communication.
[0058] In some cases, the removable input device 200 may be wirelessly charged by the shaft 202 and / or may use wireless communication to communicate with the vehicle 100, regardless of whether the removable input device 200 is coupled to the shaft 202. For example, the removable input device 200 and the shaft 202 may each implement a wireless charging technology similar to the Qi wireless power transfer standard. It should be understood that any of a variety of communication and / or charging technologies may be used.
[0059] As shown, the input device 200 may be moved about axes 214, 216, and / or 218. For example, an operator may move the removable input device 200 about one or more of the axes 214, 216, and / or 218 to shift the transmission 132 of the vehicle 100 to a low forward gear, a high forward gear, a reverse gear, a neutral gear, and a parking position (if included), and so on.
[0060] Arrows 212 are provided to indicate that, in other examples, the removable input device 200 may be rotatable (e.g., about axis 214). For example, an operator may rotate the removable input device 200 to select between parking, reverse, neutral, and drive operating modes. As another example, rotation of the removable input device 200 may increase or decrease the brightness of one or more lights of the vehicle 100, control the volume, or enable the operator to select between a low forward gear and a high forward gear, and so on. The behavior of the removable input device 200 may be user-configurable such that the operator may select the behavior associated with rotation and / or movement about the axes 214, 216, and / or 218.
[0061] As shown in the figure, the removable input device 200 further includes a prime mover activation control device 204 and a function input control device 206. The prime mover activation control device 204 can control one or more electrical systems and / or power sources 130 of the vehicle 100. For example, actuating the prime mover activation control device 204 can cause power to be supplied to various controllers of the vehicle 100 (e.g., Figure 9 the controllers 170 to 178 in). Holding the prime mover activation control device 204 can activate the power source 130. For example, the internal combustion engine of the power source 130 can be started via a starter motor, or power can be supplied to one or more electric motors of the power source 130, and so on. In the case where power is supplied to such controllers and / or the power source 130 is activated, actuating the prime mover activation control device 204 can interrupt the power supplied to such controllers and / or can deactivate the power source 130.
[0062] The function input control device 206 is shown to include a forward input control device 208 and a reverse input control device 210. In the example, the function input controller 206 is used to control any one of a variety of functions of the vehicle 100. For example, if the vehicle 100 includes a winch, the forward input control device 208 can be used to pull in a rope or cable, and conversely, the reverse input control device 210 can be used to pay out a rope or cable. As another example, the function input controller 206 can be similar to the external control device 112, such that actuating the forward input control device 208 can cause the vehicle 100 to move forward, while actuating the reverse input control device 112B can cause the vehicle 100 to move backward.
[0063] It can be understood that any one of various additional or alternative functions can be controlled by the function input control device 206. In addition, the function input control device 206 need not be limited to the forward input control device 208 and the reverse input control device 210. For example, the function input control device 206 can additionally or alternatively include a joystick input control device or a touch screen input control device, which is operable to receive operator input indicating any one of various directions (in some examples, different magnitudes). In addition, although the removable input device 200 is shown to include a single function input control device 206, any number of such similar elements can be included in other examples.
[0064] As described above, the behavior of the removable input device 200 (and the prime mover activation control device 204 and the function input control device 206) can be user-configurable. As another example, the behavior can change based on context such that the removable input device 200 has different operating modes (e.g., a docking or coupling operating mode, and a remote operating mode). As an example, when the removable input device 200 is coupled to the pole 202 (e.g., within the operator area 160), the behavior of the prime mover activation control device 204 can be as described above, and the function input control device 206 can control the winch. However, when the removable input device 200 is no longer coupled to the pole 202 (e.g., thereby placing it in the remote mode), the prime mover activation control device 204 can alternatively control one or more lights of the vehicle 100, and the function input control device 206 can alternatively be used to move the vehicle 100. As another example, the prime mover activation control device 204 can be used to remotely start the vehicle 100, and then once the vehicle 100 is in operation, it can provide such alternative functions.
[0065] In addition, similar to the shift control behavior when the removable input device 200 is coupled to the shaft 202 as discussed above, the inertial measurement unit (IMU) of the removable input device 200 can detect movement about the axes 214, 216, and 218. As a result, when in the remote operating mode, even when separated from the shaft 202, moving the removable input device 200 about the axes 214, 216, and / or 218 can provide a similar function. As another example, the IMU of the removable input device 200 can be used to detect user input specifying a travel direction and / or speed. In such a case, the received user input can be used to control the vehicle while the input control device (e.g., the prime mover activation control device 204) is held, or as another example, this input mode can be switched based on the user input.
[0066] The removable input device 200 is also shown as including a beacon 220, which is shown in dashed lines to indicate that it may be embedded within the removable input device 200. For example, the removable input device 200 may include a radio frequency identification (RFID) tag or a radio transmitter, such as a UWB radio. Accordingly, the position of the removable input device 200 relative to the vehicle 100 may be determined by the object sensor 114 in combination with the beacon 220. As an example, the RFID tag may generate a modulated signal in response to an incoming signal, and the modulated signal may be received by the object sensor 114. The vehicle 100 may then process the modulated signal to generate a distance and / or orientation based on differential signal strength. As another example, machine learning and / or computer vision techniques may be used to process image data from one or more visible light and / or infrared cameras to determine the position of the removable input device 200 relative to the vehicle 100 accordingly.
[0067] As a result, the removable input device 200 may be used to provide the object following function described herein, enabling the vehicle 100 to follow the removable input device 200 in accordance with aspects of the present disclosure. In such a case, the input control devices of the removable input device 200 (e.g., the prime mover activation control device 204 or the function input control device 206) may enable an operator to switch between manual operation (e.g., via the control devices 112, 180, and / or those provided by the removable input device 200) and automatic operation. In the case where the vehicle 100 detects an object in its path, the removable input device 200 may be used to manually control the vehicle 100 around the detected object, after which automatic operation may resume. In such a case, an indication (e.g., a visual indication, an audible indication, and / or a physical indication such as vibration) may be provided to the operator to remind the operator that manual control may be used to maneuver the vehicle 100 around the detected object and resume automatic operation accordingly.
[0068] The beacon 220 of the removable input device 200 may also be used to locate the removable input device 200. For example, an operator device (e.g., similarly including a UWB radio) may detect the beacon 220, or as another example, an audible or visual indication that changes as the operator approaches the removable input device 200 may be provided (e.g., by the operator device or the vehicle 100).
[0069] Figure 8 An example multi - purpose vehicle 100 is shown for Figure 1 Another example removable input device 250 is shown in a perspective view. Aspects of the removable input device 250 are similar to those of the removable input device 200 discussed above with reference to Figure 7 and thus need not be described in detail below.
[0070] As shown, the removable input device 250 includes a switch 254 and a clip 256. Similar to the prime mover activation control device 204, the switch 254 can control various aspects of the vehicle 100. For example, the switch 254 can switch between manual and automatic operation of the vehicle 100. In automatic operation, as described above, the vehicle 100 can use a beacon (not shown) of the removable input device 200 in combination with the object sensor 114 to determine the position of the removable input device 250. As another example, the housing of the removable device 250 can include a pattern that can be recognized by the object sensor 114 using computer vision techniques. The operator can use the clip 256 to attach the removable input device 250 to himself or herself, or to any one of a variety of objects. For example, the removable input device 250 can be clipped to the operator's belt or other clothing.
[0071] Thus, it will be understood that any of a variety of removable input devices can be used in accordance with aspects of the present disclosure. For example, although the removable input device 200 is described as being similar to the input control devices 164 and 166, the removable input device can be similar to the steering wheel 182. For example, such a steering wheel can similarly be removed from the vehicle 100, can include a beacon or visual target, and can provide an operation mode similar to that described above for the removable input devices 200 and 250. The removable input device can enable an operator to operate the vehicle 100 while outside the vehicle, and in some examples, can further limit operation of the vehicle 100 to other individuals (e.g., those who do not currently possess the removable input device) by physically removing the control device from the operator area 160.
[0072] Figure 9 is Figure 1 of the vehicle 100, Figures 7 to 8 representative views of example components of the removable input devices 200 and 250 and the operator device 300. The vehicle 100 is shown as including an instrument cluster 168 that provides an operator interface and includes at least one input device and at least one output device. Example input devices include levers, buttons, switches, soft keys, and other suitable input devices. Example output devices include lights, displays, audio devices, tactile devices, and other suitable output devices. The vehicle controller 170 can provide information for display and / or receive user input that may affect the operation of the vehicle 100 and / or information presented via the instrument cluster 168 via the instrument cluster 168, and so on.
[0073] As shown in the figure, the vehicle controller 170 is shown as including several controllers. These controllers can each be a single device or a distributed device, or one or more of these controllers can together be part of a single device or a distributed device. The functions of these controllers can be performed by hardware and / or as computer instructions on a non-transitory computer-readable storage medium.
[0074] In one embodiment, the vehicle controller 170 includes at least two independent controllers that communicate via a network. In one embodiment, the network is a CAN network. In one embodiment, the CAN network is implemented according to the J1939 protocol. Details of an example CAN network are disclosed in U.S. Patent Application Serial No. 11 / 218,163, filed on September 1, 2005, the disclosure of which is hereby expressly incorporated by reference. Of course, any suitable type of network or data bus can be used in place of the CAN network. In one embodiment, two-wire serial communication is used.
[0075] The controller 170 includes a brake / traction controller 172 that controls the operation of the brake / traction system 142. In one example, the brake / traction controller 172 controls the brake / traction system 142 of the vehicle 100, such as the actuation pressure and frequency of one or more brake calipers of the vehicle 100. For example, the brake / traction controller 172 can receive user input via an external control device 112 and control the brake / tracking system 142 accordingly. In addition, the brake / traction controller 172 monitors a plurality of sensors. Example sensors include a vehicle speed sensor that monitors track speed and an engine RPM (revolutions per minute) sensor. In one embodiment, the brake / traction system 142 includes an anti-lock brake. In one embodiment, the brake / traction system 142 includes active descent control and / or engine braking. In one embodiment, the brake / traction system 142 includes a braking device and, in some embodiments, an independent parking braking device.
[0076] The controller 170 further includes a power steering controller 174 that controls the operation of the steering system 144. In one example, the power steering controller 174 controls the amount of assistance provided by the power steering unit of the vehicle 100. For example, the power steering controller 174 can receive user input via an external control device 112 and control the power steering system 144 accordingly. In addition, the power steering controller 174 monitors a plurality of sensors. Example sensors are provided in U.S. Patent Application Serial No. 12 / 135,107, entitled "Vehicle," with docket number PLR-06-22542.02P, assigned to the assignee of the present application, the disclosure of which is hereby expressly incorporated by reference.
[0077] The controller 170 also includes a powertrain controller 176 that controls the operation of the powertrain 146. For example, the powertrain 146 can include a power source 130, a transmission 132, and at least one of differentials 134 and 136. In one example, the power source 130 is an internal combustion engine, and the powertrain controller 176 controls fuel supply, spark supply, engine performance, vehicle reverse operation, locking differentials, all-wheel drive, ignition timing, power distribution, and transmission control. For example, the powertrain controller 176 can receive user input via the external control device 112 and control the powertrain 146 accordingly. In addition, the powertrain controller 176 monitors a plurality of sensors. Example sensors include a temperature sensor (which monitors the temperature of the coolant circulating through the engine), a throttle position sensor (TPS), an exhaust gas temperature sensor (EGT), a crankshaft position sensor (CPS), a knock sensor (DET), a plenum pressure sensor, an intake air temperature sensor, and other parameters required to control engine performance.
[0078] The controller 170 also includes a network controller 178 that controls communication between the vehicle 100 and other devices (e.g., the removable input device 200 and the operator device 300) via the network 190. For example, the network 190 can include a local area network, a peer-to-peer network, the Internet, or any one of a variety of other networks. In one embodiment, the network controller 178 of the vehicle 100 communicates with a paired device via the network 190. An example wireless network is a radio frequency network that utilizes the Bluetooth protocol. In this example, the network system 148 can include a radio frequency antenna. The network controller 178 controls the pairing of the device with the vehicle 100 and the communication between the vehicle 100 and such a remote device. Example remote devices are the removable input device 200 and / or the operator device 300 described herein. It should be understood that any one of a variety of network technologies can be used, and although one example network 190 is shown, any number of networks and associated technologies can be used. For example, the network system 148 can include a cellular antenna, a satellite antenna, and / or one or more components for wired communication.
[0079] The vehicle controller 170 also includes an autonomous movement controller 175. According to aspects described herein, the autonomous movement controller 175 can process the data output from the object sensor 114 to provide an object following function and an obstacle avoidance function. For example, the autonomous movement controller 175 can process such data output to perform object recognition using computer vision techniques or determine the distance and / or orientation of a target as described above. Thus, the autonomous movement controller 175 can communicate with any one of the various other controllers 172, 174, 176, and / or 178 to control the systems 142 to 148 of the vehicle 100.
[0080] In some cases, the autonomous movement controller 175 verifies the accuracy of the determined distance and / or orientation. For example, in the case where a UWB radio signal passes through a person or other object, such a determination generated using the data output from the UWB radio may be inaccurate. Thus, the autonomous movement controller 175 may evaluate the distance and / or orientation determination based on the data output from additional sensors or using rules and / or machine learning techniques (e.g., a sudden or unexpectedly large change in distance and / or orientation may instead be determined to indicate a blocked radio signal). As another example, the autonomous movement controller 175 uses the data output from any one of a variety of other sensors to perform such verification. For example, cameras and computer vision techniques may be used.
[0081] The autonomous movement controller 175 may provide and receive any one of a variety of indications from a removable input device or from an operator device. For example, the autonomous movement controller 175 may provide an indication of a detected obstacle. Example indications that may be received include, but are not limited to, an indication to begin autonomous operation (e.g., operate according to the disclosed object tracking techniques or according to a predetermined path or specific location), an indication to end autonomous operation, and / or an indication that includes a manual input, which may be transmitted to the controllers 172, 174, 176, and / or 178 to avoid the detected obstacle. Such an indication may be provided to and received from the network controller 178. For example, the network controller 178 may communicate with the removable input device 200 and / or the operator device 300 via the network 190.
[0082] The autonomous movement controller 175 may detect any one of a variety of other situations in which autonomous vehicle control should stop or be temporarily aborted. For example, the autonomous movement controller 175 may determine that the input torque on the steering wheel 182 exceeds a predetermined threshold (e.g., may be determined based on information from the power steering controller 174). As another example, the autonomous movement controller 175 may determine that the brake input exceeds a predetermined threshold (e.g., may be determined based on information from the brake / traction controller 172). As another example, the autonomous movement controller 175 may determine that the throttle input exceeds a predetermined threshold (e.g., may be determined based on information from the power system controller 176). Although example instances are described herein, it should be understood that the autonomous movement controller 175 may identify any one of a variety of alternative or additional such instances to terminate or temporarily abort autonomous vehicle control in accordance with the aspects described herein.
[0083] In some cases, the autonomous movement controller 175 processes voice inputs to control the vehicle 100 accordingly. For example, voice inputs can be received via the instrument cluster 168 (which can include one or more microphones, for example). As another example, voice inputs can be received from the removable input device 200 and / or the operator device 300. The autonomous movement controller 175 can apply natural language processing techniques to generate commands based on the received voice inputs. In some cases, the autonomous movement controller 175 can process the voice inputs, or in other cases, at least a portion of the voice inputs can be provided to another computing device for processing (such as the operator device 300 or another computing device accessible via the network 190). In other examples, another computing device can process the voice inputs instead of receiving the voice inputs, such that the autonomous movement controller 175 can alternatively receive commands. For example, a virtual assistant "skill" can process the voice inputs provided by the operator, and the resulting commands can be received by the autonomous movement controller 175 accordingly.
[0084] The autonomous movement controller 175 can determine the type of the received commands such that the autonomous movement controller 175 indicates the appropriate controllers 172, 174, 176, and / or 178 based on the received commands. Example commands include, but are not limited to, instructions to move a specific distance to a specific location at a specific speed and / or in a specific direction using a specific gear, along a predetermined path (such as "start the ignition", "move forward five feet", "switch the transmission to high gear", "drive to the house", "park in the shed", or "deliver tools to waypoint five"). As another example, commands to control vehicle functions can be received (such as "turn on the main light bar", "turn off the headlights", "dim the main light bar to fifty percent", "turn on the sprayer", "increase the sprayer flow rate by ten percent", "retract the boom", "turn off the left boom", "turn on the spreader", "increase the spreader speed by ten percent", "dump the hopper", or "return the hopper to its original position"). Additionally, commands to control the object following function can be received (such as "follow me six feet behind" or "follow behind my right hip"). Any of various monitoring commands can also be received (such as "remind me if the moving speed exceeds 10 miles per hour" or "notify me if leaving geofence one"). In some cases, commands to request information associated with the vehicle 100 can be received such that the autonomous movement controller 175 can query the controllers 172, 174, 176, and / or 178 for the requested information and provide the requested information in response to the received commands.
[0085] As a result of a user pressing and / or holding an input control device (e.g., a physical button or a user interface element), voice input may be received. As another example, voice input may be received as a result of recognizing a wake word or phrase (e.g., "Hey, vehicle,..."). In some cases, the automated movement controller 175 may receive an indication that the input control device has been pressed and / or held in order to cause the vehicle 100 to execute a command. For example, the input control device may enable an operator to cause the vehicle 100 to operate automatically, even after an obstacle has been detected, or as another example, as long as the input control device is held, the vehicle 100 may execute a command. In such a case, when the input control device is no longer held, the automated movement controller 175 may provide an indication to one or more of the controllers 172, 174, and / or 176 to stop the vehicle 100 and / or apply brakes.
[0086] In Figure 9 it, the removable input device 200 is shown to include a device controller 222. In the example, the device controller 222 processes inputs received from the prime mover activation control device 204, the function input control device 206, and / or detected movement of the removable input device 200 (e.g., movement about axes 214, 216, and / or 218, and rotation along arrow 212, among other examples). As described above, the device controller 222 may also control charging of the battery of the removable input device 200 and transmit the processed inputs to the vehicle controller 170 using wireless and / or wired communication (e.g., via network 190 or CAN bus). Additionally, the device controller 222 may process received inputs differently depending on the operation mode (e.g., docked or remote), such that different indications may be provided to the vehicle controller 170 accordingly. In other cases, such processing may alternatively be performed by the vehicle controller 170 such that the device controller 222 provides the same or similar indications regardless of the operation mode. In some cases, the beacon 220 communicates with the device controller 222 to facilitate object detection by the object sensor 114. For example, the device controller 222 may receive an indication of a signal emitted by the object sensor 114 such that the device controller 222 may provide an indication of a response signal to be generated by the beacon 220. In other examples, indications associated with the received signal may be provided to the vehicle 110 via the network 190.
[0087] Figure 9Also shown as including an operator device 300. The operator device 300 can be any of a variety of computing devices, including but not limited to a mobile computing device, a tablet computing device, or a laptop computing device. As shown, the operator device 300 includes a remote mobile application 302. An operator of the operator device 300 can use the remote mobile application 302 to control various aspects of the automatic vehicle control techniques described herein (e.g., via network 190). For example, the remote mobile application 302 can enable an operator to configure an object following function, such as specifying a distance and / or orientation to follow an object. As another example, the remote mobile application 302 can control any of a variety of other functions, similar to the techniques discussed above related to voice commands and / or the removable input device 200. Additionally, the remote mobile application 302 can receive and / or process voice input, which can be provided to the automatic movement controller 175 accordingly. Below, reference is made to Figure 13 discuss example user interface aspects of the remote mobile application 302.
[0088] Figure 10A A general overview diagram of an example method 400 for a vehicle to follow an object according to aspects described herein is shown. In the example, aspects of the method 400 are performed by an automatic movement controller, such as by Figures 1 to 9 the automatic movement controller 175 of the vehicle 100 discussed in
[0089] Method 400 begins at operation 402, where an indication to initiate an object following function is received. In the example, the indication is received from a removable input device. For example, the indication can be received as a result of a user actuating the prime mover activation control device 204 of the removable input device 200 or the switch 254 of the removable input device 250, as previously discussed with reference to Figure 7 and Figure 8 respectively. As another example, the indication can be received from an operator device, which can be generated by the remote mobile application 302 of the operator device 300 in Figure 9 . In some cases, the indication can include control information, such as an indication of a target to follow, or as another example, a distance and / or orientation to follow the target. As another example, the indication can specify another vehicle to follow. Thus, it can be understood that the target can be any one of a removable input device, an operator device, a target object, or various other targets.
[0090] The process proceeds to operation 404, where the position of the target is determined. For example, one or more object sensors (e.g., object sensor 114) can be used to determine the target relative to the vehicle (e.g., Figures 1 to 9the position of the vehicle 100). In some cases, the absolute position of the target is determined, and the absolute position of the target can be compared with the absolute position of the vehicle. For example, at operation 402, GPS data may have been received as part of the indication, and / or can be requested from the target or otherwise accessed (e.g., via Figure 9 the network 190) in. Thus, the target GPS data can be processed relative to the vehicle GPS data. In some cases, operation 404 includes verifying the determined target position, such as using any of a variety of other types of sensor data, based on one or more machine learning models, and / or using a set of rules, etc.
[0091] At determination 406, it is determined whether to update the vehicle position. For example, the determination can include evaluating the target position (e.g., as determined at operation 404) against control information (e.g., as received at operation 402) to determine whether the distance and / or bearing between the vehicle and the target meet the distance and / or bearing specified by the control information. In some cases, the evaluation is performed based on one or more predetermined thresholds. For example, if the current distance between the vehicle and the target is different from the specified distance within a predetermined distance threshold, it can be determined not to update the vehicle position. Similarly, if the current bearing of the vehicle relative to the target is different from the specified bearing within a predetermined bearing threshold, it can be determined not to update the vehicle position. Although example position determination and evaluation techniques have been described, it will be understood that any of a variety of other techniques can be used in accordance with the aspects described herein.
[0092] If it is determined to update the vehicle position, the process branches “yes” to operation 408, where an instruction to move the vehicle is generated. For example, the instruction can include an indication to control the powertrain (e.g., Figure 9 the powertrain 146) in to cause the vehicle to move a certain distance. Operation 408 can include providing an indication to control the steering system (e.g., Figure 9 the steering system 144) in order to control the direction of travel. Operation 408 can include providing an indication to slow down the vehicle, such as can be provided to the braking / traction system (e.g., Figure 9 the braking / traction system 142) in. Thus, operation 408 can include providing an indication to any of a variety of controllers, such as Figure 9 the controllers 172, 174, 176, and / or 178 in. In some cases, operation 408 includes providing an indication of the absolute or relative vehicle position, which can be received by the operator device and used to update the associated display accordingly. The process then proceeds to determination 410, which will be discussed in detail below.
[0093] However, if instead it is determined at decision 406 that the vehicle position is not to be updated, the process alternatively branches "No" to decision 410, where it is determined whether there is an indication to change the following behavior. For example, an indication can be received from a removable input device or an operator device, similar to the aspects discussed above with respect to operation 402. The indication can update the control information, thereby changing the distance, orientation, and / or target used for the object following function.
[0094] If it is determined that there is no indication to change the following behavior, the process branches "No" and returns to operation 404, where the position of the target is determined as described above. Thus, operations 408 to 410 can form a feedback loop, where the position of the target is determined and evaluated, while the vehicle position is continuously updated as needed. Thus, it will be understood that operation 408 need not include the same instructions and, in some cases, can include instructions that vary depending on the determined target position and whether it is determined to update the vehicle position. For example, the first iteration of operation 408 can cause the vehicle to accelerate to a certain speed, the second iteration of operation 408 can cause the vehicle to adjust its steering, and the third iteration of operation 408 can cause the vehicle to brake. As another example, if the target is moving at a substantially constant speed, subsequent iterations of operation 408 can include performing smaller throttle and / or steering adjustments.
[0095] However, if it is determined that there is an indication to change the following behavior, the process branches "Yes" to decision 412, where it is determined whether the indication is to end the object following function. If it is determined that the indication is to end the object following function, the process branches "Yes" to operation 416, where manual vehicle operation is resumed. For example, the vehicle can stop (e.g., by providing an indication to the brake / traction controller and / or the powertrain controller (such as the controllers 172 and 176 in Figure 9 ). As another example, an indication can be provided to operate based on operator input rather than automatic input. For example, if the operator controls the throttle at a level lower than the level specified as a result of operation 408, operation 416 can cause the use of the operator-specified level. The process terminates at operation 416.
[0096] However, if it is determined that the object following function is not to be ended, the process alternatively branches "No" to operation 414, where the following behavior is updated. The process then returns to operation 404, where, according to the disclosed object following function, the process can cycle during the duration of the autonomous vehicle control as described above. The process ultimately terminates at operation 416.
[0097] Figure 10BFIG. shows an overview of an exemplary method 450 for controlling a following behavior of a vehicle. In the example, aspects of method 450 are performed by a removable input device (e.g., removable input device 200 or 250 as discussed above with reference to Figures 1 to 9 ), or an operator device (e.g., operator device 300).
[0098] Method 450 begins at operation 452, where a user input to initiate an object following function is received. For example, the user input may include the user activating the prime mover activation control device 204 of the removable input device 200 or the switch 254 of the removable input device 250, as discussed above with reference to Figure 7 and Figure 8 respectively. As another example, an indication may be received from the operator device, and the indication may be generated by the remote movement application 302 of the operator device 300 in Figure 9 . In some cases, the user input includes an indication of a distance, orientation, and / or target to be followed by the vehicle.
[0099] The process proceeds to operation 454, where an indication to initiate the object following function is provided. For example, the indication may be transmitted to the vehicle via a network (e.g., network 190 in Figure 9 ). As described above, the indication may include control information associated with the distance, orientation, and / or target specified by the user.
[0100] At operation 456, the display may be updated to indicate that the object following behavior is active. In some cases, the display may include the position of the vehicle relative to the target. In other cases, operation 456 includes using an indicator, such as a light, to indicate that the object following function is active. For example, an indicator of a removable input device (e.g., removable input device 200 or 250 in Figure 7 and Figure 8 respectively) may be used.
[0101] The process proceeds to operation 458, where a vehicle position update is received. For example, the update may include the relative or absolute position of the vehicle, causing the process to return to operation 456 to update the display accordingly. Operations 456 and 458 are shown with dashed boxes to indicate that in some examples, operations 456 and / or 458 may be omitted. For example, in some cases, the display of the vehicle position may not be updated, or as another example, the device may not include a display or other indicator to indicate that the object following behavior is active.
[0102] At operation 460, user input is received to update the following behavior. For example, the user input may include an indication to end the object following function, or as another example, an update to distance, orientation, and / or target may be received. Thus, at operation 462, an indication of the updated following behavior is provided.
[0103] At determination 464, it is determined whether the input is to end the object following function. If the input is not to end the object following function, the process branches "no" and returns to operation 456 (or, in some cases, operation 460), such that the process can loop while the vehicle is operating under autonomous vehicle control according to the disclosed object following function. However, if the input is to end the object following function, the process alternatively branches "yes" and ends at operation 466.
[0104] Figure 11 An overview diagram of an example method 500 for a vehicle to process voice commands in accordance with aspects described herein is shown. In the example, aspects of method 500 are performed by an autonomous movement controller, such as Figures 1 to 9 the autonomous movement controller 175 of vehicle 100 discussed in
[0105] Method 500 begins at operation 502, where a voice input is received. For example, the voice input may be received from a microphone of a vehicle (e.g., Figures 1 to 9 vehicle 100 in Figure 7 ), from a removable input device (e.g., removable input device 200 or 250 in Figure 8 and Figure 9 ), or from an operator device (e.g., operator device 300 in
[0106] At operation 504, the voice input is processed to determine the command associated with the voice input. For example, natural language processing techniques may be applied, or the voice input may be transmitted to another computing device for processing. It will be understood that in other examples, operations 502 and 504 may alternatively include receiving a command such that the voice input has already been processed (e.g., as a skill of a virtual assistant, as described above). Additionally, while examples are described herein with respect to voice input, it will be understood that any of a variety of other input types may be processed in accordance with aspects of the present disclosure. For example, text input or video input may be processed similarly.
[0107] At determination 506, the type of the command is determined. For example, the rule hierarchy can specify the operations that can be performed, such that the segments of the hierarchy associated with the command can be identified accordingly. If it is determined that the type of the command is related to a vehicle function, the process branches "function" to operation 508, where the associated function is determined. For example, matching rules associated with the command can be identified in the rule hierarchy, such that at operation 510 an indication can be provided to the appropriate vehicle controller (e.g., Figure 9 controllers 170, 172, 174, 176, and / or 178 in
[0108] However, if it is determined that the type of the command is related to vehicle monitoring, the process alternatively branches "monitoring" to operation 514, where the vehicle behavior associated with the command is determined. For example, matching rules associated with the command can be identified in the rule hierarchy, such that at operation 516 a monitoring rule can be generated accordingly.
[0109] If alternatively it is determined that the type of the command is related to vehicle movement, the process turns to the "movement" branch to operation 518, where the requested movement is determined. In some cases, operation 518 includes identifying the association between a location alias (e.g., home) and a geographical location (e.g., an address, a set of coordinates, and / or a predefined travel path). The process proceeds to operation 520, where an indication is provided to the appropriate vehicle controller (e.g., Figure 9 controllers 170, 172, 174, 176, and / or 178 in
[0110] The process finally proceeds to operation 512 (e.g., from operation 510, 516, or 520), where feedback is generated. In an example, the feedback includes an indication of whether the command was executed successfully or unsuccessfully. In other examples, the feedback includes an indication of the monitored behavior or status of a movement command. Although example commands and associated operations are described herein, it will be understood that any of a variety of such commands and resultant operations can be used in accordance with the present disclosure. The process terminates at operation 512.
[0111] Figure 12A An overview diagram of an example method 600 for a vehicle to perform autonomous movement and process detected obstacles in accordance with aspects described herein is shown. In an example, aspects of method 600 are performed by an autonomous movement controller, such as Figures 1 to 9 the autonomous movement controller 175 of vehicle 100 discussed in
[0112] Method 600 begins at operation 602, where an indication to initiate autonomous movement is received. For example, the indication can be to initiate an object following function (e.g., as described above with respect to Figure 10Adiscussed) or can be for navigating to a location or along a predefined path (e.g., as discussed above with respect to Figure 11 discussed).
[0113] The process proceeds to operation 604, where the vehicle moves according to the specified automatic movement. For example, aspects of operations 408 and / or 520 in Figure 10A and Figure 11 can be performed respectively.
[0114] At determination 608, it is determined whether an obstacle is detected. For example, an obstacle can be detected by one or more object sensors, such as the object sensor 114 of vehicle 100 discussed above with respect to Figures 1 to 9 If it is determined that no obstacle is detected, the process branches "No" to operation 604, where the automatic vehicle movement continues according to the aspects described herein.
[0115] However, if it is determined that an obstacle has been detected, the process alternatively branches "Yes" to operation 610, where an indication of the detected obstacle is provided. In some cases, the indication includes information associated with the object, such as distance, size, or image data. The indication can be provided to a removable input device (e.g., the removable input device 200 or 250 in Figure 7 and Figure 8 respectively) or an operator device (e.g., the operator device 300 in Figure 9 ), etc.
[0116] At operation 612, a manual movement instruction is received. For example, the manual movement instruction can include an indication regarding the direction of travel and / or the speed of travel, etc. Thus, at operation 614, the vehicle is moved according to the received manual movement instruction. For example, an indication based on the received manual movement instruction can be provided to one or more vehicle controllers (e.g., controllers 170, 172, 174, 176, and / or 178).
[0117] At determination 616, it is determined whether to resume automatic movement. For example, the determination can include determining that the identified obstacle no longer obstructs the vehicle, the vehicle has returned to a predefined path, and / or an indication to resume automatic operation has been received. If it is not determined to resume automatic movement, the process branches "No" to operation 612, where the manual control of the vehicle continues as described above. However, if alternatively it is determined to resume automatic movement, the process branches "Yes" to operation 604 and proceeds as described above.
[0118] Figure 12BFIG. shows an overview of an example method 650 for processing detected objects at a removable input device or operator device. For example, aspects of method 650 are performed by a removable input device (e.g., the removable input device 200 or 250 discussed above with reference to Figures 1 to 9 ), or an operator device (e.g., operator device 300).
[0119] Method 650 begins at operation 652, where an indication to initiate autonomous movement is provided. For example, operation 652 may include performing aspects similar to those of operation 452 discussed above with reference to Figure 10B ), or the indication may include providing a voice command, etc.
[0120] The process proceeds to operation 654, where an indication of a detected obstacle is received. The indication may be received as a result of performing aspects of operation 610 discussed above with reference to Figure 12A . In an example, the indication includes information associated with the obstacle, such as distance, size, or image data. Thus, at operation 656, a display associated with the obstacle is generated. For example, the display may include the obstacle information received at operation 656. In some cases, the display includes a substantially simultaneous image stream from the vehicle, allowing the operator to observe the vehicle's environment. In other examples, operation 656 includes using indicators, such as lights, speakers, or vibration motors, to provide the operator with an indication that an obstacle has been encountered.
[0121] At operation 658, user input is received to control the vehicle. For example, the user input may include interaction with user interface elements, such as may be displayed by a remote mobile application (such as Figure 9 the remote mobile application 302 of the operator device 300). As another example, the user input may include actuation of any of a variety of input control devices, as discussed above with reference to the removable input devices 200 and 250 in Figure 7 and Figure 8 respectively. Thus, at operation 660, a manual movement instruction is provided. In some cases, the manual movement instruction includes the received user input (e.g., this may be the case when using a removable input device), such that the user input can be processed by a vehicle controller of the vehicle (e.g., Figure 9 the autonomous movement controller 175). In other examples, the movement instruction includes movement instructions, such as specifying a travel speed and / or orientation. Thus, it should be understood that any of a variety of manual movement instructions may be used in accordance with the aspects described herein. As shown, when an obstacle impedes the vehicle, the process may loop between operations 658 and 660.
[0122] The process can eventually proceed to operation 662, where an indication to resume autonomous movement is provided. The indication can be provided based on received user input, or as another example, user input may not have been received within a predetermined amount of time, such that manual input control times out and the vehicle returns to autonomous control. Operation 662 is shown with a dashed box to indicate that in other examples, operation 662 can be omitted, which may be the case when the vehicle automatically determines to resume autonomous movement. Thus, method 650 terminates at operation 662, or in other examples, terminates at operation 660.
[0123] Figure 13 An overview diagram of an example user interface 700 for configuring autonomous vehicle control in accordance with aspects described herein is shown. For example, user interface 800 can be generated as part of the remote movement application 302 of the operator device 300 discussed above with reference to Figure 9 discussed.
[0124] As shown, user interface 400 includes a vehicle element 702, a distance indicator 704, a target element 706, an azimuth indicator 708, and an operation indicator 710. In an example, vehicle element 702 includes an indication of the vehicle currently being controlled by the remote movement application (e.g., vehicle 100 discussed above with reference to Figures 1 to 9 discussed). As another example, vehicle element 702 can include one or more images received from the vehicle (e.g., that can be captured by the object sensor 114 of vehicle 100), or can include a substantially simultaneous image stream from the vehicle, and so on.
[0125] Distance indicator 704 can receive user input to adjust the distance at which the vehicle follows a target (e.g., the target as represented by target element 706). For example, the user can slide distance indicator 704 closer to or farther from target element 706, thereby indicating a shorter or longer following distance, respectively. In other examples, actuating distance indicator 704 can cause a set of display options to be presented from which the user can select a distance. As another example, the user can type in a distance or can provide an input specifying that the vehicle should maintain its current distance.
[0126] The orientation indicator 708 can receive user input to adjust the orientation of the vehicle following the target. For example, the user can slide the orientation indicator 708 closer to or farther from the target element 706 to indicate a preferred orientation. In other examples, actuating the orientation indicator 708 can cause a set of display options to be presented from which the user can select an orientation. As another example, the user can specify an orientation or can provide an input specifying that the vehicle should maintain its current orientation relative to the target. In other cases, the target element 706 can be moved (e.g., along the arrow indicated by the orientation indicator 708), thereby changing the orientation in which the vehicle will follow the target. The user can actuate the target element 706 to select the target for the vehicle to follow.
[0127] The operation indicator 710 provides an indication as to whether the object following function is currently active (e.g., “enabled” versus “disabled”). In some cases, the user can actuate the operation indicator 710 to enable or disable the automatic vehicle control, or as another example, in accordance with aspects described herein, the object following function can be automatically paused or disabled such that the operation indicator 710 can be updated to reflect that the object following function is “disabled”.
[0128] Figure 14 A schematic diagram of a computing system 900 for implementing aspects of automatic vehicle control in accordance with aspects described herein is shown. For example, some or all of the functionality of the vehicle controller 170, removable input device 200, and / or operating device 300 can be performed by a computing system having components similar to those of computing system 900. This schematic diagram is merely an example and should not unduly limit the scope of the claims. Those of ordinary skill in the art will recognize many variations, alternatives, and modifications.
[0129] The computing system 900 includes a bus 902 or other communication mechanism for passing information between a processor 904, a display 906, a cursor control component 908, an input device 910, a main memory 912, a read-only memory (ROM) 914, a storage unit 916, and / or a network interface 918. In some examples, the bus 902 is coupled to the processor 904, the display 906, the cursor control component 908, the input device 910, the main memory 912, the read-only memory (ROM) 914, the storage unit 916, and / or the network interface 918. And, in certain examples, the network interface 918 is coupled to a network 920 (e.g., Figure 9 network 190 in
[0130] In some examples, processor 904 includes one or more general-purpose microprocessors. In some examples, main memory 912 (e.g., random access memory (RAM), cache, and / or other dynamic storage devices) is configured to store information and instructions to be executed by processor 904. In certain examples, main memory 912 is configured to store temporary variables or other intermediate information during execution of instructions to be executed by processor 904. For example, when stored in storage unit 916 accessible to processor 904, the instructions cause computing system 900 to be a special-purpose machine customized to perform the operations specified in the instructions (e.g., components 172, 174, 175, 176, 178, 222, and / or 302). In some examples, ROM 914 is configured to store static information and instructions for processor 904. In certain examples, storage unit 916 (e.g., a magnetic disk, an optical disk, or a flash drive) is configured to store information and instructions.
[0131] Accordingly, computing system 900 may include at least one form of computer-readable medium. A computer-readable medium may be any available medium accessible by processor 904 or other device. For example, a computer-readable medium may include computer storage media and communication media. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media may not include communication media.
[0132] In some embodiments, display 906 (e.g., a cathode ray tube (CRT), an LCD display, or a touch screen) is configured to display information to a user of computing system 900. In some examples, input device 910 (e.g., alphanumeric keys and other keys) is configured to convey information and commands to processor 904. For example, cursor control device 908 (e.g., a mouse, a trackball, or cursor direction keys) is configured to convey additional information and commands to processor 904 (e.g., to control cursor movement on display 906).
[0133] The following clauses are provided as example aspects of the disclosed subject matter:
[0134] 1. A removable input device for a vehicle, comprising: a housing adapted to be coupled to the vehicle; a beacon; a prime mover activation control device; a function input control device; and a device controller configured to receive user input from the prime mover activation control device and the function input control device, wherein user input associated with the prime mover activation control device is configured to start the vehicle, and user input associated with the function input control device is configured to control a function of the vehicle.
[0135] 2. The removable input device according to clause 1, wherein the housing is adapted to be coupled to an axle of a vehicle such that the removable input device is in a coupled operation mode.
[0136] 3. The removable input device according to any one of clauses 1 to 2, further comprising a rechargeable battery, wherein the device controller is configured to charge the rechargeable battery when the removable input device is in the coupled operation mode.
[0137] 4. The removable input device according to any one of clauses 2 to 3, wherein the prime mover activation control device is configured to start the vehicle when the removable input device is in the coupled operation mode.
[0138] 5. The removable input device according to any one of clauses 2 to 4, wherein the removable input device has a remote operation mode.
[0139] 6. The removable input device according to clause 5, wherein the prime mover activation control device is configured to activate the object following function of the vehicle when the removable input device is in the remote operation mode.
[0140] 7. The removable input device according to any one of clauses 1 to 6, wherein the function input control device includes a forward input control device and a reverse input control device.
[0141] 8. The removable input device according to clause 7, wherein, when the removable input device is in the coupled operation mode: the forward input control device is configured to pull in the winch of the vehicle in response to user actuation; and the reverse input control device is configured to pay out the winch in response to user actuation.
[0142] 9. The removable input device according to clause 8, wherein the forward input control and the reverse input control are configured to control the movement of the vehicle when the remote input device is in the remote operation mode.
[0143] 10. The removable input device according to any one of clauses 1 to 9, wherein the function input control device includes a joystick input control device configured to control the movement of the vehicle.
[0144] 11. A multi-purpose vehicle, comprising: a frame; a power source supported by the frame; a cargo bed supported by the frame; an operator area having a first set of control devices that are accessible when an operator is seated in the operator area; and a second set of control devices separate from the first set of control devices that are accessible when the operator is outside the operator area.
[0145] 12. The multi-purpose vehicle according to clause 11, wherein the second set of control devices is removably supported by the cargo bed, and wherein the power source of the vehicle is controlled by the second set of control devices using wireless communication with the vehicle controller of the multi-purpose vehicle.
[0146] 13. The multi-purpose vehicle according to any one of clauses 11 to 12, wherein the second set of control devices includes a forward input control device and a reverse input controller.
[0147] 14. The multi-purpose vehicle according to any one of clauses 11 to 13, wherein the second set of control devices includes a joystick input control device.
[0148] 15. A multi-purpose vehicle, comprising: a frame; a power source supported by the frame; an object sensor supported by the frame; and a vehicle controller configured to:
[0149] Receive an indication to initiate an object following function for a target; process data from the object sensor to identify the target; and control the power source of the multi-purpose vehicle according to the received indication to cause the multi-purpose vehicle to follow the identified target.
[0150] 16. The multi-purpose vehicle according to clause 16, wherein: the target is a removable input device of the multi-purpose vehicle; and the removable input device includes a beacon detectable by the object sensor; and the removable input device has a coupled operation mode and a remote operation mode, wherein the removable input device in the remote operation mode is configured to provide an indication to initiate the object following function of the vehicle controller.
[0151] 17. The multi-purpose vehicle according to clause 16, wherein the vehicle controller is further configured to: process data from the object sensor to detect an obstacle; and in response to detecting the obstacle, suspend the object following function.
[0152] 18. The multi-purpose vehicle according to clause 17, wherein the vehicle controller is further configured to: receive a manual input to maneuver the multi-purpose vehicle around the detected obstacle; control the power source according to the received manual input; and resume the object following function.
[0153] 19. The multi-purpose vehicle according to any one of clauses 15 to 18, wherein the object sensor is one of the following: a camera; an ultra-wideband radio; or a global positioning system sensor.
[0154] 20. The multi-purpose vehicle according to any one of clauses 15 to 19, wherein: the target is an operator computing device; the indication is received from the operator computing device; and the indication includes at least one of a distance or an orientation from which to follow the operator computing device.
[0155] 21. The multi-purpose vehicle according to any one of clauses 15 to 20, wherein the vehicle controller is further configured to: detect at least one of a steering input, a braking input, or a throttle input; determine that the detected input is higher than a predetermined threshold; and in response to determining that the detected input is higher than the predetermined threshold, suspend the object following function or the remote control function.
[0156] 22. A method for automatic vehicle control, the method comprising: receiving an indication to initiate an object following function for a target; processing data from an object sensor of the vehicle to identify the target; and controlling a power source of the vehicle according to the received indication to cause the vehicle to follow the identified target, thereby providing the object following function.
[0157] 23. The method according to clause 22, wherein controlling the power source comprises: generating a distance between the vehicle and the identified target; based on the generated distance, determining whether to update the position of the vehicle relative to the identified target; and based on determining to update the position of the vehicle, controlling the power source to cause the vehicle to follow the identified target.
[0158] 24. The method according to any one of clauses 22 to 23, further comprising: processing data from the object sensor to detect an obstacle; and in response to detecting the obstacle, suspending the object following function.
[0159] 25. The method according to clause 24, further comprising: receiving an indication of a manual input to maneuver the vehicle around the detected obstacle; controlling the power source of the vehicle according to the received indication; and resuming the object following function.
[0160] 26. The method according to any one of clauses 22 to 25, further comprising: detecting at least one of a steering input, a braking input, or a throttle input; determining that the detected input is higher than a predetermined threshold; and in response to determining that the detected input is higher than the predetermined threshold, suspending the object following function or the remote control function.
[0161] 27. The method according to any one of clauses 22 to 26, wherein the object sensor of the vehicle is one of the following: a camera; an ultra-wideband radio; or a global positioning system sensor.
[0162] 28. The method according to any one of clauses 22 to 27, wherein the target is one of the following: an operator computing device; a removable input device of the vehicle; or a target object detectable by the object sensor.
[0163] 29. A method for managing a vehicle under automatic control, the method comprising: receiving a user input to initiate automatic vehicle control; providing an indication to initiate automatic vehicle control to a vehicle controller of the vehicle; receiving an indication of a detected obstacle from the vehicle controller; updating a display to indicate that the vehicle has encountered the detected obstacle; receiving a user input including a manual movement of the vehicle; and providing an indication of the manual movement of the vehicle to the vehicle controller.
[0164] 30. The method according to clause 29, wherein the automatic vehicle control includes an object following function of following a target, and the method further comprises: receiving a user input to change at least one of a distance or an orientation between the vehicle and the target; and providing an indication to update the distance or the orientation to the vehicle controller.
[0165] Although the present invention has been described with an exemplary design, the present invention may be further modified within the spirit and scope of the present disclosure. Accordingly, this application is intended to cover any variations, uses, or modifications of the present invention using its general principles. Moreover, this application is intended to cover departures from the present disclosure within the known or customary practice in the art to which the present invention pertains.
Claims
1. A removable input device for a vehicle, comprising: A housing adapted to be coupled to the vehicle; A beacon; A prime mover activation control device; A function input control device; And A device controller configured to receive user inputs from the prime mover activation control device and the function input control device, wherein the device controller includes multiple operating modes having a remote operation mode and a coupled operation mode, and wherein the device controller is configured to: Determine a current operating mode for the removable input device; When the current operating mode is the coupled operation mode: Process a user input associated with the prime mover activation control device as an indication to start the vehicle; and Process a user input associated with the function input control device as an indication to control a function of the vehicle; and When the current operating mode is the remote operation mode: Process a user input associated with the prime mover activation control device as an indication to activate an object following function of the vehicle, thereby processing user inputs to the prime mover activation control device in different ways according to the current operating mode of the removable input device.
2. The removable input device according to claim 1, wherein the housing is adapted to be coupled to an axle of the vehicle, such that the removable input device is in a coupled operation mode.
3. The removable input device according to claim 1, further comprising a rechargeable battery, wherein the device controller is configured to charge the rechargeable battery when the removable input device is in a coupled operation mode.
4. The removable input device according to claim 2, wherein the removable input device is switched to the remote operation mode in response to being removed from the axle of the vehicle.
5. The removable input device according to claim 1, wherein the function input control device includes a forward input control device and a reverse input control device.
6. The removable input device according to claim 5, wherein, When the removable input device is in a coupled operation mode: The forward input control device is configured to pull in a winch of the vehicle in response to user actuation; and The reverse input control device is configured to pay out the winch in response to user actuation.
7. The removable input device according to claim 6, wherein the forward input control device and the reverse input control device are configured to control the movement of the vehicle when the remote input device is in a remote operation mode.
8. The removable input device according to claim 1, wherein the function input control device includes a joystick input control device configured to control the movement of the vehicle.
Citation Information
Patent Citations
Controller area network based self-configuring vehicle management system and method
US20070050095A1
Method and operation of an engine
US20080041335A1
Transmission lock for all-terrain vehicle
US6725962B1
Parking gear assembly for an all terrain vehicle
US6978857B2
Vehicle expansion retainer
US7055454B1