一种控制软件模块化设计方法与流程

文档序号:34300760发布日期:2023-05-31 16:04阅读:61来源:国知局
一种控制软件模块化设计方法与流程

本发明涉及的是一种控制软件设计方法。


背景技术:

1、人们在设计各种计算机软件时,往往会自觉或不自觉地采用模块化设计方法,即将待开发的软件系统划分为若干个相互独立的模块,每一个模块都独立地开发、测试,最后再组装出整个软件,这样使完成每一个软件模块的设计工作变得单纯而明确,且便于大的软件由多个人或团队协同进行开发实现。

2、运行在单任务操作系统下大的应用软件即使由多人协同按照模块化的设计原则进行开发,使得整个软件的设过程计变得简单易实现,但最后每个人开发的软件模块源文件仍需进行统一的编译、连接处理,最终才能形成一个可在操作系统下运行的可执行程序文件;当其中的一个软件模块源文件被修改后,整个应用软件需重新进行编译、连接处理形成新的可执行程序文件。实际上运行在多任务操作系统下应用软件设计,即使采用模块化设计方法,往往也是被设计成一个单一可执行程序文件,一旦某个软件模块进行了修改,就需重新进行编译、连接处理形成新的可执行程序文件。

3、在实践中发现,某些控制系统的控制任务模块化特征明显,最终的应用软件如是运行在多任务操作系统环境下,不将所有的软件模块统一编译、连接成一个可执行程序文件,而是按照功能的相关性编译、连接成几个独立的可执行程序文件,在多任务操作系统的统一调度下,让这几个独立的可执行程序同时运行,协同配合实现总的控制任务也是可行的;且当其中的一个软件模块源文件被修改后,只需对紧密相关的几个软件模块重新进行编译、连接处理再次更新形成新的可执行程序文件,而无需对系统中其它的可执行文件重新进行编译、连接。这样从技术上,就会使得整个应用软件的开发过程更容易管理,任务软件模块易于分别调试、测试,更易于多人共同开发和软件后期的升级维护。


技术实现思路

1、本发明的目的在于提供利用多任务操作系统的特点,进一步提高控制应用软件的开发效率的一种控制软件模块化设计方法。

2、本发明的目的是这样实现的:

3、本发明一种控制软件模块化设计方法,其特征是:包括控制系统,控制系统在多任务操作系统下运行的应用软件设计成相关的又独立的程序或任务,这些相关的又独立的程序或任务在多任务操作系统的协调下,相互协同配合,达成对整个被控对象的控制之目的;在该多任务操作系统下,至少设计出两个独立程序或任务,其中为相同的子被控对象设计一个独立的控制程序或任务,且带有身份为客户端的动态数据交换接口,且不直接访问计算机的i/o硬件接口,只针对被控对象进行控制逻辑的处理;同时设计一个独立的i/o接口程序或任务,计算机上用于完成该控制系统的全部i/o硬件接口均由该接口程序进行直接访问,即进行实际的控制输入输出处理,且带有身份为服务器端的动态数据交换接口。

4、本发明还可以包括:

5、1、针对每个相同的子被控对象都运行一个控制程序实例,同时运行i/o接口程序,i/o接口程序与每个控制程序实例分别进行热连接的动态数据交换,即自动连续地进行数据交换。

6、2、i/o接口程序为每个控制程序实例,通过i/o硬件接口采集被控对象的状态信息,通过动态数据交换接口分别发给每个控制程序实例,每个控制程序实例根据被控对象状态信息的变化,调整控制输出,每个控制程序实例的控制输出均通过动态数据交换接口发给i/o接口程序,最后由i/o接口程序访问计算机的i/o硬件接口,完成物理意义上的控制输出。

7、3、相同的子被控对象数量达到限值时,i/o接口程序在一次性为所有子被控对象或者为所有运行的控制程序实例采集完状态信息后,主动定时间隔性地发给每个控制程序实例。

