解密工业控制柜:认识关键硬件(PLC)
前言
作为一名视觉开发工程师,我们不仅要做到做好自己的工作,我们更需要在工业现场学习更多知识,最近网上流传很多,“教会徒弟,饿死师傅”;在自动化行业中,在项目下来很忙的时候,我们都会烦躁,反而在你烦躁的时候,有些人问你有些问题,在你眼里你觉得很简单,但是对于一个初学者,他是第一次接触,很难上手,从而导致了很少人去教你。
我第一次接触视觉的时候,我是什么也不会,我记得当时for循环学了整整两个月才学会,我基本在学习c语言的时候是非常吃力的,每天9点一直学到晚上12点,甚至到一点,经过半年的努力,我基本熟悉c#语言了,由刚开始啥也不会到后来,开始自己慢慢的学习SQLserver,我还仍记得,过年时候太无聊了,就想着学习,天天去网吧学习,由于当时网费太贵了,我就开始晚上9点去网吧,学习到深夜5点左右才回去,因为网吧·到晚上12之后全程免费,我是比较稳步,在我眼里我觉得真正熟悉C#,不是去CV,而是直接会根据思路盲敲出来,如今当了职场,拿了一个不错的薪资,我感觉找到一个好的工作,而并不是去摆烂,而是更应该更加努力,我感觉学习并不能给你带来多大收货,但是你不学永远没有进步的可能,我刚开始问我家电控,他们也是在忙没时间去教,所以大多是还是需要去自学,去靠AI,而不是别人不教,你就不学了,这态度就不对了。
下面我给大家介绍下,硬件,我搜资料一下午,熟悉了这些硬件。
硬件认识

PLC(欧姆龙)
这是可编辑逻辑控制器(PLC)。我们仔细看它那两个白线接口带有:"EtherNet/IP" 和 "EtherCAT" 标识的接口,用于通信。
- EtherNet/IP:是一种工业以太网通信协议,可实现设备间数据交换和互操作
- EtherCAT:是高性能的实时工业以太网通信协议,能满足高速、高精度控制需求
通过这些通信接口,可与其他设备组网通信,实现自动化系统的数据交互与协同控制

PLC模块(信号)
一个工业自动化控制系统中PLC(可编程逻辑控制器)模块
具体来说就是一套模块化的PLC系统,通常用于控制和监控工业设备
-
WELLAUTO:这是PLC的品牌标识
-
IOM ECT :这是PLC的中央处理单元(CPU模块),负责运行控制逻辑
-
指示灯:
- PWR:电源指示灯,亮表示模块通电
- SF: 系统故障指示灯,亮表示系统可能存在错误
- BF: 总线故障指示灯,亮表示通信总线可能有问题
- NET:网络通信指示灯,亮表示模块正在与网络通信
-
输入/输出模块
- 16DI-N:这是数字输入模块,用于接收外部设备信号(如传感器、按钮等)
- 16DO-N: 这是数字输出模块,用于控制外部设备(如继电器、指示灯等)
- 每个模块上有多个端子(编号1-16),用于连接外部设备
-
通信模块
- EtherCAT Adapter: 这是一个通信模块,用于通过EtherCAT协议与其他设备通信。EtherCAT是一种高速工业以太网协议,常用于实时控制
-
接线
-
图片中可以看到多根彩色电线连接到模块的端子上,这些电线用于传输信号或电源。
-
端子上的标签(如“Q01”、“Q02”)通常用于标识连接的设备或信号。
-
-
功能
-
PLC系统通过输入模块接收信号,通过CPU模块运行控制逻辑,在通过输出模块控制外部设备
-
模块化设计使系统可以根据需求灵活扩展
-
工业以太网交换器(ISI)
在工业自动化网络中,以太网交换机用于连接多个设备,例如:PLC、传感器、伺服驱动器等,实现设备间的数据交换与通信,保障自动化系统稳定运行。
电源指示灯(PWR)
常亮表示交换机已连接通电源且供电正常。若不亮,需检查电源连接、电源模块是否故障。
端口指示灯
- 亮:对应端口有设备连接且链路正常通信。亮起的端口所连设备(如PLC、传感器等)与交换机之间物理链接正常,数据收发正常。
- 不亮:
- 无设备连接:该端口未连接设备,或链接设备未上电、处于关机状态
- 连接故障: 网线损坏、水晶头接触不良、端口物理损坏,导致链路无法正常建立
- 设备故障: 链接设备网络接口故障,无法与交换机正常通信

