CN114253512A - AUV control software architecture based on functional autonomous model - Google Patents

AUV control software architecture based on functional autonomous model Download PDF

Info

Publication number
CN114253512A
CN114253512A CN202010998901.XA CN202010998901A CN114253512A CN 114253512 A CN114253512 A CN 114253512A CN 202010998901 A CN202010998901 A CN 202010998901A CN 114253512 A CN114253512 A CN 114253512A
Authority
CN
China
Prior art keywords
auv
module
functional
autonomous
control software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010998901.XA
Other languages
Chinese (zh)
Inventor
贾松力
林扬
孙晓宇
刘肖宇
孙铁
孙铁铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenyang Institute of Automation of CAS
Original Assignee
Shenyang Institute of Automation of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenyang Institute of Automation of CAS filed Critical Shenyang Institute of Automation of CAS
Priority to CN202010998901.XA priority Critical patent/CN114253512A/en
Publication of CN114253512A publication Critical patent/CN114253512A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to an Autonomous Underwater Vehicle (AUV) control software system structure based on a functional autonomous model, which designs a functional module division method aiming at the AUV control software. Meanwhile, a two-layer division method of an execution layer and a reaction layer is adopted in the functional autonomous module, and a functional module cooperation method with low coupling degree is designed, so that the control software architecture has the characteristics of easy expansion and easy maintenance; and meanwhile, an operating system function packaging method is adopted at the bottom layer of the control system architecture to obtain an upper software development function interface independent of the operating system, so that the software architecture has good reusability and portability when being transplanted among different operating systems.

Description

