一种软件开发方法技术

技术编号:16101059 阅读:44 留言:0更新日期:2017-08-29 22:11
一种软件开发方法,所述软件开发方法包括以下步骤:设置一控制对象和一被控对象,控制对象可控制被控对象进行动作,在软件设计平台中根据被控对象搭建仿真模型,根据控制对象的当前动作状态信号控制仿真模型运行、输出可执行代码并反馈到被控对象以控制被控对象动作,根据被控对象的动作状态与实际预设的动作状态实时修改仿真模型自身的算法直到被控对象的动作状态与实际预设的动作状态一致。通过以上技术方案可以实现对所开发的软件进行实时纠错和维护,使所开发的软件更加精确;同时通过结合实物的方式进行软件开发,有效缩短了其开发周期,并且有效节省了开发时间。

【技术实现步骤摘要】
一种软件开发方法
本专利技术涉及软件开发领域,尤其是涉及一种软件开发方法。
技术介绍
随着嵌入式系统复杂性的提高,嵌入式软件的开发与维护已经成为一项非常重要的工作,这就对软件开发人员提出了更高的要求,在嵌入式软件开发过程中,项目人员应该在软件设计中运用现代的软件工程思想和先进的软件开发方法。同时,对于实时、嵌入式应用软件的开发还应做到在软件设计中支持实时、快速的软件开发和维护。同时传统的设计流程图既不能准确地表达嵌入式软件的结构,也不能有效地分析嵌入式软件的结构,也不能有效地分析嵌入式系统的逻辑行为。传统的嵌入式软件开发方法是基于LABVIEW或者MATLAB或者SIMULINK的涉及平台,在平台上建立一个仿真模型,然后通过模拟信号来控制仿真模型进行相应的操作,并在此操作过程中将仿真模型生成可执行的代码,并结合单片机底层的驱动程序将两部分程序嵌套在一起,并通过上位机软件或仿真器烧写到单片机中,但是在此软件测试过程中,项目人员一旦发现程序错误或者应用此软件对实物的控制过程与实物的实际运行过程不相符,就需要返回单片机中在成百上千行源代码中查找原因,既延缓了开发进度,又增加了开发成本,无法建立有效的软件文档,这些问题导致软件的后期维护困难。而且在开发平台上通过模拟信号来模拟实物的实际运行过程中与实物实际的运行过程中是存在一定的悬殊差距的,实物的实际运行可能要考虑部件与部件之间的摩擦等情况,而模拟信号只是单一的模拟,中间并不存在其他信号的干扰,所以通过模拟信号所开发的软件在应用到真正的实物控制时,可能就会存在一定的误差。
技术实现思路
本专利技术的目的是为了解决现有技术中嵌入式软件开发周期长,维护困难,误差大的问题,提供一种维护方便,开发周期短,有效减小软件开发过程中的误差的嵌入式软件开发方法。为了达到上述目的,本专利技术通过以下技术方案来实现的:一种软件开发方法,按照以下步骤进行:(1)设置一控制对象和一被控对象,控制对象可控制被控对象进行动作;(2)在软件设计平台中根据被控对象搭建仿真模型;(3)根据控制对象的当前动作状态信号控制仿真模型运行、输出可执行代码并反馈到被控对象以控制被控对象动作;(4)根据被控对象的动作状态与实际预设的动作状态实时修改仿真模型自身的算法直到被控对象的动作状态与实际预设的动作状态一致。上述步骤(1)还包括以下步骤:1)采集控制对象的当前状态信号;2)将所述当前状态信号作为输入量输入给所述仿真模型;3)仿真模型根据当前状态信号并按照其自身算法进行动作仿真并生成可执行代码;4)将可执行代码烧录到单片机中;5)通过单片机控制被控制对象进行动作。进一步地,在步骤4)中将所述可执行代码与所述单片机的底层驱动程序相结合并烧录到所述单片机中。优选地,所述软件开发平台为基于MATLAB和LABVIEW的开发平台。进一步地,所述采集的控制对象的当前状态信号存储在所述MATLAB的工作空间内。进一步地,通过所述LABVIEW中编写的上位机采集软件采集控制对象的当前状态信号,并将此信号存储到所述MATLAB的工作空间内。进一步地,通过上述上位机标定软件实时修改模型中的标定参数以改变模型自身的算法。进一步地,所述仿真模型通过RTW实时生成工具生成可执行代码。本专利技术具有如下的有益效果:通过软件设计平台与实物相结合的方式,在软件设计平台上根据被控对象搭建仿真模型后,将被控对象的实际控制信号作为输入量来控制模型的运行,并将模型生成的可执行代码反馈到被控对象中,且通过比较被控对象的动作状态与实际预设的动作状态实时修改仿真模型自身的算法达到对所开发的软件进行实时纠错和维护,使所开发的软件更加精确;同时通过结合实物的方式进行嵌入式软件开发,有效缩短了其开发周期,并且有效节省了开发时间。具体实施方式下面结合实施例对本专利技术作进一步说明。本专利技术的一种软件开发方法,首先设置一控制对象和一被控对象,控制对象可控制被控对象进行动作,在进行软件开发前,需要在相应的软件开发平台中根据被控对象建立仿真模型,然后将此软件平台与控制对象相连,并通过此平台采集控制对象的动作,即采集控制对象的当前状态,将所述采集到的控制对象的当前状态信号作为输入量输入到仿真模型中,仿真模型接收到此状态信号后就会根据此状态信号进行相应的运行动作生成可执行的代码;然后通过将此代码烧录到单片机中并反馈到被控对象上以控制被控对象进行动作。在这期间,通过被控对象的动作状态与实际预设的动作状态实时修改仿真模型自身的算法直到被控对象的动作状态与实际预设的动作状态一致。之后,将被控对象的动作与实际预设的动作进行实时比较,如果被控对象的动作与实际预设的动作不一致,那么对仿真模型自身的算法进行实时修改直到被控对象的动作状态与实际预设的动作状态一致,通过这种方式所开发出来的软件具有高精度的优点。而传统的软件设计方法是通过在设计平台中建立模拟信号,通过模拟信号控制模型运行并输出代码,然后将代码烧录到单片机中,完成相应软件的开发。然后再将开发的软件单片机应用的实物中去试验,如果发现所开发的软件与实物的实际控制过程存在出入就再返回来再去寻找误差并消除误差,整个开发过程用时比较长,严重浪费了科研人员的时间。本实施例中软件设计平台优选为基于MATLAB和LABVIEW的开发平台;也可以选用其他软件设计平台,其基本的设计思路是一样的。首先,在所述设计平台中根据被控对象建立仿真模型;所述仿真模型需要基于控制对象的当前状态信号作为其自身的输入信号,并通过仿真模型自身的算法进行相应的动作运算并执行相应的运行。其中,所述仿真模型的算法可以根据其自身的标定参数做相应修改,只要能够改变其仿真模型的标定参数,其模型内部相应的算法就会发生变化;而对仿真模型相应参数的修改方式有很多种,这里优选采用通过上位机标定软件对仿真模型的标定参数进行修改。所述设计平台可通过具有采集信号功能的采集卡对控制对象的当前状态信号进行采集,为了节约成本,这里优选采用LABVIEW采集软件对控制对象的当前状态信号进行采集,并将采集到的状态信号输入到设计平台中的仿真模型中。为了提高软件设计平台的信息处理速度及扩大其内部存储量,优选地,将LABVIEW采集到的控制对象的当前状态信号输入到MATLAB工作空间内。MATLAB工作空间作为该软件设计平台的储存空间,将存储所采集的控制对象的当前状态信号,并将该当前状态信号作为仿真模型的输入量发送给所述仿真控制模型。仿真模型整个运行过程可以通过平台中的RTW实时生成工具生成可执行代码,然后将所生成的代码烧录到单片机中并通过此单片机控制被控对象的动作。期间,通过比较被控对象的动作状态与实际预设的动作状态实时反复修改仿真模型自身的算法直到被控对象的动作状态与实际预设的动作状态一致。为了能够使方案具有通用性,本实施例中,作为一种优选的技术方案,可将仿真控制模型生成的可执行代码结合单片机的底层驱动程序相结合烧录到单片机中,在实际应用中,针对不同厂家,不同型号的单片机,只要修改底层驱动程序的驱动代码,就可以顺利移植到任何一款单片机上,在一定程度上解决了代码跨平台移植的问题。接下来,详细描述一下本专利技术一种实施例软件设计流程。第一步,在软件设计平台中根据被控对象搭建仿真模型;第二步,采集控制对象的当前状态信本文档来自技高网...

