【SECS】初识SECS协议

news2025/4/13 8:12:13

【SECS】初识SECS协议

  • 基本知识
    • 流和功能函数数量
    • 官方文件中缩写标注
    • 正常是不是都是主机向设备端?
    • 对数据信息中第1字节第1-2位官网介绍
  • S1F1双向指令说明测试
    • H发起端
    • E发起端
  • 参考资料

基本知识

SECS(SEMI Equipment Communications Standard)即半导体设备通信标准,是SEMI(Semiconductor Equipment and Materials International,国际半导体产业协会)为了方便工厂系统与设备沟通而建立的一种通信标准。它一共可以划分为4类:

  • E4(SECS - I):传输协议标准,使用RS-232C通信;
  • E37(HSMS) :传输协议标准,高速消息服务,基于TCP/IP传输SECS-II消息;
  • E5(SECS - II):消息格式标准,定义了设备与主机之间进行双向会话时使用的消息格式;
  • E30(GEM):设备功能标准,定义了设备接口和设备行为。着重规定了设备如何利用 SECS - II 消息来实现特定的行为和功能。

基本的使用可以查看官方文档,这里着重对发送指令页进行记录,以下图片主要来自于b站大佬的ppt整理。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
通过这些图片,基本可以很清楚了了解SECS的发送报文,接下来主要对官方文档进行剖析,对当前遇到的几个重点进行记录。

流和功能函数数量

在这里插入图片描述

官方文件中缩写标注

在这里插入图片描述
其中,H<>E是涵盖了主机和设备之间双向的通信情况,包括请求、响应、状态报告等各种类型的消息交互,如S1F1,后面对其进行测试说明。

正常是不是都是主机向设备端?

在这里插入图片描述

对数据信息中第1字节第1-2位官网介绍

在这里插入图片描述
这里要注意,里面关于这个2位的说明很明确:项目标题的第一位和第二位告诉下面有多少字节表示项目的长度。而项目的长度是指项目标题后面的字节数,这里第一个字节就是项目标题。1个字节可以表示的最大长度是0-255,所以只要项目标题后面的字节数小于等于254,都是0x01。

S1F1双向指令说明测试

首先需要准备一个网络调试助手,协议类型设置为TCP Server,作为设备端;一个SEComSimulator,用于模拟支持SECS的系统,作为主机。为了方便测试,在SEComSimulator配置中,将T6时间放大成500s,即控制指令响应时间延长,方便在网络调试助手中输入指令的方便。里面T5表示2次连接的间隔,在测试时候也可以很明显的看出。
在这里插入图片描述
然后进行连接,H发来00 00 00 0A FF FF 00 00 00 01 7F 00 00 00 ,E根据协议对应回复就行,进行连接建立。
在这里插入图片描述
建立成功后,因为要模拟S1F1,而它是一个双向的指令,先熟悉它的指令,里面的MDLN表示设备型号,SOFTREV表示修订代码,L,2表示2个分支List。在模拟时候,MDLN和SOFTREV我们主要采用ASCII格式进行SEComSimulator的设置,里面设备型号设置FLS,修订代码设置1.0,具体可以进行自定义。
在这里插入图片描述
在这里插入图片描述

H发起端

点击SEComSimulator进行指令发送,能够看到E端收到指令00 00 00 0A 00 01 81 01 00 00 00 00 00 01 ,这里要注意,S1F1虽然正常应该是0x01 0x01,但这里实际发的是0x81 0x01。然后根据指令格式,我们进行回复00 00 00 16 00 01 01 02 00 00 00 00 00 01 01 02 41 03 46 4C 53 41 03 31 2E 30。
在这里插入图片描述
回复的指令,00 00 00 16是数据长度,00 01 01 02 00 00 00 00 00 01是报文头信息,01 02 41 03 46 4C 53 41 03 31 2E 30是数据信息。对数据信息进行解析,
因为是LIST格式,所以第一个字节第2-7位是000000,那么第一个字节是01;
2个元素,所以02;
列表第一个元素是FLS,ASCII代码是010000,所以是41;
字节长度3,所以03;
FLS用ASCII文本到十六进制转换器换算后是46 4C 53。
最后可以在SEComSimulator接收窗口看到接收信息,里面用的显示方式是SML语言
在这里插入图片描述

E发起端

