4. HIERARCHY STRUCTURE OF VEHICLE DYNAMIC MODELS
In the case of simulation in which many types of vehicles are to be simulated simultaneously at the same computer and in the same simulation environments, the concept of "class" is helpful. The "class" has some useful concepts, such as inheritance, abstraction, access privilege (public, protected, private), virtual functions. Generally, it seems that the 3 or 4 stages of classes are sufficient for almost all the cases. The very common properties construct base class.
Table 1 Base class of vehicle
class : VehicleBase |
Inheritance : Non |
Member variables |
public |
- Deck Data |
protected |
- Name |
- Description |
- Operation Region(Main) |
- Operation Region(Sub) |
- Characteristic Mass |
- Characteristic Length |
- Characteristic Width |
- Characteristic Height |
- Position |
- Initial Position |
Member functions |
public |
- (virtual) Initialize |
- Get Name |
- Get Operation Range |
- Get Dimension |
- Get Position |
- Get Deck Information |
protected |
- Non |
|
The above base class is used for the stationary vehicles and the basis of other vehicle class. The deck data is used for the case in which other vehicle can land on this deck, for example, the helicopter lands on the large ship, and the airplane lands on the aircraft carrier etc.
Table 2 Motion class of vehicle
class : VehicleMotion |
Inheritance : public VehicleBase |
Member variables |
public |
- Non |
protected |
- Velocity |
- Acceleration |
- Transform Matrix |
- Orientation vectors |
- Predefined path |
- Local points |
Member functions |
public |
- (virtual) Initialize |
- (virtual) Advance calculation |
- Get global position |
- Get local position |
- Get global velocity |
- Get local velocity |
- Get attitude |
- Get local points |
- Set predefined path |
protected |
- Calculate transform matrix |
- Caculate movement |
|
The above motion class will be generated from base class, and will be used for the simple motion vehicles and predefined motion vehicles, and the basis of dynamic class. Where the local points will be used as the towing points or points in which the motion is to be measured, or viewing points in graphic simulations.
Table 3 Dynamic class of vehicle
class : VehicleDynamic |
Inheritance : public VehicleMotion |
Member variables |
public |
- Control Command |
- Control state |
protected |
- Length |
- Beam |
- Draft |
- Center of gravity |
- Mass moment of inertia |
- Time constant |
- ID of mother vehicle |
- Motion type |
- Relative motion with mother deck |
- Relative motion with land |
- Added mass and moment of inertia |
- Mass matrix |
- Engine Data |
- Propulsor Data |
- Control Device Data |
Member functions |
public |
- (virtual) Initialize |
- (virtual) Advance calculation |
- Get deck information |
- Get land information |
- Set mother vehicle |
- Set motion type |
- Set control command |
protected |
- Make mass matrix |
- Force calculation of gravity |
- Force calculation of inertia |
- Force calculation of wind |
- Force calculation of buoyancy |
- Predefined path calculation |
- Update engine operation |
- Force calculation of propulsor |
- Force calculation of control |
|
The above dynamic class is generated from motion class, the concept of forces and dynamics exist. To this point, the class is for the general type of vehicles.
Table 4 Vehicle specific class
class : VehicleSpecific |
Inheritance : public VehicleDynamic |
Member variables |
public |
- To be added |
protected |
- To be added |
Member functions |
public |
- (virtual) Initialize |
- (virtual) Advance calculation |
- To be added |
protected |
- To be added |
|
The above specific class is the final class, the variables and forces specific to the given vehicle are to be added.
For the marine vehicles; the variables and functions related to wave force, radiation forces are to be added.
For the air-based vehicles; the variables and functions related to lift and some other control devices are to be added.
For the land-based vehicles; the variables and functions related to ground force, suspension, and steering wheel are to be added.
Other than the above classes, the classes relating the environments are used. The representative ones are wave, wind, land classes. The detailed explanation will be omitted.
In the recent work in KRISO, the complex situation was simulated in which the displacement type ship, air-cushion vehicles, helicopter, VTOL aircraft, truck, and amphibious assault vehicle are in the same situation and interact to each other. In that simulation, the above classification and class structure were used.
5. CONCLUSION
In this paper, the classification of vehicle in the viewpoint of dynamics was made, and the useful structure of class was presented. This structure is in use in the simulations of multi-vehicle situation for the special purpose in KRISO. The presented classification and class structure have many points to be modified and completed of course, but it was useful for the simulation of the situation when the number of vehicles are in one situation.
ACKNOWLEDGEMENT
The work in this paper was partially supported by "Dual Use Technology Program" MOMAF Korea, by the project "Development of Technology for Attitude Control System of Ships on Waves".
REFERENCES
[1] Clayton, B.R. and Bishop, R.E.D, Mechanics of Marine Vehicles, E.&F.N. Spon Ltd, 1982
[2] IMSF and ICSM, International Conference on Marine Simulation and Ship Maneuvering, MARSIM2000 Conference Proceedings, Florida USA, 2000
[3] KRISO, High-Speed Craft Workshop Proceedings, Daejoen Korea, 1991-1996(in Korean)
[4] Lee, C.M. et al, XXX Simulation Study using Virtual Reality Technology, KRISO Report, 2001(in Korean)
[5] Microsoft, Visual C++ Manual, Microsoft Press,
AUTHOR'S BIOGRAPHY
The author received his Ph.D degree from Seoul National University in 1990. He worked for Agency of Defense Development of Korea in 1991-1994, and Halla Heavy industries in 1996-1997, and KRISO/KORDI in 1998-current. His early research topic was hydrodynamics, and his current main topic is control of dynamic systems.
Organization : KRISO(Korea Research Institute of Ships & Ocean Engineering)/KORDI
Address : 171 Jang-Dong, Yusong-Gu, Daejeon, 305-343 KOREA
E-mail : gjlee@kriso.re.kr
|