收藏 分享(赏)

基于OpenGL的空战模拟系统设计与实现.doc

上传人:dzzj200808 文档编号:2226330 上传时间:2018-09-06 格式:DOC 页数:18 大小:87KB
下载 相关 举报
基于OpenGL的空战模拟系统设计与实现.doc_第1页
第1页 / 共18页
基于OpenGL的空战模拟系统设计与实现.doc_第2页
第2页 / 共18页
基于OpenGL的空战模拟系统设计与实现.doc_第3页
第3页 / 共18页
基于OpenGL的空战模拟系统设计与实现.doc_第4页
第4页 / 共18页
基于OpenGL的空战模拟系统设计与实现.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、基于 OpenGL 的空战模拟系统设计与实现摘要: 随着计算机技术的不断发展,近年来计算机游戏行业也在飞速发展,而由于 3-D 加速硬件设备的飞快的进步,游戏制造行业都将焦点集中在用创新的思想来生产交互式的 3-D 游戏。而 OpenGL 是游戏行业领域中最为广泛接纳的 2D/3D 图形 API, 其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。本游戏基于 OpenGL 的单玩家的 3D 小飞机游戏,它包含了一个三维游戏制作的绝大部分关键技术,其中包括了三维实体的绘制,爆炸效果设置,星空背景设置,游戏主题的生命设置、音响效果等。关键词:图形学;OpenGL;VC;爆炸效果;音频;

2、3D 游戏;目 录摘要1Abstract1引言21 背景知识21.1 计算机图形学21.2 3D 图形引擎OpenGL21.3 VC+6.0 编程工具42 系统设计内容和关键技术简介42.1 游戏内容简介42.2 关键技术简介52.3 设置 OpenGL 图形绘制环境53 空战模拟系统的设计与实现63.1 基本类的定义63.2 星空背景的定义63.3 飞行器的定义63.4 爆炸效果的定义73.5 三维流星实体的定义103.6 游戏类的定义113.7 屏幕文字的绘制113.8 声音效果处理144 空战模拟系统的演示164.1 运行环境要求164.2 空战模拟系统运行16结论17致谢18 参考文献

3、192 系统设计内容和关键技术简介2.1 游戏内容简介 具体的游戏规则如下:(1)太空中的流星是运动的三维物体,如果流星撞着飞行器则飞行器发生爆炸,因此应该尽可能控制飞行器躲避流星的来袭。(2)按 UP 箭头可以启动飞行器的引擎,飞行器向前运动,松开 UP 键则关闭引擎,飞行器速度逐渐减小,直至停止。(3)飞行器只能向前运动,不能向后运动。(4)按住 LEFT 键可以向左改变飞行器的运动方向;按住 RIGHT 键可以向右改变飞行器的运动方向。 (5)飞行器可以发射子弹,将太空中的流星击碎和爆炸。计算机毕业网-免费计算机毕业设计| 计算机毕业论文|计算机硕士论文 |计算机网络毕业设计|计算机专业

4、毕业设计|计算机硕士论文|电大毕业论文|开题报告|.23122372012-2-24(6)根基击碎的流星和游戏时间的长短可以获得不同的积分,积分多着胜出。2.2 关键技术简介本游戏包含了一个三维游戏制作的绝大部分关键技术,如三维实体的绘制,爆炸效果,星空背景,游戏主体的生命设置、音响效果等。本游戏的关键技术有:(1)游戏实体的绘制技术,如流星的绘制、飞行器的绘制。(2)爆炸效果的绘制,如子弹的绘制、爆炸的绘制、碎片的绘制。(3)屏幕文字的绘制技术。(4)音响效果编程。4.1 运行环境要求 (1)硬件环境 服务器:内存512M 客户端:普通 PC。 (2)软件环境 客户端:游览器 IE6.0 以

5、上。显示画面:1024*768 4.2 空战模拟系统运行进入游戏开始界面,按空格键可以开始游戏。通过 UP 键和 LEFT,RIGHT 键控制飞机运行,击落流星即得到相应分数,飞行器与流星相撞则发生爆炸,游戏结束,运行过程配有相关的音乐。其相关图片如下所示:1.开始画面screen.width-333)this.width=screen.width-333 border=0 alt=“ src=“uploadfile/jpg/2012-2/20122249395791.jpg“ width=285 height=247摘要:本文从我国大众化高等教育的实际出发,分析了高职信息安全技术的教学现状,