网络调试助手上发送指令00 00 00 0A 00 01 81 01 00 00 00 00 00 01 ,这里要注意S1F1的8101,试了一下发0101,不会有回复的。然后SEComSimulator会自动回复我们编辑的信息,因为是双向指令,所以在SEComSimulator上要注意第二个才是这边H端表示的接收端。
在这里插入图片描述
显示信息也会在窗口中进行显示,很形象。
在这里插入图片描述
注意,这里H发回E有数据只为尝试模拟器使用,实际SECS协议,S1F2指令有一个额外,H发回E的列表为空

参考资料

很推荐b站大佬的Secs/gem hsms协议解析,架构搭建得是真的很nice,很值得学习思想,附上视频里面的数据集合分类。CSDN博文推荐基于SECS协议开发的简明教程、C#_半导体行业-SECS/GEM协议、SECS协议学习,当然主要还是官方文档,配合SEComSimulator正在逐步研究中,很开心的学习过程!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2325813.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++项目】从零实现RPC框架「三」:项⽬抽象层实现

🌈 个人主页:Zfox_ 🔥 系列专栏:C++从入门到精通 目录 一:🔥 常⽤的零碎功能接⼝类实现🦋 简单⽇志宏实现🦋 Json 序列化/反序列化🦋 UUID ⽣成二:🔥 项⽬消息类型字段信息定义 🦋 请求字段宏定义🦋 消息类型定义🦋 响应码类型定义🦋 RPC 请求类型定…

相机镜头景深

文章目录 定义影响因素实际应用特殊情况 参考&#xff1a;B站优致谱视觉 定义 景深是指在摄影机镜头或其他成像器前沿着能够取得清晰图像的成像器轴线所测定的物体距离范围。简单来说&#xff0c;就是在一张照片中&#xff0c;从前景到背景&#xff0c;能够保持清晰锐利的区域…

Linux基础入门:从零开始掌握Linux命令行操作

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 &#x1f388;有没有觉得电影里的黑客&#x1f412;酷毙了&#xff1f;他们只用键盘⌨就能搞定一切。今天&#xff0c;毛毛张要带你们体验这种快感&#x1f600;&…

C++第13届蓝桥杯省b组习题笔记

1.九进制转十进制 九进制正整数 (2022)9转换成十进制等于多少&#xff1f; 第一位乘9的0次方&#xff0c;第二位乘9的1次方&#xff0c;第三位乘9的二次方以此类推 #include <iostream> using namespace std;int main() {// 请在此输入您的代码int t2022;int res0;int c…

python-leetcode 61.N皇后

题目&#xff1a; 按照国际象棋的规则&#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上&#xff0c;并且使皇后彼此之间不能相互攻击 给你一个整数 n &#xff0c;返回所有不同的 n 皇后问题 的解…

产教融合|暴雨技术专家执裁江苏省职业院校技能大赛

3月28-30日&#xff0c;由江苏省教育厅、省发改委、省工信厅等15家单位主办的2025年江苏省职业院校技能大赛网络系统管理赛项如期举办。此次赛事吸引了全省52支参赛队伍、156名选手踊跃参与&#xff0c;参赛人数再创新高。 暴雨信息技术专家李明宇作为此赛项的往届省赛冠军&am…

BUUCTF-web刷题篇(6)

15.PHP 知识点&#xff1a; ①__wakeup()//将在反序列化之后立即调用&#xff08;当反序列化时变量个数与实际不符是会绕过&#xff09;我们可以通过一个cve来绕过:CVE-2016-7124。将Object中表示数量的字段改成比实际字段大的值即可绕过wakeup函数。条件&#xff1a;PHP5<…

周总结aa

上周学习了Java中有关字符串的内容&#xff0c;与其有关的类和方法 学习了static表示静态的相关方法和类的使用。 学习了继承(extends) 多态&#xff08;有继承关系&#xff0c;有父类引用指向子类对象&#xff09; 有关包的知识&#xff0c;final关键字的使用&#xff0c;及有…

31天Python入门——第17天:初识面向对象

你好&#xff0c;我是安然无虞。 文章目录 面向对象编程1. 什么是面向对象2. 类(class)3. 类的实例关于self 4. 对象的初始化5. __str__6. 类之间的关系继承关系组合关系 7. 补充练习 面向对象编程 1. 什么是面向对象 面向对象编程是一种编程思想,它将现实世界的概念和关系映…

计算机视觉准备八股中