【技术保护点】
一种软件开发方法,其特征在于,包括以下步骤:(1)设置一控制对象和一被控对象,控制对象可控制被控对象进行动作;(2)在软件设计平台中根据被控对象搭建仿真模型;(3)根据控制对象的当前动作状态信号控制仿真模型运行、输出可执行代码并反馈到被控对象以控制被控对象动作;(4)根据被控对象的动作状态与实际预设的动作状态实时修改仿真模型自身的算法直到被控对象的动作状态与实际预设的动作状态一致。

【技术特征摘要】
1.一种软件开发方法,其特征在于,包括以下步骤:(1)设置一控制对象和一被控对象,控制对象可控制被控对象进行动作;(2)在软件设计平台中根据被控对象搭建仿真模型;(3)根据控制对象的当前动作状态信号控制仿真模型运行、输出可执行代码并反馈到被控对象以控制被控对象动作;(4)根据被控对象的动作状态与实际预设的动作状态实时修改仿真模型自身的算法直到被控对象的动作状态与实际预设的动作状态一致。2.根据权利要求1所述的软件开发方法,其特征在于,上述步骤(1)还包括以下步骤:1)采集控制对象的当前状态信号;2)将所述当前状态信号作为输入量输入给所述仿真模型;3)仿真模型根据当前状态信号并按照其自身算法进行动作仿真并生成可执行代码;4)将可执行代码烧录到单片机中;5)通过单片机控制被控制对象进行动作。3.根据权利要求2所述的软...

【专利技术属性】
技术研发人员:董雄飞
申请(专利权)人:合肥民众亿兴软件开发有限公司
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1