6、介绍了信息安全技术的教学改革思路和实验创新成果,摸索出一套“把实验实践环节与理论教学相融合,抓实验实践教学促进学科理论知识学习”的教学方法,有效地提高了学生的学习兴趣和课程的教学效果。 关键词本文来自:计算机毕业网 :信息安全技术;教学改革;实验创新 1 信息安全技术的教学现状 信息安全技术是数学、计算机科学与技术、信息与通信工程等学科交叉而形成的一门综合性课程,除了要求教师有宽广的知识和丰富的经验之外,还要有良好的教学条件、实验实践条件等。目前,信息安全技术的教学主要存在以下几方面的问题。 (1) 教材建设滞后。以“信息安全技术”为关键字,在专业图书网站“互动出版网”中搜索,找到了 78 种

7、,并不是很多,而且这些教材大多是本科院校的有关教材,大多是按学科体系组织编写,强调知识的系统性、理论性和完备性,缺乏可操作性、实用性和应用性。显然,这些教材并不适合高职学生。 (2) 学生学习基础差,理论教学难度大。高职学生是高考最后一批招生的,这些学生大多基础知识较差,没有养成良好的学习习惯和端正的学习态度。而信息安全技术较多涉及数学、物理、电子、通信等理工科的内容,这给理论教学带来了一定的难度。同时,这对教师也提出了较高的要求,对这些理论知识要把握“够用”和“适度”的原则,做到“不求甚解”和“点到为止” ,而且运用多媒体等现代化教学手段,把复杂抽象的原理和过程形象化、具体化、简单化,以符合

8、高职学生的认知规律。 (3) 实验实践教学有待进一步加强。实践教学作为教学过程中的重要环节,它不但有助于对理论知识的理解和应用,而且还可以提高学生的动手能力和对知识的运用能力,这对高职学生尤为重要。信息安全技术是一门实践性非常强的课程,实验内容量大面广,受高职院校实验室条件的限制,部分实验实践难以开展,且大多数实验是验证性实验,缺乏设计性实验和综合性实验。实验的典型性、代表性和仿真性也有待进一步提高。 2 教学改革与实验创新 我们在教学内容的安排、实验项目的选择、实验步骤的设计和实验文档的组织等诸方面做了精心的考虑和安排,尝试为“信息安全技术”课程编写了主要用于实验也可用于课堂教学的教材信息安

9、全技术实践教程。该教材依据课程教学大纲,充分理解课程的大多数主教材,遵循课程教学的规律和节奏,重视实验的可操作性、实用性和应用性,帮助学生切实把握本课程的知识内涵和理论与实践的水平。 信息安全技术实践教程通过一系列来自于实际工作中的实验练习,把信息安全技术的概念、理论知识与技术融入到实验实践当中,从而加深对该课程的认识和理解。全书共 12 章,包含了信息安全技术的各个方面(见表 1),包括可供选择的 25 个实验、1 个实验总结和 1 个课程设计。各章节都包含相关知识介绍、所需的工具及准备工作和实验步骤指导等,每个实验完成后,要求学生根据个人感受完成实验总结,以加深对概念的理解以及掌握主流软件

10、工具的基本使用方法等。教师通过实验总结,了解学生对相关理论知识和实践操作能力的掌握情况,及时调整教学方法和内容,做到“因材施教” 。 第 1 章:熟悉信息安全技术。包括信息安全技术的计算环境和标准化、信息系统的物理安全以及 Windows 系统管理与安全设置等方面。通过学习和实验,了解信息安全技术的基本概念和基本内容。通过对因特网进行的专题搜索与浏览,了解网络环境中主流的信息安全技术网站,掌握通过专业网站不断丰富信息安全技术最新知识的学习方法,尝试通过专业网站的辅助与支持来开展信息安全技术应用实践;熟悉标准化的概念、掌握信息安全标准化的内容及其意义,了解支持国家标准和其他标准信息的专业网站,并

11、较为系统和全面地了解与信息安全相关的国家标准;熟悉物理安全技术的基本概念和基本内容;通过学习使用 Windows 系统管理工具,熟悉 Windows 系统工具的内容,由此进一步熟悉 Windows 操作系统的应用环境。通过使用和设置 Windows XP 的安全机制,加深了解现代操作系统的安全机制,熟悉 Windows 的网络安全特性和 Windows提供的安全措施。 第 2 章:数据备份技术。包括优化 Windows XP 磁盘子系统和数据存储解决方案等方面。通过学习和实验,熟悉 Windows XP的 NTFS 文件系统,掌握优化 Windows XP 磁盘子系统的基本方法和理解现代操作系

12、统的文件和磁盘管理知识;熟悉数据备份技术的基本概念和基本内容。通过案例分析深入领会备份的真正含义及其意义,通过案例了解备份技术的学习和获取途径。 第 3 章:加密与认证技术。包括个人数字证书与 CA 认证、加密技术与 DES 加解密算法、RSA 加解密算法和认证技术与 MD5 算法等方面。通过学习和实验,了解电子签名法及其关于电子认证服务的相关规定,熟悉 CA 认证的基本原理和作用,掌握数字证书的申请和使用过程,熟悉加密技术的基本概念和基本内容,熟悉认证技术的基本概念和基本内容;用Visual C+实现 DES、RSA 加解密算法和 MD5 算法,深入理解加解密算法及其在程序设计中的实现过程。

