智能网络复习自学版.docx
《智能网络复习自学版.docx》由会员分享,可在线阅读,更多相关《智能网络复习自学版.docx(28页珍藏版)》请在冰豆网上搜索。
智能网络复习自学版
知识点概要
1、智能网络监控系统:
现在流行的远程监控系统现场数据采集与远程监控并存,一般是采用现场总线技术将分布于各
个设备的传感器、监控设备等连接起来,这样就从分立单元阶段进入了集成单元阶段,然后各个管
理站点的服务再用局域网连接起来,这样就形成了一个监控现场的监控网络。
然后通过Internet、GPRS或者架设专线与远端的监控中心联网,从而实现远程监控系统。
实时监控系统结构示意图
_数据库服务器
安装Windows2000ADVServer网络操作系统、SQLServer2000关系型数据库软件,存储检测
信息及加工信息等。
_数据交换中心
数据交换中心是一台装有数据代理应用软件的计算机,能接收现场检测信息并存储于数据库,
能转发检测中心发出的主动检测信号,是通信子系统的核心之一。
_控制台
控制台是一台装有管理软件的计算机,能显示被监控设备的运行情况,能对远端的数据采集器
发送控制信号。
控制台与数据交换中心可以是同一台计算机。
_远地数据采集器
远地数据采集器在检测现场采集实时数据,通过GPRS、Internet把数据送至检测中心,接收来
自检测中心的控制信号进行相应操作。
2、智能网络监控系统常用技术:
基于Internet通信技术、GPRS通信技术、数据库物理模型优化设计、通信加密技术、终端数据抗干扰采集技术、现场采集数据的及时响应处理技术,开发了一个C/S结构的远程实时监控系。
原理:
系统由远程数据采集子系统、通信子系统、监测中心子系统三部分组成。
数据采集子系统通过分布式数据采集器采集远程监测点的检测信息;通信子系统通过Internet、GPRS把检测信息送至监测中心子系统;监测中心子系统接收检测信息,并将检测信息保存到数据库,并分析统计设备运行状态,为上层决策提供基础数据。
同时,监测中心子系统能主动发送控制信号(召唤),通过通信子系统把控制信号传送至检测现场指挥远端数据采集子系统采集设备信息。
3、网络传感器技术:
将网络接口芯片与智能传感器集成起来,并把通信协议固化到智能传感器的ROM中,产生了网络传感器。
网络传感器继承了智能传感器的全部功能,并且能够和计算机网络进行通信,因而在现场总线控制系统中得到了广泛的应用成为现场级数字化传感器。
4、典型的基于GPRS、Internet的监测系统的组成:
软件组织结构图
_监控软件
对整个系统的运行的基础数据进行设置,从数据库读入预处理的现场监测信息并加工处理,把处
理结果显示给监控人员,监控人员在此可以发出主动控制指令。
采用C/S软件体系结构。
_数据代理
读入来自Internet的现场监测信息并经预处理后存入数据库,从数据库读监控人员发出的主动控
制指令并通过Internet传送至于现场检测点。
采用C/S软件体系结构。
_数据采集
采集检测现场设备运行信息,控制GPRGDTU发送信息、接收指令。
面向过程的编程方式实现。
GPRSDTU全称GPRS数据传输单元,在国内目前实际上对GPRSDTU具有更加明确的约定:
是专门用
于将串口数据通过GPRS网络进行传送的GPRS无线设备)。
5、C/S结构系统常用的开发工具:
Client/Server(客户/服务器模式,简称C/S
模式)和Browser/Server模式(浏览器/服务器模式,简称B/S模式)。
流行的编制C/S体系结构软件的开发工具有VisualBasic、Delphi、PowerBuilder等等。
6、常见的Web服务器软件:
MicrosoftIIS、IBMWebSphere、BEAWebLogic、IPlanetApplicationServer、OracleIAS、Apache、Tomcat
7、B/S结构系统常用的技术:
流行的编制B/S体系结构软件的开发工具有ASP、java、PHP、asp.NET
8、C/S与B/S的比较:
1.C/S模式的优势:
交互性强:
在C/S模式中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换;更安全的存取模式:
由于C/S模式是配对的点对点的结构模式,在C/S模式的平台上可采用适用于局域网、安全性比较好的网络协议,安全性可以得到较好的保证。
2.B/S模式的优势:
B/S是有计算技术以来最稳定的技术平台;B/S本质上是一种客户机技术:
Internet原则上取消了所有在客户机上的维护工作;B/S提供异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。
9、概述单片机前向通道:
当将单片机用作测﹑控系统时,前向通道是指被测信号的输入通道,对被测对象的信号的拾取其主要任务就是最忠实地反映被测对象的真实状态,它包括实时性与测量精度。
同时使这些测量信号能满足计算机输入接口的电平要求。
单片机控制系统前向通道图示
10、概述传感器接口通道:
单片机应用系统中的前向通道体现了被测对象与系统相互联系的信号输入通道,原始参数输入通道。
由于在该通道中主要是传感器与传感器有关的信号调节、变换电路,故也可称为传感器接口通道。
11、传感器及传感器的作用:
是一种能把化学量和物理量转变成便于利用的电信号的器件,根据传感器工作原理,可分为物理传感器和化学传感器二大类。
将被测信号量的微小变化转成电信号,是实现自动检测和自动控制的首要环节。
12、采样保持器:
采样器是一种开关电路或装置,它在固定时间点上取出被处理信号的值。
作用:
采样保持器则把这个信号值放大后存储起来,保持一段时间,以供模数转换器转换,直到下一个采样时间再取出一个模拟信号值来代替原来的值。
在模数转换器工作期间采样保持器一直保持着转换开始时的输入值,因而能抑制由放大器干扰带来的转换噪声,降低模数转换器的孔径时间,提高模数转换器的精确度和消除转换时间的不准确性。
13、后向通道的概念及后向通道的作用:
后向通道是计算机实现控制运算处理后,对控制对象的输出通道接口。
功率驱动:
将单片机输出信号进行功率放大,以满足伺服驱动的功率要求;干扰防治:
主要防治伺服驱动系统通过信号通道﹑电源以及空间电磁场对计算机系统的干扰。
通常采用信号隔离﹑电源隔离和对功率开关实现过零切换等方法进行干扰防治;数/模转换:
对于二进制输出的数字量采用D/A变换器;对于频率量输出则可以采用F/V(频率/电压)转换器变换成模拟量。
14、概述单片机应用系统的各种抗干扰设计:
单片机的抗干扰设计通常分为硬件抗干扰设计和软件抗干扰设计两部分。
单片机应用系统的硬件抗干扰设计:
要选择抗干扰性能强的CPU外和考虑外围电路的抗干扰设计。
1.供电系统的抗干扰设计:
使用交流稳压器、变压器初次级用屏蔽层隔离、低通滤波器可滤去干扰带来的高次谐波、整个系统采用分立式供电方式,分别对各部分进行供电、采用开关电源并提供足够的功率余量、SRAM(静态随机存取存储器)掉电保护;2.过程通道的抗干扰设计:
光电耦合隔离、双绞线传输、长线传输的阻抗匹配;3.印制电路板的抗干扰设计:
印制电路板大小要适中、器件布置时把相关的器件就近放置,易产生噪声的电路应尽量远离主机电路,发热量大的器件应考虑散热问题,I/O驱动器件尽量靠近印制板边上放置。
闭置的IC管脚不要悬空,元器件脚避免相互平行,以减少寄生耦合。
如有可能,尽量使用贴片元件、布线时电路之间的连接应尽量短、接地时交流地与信号地不能共用、在印制电路板的关键部位加去耦电容提供系统的抗干扰能力。
4.其它的抗干扰设计:
将易干扰的电路或设备(或辐射源)等屏蔽起来、系统可以浮置(如信号地不接机壳或大地)来阻断干扰电流的通路,设备内部具有辐射能力的电路要独立远置,以减少对其他电路的影响、把整个CPU控制电路,采用金属机箱,做好接地接地电阻不小于4欧姆;保证没有空间干扰的串入、所有机箱对外的接口,使用光电隔离、4~20mA电流环路,或者平衡信号传输,没有公共的信号地,保证没有干扰由控制线路串入、尽量采用无触点的固态继电器、控制设备尽量远离执行机构。
单片机应用系统的软件抗干扰设计:
1.超值滤波法:
若单片机对输入信号相邻两次采样的差值小于等于最大偏差值,则本次采样值视为有效,并加以保存;2.平均值法:
对于一个数据连续采样几次,剔除个别错误数据,计算平均值,以平均值作为采样的结果;3.中值法:
根据干扰造成采样数据偏大或偏小的情况,对1个采样点连续采集多个信号,进行比较,取中值作为采样结果;4.比较舍去法:
从每个采样点的n个连续采样数据中,按确定的舍去方法来剔除偏差数据;5.RAM数据冗余:
即将欲保护的数据写入RAM中的不同区域;6.软件冗余:
提供足够的冗余信息和算法程序,使系统在实际运行时能够及时发现程序设计错误,采取补救措施;7.指令冗余:
在关键的地方人为地插入一些单字节指令(NOP),或将有效单字节指令和重要的控制指令重复书写;8.软件陷阱的设计:
软件陷阱是指用来将捕获的跑飞程序引向复位入口或错误处理程序入口地址的几条指令
NOP
NOP
LJMP0000H(或LJMPERROR,ERROR为错误处理程序的入口标号)
为防止干扰导致未使用的中断被异常开放,对于未使用的中断服务程序则可以这样:
NOP
NOP
PUSH00H
PUSH00H
RETI
9.看门狗”技术:
通过不断检测程序循环运行时间,若发现程序循环时间超过最大循环运行时间,则认为系统陷入“死循环”,需进行出错处理。
在不影响程序功能的情况下,还可以利用单片机的“待机”工作方式来实现抗干扰。
15、了解单片机应用系统的软硬件抗干扰设计都有哪些:
如上所述
16、单片机控制系统的典型抗干扰供电系统:
供电系统的抗干扰设计:
使用交流稳压器、变压器初次级用屏蔽层隔离、低通滤波器可滤去干扰带来的高次谐波、整个系统采用分立式供电方式,分别对各部分进行供电、采用开关电源并提供足够的功率余量、SRAM(静态随机存取存储器)掉电保护。
17、主流数据库有哪些:
Sybase,Oracle,Informix,SQLServer,DB2。
18、概述主键约束:
表中经常有一个列或列的组合,其值能唯一地标识表中的每一行。
这样的一列或多列称为表的主键(PRIMARYKEY,PK),一个表只能有一个PK约束,而且PK约束中的列不能接受空值,如果PK约束定义在不止一列上,则一列中的值可以重复,但PK约束定义中的所有列的组合的值必须唯一。
19、概述主键与外键的关系:
外键:
通过将保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。
这个列就成为第二个表的外键。
FOREIGNKEY约束并不仅仅只可以与另一表的PRIMARYKEY约束相链接,它还可以定义为引用另一表的UNIQUE约束。
FOREIGNKEY约束不允许空值,但是,如果任何组合FOREIGNKEY约束的列包含空值,则将跳过FOREIGNKEY约束的校验。
FOREIGNKEY约束的主要目的是控制存储在外键表中的数据,其次它还可以控制对主键表中数据的修改。
FOREIGNKEY约束的主要目的是控制存储在外键表中的数据,其次它还可以控制对主键表中数据的修改,确保引用完整性。
20、存储过程:
在使用SQLServer2000创建应用程序时,程序在SQLServer中存储为存储过程,并创建执行存储过程并处理结果的应用程序。
存储过程不返回取代其名称的值,也不能直接用在表达式中。
存储过程定义包含两个主要组成部分:
过程名称及其参数的说明,以及过程的主体(其中包含执行过程操作的Transact-SQL语句)。
创建存储过程时,应指定:
_所有输入参数和向调用过程或批处理返回的输出参数。
_执行数据库操作(包括调用其它过程)的编程语句。
_返回至调用过程或批处理以表明成功或失败(以及失败原因)的状态值。
不要创建以sp_为前缀的存储过程,系统存储过程在master数据库中创建并存储,带有sp_前缀。
#表示本地临时存储过程,##表示全局临时存储过程。
SQLServer关闭后,这些过程将不再存在。
存储过程也可通过OUTPUT参数将值返回至调用程序。
一个存储过程可有多达2100个参数,每个参数都有名称、数据类型、方向和默认值。
存储过程名称必须以单个@字符开头。
如果存储过程my_proc应有三个命名为@first、@second和@third的参数,则可将传递至该存储过程的值赋予参数名称,如:
EXECUTEmy_proc@second=2,@first=1,@third=3或者按照位置传递,而不命名参数名称:
EXECUTEmy_proc1,2,3
存储过程中的参数要定义数据类型,数据类型cursor只能用作OUTPUT参数。
当调用存储过程的程序执行该存储过程时,所有过程参数都可接收输入值。
示例:
下列存储过程get_sales_for_title使用了输入参数。
该存储过程中的@title参数接收调用程序所指定的书名作为输入值。
SELECT语句使用此@title参数获得正确的ytd_sales值并显示该值。
存储过程中参数的最大数目为2100。
根据可用内存的不同,存储过程的最大大小可达128MB。
CREATEPROCEDUREget_sales_for_title
@titlevarchar(80)--Thisistheinputparameter.
AS
--Getthesalesforthespecifiedtitle.
SELECT"YTD_SALES"=ytd_sales
FROMtitles
WHEREtitle=@title
RETURN
GO
执行该存储过程时,如果未指定其它值,则使用默认值。
可以指定NULL作为参数的默认值,并在未提供参数值而执行存储过程的情况下,使存储过程返回一条自定义消息。
如果默认值是包含嵌入空格或标点符号的字符串,或者以数字开头(例如,6xxx),那么该默认值必须用直的单引号引起来。
下例显示在未提供@title参数值的情况下执行存储过程时,get_sales_for_title过程将进行特殊处理。
CREATEPROCEDUREget_sales_for_title
@titlevarchar(80)=NULL,--NULLdefaultvalue
@ytd_salesintOUTPUT
AS
--Validatethe@titleparameter.
IF@titleISNULL
BEGIN
PRINT'ERROR:
Youmustspecifyatitlevalue.'
RETURN
END
--Getthesalesforthespecifiedtitleand
--assignittotheoutputparameter.
SELECT@ytd_sales=ytd_sales
FROMtitles
WHEREtitle=@title
RETURN
GO
执行程序示范及结果:
EXECUTEmy_proc--Noparameterssupplied
GO
显示:
NULL23
EXECUTEmy_proc10,20,30--Allparameterssupplied
GO
显示:
102030
EXECUTEmy_proc@second=500--Onlysecondparametersuppliedbyname
GO
显示:
NULL5003
EXECUTEmy_proc40,@third=50--Onlyfirstandthirdparameters
GO--aresupplied.
显示:
40250
假如:
Mary拥有表marytab,如果她希望其他用户能够执行使用该表的存储过程,必须在该表用于上述某一条语句时对其表名进行限定。
此规则是必需的,因为运行存储过程时将解析对象的名称。
如果未限定marytab,而John试图执行该过程,SQLServer将查找John所拥有的名为marytab的表。
WITHENCRYPTION用于加密,所有人都无法查看存储过程定义。
A.创建使用参数的存储过程
下例创建一个在pubs数据库中很有用的存储过程。
给出一个作者的姓和名,该存储过程将显示
该作者的每本书的标题和出版商。
CREATEPROCau_info@lastnamevarchar(40),@firstnamevarchar(20)
AS
SELECTau_lname,au_fname,title,pub_name
FROMauthorsINNERJOINtitleauthorONauthors.au_id=titleauthor.au_id
JOINtitlesONtitleauthor.title_id=titles.title_id
JOINpublishersONtitles.pub_id=publishers.pub_id
WHEREau_fname=@firstname
ANDau_lname=@lastname
GO
将出现一条说明该命令未返回任何数据也未返回任何行的消息,这表示已创建该存储过程。
现在执行au_info存储过程:
EXECUTEau_infoRinger,Anne
GO
下面是结果集:
au_lnameau_fnametitlepub_name
-------------------------------------------------------
RingerAnneTheGourmetMicrowaveBinnet&Hardley
RingerAnneIsAngertheEnemy?
NewMoonBooks
(2row(s)affected)
B.创建使用参数默认值的存储过程
下例创建一个存储过程pub_info2,该存储过程显示作为参数给出的出版商所出版的某本书的
作者姓名。
如果未提供出版商的名称,该存储过程将显示由AlgodataInfosystems出版的书籍的作
者。
CREATEPROCpub_info2@pubnamevarchar(40)='AlgodataInfosystems'
AS
SELECTau_lname,au_fname,pub_name
FROMauthorsaINNERJOINtitleauthortaONa.au_id=ta.au_id
JOINtitlestONta.title_id=t.title_id
JOINpublisherspONt.pub_id=p.pub_id
WHERE@pubname=p.pub_name
执行未指定参数的pub_info2:
EXECUTEpub_info2
GO
下面是结果集:
au_lnameau_fnamepub_name
----------------------------------------------------
GreenMarjorieAlgodataInfosystems
BennetAbrahamAlgodataInfosystems
O'LearyMichaelAlgodataInfosystems
MacFeatherStearnsAlgodataInfosystems
StraightDeanAlgodataInfosystems
CarsonCherylAlgodataInfosystems
DullAnnAlgodataInfosystems
HunterSherylAlgodataInfosystems
LocksleyCharleneAlgodataInfosystems
(9row(s)affected)
C.执行用显式值替代参数默认值的存储过程
在下例中,存储过程showind2的@table参数默认值是titles。
CREATEPROCshowind2@tablevarchar(30)='titles'
AS
SELECTTABLE_NAME=sysobjects.name,
INDEX_NAME=sysindexes.name,INDEX_ID=indid
FROMsysindexesINNERJOINsysobjectsONsysobjects.id=sysindexes.id
WHEREsysobjects.name=@table
列标题(例如,TABLE_NAME)可使结果更具可读性。
下面是该存储过程显示的authors表的情
况:
EXECUTEshowind2authors
GO
TABLE_NAMEINDEX_NAMEINDEX_ID
------------------------------
authorsUPKCL_auidind1
authorsaunmind2
(2row(s)affected)
如果用户未提供值,则SQLServer将使用默认表titles:
EXECUTEshowind2
GO
下面是结果集:
TABLE_NAMEINDEX_NAMEINDEX_ID
------------------------------
titlesUPKCL_titleidind1
titlestitleind2
(2row(s)affected)
D.使用参数默认值NULL创建存储过程
参数默认值可以是NULL值。
在这种情况下,如果未提供参数,则SQLServer将根据存储过程
的其它语句执行存储过程。
不会显示错误信息。
过程定义还可指定当不给出参数时要采取的其它某种措施。
例如:
CREATEPROCshowind3@tablevarchar(30)=NULL
ASIF@tableISNULL
PRINT'Giveatablename'
ELSE
SELECTTABLE_NAME=sysobjects.name,
INDEX_NAME=sysindexes.name,INDEX_ID=indid
FROMsysindexesINNERJOINsysobjects
ONsysobjects.id=sysindexes.id
WHEREsysobjects.name=@table
E.使用包含通配符的参数默认值创建存储过程
如果存储过程将参数用于LIKE关键字,那么默认值可包括通配符(%、_、[]和[^])。
例如,可
将showind修改为当不提供参数时显示有关系统表的信息:
CREATEPROCshowind4@tablevarchar(30)='sys%'
ASSELECTTABLE_NAME=sysobjects.n