开关电源
这是台湾明纬(MEAN WELL)品牌的NDR-240-24导轨式开关电源 。
输入电压为100 - 240VAC,频率50/60Hz ,电流2.8A ;输出为24VDC,10A ,最大功率240W 。
适用于工业自动化等领域,为设备提供稳定直流电源 。
面板上“DC OK”指示灯亮起时,表示直流输出正常 。
电阻
在电气传统系统(如变频器驱动电机系统)中,电机处于制动状态时会产生电能,制动电阻用于消耗这部分电能,避免直流母线电压过高,保护变频器等设备,确保稳定运行。

伺服驱动器
下图是 苏州汇川技术有限公司生产的 SV635NS2R81 型号伺服驱动器。
输入为单相交流 200-240V、4.0A、50/60HZ
输出为三相交流 0-240V、2.8A、0-500HZ,功率400W
标签 CE、UL 认证标志
信号处理与转换
接收上位机(如PLC、工控机)发出的控制辛哈,经解码、滤波、采样等处理后,转换为适合伺服电机进行的驱动信号

漏电保护断路器(空气开关)
图中 “QFI” 标识的设备是漏电保护断路器。
它集成了断路器和漏电保护器功能,可在电路发生过载、短路时自动切断电路,还能在检测到漏电(如人体触电、线路绝缘破损漏电)时迅速跳闸,保护人员安全和电气设备,常用于工业和家庭配电系统。

变压器
LB1:是变压器,控制变压器。
作用: 将输入的电压转换为合适的输出电压,为控制系统中的其他设备提供所需的电源电压

熔断器
FU1、FU2:是正泰品牌的熔断器,通过自身熔断来切断电路,防止因电路短路或过载引发的设备损坏及安全事故

端子排
- XT1 - 220V、XT2 - 220、XT4 - 24V :是接线端子排 ,用于方便导线连接 ,不同标识表示对应不同电压等级的电路连接
- XT3 - GND :接地专用接线端子排 ,用于保障电气设备和人员安全,将设备接地。

继电器
在电路中,继电器是一种电控制器件,能通过小电流、低电压信号来控制大电流、高电压电路的通断。
继电器上的指示灯亮起,表明处于工作状态,他们常用于自动控制电路、信号转换等场景,可实现电路的逻辑控制、隔离保护等功能。