13、 第 4 章:防火墙与网络隔离技术。包括防火墙技术及 Windows防火墙配置和网络隔离技术与网闸应用等方面。通过学习和实验,熟悉防火墙技术的基本概念和基本内容,掌握通过专业网站不断丰富防火墙技术最新知识的学习方法,并在Windows XP 中学习配置简易防火墙(IP 筛选器)的操作;熟悉网络隔离技术的基本概念、工作原理和基本内容,熟悉隔离网闸的基本概念和工作原理,了解网闸产品及其应用。 第 5 章:安全检测技术。包括入侵检测技术与网络入侵检测系统产品、漏洞检测技术和微软系统漏洞检测工具 MBSA 等方面。通过学习和实验,了解入侵检测技术的基本概念和基本内容;了解漏洞检测技术的基本概念和基本内

14、容,学习在 Windows 环境中安装和使用MBSA 软件。 第 6 章:访问控制与审计技术。包括访问控制技术与 Windows 访问控制和审计追踪技术与 Windows 安全审计功能等方面。通过学习和实验,熟悉访问控制技术的基本概念、工作原理和基本内容,学习配置安全的 Windows 操作系统,掌握 Windows的访问控制功能;熟悉安全审计技术的基本概念和基本内容,通过应用 Windows 的审计追踪功能,加深理解安全审计技术。 第 7 章:病毒防范技术。包括病毒防范技术与杀病毒软件和解析计算机蠕虫病毒等方面。通过学习和实验,熟悉计算机病毒防范技术的基本概念,掌握计算机蠕虫病毒的查杀和防范

15、措施,尝试通过专业网站的辅助和支持来开展计算机病毒防范技术的应用实践。 第 8 章:虚拟专用网络技术。通过学习和实验,熟悉虚拟专用网络技术的基本概念和基本内容,尝试通过专业网站的辅助和支持来开展 VPN 技术的应用实践。 第 9 章:信息安全管理与灾难恢复。包括信息安全管理与工程和信息灾难恢复规划等方面。通过学习和实验,熟悉信息安全管理的基本概念和内容,通过学习某金融单位的“计算机安全管理规定” ,提高对信息安全管理工作的认识,理解信息安全管理工作的方法;熟悉数据容灾技术和信息灾难及其恢复计划的概念、内容及其意义;通过案例更好地理解灾难恢复规划的概念。 第 10 章:信息安全技术的应用。包括电

16、子邮件加密软件 PGP、Kerberos 认证服务、公钥基础设施 PKI、安全通信协议(SSL)与安全电子交易协议(SET)和反垃圾邮件技术等方面。通过学习和实验,熟悉 PGP 和MiniPGP 软件的使用来实现对邮件、文件等的加密与传输,掌握 PGP 的基本功能;熟悉认证的概念、认证协议,了解 Kerberos 模型、原理及其基本内容;了解 PKI、SSL 和 SET、反垃圾邮件技术的概念、原理及其基本内容。 课程设计:信息安全技术课程设计为学生提供了可供选择的几个不同应用领域的典型案例,例如金融信息系统、电子商务系统、电子政务系统等,要求学生根据已经掌握的信息安全技术知识,对案例进行信息安

17、全的规划与设计,完成相应的规划设计文档。 各章节的难易程度不同,实验练习之间的难度不断增加,循序渐进,学生在实验中遇到困难,还可以搜索更早的实验来帮助解决问题。每个实验完成后,要求学生根据个人感受完成实验总结;师生通过“实验总结”和“教师评价”部分,交流对学科知识、实验内容的理解与体会。 3 学生的体会与评价 信息安全技术实践教程经过多轮学生使用,得到了学生的普遍好评。学生们积极的评价不仅仅是对教学的肯定、对实验内容的肯定,更重要的,是可以从中看到和体会到学生对教学改革的期望。 参考文献:本文出自: 计算机毕业网 1 周苏等信息安全技术M 北京:科学出版社,2007 2 黄林国,凌代红,张丽君

18、高职计算机应用基础的教学改革与实验创新J计算机教育,2006,(18) 3.2 系统模块分析与设计 1)系统管理:包括帐号管理、系统信息管理和视频文件管理。帐号管理:包括普通用户和发布员的基本信息和权限的管理都在“用户管理”模块中,系统管理员有权添加、删除、查看和修改所有普通用户和发布员的信息。视频文件管理:系统管理员和发布员可以添加视频文件,系统管理员可以修改、删除视频文件。系统信息管理:设置系统的信息。2)视频播放与下载:合法用户能够点播或下载视频。3)用户功能:用户功能包括注册新帐号、用已有的帐户登录、修改密码、通过密码保护找回密码、用户留言、查询、注销。注册新账号:用户输入注册信息,输

