- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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消
1亿VIP精品文档
相关文档
最近下载
- 智能消防应急照明和疏散指示系统设计手册2017-9-30.pdf
- GB50203-砌体结构工程施工质量验收规范.pdf
- 一种高性能高稳定性纳米晶软磁材料的制备方法.pdf VIP
- 2024年退役军人事务员职业技能理论考试复习题库资料(精练300题).pdf
- 湖北省机关事业单位工人等级考试试题-高级工.docx VIP
- 2023年湖南省普通高中学业水平考试地理试题含答案 .pdf
- 2024全国“红旗杯”班组长大赛选拔考试题库500题(含答案).docx
- 2021年房间隔缺损合并心房颤动的处理策略(全文).pdf
- 育才小学国旗下的讲话-爱护眼睛,从点滴做起.doc
- 国开《特殊教育概论》期末大作业简答题(含解答).docx
文档评论(0)