如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
一、引言在组合导航系统综合设计中,我主要负责应用MATLAB对纯捷联惯导、捷联/GPS位置组合、速度组合、位置-速度组合等模式下的误差曲线进行绘制和比较。在此过程中,我了解了导航解算的一般流程。二、内容介绍1、MATLAB简介MATLAB最初是专门用于矩阵数值计算的软件,经过多年的发展完善,现在已经成为流行的科学计算与工程计算软件工具之一。MATLAB具备以下特点:1)程序环境高级并且容易掌握。具有与其他语言编写的程序相结合和输入输出格式化数据的能力;2)程序限制不严格,自由度大。拥有大量事先定义的数学函数,并且有很强大的用户自定义函数的能力;3)图形功能强大。数据的可视化实现非常容易,可以轻松绘制各类二维、三维图形。并且MATLAB拥有较强的图形用户界面(GUI)的编辑能力。2、MATLAB的一般编程方法MATLAB语言是由C语言编写的,因此它的语法与C语言有很大的相似之处。MATLAB编写的程序文件成为M文件,分为脚本文件和函数文件两种。脚本文件是一个独立的程序文件。而函数文件则需要输入输出参数,拥有独立的工作区和变量,整体相当于一个函数,供其他程序文件调用。下面简单的介绍M文件的主要编程格式:1)如果是函数文件,则需要在文件的第一行定义函数:function[out1,out2,out3…]=FunName(in1,in2,in3…)顾名思义,中括号中的变量为输出参数,圆括号中的为输入参数;2)‘%’后的字符串为注释内容;3)函数体部分跟C语言较为类似,拥有各种结构化的控制语句(如for循环、while循环、switch语句和if语句等),允许函数嵌套和递归;4)M文件中可以使用匿名函数,用@返回函数句柄,这样就不用为每个函数建立一个函数文件了;5)可以定义私有函数,只能由父M文件能调用它。实现方法是,在父M文件的目录里建立private文件夹,将私有函数放入该文件夹中。6)其他特性在这里不再赘述。3、MATLAB的GUI编程有GUI编程可以明显的体现出MATLAB语言的面向对象特征。MATLAB的图形对象包括计算机屏幕、图形窗口、坐标轴、用户菜单、用户控件等。计算机是作为根对象,由系统自动建立。在创建每个图形对象时,都为该对象分配唯一的值,称其为图形对象句柄。如常用的plot函数的返回值就是所绘制的图形的句柄值。我们可以通过句柄,并利用set/get函数设置和获取对象的属性。创建GUI的方法很简单,一次选择MATLAB的菜单栏File->New->GUI,就进入了GUI的创建引导界面,选择BlankGUI创建空白GUI。这种方式成为GUIDE方式。接着就可以为GUI添加各种元素了,主要包括菜单,控件以及坐标轴。3.1菜单的创建菜单包括两种:主菜单和弹出式菜单(ContextMenu)。创建菜单又可以按照两种方式进行——命令行方式以及利用菜单编辑器。在命令行中创建主菜单的代码为:%首先创建主菜单,Label为主菜单的标签名属性,标签名后面为主菜单的其他属性。f=uimenu(‘Label’,’LabelName’,’Property2’,’PropertyValue2’,…);%创建主菜单的各个子菜单,第一个参数即主菜单的句柄uimenu(f,’Label’,’LabelName’,’Property2’,’PropertyValue2’,…);%可继续添加其他子菜单及子菜单的子菜单。相类似的,创建弹出式菜单的代码如下:%首先创建弹出式菜单。cmenu=uicontextmenu(’Property1’,’PropertyValue1’,…);%创建弹出式菜单的各个子菜单,第一个参数即主菜单的句柄。uimenu(f,’Label’,’LabelName’,’Property2’,’PropertyValue2’,…);在创建其他对象的时候,可以将其属性的UIContextMenu定义为我们创建的cmenu,那么在该对象上单击右键就会弹出我们创建的弹出式菜单,显示出其各个子菜单。当然我们有更加简洁的方法来创建两种菜单,在如前述那样新建了GUI以后,我们就会进入Layout编辑器界面,点击菜单栏->Tools->MenuEditor可以打开菜单编辑器,在这个界面里我们可以轻松的创建各级菜单和编辑菜单的属性。3.2控件的创建进入Layout编辑器界面以后,在左侧有各类控件供用户添加。MATLAB的主要控件如下:复选框(C