19、入的信息合法就能注册新帐号。用户登录:用户登录模块采用与 SQL 数据库连接通过比较用户输入的信息与数据库中的数据判断用户的身份。登录身份分为三种:系统管理员、普通用户、发布员。 修改密码:普通用户和发布员可以修改自己的登陆密码。密码保护:用户如果忘记密码或密码被修改,可以通过密码保护找回密码。通过回答注册用户时填写的密码保护答案,如果回答正确就能取得密码。用户留言:用户可以发表对影片的看法,以及提出意见和建议。查询:系统的所有合法用户都能使用“查询”模块的功能。 “查询”模块提供视频文件的查询。只能进行精确查询,不支持模糊查询。注销:所有的系统合法用户登录完成操作后退出系统都要进行“注销”操

20、作、或者进行用户转换也需要进行“注销”操作。系统功能模块分析与设计层次图,如图2:图 2:视频点播系统功能模块层次图3.3 Web 界面设计Web 界面设计使用母版页,此方法可以使整个系统更加符合信息空间的信息存储,运行速度更快,信息层次更加清晰,用户操作则更方便,更有条理。示意图,如图3:图 3:页面设计的框架3.4 系统流程图用户进入系统主页面后,输入用户名和密码,点击提交后,系统将根据用户输入的用户名和密码判断该用户是否为合法用户;如果用户输入的用户名和密码出错,系统将提示出错,并返回到登录界面;如果用户输入的用户名和密码正确,系统将根据用户的身份选择相应的功能;所有合法用户在处理完业务

21、后,都需要视频点播系统的设计与实现摘 要随着计算机技术和 Internet 的日新月异,宽带 VOD 视频点播技术因其良好的人机交互性和流媒体传输技术倍受教育、娱乐等行业青睐。本文阐述了基于 WEB 的交互式视频点播系统的协议原理、软件结构和设计实现。本视频点播系统根据流媒体传输原理,在校园局域网的基础上模拟基于Web 的视频点播系统,实现用户信息管理、视频文件的添加、删除、修改及在线播放和搜索功能。本系统是一个小型系统,我们采用基本的 SQL Server 数据库。具体实现中将HTML、ASP.net 及 C#相结合,力求界面美观、操作流畅。本文主要论述服务器端视频服务平台的搭建、流媒体的相

22、关原理及管理功能的具体实现。关键词:流媒体;ASP.net;视频点播英语课堂是小学英语教学的基本组织方式,是言语实际的课堂,也是培育学生创新思想的阵地。在课堂教学中,轻松的言语情境、有效的思考 、生生的互动、丰厚的想象都包括着丰厚的创新教育要素,因此教员应充沛应用这些创新要素激活学生的创新看法,培育学生的创新思想。 一、创设情境,激活学生创新思想 言语教学需求创设情境,而激起学生的发明看法和创新思想异样也需求一定的情境。教员只要经过创设情境,激起发明看法,才干奠定好创新思想的基础。教员应依据教学内容创设言语情境,使学生“心”临其境,进入角色,扩宽思想,培育创新看法和发明肉体,使其发生发明力。例

23、如在教学“Shopping”这一课时,我特意把教室各个角落设计成超市、服装店、文具用品店。我先和学生就课文中的句型“Can I help you?What colour?How much is it?”示范教学购物情形。结果在情形交流进程中,学生依据生活实践与售货员讨价讨价,课堂顿时沸腾了,一段段出色 的口语交流出现了出来,学生的创新思想也在此进程中闪现了出来。 言语学家克鲁姆以为:“成功的外语课堂教学应创设更多的情形,让学生无时机运用已学到的言语资料。 ”因此,英语教员要尽能够多地创设有效的学习情境,让学生多角度了解英语,激活学生的创新思想。 二、多种渠道,培育学生创新思想 英语课程规范的推

24、出,将从基本上改动学生在学习英语中机械重复、消极主动、融会贯串等学习状况,引领学生最终完成一种积极向上、轻松愉悦、富于热情、富有创新看法和创新思想的英语课堂学习。因此,在英语课堂教学中,教员要经过多种渠道,有效地启示学生创新思想,培育学生的创新才干。 1.在思考 中创新 “学起于思,思源于疑” 。学生只要有所思、有所疑,才干不时引发创新思想。在课堂上有目的地思考 ,有助于培育学生的创新思想。英语具有丰厚的词汇和多变的句型,充沛应用英语学科的这一特点,培育学生的创新思想。如今的小学生已有了比拟多的单词、习语和一定数量的基本句型,为创新思想教学提供了基础,因此教员要有目的地停止引导和点拨。 例如,