相关文章:
解密工业控制柜:认识关键硬件(PLC)
前言 作为一名视觉开发工程师,我们不仅要做到做好自己的工作,我们更需要在工业现场学习更多知识,最近网上流传很多,“教会徒弟,饿死师傅”;在自动化行业中,在项目下来很忙的时候,我们…...
【嵌入式系统设计师】知识点:第11 章 嵌入式系统设计案例分析
提示:“软考通关秘籍” 专栏围绕软考展开,全面涵盖了如嵌入式系统设计师、数据库系统工程师、信息系统管理工程师等多个软考方向的知识点。从计算机体系结构、存储系统等基础知识,到程序语言概述、算法、数据库技术(包括关系数据库、非关系型数据库、SQL 语言、数据仓库等)…...
记录一次SSH和SFTP服务分离后文件上传权限问题
开门见山 因服务器安全需求,需要将ssh和sftp服务分离,并创建一个用户组sftpuser::sftp,根目录权限均正常。用户sftpuser仅能通过sftp访问服务器,不能通过ssh访问服务器。但是,ssh应用用户appuser::sftp通过sftp建立链…...
【深度解析】SkyWalking 10.2.0版本安全优化与性能提升实战指南
前言 Apache SkyWalking 作为云原生可观测性领域的佼佼者,在微服务架构监控中扮演着至关重要的角色。然而,官方版本在安全性、镜像体积和功能扩展方面仍有优化空间。本文将分享一套完整的 SkyWalking 10.2.0 版本优化方案,从安全漏洞修复到镜…...
面向大模型的开发框架LangChain
这篇文章会带给你 如何使用 LangChain:一套在大模型能力上封装的工具框架如何用几行代码实现一个复杂的 AI 应用面向大模型的流程开发的过程抽象 文章目录 这篇文章会带给你写在前面LangChain 的核心组件文档(以 Python 版为例)模型 I/O 封装…...
pip install pytrec_eval失败的解决方案
1、问题描述 在使用华为云 notebook 的时候,想要: !pip install transformer结果失败,阅读报错后,疑似是 pytrec_eval 库的下载问题。 于是,单独尝试: !pip install pytrec_eval发现确实是这个库安装失…...
Easysearch VS Opensearch 数据写入与存储性能对比
本文记录 Easysearch 和 Opensearch 数据写入和数据存储方面的性能对比。 准备 压测工具:INFINI Loadgen 对比版本: Easysearch 1.11.1(lucene 8.11.4)Opensearch 2.19.1(lucene 9.12.1) 节点 JVM 配置…...
【Proteus仿真】【32单片机-A009】矩阵按键系统设计
目录 一、主要功能 二、使用步骤 三、硬件资源 四、软件设计 五、实验现象 联系作者 一、主要功能 1、按键值与LCD显示 2、矩阵按键 二、使用步骤 系统运行后,LCD1602显示当前的按键值; 当按下不同按键后显示屏更新对应的按键值。 三、硬件资…...
考研单词笔记 2025.04.09
act v表现,行动,做事,扮演,充当,担任,起作用n行为,行动,法案,法令 action n行为,行动 behave v表现,行事,守规矩,举止端…...
用一个实际例子快速理解MCP应用的工作步骤
已经有很多的文章介绍MCP server,MCP Client工作原理,这里不做太多介绍。但是很多介绍都只是侧重介绍概念,实际的工作原理理解起来对初学者还是不太友好。本文以一个智能旅游咨询系统为例,详细说明在利用 Model Context Protocol&…...
TCP 和 UDP 可以使用同一个端口吗?
TCP 和 UDP 可以使用同一个端口吗? 前言 在深入探讨 TCP 和 UDP 是否可以使用同一个端口之前,我们首先需要理解网络通信的基本原理。网络通信是一个复杂的过程,涉及到多个层次的协议和机制。在 OSI 模型中,传输层是负责端到端数…...
探索原生JS的力量:自定义实现类似于React的useState功能
1.写在前面 本方案特别适合希望在历史遗留的原生JavaScript项目中实现简单轻量级数据驱动机制的开发者。无需引入任何框架或第三方库,即可按照此方法封装出类似于React中useState的功能,轻松为项目添加状态管理能力,既保持了项目的轻量性&am…...
探索 Shell 中的扩展通配符:从 Bash 到 Zsh
在 Unix 系统中,通配符(globbing)是 shell 的核心功能,用于快速匹配文件或目录。基础通配符(如 *、?、[])虽简单实用,但在复杂场景下往往力不从心。为此,许多现代 shell 提供了“扩…...
封装方法的辨析
equals //字符串 str1.equals(str2); //list的两个实现类 list1.equals(list2); //map的两个实现类 //比较所有的键值对是否相同 map1.equals(map2); //数组(包括string类型) //比较内容是否相同 Arrays.equals(array1, array2); contains 基本都有…...
[leetcode]判断质数
一.判断质数 1.1 什么是质数 质数(素数)就是只可以被自己和1整除的数叫做素数/质数 1.2判断方法 #include<bits/stdc.h> using namespace std; bool isPrime(int num) { if(num < 1) { return false;//a number less of …...
在Flutter中使用BottomNavigationBar和IndexedStack可以实现一个功能完整的底部导航栏
在Flutter中,使用BottomNavigationBar和IndexedStack可以实现一个功能完整的底部导航栏。BottomNavigationBar用于显示底部的导航按钮,而IndexedStack则用于管理页面的切换,确保每个页面的状态得以保留(即页面不会因为切换而重新构…...
HBuilder运行uni-app程序报错【Error: listen EACCES: permission denied 0.0.0.0:5173】
一、错误提示: 当使用HBuilder运行uni-app项目的时候提示了如下错误❌ 15:11:03.089 项目 project 开始编译 15:11:04.404 请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。 15:11:04…...
聊透多线程编程-线程基础-3.C# Thread 如何从非UI线程直接更新UI元素
目录 1. 使用 Control.Invoke 或 Control.BeginInvoke(Windows Forms) 2. 使用 Dispatcher.Invoke 或 Dispatcher.BeginInvoke(WPF) 3. 使用 SynchronizationContext 桌面应用程序(如 Windows Forms 或 WPF…...
VMware Fusion Pro 13 for Mac虚拟机
VMware Fusion Pro 13 for Mac虚拟机 文章目录 VMware Fusion Pro 13 for Mac虚拟机一、介绍二、效果下载 一、介绍 VMware Fusion Pro for Mac,是一款mac虚拟机软件,跟Parallels Desktop一样,都可以让你的 Mac 同时运行一个或多个不同的操作…...
7.第二阶段x64游戏实战-string类
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 上一个内容:7.第二阶段x64游戏实战-分析人物属性 string类是字符串类,在计算机中…...
【debug莫名其妙跑飞了】
现象:就是在初始化汇编里跑飞了,也可能运行起来时钟不对 原因:调试器调试程序时会执行reset复位,reset没有正确执行。 细节决定成败,事出反常必有妖,忽略的小卡拉米最后能玩死你啊...
【Git 常用操作指令指南】
一、初始化与配置 1. 设置全局账户信息 git config --global user.name "用户名" # 设置全局用户名 git config --global user.email "邮箱" # 设置全局邮箱 --global 表示全局生效,若需针对单个仓库配置,可省略该参数 2.…...
基础知识补充篇:什么是DAPP前端连接中的provider
专栏:区块链入门到放弃查看目录-CSDN博客文章浏览阅读352次。为了方便查看将本专栏的所有内容列出目录,按照顺序查看即可。后续也会在此规划一下后续内容,因此如果遇到不能点击的,代表还没有更新。声明:文中所出观点大多数源于笔者多年开发经验所总结,如果你想要知道区块…...
openssl源码分析之加密模式(modes)
openssl实现分组加密模式(例如AES128-CBC的CBC部分)的模块名字叫做modes,源代码位于 https://gitee.com/gh_mirrors/openssl/tree/master/crypto/modes 博主又打不开github了TT,只能找个gitee镜像 头文件是modes.h。 该模块目前…...
【PVR】《Palm Vein Recognition and Large-scale Research based on Deep Learning》
邬晓毅. 基于深度学习的掌静脉识别及规模化研究[D]. 四川:电子科技大学,2024. 文章目录 1、背景2、相关工作3、创新点和贡献4、方法和实验4.1、知识介绍4.2、基于自适应损失函数的掌静脉识别算法研究4.3、退化图像的掌静脉识别鲁棒性提升研究4.4、掌静脉识别系统规模化 5、总结…...
ES6规范新特性总结
ES6新特性 var、let和const不存在变量提升暂时性死区不允许重复声明 解构赋值用途:交换变量的值从函数返回多个值提取JSON数据遍历map结构输入模块的制定方法 字符串的扩展codePointAt()String.fromCharCode()at()includes(),startsWith(),endsWith()repeat()padSta…...
PyQt学习记录
PyQt学习记录 要在界面上 创建一个控件,就需要在程序代码中 创建 这个 控件对应类 地一个 实例对象。 在Qt系统中,控件(widget)是 层层嵌套 的,除了最顶层的控件,其他的控件都有父控件。 几个函数 函数mo…...
嵌入式硬件篇---Uart和Zigbee
文章目录 前言一、UART(通用异步收发传输器)1. 基本概念2. 工作原理帧结构起始位数据位校验位停止位 异步通信波特率 3. 特点优点缺点 4. 典型应用 二、ZigBee1. 基本概念2. 技术细节工作频段2.4GHz868MHz 网络拓扑星型网络网状网络簇状网络 协议栈物理层…...
代码随想录算法训练营--打卡day8
一.反转字符串II 1.题目链接 541. 反转字符串 II - 力扣(LeetCode) 2.思路 循环分组定位:使用 for 循环,每2k为一组。i 每次增加 2k ,就相当于定位到下一组字符的起始位置。在每次循环中,确定当前组需要…...
Linux 学习笔记(5)路径知识详解:绝对路径、相对路径与特殊路径符(期末、期中复习必备)
前言 一、相对路径与绝对路径 1、概念阐述 2、实际示例 二、特殊路径符 1.特殊路径符介绍 2.应用场景 三、总结 四、结语 前言 在 Linux 系统的学习过程中,路径的概念至关重要,它是我们在文件系统中定位文件和目录的关键。今天,我们就…...