一边记录一边看&#xff0c;这段实习跑路之前运行完3DGAN&#xff0c;弄完润了&#xff0c;现在开始记忆八股 1.CLIP模型的主要创新点&#xff1a; 图像和文本两种不同模态数据之间的深度融合、对比学习、自监督学习 2.等效步长是每一步操作步长的乘积 3.卷积层计算输入输出…

【C语言】文件操作(2)

一、文件的随机读写 在前面我们学习了文件的顺序读写的函数&#xff0c;那么当我们要读取某个指定位置的内容的时候&#xff0c;是否只能顺序的读取到这个内容&#xff1f;还有在对文件进行输入的时候&#xff0c;需要对指定的位置进行写入&#xff0c;那么此时应该怎么办呢&a…

CCCC天梯赛L1-094 剪切粘贴

题目链接&#xff1a; 字符串函数&#xff1a; 1、截取字符串&#xff1a; //起始位置为3,结束位置为5string s "aabcdefg";//下标从0开始 [从开始位置,结束位置]string sub s.substr(3,3);//输出cde, 有返回值string//并且原字符串不改变&#xff0c; s"aab…

某地81栋危房自动化监测试点项目

1. 项目简介 房屋进入老龄化阶段后&#xff0c;结构安全风险越来越大。近10年来&#xff0c;每年都会产生房屋倒塌人员伤亡的重大安全事故。调研分析显示&#xff0c;老旧房屋结构安全风险管理的有效路径为&#xff0c;通过“人防技防”的组合模式&#xff0c;对房屋安全风险进…

远程装个Jupyter-AI协作笔记本,Jupyter容器镜像版本怎么选?安装部署教程

通过Docker下载Jupyter镜像部署&#xff0c;输入jupyter会发现 有几个版本&#xff0c;不知道怎么选&#xff1f;这几个版本有什么差别&#xff1f; 常见版本有&#xff1a; jupyter/base-notebookjupyter/minimal-notebookjupyter/scipy-notebookjupyter/datascience-notebo…

山东大学软件学院项目创新实训开发日志(4)之中医知识问答数据存储、功能结构、用户界面初步设计

目录 数据库设计&#xff1a; 功能设计&#xff1a; 用户界面: 数据库设计&#xff1a; --对话表 (1个对话包含多条消息) CREATE TABLE conversations ( conv_id VARCHAR(36) PRIMARY KEY, -- 对话ID user_id VARCHAR(36) NOT NULL, -- 所属用户 title VARCHAR(100), -- 对话…

20.思科交换机二层链路聚合的详细配置命令解析

思科交换机二层链路聚合的详细配置命令解析 一、PAgP协议的配置SW1的配置SW2的配置二、LACP标准协议三、配置聚合组的带宽和速率四、确保所有接口的双工模式和速率一致五、故障排除和监控在Cisco设备上配置链路聚合(也称为端口通道或EtherChannel)可以增强网络连接的带宽和可…

【多线程】单例模式和阻塞队列

目录 一.单例模式 1. 饿汉模式 2. 懒汉模式 二.阻塞队列 1. 阻塞队列的概念 2. BlockingQueue接口 3.生产者-消费者模型 4.模拟生产者-消费者模型 一.单例模式 单例模式&#xff08;Singleton Pattern&#xff09;是一种常用的软件设计模式&#xff0c;其核心思想是确保…

Qt5.14.2+Cmake使用mingw64位编译opencv4.5成功图文教程

​ 一、下载安装相关编译环境软件 1.1 Python3.8&#xff1a;安装路径:C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32 安装包&#xff1a;python3.8.exe 1.2 QT5.14.2&#xff1a;安装路径:C:\Qt\Qt5.14.2 1.3 opencv4.5&#xff1a;解压路径D:\o…

Mamba4D阅读

CVPR 2025 创新 基于transformer的4D主干由于其二次复杂度而通常存在较大的计算成本&#xff0c;特别是对于长视频序列。 开发了帧内空间Mamba模块&#xff0c;建立时空相关性。 GPU占用和速度很有优势。 代码还没发。 Pipeline 输入点云序列&#xff0c;根据超参数构建点管…

手工排查后门木马的常用姿势

声明&#xff01;本文章所有的工具分享仅仅只是供大家学习交流为主&#xff0c;切勿用于非法用途&#xff0c;如有任何触犯法律的行为&#xff0c;均与本人及团队无关&#xff01;&#xff01;&#xff01; 1. 检查异常文件 &#xff08;1&#xff09;查找最近修改的文件 # 查…