25、在温习字母组合“ea”在单词中的发音时,学生们很快地说出它的读音。然后我进一步启示他们还有哪些字母组合也发这个音,学生众口一词地回答“ee”,我接着问:“我们学过的单词有哪些呢?想好的同窗可以站起来讲。 ”学生纷繁给出回答:three,tree,green,meet, 这充沛表现了创新思想所发生的效果。 2.在协作中创新 协作是一种新的学习方式,它越来越普遍地被运用于英语课堂教学之中,它将传统的教学改为对等、民主的教学、沟通协作的教学、互动创新的教学。在这种方式下,成员之间可以相互交流,彼此争论,互教互学,共同提高,既充溢温情和友爱,又像课外活动那样充溢互助与竞赛。 例如在教学“At the

26、Weekend”一课时,我先指点学生学习操练句型:“What do you do at the weekend?”,然后把学生分红若干小组,相互讯问。在此协作交流的进程中,学生你一言,我一语,人人都有了参与表现的时机,并且让单调的内容变得生动生动。如此一来,学生在概括吸收同伴阅历的进程中又拓展了自己的思想,提高了创新才干。3.在想象中创新 爱因斯坦说,“一切发明性休息都是从发明性的想象末尾的” 。想象是创新的基础,是一种极端可贵的思想质量。想象是思想的体操,是创新的翅膀,是拓展思想空间的内驱力,因此,在教学中,教员应为学生发明想象的空间,引导学生发扬想象,推进学生创新思想的开展。 如在稳固单词

27、 bus 时,我让学生说出与 bus 有关的词,学生们发扬想象,说出了 people(人),start(启动),stop(停),ticket( 票 ),engine(发起机),driver(司机),car(小汽车),door(门)等。还有一些学生说出一些外表上看似没有联络的词,这时让学生解释他所以为的内在联络,有形中又再次激起了师生的想象力,师生之间构成互动。这种练习 不但使学生的想象力失掉了发扬,而且使学生区分、记忆词汇的才干失掉了提高,开展了学生的创新思想。 三、积极评价,鼓舞学生创新思想 德国教育家斯多惠说:“教育的艺术不在于教授身手,而在于鼓舞、唤醒与鼓舞。 ”传统的评价方式不利于学生

28、创新思想的开展,因此教员要改动评价方式,坚持以鼓舞为主,满足学生的成功需求,调动他们的积极性。尤其是关于学生迸发的创新思想的火花,更应给予充沛的一定。我往常主要采取以下两种评价方式。 1.鼓舞性的评价 鼓舞学生“想入非非”,“别具一格” 。当学生回答错误时,我不马上说“No,you are wrong.”,而是说“Please think it over.”。关于学生作业中的错误,也不单单划“”了事,而是在错误局部下面划线,并在旁边注上“?”,表示学生再思考 思考 。 2.分层次的评价 不同水平的学生,设以不同水平的要求,并分层次评价指点。关于优秀学生,给予严厉和高要求的评价;关于后进生,给予

29、一定、鼓舞的评价,添加他们的自决计,尊重他们。 由此可见,教员只要以信任和鼓舞的态度一定学生的发现,置信学生的提高,同时留意给予积极性的评价,学生的创新火花才干得以熄灭,创新思想才干得以开展。 总之,有创新才干有开展,教育要以学生开展为主,以开展学生创新为本。因此,作为教育任务者,我们要不时实际,深化探求,锲而不舍地启示学生创新思想,培育学生的创新肉体,并最终使学生开展成为勇于思考 、勇于创新的新时代的接班人。新的软件开发技术和开发工具不时涌现,软件开发人员如何从中分清好坏、去芜存菁,既及时了解所出现的重要技术新静态,又不会淹没于对自己协助不大的开发工具和技术细节之中? 如今软件技术的演化步伐

30、已大大加快,你一眨眼,说不定就错过了某项重要技术。软件开发产业正在蓬勃开展,新的软件产品和创新技术天天 都在潮水般涌入市场。这就引发了一个效果: 技术的这种快速演化是代表着软件开发进入到一个成熟阶段?还是说我们行进的步伐真实太快了? 要准确地回答这些效果似乎是不能够的,不过有一点可以一定,如今的软件开发环境比过去任何时分都要庞大、都要复杂。由于同时有众多不同软件技术和软件产品进入市场,再加上测试版到正式版的交付周期延长,如今开发人员往往手足无措,觉得自己落在前面。比如,单就微软平台就会有成百上千种新兴技术出现,而且这种演化速度之快和技术的爆炸式增长态势并不只仅局限于某局部范围,而是整个软件开发