AUV control software architecture based on functional autonomous model
Technical Field
The invention relates to an AUV control software architecture based on a functional autonomous model, in particular to the AUV control software architecture formed by combining functional module division, functional autonomous module layering, functional module cooperation method design and operating system function packaging technology.
Background
Autonomous Underwater Vehicle (AUV) control system software (hereinafter abbreviated as AUV control software) is a software system which runs in an AUV control computer and realizes AUV intelligent control and autonomous operation by adopting the technologies and methods of artificial intelligence, automatic control, mode identification, information fusion and understanding, new materials, energy, communication, system integration and the like, and a methodology for organizing AUV control software algorithms is called an AUV control software architecture.
Currently, the architecture of the AUV control software generally includes three types, namely, a containment architecture, a layered architecture, and a pipe architecture, wherein the layered architecture is most widely used. The layered architecture can better meet the requirement of intelligent control of the robot. However, with the emergence of new application requirements, the increase of mission complexity and the improvement of intelligence degree, the system composition of the AUV is more and more complex, a plurality of devices and sensors are installed, and a plurality of intelligent technologies and methods are adopted, so that the code scale of the AUV control software is more and more huge, and the logic is more and more complex. Meanwhile, AUV control software runs in a control computer of a carrier, most control computers adopt an embedded real-time operating system, so that a plurality of AUVs with the same function but different control computer operating systems have the problem that the AUV control software needs to be frequently subjected to portability development among different operating systems, and the system compatibility problems are caused by the difference of system functions among the operating systems. In order to solve the problem, a large amount of modification and debugging are often required to be performed on parts related to system functions in each part of the AUV control software, so that software migration between different operating systems requires a large amount of labor and time, and a large number of software performance defects caused by platform migration may be generated.
Disclosure of Invention
In view of the above-mentioned deficiencies of the AUV control software architecture, the present invention provides an AUV control software architecture based on a functional autonomous model, and in particular, an AUV control software architecture based on a functional autonomous model, which is designed by adopting a functional module partitioning method, a functional module layering method, a functional module cooperation method, and an operating system function encapsulation technology.
The technical scheme adopted by the invention for realizing the purpose is as follows:
an AUV control software architecture based on a functional autonomous model, comprising:
the mission task planning and execution management function module is used for receiving the AUV state information sent by the function autonomous module, realizing mission planning and sending a control instruction to the corresponding function module;
and the function autonomous module is used for constructing a plurality of independent modules according to the functions required to be realized by AUV control.
The functional autonomous module comprises:
the execution layer is used for receiving AUV state information uploaded by the reaction layer in the functional autonomous module and receiving the functional requirements of other functional autonomous modules on the functional autonomous module;
and the reaction layer is used for acquiring the AUV state information through the sensor and receiving a control instruction of the execution layer to control an execution mechanism of the AUV.
The execution layer includes only 1 task; the reaction layer comprises a plurality of tasks which run concurrently, and each task is responsible for the management of 1 device or sensor.
The functional autonomous modules adopt a low-coupling cooperation mode, and the method specifically comprises the following steps: information sharing, messaging, and method invocation.
The information sharing is used for performing information interaction with the frequency greater than the threshold value among the functional autonomous modules or among concurrent tasks in the same functional autonomous module.
The message communication is used for information interaction with the frequency smaller than the threshold value among the functional autonomous modules or among concurrent tasks in the same functional autonomous module.
The method is used for calling the service request and response among the functional autonomous modules, so that one functional autonomous module directly calls the function of the other functional autonomous module.
The AUV control software system structure packages the API interface provided by the lower layer to form the function package including the functions of process or thread creation, communication and synchronization and mutual exclusion between processes or threads, file reading and writing and hardware interface reading and writing.
The functional autonomous module comprises: the navigation module, the energy control module, the navigation control module, the collision avoidance function module, the data management module and the fault detection module; wherein,
the navigation module is used for AUV navigation;
the energy control module is used for controlling the AUV energy system;
the navigation control module is used for navigation control of the AUV, and comprises navigation speed, navigation direction, navigation depth, navigation height and navigation strategy;
the collision avoidance function module is used for AUV collision avoidance;
the data management module is used for recording and managing AUV data;
and the fault detection module is used for detecting and processing faults of the AUV.
And the function autonomous module designs expansion according to different function requirements of the AUV.
The invention has the following beneficial effects and advantages:
1. the software system structure is composed of a plurality of software modules with functional autonomy characteristics, and has good expandability;
2. each function autonomous module (the autonomous function module is also presented in the text for many times, and unified nouns are suggested) has relatively independent functions and a clear two-layer logic structure, so that a software system has better maintainability;
3. the cooperative work among the software function modules is realized by designing a low-coupling cooperative mode, so that the cooperative realization among the software functions is simpler.
4. The method has the advantages that the packaging of the operating system function is realized on the bottom layer of the software architecture, so that relatively independent upper-layer logic realization can be reserved when the software is subjected to platform transplantation, and only the bottom-layer system function packaging needs to be modified, so that the architecture has good platform transplantation simplicity.
Drawings
FIG. 1 is a diagram of an AUV control software architecture;
FIG. 2 is a hierarchical layout diagram of the interior of a functional autonomous module;
FIG. 3 is a diagram of a method for encapsulating operating system functions.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples.
The method realizes the AUV control software architecture based on the functional autonomous model by designing an AUV control software autonomous function module division method, a two-layer design method for performing an execution layer and a reaction layer on the inside of a module, and adopting an inter-module low-coupling cooperation mode design and a software architecture bottom layer operating system function packaging technology. The specific implementation steps are as follows:
1. autonomous function module division of AUV control software according to functions
The design method designs AUV control software to divide an execution layer and a reaction component into modules on the basis of a 3-layer system structure, so that the original execution layer and reaction layer are composed of a series of functional modules, and the basis and principle of functional module division are as follows:
(1) according to the AUV control requirement, an mission task and execution management function module (hereinafter referred to as mission module) is divided, and the mission task and execution management function module has the function of a thinking layer in a 3-layer system structure.
(2) According to the functions to be realized by AUV control, the program is divided into other autonomous functional modules (such as a navigation module, an energy control module, a navigation control module, a collision avoidance functional module, a data management module and the like) which have considerable universality and are relatively independent logically for the AUV.
During the operation of the AUV, the overall function of the AUV control software is realized by the cooperation between the thought layer and the function module, and the architecture of the AUV control software adopting the functional autonomous module division method is shown in fig. 1.
When the designed AUV needs to expand other functions, relevant independent autonomous modules can be designed according to the required functions, and the AUV can be easily integrated into the whole control software structure.
2. Two-layer hierarchical structure for dividing function autonomous module into execution layer and reaction layer
In the respective treatment function module, the module is divided into an execution layer and a reaction layer according to function implementation, and the specific functions and implementation methods of the execution layer and the reaction layer are as follows
1) The execution layer receives information uploaded by each sensor of the reaction layer in the function module and integrates the sensor information into an internal state representation, in addition, the other function modules also receive and process the related function requirements of the function module by the execution layer, the execution layer either directly processes the function requirements or transmits the function requirements to the reaction layer after serialization, the function requirements and the reaction layer cooperate to process the function requirements, and the execution layer only comprises 1 task.
2) The reaction layer collects and processes information of equipment and sensors used for realizing functions of the functional module, receives instructions of the action layer and further controls the execution mechanism, the reaction layer comprises a plurality of tasks which run concurrently, and each task is responsible for managing 1 piece of equipment/sensor (for the equipment and the sensors which use the bus structure and the AUV control computer for communication, the equipment/sensor on the same bus uses 1 task).
This intra-module layered design is shown in fig. 2
3. Low coupling cooperation method between design function autonomous modules
The overall function of the AUV control software is realized by mutual cooperation of all functional modules, and according to different cooperation requirements, the cooperation mode among the functional modules is designed to adopt the following three different cooperation modes:
(1) information sharing
The method is used for performing frequent information interaction among the functional modules or among concurrent tasks in the same functional module. For information sharing among multiple processes (or multiple threads), the information sharing can be realized by means of a shared memory mechanism or a shared global variable provided by an operating system, and concurrent control is performed by means of critical sections or semaphores and the like, so that information reading and writing errors among multiple processes (or multiple threads) are avoided.
(2) Message communication
This approach is used to perform relatively small and infrequent information interactions between functional modules, or between concurrent tasks within the same functional module. For message communication among multiple processes, the message communication is realized by means of a message queue mechanism provided by an operating system; for information sharing among multiple threads, a self-defined message transmission mechanism is adopted to realize, and when a self-defined mode is adopted, a proper synchronization and mutual exclusion mechanism is required to be adopted, so that the wrong reading and writing of the message are avoided.
(3) Method invocation
Method calls are used to let one functional module directly utilize the functions provided by another function, in such a way that requests and responses for services are realized between the functional modules. For the method call among multiple processes, a remote procedure call mechanism provided by an operating system is used; and for the method call among multiple threads, the method call is realized by adopting a direct function call mode.
The cooperation mode designed by the method can ensure that the information shared or interacted between the modules has weak coupling characteristic and can avoid exposing detailed information such as system composition of the AUV or the adopted technology and method, and the like.
4. Realizing encapsulation of control system function at bottom layer of control software
AUV control software belongs to application layer software, and the functions of the operating systems used by the AUV control software generally comprise thread creation, communication and synchronization and mutual exclusion among threads, file reading and writing, serial port, AD, IO and other hardware interface reading and writing, generally, API interfaces provided by different operating systems for the functions are not completely the same, and some of the functions have considerable difference.
In order to enhance the portability and reusability of AUV control software among different operating systems, the designed AUV control software architecture encapsulates API interfaces provided by the operating systems at the lower layer of the control software to form function encapsulation which can realize the functions of on-line thread creation, on-line thread communication and synchronization and mutual exclusion, file read-write, serial port, AD, IO and other hardware interfaces read-write functions required by the development of upper layer software and is irrelevant to the API function interfaces of the operating systems, and the design and the development of the AUV control software are carried out on the basis. The packaging method is schematically shown in fig. 3.
When the control software adopting the encapsulation mode is transplanted among different operating systems, only the encapsulation layer can be modified without modifying other software modules of the AUV control software, so that the difficulty of transplanting the AUV control software is reduced, and the adaptability and the modularization level of the operating system are improved.
AUV control system software developed by the system structure has better expansibility and maintainability, and reduces the dependence of upper logic of the control system on the operating system, thereby reducing the workload of the control software in the transplanting process of the differential operating system and the software performance problem possibly generated by transplanting and developing.

