网络化仪器仪表协议客户端设计与实现.docxVIP

网络化仪器仪表协议客户端设计与实现.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络化仪器仪表协议客户端设计与实现 随着网络技术的广泛应用,仪器仪表已开始向计算机化、网络化、智能化方向发展,仪器网络化的发展趋势,使得其已经不再是孤立的、单独的设备,而是将测试技术、互联网技术、计算机技术结合在一起的网络仪器系统。但网络化仪器间难以进行协同工作,进而限制测量系统测量效率。为了实现网络化仪器间的通信,本文将HiSLIP协议、虚拟仪器设计技术与网络化测控系统相结合,利用HiSLIP协议的可靠连接以及高效数据传输特点,设计网络化仪器间的通信原理,并给出了协议客户端设计与实现。 仪器代理作为网络管理结构中的核心实体,存在于被管理的网络设备中,用来访问设备的运行状态,对设备参数进行配置,是被管设备与管理中心交互的中间接口。 HiSLIP协议客户端的功能主要划分为4部分:协议启动和前期准备;与服务器端建立连接;与服务器端的数据交互;容错处理.。客户端与服务器端的交互种类分为14类,通过这14类交互,完整实现协议所需要的功能,在进行交互说明时以“消息类型 控制码/控制码 /消息类型 消息参数 数据长度 数据 ”的格式来表示消息。 /数据 /数据长度 /消息参数 1 协议启动 在控制端应用程序启动时,协议的客户端即开始启动,在启动过程中,向操作系统申请Socket套接字资源[1?2]。并进行端口绑定,协议规范中建议使用4880端口。对4880端口绑定完成后,即可向由VISA提供的仪器端的网络代理IP地址发起连接。 2 建立连接 HiSLIP协议连接的建立使用的是TCP机制,由客户端向服务器端发起2次TCP连接,分别是该协议的同步通道连接和异步通道连接。在建立好2个TCP连接之后,还需要检查服务器端仪器上加锁的情况,相互协商交互信息时的消息尺寸。为后续的数据和控制信息的交互提供服务。 2.1 建立连接使用到的消息类型序列 (1) 由客户端发起第1个TCP连接; (2) 使用消息类型Initialize 进行同步通道连接初始化;在该消息中包含的数据有客户端协议版本;客户端厂商ID;子地址。消息格式为:initialize 0 sub?address ; /sub?address /upper:client?protocol?version: /initialize (3) 发起第2个TCP连接; (4) 使用消息类型AsyncInitialize 进行异步通道连接初始化,在该消息中包含由应用软件推送的SessionID(会话号)。格式为:asyncinitialize 0 sessionid 0。 /sessionid /asyncinitialize 2.2 对远端仪器进行锁操作的消息类型序列 (1) 首先通过AsyncLockInfo消息类型,来向远端服务器请求当前仪器资源上锁的情况,有服务器返回是否已经加锁、锁的类型以及锁的数目等消息。格式为: asynclockinfo 0 0 0。 /asynclockinfo (2) 在查询后确认可以对远端仪器加锁时,使用消息类型AsyncLock来实现对远端仪器资源加锁和释放锁。在该消息中包含的数据有,请求加锁标志位和请求释放锁标志,等待加锁超时时间,锁信息描述等。加锁消息的格式为:asynclock 1=request timeout/timeout /asynclock lockstring length lockstring ;释放锁的消息格式为: asynclock 0 =release messageid 0。 /messageid /asynclock /lockstring /lockstring 2.3 客户端和服务器协商发送消息的尺寸使用的消息序列 客户端通过AsyncMaximumMessageSize消息类型来告知服务器自己的能够接收的消息尺寸,该消息中包含由8 B无符号整形数据表示的消息尺寸信息。消息格式为:asyncmaximummessagesize 0 0 8 8?byte size。 /asyncmaximummessagesize 3 数据交互 数据交互是这个协议的核心部分,客户端在与服务器端建立连接后,使用Data和DataEND两种消息类型的消息发送数据。如果应用软件推送给客户端的数据,可以满足不超过最大消息长度的情况下,使用DataEND消息类型进行发送,如果超过了最大消息长度,则先使用Data消

文档评论(0)

s64851 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6120215050000015

1亿VIP精品文档

相关文档