31、范围普遍存在的现象。对软件开发的从业者而言,想紧跟技术的最新脚步越来越困难。 那么,软件开发人员如何及时了解这个范围所出现的重要新静态,又不会淹没于与自身项目关系不大或协助不大的开发工具和技术细节之中?如何分清好坏、去芜存菁,全身心肠关注确实很重要、很珍贵的那些技术?虽然没有一个复杂的答案能解开这个谜,但有一种方法也许管用,那就是坚持自动、笼统和不时完善自己的知识结构。自动反击 在.Net 出现的早期 ,新工具和新技术的推出并不是太快。特殊 是最后 6 年到 8 年,这些工具和技术以合理的距离时间推向市场,这使得软件开发人员可以花比拟长的时间来研讨、审查及评价这些技术,并停止实践检验,最后可以

32、准确地就这些技术对整个项目或单个目的来说是不是适宜做出判别。在一般状况下,人们甚至可以对这些产品和技术停止试用。作为开发团队也有时间等各种开发工具的正式版出来,再停止评价。换句话说,从久远来看,等候能收到成效。 而到了明天: 等候却意味着失败。如今的技术开展速度比十年前要快得多。而不时变化的软件范围触及的技术面比以往任何时分都要广,不只触及企业技术、互联网技术、云计算还触及移动技术,这就使得开发人员经常要同时学习和把握 多种平台和多种技术软件。 最近两三年新的技术和更新版本涌现得更为频繁,测试版到发行候选版的周期已大大紧缩,结果让人觉得似乎每个月都有新技术在推出。这关于普通的.Net 开发人员

33、来说,就意味着无法像过去那样可以渐渐来,由于时不我待,假设袖手旁观,只是等更新版本和新技术推出,那肯定会落伍。 开发人员要想自己不落伍,就必需更积极自动。实践上,这意味着需求摆脱传统的“等”的心态,而要自动迎接行将出现的变化: 明白哪些新兴技术 (不论热不抢手)最能满足项目在以后和未来的需求,向专家和项目团队积极探听最新的演示版本和信息,在最终发行版上市之前参与讨论。软件开发人员最终能否成功,要看他能不能随机应变、迅速顺应不时变化的情势,假设开发人员情愿努力变得更积极自动,他们不但可以在迅速变化的时代幸存上去,还会有更大的作为。学会笼统 要在如今的软件开发范围取得成功,积极自动而不是消极主动是

34、一个重要方面,不过这也带来了一个让人生畏的应战: 面对出如今市场上的众多新技术,你该如何确定重点关注的技术?如何确定哪些技术会实在可行、经久不衰,哪些技术又会半途夭折?由于简直不能够猜测哪些技术会是必不可少的技术,开发人员经常发现自己面临越来越大的压力,最后只好采取“什么都学习”的战略。但是,成为一个“样样都懂,样样不精的人”简直与袖手旁观一样,不利于最后成功。 开发人员手里没有可以预知未来的水晶球,这就需求有另一种方法为未来成功做好预备。笼统就是这样一种方法,是指增加及剔除具体细节,以便重点关注重要概念。也就是说,假设开发人员在自己与不时变化的技术环境之间添加一层笼统,就能有效地选择、大致了

35、解及评价众多相关重要的技术,又不会觉得自己自愿片面学习新出现的每一项小众技术。 有很多方法能协助软件开发人员取得所需求的信息。比如: 1. 向技术专家讨教。项目或团队担任人以及行业剖析师是适宜的人选,该人应该对某一项技术可以给出有见地、冷静而客观的看法。确定专家之前,有必要花一些时间来真正了解这团体,就像仔细审查重要的效劳提供者一样,比如会计师、律师或许甚至汽车修缮工。 2. 要是找不到专家,也可以找一家值得信任、过去已证实 了其价值的厂商。假设一家公司拥有失掉验证、成熟牢靠的技术,又能提供附加值,而另一家公司拥有新奇 但还没有失掉证实 的技术,那么选择前者总比选择后者来得稳妥。3. 充沛发扬

36、工具的作用,比如对象关系映射(ORM) 套件。由于 ORM 具有充任某种平衡器的共同功用让软件开发人员可以在多个不同环境外面高效任务,不需求在每一种数据库系统方面都要有专门知识,所以它提供了一种行之有效的手腕,不需求从头末尾学习就可以充沛应用新兴技术。 不用管具体是如何做到的,在开发环境外面运用笼统的艺术让开发人员可以“与世隔绝”,增加软件范围的动乱和变数对自己的不利影响。 既见树木又见森林 俗话说“只见树木 ,不见森林”,面临如潮水般涌现的新技术时,开发人员置身其中,想看清全局异常困难,比如很美观清哪些创新能够会给现有或未来的项目带来严重影响,哪些技术又会行将过时、湮没于计算机历史的长河中。

