智能化测控应用系统设计报告正文教材.docx
- 文档编号:27262023
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:42
- 大小:322.02KB
智能化测控应用系统设计报告正文教材.docx
《智能化测控应用系统设计报告正文教材.docx》由会员分享,可在线阅读,更多相关《智能化测控应用系统设计报告正文教材.docx(42页珍藏版)》请在冰豆网上搜索。
智能化测控应用系统设计报告正文教材
1前言
自行车被发明及使用到现在已有两百多年的历史,这两百年间人类在不断的尝试与研发过程中,将玩具式的木马车转换到今日各式新颖休闲运动自行车,自行车发展的目的也从最早的交通代步的工具转换成休闲娱乐运动的用途。
随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。
因此,人们希望自行车的功用更强大,能给人们带来更多的方便。
自行车里程速度表作为自行车的一大辅助工具也正是随着这个要求而迅速发展的,其功能也逐渐从单一的里程显示发展到速度、时间显示,甚至有的还具有测量骑车人的心跳、显示骑车人热量消耗等功能。
本设计采用了MCS-51系列单片机设计一种体积小、操作简单的便携式自行车的速度里程表,它能自动地显示当前自行车行走的距离及运行的速度。
2总体方案设计
根据本系统所要实现的功能为:
1、设计以单片机和速度感器为核心的速度过高报警装置。
2、能实现自行车轮子圈数信号的检测、传输和处理功能。
3、当自行车速度超过一定值时报警。
4、具有实时显示速度值或里程值和速度超高报警功能。
所以根据设计要求制定了以下两种方案。
2.1方案对比
两种方案的设计思路是相同的,只是在某些模块上采用的形式不同,以下为两种不同的设计方案的具体实现形式:
2.1.1方案一
89C52
选择轮圈大小
里程/速度显示的选择
传感器
复位电路
共阴数码管显示
报警器
时钟信号
图2.1方案一的原理框图
方案一中首先是对自行车轮圈大小的选择,再传感器对自行车车轮圈数进行检测;将检测信号直接送进单片机,复位电路使单片机所有部位处于一个确定的初始状态,并从这个状态开始工作;时钟电路为CPU提供时钟脉冲;根据里程和速度的选择来显示电路用于显示所测得的里程或速度,报警器是当速度超过预定值时报警。
2.1.2方案二
信号
复位电路
89C52
传感器
共阴数码管显示
报警器
时钟信号
图2.2方案二的原理框图
方案二系统工作时,传感器采集到信号传输给单片机,单片机计数器统计脉冲个数,定时器记录相应时间长度,经过运算,将行驶里程、平均速度送给共阴数码管显示。
报警器是当速度超过预定值时报警。
2.2方案论证
测量一定时间间隔t里自行车车轮转过的圈数q。
假设车轮周长为c,则速度V=c*q/t测量自行车车轮转过一圈的时间t,则速度V=c/t本里程表是根据第一个原理计算速度的。
方案一采用了传感器具体的给出信号采集的方案,而且还增加了了轮圈大小的选择,可以测量多种型号的轮圈,并且对里程显示或者速度显示有选择,使使用者能自由选择显示里程还是速度,方案二比较的简单没有轮子大小的选择,也就说这个系统只能测量一个型号的自行车。
其中在传感器方面我们也做出了比较和选择
红外光电传感器。
把红外对管分别安装在自行车车轮的两侧,当车轮转动时,辐条会阻挡红外对管的光路,接收管输出低电平,单片机根据此信号可计算里程、速度等。
红外对管的优点是测量精度高,缺点是安装比较复杂和容易受外来光线、灰尘等的影响。
开关型霍尔传感器。
霍尔传感器是利用霍尔效应把磁输入信号转换成电信号的器件。
把开关型霍尔传感器安装在自行车贴近车轮的支架上,磁钢安装在辐条上,当磁钢靠近霍尔传感器的时候,传感器输出一个无抖动的低电平,单片机根据此信号可计算里程、速度等。
霍尔传感器的优点是稳定和安装简易,缺点是成本较高。
干簧管。
干簧管是一种磁敏的有触点无源电子开关元件,应用在里程表上的原理与开关型霍尔传感器类似,把干簧管安装在自行车贴近车轮的支架上,磁钢安装在辐条上,当磁钢靠近霍尔传感器的时候,干簧管闭合,单片机根据此信号可计算里程、速度等。
干簧管的优点是成本低廉和安装简易,缺点是比较脆弱和不够稳定。
本里程表选用干簧管,稳定、安装简易。
2.3方案选择
比较两种方案可以看出,方案一和方案二的大概思路都差不多,只是单片机选择和显示模块不同,而方案一的设计比较具体使用一些,他可以对多种型号的自行车进行检测,二方案二只能测量一种型号的自行车,此外在里程和速度的显示上方案一给出了比较明确的选择,而方案二没有,所以我们选择了方案一做为本次课题的主要研究对象,本文也将注重介绍方案一的设计方法。
3单元模块设计
采用STC89C52为控制核心,主要功能模块有:
数据采集模块选用干簧管传感器,数据显示选用共阴数码管,里程和速度显示的选择以及轮子大小的设置用开关按钮,超速报警选用蜂鸣器和发光二极管。
3.1各单元模块功能介绍及电路设计
为完成自行车里程和速度显示的设计,本系统采用单片机为控制核心,以实现便携式里程速计仪的基本控制功能。
系统主要功能内容包括:
数据采集、数据处理、超速报警、数据显示等。
本系统设计采用功能模块化的设计思想,系统主要分为总硬件和软件的设计两大部分。
3.1.1单元模块功能介绍
1单片机最小系统电路
在课题设计的速度控制系统设计中,控制核心是STC89C52单片机,该单片机为51系列增强型8位单片机,它有32个I/O口,片内含4KFLASH工艺的程序存储器,便于用电的方式瞬间擦除和改写,而且价格便宜,其外部晶振为12MHz,一个指令周期为1μS。
使用该单片机完全可以完成设计任务,其最小系统主要包括:
复位电路、震荡电路以及存储器选择模式(EA脚的高低电平选择),电路如下图3.1所示:
图3.1单片机最小系统
(1)晶振电路
单片机工作的过程中各指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序,单片机的时钟信号用来为单片机芯片内部各种微操作提供时间基准,89c52的时钟产生方式有两种,一种是内部时钟方式,一种是外部时钟方式。
内部时钟方式即在单片机的外部接一个晶振电路与单片机里面的振荡器组合作用产生时钟脉冲信号,外部时钟方式是把外部已有的时钟信号引入到单片机内,此方式常用于多片89C52单片机同时工作,以便于各单片机的同步,一般要求外部信号高电平的持续时间大于20ns.且
为频率低于12MHz的方波。
对于CHMOS工艺的单片机,外部时钟要由XTAL1端引入,而XTAL2端应悬空。
本系统中为了尽量降低功耗的原则,采用了内部时钟方式。
在89C52单片机的内部有一个震荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振)就构成了自激振荡器并在单片机内部产生时钟脉冲信号,图中电容器C1和C2稳定频率和快速起振,电容值在5—30pF,典型值是22pF,晶振CYS选择的是12MHz。
(2)复位电路
复位的意义
单片机开始工作的时候,必须处于一种确定的状态,否则,不知哪是第一条程序和如何开始运行程序。
端口线电平和输入输出状态不确定可能使外围设备误动作,导致严重事故的发生;内部一些控制寄存器(专用寄存器)内容不确定可能导致定时器溢出、程序尚未开始就要中断及串口乱传向外设发送数据。
因此,任何单片机在开始工作前,都必须进行一次复位过程,使单片机处于一种确定的状态。
复位电路原理
当在89C52单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。
2里程和速度显示的选择以及轮子大小的选择模块
(1)轮圈大小的选择电路
图3.2轮圈大小的选择电路
通过对车轮大小的设计,就可以对不同型号的车子的数据进行检测,特别是在硬件设计是原想通过按钮来实现对尺寸大小的选择,但是通过按钮来实现的方式比较复杂,本次设计使用的是双排针来设置,通过P1.4,P1.5,P1.6,P1.7四个口来分别设置轮圈的大小,假设车轮周长为c,则速度V=c*q/t测量自行车车轮转过一圈的时间t,则速度V=c/t本里程表是根据第一个原理计算速度的。
通过圈数来统计里程。
(2)里程/速度显示选择电路
图3.3里程/速度显示选择电路
通过一个六脚开关对里程还是速度显示进行准确的选择,P2.6口的开关来确定显示的方式,当开关选择在低电平是时即接地则是共阴数码管显示速度,当开关选择在高电平时即接电源则共阴数码管显示里程。
3测量电路
测量电路由干簧管传感器和磁铁组成。
干簧管是一种磁敏的特殊开关。
它的两个触点由特殊材料制成,被封装在真空的玻璃管里。
只要用磁铁接近它,干簧管两个节点就会吸合在一起,使电路导通。
因此可以作为传感器用,用于计数,限位等等。
有一种自行车公里计,本次设计是在轮胎上粘上磁铁,在一旁固定上干簧管构成的把磁铁固定在自行车轮子上及跟随轮子的转动而转动,再将干簧管固定在车轮旁边,能与磁铁反应的距离但是不能跟随车轮转动,不然不能计数,每当车轮的磁铁经过干簧管的时候就将干簧管的开关吸合,产生一个数据信号给单片机,这就是对车轮圈数进行采集,通过单片机对此数据信号进行分析计算。
4数据显示电路
图3.4数据显示电路
本次设计使用的是3位的共阴数码管显示器,在设计是注意区分这两种不同的接法。
为了显示数字或字符,必须对数字或字符进行编码。
七段数码管加上一个小数点,共计8段。
因此为显示器提供的编码正好是一个字节。
本实验板用共阴显示器。
LED显示器工作方式有两种:
静态显示方式和动态显示方式。
静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。
当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。
这种方法的优点是占用CPU时间少,显示便于监测和控制。
缺点是硬件电路比较复杂,成本较高。
动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。
选亮数码管采用动态扫描显示。
所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。
动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。
本次设计使用的是静态显示方式。
5报警和储存电路
(1)报警电路
图3.5报警电路
当自行车速度超过预设值时应及时采取报警措施,实现单频音报警的接口电路比较简单,其发音元件通常可采用压电蜂鸣器,当在蜂鸣器两引脚上加3~15V直流工作电压,就能产生3kHZ左右的蜂鸣振荡音响。
压电式蜂鸣器结构简单、耗电少,更适于在单片机系统中应用。
压电式蜂鸣器,约需10mA的驱动电流,可在某端口接上一只三极管和电阻组成的驱动电路来驱动,如图3.5所示。
P2.7接三极管基极输入端,当P2.7输出高电平“1”时,三极管导通,蜂鸣器的通电而发音,当P2.7输出低电平“0”时,三极管截止,蜂鸣器停止发音。
同时本次设计还将发光二极管放在报警电路中,当报警器发声是同时发光二极管也导通而发光亮起来,起到更好的报警效果。
(2)存储电路
图3.6存储器电路
本次设计使用的是24C01存储器,用于P1.0和P1.1EEPROM的存取控制。
CAT24WC01/02/04/08/16支持I2C总数据传送协议,I2C总线协议规定,任何将数据传送到总线的器件作为发送器。
任何从总线接收数据的器件为接收器。
数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。
主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据发送或接收的模式,通过器件地址输入端A0A1和A2可以实现将最多8个24WC01和24WC02。
这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空时默认值为024WC01除外。
当使用24WC01或24WC02时最大可级联8个器件。
如果只有一个24WC02被总线寻址,这三个地址输入脚A0A1A2可悬空或连接到电源,如果只有一个24WC01被总线寻址,这三个地址输入脚A0,A1,A2必须连接到电源。
当使用24WC04时最多可连接4个器件,该器件仅使用A1、A2地址管脚。
A0管脚未用,可以连接到电源或悬空。
如果只有一个24WC04被总线寻址,A1和A2地址管脚可悬空或连接到电源。
当使用24WC16时最多只可连接1个器件,所有地址管脚A0A1A2都未用,管脚可以连接到电源或悬空主器件通过发送一个起始信号启动发送过程,然后发送它所要寻址的从器件的地址。
接下来的3位(A2A1A0)为器件的地址位,用来定义哪个器件以及器件的哪个部分被主器件访问,1个CAT24WC16可单独被系统寻址。
从器件8位地址的最低位,作为读写控制位1,表示对从器件进行读操作,0表示对从器件进行写操作。
在主器件发送起始信号和从器件地址字节后,CAT24WC01/02/04/08/16监视总线并当其地址与发送的从地址相符时响应一个应答信号(通过SDA线)。
CAT24WC01/02/04/08/16再根据读写控制位R/W的状态进行读或写操作。
4软件设计
本节将介绍本次设计中用到的AltiumDesignerWinter09软件、Keil软件
4.1软件设计原理及设计所用工具
我们运用AltiumDesignerWinter09软件进行PCB制图,用Keil软件进行软件程序编写。
4.1.1制图软件AltiumDesignerWinter09
AltiumDesignerWinter09提供了唯一一款统一的应用方案,其综合电子产品一体化开发所需的所有必须技术和功能。
AltiumDesignerWinter09在单一设计环境中集成板级和FPGA系统设计、基于FPGA和分立处理器的嵌入式软件开发以及PCB版图设计、编辑和制造。
并集成了现代设计数据管理功能,使得AltiumDesignerWinter09成为电子产品开发的完整解决方案-一个既满足当前,也满足未来开发需求的解决方案
Altium创新电子设计平台集成了广受好评的AltiumDesignerWinter09一体化电子设计软件和Altium可重构硬件平台NanoBoard系列。
该方法将器件智能置于设计流程的核心。
由此形成了一个完整的一体化电子设计环境,以全新的方式创建和推出智能型关联电子产品。
电子产品开发不再是独立的流程。
AltiumDesignerWinter09统一了整个设计流程,可在单一、集成的设计流环境中管理开发的所有方面。
Altium发布了其新一代电子设计解决方案AltiumDesigner的最新版本Winter09。
Altium持续在市场上推出一系列设计新概念和新技术,开发先进技术,帮助电子产品设计人员更快更好地将设计转化为产品。
在最新版本Winter09中,原来已有的三维PCB设计功能被提升到了一个更高速的新境界。
新功能可以让工程师管理从产品设计到制造的过程转换,尝试新的设计技术并得以深度挖掘可编程器件的潜力。
新增加的应用控制面板帮助工程师解决了FPGA测试上的难题,并可以远程监控FPGA内的设计。
新的即插即用型软件平台搭建器让系统的整合更容易,同时提供在可编程器件的“软”硬件环境里的一系列标准服务以供使用
Altium在最新的版本里扩充了其实时三维PCB设计功能。
最新的版本支持三维建模的纹理映射,使设计师能过对设计板和元件进行表面处理。
Altium提供增强的过孔功能,并允许在不同信号层上使用不同尺寸的焊盘。
过孔的叠加可以支持更高的跟踪密度。
工程师还可以通过元件焊盘来实现过孔的偏移。
所有上述的增强型功能都提高了PCB设计的精确性,并为设计板布线和可视化提供了新的设计思路
通过AltiumNanoBoard可重构硬件平台,工程师可以很容易地“整合”出硬件平台上所需的软件服务。
这包括了电子设计中常见的设计元素:
例如外设,通信模块,和支持正常工作所需要的各种驱动规则(由NanoBoard提供)。
这样,基本但是必要的软件模块设计被简化成拖放预先配置软件模块到设计中,工程师得到了解放,能够真正地专注于核心的产品智能设计。
软件平台搭建器提供一系列的驱动和软件规则来支持通过NanoBoard设计平台运行的外设。
4.1.2Keil仿真软件
KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。
1.系统概述
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
下面详细介绍KeilC51开发系统各部分功能和使用。
2.KeilC51单片机软件开发系统的整体结构
C51工具包的整体结构,uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。
开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。
然后分别由C51及C51编译器编译生成目标文件(.OBJ)。
目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。
ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。
4.2系统程序设计
硬件是控制系统的物质基础,是软件赖以生存的空间和活动场所,没有硬件就没有软件的支持,软件的功能就无从谈起。
同样,软件是控制系统的灵魂,其逻辑关系的正确与否直接关系到整个系统是否正确工作。
设计硬件后并不意味着设计工作的大功告成,还必须去设计控系统的软件,是硬件能够“活”起来,能够正常的完成既定的控制要求。
软件的编写一般根据控制系统既定方案和控制要求来设计程序流程图,这一步是必须的,这样可以使后面程序的编写更具方向性。
下面简单介绍一下该程序流程图的编写。
4.2.1主程序流程图
系统主程序流程图如图4.1所示:
开始
初始化
设置特殊寄存器、置定时定时常数
开中断
等待中断
设置计数器
关键字
刷新里程、速度时间等
INT0
T0定时器秒自加1
是否到1秒
依次秒、分、时进位
中断开始
否
是
中断返回
图4.1主程序流程图
4.2.2主程序设计流程
(1)初始化程序
在本系统初始化程序中,主要完成,将部分内存单元清零,设置轮子周长值,开中断及定时器,将EEPROM中的数据调入内存等。
(2)主程序
主程序根据P2.7口的开关状态选择里程显示或速度显示,对14脚输入的圈数脉冲进行计数,为十六进制计数器。
每计数一次后,对里程数据进行一次存储操作。
(3)EEPROM存储程序
本系统使用归一化IC串口存取子程序,使用一条数据线和时钟线,采用ATMEL公司的24C01串口存储器,应用简单方便。
(4)显示子程序
当显示里程时,要先将圈数计数器中的数据进行运算,求出里程。
当要显示速度时,要将轮子的周长和转一圈的时间相除,然后换算成Km/h单位。
最后进行数据的显示
5系统调试
进行完硬件设计和软件设计后,剩下的工作就是对所设计的控制系统进行调试了。
系统的调试一般也分为两步走,即软件调试和软硬件联合调试。
第一步:
软件调试。
对于编辑好的软件程序,首先应在编辑的环境下进行编译,检查一下所编辑的程序是否存在语法上的错误。
如果有语法方面的错误,一定要认真修改,直到编译结果显示零错误为止。
应当指出,尽管最后编译的程序提示没有错误,也不能保证程序完全正确。
是否还存在逻辑功能上的错误?
能否让控制系统实现预定的功能要求?
要想验证这两点就得进行下面第二部的调试。
第二部:
软硬件联合调试。
前面已指出,硬件是软件的载体,软件是硬件的灵魂,只有两者结合才能实现我们想要的控制功能。
首先应该认真检查一遍硬件的线路,如检查一下传感器是否能正常检测,LCD能否正常显示等。
这些没有问题后,通过编程器将编译好的程序下载到单片机中去,然后给系统上电,此时系统开始运行。
将传感器置于磁铁旁引起传感器反应,然后再经过一段时间在让传感器与磁铁反应,让其有数据信号输出,在系统调试构成中,如果显示部分部分不能正常工作,要认真的从硬件和软件两个方面着手进行故障排查工作,看是软件与硬件逻辑不匹配还是硬件的连接问题,直到问题解决为止。
如果显示电路部分工作正常,说明硬件部分设计合理,软件部分设计满足硬件的逻辑控制要求,达到了任务最初既定的控制要求,任务得以成功。
6结论
自行车里程/速度计是自行车的功能更齐全和完善,避免因速度过快而引发的安全事故发,它是使生活和锻炼更加有计划的仪器,具有广阔的市场空间与发展前景。
此次设计在对传感器和报警技术进行深入研究的基础上,全面比较国内外同类产品的技术特点,合理地确定系统的设计方案。
并对仪器的整体设计和各个组成部分进行了详细的分析和设计。
该里程/速度计是由信号采集电路与单片机控制电路两大部分构成。
根据设计要求、使用情况、成本等因素,选用干簧管传感器。
该传感器是磁敏感器件。
它的灵敏度适中,具有响应与恢复特性好,长期工作稳定性、重现性、不易受环境影响及抗温湿度影响等优点。
在系统单片机控制电路的设计上,采用了STC89C52单片机作为核心芯片,充分利用了其高速数据处理能力和丰富的片内外设,实现了仪器的小型化和智能化。
使仪器具有结构简单、性能稳定、体积小、成本低等优点。
由于传感器需要在运动状态下工作,温度越高,反应越快,响应时间和恢复时间就越快。
为提高响应时间,保证传感器准确地、稳定地工作,需要将传感器的位置加固,避免数据检测不灵敏和不能检测。
在里程/速度计的设计中我们还特意加了报警器,当自行车速度超过一定值时候,发出声音报警。
在此基础上,可以再做适当的功能扩展,如还可以增加GPS导航功能,使自行车在行驶中更加方便于知道自身的位置。
7总结与体会
通过这次的课程设计我学到了很多,我们进行了一次较为完整、较规范的课程设计实践,比较系统的巩固了以前所学过的知识,由理论联系实际并结合单片机原理课程来解决实际设计问题,巩固、加深和扩展了有关单片机设计方面的理论知识。
在这次的设计中很好的体现了团队合作的重要性,由于这次的设计又要进行实物制作,还要编写程序,也要制作设计报告,一个人完成这一系列的工作是比较困难的,这时,团队的重要性就体现出来了,我们经过分工合作,一人负责一个部分,很快本次设计任务就圆满的实现了。
更加重要的是让我们养成了进行科学实验的习惯,在设计过程中一定要注意掌握设计进度,按预定计划完成阶段性的目标,在原理图设计阶段,注意设计计算与结构设计画图交替进行,采用正确的设计方法。
在整个设计过程中注意对设计资料和计算数据的保存和积累,保持记录的完整性。
由于这一次设计的实践,我们了解到,知识上的收获重要,精神上的收获更重要,让我们明白了学无止境的道理。
我们永远都不应满足于现有的成果,要一次一次的勇攀高峰,通过这次课程设计的实践,我想在我们以后接触类似设计的时候我们会有更好的表现,现在的我已经不再局限于只敢尝试简单的设计了,我会向更加有难度、有深度的设计方向发展,使自己得实践动手能力和本身的知识面不断的提升。
最后,在此衷心感谢谢老师对我们的帮助,从课题的选择,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能化 测控 应用 系统 设计 报告 正文 教材