Claims (10)

1. An AUV control software architecture based on a functional autonomous model, comprising:
the mission task planning and execution management function module is used for receiving the AUV state information sent by the function autonomous module, realizing mission planning and sending a control instruction to the corresponding function module;
and the function autonomous module is used for constructing a plurality of independent modules according to the functions required to be realized by AUV control.
2. The AUV control software architecture based on functional autonomous model according to claim 1, characterized in that the functional autonomous module comprises:
the execution layer is used for receiving AUV state information uploaded by the reaction layer in the functional autonomous module and receiving the functional requirements of other functional autonomous modules on the functional autonomous module;
and the reaction layer is used for acquiring the AUV state information through the sensor and receiving a control instruction of the execution layer to control an execution mechanism of the AUV.
3. The AUV control software architecture based on functional autonomous model according to claim 2, characterized in that the execution layer comprises only 1 task; the reaction layer comprises a plurality of tasks which run concurrently, and each task is responsible for the management of 1 device or sensor.
4. The AUV control software architecture based on the functional autonomous model of claim 1, wherein the functional autonomous modules adopt a low-coupling cooperation mode, and specifically comprises: information sharing, messaging, and method invocation.
5. The AUV control software architecture based on the functional autonomous model of claim 4, wherein the information sharing is used for performing information interaction with a frequency greater than a threshold value between the functional autonomous modules or between concurrent tasks within the same functional autonomous module.
6. The AUV control software architecture based on the functional autonomous model of claim 4, wherein the message communication is used for performing information interaction with a frequency less than a threshold value between functional autonomous modules or between concurrent tasks within the same functional autonomous module.
7. The AUV control software architecture based on functional autonomous model according to claim 4 characterized in that the method calls requests and responses for services between functional autonomous modules, causing one functional autonomous module to directly call the function of another functional autonomous module.
8. The AUV control software architecture based on the functional autonomic model as claimed in claim 1, wherein the AUV control software architecture encapsulates API interfaces provided at a lower layer to form functional encapsulation including process or thread creation, inter-process or thread communication and synchronization and mutual exclusion, file read-write, and hardware interface read-write functions.
9. The AUV control software architecture based on functional autonomous model according to claim 1, characterized in that the functional autonomous module comprises: the navigation module, the energy control module, the navigation control module, the collision avoidance function module, the data management module and the fault detection module; wherein,
the navigation module is used for AUV navigation;
the energy control module is used for controlling the AUV energy system;
the navigation control module is used for navigation control of the AUV, and comprises navigation speed, navigation direction, navigation depth, navigation height and navigation strategy;
the collision avoidance function module is used for AUV collision avoidance;
the data management module is used for recording and managing AUV data;
and the fault detection module is used for detecting and processing faults of the AUV.
10. The AUV control software architecture based on the functional autonomous model of claim 1, wherein the functional autonomous module designs extensions according to different functional requirements of the AUV.
CN202010998901.XA 2020-09-22 2020-09-22 AUV control software architecture based on functional autonomous model Pending CN114253512A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010998901.XA CN114253512A (en) 2020-09-22 2020-09-22 AUV control software architecture based on functional autonomous model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010998901.XA CN114253512A (en) 2020-09-22 2020-09-22 AUV control software architecture based on functional autonomous model