37、而对这一切有一个比拟清楚的看法,无论是对开发人员集体还是整个开发团队来说都极端重要。想失掉更准确的看法,就需求停止一番“过滤挑选”,不时空虚自己的知识面,也就是完善自己,做到既见树木,又见森林。 虽然很多技术威望在宣讲某种技术时总是讲其如何重要,但相对不要置信哪一些技术是每个软件开发人员为了成功都要非学不可的。当然,针对特定场景而言,所用的工具和技术一定存在好坏之分,确定哪些技术最适宜某个具体的项目是第一步。 假设软件开发人员对某个开发环境的共同要求停止片面深化的评价,就可以确认该开发环境能否适宜某项目的要求。同时,比拟清楚地了解项目要求,反过去也有助于过滤挑选进程: 确定及关注那些相关重要的

38、技术可以带来最大的附加值,又不用理会那些基本上没有多大实效的、炒作凶猛的“抢手”技术。想亲身试一下,比拟片面地了解某项新技术(而不是仅仅略懂皮毛),就需求花几个早晨来熟习它,这离不开深化研讨、实践运用演示版本 ,以及讨教该范围的专家。软件开发人员只要不时空虚自己的知识,才干明白应当把哪些新技术添加到最终候选名单上,从而确保拥有最新的技艺组合。 明天,少量新技术涌入市场的趋向丝毫没有要中止的迹象,如何选择给软件开发人员带来了越来越大的压力。实践上,软件开发人员应当少关注了解每一项新技术的细节,而多关注并弄清楚哪项技术最适宜自己的软件开发实际和环境,以便坚持足够的灵敏性。开发人员只要真正了解了这个

39、观念,才会发现其实可以在坚持头脑清醒的同时坚持技艺最新。 摘要:本文阐述了如何使用 C/C+交互计算平台来加强本科控制系统课程的教学工作。课程选择使用 Ch 开发的软件包,即 Ch 控制系统工具包CCST(Ch Control System Toolkit )和基于 Web 的控制系统设计分析系统 WCSDAS(Web-based Control System Design and Analysis System )。CCST 工具和 C/C+兼容,并提供了类似 MATLAB 控制系统工具箱的功能。基于 CCST 的 WCSDAS 使学生可以在任何时候任何地点通过 Web 学习控制理论和设计原

40、型控制系统,而不需要写任何代码。使用这些工具有很多优点:更好的视觉效果、更易理解、学生更有兴趣。 关键词:控制系统设计分析;基于网络的控制工具;WCSDAS 1 简介 自动控制已成为绝大多数工程学科的重点研究内容,其相关课程也是各类工程课程的组成部分1。随着数学和计算技术的进步,现代控制工程的设计和分析方法大大扩展了可解决问题的范围。日益发展的计算密集型方法学需要开发新的教学工具,以提高控制教学的成效。诸如 MATLAB 控制系统工具箱 2和 Mathematica 控制系统3之类的软件包已进入市场,供计算机辅助控制系统设计和分析。随着万维网的广泛普及,基于 Web 的控制系统设计和分析工具正

41、成为一种很有前景的技术。在教育领域,该技术能够极大地改善控制系统的教学效果。这些工具使学生更积极地投入到控制课程的学习,并且具有很好的远程教育效果45。基于 Web 的交互式计算工具使学生很容易尝试不同的控制方案,并通过观察Web 上即时生成的控制结果探索新的控制策略。 本文介绍了开源 Ch 控制系统工具包 CCST(Ch Control System Toolkit)和面向自动控制系统教学的基于 Web 的控制系统设计和分析系统 WCSDAS(Web- based Control System Design and Analysis System),详细说明了这些工具对提高学生学习效率的作用

42、。利用 C/C+开发的 CCST 控制系统工具包可以与实时控制软件无缝连接。WCSDAS 以 Web 方式调用 CCST 的控制功能。CCST 和WCSDAS 都是开源软件,学生可以通过阅读它们的源代码来理解控制原理和算法是如何实现的,也可以通过扩展软件功能来解决新问题,学习如何用计算机程序实现控制算法。这些软件包可供教师和学生免费使用。 2Ch 控制系统工具包 Ch 控制系统工具包67CSST 是一款基于对象的软件包,它是在解释性的 C/C+环境Ch8-10中开发的。CSST 设计了一个 C/C+控制类,提供线性时不变控制系统的建模、分析和设计等函数功能。它包含了控制系统设计和分析中常用的功

