SECS ii的报文内容的格式就是sml格式
不讨论SECS i 和HSMS的格式,我们只讨论SECSii的协议,因为SECS ii的报文内容的格式就是sml格式。
secs ii协议的消息报文分为两部分:消息命令字 + 消息体。其中消息体采用的是SML格式,本文对SML格式进行简单讲解,帮助大家了解SML的格式,方便理解和后续的开发。
sml格式有些像xml,都是属于纯文本格式,但与xml又不同,他定义了它自身的语法。例如下面一段报文:
// 命令字
S1F14:
// 消息体 sml 格式
<L[2]
<B[1] 0x00>
<L[0]>
>
.
SML以 <> 作为开始和结束。有自定义类型和元素个数。类型后面跟[],中括号里表示的元素的个数。多个的情况下,是空格间隔即可。字符类型A 的元素需要使用双引号引起来。
元素类型:
L:List 这个可以组织不同类型的元素在一起。可以嵌套List。
例:<L[3] //表示3个元素,
<B[0] 0x00>
<U1[0]>
<L[2]>
<U4[0]>
<A[2] "ok">
>
B:binary 例:<B[2] 0x00 0x01>
U1: 1个字节的整形 例:<U1[2] 20 10>
U2:2个字节的整形 例 :<U2[2] 20 10>
U4:4个字节的整形例 例:<U4[2] 20 10>
A: ASCII码字符 例: <A[5] "hello">
Boolean:布尔类型 例:<Boolean[1] 0>
欢迎讨论,相互学习。
cdtxw@foxmail.com
分类:
SecsGem
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2019-06-30 西门子S7-300 PLC视频教程(百度网盘)收集于网络-供参考学习