Publications (1)

Publication Number Publication Date
CN114253512A true CN114253512A (en) 2022-03-29

Family

ID=80788361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010998901.XA Pending CN114253512A (en) 2020-09-22 2020-09-22 AUV control software architecture based on functional autonomous model

Country Status (1)

Country Link
CN (1) CN114253512A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116588282A (en) * 2023-07-17 2023-08-15 青岛哈尔滨工程大学创新发展中心 AUV intelligent operation and maintenance system and method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101045297A (en) * 2007-04-12 2007-10-03 武汉科技大学 Distribution multiple freedom robot controlling system
CN102779047A (en) * 2012-07-09 2012-11-14 哈尔滨工程大学 Embedded software support platform
CN104669269A (en) * 2013-11-26 2015-06-03 中国科学院沈阳自动化研究所 Efficient and extensible autonomous control system for high-complexity underwater robot
CN106444490A (en) * 2016-09-08 2017-02-22 中国电子科技集团公司第三十二研究所 Robot operating system based on embedded real-time operating system
CN111309291A (en) * 2020-01-19 2020-06-19 北京航空航天大学 Modularized embedded software architecture, customization method and customization system thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101045297A (en) * 2007-04-12 2007-10-03 武汉科技大学 Distribution multiple freedom robot controlling system
CN102779047A (en) * 2012-07-09 2012-11-14 哈尔滨工程大学 Embedded software support platform
CN104669269A (en) * 2013-11-26 2015-06-03 中国科学院沈阳自动化研究所 Efficient and extensible autonomous control system for high-complexity underwater robot
CN106444490A (en) * 2016-09-08 2017-02-22 中国电子科技集团公司第三十二研究所 Robot operating system based on embedded real-time operating system
CN111309291A (en) * 2020-01-19 2020-06-19 北京航空航天大学 Modularized embedded software architecture, customization method and customization system thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116588282A (en) * 2023-07-17 2023-08-15 青岛哈尔滨工程大学创新发展中心 AUV intelligent operation and maintenance system and method
CN116588282B (en) * 2023-07-17 2023-10-13 青岛哈尔滨工程大学创新发展中心 AUV intelligent operation and maintenance system and method