43、能模块,如时域响应、频域响应、系统分析、系统设计、模型转换和系统转换等。大部分功能都适用于连续或离散的 LTI 系统,该系统的模型可以是状态空间模型、传递函数模型或零极点增益模型。CCST 的成员函数与 MATLAB 的控制函数的对应关系如表 1 所示。CCST 和 MATLAB 控制系统工具箱之间详细的语法对比见参考文献11。此外,参考文献 12中的网页以示例形式对比了这两种方法。 表 1 Ch 控制工具包成员函数和等效 MATLAB 函数部分清单 传统上,控制系统设计和模拟大都是在诸如 MATLAB 和Mathematica 之类具有很强计算能力的环境中进行的,但是为这些环境写的代码却无法

44、在实时控制系统中直接使用。虽然这些环境大多都提供了可以将控制代码编译成适用实时控制(很可能是 C 语言)的转换器,但是转化效率低,且转化后的程序代码容易出错。此外,某些情况下,生成的 C 代码缺乏良好的组织,不易理解。因此,维护生成的 C 代码并将其与工程领域现有的大型软件系统集成将会比较困难。而如果用 CCST 来进行实时控制系统的设计和模拟,则会大大减少这方面的困难。由于 CCST 是用 C/C+开发的,CCST 就能更方便地以源代码或二进制形式与现有的 C/C+代码对接,这就消除了代码转换引起的错误,同时用户也可以只通过一种语言进行建模,分析、设计和控制实时系统。下面用一个简单的实例来说

45、明如何使用 CCST 解决控制问题。 例 1:利用 CCST 模拟二阶系统的阶跃响应,如图 1 所示。 解决这一问题的计算机程序如下: E #include int main() double num1 = 200; double den3 = 1, 10, 200; class CPlot plot; class CControl sys; sys.model(“tf“, num, den); sys.step( return 0; 现在逐行分析这个程序。程序的第一行如下: #include 它包含了 Ch 控制系统工具包类,使程序可以在本地使用 CCST 成员函数。接下来的几行对程序中随后

46、用到的变量进行了初始化。 int main() double num1 = 200; double den3 = 1, 10, 200; class CPlot plot; class CControl sys; 变量“num ”和“den”都是数组,表示传递函数的分子和分母。变量“plot ”是CPlot 类的一个实例(对象) ,用于生成图形阶跃响应。变量“sys”是 Ch 控制系统工具包类的一个实例(对象)。随后的一行初始化了系统模型。 sys.model(“tf“, num, den); 其中第一个参数“tf”表示这个模型类型是传递函数,随后的两个参数“num”和“den”表示传递函数的

47、分子和分母。 下一行生成图形化的阶跃响应: sys.step( 第一个参数 “plot”是之前初始化的 CPlot 类的一个实例。最终这个程序生成了如图 2 所示的阶跃响应。 3 基于 Web的控制系统设计和分析 在 CCST 的基础上,开发了基于 Web 的控制系统设计和分析系统 WCSDAS13。这一工具的完整功能见参考文献14 所示的网址。图 3 显示了 WCSDAS 索引页面的部分内容。有了 WCSDAS,任何人只要能上互联网,不管其电脑是否内存不足或 CPU 超载,均可以进行控制系统的设计和分析,这就为学生提供了在Web 上学习控制理论和设计控制系统的好机会。Web 界面简单易用,用

48、户可以在 Web 浏览器中选择设计方法和分析方法,指定系统模型类型、系统类型和系统参数。WCSDAS 对用户的输入进行检查,如果输入信息无效,则会提示用户;接着数据被传送到 Web 服务器进行数值计算,仿真结果通过 Ch 的 CGI 接口反馈给 Web 客户端。基于 Web 控制系统的独特之处在于它的设计、分析和认证控制策略是通过 Internet 来完成的,无需安装软件,也不必进行系统配置和编程。由于计算纯粹在服务器上执行,计算时间就不会受到服务端和客户端连接速度的干扰,用户可以把精力集中到控制系统问题上,并通过服务器客户端的交互获取结果。 下面的例子说明了如何使用 WCSDAS 来解决控制

49、问题。 例 2:绘出图 4 所示系统的根轨迹。 点击图 3 所示索引页面的“根轨迹”超级链接,会弹出如图 5 所示页面。选中“零极点增益模型”并点击“继续”按钮,会出现如图6 所示的控制对象定义页面。可以看到页面所提供的控制对象的零极点数量跟所需要的不匹配,因此必须重新定义控制对象的零极点数量。设定一个零点和四个极点,并点击“提交”按钮,会出现如图 7 所示的新页面,用户可以在这个页面上输入零点、极点和增益来定义控制对象。完成输入后,点击“运行”按钮,WCSDAS 会自动显示系统的根轨迹,如图 8 所示。通过上述步骤,用户解决控制问题时无需编写任何程序代码。 图 5 根轨迹首页 图 6 默认 plant 定义页面 4 总结 基于 C/C+解释环境开发的 Ch 控制

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报