secs协议的连接,我们还是要先看协议栈,如下图所示:
从协议栈,我可以看到,连接方式有两种:
1,串口连接,对应的是secs i 协议。串口参数,串口号,波特率,数据位,停止位,校验位。
2,网口连接,对应的是HSMS协议。对应的参数是Host IP 和Port。
由于串口连接的方式现在已经很少用了,本文重点讲解网口连接方式,即HSMS连接。
一、准备工作
1,准备好secs协议模拟器(ITRI CIM Emulator)。
资源路径:ITRICIMEmulator模拟器.rar_-制造文档类资源-CSDN下载
2,准备好协议文档。
资源路径:Secs-II-E5-协议原文.zip_-互联网文档类资源-CSDN下载
二、基本概念扫盲
1,连接方式
主动连接:这个是设备软件在启动后,会主动与Host服务端进行连接。
此时配置
remote IP / port :Host IP/Port
local IP / port :Equitment IP/Port
被动连接:设备不主动与Host连接,而是等待Host发起连接。
此时只需要配置
remote IP / port :Equitment IP/Port
local IP / port :Equitment IP/Port
2,超时时间设置
T3 回复超时
指发送指令到接收到回复指令的最大时间
T5 连接间隔、
指断开连接和重新连接的最小时间
T6 控制指令超时时间
主要指连接选择,取消选择,连接检测等控制指令的回复最大时间
T7 连接超时
指TCP/IP连接成功后到连接选择之间的最大时间,也就是发送stype=1 到收到stype=2 回复的这段时间
T8 接收超时
指接收到的两个字符之间的最大时间
3,在线,离线,连接,未连接
在线:设备与Host主机已对接成功,且设备在host的服务端状态为在线,可以接收Host命令。
离线:设备在host服务端设置的状态是离线,但连接是正常的。设备处于离线状态只响应S1F17和S1F13指令 其他指令都会返回设备离线响应
连接:设备与Host主机已对接成功。
未连接:设备与Host主机还未连接。
4,基本概念
DeviceID:用于Host识别的设备号。
CEID:event ID 即事件ID
SVID:设备状态变量ID
ECID:设备常量ID
VID :变量ID
RPTID:report ID 即上报ID
PPID:recipe ID 即配方ID(工艺ID)
CHIPID:芯片ID
5,命令字
secs的核心设计就是命令交互。secs对命令字的功能都有详细的定义。
命令字由S和F组成,S-Stream F-Function 简单理解,S是一级目录,F是二级目录。
例如:S1F5 命令字向请求设备状态。H->E
S1F6命令字响应S1F5,上报设备状态。E->H
三、连接交互
1,通信确认存在
REQUEST: S1F1 are you there request
RESPONSE: S1F2 online data
2,确认状态
REQUEST:S1F3
RESPONSE:S1F4
3,建立连接
REQUEST:S1F13
RESPONSE:S1F14
4,离线通知
REQUEST:S1F15
RESPONSE:S1F16
5,上线通知
REQUEST:S1F17
RESPONSE:S1F18
点赞是美德,关注是缘分,打赏您随意,你的鼓励是我世界善的一部分!
版权声明:本文为CSDN博主「大余里」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yjj350418592/article/details/119882722
暂无评论