版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 PAGE50 / NUMPAGES69毕业设计(论文)材料清单1、毕业设计(论文)课题任务书2、开题报告3、工作进度检查表4、指导教师评阅表5、评阅教师评阅表6、答辩资格审查表7、答辩与最终成绩评定表8、毕业设计说明书毕业论文(设计)诚信声明本人声明:所呈交的毕业论文(设计)是在导师指导下进行的研究工作与取得的研究成果,论文中引用他人的文献、数据、图表、资料均已作明确标注,论文中的结论和成果为本人独立完成,真实可靠,不包含他人成果与已获得或其他教育机构的学位或证书使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了意。论文(设计)作者签名: 日期:年月日毕
2、业论文(设计)使用授权书本毕业论文(设计)作者同意学校保留并向国家有关部门或机构送交论文(设计)的复印件和电子版,允许论文(设计)被查阅和借阅。本人授权农业大学可以将本毕业论文(设计)全部或部分容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本毕业论文(设计)。本人离校后发表或使用该毕业论文(设计)或与该论文(设计)直接相关的学术论文或成果时,单位署名为。论文(设计)作者签名: 日期:年月日指 导 教 师 签 名: 日期:年月日工学院2013届毕业设计(论文)课题任务书学院:电气与信息工程学院 专业: 电气工程与其自动化 指导教师坚、成利香学生廖卫平课题名称 基于MATL
3、AB的图形用户界面设计容与任务图形用户界面(Graphical User Interfaces,简称GUI)是指由鼠标、窗口、按键、光标、菜单、图标、对话框和文本框等各种图形对象组成的界面。本文主要利用MATLAB强大的计算功能和用户界面设计实现简易计算器和感应电动机性能分析的图形用户界面设计。本设计课题重点研究以下两个方面的容:第一,基于MATLAB 的感应电动机性能分析界面设计。第二,用GUIDE编写一个简易计算器。基于MATLAB的简易计算器界面设计具有以下功能:1.实现十进制数的加、减、乘、除、乘方等简单四则运算;2.科学计算函数,包括三角函数、反三角函数、开方等函数运算;3.有后退键
4、、清除键,能清除上一次运算的结果。基于MATLAB的感应电动机性能分析界面设计具有以下功能:1.用户可以任意修改电动机等值电路的各参数;2.用户通过界面输入等值参数,可以得到感应电动机的等值电路与转矩与转子转速的关系曲线图;3.用户可以通过功能按钮键退出该界面。本文通过MATLAB的GUIDE中的控件,可以制作出以上两个用户界面设计,然后在对各控件编写Callback回调函数,就可以实现该界面应有的功能。最后我们用mcc命令把MATLAB编写的M文件变成.exe可执行文件,这样用户可以在没有安装MATLAB的环境下单独运行该程序,获得其界面。拟达到的要求或技术指标设计课题拟达到的要求如下:第一
5、,在感应电动机的性能分析界面设计中,要求设计的界面在用户指定的参数下,能够绘制出感应电动机的三相等值电路与其戴维南等值电路,并在等值电路的基础上求出感应电机一、二次侧的电流和电压、效率与定子的功率,在指定的转差率下能够绘制出感应电机的转矩-转速特性曲线并显示在界面上。第二,在简易计算器的界面设计中,要求用户设计的计算器能够实现四则运算、科学计算,并将计算结果显示在界面上。进度安排起止日期工作容备注2013.3.6-2013.3.152013.3.16-2013.3.242013.3.25-2013.4.252013.4.26-2013.5.52013.5.6-2013.5.162013.5.1
6、7-2013.5.26收集资料、熟悉毕业设计(论文)课题开题报告参数设计,软件编程方案调试编写毕业设计(论文)说明书进行总结、答辩准备主要参考资料1 杰. MATLAB宝典.:电子工业大学,2011.12 罗华飞. MATLAB GUI设计学习手记. HYPERLINK :/search.dangdang /book/search_pub.php?category=01&key3=%B1%B1%BE%A9%BA%BD%BF%D5%BA%BD%CC%EC%B4%F3%D1%A7%B3%F6%B0%E6%C9%E7&order=sort_xtime_desc t _blank 航空航天大学,201
7、1.23 琨,高思超,毕靖.MATLAB2010从入门到精通.:电子工业大学,2011.54 平.MATLAB 基础与应用M.:航空航天大学,2007.15 显宏.MATLAB 7.X 界面设计与编译技巧M.:电子工业,2006.26 王洪元.MATLAB语言与其在电子信息工程中的应用.: 清华大学,2006.27 谭浩强.C程序设计.:清华大学,2005.78 钟麟,王峰.MATLAB 仿真技术与应用教程M.国防工业,2002.69 查普曼 .MATLAB编程.科学.2011.410 洛恩,法恩.面向计算科学与工程的MATLAB编程.清华大学.2012.12教研室意见年 月 日院主管领导意见
8、年 月 日工学院毕业设计(论文)开题报告 题目基于MATLAB的图形用户界面设计学生廖卫平班级学号电气本0902班专业电气工程与其自动化1.课题任务的学习与理解图形用户界面(或接口)是指:人与机器(或程序)之间交互作用的工具和方法。如键盘、鼠标、跟踪球、话筒都可成为与计算机交换信息的接口。图形用户界面(Graphical User Interfaces ,GUI)则是由窗口、光标、按键、菜单、文字说明等对象构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,如实现计算、绘图等功能。若读者所从事的数据分析、解方程、计算结果可视工作比较单一,那
9、么一般不会考虑GUI的制作。但是如果读者想向别人提供应用程序,想进行某种技术、方法的演示,想制作一个可以反复使用且操作简单的专用工具,那么图形用户界面也许是最好的选择之一。MATLAB为表现其基本功能而设计的演示程序demo 是使用图形界面的最好例。MATLAB的用户,在指令窗中运行demo 打开那图形界面后,只要用鼠标进行选择和点击,就可浏览那丰富多彩的容。整体来说, MATLAB中GUI的建立有两大方式。第一种是直接通过程序编写的方式产生对象, 即利用uicontrol、uimenu、uicontextmenu 等函数以编写M文件的方式来开发整个GUI。这种方式建立的菜单比较齐全, 并且不
10、会额外产生一个.fig 文件, 程序代码通用性高, 因此当完成一个GUI后, 该程序代码就可以复制到一般的MATLAB 的M文件中使用, 也可以复制到GUIDE 的M文件中使用, 如此可以节省额外开发一样或类似对象的时间。但用程序编写的方式建立对象非常繁杂, 不仅需要先规划好每一个对象的位置, 还要一一输入对象所有对应的属性名称和属性值。若不是非常熟悉的用户可能会难以控制。另一种方式是直接通过MATLAB 的GUI编辑界面GUIDE 来建立GUI, 它有点类似Visual Basic 这一类的开发环境, 只要直接通过鼠标将对象拖拽到目的地, 就可以快速地建构出整个GUI, 设计简单, 并可将几
11、个图形对象加到一个图形上, 增强可视性。本设计课题通过MATLAB的GUI 编辑界面GUIDE 来建立感应电动机性能分析与简单计算器的图形用户界面(Graphical User Interfaces ,GUI)。2.课题调研综述MATLAB 是美国Math works公司出品的商业 HYPERLINK :/baike.baidu /view/1658637.htm t _blank 数学软件,用于算法开发、数据可视化、数据分析以与数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和 HYPERLINK :/baike.baidu /view/584919.htm t _blank S
12、imulink两大部分。MATLAB是矩阵实验室(Matrix Laboratory)的简称,和 HYPERLINK :/baike.baidu /view/30608.htm t _blank Mathematica、 HYPERLINK :/baike.baidu /view/127864.htm t _blank Maple并称为三大数学软件。它在数学类科技应用软件中在 HYPERLINK :/baike.baidu /view/920695.htm t _blank 数值计算方面首屈一指。MATLAB可以进行 HYPERLINK :/baike.baidu /view/10337.ht
13、m t _blank 矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、 HYPERLINK :/baike.baidu /view/14662.htm t _blank 图像处理、 HYPERLINK :/baike.baidu /view/1345304.htm t _blank 信号检测、金融建模设计与分析等领域。MATLAB具有很好的技术特点:1)界面友好,编程效率高 MATLAB是一种以矩阵为基本变换单元曲可视化程序设计语言,语法结构简单,数据类型单一,指令表达方武非常接近于常用的数学公式。即使对于那些不太熟悉计
14、算机编程的用户,只要有一点Windows操作的经验,在短时间就能快速掌握MATLAB 的主要容和基本操作。MATLAB不仅能使用户免去大量经常重复的基本数学运算,收到事半功倍之鼓,而且其编译和执行速度都远远超过其采用C和Fortran语言设计的程序。可以说,MATLAB在科学计算与工程应用方面的工程效率远远高于其他高级语言。2)功能强大,可扩展性强。MATLAB语言不但为用户提供了科学计算、数据分析与可视化、系统仿真等强大的功能,而且还具有独树一帜的可扩展性特征。MathWorks公司针对不同领域的应用,推出了自动控制、信号处理、图像处理、模糊逻辑、神经网络、小波分析、通信、等30多个具有专门
15、功能的MATLAB 工具箱。各种工具箱中的函数可以链装,也可以由用户更改。MATLAB支持用户自由地进行二次开发,用户的应用程序既可以作为新的函数滚加到相应的工具箱中,也可以扩充为新的工具箱。这些年来,国外许多不同应用领域的专家使用MATLAB开发出了相当多的应用程序。3)图形功能,灵活且方便,MATLAB具有二维与三维绘图功能,在程序的运行过程中可以方便迅速地用图形、图像、声音、动画等多媒体技术直接表述数值计算结果,可以选择不同的坐标系,可以设置颜色、线型、视角等,可以在图中加上比饲尺、标题等标记,可以在程序运行结束后改变图形标记、控制图形句柄等,并且还可以将图形嵌入到用户的Word文件中。
16、MATALB 可以创建图形用户界面(GUI) ,图形用户界面(GUI)是指由窗口、菜单、图标、光标、按键、对话框和文本等各种图形对象组成的用户界面。它让用户定制用户与MATLAB的交互方式,而命令窗口不是唯一与MATLAB的交互方式。它是用户和计算机之间交流的工具。MATLAB 将所有GUI支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。为什么要在MATLAB中建立一个GUI?生成用户图形界面有以下几点好处:编写一个需多次反复使用的实用函数,菜单、按钮、文本框作为输入方法
17、具有意义;编写函数或开发应用程序供别人使用;创建一个过程、技术或分析方法的交互式示例;3.研究容基于前面的分析和本文的研究目的,我们重点研究以下两个方面的容:第一,基于MATLAB 的感应电动机性能分析界面设计。MATLAB 语言以复数矩阵作为基本编程单元, 具有强大的数值计算功能、图形表达功能与可视化的仿真环境。通过MATLAB提供的图形用户界面(GUI) 设计与开发功能, 设计开发GUI 应用于电路分析和计算中, 可以使复杂的计算变得非常简便, 从而为感应电动机性能分析界面设计提供了一个有效的辅助工具。第二,用GUIDE编写一个简易计算器。设计计算器能实现的功能有加、减、乘、除、后退、清零
18、、三角函数等计算操作。4.设计进度安排 进度安排起止日期进度计划2013.3.62013.3.15收集资料、熟悉毕业设计(论文)课题 2013.3.162013.3.24开题报告 2013.3.252013.4.25参数设计,软件编程 2013.4.262013.5.5方案调试 2013.5.62013.5.16编写毕业设计(论文)说明书 2013.5.172013.5.26进行总结、答辩准备5.参考文献1 杰. MATLAB宝典.:电子工业大学,2011.12 罗华飞. MATLAB GUI设计学习手记. HYPERLINK :/search.dangdang /book/search_pu
19、b.php?category=01&key3=%B1%B1%BE%A9%BA%BD%BF%D5%BA%BD%CC%EC%B4%F3%D1%A7%B3%F6%B0%E6%C9%E7&order=sort_xtime_desc t _blank 航空航天大学,2011.23 琨,高思超,毕靖.MATLAB2010从入门到精通.:电子工业大学,2011.54 平.MATLAB 基础与应用M.:航空航天大学,2007.15 显宏.MATLAB 7.X 界面设计与编译技巧M.:电子工业,2006.26 王洪元.MATLAB语言与其在电子信息工程中的应用.: 清华大学,2006.27 谭浩强.C程序设计.
20、:清华大学,2005.78 钟麟,王峰.MATLAB 仿真技术与应用教程M.国防工业,2002.69 查普曼 .MATLAB编程.科学.2011.410 洛恩,法恩.面向计算科学与工程的MATLAB编程.清华大学.2012.12指导教师批阅意见 指导教师(签名): 年 月 日工学院毕业设计(论文)工作进度检查表题目基于MATLAB的图形用户界面设计学生廖卫平班级学号电气本0902班专业电气工程与其自动化指导教师填写学生开题情况学生调研与查阅文献情况毕业设计(论文)原计划有无调整学生是否按计划执行工作进度学生是否能独立完成工作任务学生的英文翻译情况学生每周接受指导的次数与时间毕业设计(论文)过程
21、检查记录情况学生的工作态度在相应选项划“”认真一般较差尚存在的问题与采取的措施(从教务系统中打印6次指导记录):问:开题报告有什么格式要求吗?答:开题报告按表格里的格式打印即可。问:如何处理MATLAB的函数句柄?答:进后台,使用get、set函数操作属性句柄值。问:编写MATLAB的回调函数需要注意哪些问题?答:相应控件的Callback函数只能在对应的Tag名称处编写问:GUI中如何插入图片?答:使用image、imread等函数编写程序插入图片。问:反三角函数的计算结果不正确,应如何修改Callback程序?答:请看程序里的反三角函数是否为acos或acosd。问:毕业设计论文的格式有何
22、要求?答:请参考学校相关文献规定。指导教师签字: 年 月 日学院意见: 负责人签字:年 月 日工学院2013届毕业设计(论文)指导教师评阅表 学院:电气与信息工程学院 专业:电气工程与其自动化 学生廖卫平学 号班 级电气本0902班专 业电气工程与其自动化指导教师坚、成利香课题名称基于MATLAB的图形用户界面设计是否同意参加答辩:是否指导教师评定成绩分值:指导教师签字: 年 月 日工学院毕业设计(论文)评阅教师评语表题目基于MATLAB的图形用户界面设计学生廖卫平班级学号电气本0902班专业电气工程与其自动化评阅教师振飞职称高级实验师工作单位工学院评分容具 体 要 求总分评分开题情况调研论证
23、能独立查阅文献资料与从事其他形式的调研,能较好地理解课题任务并提出实施方案,有分析整理各类信息并从中获取新知识的能力。10外文翻译摘要与外文资料翻译准确,文字流畅,符合规定容与字数要求。10设计质量论证、分析、设计、计算、结构、建模、实验正确合理。35创新工作中有创新意识,有重大改进或独特见解,有一定实用价值。10撰写质量结构严谨,文字通顺,用语符合技术规,图表清楚,书写格式规,符合规定字数要求。15综合能力能综合运用所学知识和技能发现与解决实际问题。20总评分评阅教师评阅意见评阅成绩评阅教师签名日期工学院毕业设计(论文)答辩资格审查表题 目基于MATLAB的图形用户界面设计学生廖卫平学号专
24、业电气工程与其自动化指导教师坚、成利香本设计课题是:基于MATLAB的图形用户界面设计,其研究步骤是:1,首先用MATLAB的GUIDE编辑器进行界面编辑,然后将界面激活,此时MATLAB将会自动生成一个M文件和fig文件;2,用户在M文件中相应的位置编写各控件的Callback了,编写完成后,当用户单击各按钮,就会按照Callback的语句执行相应的操作。本课题重点研究以下两个方面的容:第一,基于MATLAB 的感应电动机性能分析界面设计。MATLAB 语言以复数矩阵作为基本编程单元, 具有强大的数值计算功能、图形表达功能与可视化的仿真环境。通过MATLAB提供的图形用户界面(GUI) 设计
25、与开发功能, 设计开发GUI 应用于电路分析和计算中, 可以使复杂的计算变得非常简便, 从而为感应电动机性能分析界面设计提供了一个有效的辅助工具。第二,用GUIDE编写一个简易计算器。设计的计算器能实现的功能有加、减、乘、除、后退、清零、三角函数等计算操作。本设计课题的创新之处在于应用MATLAB的GUIDE编辑器进行感应电动机的界面设计,然后应用该界面进行感应电动机的性能分析,其调试结果符合设计要求。由于本设计课题的设计任务都已完成,且符合设计要求,特向答辩资格审查小组提出答辩申请,望批准!申请人签名: 年 月 日资 格 审 查 项 目是否01工作量是否达到所规定要求02文档资料是否齐全(任
26、务书、开题报告、外文资料翻译、定稿论文与其相关附件资料等)03是否完成任务书规定的任务04完成的成果是否达到验收要求05是否剽窃他人成果或者直接照抄他人设计(论文)指导教师签名: 毕业设计(论文)答辩资格审查小组意见:符合答辩资格,同意答辩 不符合答辩资格,不同意答辩审查小组成员签名:年月日注:此表中容综述由学生填写,资格审查项目由指导教师填写。工学院2013届毕业设计(论文)答辩与最终成绩评定表 学院:电气与信息工程学院 专业:电气工程与其自动化学生廖卫平学号班级电气本0902班答辩日期课题名称基于MATLAB的图形用户界面设计指导教师坚、成利香成 绩 评 定分值评 定小计陆秀令坚王小虎王勇
27、刚欣课题介绍思路清晰,语言表达准确,概念清楚,论点正确,实验方法科学,分析归纳合理,结论严谨,设计(论文)有应用价值。30答辩表现思维敏捷,回答问题有理论根据,基本概念清楚,主要问题回答准确大、深入,知识面宽。必答题40自由提问30合 计100答 辩 评 分分值:答辩小组长签名:答辩成绩a:20指导教师评分分值:指导教师评定成绩b:60评阅教师评分分值:评阅教师评定成绩c:20最终评定成绩: 分数: 等级:答辩委员会主任签名: 年 月 日 说明:最终评定成绩a+b+c,三个成绩的百分比由各系自己确定,但应控制在给定标准的10左右。2013届毕业设计说明书 基于MATLAB的图形用户界面设计院
28、、 部: 电气与信息工程学院 学生: 廖卫平 指导教师: 坚 职称 讲师 成利香 职称 讲师 专 业: 电气工程与其自动化 班 级: 电气本0902班 完成时间: 2013年5月30日 摘 要图形用户界面(Graphical User Interfaces,简称GUI)是指由鼠标、窗口、按键、光标、菜单、图标、对话框和文本框等各种图形对象组成的界面。MATLAB的图形用户界面设计采用了面向对象的技术。本文主要利用MATLAB强大的数值计算功能和GUIDE编辑器实现简易计算器和感应电动机性能分析的图形用户界面。基于MATLAB的简易计算器界面设计具有以下功能:1.实现十进制数的加、减、乘、除等简
29、单四则运算;2.科学计算函数,包括三角函数、反三角函数、开方、乘方等函数运算;3. 有后退键、清除键,能清除上一次运算的结果。基于MATLAB的感应电动机性能分析界面设计具有以下功能:1.用户通过界面可以任意修改电动机等值电路的各参数;2.用户通过界面输入等值参数后,可以得到感应电动机的等值电路与转矩与转子转速的关系曲线图;3.用户可以通过功能按钮键退出该界面。本文主要通过MATLAB的GUIDE中的控件,制作出以上两个图形用户界面,然后再对各控件编写Callback回调函数,就可以实现该界面应有的功能。最后我们用mcc命令把MATLAB编写的M文件编译成.exe可执行文件,这样用户可以在没有
30、安装MATLAB的环境下单独运行该程序,获得其界面。关键词:图形用户界面; MATLAB;简易计算器;感应电动机;回调函数ABSTRACTGUI (Graphical User Interfaces, GUI) is to point to by the mouse, Windows, buttons, cursor, menus, ICONS, dialog boxes, and text box composed of all kinds of graphic objects such as the User interface. MATLAB graphical user interfa
31、ce design using object-oriented technology. This paper use of MATLAB powerful numerical calculation function and GUIDE editor implementation simple calculator and induction motor performance analysis of graphical user interface. Simple calculator interface design based on MATLAB has the following fe
32、atures: 1. Implementation of decimal addition, subtraction, multiplication, division, such as simple arithmetic; 2. Scientific computing function, including the trigonometric function, inverse trigonometric function, prescribing, chengfang, functional operation; 3. The back button, the clear key, ca
33、n remove the results of the last operation. Based on induction motor performance analysis of MATLAB interface design has the following features: 1. The user interface can arbitrarily modify motor equivalent circuit parameters; 2. Input by the user interface the equivalent parameters, can get the equ
34、ivalent circuit of induction motor and the relationship between the torque and rotor speed curve; 3. The user can through the button to exit the interface function button. Controls within the GUIDE mainly by MATLAB in this paper, to produce more than two graphical user interface, and then write a Ca
35、llback on the control Callback function, can realize the function of the interface should have. Finally, we use MCC command compiled into the MATLAB M file. Exe executable file, so that users can not installed under the environment of MATLAB run it alone, get the interface.KeywordsGraphical User Int
36、erfaces;MATLAB;Simplecalculator; Inductionmotor;The callback function目录 TOC o 1-3 h z u HYPERLINK l _Toc3578472681 设计课题目的、任务 PAGEREF _Toc357847268 h 1HYPERLINK l _Toc3578472691.1 设计目的 PAGEREF _Toc357847269 h 1HYPERLINK l _Toc3578472701.2 设计课题任务 PAGEREF _Toc357847270 h 1HYPERLINK l _Toc3578472712 设计课
37、题软件系统 PAGEREF _Toc357847271 h 2HYPERLINK l _Toc3578472722.1 MATLAB的 GUI软件系统介绍 PAGEREF _Toc357847272 h 2HYPERLINK l _Toc3578472732.2 MATLAB的GUIDE编辑器 PAGEREF _Toc357847273 h 3HYPERLINK l _Toc3578472742.3 建立GUIDE对象 PAGEREF _Toc357847274 h 5HYPERLINK l _Toc3578472752.4 修改GUI对象属性 PAGEREF _Toc357847275 h
38、6HYPERLINK l _Toc3578472762.5 GUIDE中加入图案 PAGEREF _Toc357847276 h 8HYPERLINK l _Toc3578472772.6 设计课题中的GUI对象介绍 PAGEREF _Toc357847277 h 8HYPERLINK l _Toc3578472782.7 编辑GUI对象的Callback PAGEREF _Toc357847278 h 9HYPERLINK l _Toc3578472793 设计课题界面设计、调试与程序 PAGEREF _Toc357847279 h 11HYPERLINK l _Toc3578472803.
39、1 设计课题界面设计 PAGEREF _Toc357847280 h 11HYPERLINK l _Toc3578472813.1.1 简易计算器界面设计 PAGEREF _Toc357847281 h 11HYPERLINK l _Toc3578472823.1.2 简易计算器调试 PAGEREF _Toc357847282 h 12HYPERLINK l _Toc3578472833.1.3 感应电动机性能分析界面设计 PAGEREF _Toc357847283 h 14HYPERLINK l _Toc3578472843.1.4 感应电动机性能分析界面调试 PAGEREF _Toc357
40、847284 h 16HYPERLINK l _Toc3578472853.2 设计课题的MATLAB程序 PAGEREF _Toc357847285 h 17HYPERLINK l _Toc3578472863.2.1 简易计算器界面设计的MATLAB程序 PAGEREF _Toc357847286 h 17HYPERLINK l _Toc3578472873.2.2 感应电动机性能分析界面设计的MATLAB程序 PAGEREF _Toc357847287 h 17HYPERLINK l _Toc3578472884 设计课题M文件的编译 PAGEREF _Toc357847288 h 18
41、HYPERLINK l _Toc3578472894.1 安装编译器 PAGEREF _Toc357847289 h 18HYPERLINK l _Toc3578472904.2 M文件的编译 PAGEREF _Toc357847290 h 19HYPERLINK l _Toc357847291结束语 PAGEREF _Toc357847291 h 20HYPERLINK l _Toc357847292参考文献 PAGEREF _Toc357847292 h 21HYPERLINK l _Toc357847293致 PAGEREF _Toc357847293 h 22HYPERLINK l _
42、Toc357847294附 录 PAGEREF _Toc357847294 h 23HYPERLINK l _Toc357847295附录A 简易计算器界面设计的程序 PAGEREF _Toc357847295 h 23HYPERLINK l _Toc357847296附录B 感应电动机性能分析界面设计的程序 PAGEREF _Toc357847296 h 361 设计课题目的、任务1.1 设计目的1.熟练掌握MATLAB的M语言实现图形用户界面程序设计。2.掌握MATLAB的图形用户界面对象的控制方式。3.掌握MATALB的图形用户界面的绘图函数。4.掌握MATLAB 的M语言程序设计方法。
43、1.2 设计课题任务基于本次的课题设计,我们重点研究以下两个方面的容:第一,基于MATLAB的简易计算器界面设计。设计的计算器能实现的功能有加、减、乘、除、后退、清零、(反)三角函数等计算功能。本课题用MATLAB的M语言编写的图形界面设计较为简单,在GUI设计中主要用到三种控件,说明框用文本编辑框(edit text)编辑,显示框用静态文本框(static text)编辑,数字以与运算等按钮用命令按钮(push button)编辑,然后在通过各个按钮的Callback回调函数,实现简单的计算功能。第二,基于MATLAB 的感应电动机性能分析界面的设计。MATLAB 语言以矩阵作为基本编程单元
44、, 具有强大的数值计算功能、绘图功能与可视化的仿真环境。通过MATLAB提供的图形用户界面(Graphical User Interfaces,简称GUI) 设计与开发功能, 设计开发出应用于感应电动机性能分析和参数计算的GUI,从而为感应电动机性能分析提供了一个有效的软件计算工具,可以使复杂的数值计算变得非常简便。2 设计课题软件系统2.1 MATLAB的 GUI软件系统介绍矩阵实验室(Matrix Laboratory,简称MATLAB)是美国MathWorks公司出品的数学软件,主要包括两大部分:MATLAB和Simulink,可实现算法开发、工程数值计算和对动态系统进行建模、仿真等功能
45、。MATLAB它在理工科的数值计算方面得到广泛的运用。MATLAB可以进行矩阵运算、绘制平面与空间图形、实现算法、创建用户界面、连接其他编程语言编写的程序等,主要应用于金融建模设计与分析、工程计算、图像处理、控制工程、信号处理与通信、信号检测等领域。MATLAB可以创建图形用户界面(Graphical User Interfaces,简称GUI) ,图形用户界面是指由鼠标、窗口、按键、光标、菜单、图标、对话框和文本框等各种图形对象组成的用户界面。它可以让用户自由定制与MATLAB的交互方式,而命令窗口不是唯一与MATLAB的交互方式。图形用户界面是用户和计算机之间进行交流的工具,MATLAB
46、将所有图形用户界面支持的用户控件都集成在这个环境中并提供界面外观、属性、行为响应方式的设置方法。随着版本的升级,这种界面设计能力也在不断加强,并且具有强大的绘图功能,可以很方便的获得更高质量的曲线图。MATLAB为表现其基本的功能而设计的演示程序demo 是用户开发设计图形界面的最好例。在MATLAB的命令窗口中输入命令demo ,打开演示图形界面后,用户只要用鼠标进行选择和点击,就可浏览其中丰富多彩的容。整体来说, MATLAB的图形用户界面设计有两种方式:第一种是直接通过程序编写的方式产生对象, 即利用uicontrol、uimenu、uicontextmenu 等函数编写的M文件来开发整
47、个图形用户界面。用户使用这种方式建立的菜单比较齐全, 缺点是不会额外产生一个.fig 文件, 但是它的程序代码通用性很高, 因此当完成一个图形界面设计后, 该程序代码就可以复制到其他的MATLAB 的M文件中使用, 也可以复制到GUIDE编辑器的M文件中使用, 如此可以节省额外开发一样或类似对象的时间。但用程序编写的方式建立对象非常繁杂, 不仅需要用户输入所要建立的对象属性名称和属性值,还需要用户事先规划好每一个对象的位置。若用户不是非常熟悉图形界面的设计,很可能会难以控制界面的布局。另一种开发图形用户界面的方式是直接通过MATLAB 的GUIDE编辑器进行设计, 它有点类似Visual Ba
48、sic 这一类的开发环境, 用户只需将对象直接用鼠标拖拽到相应位置, 就可以快速的开发设计出整个图形用户界面, 其设计比编程方式简单,并可将几个图形对象加到一个图形界面中, 增强可视性。生成图形用户界面有以下几点好处: 编写一个需多次反复使用的实用函数,使文本框、菜单、按钮作为输入方法具有重要的意义; 编写函数或开发应用程序以供别人使用; 创建一个过程、分析方法或技术的交互式环境,方便用户使用;本设计课题主要是通过MATLAB的GUI编辑界面GUIDE编辑器来建立简易计算器与感应电动机性能分析的图形用户界面(Graphical User Interfaces,简称GUI)。2.2 MATLAB
49、的GUIDE编辑器刚开始建立GUI时,使用GUIDE编辑GUI的速度将会比较快。用户可以直接在MATLAB的命令窗口中输入guide,或在MATLAB的start菜单选取MTALATGUIDE(GUI Builder)选项或单击Desktop工具栏上的按钮,都可以打开MATLAB的GUIDE编辑器来进行界面设计。 guide使用此编辑器能够快速地设计出GUI,并且可以省略繁琐的函数,是以对象为导向的观念,使GUI的设计更加灵活;此外,若通过MATLAB Compiler编译为可执行文件或由MATLAB Runtime Server封装文件,就可以在没有MATLAB的环境下运行使用,以发挥最大效
50、用。在MATLAB 7.10中,GUIDE编辑界面如图1所示的“GUIDE Quick Start” 对话框,提供了Blank GUI、Modal Question Dialog、GUI with Axes and Menu、GUI with Uicontrols4种样板。图1 “GUIDE Quick Start”对话框Blank GUI样板:一个空的GUI样板,必须由用户自行加入所需要的对象,双击此选项后,在GUI编辑区不会有任何的对象存在。Modal Question Dialog样板:在此编辑器中已经有用户建立的一个问题对话框。GUI with Uicontrols样板:打开已经设计好
51、的一些GUI对象的GUIDE编辑器,而在此编辑器中已经包含了由用户建立的一些具有计算功能的对象。GUI with Axes and Menu样板:在此编辑器中也已经有一些由用户设计好的GUI对象,而这些对象主要用于计算与输出。在以上几个样板中,用户一般都是使用Blank GUI来建立GUI对象,选取完后单击ok按钮,即可打开如图2所示的GUI编辑界面。图2 GUI编辑界面2.3 建立GUIDE对象在MATLAB中打开GUI编辑界面后就可以进行GUI设计了,如图2所示的GUIDE 编辑界面中,左方提供了用户可选择的uicontrol对象。用户只需通过鼠标单击左方任一uicontrol对象后,然后
52、在GUIDE窗口使用鼠标拖拽对象大小来放置,就可以建立好该对象。如图3所示,用户用鼠标选取Push Button对象后,直接在GUIDE窗口拖拽该对象的大小来放置Push Button即可。Edit Text、Static Text的建立方式与Push Button的一样。用户建立完对象后,则在自己已经建立的对象上单击鼠标左键来选取该对象作为当前对象,即可修改各对象的大小,此时对象框的四周会显示四个黑点,即可直接用鼠标拖拽这些黑点来修改对象框的大小;同样可用鼠标选取该对象后,再拖拽移动对象即可修改对象的位置;用户可以使用鼠标直接拖拽右下角的黑点来进行修改整个GUI窗口的大小。图3 GUI的建立
53、2.4 修改GUI对象属性当建立完对象后,用户就可以开始修改对象的属性了,与前面介绍的方式一样,直接在该GUI对象上双击鼠标即可打开如图4所示的属性检查器,里面包含了该对象所有可设置的属性值与属性名称。假设必须将图3的Push Button对象的字形改为粗体字,因此在该属性检查器中单击 “Font Weight”右方的按钮后,选取其中的“bold”选项就可以将字体改为粗体字;另外,如果我们要更改按钮的名称,用户可以通过修改String属性,与修改Font Weight的做法一样,但由于String属性必须是输入显示的名称,因此将原本的属性值Push Button删除后再输入用户所需设计的按钮名
54、称即可。例如本设计课题中简易计算器的GUI设计的后退按钮Backspace属性设置,如图5所示。我们发现在GUIDE中设置对象属性是比较方便的,用户仅需了解该属性的用途以与各对象间之间的关系,而不需要完整的去记整个属性的名称,并且可以直接通过交互式的界面来进行各对象属性的修改,这样可以节省很多属性设置的时间,可以很快地建立一个符合我们要求的图形界面。图4 属性检查器图5 修改Push Button对象属性2.5 GUIDE中加入图案在GUIDE中加入图案,首先要在GUIDE编辑界面中建立一个Axes对象,作为图像显示的坐标轴,使用axes(句柄值)可以用来控制当前的坐标轴。在MATLAB中,一
55、个完整的图像显示过程必须使用到几个函数,分别为imread(读取图像)、image(显示图像)、imwrite(写入图像),这样我们就可以将特定的图案显示在GUI中,来美化我们的界面(有点类似于Visual Basic的picture对象的效果)。 本设计课题中感应电动机性能分析界面设计中显示的鼠笼式感应电机图像程序代码如下:ax=axes(Position,0.7 0.72 0.2 0.2); %控制当前的坐标值x,map = imread(IMPic1,jpg);image(x)set(gca,visible,off) %设置坐标为隐藏,只显示图像ax1=axes(Position,0 0
56、.48 0.9 0.23);2.6 设计课题中的GUI对象介绍下面简要介绍本设计课题使用的GUIDE编辑器中对象的用途与使用方式。Push ButtonPush Button为GUI最常使用也是最简单的对象,当用户按下Push Button时,MATLAB就会立即依据其对应的Callback程序来执行操作。以下为本设计课题的数字1按钮的Callback,其Tag属性为pushbutton1,这个按钮主要是用来进行数值计算,其整个对应的Callback程序如下:%按键1响应% Executes on button press in pushbutton1.function pushbutton1
57、_Callback(hObject, eventdata, handles)global iiText_String = get(Handles.Text,String);if(strcmp(Text_String,0.)=1)&(ii=0) set(Handles.Text,String,1) ;elseText_String =strcat(Text_String,1);set(Handles.Text,String,Text_String)endii=0;需要注意的是GUI中的属性字符是不分大小写的,所以Callback与CALLBACK与callback都是一样的。 Static Te
58、xt Static Text不同于Edit Text,不可以在执行中任意编辑输入值,因此Static Text主要用于制作显示框、状态信息、或其余资料(由String属性指定显示的文字),当然其显示的文字也是可以在执行过其他对象的Callback去编辑String属性的。例如当驱动某一对象的Callback后,会将句柄值为a的Static Text的属性改为 “执行中”,该对象的Callback为set(a,string,执行中)。Edit TextEdit Text主要是用来当做一个输入的接口,以便用户能够输入字符串、字符或数字,因此Edit Text的属性String即可作为一个有效的沟通
59、媒介。用户可以直接在Edit Text的Callback中编写获取该Edit Text输入值的程序:get(gcbo,string),返回当前Edit Text输入的值,然后在通过userdata或global的方式,将该值传递到要使用的Callback中,不过变量较多时,会造成管理上的不便,因此习惯上直接在要使用该值的Callback中,编写获取Edit Text输入值的程序,如hh=findobj(tag,abc);ff=str2mun(get(hh,string);,表示将Tag名称为abc的Edit Text中的输入值转换为数值后存储到ff变量中,这样就可省去变量传递的麻烦。此外,若多
60、行输入时必须调整Max与Min的属性值是Max-Min1,一般习惯将Max设为2。2.7 编辑GUI对象的Callback在MATLAB中,我们可以对句柄图形对象设置一些响应函数,这些事件的响应函数我们称之为对象的回调函数,不同的对象对应的回调函数不同。用户可单击M-file Editor按钮,则系统会自动将已建立的GUI对象存储,随后将产生*.fig(已建立的GUI文件)与*.m(用以编辑对象Callback的M文件),并且GUIDE会自动打开这个M文件,此时就可以开始编辑对象的Callback程序了。这里编写Callback的方式与GUIDE菜单编辑器的原理一样,可以直接在属性检查器的“C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《工程伦理》大二题集
- 平面设计 毕业论文
- 南宁2024年小学六年级英语第二单元期中试卷
- 2024-2025学年苏科版物理九年级上学期期中模拟测试卷(二)
- 2024年10版小学五年级英语第五单元期中试卷
- 2024年非机械驱动车辆项目投资申请报告代可行性研究报告
- 2024-2025学年高一上学期英语语法填空每日一练4(2篇含解析)
- 2024年醌类项目资金需求报告代可行性研究报告
- 2024年院前急救信息系统项目投资申请报告代可行性研究报告
- 【北师】期中模拟卷01【1-5章】
- 处方书写规范-完美版课件
- 金属切削机床导ppt课件(完整版)
- GB∕T 38075-2019 硬质道路石油沥青
- 绩效评价师考试-随机题库
- 疏浚工程施工安全管理措施论文
- 高中物理人教必修三13.2 磁感应强度 磁通量教案
- 学生儿童新生入学自我介绍简历
- 眼镜架和美学
- 大学团支书竞选ppt
- DB22∕T 5016-2019 市政工程资料管理标准
- 叉车日常维护保养检查记录表
评论
0/150
提交评论