PowerBuilder的分布式计算技术及其应用_工科论文十篇
PowerBuilder的分布式计算技术及其应用_工科论文十篇
【论文大全】导语,眼前阅读的这篇共有37248文字,由袁建韵认真改进后,发布在美文档!《电路》是高等教育出版社2011年出版图书,作者是邱关源,本书为第5版,主要目标是适应电子与电气信息类专业人才培养方案和教学内容体系的改革以及高等教育迅速发展的形式。PowerBuilder的分布式计算技术及其应用_工科论文十篇感谢大家来收藏!
PowerBuilder的分布式计算技术及其应用_工科论文 第一篇
关键词:客户机/服务器 分布式计算 二级体系结构 三级体系结构 客户应用程序 服务器应用程序
引言
90年代,人们开发MIS系统大都采用客户机/服务器结构,客户机/服务器结构既是硬件结构又是软件结构。即数据放在服务器上,程序在客户机上。进行数据访问时,由客户机提出请求(一般是SQL语句),服务器执行并给出结果。客户机/服务器对于优化了网络,提高了系统的利用率。客户机/服务器体系结构的发展经历了从二级体系结构模式到三级体系结构模式。
1 二级体系结构模式
传统的客户机/服务器的模式是二级体系结构(Two-tier model)模式。结构图如图1
用户界面与逻辑事务驻留在客户计算机上,将大部分的数据存放在数据库中,对数据的操作如查询、修改等由客户机提出请求,数据库服务器完成并返回给客户机结果,这种体系结构虽然可以系统的性能,但它们具有明显的缺点:
缺乏安全性
在客户机上存取敏感性数据时,由于逻辑事务放在服务器中,所以用户可以访问逻辑事务的核心部分,这使得未授权用户容易侵入系统,有安全漏洞。
重的客户机负荷
随着客户机要求处理的事务的数目增多,系统的任务日益繁重,导致系统的吞吐量下降,使得客户机不能满足系统的要求,当然可以买一台更大的机器来替代旧的客户机器,但在经济方面不如买一台机器来分担客户机的某些任务。
鉴于此,人们提出了三级体系结构模式(见图2)。
2分布式计算体系结构
在该模式中,用户界面保存在客户端,事务逻辑保存在应用服务器中,数据保存在数据库服务器中。客户机只负责提供用户界面,当需要进行数据访问时或复杂计算时,客户机向应用服务器发出请求,应用服务器响应客户机的请求,完成复杂的计算或者向数据库服务器发送SQL语句由数据库服务器完成相应的数据操作,最后由应用服务器将结果返回给客户机。该模式也称三级体系结构模式,PowerBuilder对于该模式是支持的。需要说明的是,三级体系结构模式的三级是指逻辑上的三级(即用户界面、事务逻辑、数据)而不是物理的三级。(具体见图二)
对于二级模式,分布式计算体系结构提供了解决方式,分布式计算技术通过将用户界面与事务逻辑分开,这使得未授权用户很难侵入系统,保证了系统的安全性;同时由于客户机只处理用户界面,大量的事务处理在服务器应用程序实现,大大减轻了客户机的负荷,使瘦客户成为可能。
二、分布式应用的体系结构在PowerBuidler中的实现
分布式PowerBuilder 应用程序典型使用两个应用程序,即服务器应用程序和客户应用程序,分别在两台机器上实现。
服务器与客户应用程序一起实现事务应用,客户应用程序处理用户界面,与用户交互,服务器应用程序提供给客户应用程序提供必要的数据包,应用程序对客户应用程序透明。结构图见图3。
尽管服务应用通常提供数据包给客户应用程序,但服务器应用程序本身也可以作客户应用程序功能,换言之,服务器应用程序能作为客户应用程序与另一服务器应用程序连结,这时,这个服务应用程序作为客户应用程序与另一应用程序的中介等。
2.1服务器应用程序
服务器应用程序提供了两个主要的组件:传送对象(Transport object)、远程对象(Remote object)。
传送对象使之能为服务器应用程序收到客户连接并处理客户请求。
在分布式应用中,客户能调用服务器提供的服务,通过远程对象提供,一般地,一个远程对象是一个NVO(nonvisual user object)-----不可视用户对象,包含在远程服务器上,一个客户能调用远程对象提供的功能,就好象他们被定义在本地的对象一样,也就是说,客户应用程序能调用远程的对象,与同一台计算机或另一台网络上的计算机各自执行程序完成某项功能,PowerBuiler对远程对象的调用有同步与异步调用。当同步调用时,客户等待直到服务器处理完成,当异步调用时,服务器只在自己的队列中增加一个请求队列,以后处理之,同时,客户机去做其他的事情,直到服务器处理该请求。
2.2客户端应用程序
客户端应用程序有三个组件
用户界面(user interface)
连接对象(Connection object)
远程对象的类定义(remote object class definitions)
结构图见图5
用户界面
客户应用程序包含与用户的交互,除此之外,客户包含执行脚本,对于客户采取的反应。例如,这些脚本能规定当用户点了按纽会发生什么事件等。
连接对象
该对象提供了客户应用程序连接到服务器应用程序,并要求服务.
远程对象的类定义
每个服务器应用程序的远程对象在客户应在程序中有相关的类定义。远程对象定义的本地的拷贝与服务器应在程序的定义有一个相同的名字,执行期间,本地定义的对象允许客户访问,就如远程对象实例就象在本地一样。
类定义在客户应在程序中包含了远程对象的完全或部分功能,Proxy(代理) 对象提供了远程对象界面的表示,对分布式处理,只有Proxy对象在客户应在程序是必须的。在客户应在程序中,对象透明,当你在客户应在程序利用远程对象类定义,客户端的定义与服务器端的定义一致。考虑到这两个定义有相同的名字,PowerBuiler提供了这种透明技术。用这个类定义的变量能保持本地对实例的引用。执行时,你能初始化本地的对象或远程对象,这依赖你的应用要求。
2.3通讯方式
PowerBuiler的分布式技术中支持以下几个通讯协议
Winsock
在支持TCP/IP的网络中,利用WINDOWS SOCKETS工具通讯。只要支持TCP/IP的网络都可以用该方式。
Names pipes, 通过命名的管道进行通讯。
local, 指在分布式应用程序可在本地运行。
不同的运行平台支持不同的通讯方式.
三、 应用程序举例(PowerBuiler的实例)
在客户机/服务器中,一个比较典型的例子是实现服务器推拉(Sever Push),客户机请求服务器称为拉,服务器响应客户机请求并将消息发回给客户机称为推。
本例子功能是这样的,由客户机应用程序向服务器应用程序发出请求(为简单起见,请求服务是一条消息),服务器应用程序收到消息后,做一些数据处理或其他的工作,完成之后,给客户机应用程序返回一条消息告知请求服务完成。
本例子代码解释如下:首先建立即两个NVO,一个是Uo_Custdata, 一个是Uo_response_Object, 在 Uo_response_object中,有一个用户对象函数Doneprocessing(),该函数执行一个提示窗口,给客户机发布消息,说明处理数据完毕。在Uo_Custdata中建立一个处理数据的函数process_data,其参数包含Uo_response_Object。将包含该用户对象的文件编译成proxy,如a.pbl在客户应用程序中包含a.pbl即可。在客户机应用程序中,先建立connection对象,定义connection的属性,然后创建 remote object(用Create Instance),本例子是Uo_Custdata,再调用remote object的一个函数(也就是process_data);在服务器应用程序中,先建立transport对象,定义transport对象的属性,然后等待客户提出请求(用listen函数)。
源程序如下:
// ------------------客户机应用程序
//定义connection
connection myconnect
long ll_rc
//用Create建立实例
myconnect = create connection
//设置Connect属性
myconnect.driver = "WinSock"
myconnect.application = "70000"
myconnect.location = "server01"
ll_rc = myconnect.ConnectToSe ver()
IF ll_rc 0 THEN MessageBox(“警告”,"连结错误")
END If
// 调用remote object(服务器应用程序提供)
// Mycustdata 是服务器应用程序的NVO,将包含该user object的文件编译成//proxy,在客户应用程序中包含proxy的pbl文件。
Uo_custdata Mycustdata
Uo_response_object Myresponseobject
…….
Myconnect.createInstance(Mycustdata)
Myresponceobject=Create.Uo_response_object
Mycustdata.post process_data(Myresponceobject)
// ---------用户对象
// uo_custdata的函数process_data
参数:Uo_response_object.responceobject
…….//做一些数据处理的工作
给客户发布消息,说明处理数据完毕
Responceobject.post Doneprocessing()
// Uo_response_object 的函数Doneprocessing
Messagebox(“提示”,“处理完毕”);
//----------服务器应用程序
TransPort myTransPort
//建立transport对象
myTransProt=create TransPort
//定义transport对象的属性,
myTransPort.Driver='WinSock'
myTransPort.application='70000'
//然后等待客户提出请求。
MyTransPort.listen()
当然,在基于一般中大型数据库系统,基于WEB方式体系统结构,客户应用程序对于数据库的操作都可以用通过应用服务器程序,这样客户程序就很瘦了,不需要安装如Open Client之类的软件;另外,应用服务器程序可同时运行在几台计算机上,它对于系统的安全性,平衡网络负载都具有重要的现实意义,在PowerBuilder中都是能实现的。
四、结论
PowerBuider5就已经提出了分布式计算技术,但使用起来较为烦琐,这主要表现在编写
个人账户中养老金给付精算模型及其应用_行政论文 第二篇
一、引言
1997年,《关于建立统一的企业职工基本养老保险制度的决定》(以下简称《决定》)规定,中国现行基本养老保险制度选择社会统筹与个人账户相结合的部分积累制,主要目的是预筹资金积累,防范人口老龄化高峰到来之际养老金支付危机。社会统筹采用现收现付模式发放基础养老金,个人账户采用完全积累模式发放个人账户养老金。个人账户缴费的累积额用于退休后平均余寿期间的养老金支付,超过平均余寿期间的养老金由社会统筹基金支付。个人账户使得个人缴费和享受之间建立起直接的联系,增加了缴费的灵活性。在职工调动工作时,由于个人账户的归属权明确,个人账户的累积额可以随同职工转移,有利于职工的流动。
《决定》规定对《决定》实施前已经退休的职工,仍按照国家原来标准发给基础养老金,不发放个人账户养老金。对《决定》实施前参加工作、实施后退休的职工(简称为“中人”)按照新制度规定办法发放基础养老金和个人账户养老金,并在基础养老金和个人账户养老金基础上再确定过渡性养老金。过渡性养老金从养老保险基金中解决,具体办法,同劳动部会同有关部门制定并指导实施。但中国至今关于“中人”的过渡性养老金的发放问题尚未解决。对《决定》实施后参加工作的职工(简称“新人”和“中人”个人账户养老金月标准为本人储存额除以120。但这一标准忽略了预期利率的变化。
针对本世纪人口老龄化的到来,退休人员的养老金的发放标准显得日益重要的事实,笔者利用保险精算学中生存年金理论分别给出“新人”和“中人”的个人账户下养老金给付模型,并结合社会养老保险中公平、效率原则给出“中人”过渡性养老金给付模型,由此得到的个人账户下养老金给付模型具有重要的理论和参考价值。根据个人账户给付模型和1990年全国市镇职工从业人口生命表的数据,得出个人账户下养老金发放标准偏高的结论。这一结论对制定个人账户下养老金发放标准具有重要的实际应用价值。
二、个人账户中养老金给付精算模型
个人账户平衡的精算模型是根据未来给付精算现值等于未来缴费精算现值的基础进行精算估计。未来给付精算现值是个人账户承诺的所有未来给付在计算时点的现值,未来缴费精算现值是职工在职期间个人账户中缴费累积额在计算时点的现值。
(一)“新人”个人账户中养老金给付精算模型
《决定》规定,对“新人”缴费按工资的某一固定比例缴费,个人账户养老金给付额在其退休后按个人账户的累积额发放养老金。
不妨设“新人”在个人账户下开始缴费的年龄为α岁,退休年龄为r岁,ω为职工生存的极限年龄。每年养老金发放额为b,以(PVFB)[,a]。表示a岁职工的未来给付精算现值,则
附图
上式为中国个人账户中“新人”养老金给付精算模型,其年给付额与个人账户的缴费率、初始缴费工资、利率、职工的生存概率(注:职工的各年生存概率参考1990年全国市镇职工从业生命表中数据。)有关。
(二)“中人”个人账户中养老金给付精算模型
《决定》规定,制度转轨后,“中人”的缴费率与“新人”相同,个人账户养老金给付额在其退休后以个人账户累积额为基础发放养老金。但“中人”在现收现付制下由于缴费而积累了获得养老金的权利,根据社会养老保险的公平、效率原则,在计算“中人”个人账户养老金发放时,需加上“中人”的这部分养老金权利,“中人”的这部分养老金称为过渡性养老金[2]。过渡性养老金从社会养老保险基金中筹取,过渡性养老金的发放额可根据“中人”在现收现付制下的工作年限、缴费额等条件利用精算学中生存年金理论确定。
设a岁参加工作,现年y岁“中人”在《决定》实施前具有y-a年(即缴费和视同缴费的年数)缴费年数,
当k=0时,表示退休给付不作调整,职工退休后每年得到的养老金数额相等。
“中人”退休后,由过渡性养老金总权利在y岁时的精算现值:
附图
由此可得,“中人”在退休后由个人账户累积额领取的每年养老金为:b[,r]+b[,ro]。(现收现付制下退休职工的养老金规定为替代率乘以职工退休前一年职工平均工资。)
三、个人账户下养老金发放标准问题
中国城镇职工基本养老保险个人账户部分,采取以平均余命确定养老金的方法。个人账户中缴费一般按工资的一定比例缴纳,个人账户中养老金发放标准按退休职工的平均余命和预定利率来确定。职工退休后,个人账户养老金的给付额大小由缴费和利息的累积额确定,并且养老金的给付额一般不作指数化调整。《决定》规定,个人缴费年限累计满15年的,退休后按月发给个人账户养老金,个人账户养老金发放标准为本人账户储存额除以120。如按年折算,也就是个人账户年养老金发放标准为本人账户储存额除以10,本节根据保险精算学中确定年金理论,指出中国养老金发放标准中存在偏高的问题。
设职工参加养老保险第一年的工资收入为w,职工工龄工资增长率为n[,1],职工年度工资增长率为n[,2],职工个人账户缴费率为C[,1],缴费年限为n,预定利率为i,假定缴费时间在每年年初,根据保险精算学中确定年金理论[3][4],可得:
第一年初缴费到n年末的累积额:
C[,1]W(1+i)[n]
第二年初缴费到n年末的累积额:
C[,1]W(1+n[,1])(1+n[,2])(1+i)[n-1]
第n年初缴费到n年末的累积额:
C[,1]W〔(1+n[,1](1+n[,2])〕[n-1](1+i)
令m=(1+n[,1])(1+n[,2]),则该职工到第n年末退休时的个人账户养老金总累积额为:
附图
按年养老金发放标准发放时,个人账户养老金支出的计算。设养老金年给付额为b,平均余命为e年,预定利率为i,养老金发放在年初进行,则各年的养老金在平均余命期限e年初(退休当年)的现值为:
第一年养老金在e年初的现值:b
附图
该职工在e年期初(即退休当年)各年养老金现值总和:
附图
定理1:个人账户发放养老金标准在退休职工的平均余命一定时随利率的增大而增大而增大,在利率一定时随退休工平均余命的延长而减小。
证明:当i=0时,由式(6)得k(i,e)=e
附图
表1 55~60岁全国市镇从业人口生命表(注:55-60岁全国市镇从业人口数据来自1990年全国市镇职工从业生命表)
年龄/岁 55 56 57 58 59 60
死亡概率 0.00730 0.00826 0.00896 0.01039 0.01302 0.01417
平均预期余命/年 19.01 18.25 17.41 16.58 15.76 14.97
表2 不同预期利率水平下养老金发放标准
附图
即:个人账户养老金除数因子随利率的增大而减小,随退休职工平均余命的延长而增大。从而,个人账户养老金发放标准随利率的增大而增大,随退休职工平均余命的延长而减小。证毕。
职工退休后的平均余命参照全国市镇职工从业人口生命表进行测算。由于职工退休时未来平均余命内预定利率是个不确定的值,因而养老金发放标准与预定利率的高低有很大关系。如果预定利率比较高,则养老金发放标准也比较高,预定利率较低,养老金发放标准也比较低。
中国男女平均退休年龄58岁,根据1989~1990年全国市镇职工从业生命表的数据,58岁职工的平均余命为16.58年,如表1所示。
根据1989~1990年全国市镇从业生命表中58岁职工的平均余命为16.58年,得到不同预期利率水平下的除数因子,并分别计算了平均余命增加一个月、一年时,除数因子在不同利率下变化情况。由中国人口信息研究中心估计未来50年(2000~2050年)中国未来退休人口平均余命为18年,得到在不同预期利率下除数因子,如表2所示。
由表2可以看出,在相同预定利率下,个人账户养老金的除数因子随退休职工的平均余命的增加而增大;在退休职工平均余命一定时,个人账户养老金的除数因子随预定利率的增大而减小。平均余命增加一个月时,除数因子在不同预定利率下(1%~10%),分别增加0.07,0.061,0.052,0.043,0.035,0.033,0.025,0.021,0.02;平均余命增加一年时,除数因子在不同预定利率下(1%~10%)分别增加0.91,0.724,0.61,0.52,0.45,0.38,0.33,0.28,0.25,0.21。根据表2,得出不同预定利率和退休职工不同平均余命下除数因子大小不同,由于养老金发放标准必须在职工刚退休时根据预期利率水平、预期平均余命预先确定下来,而且一般确定下来后不宜再作变动,特别是向下变动更难。因此,个人账户养老金发放时必须根据未来至少10年的平均余命和预期利率预测进行制定标准。
笔者采用1997年退休职工平均余命为16.58进行:当预期利率为0时,全部养老金储存额按照平均余命16.58年发放;当预期利率为1%时,由于各年养老金领取后的剩余部分能够继续产生增值,全部养老金储存按15.36份发放,同样可以发放16.58年,年养老金发放标准比利率为0时增大。个人账户养老金平衡的关键是根据退休后预期利率的高低确定合适的除数因子。如果除数因子规定太小,则个人账户养老金储存额在平均余命到达之前就已经领完。例如:当除数因子按10.3计算时,预期利率必须是7%时才能保证16.58年内养老金的发放。如果实际利率是3%,除数因子按10.3计算,养老金储存额只能够发放12.8年,平均余命期限内还有3.78年时间内个人账户已没有养老金可领取,必须从社会保险基金中领取,由此造成社会养老保险基金的收支失衡。如果除数因子规定太大,则个人账户储存额在平均余命到达之后还有剩余。例如:实际利率是3%,除数因子按15.36计算时,养老金可以发放约19年。由此造成个人账户储存额在平均余命到达之后仍有剩余,起不到社会保障中公平、效率的原则。由此可见,在退休职工平均余命一定时,个人账户养老金平衡的实现则
SA68D21DL全双工无线数传xx模块及其应用_工科论文 第三篇
摘要:SA68D21DL是一种可在微机或单片机之间进行全双工无线通信的数传收发模块,该模块具有透明式数据传输、与上位机接口简单方便、通信距离较远、数据误码率低、可工作、可组网应用等特点。文中介绍了SA68D21DL模块的功能、特点、引脚分布,给出了SA68D21DL的典型应用电路和应用实例。
关键词:计算机;无线数传模块;全双工;SA68D21DL
1 基本特点
对于移动或便携式数据采集系统及一些布线不便或布线成本过高的微机测控系统而言,采用无线数据传输是一种较好的选择方案。由捷麦通信器材有限公司生产的SA68D21DL无线数据收发模块就是一款可在微机与微机之间,或微机与单片机之间进行全双工远距离无线通信的收发模块。该模块还可组成最多65535点的单发多收或多发单收形式的无线局域网,且可脱离微机组成多点、遥控系统。该模块的主要特点如下:
●采用透明式数据传输,无需改变原有系统通信程序及硬件连接方法;
●串口具有TTL、RS232、RS485等多种电平接口;
●内含E2PROM及看门狗电路,可掉电记忆设置参数;
●采用CRC检验,可验出传输中99.99%的错误;
●具有组网通信模式,便于点对多点通信;
●频率源采用VCO/PLL频率合成器,可方便灵活地通过串口设置频点;
●采用带有温度补偿频率基准,频率的瞬时及长期稳定度很高;
●同时具有串口通讯及开关量I/O,可直接用于、遥控等用途;
●采用工业级产品设计,工作温度范围宽,可适应野外工作;
●采用全封闭铝合金外壳,抗干扰能力强;
●采用全SMT组装,工艺先进、可靠性高;
● 发送/接收距离范围为1~3km。
2 技术指标
SA68D21DL的主要技术指标分为综合指标、接收指标和发射指标三种。
(1) 综合指标
●工作频段:227.000MHz~233.000MHz;
●信道间隔:25kHz;
●频率容差:±5ppm;
●工作温度:-30~+60℃;
●天线阻抗:50Ω;
●工作电源:DC 6V ;
●无线码速率:1200bps;
●接口速率:1200bps;
●接口标准:RS232、RS485、TTL电平可选;
●外形尺寸:120×140×30mm;
●重量:120g;
●数据传输延时:≤100ms。
(2) 接收指标
●灵敏度:≤0.2512dB SINAD;
●邻道选择性:≥65dB;
●杂散响应抗扰性:≥65dB;
●互调抗扰性:≥60dB;
●静态电流:≤65mA;
●阻塞:≥90dB;
●音频输出功率:50mW;
●失真度:≤5%;
●误码率:≤10-6 20dB SINAD;
●共信道抑制:≥-8dB。
(3) 发射指标
●调制方式:FSK/1200bps;
●发射功率:500mWDC12V;
●载波频率容差:≤5×10-6;
●杂散射频分量:≤-65dB;
●临道功率比值:≥ 65dB;
●音频调制电压:10mV(3kHz频偏);
●调制失真:≤3%;
●最大频偏:≤5kHz;
●调制带宽:≤16kHz;
●剩余调频:≤-40dB;
●剩余调幅:≤3%;
●发射电流:≤600mA。
3 模块引脚功能
SA68D21DL模块的外形及引脚排列如图1所示,该模块共有4个插座(J1~J4),各引脚的功能说明如表1所列。
4 上位机与模块的通信规约
4.1 串口通信格式
上位机与模块间的通信是通过异步串口来完成的。异步串口采用标准的串口格式,即1个起始位、8个数据位和1个停止位。传输速率为1200bit/s。上位机与模块间的通信内容有两类,一类是数据,一类是命令。
4.2 数据及命令的区分
当上位机向模块传送信息时, DTR端的功能是指示串口信息的性质。若串口信息为命令,DTR端应置为逻辑“0”,若串口信息为数据,则DTR端应置为逻辑“1”。
当模块向上位机传送信息时,DSR端可用来指示串口信息的性质,若串口信息为命令,DSR端为逻辑“0”,若串口信息为数据,DSR端为逻辑“1”。
当模块串口无数据发出时,DSR端的功能可指示模块是否可以接收上位机的信息,当模块准备好,可以接收上位机的信息时,此端为逻辑“0”;当模块不能接收计算机的数据时,此端为逻辑“1”。
4.3 命令和数据传送格式
SA68D21DL的命令传送格式为:
D7H命令码H参数H其中,D7H为命令码的特征码,即字头。命令码为一字节长度,代表命令的性质。不同的命令码有不同的参数。模块在收到命令后,将根据命令码的不同,参数并执行命令。对于有些需要发送信令的命令,模块将根据命令的性质来发送相应的信令。当SA68D21DL在进行数据传送时,无论是上位机传给模块,还是模块传给上位机的数据,都采用无格式传送方式。
5 典型工作方式
SA68D21DL在工作时具有3种典型的工作方式,即数据传送方式、数据/命令传送方式和模块工作方式。
5.1 数据传送方式
当用户仅需使用模块收发数据,而无需改变模块参数(如频率、ID地址等)时,可使用此方式,此方式下模块与上位机的连接电路如图2所示。
表1 SA68D21DL引脚说明
插座号端口名称I/O作用
J1Vcc,GND分别为正电源和地端J2~J3PB8~PB0双向TTL电平开关量I/O端子。可通过编程设置成输入或输出端子。若为输入,当在此端检测到状态输入端有一个大于1ms的跳变时,模块将根据状态端子的设置来发送状态控制信令给接收机。而接收模块将根据状态控制信令中的目的地址与模块的身份地址是否满足响应条件来决定是否响应。若设置为输出端子,则在模块收到状态控制信令后,模块将根据相应的设置决定是否响应和怎样响应J4~4RxD上位机将要发送的数据或给模块的命令发送此端J4~3TxD模块将接收到的数据或给上位机的命令送至此端J4~2DSR当模块向上位机发送数据时,DSR端的功能为指示串口数据的性质J4~1DTR当上位机向模块送数据时,DTR端的功能为指示串口数据的性质数据传送方式由于未使用模块的D
北京市天然气近期规划简介_工科论文 第四篇
一、规划依据
关于《城市总体规划》的批复中指出,要“将建成经济繁荣,社会安定和各项公共服务设施、基础设施及生态环境达到世界第一流水平的历史名城和现代化国际城市”。市近年来在治理环境污染、改善空气质量方面作了大量工作,但是由于前些年城市建设发展速度大大超过环境能力,因而使得环境质量仍有恶化的趋势,距离总体规划所确定的目标相差甚远,特别是大气质量,目前还达不到国家所规定的二级标准。对此,要求市采取能够采取的一切措施,力争在20xx年使大气环境质量达到国家二级标准。
天然气是优质高效能源,污染物排放很少,由于用管道输送减少了城市内运送燃料、灰渣等的车辆,从而减少了因车辆过多引起的大气污染、噪音、交通事故等一系列问题,经济和环境效益显著。纵观世界大城市的经验,只有大力发展天然气等优质能源,才是改善大气环境的根本途径。
党、和市对治理市大气污染极为重视,市为发展天然气制定了多项方针和措施,l998年11月给上报了《关于采取果断措施、控制大气污染的紧急请示》,获得及有关方面的全力支持和赞成。同时市责令二环路以内燃煤的茶炉、大灶必须于l999年2月l5日以前全部改用天然气或其他气体燃料,逾期不改加倍罚款。1999年3月市又颁布了治理环境的28项措施,其中明确规定:积极推广使用天然气,l999年底前,全市要形成消纳7亿立方米年天然气的能力,加快无燃煤区建设。
至目前市分四个阶段,共颁布了93条环境治理措施。由于紧急措施得到了较好落实,阻止了大气质量继续恶化。为改善首都环境质量,减少大气污染、申办20xx年会准备条件。同时,也为天然气的合理利用创造了条件。
目前引进陕甘宁天然气市内工程中的骨干工程(如公路一环超高压管线、门站、罐站、高中压调压站等)已经进入设计施工阶段,有些已投入运行,下一步重点将是市内高、中压干线的建设及燃气用户发展。
当前,市燃气集团上报的陕甘宁天然气用量从7亿立方米/年增加到l 8亿立方米/年预可行性研究报告已得到批准,主要内容有:编制20xx年前增建、扩建城市管网输配系统设备;发展天然气用户、置换人工煤气用户;现有天然气、人工煤气管网及调压站升压改造;增加天然气管理设施等。
二、燃气供应现状
的城市燃气事业起始于l958年。
经过近四十年的发展,市已经形成完整的“三气”(人工煤气、天然气、液化石油气)输配、供应系统。截止l999年底,使用“三气”的居民用户为265万户,城、近郊区居民气化普及率约95% 以上。两个管道气(人工煤气、天然气)的管网总长度为44l3公里,液化石油气输油管线及小区管网总长度约176公里,各自运行,管网覆盖面为规划市区的85%左右。
两个管道气调节日用气不均衡的储气设施总能力为ll0万立方米,城、近郊区液化石油气总有效储存量1.8万吨,这些设施有利的保证了城市用气的安全性和可靠性。
市的天然气由华北油田和陕甘宁长庆气田二家双路供应。 华北油田共有20余口气井,分散在永清县、霸县、文安县、苏桥、雄县地区。50%是采油伴生气,50%是气井气。经过三级处理后,汇集到永清处理站。从l987年底开始,分别由东线和南线两条输气管线送到市。东线管径φ2l9x8,全长69公里,输送到市东郊(垡头)门站。南线管径φ529x8,全长64公里,输送到市南郊(潘家庙)门站。目前华北油田平均日供气能力4l万立方米,最大日供气80万立方米。l997年9月位于陕西省的长庆气田开始向市供应天然气,成为市第二个天然气气源。长庆气田共有l00余口气井,经过靖边集气站净化厂净化处理后,加压到4.5兆帕(预计l999年底加压到6.4兆帕),由长输管线送到市。输气管线管径φ660x7~l0,全长900公里,送到市西郊衙门口天然气集输公司集输站(长输管线末站),经调压后送到市衙门口接收站(市门站),由门站调压、稳压后(出站压力1.6兆帕,将来为2.5兆帕),送到市内输气管网系统。
截止到l999年底,全年购入量7.6亿立方米,完成销售量6.5亿立方米。市内现有天然气管道总长3277公里,其中超高压和高压管道211公里,中压管道752公里,低压管道23l4公里。管网压力级制为四级,超高压(1.6—2.5兆帕),高压(1.0兆帕),中压(0.2~0.4兆帕,目前为0.1兆帕),低压(3000帕)。超高压管道管径为DN700,高压和中压管道管径为DN200—500。
现有天然气调压站3l9座,其中高中压2l座,中低压298座。储罐站两座,总储气能力20万立方米,占日供气能力约l2%。
到l999年底,使用天然气的居民用户l04万户,各类公共建筑用户(包括机关、学校、餐馆等)5300户,工业用户44户。各类用户的用气比例为:工业用户9.6%;民用户90.4%,其中居民38.1%,生活公共建筑25.9%,采暖及制冷26.4%,居民和公共建筑用户用气比例为60%比40%。
三、 “十五”期间天然气发展目标
根据陕甘宁长庆气田的开发能力, 目前供市天然气量年均日可达到300万立方米/日,连同华北油田供气80万立方米/日,年均日供气能力为380万立方米/日,年供气能力可达到l 3亿立方米/年。
l999年11月份长庆气田靖边首站升压,长输管线起点压力约6.4兆帕,2000年初供市气量达到了500多万立方米/日,连同华北油田供气80多万立方米/日,总供气能力最高日(1月24日)达到了613万立方米/日。
计划2000年11月份陕京长输管线中间加压站建成,供气能力可达到770万立方米/日,连同华北油田供气80万立方米/日,总供气能力约850万立方米/日,年供气能力约30亿立方米/年。
目前,市在改善环境质量,解决大气污染等方面已下了很大的决心,一再颁布加快利用天然气、消除燃煤污染的多项措施,我们根据两个气田供气能力增长情况和市人力、物力、财力等各方面的实际情况,编制了2000—20xx年发展设想。初步设想:2000年需天然气l0亿立方米/年;20xx年需16亿立方米/年;20xx年需l 8亿立方米/年;20xx年需40—60亿立方米/年。
2000—20xx年为配合接收l 8亿立方米/年天然气,需建设完成的工程项目有:
1.新建门站—东郊门站
为配合华北油田地下储气库实施、运行,在东郊公路一环附近新建一座门站,总规模700万立方米/日。
2.高压输配管网
新建东郊门站到望京调压站起高压输气管线,设计压力2.5兆帕,A研00,全长50公里。建高压管线l 8公里。
3.起高压调压站
新建6座超高压调压站,设计进、出口压力2.5兆帕—1.0兆帕/0.4—0.1兆帕。
4.中压输配干线
中压干线A肥00—500,压力0.2兆帕—0.4兆铀,共l 32公里。
5.中压管网升压改造
为接收l 8亿立方米/年天然气,必须提高现有中压管网的输送压力,才能满足不同类型用户使用要求。但目前有些管网,特别是由人工煤气置换成天然气的管网及设施,建成时间较长,存在不同程度的腐蚀和损坏,难以承受管网升压的要求, 因此必须改造。
改造内容有:更换部分管线,更换高中压、中低压调压站设备,更换管网上部分阀门及抽水缸等。
6。管网调度监控系统改造,新建一套设施,规模与陕京市内一期工程相当。
7.增建部分生产管理设施。
8.发展天然气汽车5600辆,予建11个汽车加气母站。
9.建设地下储气库,有效容积2.3亿立方米。选择天津大张蛇枯竭油气田建地下储气库调峰。
资金来源有:拨款、国外贷款、国内贷款、用户集资。
初步预测,到20xx年市接收陕计宁天然气由7亿立方米/年增加到l 8亿立方米/年,每年可减少燃煤355万吨/年,减少飞灰排放量39/年,减少废渣排放量l 24万吨/年,减少二氧化硫排放量5万吨/年。
四、规划实施措施
燃气事业是城市基础设施,发展城市燃气是现代化城市标志之一。随着环保力度加大,其重要性愈加明显。
陕甘宁天然气引进,为市建设现代化城市创造了有力的条件,到20xx年,天然气居民用户约126万户,约占城市燃气居民用户的45%,占管道气居民用户的70%。大气环境质量基本达到国家二级标准。但是随着首都经济建设的发展和对环境治理的强化,现有气源还不能满足市今后发展的需要。 在20xx年前,市要开发第二气源,天然气或引进液化天然气。天然气利用范围也要扩大,不仅限于发展居民和公福炊事用气;为改善来暖期大气污染要大力发展采暖用气;为调节城市用气不均衡性发展用气负荷稳定的工业用户,并给以优惠政策;还要发展利用天然气发电,开展燃气轮机或冷、热、电联产的试点工程,这是今后天然气的利用方向。
20l0年前后,市将逐步置换完人工煤气用户,除以煤气为动力的大工业用户和旧城平房区无法通入管道气使用液化气外,一律使用天然气。而且随着城市改造液化气逐渐迁向城近郊区或远郊区村镇。 20xx年以后,要结合天然气供气规模、气源情况,建设公路外二环部分管线,为市接收不同方向来的天然气做准备。
扩大地下储气库或建调峰气源,调节季峰、日峰,保证市安全稳定供气。
为保证规划实施,提出以下几项措施:
(一)加大环保力度,尽快制定限制燃煤、鼓励用气的优惠政策
1.今后凡在市区内新建、扩建、改建的工程项目,一律不准烧煤,必须使用天然气、人工煤气、液化石油气等清洁燃料。原有燃煤设施(如l 0吨/时以下燃煤锅炉、餐饮业茶炉、大灶等)要按照市统一规定限期改用燃气。
2.征收燃煤排污治理费,做为发展燃气的专项资金,促进天然气发展与推广。
(二)尽快解决建设资金问题
1.落实建设无煤区的资金筹措办法,由用户集资的工程要
高速红外VFIR控制器的设计与实现_工科论文 第五篇
摘要:根据IRDA红外串行物理层规范IRDA-1.4设计基于PCI总线的甚高速VFIR红外控制器,详细了控制器的硬件和软件设计方法及实现过程。设计中使用PCI总线主控接口芯片S5933,实现复杂的PCI总线接口到相对简单的用户接口功能转换;使用FPGA实现红外控制器的传输控制和时序逻辑。
关键词:PCI总线 接口控制器S5933 甚高速红外控制器 HHH(1,13)编解码
PCI(Peripheral Component Interconnect)局部总线是一种高性能、32位或64位地址数据多路复用的同步总线。它的用途是在高度集成的外设控制器件、扩展卡和处理器/存储器系统之间提供一种内部的连接机构,它规定了互连机构的协议、机械以及设备配置空间。PCI局部总线因具有极小延迟时间、支持线性突发数据传输、兼容性能以及系统能进行全自动配置等特点受到业界青睐。PCI总线规范2.1版本还定义了由32位数据总线扩充为64位总线的方法,使总线宽度扩展,并对32位和64位PCI局部总线外设做到向前和向后兼容。
目前微机之间的红外通信是基于IRDA-1.1标准的红外无线串行SIR通信,参考文献[2]给出了基于ISA总线的红外无线串行通信卡的设计及实现,该通信卡的数据速率为9.6kbps~115.2kbps,工作距离0~3m。但由于RS-232端口的最高数据速率上限为115.2kbps,不能满足IRDA-1.4规范甚高速红外VFIR 16Mbps速率要求,所以使用了PCI同步总线扩展外设的方法设计甚高速红外控制器。虽然ISA总线的传输速率能满足甚高速红外控制器设计要求,但目前许多微机系统已经逐渐淘汰ISA/EISA标准总线。原因是高速微处理器和低速ISA总线之间不同步,造成扩展外设只能通过一个慢速且狭窄的瓶颈发送和接收数据,使CPU高性能受到严重影响。
1 HHH(1,13)编解码
20xx年5月,红外无线数据协会IRDA发布了红外串行物理层规范IRDA-1.4[4];它与前期发布的物理层规范的主要区别在于增加甚高速红外VFIR 16Mbps数据速率的编解码技术和帧结构,而其它如视角范围、发射器最小(大)光功率和接收器灵敏度等规范基于相同。红外串行物理层规范IRDA-1.4规定数据速率小于4Mbps采用RZI(归零反转)调制,最大脉冲宽度是位周期的3/16或1/4;数据速率4Mbps采用4PPM(脉冲位置调制);数据速率16Mbps采用HHH(1,13)码。
IRDA提出的VFIR编解码技术-HHH(1,13)码是码率为2/3,(d,k)=(1,13)的RLL(run-length-limited)码;它是一种功率消耗和频带利用率相对折中的高效编码,其中参数d、k分别表示在两个'1'之间最小和最大的'0'的数目,参数d决定接收中有间干扰ISI,参数k决定接收器能否从接收序列中恢复时钟。HHH(1,13)码的带宽效率使数据通信能够选择成本很低、上升/下降时间为19ns的LED。功率效率避免了LED的热问题,它能保证1m距离范围内保持链接。1m距离16Mbps链路可达到过去4Mbps链路的驱动电流和功耗。HHH(1,13)码和4PPM码(用于4Mbps)的显著区别是HHH(1,13)码决不允许一个红外脉冲紧跟前一个红外脉冲,脉冲之间应该保持一个chip时间差。由于光电管工作区域内有少量载流子的慢辐射,使LED或光电二极光表现出拖尾效应,HHH(1,13)码能够兼容拖尾效应,从而允许在chip时间周期内脉冲的扩展。
虽然HHH(1,13)码的设计过程比较复杂,但IRDA-1.4标准已经详细给出了编译码逻辑方程和电路,所以实现起来比较容易。笔者使用Altera MAx+plus II进行逻辑功能仿真,并用GW48 EDA实验系统进行硬件伪真,验证HHH(1,13)码编译码电路设计的正确性。
2 甚高速红外VFIR控制器的硬件设计
由于PCI总线规定了严格的电气特性,开发PCI总线的应用具有很大难度,因此使用AMCC(Applied Micro Corporation)公司推出的PCI接口控制器S5933实现红外控制器PCI总线接口规范[5]。甚高速红外VFIR控制器原理框图如图1所示。选用Altera公司的FLEx10K系列现场可编程门阵列器件实现S5933与红外Tx/RxFIFO、寄存器的传输控制和逻辑时序以及红外接口控制逻辑和红外收发器接口功能模块(CRC校验、编解码以及串/并转换)。甚高速红外VFIR控制器工作原理如下:首先由AMCC S5933外部非易失性串行EEPROM AT24C02下载PCI配置空间,然后主机通过直通(PassThru)寄存器数据访问方式向红外接口控制寄存器写控制命令[3]。红外接口控制逻辑根据控制命令发出控制,使整个红外控制器处于准备状态。当上层协议发出数据发送事件时,红外接口控制逻辑发出消息,通知主机启动S5933总线主控读操作,把上层数据写到外部红外TxFIFO数据缓冲器;同时红外接口控制逻辑根据TxFIFO状态把TxFIFO的数据发送到红外收发器接口,进行锁存、并/串转换、CRC校验和编码,最后通过VFIR收发器发送数据。同理VFIR收发器接收到的数据经过译码、CRC校验、串/并转换和锁存,写入RxFIFO数据缓冲器。红外接口控制逻辑触发上层协议发出数据接收事件接收数据,主机启动S5933总线主控写操作向上层协议递交数据,数据传输完成上层协议发回消息,通知数据接收完成。下面重点S5933与红外Tx/RxFIFO、红外寄存器组访问控制逻辑以及红外接口控制逻辑和红外接发器接口功能。
2.1 红外Tx/RxFIFO与红外控制寄存器组控制逻辑
AMCC S5933支持3个物理总线接口:PCI总线接口、扩充总线接口和非易失性EEPROM总线接口。非易失性EEPROM用于映射PCI的配置空间及设备BIOS的初始化;扩充总线可以与外设设备互连。主机和外设之间可以利用S5933的邮箱寄存器、FIFO寄存器、直通寄存器(Pass-Thru)数据传输方式双向传输数据。
红外寄存器组包括红外接口控制寄存器和状态寄存器。本文中甚高速红外控制利用S5933直通寄存器单周期数据传送向红外接口控制寄存器写控制字,由Pass-Thru逻辑控制电路把地址和数据分离开,直通地址寄存器(APTA)经374锁存并译码,选通红外接口控制寄存器,同时把直通数据寄存器(PTDA)的低字写入红外控制器;该接口控制寄存器的数据宽度为16位,包括红外控制器始能、工作模式(UART、SIR、MIR、FIR、VFIR)的设置,接收或发送数据的选择以及满足SIR模式下多波特率的分频数。红外接口控制寄存器结构定义如图2。
同理使用直通寄存器方式获取红外接口状态寄存器的状态。红外接口状态寄存器结构定义如图3。
为满足高速数据传输,利用S5933 FIFO寄存器总线主控方式下的同步猝发(Burst)操作(DMA传送)完成主机与红外Tx/RxFIFO的数据传输。PCI接口首先初始化S5933作为总线主控设备,然后由PCI接口向主控读/写地址寄存器(MRAR/MWAR)写入要访问的PCI存储空间地址,向主控读/写计数器(MRTC/MWTC)写入要传输的字节数。S5933提供了4个专用引脚RDFIFOxx、WRFIFOxx、RDEMPYxx和WREULLxx控制内部FIFO与外部FIFO的数据传输接口逻辑。接收/发送FIFO的数据宽度都是32位,分别由4片8位数据总线的IDT72220 FFO数据位扩展实现。该FIFO既为PCI接口提供数据缓冲,又为红外收发器接口提供访问数据。S5933与红外Tx/RxFIFO、红外寄存器组的数据访问控制逻辑如图4。
2.2 红外接口控制逻辑
根据红外接口控制寄存器控制字,红外接口控制逻辑实现外部Rx/TxFIFO与红外收发器接口之间的数据传输和逻辑时序。它的工作原理如下:根据控制字,首先启动红外收发器接口CRC校验、编解码器和可编程时钟(Rx/TxFIFO读/写时钟RCLK、WCLK和编解码时钟fclock),然后根据控制字的Tx/Rx位决定是接收还是发送数据。发送数据时,TxFIFO缓冲器不为空,TxFIFO的EF就触发红外接口控制逻辑发TxFIFO读操作ENRxx,读取TxFIFO的数据(数据宽度32位)传给红外收发器接口进行CRC校验、编码以及并/串转换。同理当甚高速红外控制器接收数据时,红外收发器接收到的数据经过译码、串/并转换(数据宽度32位),然后触发红外接口控制逻辑发出红外接收FIFO的写操作ENWxx,把接收数据写入红外接收FIFO。当RxFIFO写满后,触发控制逻辑发出S5933 FIFO写WRFIFOxx,上层协议启动PCI接口初始化S5933为同步主控写操作实现红外接收FIFO到主机内存的数据传畀。另外红外接口逻辑还实现红外接口状态寄存器状态的配置,以方便上层协议了解红外控制器工作状态。
2.3 红外收发器接口
红外收发器接口的设计与实现是红外控制器成功的关键。该接口需要实现各种工作模式(SIR、MIR、FIR、VFIR)的编解码器和硬件CRC校验、设计比较复杂。编码器前、译码器后,数据都要进行硬件CRC校验实现差错控制。SIR模式采用RZI(归零反转)编码,为高电平,调制为低电平;为低电平,调制为高电平脉冲,最大脉冲宽度是位周期的3/16。MIR模式也采用RZI(归零反转)编码,但最大脉冲宽度是位周期的1/4。FIR模式采用4PPM(脉冲位置调制)调制,它的原理是被编码的二进制数据流每两位组合成一个数据码元组
用于天文观测的CCD相机系统的研究_工科论文 第六篇
摘要:详细介绍紫金山天文台红外实验室开发的CCD相机系统的软硬件设计。根据柯达CCD芯片KAF-0401LE的时序要求,用复杂可编程逻辑器件(CPLD)实现了CCD的时序;采用相关双采样技术降低探测噪声;用89C51作下位机控制,通过RS232与上位计算机通信;系统控制软件采用Visual C++编写。
关键词:CCD CPLD 相关双采样 控制系统 串口通信
引言
CCD通常分为3个等级;商业级、工程级和科学级。3个级别的要求一级比一级高。衡量CCD的性能主要从以下几个方面:量子效率和响应度、噪声等效功率和探测度,即动态范围和电荷转移效率等。科学级CCD以其高光子转换效率、宽频谱响应、良好线性度和宽动态范围广泛用于天文观测,已成为望远镜测必不可少的后端设备。国内各天文台望远镜终端都是从引起的成套设备,使用和维护很不方便,并且价格昂贵,因此国内迫切需要发展自己的CCD技术。紫金山天文台红外实验室对这一课题进行了深入研究,广泛调研,认真选取,从芯片开始一直到系统的软硬件设计,搭建了自己的CDD相机系统。
1 系统设计
CCD芯片决定相机系统的性能,为此我们广泛调研,最后选定柯达公司的KAF-0401LE芯片。它动态范围大(70dB),电荷转移效率高(0.999 99),波长响应范围宽(0.4μm~1.0μm),低暗电流(在25℃条件下,7pA/cm2),量子效率为35%,并且具有抗饱和性,能够满足科学观测的要求,既可用于光谱,又可用于成像观测。
系统设计的重点是解决CCD芯片的驱动和系统噪声的问题。我们的设计如下:采用柯达公司的KAF-0401LE芯片作为探测器,Ateml公司的带闪存Flash的89C51作下位机控制器,复杂可编程逻辑作(CPLD)作时序发生和地址译码,采用相关双采样技术降低噪声,自带采样保持的12位A/D转换顺AD1674进行模数转换,扩展8片128Kbit(628128)的RAM作1为帧图像暂存空间,通过RS232与计算机串口通信,接受计算机的控制。整个系统由图1所示几个功能部件组成。
1.1 时序发生电路
KAF-0401LE芯片的时序要求:积分期间φV1、φV2保持低电平;行转移期间φH1保持高电平,φH2保持低电平。每行开始φV1的第2个脉冲下降沿后,要有1个行转移建立时间tφHs,读完行后需延迟1个像素时间te才开始下一行φV1脉冲;同样,φV1第2分脉冲下降沿后,开始下一行转移,如此直到读完1帧。
复杂可编程逻辑器件(CPLD)以其高度集成、灵活、方便的特点,在电路设计中运用越来越广泛。Altera公司的复杂可编程逻辑器件EPM712SLC84-15具有2500个可用逻辑门,128个宏单元,8个逻辑块,最大时钟可达147.1MHz,带有68个可供用户使用的I/O引脚,PLCC封装,可通过JTAG接口实现在线编程。我们选用EMP7128SLC84-15,通过硬件描述语言(VHDL)在集成开发环境MAx PLUS II下完成逻辑设计;编译后,通过JTAG接口下载到电路板上的EPM7128SLC84-15中,实现了KAF-0401LE芯片的时序要求。
MAx PLUS II虽然有很丰富的元件库,但并不是针对某一应用而开发的,具有通用性,调用它固有的元件库可能造成资源的浪费,没有必要。因此我们按照需求,编制了自己的元件库,然后在程序中作为元件调用。在本系统中,仅用1片EPM7128LC84-15就实现了CCD的时序要求、暂存RAM和接口扩展芯片8255的片选和地址译码,既简化耻电路的硬件设计,提高了系统可靠性,又降低了成本。交流时序条件要求如表1所列。
表1
描 述符号最小值正常值最大值φH1、φH2时钟频率/MHzfH 1015φV1、φV2时钟频率/kHzfV 100125周期/nste67100 φH1、φH2建立时间/μstφHS0.51 φV1、φV2脉冲/μstφv45 复位时钟脉宽/nstφR1020 读出时间/mstreadout3450 每行读出时间/μstline65.895.61.2 双采取、模拟放大电路及A/D变换电路
我们采用能够满足高频要求的放大器LF356N设计双采样和模拟放大电路。根据CCD的动态范围选用自带采样保持的12位A/D变换器AD1674作模数转换。
双采样原理如图2所示。RSL是CCD复位电平,光相当于SGL与RSL的差值,理论上只要分别在RSL和SGL处各采样一次,然后相减便得到的值。然而,实际上RSL和SGL并不是理想的水平线,而是存在着低频起伏噪声。为了降低噪声的影响,通常的做法是,分别在RSL和SGL处多次采样求平均,这样对硬件和数据处理软件的要求都很高。我们这里采用了积分型相关双采样技术,如图3所示,CCD分别经过同相和反相放大器连到模拟开关输入端。模拟开关S1打开时,RSL通过电容积分;s2打开时,SGL经电容积分;s3打开输入端接地,保持不变;s4为复位开关。积分放大器的输入、输出关系如下:
图2中的积分输出是相关双采样的输出波形图。采样保持后通过A/D进行模数转换,经8255口存在板上的RAM中。
1.3 电压偏置电路
CCD驱动的直流偏置电压各不相同,CPLD产生的TTL必须经过电压变换才能加到CCD的输入端。我们首先用LM317和LM337产生所需要的偏置电压,然后经过时钟驱动芯片DS0026转换得到时序和偏置都符合CCD要求的,电路如图4所示。
LM317用于输出正相偏置电压,LM337用于输出负相偏置电压,通过调节可变电阻R2阻值可得到我们所需的偏置电压,计算公式如下:
其中,Iadj<100μA,Vref=1.25V,图4(a)中R1取240Ω,图4(b)中R1取120Ω。
2 软件编程
软件是管理硬件的工具,硬件是实现软件功能的基础。本系统的软件工作任务较重,从可编程逻辑器件的硬件描述语言编程、电路板上单片机的汇编程语言编程,到计算机上控制系统的Visual C++编程。
2.1 时序的VHDL语言编程
我们用VHDL编制CCD时钟驱动、图像暂存RAM和接口扩展芯片8255的地址译码和片选,在集成开发环境MAxPLUS II中编译,通过JTAG口下载到EPM7128SLC84-15中。下面给出实现CCD系统时序部分VHDL语言设计和时序仿真结果。VHDL语言编程基本上分为2个部分:实体说明和结构体定义。实体说明部分定义端口,结构体中实现逻辑设计。程序如下:
LIBRARY ieee; --包括的库
USE ieee.std_logic_1164.all;
USE ieee.std_LOGIC_ARITH.ALL;
USE ieee.std_logic_unsigned.all;
ENTITY kodak7128 IS --实体说明部分
PORT --端口
( clk:IN std_logic; 时钟输入
start:IN STD_LOGIC; --启动采集数据输入
rc:OUT STD_LOGIC; --启动A/D变换输出
s1,s2,s3,s4:OUT STD_LOGIC; --相关双采样模式时钟输出
v1:OUT STD_LOGIC; --CCD行转移时钟输出
v2:OUT STD_LOGIC;
r :OUT STD_LOGIC;--CCD复位始终输出
h1:OUT STD_LOGIC;--CCD像素转换时钟输出
h2: OUT STD_LOGIC;
a,b,c:IN STD_LOGIC; --扩展RAM译码输入
a2,a3,a4,a5,a6,a7:IN STD_LOGIC; --口扩展芯片8255地址
基于Profibus现场总线的煤矿井下胶带监控系统_工科论文 第七篇
摘要:介绍了Profibus现场总线技术的主要特点,并结合祁东煤矿井下监控系统介绍了基于Profibus现场总线的煤矿胶带监控系统的软、硬件配置以及两者之间接口的实现方法。
关键词:监控系统 胶带 Profibus FIx MPI
现场总线是20世界80年代中期在国际上发展起来的。它应用在生产现场,实现微机化测量设备之间的散化、网络化、智能化方向的发展,一经产生便成为全球工业自动化技术的热点,到全世界的普遍关注。自80年代末以来,几种现场总线技术如FF、Lonworks、Canbus、Profibus等已逐渐成熟并对工业自动化进程形成影响。Profibus等已逐渐成熟并对工业自动化进程形成影响。Profibus是Process FieldBus的缩写,是一种用于工厂自动化车间级监控和现场设备层数据通信与控制的现场总线技术,可实现现场设备层到车间级监控的分散式数字控制和现场通信,从而为实现工厂综合自动化和现场设备智能化提供可行的解决方案。
胶带运输是煤矿生产中十分重要的环节,监控系统在该环节的投入是煤矿现场化生产的趋势。本文以皖北矿务局祁东煤矿的井下胶带监控系统为例,简介Profibus现场总线技术在监控系统中的应用。
1 Profibus现场总线技术
1.1 Profibus概貌
Profibus是一种国际化、开放式、不依赖于生产商的现场总线标准,广泛应用于工业自动化。Profibus根据应用特点分为Profibus-DP、Profibus-FMS、Profibus-Pa三个兼容版本。其中Profibus-DP是一种高速(数据传输速率9.6kbit/s~12Mbit/s)的经济的设备级网络,主要用于现场控制器与分散I/O之间的通信,可满足交直流调速系统快速响应的时间要求;Profibus-PA采用IECII58-2标准,传输速率为31.25kbit/s,并提供本质安全特性,适用于安全性要求较高及由总线供电的场合;Profibus-FMS主要解决车间级通信问题,完成中等传输速度的循环或非循环数据交换任务。
1.2 总线拓朴结构
根据现场设备到控制器的连接方式,现场总线的拓扑结构可有多种形式,通常采用以下三种:线形、树形和环形。Profibus采用的是线形结构,其特点是简明,用一根总干线从控制器连到机械装置(控制对象),总线电缆从主干电缆分支到现场设备处,控制器扫描所有I/O站上的输入,必要时还可发送信息到输出通道。在这种总线结构下,可实现多主式和对等工通信,可以两个控制器共享同一个系统中的信息和I/O站。另外,不需关闭总线系统就可以把一个I/O设备从总线上拆下,这给总线系统的维护带来了很大方便。
1.3 Profibus-DP的设备类型
根据实际设计需要,本系统采用Profibus-DP。每个Profibus-DP系统包括以下三种不同类型的设备:
(1)DP主站类型1 它是Profibus-DP应用的中心部件,在一个规定的、重复的信息周期内,控制器或PC机与分布式从站(DP从站)交换信息。非循环传输的数据与循环的测量值相比不是经常变动的,因此这种数据与快速循环的有用数据一起传输,但它以较低的优先级传输。主站中的中断确认保证由DP从站来的中断可靠传输。
(2)DP主站类型2 这种类型的设备(如编程器、组态设备或操作设备)用于DP系统的启动、组态或用于正常运行过程(如诊断)中的系统操作。此类型的主站可以读取由设备来的输入、输出、诊断和组态数据。
(3)DP从站 一个DP从站是一个I/O设备,它读取输入信息并向I/O提供输出信息,输入和输出信息数取决于设备类型,最大为244字节。
1.4 Profibus-DP的通信协议
Profibus现场总线采用了OSI模型的物理层、数据链路层,如图1所示。其传输速率为9.6kbps~12Mbps,最大传输距离在12Mbps时为100m,在1.5Mbps时为400m,可用中断器延长到10km。其传输介质既可以是双绞线,也可以是光缆,最多可挂接127个站点。
Profibus-DP物理层与ISO/OSI参考模型的第一层相同,采用EIA-RS485协议,根据数据传输速率的不同,可选用双绞线和光纤两种传输介质。
Profibus-DP数据链路层协议媒体访问控制(MAL)部分采用受控访问的令牌总线(Token Bus)和主从方式。令牌总线与局域网IEEE8024协议一致,令牌在总线上的各主站间传递,持有令牌的主站获得总线控制权,该主站依照关系表与从站或与其它主站进行通信。主从方式的数据链路协议与局域网标准不同,它符合HDLC中的非平衡正常响应模式(NRM)。该模式的工作特点是:总线上一个主站控制着多个从站,主站与每一个从站建立一条逻辑链路;主站发出命令,从站给出响应;从站可以连续发送多个帧,直到无信息发送、达到发送数量或被主站停止为止。数据链数中帧的传输过程分为三个阶段:数据链路建立、帧传输和链路释放。正常响应模式主站与从站之间传输帧的格式如图2所示。
F为帧标志字段(8位)。A为从站地址字段。控制字段C表示帧类型、编号、命令和控制信息,它将HDLC帧分为三种类型:信息帧、监控帧和无编号帧。其中信息帧用于应用数据的传输并捎带应答;监迭帧用于监视链路上的正常操作,对链路状态作出各种响应(如认可帧、请求重传或暂停等);无编号帧(不含信息字段)用于传输各种无编号命令和响应,例如建立链路工作模式、释放链路及报告特殊情况等。信息字段由PKW+PZD的应用数据构成,PKW用于读写参数值,如写入控制字或读出状态字等,一般为4KB长,而PZD用于存储控制器的具体控制值、设置站点或状态字的参数,一般为2~10B长,如PZD的第二个字节可设为0xx~7xx设备的起停止位。FCS是帧校验字段,它对整个帧的内容进行循环冗余码(CRC)校验。HDLC帧最长可达24B。
Profibus-DP并未采用ISO/OSI的应用层,而是自行设置一用户层。该层定义了DP的功能、规范与扩展要求等。
综上所述可知,Profibus-DP的实时性远高于其它局域网,因而特别适用于工业现场。
2 井下胶带监控系统的硬件结构
Profibus-DP被应用于皖北矿务局祁东煤矿井下胶带监控系统,硬件系统如图3所示,整个系统由上位机、Profibus-DP主站、Profibus-DP从站及其现场设备组成。Profibus-DP总线将所有设备连接起来。其中,Profibus-DP主站、Profibus-DP从站均采用SIMATIC S7-300的模块系列,主站为CPU315-2DP系列模块,从站为相应I/O模块。
(1)分布式I/O系统,本系统采用ET200通讯模块等Profibus-DP相连接,ET200充分利用了SIMATIC S7-300的模块系列,将所有的S7-300 I/O模块通过接口模板IM153与现场总线相连。I/O模块下的执行器和传感器连接到现场设备,I/O模块按主/从模块向现场设备提供输出数据并向CPU或上位机馈送输入数据。I/O模块属于DP从站。
(2)CPU 作为DP类型1主站,CPU位于控制中心,本系统采用CPU315-2DP模块化型PLC,它具有强大的处理能力,并集成了Profibus-DP现场总线接口装置,同时还具有0.3ms处理1024个语句的速度。PLC程序在上位机的编程工具STEP7中编译完成后下载到CPU315,并存储在CPU315中。CPU315可自动运行该程序,根据程序内容读取总线上的所有I/O模块的状态字,控制硬件设备。
(3)上位机 是DP类型2主站。本系统采用研华工控机作为上位机,通过现场总线接口卡CP5611使工控机与现场总线相连。这样工业PC机与现场总线网段就连接为能完成组态、运行、操作等功能的完整的控制网络系统。为了保证系统的稳定性,系统运用了双机冗余,钭另一台工控机通过同样的现场总线接口卡CP5611与现场总线相连,若其中一台工控机发生故障,另一台可继续运行。
3 井下胶带监控系统的软件结构
软件结构部分包括Windows NT操作系统、下位机编程软件、上位机监控软件。
3.1 下位机编程软件
本系统采用SIMATIC S7-300的配套编程工具STEP7完成硬件组态、参数设置、PLC程序编制、测试、调试和文档处理。通常,用户程序由组织块(OB)、功能块(FB、FC)和数据块(DB)构成。其中,OB是系统操作程序与应用程序在各种条件下的接口界面,用于控制程序的运行。FB、FC是用户子程序。DB是用户定义的用于存储取数据的存取区,本系统中它是上位机监控软件与STEP7程序的数据接口点。在MPI中配置与其相对应的DB块就可实现上位机监控软件FIx与STEP7程序的数据接口。
3.2 上位机监控软件
FIx工控组态软件是由美国Intellution公司开发的基于Windows 9x&NT的大型应用软件,它集控制技术、人机界面技
一种基于FPGA的A超数字式探伤系统的研究_工科论文 第八篇
摘要:简略介绍了超声探伤的基本原理,并在此基础上提出了一种基于FPGA的A型数字式超声系统的构成方式,着重介绍了系统的硬件构成。其中,基于FPGA的数字处理模块从根本上解决了传统A型探伤仪的采样速度低、处理速度慢的问题。
关键词:MCS196kc单片机 无损检测 超声波探伤 FPGA 数字处理 DAC曲线
超声波是一种机械波,机械振动与波动是超声波探伤的物理基础。超声波在媒介中传播,有波的叠加、反射、折射、透射、衍射、散射及吸收衰减等特性,一般遵循几何光学的原则。A超探伤仪采用幅度调制(Amplitude Modulation)显示,在显示屏幕上以横坐代表被测物的深度,纵坐标代表回放脉冲的幅度。
超声波探伤的方法很多,按其原理分类可分为脉冲反射法、穿透法和共振法。本系统采用脉冲反射法。脉冲反射法是一种利用超声波探头发射脉冲到被检测试块内,根据反射波的情况来检测试件缺陷的方法。脉冲反射法又包括缺陷回波法、底波高度法和多次底波法等,这里只介绍缺陷回波法。图1是缺陷回波法示意图。当试件完好时,超声波可顺利传播到达底面,探伤图形中只有表面发射脉冲T及底面回波B两个,如图1(a)所示;若试件中存在缺陷,在探伤图形中,底面回波前有表示缺陷的回波F,如图1(b)所示。
整个系统的硬件原理结构如图2所示,主要包括模拟和数字两部分,以下分别介绍。
1 模拟部分
该系统的模拟部分主要由发射电路、限幅机构、高频放大、带通滤波、检波等几部分组成。
图2 超声检测系统的硬件构成
发射电路主要用来产生高压窄脉冲(400V),以激励超声波探头发射超声波。由于不同探头的谐振频率不同,所以要求脉冲激励的宽度可调。在发射电路的设计中,由FPGA提供给发射电路低压可调脉宽的激励,再由发射电路将其转换为高压的窄脉冲激励,其脉冲宽度可变。
隔幅机构是对某些过大的回波电进行电压幅值的限制,以免电压过大影响后继高频放大器的正常工作,甚至烧毁电路器件。限幅电路的限幅幅值为±3V左右。
高频放大电路用来对回波电进行放大,放大范围可从-10dB到110dB。由于测试对象钢板的厚度不一,故回波的强弱也不定。所以,要把高频放大电路设计成可以动态控制增益值的程控放大电路,可通过MCU来实现。
带通滤波电路对放大过程中引入的噪声进行控制。由于超声探头的发射频率范围较宽(400kHz~10MHz),如果使放大器通带范围固定为400kHz~10MHz,势必影响滤波效果。在本文中,设计了可程控的两组带通滤波电路,其带宽范围分别为400kHz~2.5MHz和2.5MHz~10MHz。
超声波探伤系统回波波形的显示方式通常有两种:射频显示(不检波显示)和视频显示(检波显示),如图3所示。射频显示可以保持波形状态,有助于缺陷性质的识别;而视频显示则有利于峰值采集,以便确定缺陷当量。为了分别满足这两种显示的要求,在设计中加入了检波与非检波的切换电路,电路的切换受MCU控制。
2 数字部分
2.1 微控制单元
该系统的数字部分以微控制单元(MCU)作为整个超声检测系统的控制核心。在此选用了Intel公司的16位单片机MCS196kc,该MCU不但具有16位的数据运算功能,而且提供了强大的控制能力。其实现有的功能主要有:(1)控制显示模块和键盘接口模块,实现人机界面的交互;(2)完成检测结果的存储、打印;(3)提供与微机之间可靠的数据传输;(4)实现对电源模块的管理;(5)调节模拟部分中运放的放大增益倍数。
2.2 基于FPGA的实时数字处理单元
FPGA在整个检测系统中是数字处理的核心部件,借助其用户可编程特性及很高的内部时钟频率,设计了专用于超声检测的数据处理芯片,如图4所示。该芯片主要由以下几个功能模块构成:(1)数据处理所需的参数寄存器堆;(2)窄脉冲发生模块;(3)采样延迟控制模块;(4)数据采集、存储、压缩模块;(5)进波门、DAC缺陷自动判断模块;(6)失波门缺陷自动判断模块。现结合图5简述图4所示的处理过程:MCU以一定的频率不断向FPGA传送方波脉冲,每一个脉冲将触动一次检测过程。脉冲的上升沿使窄脉冲发生电路开始工作,产生窄脉冲激励。激励产生以后,由于超波需要一段延时时间才能经过耦合剂到达探测工件,所以在窄脉冲产生以后,延时电路将起作用,用以控制采样开始的时间。经过(t2-t1)的延时,超声波到达工件表面,采样开始。处理单元首先根据所检测到的钢板厚度选择相应的数据处理模块。如果钢板为溥型板材,数据采集、存储模块将工作;如果钢板为中厚板材,数据采集、压缩、存储模块将运行。采样过程结束后,在(t4-t3)的时间段内,处理单元自动对该次采样中的回波进行缺陷判断。如果发现有缺陷或失波存在,探伤系统会给出,通知MCU,并结束这一次的检测过程,等待下一个由MCU传来的脉冲,从而开始新一轮的检测过程。
3 超声探伤系统的软件
在整个数字式超声探伤系统中,软件的设计占有重要的地位。为此采用了汇编语言和VB高级语言分别对MCU和PC机进行编程。整个软件系统包括工作主界面和参数设置界面。其中,工作界面主要包括:增益/补偿、声程/标度设计抑制/声速、闸门设计DAC曲线拟合、回波波形显示缺陷记录、缺陷回放、缺陷报告打印、与PC机间的数据通讯。参数设置界面主要包括:探头设置、仪器设计、频道设置、设置和时钟校准。
当超声探头的发射频率在10MHz以上时,以现有的采样速率(40MHz)进行采样就很有可能造成回波波峰值的丢失。在现有的设计方案中,制约速度的瓶颈主要集中在将采样得到的回波值转存到外部的RAM中上,受RAM速度制约,整个系统的工作频率难以进一步提高。
colspan="2" align='right' class="Article_tdbgall">嵌入式Linux系统中的GUI系统的研究与移植_工科论文 第九篇
来源:单片机及嵌入式系统应用 作者:航空航天大学 徐广毅 张晓林 崔迎炜 杨欣昕 吴小伟
摘要:针对嵌入式Linux系统中几种常见的GUI(Graphic User Interface)系统,讨论嵌入式GUI实现的底层技术方式;详细Microwindows、MiniGUI、Qt/Embedded等三种GUI的实现特点、体系结构、API接口。结合这三种嵌入式GUI在以Motorola i,Mx1为核心的实际应用系统中移植开发的问题,讨论移植技术与中文化技术。
关键词:嵌入式Linux GUI 应用与移植 中文化
引言
嵌入式GUI为嵌入式系统提供了一种应用于特殊场合的人们交互接口。嵌入式GUI要求简单、直观、可靠、占用资源小且反应快速,以适应系统硬件资源有限的条件。另外,由于嵌入式系统硬件本身的特殊性,嵌入式GUI应具备高度可移植性与可裁减性,以适应不同的硬件条件和使用需求。总体来讲,嵌入式GUI具备以下特点:
体积小;
运行时耗用系统资源小;
上层接口与硬件无关,高度可移植;
高可靠性;
在某些应用场合应具备实时性。
1 基于嵌入式Linux的GUI系统底层实现基础
一个能够移植到多种硬件平台上的嵌入式GUI系统,应用至少抽象出两类设备:基于图形显示设备(如VGA卡)的图形抽象层GAL(Graphic Abstract Layer),基于输入设备(如键盘,触摸层等)的输入抽象层IAL(Input Abstract Layer)。GAL层完成系统对具体的显示硬件设备的操作,极大程度上隐蔽各种不同硬件的技术实现细节,为诮程序开发人员提供统一的图形编程接口。IAL层则需要实现对于各类不同输入设备的控制操作,提供统一的调用接口。GAL层与IAL层的设计概念,可以极大程序地提高嵌入式GUI的可移植性,如图1所示。
目前应用于嵌入式Linux系统中比较成熟,功能也比较强大的GUI系统底层支持库有SVGA lib、LibGGI、xwindow、framebuffer等。
2 三种嵌入式GUI系统的与比较
2.1 Microwindows
Microwindows是一个典型的基于Server/Clinent体系结构的GUI系统,基本分为三层,如图2所示。
最底层是面向图形显示和键盘、鼠标或触摸屏的驱动程序;中间层提供底层硬件的抽象接口,并进行窗口管理;最高层分别提供兼容于x Window和ECMA APIW(Win32子集)的API。其中使用Nano-x接口的API与x接口兼容,但是该接口没有提供窗口管理,如窗口移动和窗口剪切等高级功能,系统中需要首先启动nano-x的Server程序nanoxserver和窗口管理程序nanowm。用户程序连接nano-x的Server获得自身的窗口绘制操作。使用ECMA APIW编写的应用程序无需nanox-server和nanowm,可直接运行。
Microwindows提供了相对完善的图形功能和一些高级的特性,如Alpha混合、三维支持和TrueType字体支持等。该系统为了提高运行速度,也改进了基于Socket套接字的x实现模式,采用了基于消息机制的Server/Client传输机制。Microwindows也有一些通用的窗口控件,但其图形引擎存在许多问题,可以归纳如下:
无任何硬件加速能力;
图形引擎中存在许多低效算法,如在圆弧图函数的逐点判断剪切的问题。
由于该项目缺乏一个强有力的核心代码维护人员,20xx年Microwindows推出版本0.90后,该项目的发展开始陷于停滞状态。
2.2 MiniGUI
MiniGUI是由国内自由软件开发人员设计开发的,目标是为基于Linux的实时嵌入式系统提供一个轻量级的图形用户界面支持系统。MiniGUI的体系架构如图3所示。
MiniGUI分为最底层的GAL层和IAL层,向上为基于标准POSIx接口中pthread库的Mini-thread架构和基于Server/Client的Mini-Lite架构。其中前者受限于thread模式对于整个系统的可靠性影响——进程中某个thread的意外错误可能导致整个进程的崩溃,该架构应用于系统功能较为单一的场合。Mini-Lite应用于多进程的应用场合,采用多进程运行方式设计的Server/Client架构能够较好地解决各个进程之间的窗口管理、Z序剪切等问题。MiniGUI还有一种从Mini-Lite衍生出的standalone运行模式。与Lite架构不同的是,standalone模式一次只能以窗口最大化的方式显示一个窗口。这在显示屏尺寸较小的应用场合具有一定的应用意义。
MiniGUI的GAL层技术SVGA lib、LibGGI、基于framebuffer的native图形引擎以及哑图形引擎等,对于Trolltech公司的QVFB在x Window下也有较好的支持。IAL层则支持Linux标准控制台下的GPM鼠标服务、触摸屏、标准键盘等。
MiniGUI下丰富的控件资源也是MiniGUI的特点之一。当前MiniGUI的最新版本是1.3.3。该版本的控件中已经添加了窗口皮肤、工具条等桌面GUI中的高级控件支持。
2.3 QT/Embedded
Qt/Embedded是著名的Qt库开发商Trolltech公司开发的面向嵌入式系统的Qt版本。因为Qt是KDE等项目使用的GUI支持库,许多基于Qt的x Window程序因此可以非常方便地移植到Qt/Embedded上。Qt/Embedded同样是Server/Client结构。
Qt/Embedded延续了Qt在x上的强大功能,在底层摒弃了x lib,仅采用framebuffer作为底层图形接口。同时,将外部输入设备抽象为keyboard和mouse输入事件,底层接口支持键盘、GPM鼠标、触摸屏以及用户自定义的设备等。
Qt/Embedded类库完全采用C++封装。丰富的控件资源和较好的可移植性是Qt/Embedded最为优秀的一方面。它的类库接口完全兼容于同版本的Qt-x11,使用x下的开发工具可以直接开发基于Qt/Embedded的应用程序QUI界面。
与前两种GUI系统不同的是,Qt/Embedded的底层图形引擎只能采用framebuffer。这就注定了它是针对高端嵌入式图形领域的应用而设计的。由于该库的代码追求面面俱到,以增加它对多种硬件设备的支持,造成了其底层代码比较凌乱,各种补丁较多的问题。Qt/Embedded的结构也过于复杂臃肿,很难进行底层的扩充、定制和移植,尤其是用来实现signal/slot机制的moc文件。
Qt/Embedded当前的最新版本为3.3.2,能够支持Trolltech的手持应用套件Qtopia的Qt/Embedded最高版本为2.3.8。Trolltech公司将于20xx年末推出的Qt/Embedded 3为基础的Qtopia 2应用套件。
3 三种嵌入式GUI的移植与中文化
在进行以上三种嵌入式GUI的研究和移植过程中,硬件平台采用自行设计的以Motorola MC9328 Mx1为核心的开发系统。该系统采用CPU内部LCD控制器和320×240分辨率的16bpp TFT LCD作为显示设备,使用I2C总线扩展出16按键的键盘,同时配置了9位A/D量化精度的电阻触摸屏作为鼠标类输入设备;同时移植了ARM Linux作为操作系统。以下分别讨论这三种嵌入式GUI的底层移植和中文化技术。
移植以上三种嵌入式GUI系统,需要首先实现Linux内核中的framebuffer驱动。对应于开发系统为MC9328中的LCD控制器,该部分驱动程序必须以静态方式编译进内核,在系统启动时由传递进内核的启动参数激活该设备。I2C键盘的驱动程序和触摸屏的驱动程序实现后,作为Linux内核模块在使用时动态加载。
3.1 Microwindows的移植
Microwindows驱动层相应的源码目录为src/drivers/。其中以scr开头的源码是针对显示设备的驱动接口,以mou开头的源码文件为鼠标设备(包括触摸屏)的驱动接口,以kbd开头的源码文件针对键盘设备的驱动接口。移植过程中需要实现自己的设备驱动接口提供给Microwindows使用,就必须按照指定的接口格式编写相应的scr、mou、kbd的底层支持。这种方式实现简单,条理也很清晰。
显示设备驱动接口:Microwindows的图形发生引擎支持framebuffer,修改src/中的config文件指定使用framebuffer作为底层图形支持引擎;但需要注意嵌入式Linux的framebuffer较少支持控制台字符模式,需要修改Microwindows中对framebuffer的操作部分以关闭显示模式的转换。
在应用程序开发移植中需要注意的是:使用ECMAAPIW接口
脑电物理头模型数据采集系统的研究_工科论文 第十篇
摘要:介绍了脑电物理头模型数据采集系统的总体设计方案,主要对实验中所遇到的一些问题进行了系统的和解剖,将实验结果与解析解进行了比较,两者是相符的。
关键词:脑电(EEG) 数据采集 鉴相器 差动放大器
脑电(Electroencephalogram,缩写为EEG)是大脑神经电活动在头皮上产生的电位分布。脑电比心电要弱1000倍左右,约为几十微伏。本文中所模拟的脑电为毫伏级。脑电的研究包括正问题与逆问题两个方面。正问题是指在已知脑内电活动源的情况下去头皮上的电位;逆问题是指用从头皮观测的电位去反演脑内电活动源的信息。因此,脑电电位的采集对研究脑电问题尤为重要。本文以均匀媒质物理头模型(即将头视为一个各向同性且导电均匀的球体)为例介绍EEG电位采集系统,并将电脑活动进行三维成像,用以脑电规律及研究脑内电活动。
1 EEG采集系统的设计方案
图1为EEG电位采集系统的框图。
首先由发生器产生一个频率为1100Hz的正弦交流电流,送到偶极子;然后将自行设计的表面电极——银电极上产生的电位分布(39个电极左右对称均匀分布,其中有一个为参考电极,实际测量用的只有38个电极),通过排线送至模拟开关,各通道的选择由计算机控制PCI采集卡来实现;接着将脑电放大到伏特级;最后将其转换成有效值送到PCI数据采集卡。值得注意的是,38个电极产生的电位在对称电极上互为反相。为使计算机识别该,加了一个鉴相器。下面对各个部分进行介绍。
2 偶极子电流源的隔离与抗干扰
由于被测十分微弱,所以很容易受到来自各方面的干扰,从而被淹没在干扰和噪声中。实际测试也显示出,必须有效地进行隔离、去除干扰,否则将无法测量出需要的。在系统中,由于把所有的仪器外壳都完全接地,所以必须在交流源及氯化钠溶液中的偶极子模型之间进行隔离,否则将出现一些不期望的短路电流。鉴于使用的电源是交流电源,所以首先想到到的是使用变压器进行隔离。考虑到初级和次级耦合电容的影响,专门设计和制作了带有中心屏蔽层的变压器,并把中心屏蔽层线圈很好地接地,这样由耦合电容引起的电流大部分都通过中心屏蔽层直接入地。经带有中心屏蔽层的变压器耦合的偶极子电流源电路如图2(a)所示。这样的变压器用了两级。
图2 偶极子电流源电路
在图2(a)中C为变压器初级和次级产生的耦合电容,A、B为左右对称(电位大小相等,相位互差180度)分布的一对电极电位测量点,O点接地作为参考点,理论上该点的入地电流为零。由于变压器副边的分布电容不一定对称,使得在O点的入地电流不为零(入地电流分量如图2(a)中箭头所示),也就使得Uao、Ubo两端电位不对称。解决这个问题的方案有两个:一是在变压器输出端中电位较高侧并联一个可调电容Cr(如图2(a)所示)。这个方案的缺点是:当环境发生变化时,分布电容有可能发生变化时,使Uao、Ubo将会出现一定的相位差(不为180度)。二是在变压器输出端并联两个阻值相等的电阻R,中点接地;另外需把G点与地断开(如图2(b)所示),分别测量Uao、Ubo。这种方案绝对保证了无入地电流,在对称电上所测量的相位差为180度,图2(a)为最终电路。所有的测量电极最后都送到模拟开关进行选通。然后采用差动放大器放大UAG与UOG之差,即Uao=UAG-UOG。
3 三运放差动放大电路的应用
集成运放具有放大差模、抑制共模干扰和零点漂移的功能。这里采用了三运放差动放大电路,选将两个同相运放电路并联后,与一个基本差动放大电路串联。电路的结构与原理见参考文献[1]、[3]。这里仅介绍在使用中应注意的几个问题:(1)为了得到较强的共模抑制能力,在选用运放时,应尽可能使两个同相的运放特性一致,可选用OP37、LM324等;(2)运放的闭环增益越低,对电阻匹配的精度要求愈高;(3)应尽可能抑制输入端的共模。因为当共模抑制比不够大时,经放大后,通过空间电容,很容易产生高频振荡。这个电路具有输入阻抗高、共模抑制比高、增益调节方便等优点。
图3 鉴相器电路原理图
4 鉴相器
鉴相器是要精确测量出两相物理量的相位差的电路[2],而这是只需要判断出这两相量是同相还是反相即可。其原理是:相位的比较必须要输入两路,一路是经模拟开关选通、放大后的;另一路为偶极子电流源的电阻R(如图2(b)所示)上的电位,这样必定有19个表面电极的电位与该电位同相,与另外19个表面电极反相。两路经放大、限幅后,送到“异或门”进行逻辑异或运算。异或的工作原理是:当输入为同相时,输出为低电平;为反相时,输出为高电平。电路原理图如图3所示。在图3中,从Input1、Input2输入到异或门,其中Input2的放大电路与Input1相同,所以在此省略。经异或门逻辑运算后,有毛刺产生,所以在其后加了一级II型滤波电路,有效地去除了毛刺,保证了的准确性。RMS有效值转换采用美国模拟器件公司生产的单片真有效值/直流转换器AD637,它可输出交流的真有效值、平均值、绝对值、dB等。输出的结果连接到PCI数据采集卡上,由计算机进行数据处理,同时计算机还对模拟开关进行通道控制。
5 结果
将脑电电位的测量结果与解析解进行比较,如图4所示。其中(a)图为解析解的曲线;(b)图为实际测量结果的曲线。从图中可以看出,解析解和测量结果的变化趋势基本上一致。
图4 脑电电位分布的比较
从图4(b)中可以看出,左右电极(以0为参考点)电位大小不相等,并且有单独的几个电极的电位偏离了正常的变化趋势。经过得知,由于每个测量电极被氯化钠溶液(即模拟脑脊液)所腐蚀的程度不一样,所以每个表面电极对外所呈现的阻抗特性也就不一样。若输出阻抗较低的电极的电位,输出至模拟开关时,后续电路取的电流就较小,电压降低得就小;反之,电压降低得就多。
为了提高系统的抗干扰能力,增加系统的稳定性,文中对偶极子电流源采用双极屏蔽隔离变压器;在变压器输出端并联电阻使得物理头模型电位参考点入地电流为零;运用三运放差动放大器抑制共模干扰;鉴相器设计得便于计算机进行数据处理。该设计方案目前已实验成功,具有一定准确性、实用性。
colspan="2" align='right' class="Article_tdbgall"> 文章地址:www.hzydhh.cn/html/275918.html