8、4、开机上电后以批处理的方式加载每个独立程序,包括i/o接口程序和相同子被控对象的各个控制程序实例。

9、5、相同子被控对象的各个控制程序实例加载时或是启动时,程序带不同的参数进行启动,控制程序根据该参数设置该控制程序实例的运行窗口标题,以示不同控制程序实例的区别。

10、本发明的优势在于:本发明使具有被控对象特征且待开发的控制应用软件可运行在具有动态数据交换功能的多任务操作系统环境下,按照本发明设计方法进行开发实现,其开发过程变得简单易于实现。



技术特征:

1.一种控制软件模块化设计方法,其特征是:包括控制系统,控制系统在多任务操作系统下运行的应用软件设计成相关的又独立的程序或任务,这些相关的又独立的程序或任务在多任务操作系统的协调下,相互协同配合,达成对整个被控对象的控制之目的;在该多任务操作系统下,至少设计出两个独立程序或任务,其中为相同的子被控对象设计一个独立的控制程序或任务,且带有身份为客户端的动态数据交换接口,且不直接访问计算机的i/o硬件接口,只针对被控对象进行控制逻辑的处理;同时设计一个独立的i/o接口程序或任务,计算机上用于完成该控制系统的全部i/o硬件接口均由该接口程序进行直接访问,即进行实际的控制输入输出处理,且带有身份为服务器端的动态数据交换接口。

2.根据权利要求1所述的一种控制软件模块化设计方法,其特征是:针对每个相同的子被控对象都运行一个控制程序实例,同时运行i/o接口程序,i/o接口程序与每个控制程序实例分别进行热连接的动态数据交换,即自动连续地进行数据交换。

3.根据权利要求1所述的一种控制软件模块化设计方法,其特征是:i/o接口程序为每个控制程序实例,通过i/o硬件接口采集被控对象的状态信息,通过动态数据交换接口分别发给每个控制程序实例,每个控制程序实例根据被控对象状态信息的变化,调整控制输出,每个控制程序实例的控制输出均通过动态数据交换接口发给i/o接口程序,最后由i/o接口程序访问计算机的i/o硬件接口,完成物理意义上的控制输出。

4.根据权利要求1所述的一种控制软件模块化设计方法,其特征是:相同的子被控对象数量达到限值时,i/o接口程序在一次性为所有子被控对象或者为所有运行的控制程序实例采集完状态信息后,主动定时间隔性地发给每个控制程序实例。

5.根据权利要求1所述的一种控制软件模块化设计方法,其特征是:开机上电后以批处理的方式加载每个独立程序,包括i/o接口程序和相同子被控对象的各个控制程序实例。

6.根据权利要求1所述的一种控制软件模块化设计方法,其特征是:相同子被控对象的各个控制程序实例加载时或是启动时,程序带不同的参数进行启动,控制程序根据该参数设置该控制程序实例的运行窗口标题,以示不同控制程序实例的区别。


技术总结
本发明的目的在于提供一种控制软件模块化设计方法,控制系统在多任务操作系统下运行的应用软件设计成相关的又独立的程序或任务,在该多任务操作系统下,至少设计出两个独立程序或任务,其中为相同的子被控对象设计一个独立的控制程序或任务,且带有身份为客户端的动态数据交换接口,且不直接访问计算机的I/O硬件接口,只针对被控对象进行控制逻辑的处理;同时设计一个独立的I/O接口程序或任务,计算机上用于完成该控制系统的全部I/O硬件接口均由该接口程序进行直接访问。本发明使具有被控对象特征且待开发的控制应用软件可运行在具有动态数据交换功能的多任务操作系统环境下,按照本发明设计方法进行开发实现,其开发过程变得简单易于实现。

技术研发人员:赵文斌,赵世舟,周阳,杨兆瀚
受保护的技术使用者:中国船舶重工集团公司第七0三研究所
技术研发日:
技术公布日:2024/1/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1