Similar Documents

Publication Publication Date Title
EP1004061B1 (en) Architecture for a hybrid real-time control system and method of operation thereof
CN102736538B (en) Reconfigurable interface-based electrical architecture
CN111427310A (en) Industrial robot controller operation system
CN111813561B (en) Open general intelligent satellite software system
CN101710281B (en) Dynamic integrated system and method of development platform based on Agent
CN110471647A (en) Embedded partitions operating system and its design method based on microkernel architecture
CN114253512A (en) AUV control software architecture based on functional autonomous model
US5890155A (en) System and methods for providing encapsulated and performance-efficient data references in an object-oriented controller and distributed control system employing the same
Traub et al. An object-oriented realtime framework for distributed control systems
CN111459062B (en) Virtual-real shared complex information physical product digital twin control logic generation method
CN115022115B (en) Universal software layered architecture of ship control system based on soft bus technology
CN113534744A (en) Software architecture and hardware architecture for forming numerical control system
CN114416222A (en) Method and device for calling drive interface by application program
Van Brussel et al. Hierarchical control of a generic flexible assembly cell
KR20100048843A (en) Robot used software component apparatus and thread processing method using by it
CN114265578B (en) Embedded robot software framework and implementation method thereof
Yang et al. Design and Implementation of Cross-platform Control system for Track Vehicle
CN113741281A (en) Method for realizing software architecture of open reconfigurable flight control system
CN118394473A (en) Micro-nano satellite-borne software management and scheduling system
Buttazzo Application design issues
CN114398186A (en) Acceleration card operation system and scheduling method
Qu et al. Distributed control application platform-a control platform for advanced manufacturing systems
Loborg et al. Model for the Execution of Task-Level Specifications for Intelligent and Flexible Manufacturing Systems
JPS5941214B2 (en) Condition monitoring method
Balasubramanian A metamorphic control architecture for holonic systems.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination