BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
FIG. 1 is a schematic representation of a system of the present invention for controlling a moving object;
FIG. 2 is a block diagram of communications between the various controllers of the present invention;
FIG. 3 is a representation of a typical dual-controller system of the present invention;
FIG. 4 is a schematic representation of an exemplary system for controlling moving objects of the present invention;
FIG. 5A is a schematic representation showing interchangeability of parts of the dual-controller system of the present invention between different vehicles; and
FIG. 5B is a schematic representation showing transfer of data from one dual-controller system of the present invention to a different dual-controller system of the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENT
In the discussion of the FIGURES the same reference numerals will be used throughout to refer to the same or similar components. In the interest of conciseness, various other components known to the art, such as computer processing and storage mechanisms and the like necessary for the operation of the invention, have not been shown or discussed, or are shown in block form.
In the following, numerous specific details are set forth to provide a thorough understanding of the present invention. However, it will be obvious to those skilled in the art that the present invention may be practiced without such specific details. In other instances, well-known elements have been illustrated in schematic or block diagram form in order not to obscure the present invention in unnecessary detail. Additionally, for the most part, details concerning computer and database operation and the like have been omitted when such details are not considered necessary to obtain a complete understanding of the present invention, and are considered to be within the knowledge of persons of ordinary skill in the relevant art.
In the discussion that follows, the phrase “vehicle” means any piece of mobile equipment, having a broader definition than just equipment that operates on the ground with wheels having a portion thereof dedicated to space for an operator to stand or sit while controlling operation thereof.
Refer now to the drawings wherein depicted elements are, for the sake of clarity, not necessarily shown to scale and wherein like or similar elements are designated by the same reference numeral through the several views.
FIG. 1 shows a system 1 of the present invention for controlling a moving object, or vehicle. The system includes a Vehicle Control Unit (VCU) controller 100 for control of low-level functions and to provide vehicle supervisory control. The VCU 100 performs traditional vehicle safety and control functions, and is responsible for coordinating low-level vehicle control tasks and managing the loop of the low-level physical interfaces, such as communication with the motor, steering system, braking system, throttle, hydraulics, etc. Because the information being processed in the VCU 100 is typically not high-volume and does not require continuous rapid and complex calculations, it may be possible that the microprocessor used, while capable of performing the arithmetic and logic operations required, can be a less expensive device, which can reduce system costs.
The system 1 of the present invention also incorporates an Intelligent Vehicle Control controller (IVC) 200, a high-level intelligent controller that controls high-level unmanned, robotic vehicle operations, including such items as obstacle detection and avoidance features, path planning, vehicle guidance, sensor integration, system monitoring, and navigation and localization functions. Because of the volume of information processed and analyzed, the IVC 200 typically incorporates a high-speed, powerful microprocessor capable of performing rapid complex calculations for arithmetic and logic operations.
As shown in FIG. 2, typically, there is at least one translation or interface layer 300 that takes the high-level processing information and breaks it down to low-level commands, simulating operator actions. This can be done in a variety of ways, with the two most common being a virtual operator interface, such as a simulated control. In this type of system, the IVC 200 virtually controls the vehicle, with commands that imitate those of a physical interface. Another approach is for the high-level commands from the IVC 200 to be sent to the VCU 100. The VCU 100 then translates the commands into commands that can provide vehicle control. Depending on the type of system utilized, the translation layer 300 can reside in the IVC 200, the VCU 100, or both for systems with more than one translation layer 300. In the arrangement shown in FIG. 2, the Interface Layer 30b, which resides on the IVC 200, converts IVC outputs to values having units used and accepted by the data arbitration layer 310 on the VCU 100, and sends and receives messages over the communication network 400, which in this case is a CAN bus network. However, it can be appreciated that other arrangements of the communication systems can be used.
FIG. 3 is a representation of a typical dual-controller system 1 of the present invention. The system includes an IVC 200, which has, or communicates with modules 500 responsible for navigation and localization, obstacle detection and avoidance, path planning and vehicle guidance for unmanned robotic operation. The vehicle guidance module 510 also provides information 511 about vehicle movement, such as rotation and yaw rate and forward velocity to the interface layer 300, which is located in the VCU 100. The VCU 100 is responsible for operation of the steering, propulsion and braking systems 408 of the vehicle 10. The mode selector 410 provides input to the VCU 100 as to whether the vehicle 10 is operating in unmanned robotic or manual mode. In addition to controlling the steering, propulsion and braking system, the VCU 100 also provides information about the vehicle 10 to the IVC 200 via the interface layer 300. Such information includes, but is not limited to, control feedback, vehicle state information, and vehicle specific information such as the vehicle mass, moment of inertia. etc.
FIG. 4 discloses an example of a system 1 of the present invention. In this example, a vehicle has a dual controller of the present invention. The system 1 has a VCU 100 that is responsible for controlling lighting, steering, the throttle actuator, gear shift motor and brake motor, with intermediate mechanisms 150 for controlling the motors and throttle. The system 1 has a secondary VCU 100′ located in the operator compartment of the vehicle that provides an interface for the vehicle operator. The system 1 also has an IVC 200 that is used to control the vehicle when it is being operated as an unmanned robotic vehicle. In this example, the IVC 200 interfaces with various positioning and perception modules 250 that are used to determine the position of the vehicle, and to scan the area around the vehicle and identify any obstructions in the path of the vehicle and determine if the obstruction should be avoided when the vehicle is being operated in unmanned robotic mode. These modules 250 are used to determine a path, speed and parameters for the vehicle when it is being operated as an unmanned robotic vehicle. In operation, if the vehicle is operating in an unmanned robotic mode, the IVC 200 is controlling vehicle motion. If the IVC 200 should malfunction, or if the IVC 200 should perceive that the vehicle should not proceed in any direction, it will send a signal to the VCU 100 that it is not capable of operating, and will turn over control of the vehicle to the VCU 100. The VCU 100 does not have the equipment necessary to operate the vehicle 10 autonomously. However, it or the IVC 200 can send a message to the operator that operation of the vehicle has been transferred to the VCU 100. The operator can then operate the vehicle manually via the VCU 100, completing the operation that was being performed by the IVC 200, or bringing the vehicle to a safe location where it can be shut down and repaired.
Another advantage of the present invention is that the separation of high-level and low-level control functions into two separate and distinct controllers is the simplification of repairs and system upgrades. If a system that has a VCU 100 but is not initially outfitted with a IVC 200, is subsequently desired to be used as an unmanned robotic system, then depending on the arrangement and configuration of the VCU 100 in the original system, an IVC 200 can be added on and connected into the VCU 100 via the CAN Bus 400, and the system 1 can become a system that has both manual and automated functions. Another improvement achieved by the modular system 1 of the present invention is simplification of repairs. If a system of the present invention experiences a failure of the IVC 200, the system can be operated in manual or semi-automated mode using just the VCU 100. This can be achieved by the system 1 recognizing the IVC failure and sending a signal to the VCU 100 to function without the IVC, or such override can be achieved manually by an operator input. After properly shutting down the system, the IVC unit 200 can be removed and replaced with a new IVC 200, without the need to replace the VCU 100 or various individual components. Any vehicle-specific programming in the IVC 200 can be downloaded to the new IVC 200, or in some arrangements of the present invention, such vehicle-specific data is stored in the VCU 100 to further enable such quick and easy repairs.
Yet another improvement achieved by the modularity of the present invention is the ability to move individual controllers from one system to another. For example, as shown in FIG. 5A an unmanned robotic vehicle 10 is used in a specific operation, and the vehicle 10 has acquired certain mission-specific knowledge related to the operation. If a new vehicle 10′ is to be used in the same operation to replace the first vehicle 10, the controller or controllers 100, 200 from the first vehicle 10 may be removed from the first vehicle 10 and installed in the second vehicle 10′ to enable the second vehicle 10′ to perform the operations. It can be appreciated that certain minor modifications or machine-learning may be required to ensure the second vehicle 10′ performs the operation satisfactorily, especially if the second vehicle 10′ differs from the first vehicle 10 in any characteristics. Similarly, as shown in FIG. 5B, if a new vehicle 10′ is to be used to perform a similar operation to that performed by a first vehicle 10 that has already learned the operation, data can be transferred via the CAN bus 400 from the controller or controllers 100, 200 of the first vehicle 10 to the controller or controllers 100′, 200′ of the second vehicle 10′, which can significantly reduce the time needed to train the second vehicle 10′ to perform the same operations already learned by the first vehicle 10.
It is understood that the present invention can take many forms and embodiments. Accordingly, several variations may be made in the foregoing without departing from the spirit or the scope of the invention. Having described the preferred embodiment, it will become apparent that various modifications can be made without departing from the scope of the invention as defined in the accompanying claims.