分享帖WinCC_ConnectivityPack_zh-CHS_zh-CHS.pdf使用说明文档
从一款功放电气原理图说设备电气的系统接地 一直来,大家都热衷于EMC对设备系统的影响及系统接地是如何如何做的讨论和实验,进行过无数次的讨论。但,真的因为没有到达一定的共设,不然,不会有这样的不断讨论了。 近来,手头的工作相对减少了不少,就又复燃了之前自己的爱好,翻开一些之前收集的电气图纸查看,当看到某一款家庭影院的功放电气图纸,看到主电源时,这个图纸让我楞了一下子,这不,寻寻觅觅的一直想说从功放原理与工业自动化控制的EMC及设备系统接地的理论,不是从这些原理图中,能够说明一些问题?图示: 红框图中,功放的主电源从环形变压器次级双绕组出来,进入AC\AC_G\AC的交流电源端子,经过全桥整流进入+B5702_2和 - B5703_2正负电源。而需要强调的是各功放输出的电源地(参考点)是分别集中连接到图示的星点上,原因很显然,虽然都是参考点,但是,最原始的参考点并不是随意连接到某一个电源端子(点),而是,将各个功放的参考地分别集中连接到这个点。当我看到印刷电路图,电源滤波电解电容这块线路时,印刷电路板也做了相应的“处理”,图示: 这样的有意“处理”,使各功放部分的大功率回路,通过这些弯弯绕绕的铜箔印刷板的有意“处理”,尽量使本回路的所谓干扰通过这些弯弯绕绕的路径,增加了内阻,使干扰达到最小,引申到功放电路,就是本底噪音及各通道之间的噪音,减少到最小,这我们可以理解为设备的大功率回路。而cpu及各级信号放大的处理,同样做了类似的“处理”,图示:各电压等级的电源,同时连接到信号处理电源的红框区域,这不是我们常见的各电源之间的“并联”应用的例举?最后是功放信号的输入,集中接地的“处理”同样起到弯弯绕绕的增加内阻,增强各通道之间的隔离度,如DVD信号的输入,图示: 通道的信号输入,最后集中归结到信号电源电压参考点地电位,如果用万用表测量都是相通的,但是,经过这些有意的弯弯绕绕“处理”,使各通道之间的信号串扰减少的最小程度,这里我们同样可以理解为模拟量及DI/DO的信号处理。由此,我们可以看到一个功放设计的一个特点规律,信号的流向是从小信号流入(信号的输入)到大信号(连接到音响)的途径,如果稍不注意,本功放的本底噪音就会明显的增加。而结合我们的日常自动化设备EMC及设备系统接地处理:来自低压配电房的系统PE或者就地的接地网络的接地点 ← 大功率电气的设备接地 ← 电源设备外壳地 ← 中小功率的系统地 ← 输入、输出、模拟量信号,所有系统接地均按这个顺序,有序的自远到近连接,最后连接的设备的总系统接地点。自参加工作的40多年来,安装设备我一直遵循这个规律连接各动力、负载的系统地,通过这样的处理,设备无缘无故的EMC及干扰问题少之又少,尤其是模拟量的处理。另外,对于每一根控制电缆,无论控制电缆的芯数是否能够满足,我一定会抽出其中的一根,作为PE接地处理之用,将可能遇到的干线EMC通过缠绕的控制电缆芯线,将干扰信号通过这些处理接入系统PE,满足设备稳定信号的需要。
单位新买的一台132kW的PM240-2,开箱后一看,直流母线端子有输出了。两个显眼的铜排端子,明晃晃的,很靓眼哟。这样的话,以后采用G120共直流母线应用就放心使用了。西家传动太接地气了!@西家传动
STEP7软件的操作日常 今天,刚刚快要下班的时候,接到公司同事的一个咨询电话,说有一个STEP7编程环境维护中出现一个弹窗,需要“确认”不知道其后果,让我帮助确认,说确认窗口的图片已经发我微信上,图示1: 显然,这个窗口的提醒文字已经非常明确的告诉编程者,电脑中的程序与plc中的程序有差异,如果点击“是”,就会将电脑中的程序覆盖到plc中,这个确认需要非常非常谨慎,我曾经有过一次,因为设备故障了,生产现场急需处理,在线后贸然点击的确认,造成设备停机时间超长的设备维修经历。在微信中看过图片后,我第一时间告诉公司同事,千万不要选择“是”,那样会将电脑中的用户程序覆盖到plc里面的。解决此类问题的方法有2种:1)在工具栏选择“选项”的下拉菜单,选“比较在线\离线伙伴”,在编辑窗口软件会自动弹出不同的程序段,其中,左侧程序是电脑里面的那部分,右侧是PLC里面的原程序,不同之处非常明显的显示在编辑区。用户只需要把左侧的程序修改到与右侧窗口一致的程序,再点击“在线”的那个小眼睛,如果仍然有那个弹窗,再进行一次比较在线\离线伙伴的比较,直到提示弹窗没有再出现为止。2)新创建一个项目,“PLC”下拉菜单选择“将站点上传到PG”,这样只需要将符号表复制到新创建的项目中。它们之间的区别的内部的接口信号名称将会被丢失,对于理解复杂的程序可能会产生阅图的麻烦。问明白公司同事的提问,整理思路后,我电话告知了2个处理方法。为稳妥起见我还是在微信上,用文字重复描述了我的理解,让公司同事先备份好原程序,然后再选择自己喜好的方法处理。
一次西门子840D sl报警的故障排除 前几天,原岗位的同事发微信给我,说工厂有一台西门子840D sl设备近期频繁出现如下的报警,在MCP板上可以用reset键复位该报警信息,但是,没有加工几个产品报警又会重现,问我该如何排查处理?报警信息图示1:针对报警信息分析,报警主要原因是21612#系统内部的报警引起的。 查看诊断手册,21612#报警信息图示2: 根据说明,触发该报警的主要原因是通道轴2,DB32.DBX2.1(测量系统)及DB32.DBX21.7(脉冲使能)及通道轴3的测量信号及脉冲使能信号丢失。又根据报警触发顺序,引起报警的要因的通道轴2。查看PLC的控制程序,图示3: 根据控制程序,造成报警的主要触发条件是DB270.DBX0.6这个信号接通时间大于2秒。而能够使能DB270.DBX0.6的信号是程序图示4: 又根据以往的工作经历,能够造成本次故障的要因是DB270.DBX0.0和DB270.DBX1.0这2个信号异常的可能性大。深入这些控制程序,发现造成报警触发信号的条件是图示5这些要因。 根据这2个报警程序分析,要因还是在DB270.DBX0.0这个概率大,而这些滤芯脏堵或者压差传感器触点闪断的概率尤为突出。它们分别是I40.0\I40.1\I40.2这3个滤芯的压差传感器触点引起。 我将分析过程告诉了同事,让他按我这个思路排除造成21612#报警的主要原因,将这几个滤芯的信号分别做一个累加的程序,看reset键复位后,到底是那个信号的触发被累加。 隔了几天,再次遇到同事他告诉我,那个方法确实有效,顺藤摸瓜很快找到其中一个滤芯压差传感器的信号有接触性问题,已经报采购了,现在临时屏蔽着在用。
从LOGO 8.4开始,LSC支持LAD编程。我们知道,在西门子编程软件中,LAD与FBD是等效的;这么多年,我在MicroWin、TIA软件中用LAD编程;但使用LOGO中,仍然偏好是使用FBD编程;若你是常用TIA中的LAD编程者;很可能会与我一样,还是不习惯LOGO的LAD编程特点。因此,也强烈建议各位,学习使用FBD编程。下面,我根据自己的理解,介绍一下FBD功能图编程。(顺便也能理解西门子驱动功能图。)说到LOGO的FBD功能图编程,作为西门子驱动版主,自然想用驱动器的功能图来解释。西门子数字化变频器,是由顺控状态图为基础的。而全部驱动控制功能,就是由一个个功能块 BiCo(参数互联)组织起来的。通过参数互联(选择需要的功能块将值和控制位,在各功能之间输出连接到输入)就组成了一套控制系统。而这些功能块,又是以最基本功能块组成。例如: ADC模拟量输入块,从前面可以看到它的图号 2200在功能图 2200中,我们就看到细节,知道它是由哪些基本功能块构成的。哪些是输入/输出参数;哪些是设置参数。有了上述这些基本概念。回过头来看 LOGO的FBD编程,对应起来,就容易理解了。在LOGO Soft Comfort 中,内置了很多功能块,与驱动的功能块完全类似。通过“参数”互联,把控制系统搭建起来。这种搭建的功能块图,在LOGO中称为:电路图正因如此,它与LAD程序空间占用内存稍有不同。在LOGO中 电路图空间,就是你添加到电路图中的基本功能块和特殊功能块。它受到内存空间和数量的限制。在手册中,我们能看到这个表:例如:LOGO中的AND逻辑与功能块为啥一个AND(与)逻辑运算,要占用那么多空间呢?看看驱动的功能块,你就明白了。原来,它是要保存互联参数。(从哪来,往哪里去。在驱动中,我们称为BiCo。)(在LOGO9中,对其进行了优化。这类简单逻辑,来源方已经指定,这些就可以简化了。)在LOGO的FBD编程,当然没有西门子数字驱动器那么多功能块了。下面,我们转到LOGO的FBD编程FBD中,使用的指令大致分为以下几种:1、常量:这里是指的是IO;它分为:数字量、模拟量和网络 数字量:模块上的输入输出点,以及TD屏幕上的、浏览器上的触摸“键”; 模拟量:模块上的点。 网络:来自本机的V区变量;和/或连接其他主机模块、S7兼容性设备的IO点/数据。(这是它非常大的优势。后面再介绍;)2、基本功能块:这里就是各个位操作的布尔逻辑运算;与或非、异或等等;用它们做常规的逻辑运算。例如常用的“起保停”电路。3、特殊功能块:这里包含了大量软件提供的功能块:主要是: 定时器、 计数器、模拟量运算和PI控制器等等;这些功能块相当于STEP 7中的各种FB。需要逐个仔细了解使用方法。入门FBD,我想还是从最熟悉的LAD梯形图编程来理解比较好:LAD与FBD的转换以“起保停”电路为例:左侧是我们常见的LAD语句;右侧是等效的FBD电路图(程序)(输出状态若需要下个周期使用时,要保存到V区变量中。)这两个在布尔逻辑表达式中是完全等效的。除了以上的基本逻辑电路外,余下的就是各种特殊功能块啦!在LOGO的电路图中,为了表达数据类型,分两类:一类是功能块的IO互联;在LOGO 9中,它分别使用:数字量(位)使用细实线互联;模拟量(整数)使用中粗线互联;模拟量(浮点数)使用粗实线互联;另一类是功能块的参数互联;它使用灰色的实线互联;以上两类之间,并不能交叉使用。这意味着,模拟量输入、网络模拟量输入不能直接作为 算数运算指令 的参数项;而需要通过模拟量放大器功能块的参数进行互联。关于FB概念,FBD中与300/400;1200/1500相似;也可分为FB与FC;例如:算数运算就如同FC;它只进行值的运算;而很多带背景数据的功能块,就类似FB。由这些FB构成的UDF(用户定义的功能块)其参数就可以通过映射;被其他功能块、HMI、浏览器页面等等引用。以上这些,仅仅是LOGO9 理解LSC中FBD编程入门的一些要点。而对于LOGO 最特长、最亮眼的应用,我们在下面一篇中介绍、讨论。相关推荐:《我与LOGO!的不解之缘》《我与LOGO!的不解之缘》续新产品: 《组态编程软件LOGO!Soft Comfort V 9用法探秘》一、安装新产品: 《组态编程软件LOGO!Soft Comfort V 9探秘》二、安全设置《我与LOGO!的不解之缘》LOGO的功能图 FBD 运行机理
一看题目,这...,也能发个分享贴?G120C本身不就是定位为风机泵类系统控制的吗?有什么好说?我分享的这个风机泵类控制系统有点特殊。请看下图:这是一个正在组装和调试风机系统。它是由两台110KW电机各自带轴流风扇,在一个风道内串联安装的风机。两个轴流风扇相当于共轴螺旋桨作用。其出风口0.5m处的风速,设计最高时速是300km/h。这个风速属于飓风级别,已经超过了气象标准的风级量级。所以,这个风机控制项目是定制。这就是现场调试中两台G120C,都是110kW的。调试过程,很简单的采用V/F风机变转矩控制方式(P1300 = 2),两个风机的转速控制是同起同停,同步控制。这也简单,就是把第一个风机的转速实际值通过模拟量输出,连接到第二个风机的模拟量输入,作为第二个风机的设定值。这样,上位机只对第一台风机发送给定值即可实现风机的同步运行。就这么简单?就这么简单。在调试过程,有几个悬念需要确认。第一,就是两个风机在同一个风道里运行,它们所产生风速会不会有互相扰动,导致两个风机的出力不一致?实际测试表明两台风机的力矩输出是均衡的,没有互相影响。两台电机的同步性,输出电流的一致性,以及风速的输出,都非常一致和平稳。风机出风口的最高风速满足使用需求300km/h。第二,轴流风扇由于是串联运行,在低速时会不会发生风速的喘振?实测确认没有这种现象。综上,本来考虑这个风机会是一个问题难缠的项目。因为它是两电机不同轴的同步控制,又是变转矩特性,不知道会有什么坑等着踩,事实却是相当的,意想不到的顺。666的顺。由此得到,一个自动化传动控制系统,它是机电一体的系统。所以,机电的设计与计算既是两个专业事,又是一个整体。如果机的设计计算精准到位,那电控还有什么事吗?没。所以,机电一体化系统就是一个综合各专业的系统工程。如果有谁把自己的专业当领导者?那就大错特错了。试想,本项目,如果机械设计和计算没有专业性的精准设计计算,电控或上位机的编程要踩得坑估计陷进去都出不来。
您可以在西门子产品支持官网https://sieportal.siemens.com/zh-cn/support或者西门子数字化工业下载中心 https://www.ad.siemens.com.cn/download/输入产品型号查询、下载产品相关技术资料。
先上图再描述:主机是两个长转鼓底盘测功机组成,它可以测试两轮,三轮,四轮摩托车整车耐久实验。控制柜电气控制系统。它是由国产整流回馈电源+CU250S-2PN*2+PM240-2*2+G120C组成。国产电源提供直流母线电压和电流供电,两台由CU250S-2PN组成的G120共直流母线结构,对两套长转鼓底盘测功机实施控制。另外一台G120C-PN针对底盘测功机受试车辆冷却风机进行实验过程的摩托车车速同步跟踪风机风速控制。再现道路的迎风受力实时工况。该系统所以说它高用低配,是因为摩托车底盘测功机的控制工艺需求,采用S120的硬件系统是标准匹配的。S120的高动态性响应,DCC的工艺编程功能能满足所有底盘测功机的试验项目需求。那为什么要用通用变频器G120来完成高性能的需求呢?这是因为,这个底盘测功机的定位是耐久试验。既然是耐久试验,属于车间级的测试设备,从产品的性能和指标上就允许放宽要求。只要能满足耐久试验的需求就可以了。采用通用型传动控制系统G120完成工程型装置S120的工作任务,这在成本上可以大大节省。做到物尽其用刚刚好的目的。那么,就来看看G120变频器能不能完成以下底盘测功机的测试工作需求?第一,在两个底盘测功机转鼓上加装不同高度的凸块,让两个转鼓同步电动运行,使受试摩托车在转鼓上颠簸运行,叫摩托车整车加振耐久试验。这个需求G120去完成完全没有疑意。第二,技术要求两个转鼓可以分别,或实时同步,对受试车辆单驱输出轮或双驱输出轮,进行道路阻力的加载耐久试验。这个要求G120能实现吗?下面就来初略分析一下其可行性:道路阻力的的加载方程:F(总) = F1 + F2 + F3 + F4其中:F1 = 行驶中道路的迎风阻力。它可以以 多项式方程形式表达,也可以以转速对阻力函数的曲线形式表达;这个,CU250S-2PN的自由功能块可以满足实现;F2 = 电惯性模拟函数,它是系统加速度对受试车重与转鼓实际惯性的增量补偿。CU250S-2PN的自由功能块里包含了乘法器,积分器等运算模块,完成该项运算没有问题;F3 = 路试状态的坡道阻力,它是一个F力的常数项,用一个固定值参数设置即可;F4 = 底盘测功机系统摩擦阻力。这个功能在西家传动里应该是标配的功能。用参数激活这个功能,即可实现在不同转速下的系统摩擦补偿。综上,底盘测功机的加载方程F(总)通过CU250S-2PN内置的自由功能块加法器,即可搞定这个F力的合成。由此,在G120上完成简单且基本的加载试验项目,完全没有问题。那么G120既然这么能,为什么还要使用S120呢?这是因为,G120的自由功能块时基太大了,对模拟量的处理时基最快是128ms,这和S120的DCC毫秒级时基没法比。所以G120用于动态的控制响应,需要对其进行现场使用的评估。不能一概而论。它仅仅作为本项目可以满足使用。另外,这个底盘测功机还有一个特点。很亮眼。就是电机没有装测力传感器。因此底盘测功机的加载力是开环的。所谓指哪打哪,打出去以后是否打得准?怎么检验呢?西家传动的杀手锏就在于此。长期使用G120的数据累计表明,G120在开环的控制模式里,转速控制精度200Hz以内其绝对误差不超过3rpm,50Hz至100Hz以内,绝对误差+/-1rpm。即转速精度完全够用。那扭矩控制精度呢?因为我们是测功机制造商所以每台电机基本都装有电机输出轴测力传感器。曾经累计大量数据表明,常温下,扭矩开环控制精度一般在5%以内。转速越接近电机额定,这个误差会越小,转速越低,这个误差会加大。其范围在7%至3%左右。这对于测功机而言,开环加载的精度有点大,需要做修正。使其误差小于3%至1%就可用了。那么底盘测功机没有电机轴实测转矩,怎么标定这个开环恒转矩控制误差呢?这就需要用STARTER的trace功能,通过转鼓的固定基础惯性和加速时间,来标定底盘测功机的开环转矩。也叫惯性标定法。综上,这个高用低配的耐久试验整车底盘测功机项目完美体现西家传动的功能性能的强势。为我们的项目满足需求,降低成本,提升强力的支撑和底气。@西家传动!
先看现场铅笔素描画:大排量摩托车底盘测功机的主机台架:底盘测功机的主机,采用的是第三方电机,额定同步转速750rpm,最高2200rpm,针对受试摩托车最高转速350km/h。电机安装平衡式拉压测力传感器。这种大功率、高转速的底盘测功机,我们是比较罕见的。电气控制系统:采用西家传动典型的搭配,SLM+CU320-2+MM。装机装柜型,带编码器模板,模拟量接口模板。系统采用与上位工控机做PN通讯。底盘测功机操作系统:计算机采用VB.NET操作环境的专用测试软件,与S120通过OPC动态链接库,进行直接的PN通讯。中间没有PLC环节。这种通讯形式,是类似于STARTER与装置直接通讯的那种。高效快速的实现双方的信息交互。伴随这套大功率,高转速的底盘测功机系统,还配置一套具有典型运动控制特征的产品。摩托车自动驾驶仪。它可以实现无人操作,自动驾驶摩托车在底盘测功机实现耐久循环的路试工况。实现项目的无人化和程序化、自动化。自动驾驶仪的形态如下图示:、自动驾驶仪四个电动缸分别代替驾驶员的双手和双脚。实现启动、加油门、变档位,离合器、制动刹车。它在无人操作的前提下,自动完成变档离合的油离配合,消除动态加速的顿挫感,实现人车合一的操作模式。自动驾驶仪的控制系统:自动驾驶仪的控制系统组成:S7-1500T+S200*4(四台S200运动控制器)。这可是典型的西家传动运动控制配置结构。自动驾驶仪在底盘测功机司机助上的操作调整面板:这个操作面板是根据实验车型的不同,设置自动驾驶仪对变工况时的参数调整。以实现人车合一的自动顺滑操作。综上,根据摩托车国内市场需求,采用西家传动所组成运动控制项目,完全可以灵活多变的去组态,编程。以达到市场需求。
设备上有2个CU320-2pn的控制器,分别带了4个和3个S120的伺服电机,由于设备处于安装阶段,只在第一个控制器上临时装了2个电机,现在需要测试2个电机的耐久性,需要同时转动2个电机。由于没有现成的plc程序控制,所以就想到了用SIMOTION SCOUT软件直接去控制,但是用起来发现,SCOUT软件只能启动一台电机,不能同时启动两台,经过和同事的讨论,再开一个SCOUT软件去控制另一台,结果因为连接的是同一个CU320控制单元,所以还是同样只能控制一台电机。后来我们想了办法,把其中一台电机接到另一个CU320控制单元上,然后开2个虚拟机,用2个虚拟机里的SCOUT软件分别控制一个CU320控制单元带的电机,这样就实现了2个电机同时运转。
分享一例现场典型温控类伺服故障,设备运行一段时间连续弹出300608、25201、21612报警,关闭驱动静置冷却约20分钟后,故障自动消除,可以继续投产。先理清报警从属关系:300608为根报警,含义速度控制器长时间达到扭矩极限;25201属于轴伺服次级故障;21612是驱动使能丢失连锁报警。整套现象特征高度指向升温后器件特性漂移、负载阻力变大,降温恢复正常。整理由浅至深标准化排查顺序,供同行参考:1.机械负载优先排查。断电手动盘轴,检查丝杠、导轨润滑、轴承有无局部卡滞;Z轴重点核对平衡缸/平衡气缸压力。空载持续运行,监控伺服电流,空载电流居高不下基本锁定机械阻力异常。2.线缆与反馈回路检查。紧固编码器插头、动力线缆端子,清理针脚氧化;受热虚接极易引发信号波动。全闭环机型可临时屏蔽光栅尺,区分故障源在光栅读数头还是电机编码器。3.驱动散热与硬件验证。清理驱动模块风扇、电柜滤网粉尘,监控驱动器运行温度。条件允许采用模块互换测试,判断故障跟随驱动模块还是跟随轴位,快速定位功率模块老化问题。4.伺服电机检测。测量电机三相绕组阻值均衡度、对地绝缘,排查绕组轻微匝间短路、编码器板高温失效。5.参数复核。核对伺服增益、电机铭牌参数,不建议单纯拉长扭矩限制时间临时凑活生产,治标不治本。重要提醒:依靠停机冷却临时维持生产风险极高,持续反复高温运行极易击穿驱动IGBT模块,最终造成非计划大修停机。遇到同类间歇温变故障,优先区分机械负载、线路、驱动硬件、电机四大方向,逐步缩小范围。欢迎各位同行交流补充同类故障处理经验。
近期一天中午时候,一条生产线在开机过程中关键设备熔体泵西门子控制器报错不能开机需要检修,到现场后西门子CU250S控制器报F7801。参阅故障说明,这个故障是电机回路存在对地及相间短路,控制器断电后可重启但一带负载就报错。打开电机接线盖子,拆除电机线,使用万用表及摇表检查电机绕组检测不出问题,拆除电机线内定子绕组线,不带负载带电机线情况下,西门子控制器可以开环正常运行不报错。从而确认了电机线及电机线接线端子排都是正常的。基本确认是电机问题了,拆除电机。
SINAMICS G120 如何快速从定位模式切换到速度模式以应对位置编码器故障时的点动需求https://mp.weixin.qq.com/s/bTrhG-e0DBb8SlaJbEyt0w 个人一年半前苦思不得解的方案,今天就这么突然简简单单抛到面前了,分享给类似需求的坛友做参考
今年推出的西家传动新产品是G220和S220。除此之外,对老产品G120的PM240-2也随之推出了改进。以适应市场广大客户的需求与友商的对应方案。请看下面的图示:这是PM240-2没有改变之前,直流母线输出的基本形式,对于FG封装形式的装置,干脆就没有直流母线输出端子了。新改变的PM240-2封装形式FG的直流母线输出如下图示。从此以后,PM240-2全系列的装置,均有直流母线输出端子,且容量允许额定电流100%连续工作。以前是不允许了,有很大的限制。特别是FG的。有了这个改进功能。G120系列和S120单传的系列,整流与回馈四象限运行就达到了对称性。这是传动控制应用最基本的功能需求。对用户而言是利好。
最近,调试一台S120的传动系统。其配置是:SLM+CU320-2PN+电机驱动模块MM+编码器模块+附加端子板调试完成后,系统运行了两天,然后,再开机上电,就不运行工作了。我到现场一看,是SLM报故障F6500。能复位,但恢复以后紧接着又报这个故障。查手册,F6500是电源检测找不到电源相位同步,连续监测20次,仍如此,就发出F6500故障。按照手册检查电源进线电压,参数设置的相关信息等等,都是正常的,没有发现故障原因。于是怀疑是不是检测电压的模块VSM有问题了?DRIV CLIQ电缆有问题了?进线电源上电以后,线路接触器始终不闭合。但是VSM模块的指示灯一直是绿灯点亮。说明VSM模块应该没问题。是正常状态。就是线路接触器不闭合。在没有其他思路的情况下。动用了宝贵的风驰卡,请求西门子技术支持协助,技术支持让我对SLM中的几个进线电源相关的参数进行了trace录波。然后只判断进线电压有问题以外,并没有给出处理意见。因为是刚采购的西家传动装置,属于保内,所以我想申请西家传动现场服务。单位老板不同意,说再仔细地查查会不会是我们自己的问题。不要轻易的怀疑西家传动装置。我又把这个系统的主电路电气接线图看了一遍,发现,SLM的x9端子3,4端输出接了一个固态继电器,这个固态继电器的输入,由SLM的X9端子输出一个直流24V的控制信号,驱动固态继电器的输出去驱动线路接触器的线包。哦?线路接触器不闭合,会不会是SLM端子x9输出信号驱动的固态继电器没有工作导致的闭合不上呢?于是,做了一个测试,就是在复位F6500后的窗口期,用万用表测量x9端子的3,4两端是否有24V直流电压?结果证明在复位期间,这个24V的电压是存在的,当故障状态时,这个电压消失了。将系统断电后,拆下固态继电器,测试发现该模块输入的电阻值不对。而且这个固态继电器表面没有通电动作指示灯。模块的颜色也很旧。一问是从库里领出来的旧存货。我去,赶紧换新的。再次上电,主接触器与进线接触器,延时闭合。SLM进入了运行状态。故障消除。下面是SLM有关的三张功能图。第一张,推荐的主电路接线图:由图示,分路接触器的闭合与关断,受控与端子x9的3,4。我们没有直接去控制接触器线包。因为线包是380V的,所以,用了一个固态继电器做中继。第二张图,SLM控制功能图概览这张图示,线路接触器的通断,受控于状态参数r863.1。所以,通过监控r863.1的状态,也能监控SLM上电后的逻辑状态是否正常。第三张图,也很重要。它是关于SLM的上电逻辑时序流程图。从开机状态到运行状态的逻辑时序过程,由图即可一目了然。有了问题通过这张图,可以监控到问题被卡在什么地方了。最后,借用AI常用的表达方式:一句话总结。SLM如果上电后不正常,分路接触器不闭合。且伴随故障保护F6500。首先检查r863.1,复位故障后,窗口期内如果r863.1有高电平。说明线路接触器没有被触发闭合,找外部的驱动环节问题。
在1847学习平台上看到官方更新了S7-200 SMART G2 不同行业案例讲解和下载,给大家分享一下。另外附上S7-200 SMART G2 编程软件和 SMART LINE V5编程软件下载地址:Micro/WIN SMART V3.2 软件下载:https://www.ad.siemens.com.cn/download/documentdetail_18473.html WinCC flexible SMART V5 SP2下载:https://www.ad.siemens.com.cn/download/documentdetail_18507.html 课程详情可以到1847课程中心查看:https://1847.siemens.com.cn/category/courselist 课程截图:案例下载:
编者按:针对西门子数控系统使用传统有线手轮受到连接线的约束,而目前大部分无线手轮又无法实时显示机床坐标,带来操作上的安全隐患的问题,介绍了国产实时显示电子手轮在西门子840D sl系统上的应用,既能摆脱有线的束缚,又能够实时显示机床坐标,满足数控机床特别是中大型 序言数控机床电子手轮是数控机床不可缺少的部件,刀具微调、工件对刀等功能通常需要通过手**作来实现[1]。电子手轮主要由编码单元、坐标轴选单元、增量倍率单元和控制按键单元等组成,用于手摇方式向数控机床发送指令,控制数控机床移动。目前应用的手轮主要有两类:有线电子手轮和无线电子手轮。有线电子手轮具有价格低,工作性能稳定等优点,但受到信号传输线缆制约,在面对大型数控机床时操作有诸多不便,且手轮接线处容易破损,长期使用可能存在安全隐患。无线电子手轮摆脱了线缆连接的束缚,在大型复杂机床上可以自由移动,但目前市场上的无线电子手轮没有机床轴坐标的实时显示功能,当操作人员远离机床显示屏操作电子手轮时,无法实时了解机床坐标情况,给机床操作带来了不便,也存在一定的安全隐患。为此,本文作者选择了一种工作性能稳定,并且能够实时显示机床坐标的国产实时无线电子手轮,在大型机床上使用操作方便,提高了工作效率 国产西门子实时显示手轮介绍本次使用的无线电子手轮适用于西门子数控系统808、828D、840D sl和ONE,其硬件由两部分组成:电子手轮和接收器。手轮通过S7协议与西门子系统S7系列的PLC通信,实时显示PLC对应寄存器坐标值,常规款支持6轴实时坐标显示,最大可以做 到12轴;支持6个自定义按钮,对应西门子PLC地址,可自由编程;并且6个自定义按钮可以控制6个开关量输出;无线传输距离空旷40m,动跳频技术,可同时使用32套设备。无线实时手轮的硬件配置在西门子840D sl系统中,无线手轮通过以太网接收器和PLC相连(见图1),使得手轮的接线更加简单。 图1无线手轮连接示意手轮把按键数据无线传给接收器,接收器通过网线把按键写入PLC系统DB区;接收器把需要显示的数据从指定的DB区读取出来,再把数据返回给手轮显示屏幕。用户可以在手轮上自定义读写DB区基地址,这样手轮就可以读写PLC的DB区数据。接收器支持西门子S7协议,适用于PLC S7-200、PLC S7-300和PLC S7-1200。用户可以通过PLC连接配置工具将接收器配置成服务器模式和客户端模式。配置后,XWGP-ETS接收器就可以通过标准的S7协议和PLC通信。无线实时手轮应用连接无线实时手轮接收器外观如图2所示,在无线手轮背后安装两节5号电池就可以正常使用。 图2 无线实时手轮接收器外观手轮脉冲信号接线,用西门子信号线6FX8002-2CP00-1AC5,从西门子操作面板MCP背后的X60接口接到无线接收器的脉冲信号输出端口;无线接收器电源连接到系统相同的DC24V电源;急停信号输出可以与系统面板MCP上的急停按钮进行串接。接收器下端的倍率输出、轴选输出和自定义按键输出可以接到PLC的IO点进行控制;使用S7通信模式时,轴选、倍率和自定义按键可以直接通过X130和PLC进行通信读写,无需连接,这样可以大大简化接线。以太网口通过网线连接到西门子840D sl NCU上的X130口。 手轮的软件设置使用手轮自带的网络配置工具配置接收的IP地址等参数(见图3)。先刷新网卡,然后选择搜索设备,再选择设备名称;为设备配置参数,填好参数;单击配备设置参数,等待配置完成。 图3 配置接收器IP地址将PC机网段设置为与上一步设置的接收器IP相同的网段。打开电脑的控制面板,单击网络与Internet,再单击网络共享中心,然后单击更改适配器设置,右键单击对应链接网口,单击属性,双击选择Internet协议版本4(TCP/IPv4),设置IP地址为192.168.1.X,子网掩码为255.255.255.0。打开DB块设置软件(WGP-ETS),设置接收器读写地址等参数,如图4所示。 图4 接收器读写地址设置设置成功后,关闭DB块设置软件,打开无线手轮的网络配置工具,配置接收器通信模式。先刷新网卡,再单击搜索设备,选择设备名称。 图5 配置接收器通信模式如图5所示配置接收器通信模式,参数填好后,单击配置设备参数,等待配置完成。此时通过网线与PLC连接,便可通信。目的IP设置为192.168.1.100,后续在数控系统上也需要设置这个地址。数控系统端840D sl设置在数控系统端依次选择MENU SELECT→诊断→TCP/IP总线→TCP/IP诊断,进入TCP/IP设置画面,在“NCU公司网络X130”中将IP地址设置为前文无线接收器上设置的目的IP地址:192.168.1.100。无线实时手持单元的程序调试手轮实时显示机床坐标需要通过PLC与机床NC进行数据交换来实现,利用840Dsl数控系统PLC程序功能块FB2来读取数控系统NC上各轴机械坐标MCS值、进给速度F和操作模式显示。选择变量需要用NC变量选择器NCvar Selector选择需要读写的NC系统变量,生成数据背景数据块DB120。因为要读取轴坐标,所以需要选择以下几个相关的NC变量。1)C1_SMA_actToolBasePos1:轴的机械坐标MCS。2)C1_SEMA_feedRateOvr1:进给率倍率值。3)B1_S_opMode:有效运行方式。各轴的坐标值需要实时显示,因此必须实时读取上述变量的值,但是根据FB2的启动条件Req的要求,该信号必须有跳变才能启动下次读取,因此要随时读取数据就必须建立一个连续周期的脉冲。这次采用的是NCU硬件CPU 317-2PN/DP的时钟存储器,被组态为时钟存储器的字节中的每一位都可生成方波脉冲。时钟存储器字节提供了8种不同的频率,其范围从0.5Hz(慢)到10Hz(快)。这些位可作为控制位(尤其在与沿指令结合使用时),用于在用户程序中周期性触发动作。在程序中指定M0存储器分配作为时钟存储器,因此M0.0即为周期0.1s脉冲,频率10Hz。具体程序如下。CALL FB2,DB121Req :=M0.0/启动条件Num Var ·=8Addr1 :=“POS”.C1_SMA_actToolBasePos1_2 //读轴1机床坐标Unit1 :=Column1:=Line1 :=Addr2 :=“POS”.C1_SMA_actToolBasePos2_2机床坐标Unit2 :=Column2:=Line2 :=Addr3 :=“POS”.C1_SMA_actToolBasePos3_2机床坐标Unit3 :=Column3:=Line3 :=Addr4 :=“POS”.C1_SMA_actToolBasePos4_2机床坐标Unit4 :=Column4:=Line4 :=Addr5 :=“POS”.C1_SMA_actToolBasePos5_2机床坐标Unit5 :=Column5:=Line5 :=Addr6 :=“POS”.C1_SMA_actToolBasePos6_2机床坐标Unit6 :=Column6:=Line6 :=Addr7 :=“POS”.C1_SEMA_feedRateOvr1_1//读倍率Unit7 :=Column7:=Line7 :=Addr8 :=“POS”.B1_S_opMode_3//读机床操作Unit8 :=Column8:=Line8 :=Error :=M131.0 //FB2出错标志NDR :=M131.1 //FB2完成标志State :=MW132//FB2读状态RD1 :=DB9033.DBD0 //轴1坐标地址RD2 :=DB9033.DBD4 //轴2坐标地址RD3 :=DB9033.DBD8//轴3坐标地址RD4 :=DB9033.DBD12//轴4坐标地址RD5 :=DB9033.DBD16//轴5坐标地址RD6 :=DB9033.DBD20//轴6坐标地址RD7 :=DB9033.DBD48//轴倍率地址RD8 :=DB9033.DBD52//操作模式地址通过功能块FB2的调用,把手轮显示屏上需要显示的值读取到已定义的数据块DB9033中。PLC程序编写完毕后,将该FC程序块以及该FC块用到的数据块DB120、DB121、DB9033和DB9034等一起下载到控制系统中,当激活手轮时,手轮显示屏就能实时显示当前所选轴的坐标值。通过轴选开关,切换不同的轴,显示屏上显示的内容也会相应切换到当前所选轴的坐标,如图6所示。 图6 无线实时手轮显示机床坐标对于手轮轴选和倍率控制信号,由于采用了S7与NCU进行通信的方式,手轮轴选和倍率旋钮都是通过总线通信,不需要像传统手轮一样占用I/O点进行控制,避免复杂的连接。直接利用无线接收器设定软件中设定的写地址,只需将原来手轮程序中用到的PLC输入点更换为对应的DB地址,就可以进行正常编程。WGP-ETS与西门子840D sl写数据说明见表1。 表1 WGP-Ets与西门子840D sl写数据说明 结束语使用国产无线实时显示电子手轮,由于使用了总线通信,因此不需要繁琐的布线,减少了故障点,节约了大量成本。通过简单的按钮和旋钮,用户可以轻松地控制设备,提高操作的效率。对于大型机床操作人员来说有直观的界面和易于操作的控制功能,也减少了线缆的缠绕和拖动,提升了操作的安全性。该方案已经在产品设计时使用,并在用户处得到验证,可在机床设计应用中广泛推广。本文转自于《金属加工(冷加工)》2024年第4期60~63页,作者:宜昌长机科技有限责任公司 王乐强,黄帅,刘敏 ,原标题:《国产实时显示电子手轮在西门子840D sl系统上的应用》。无线手轮厂家:成都芯合成科技有限公司
分享一篇个人写的文章,原文是发布在微信公众号的,再次编辑重发的话,弄图片比较麻烦,直接上传网盘了,有需要的朋友可以下载阅读。我用夸克网盘给你分享了「使用AI工具WorkBuddy操作西门子TIA Portal.pdf」,点击链接或复制整段内容,打开「夸克APP」即可获取。/~c6753ZW6hz~:/链接:https://pan.quark.cn/s/c593192863f2?pwd=LTwK提取码:LTwK有类似应用的朋友,可以一起交流讨论一下应用体会。
感谢西门子公司提供的Eigen Engineering Agent的试用机会。Agent的注册账号与西门子账号不一样,需要另外注册,其账号的安全性更高,需要以手机号的验证码登录。每个账户的Token是1000个,每提一个问题会消耗一个Token。文件上传功能没有使用过。其基本操作页面跟其他的AI工具类似:出现基本的对话框,以及聊天的历史记录Agent设计之初是可以直接将功能块导入到项目中,不用另外添加。可能使用的是公司电脑,公司可能对电脑做了某些限制。根据网上查询的解决办法逐一检查设置,检查了所有的权限,。也可能是电脑中安装了多个版本的TIA导致的。最后Agent还是不能直接将功能块添加到项目中。最后根据提示,手动复制到项目中,复制的程序不能完整使用,会报错。需要手动调整,但是尽管如此,还是节约了很多工作量。期待Agent的持续优化。以下是Agent生成的程序,感兴趣的可以复制到PLC中测试,就能发现其中的问题。FUNCTION_BLOCK FB_ScaleComm_OhausLD224{ S7_Optimized_Access := TRUE }AUTHOR : EigenVERSION : 0.1// 电子称通讯功能块 - 奥豪斯LD224 + 艾莫迅RS232转TCP模块// 通讯协议: TCP客户端 - 艾莫迅模块 - RS232 - 电子称VAR_INPUT xConnect : Bool; // 1: 建立连接, 0: 断开连接 sIPAddress : String[15] := 192.168.1.100; // 艾莫迅模块IP地址 iPort : Int := 5000; // 艾莫迅模块端口 xReadWeight : Bool; // 读取重量 xTare : Bool; // 去皮 xZero : Bool; // 校零 xTimerReset : Bool; // 复位定时器END_VARVAR_OUTPUT xConnected : Bool; // 已连接 xConnecting : Bool; // 连接中 xError : Bool; // 错误 wErrorID : Word := 0; rWeight : Real := 0.0; // 当前重量 xStable : Bool := FALSE; xOverLoad : Bool := FALSE; xUnderLoad : Bool := FALSE; xReceiving : Bool; iRecLen : Int := 0;END_VARVAR instTCON : TCON; instTDISCON : TDISCON; instTSEND_C : TSEND_C; instTRCV_C : TRCV_C; instTimer : TON; tconParams : TCON_PARAMS; arrSendData : Array[0..19] of Byte; arrRecvData : Array[0..99] of Byte; iState : Int := 0; bSendReq : Bool := FALSE; bRecvEnable : Bool := FALSE; sSendCommand : String[10]; sRecvString : String[100]; sWeightStr : String[20]; iPos : Int; iPos2 : Int; bDataValid : Bool; rTempWeight : Real;END_VARVAR_CONSTANT cState_Idle : Int := 0; cState_Connect : Int := 1; cState_Connected : Int := 2; cState_SendCmd : Int := 3; cState_Receive : Int := 4; cState_Disconnect: Int := 5; cState_Error : Int := 99; cTimeoutMs : Time := T#5S; cConnID : Word := 16#0001;END_VARBEGIN #xConnecting := FALSE; #xReceiving := FALSE; #instTimer(IN := NOT #xTimerReset AND (#iState cState_Connected), PT := #cTimeoutMs, Q = #, ET = #); CASE #iState OF cState_Idle: #xConnected := FALSE; #xError := FALSE; IF #xConnect THEN #tconParams.interfaceId := 16#FFFF; #tconParams.id := #cConnID; #tconParams.connectionType := 16#11; #tconParams.activeEstablished := TRUE; #tconParams.remotePort := UINT_TO_WORD(#iPort); #tconParams.localPort := 0; #tconParams.remoteAddr[0] := 16#C0; #tconParams.remoteAddr[1] := 16#A8; #tconParams.remoteAddr[2] := 16#01; #tconParams.remoteAddr[3] := 16#64; #iState := cState_Connect; #xConnecting := TRUE; END_IF; cState_Connect: #instTCON(REQ := #xConnect, ID := #cConnID, DONE = #, BUSY = #xConnecting, ERROR = #xError, STATUS = #wErrorID, CONNECT := #tconParams); IF NOT #xConnecting AND NOT #xError THEN #xConnected := TRUE; #iState := cState_Connected; END_IF; IF #instTimer.Q THEN #xError := TRUE; #wErrorID := 16#0001; #iState := cState_Error; END_IF; cState_Connected: #xConnected := TRUE; #xConnecting := FALSE; IF NOT #xConnect THEN #iState := cState_Disconnect; ELSE IF #xReadWeight THEN #sSendCommand := W; #bSendReq := TRUE; #iState := cState_SendCmd; ELSIF #xTare THEN #sSendCommand := T; #bSendReq := TRUE; #iState := cState_SendCmd; ELSIF #xZero THEN #sSendCommand := Z; #bSendReq := TRUE; #iState := cState_SendCmd; END_IF; END_IF; cState_SendCmd: #arrSendData[0] := CHAR_TO_BYTE(CHAR_TO_STRING(MID(IN := #sSendCommand, L := 1, P := 1))); #arrSendData[1] := 16#0D; #arrSendData[2] := 16#0A; #instTSEND_C(REQ := #bSendReq, CONT := TRUE, ID := #cConnID, LEN := 3, DATA := #arrSendData, DONE = #, BUSY = #, ERROR = #xError, STATUS = #wErrorID); #bSendReq := FALSE; IF NOT #xError THEN #iState := cState_Receive; #bRecvEnable := TRUE; ELSE #iState := cState_Error; END_IF; cState_Receive: #xReceiving := TRUE; #instTRCV_C(EN_R := #bRecvEnable, CONT := TRUE, ID := #cConnID, DATA := #arrRecvData, DONE = #, BUSY = #xReceiving, ERROR = #xError, STATUS = #wErrorID, RCVD_LEN = UINT_TO_INT(#iRecLen)); IF #instTRCV_C.DONE THEN #sRecvString := Chars_TO_Strg(Chars := #arrRecvData, Cnt := #iRecLen, CHR := 32); bDataValid := FALSE; FOR iPos := 1 TO LEN(#sRecvString) DO sWeightStr := MID(IN := #sRecvString, L := 1, P := iPos); IF (sWeightStr = +) OR (sWeightStr = -) OR (sWeightStr = 0 AND sWeightStr = 9) THEN iPos2 := FIND(IN1 := #sRecvString, IN2 := ); IF iPos2 = 0 THEN iPos2 := #iRecLen + 1; END_IF; sWeightStr := MID(IN := #sRecvString, L := iPos2 - iPos, P := iPos); STRG_VAL(IN := #sWeightStr, FORMAT := W#16#0000, P := 1, OUT = #rTempWeight); #rWeight := #rTempWeight; bDataValid := TRUE; EXIT; END_IF; END_FOR; IF FIND(IN1 := #sRecvString, IN2 := S ) 0 THEN #xStable := TRUE; ELSE #xStable := FALSE; END_IF; IF FIND(IN1 := #sRecvString, IN2 := OL) 0 THEN #xOverLoad := TRUE; ELSE #xOverLoad := FALSE; END_IF; IF FIND(IN1 := #sRecvString, IN2 := UL) 0 THEN #xUnderLoad := TRUE; ELSE #xUnderLoad := FALSE; END_IF; #iState := cState_Connected; END_IF; IF #instTimer.Q THEN #xError := TRUE; #wErrorID := 16#0002; #iState := cState_Error; END_IF; cState_Disconnect: #instTDISCON(REQ := TRUE, ID := #cConnID, DONE = #, BUSY = #, ERROR = #xError, STATUS = #wErrorID); IF NOT #instTDISCON.BUSY THEN #xConnected := FALSE; #iState := cState_Idle; END_IF; cState_Error: #xConnected := FALSE; #instTDISCON(REQ := TRUE, ID := #cConnID, DONE = #, BUSY = #, ERROR = #, STATUS = #); IF NOT #instTDISCON.BUSY THEN #iState := cState_Idle; END_IF; END_CASE;END_FUNCTION_BLOCK
现场使用智能型操作面板(6SL3255-0AA00-4JA2)和智能连接模块(6SL3255-0AA0-5AA0)替代传统BOP-2面板,现场直观读取数、诊断、调试、备份等效率大大提升,后期计划升级DCMA系统对关键变频器实现持续的状态监控和诊断,降低维修工巡检和工程师诊断的工作量,小东西提高了效率。
通过前面几篇《工业AI之我见》,可以归纳以下几点吧:1、我可以意识到: 进入工业控制AI 智能时代,是生产力发展的必然;描述了一些当前AI Agent 工业智能体的大致操作;可以看到,工业AI智能体不再使用我们常规的逻辑编程方法;而是在历史、经验大数据基础上,通过学习、训练,创建出、可用于执行的经验推理集合。(具有“黑箱”属性)2、要创建工业控制AI智能体;数字化是前提,仿真、VR等(数字化孪生)等是实现较低成本的途径; 3、工业控制是过程控制,关注模拟量的变化量非常重要!这是因为,所有现实中的物理运动,一定遵守且符合物理规律、定律。工业控制AI同样如此!且同时必须符合相关的安全边界、规则。(执行器有确切的安全兜底。)4、有效数据的积累,是AI智能体得以学习、训练的关键。如何标准化、规范数据?是值得探讨,逐项落实的。借鉴规范的财务数据范例,我们可以得出一些关于工业控制系统如何记录有效数据的特征和方法:4.1、数据组时间对齐(成组数据的时间要对齐,对于AI训练、学习、分析获得结果的成因非常重要。)4.2、数据的基准参数的标定(一致性的量纲单位,可复现原值、追溯。)4.3、 数据绑定场景的标注(用于指定的场景、事件,尤其是报警、故障?扰动?输入源变动?)也就是说,数据变化的成因需要语义标注。4.4、 数据组的相关性、一致性(相关数据采用统一格式,保持一致。)4.5、 数据(归一化)对今后建立类数学模型 具有更重要的意义;(“ 百分比” “标幺值”,将工程量统一成无量纲量。)展望:若我们扩展想象思维,在工业控制AI智能体模式下,对应用需求、对软、硬件的要求。会有所改变。对ADC 功能要求可能的改变?我们知道,工业控制本质上是过程控制;换句话说,就是对模拟量变化量的控制。既然我们知道, 工业控制AI智能体不是常规的过程控制逻辑编程,而是通过各类感知器(实际值)输入到AI智能体。(如下图)那么更重要的模拟量变化量,是不是应该前置?在最广泛应用中,中低速的ADC是逐次逼近结构的,它一定包含有存储器,是不是能增加一点功能? - 增加传输模拟量的变化量?要知道,普通低成本的10位ADC转换速率,至少也是PLC 的1毫秒扫描循环周期的30多倍。保持前次数据;将定时间隔的差值数据同时输出?这样减轻工业控制AI智能体侧,对模拟量变化量的处理。我感觉,这种方式在一定程度上,还能实现低频采集,复现“高频”。这在ADC芯片设计上,我觉得应该不是太费事儿的。处理声音的AI Agent会产生么?有经验的老师傅走进机器设备旁,一听声音就知道问题出在哪里了。我们开车,一听随车轮转的哒-哒声,就知道轮胎上卡个石子。设备的咔哒声,是电机高速处,还是减速机低速处,一听就知道。不是么?声音采样并不困难。为啥没有这方面的AI Agent? DC800V的应用将带来的改变在“RXD”的大会上,大咖们也讨论了DC 800V的展望。历史的原因,在工业场景使用,我们习惯性的使用三相四线(五线);3AC 380V 50Hz来作为工业动力源。(工频、市电、)在电气化时代,用它来驱动电动机,通过减速机输出符合负载的转矩,达到所需的固定的转速。在自动化、数字化时代,为配合应用场景的变速需求;早先,我们需要变流器,将三相交流变成直流(AC-DC)用于直流电动机的调速;后期,随着半导体功率器件的发展,应用于变频器(AC-DC-AC)用于交流电动机的调速。我们来看看工业3AC 380 V与DC800V供电比对(下图)。在这里,我们能看到:1、 因为是直流供电,电流总是与电压同相位;这就是说,不存在无功功率。供电不需要配置无功补偿电容器。(实际上,无功补偿很难做到完全补偿)这直接节省了能源。2、 原来3相五线的TN-S可以节省两线,现有的3线450V/750V线路完全满足。大大节省了金属材料,降低了供电线路成本。3、 因为交流供电输送功率要计算的是有效值;在直流供电中,输送功率就是等于电压X电流。简单计算便可知:相同线径下,DC800 V供电系统,传输功率增大了至少30%。4、 因为直流供电的电场是恒定的。大大减少了EMC电磁干扰。供电也不会产生嗡嗡声。5、 在工业驱动侧的视角可以看到(下图右侧):5.1、取消了整流回路,降低了装置成本。5.2、大大提高了直流母线电压。这意味着,交流电机设计不再受制于AC 380V 50Hz供电的限制。异步电机稍作加强,即可大大扩展额定转矩下的调速范围!(想想87Hz模式)5.3、不再需要回馈单元和ALM之类的前端,每一台异步机都可以在过减速、起重应用中,直接回馈直流电网。不是么?连载系列——《工业AI之我见》一、西门子RXD大会 参会感受二、什么是工业AI智能体三、如何从工业传统控制模式走向工业AI智能控制模式四、传统数字开关量逻辑控制的缺陷与工业AI智能化重在关注数字化模拟量五、关注数字模拟量变化量的重要性六、历史变化数据积累的重要性及场景标定的重要性七、专家系统组合智能体与端到端大模型智能体的区别(两步走)八、由预设逻辑规则控制到模糊控制-标注-适配智能控制的改变九、数据,西门子 – 一个16位字长的智慧十、归纳与展望
输入:实时扭矩值 #Act_Torque_1输出:平滑后的扭矩平均值 #Mittelwert_B1目的:对扭矩信号进行低通滤波,消除噪声波动// 滑动平均值计算(简化版)// 假设 #Buffer 是一个 REAL 数组,#Bereich_Laenge 是窗口大小// 1. 数据前移(丢弃最旧的)FOR #i := 0 TO #Bereich_Laenge - 2 DO #Buffer[#i] := #Buffer[#i + 1];END_FOR;// 2. 新数据入队#Buffer[#Bereich_Laenge - 1] := #Act_Torque_1;// 3. 求和并计算平均值#Mittelwertsumme := 0.0;FOR #i := 0 TO #Bereich_Laenge - 1 DO #Mittelwertsumme += #Buffer[#i];END_FOR;#Mittelwert_B1 := #Mittelwertsumme / REAL(#Bereich_Laenge);用豆包研究公司老外用STL语言写的plc程序时,豆包帮我翻译成了SCL语言,感觉这个程序虽然简短但是功能却很实用,分享给大家。
如果最近系统提示这个更新千万别跟我一样手贱更新 更新完重启电脑博途就开始无限弹窗报错 博途打开直接闪退 控制面板中的PG PC接口打开直接清空无法操作 只能重装系统
我们使用的是1PH8184的电机参数如下:电机最高可以达到5000RPM的,可是我们在转主轴时只能达到1456RPM,此时主轴箱的速比是2.267,折算到电机转速是:3300RPM左右。我们实际显示的数值如下:并没有达到最达值:5000RPM怎么会限制呢?检查P1082参数是5000RPM没办法咨询SIEMENS问P1082怎么才能改为:7500RPM,回复我只能是第三方电机才可以改,我们选的是5000RPM的电机没办法。但是我说了1456RPM时电机转速没达到5000RPM, 只有3300RPM呀!有些讲不通呀!主轴达不2000RPM客户是不满意的。我只能面对参数发呆,看看有没有办法让主轴达到2000RPM,我就试试36210的参数改一下将110%改成115%试试,发现那个限制值变为1522RPM了。通过(3300:1456)x110%=(4552:2000)X?%算出来36210=152%是时限制值会是2000RPM.改完参数后限制值变为:2000RPM的并进行测试主轴可以达2000RPM了。我再次咨询SIEMENS改此参数有没有影响回复我不影响。分享给大家以后遇到此问题可借鉴。根据范工的贴子我改P2000达到了效果,论坛的交流大家互相学习长知识。
客户选用西门子Line V5精简屏,经济实惠。屏内做了配方功能,应客户要求,将当前配方名称显示到主页上。如下图主页放置一个IO域,用以显示当前所选配方名称。过程变量设一个数据类型String的内部变量命名为”当前配方名称“的变量,用以显示当前所选配方。见下图然后在配方页面再,属性常规页内”数据记录下“变量指向此”当前配方名称“变量。这样每次选中一个配方时在主页就能同步显示当前所选择的配方名称。可是在实际使用中,却发现每次断电后再开机,已选中的配方名没有显示,一片空白,每次都要重新选中一下配方才能在配方名中显示,这样客户很是不满。多方搜集,终于找到一个办法,每次选中一个配方时,配方名保存到”当前配方名称“中时同时再把这个配方名称保存到PLC的掉电寄存器中,屏下次通电时先把PLC中保存的配方名写入到”当前配方名称“中去显示出来,这样就能完美解决每次通电不能显示配方名的问题了,试用一个多月,客户比较满意。下面是具体实现过程:创建两个脚本用于保存”当前配方名称“和调取并写入”当前配方名称“。第一个脚本用于保存”当前配方名称“到PLC内,变量任意命名,我这里命名的是配方名称存PLC,关联到PLC掉电保持寄存器VB3050,数据类型选String。第二个脚本用于屏启动时,将PLC内VB3050对应的变量配方名称存PLC写入到屏变量”当前配方名称“中去,用以显示关机前选择的配方名。然后在配方页面属性内添加一个清除函数,调用保存配方名到PLC的脚本,当配方页面关闭时就会将当前配方名称保存到PLC中去。然后再在屏起始画面(我用的是登录页面即起始页面),添加一个加载事件函数,调用将PLC中保存的配方名写入到屏配方名显示变量的脚本,这样当屏启动时就会把PLC中关机前保存的配方名读取到屏配方名称显示框中去,完美解决屏不能掉电保存配方名的问题。
新的1200G2已经上手用了一段时间了,看参数带轴能力大大加强,但是平时也用不上,没什么体会,正好有项目用到定位轴,虽然我的应用比较简单,谈不上什么深刻体会,但整体感觉还是挺方便的。下面简单说说组态的过程:工艺对象做位置轴控制时,报文要选择3。 新建工艺对象,选择位置轴双机工艺对象组态,配置参数,不同应用时的不同设置部分如下。第一种:无限回转轴时,可以直接选择模数轴,填上模数角度值。这样输出的位置就在0-360之间循环了。因为是无限回转,所以不用设置软限位第二种:普通回转轴,选择旋转即可普通回转时,注意设置合适的软限位范围第三种:行走轴,选择线性轴即可注意设置合适的软限位然后是不同应用共通的设置如下:选择驱动装置:选择编码器:注意编码器类型要选择循环绝对编码器。数据交换参数,尽量选择运行时自动应用(在线)。 这样工艺对象在PLC启动时会自动获得相应参数。线性轴需要填写齿轮比与螺距,实际我项目是齿轮齿条传动,这时候螺距就相当于减速机齿轮的有效周长。 旋转轴的话,因为是角度,每圈位移就是360°,所以仅需要填写齿轮比。填写动态默认值,设置合理的速度、加速度、以及斜坡时间。保证轴运行的动态效果顺畅丝滑,不卡顿。再设置动态限制设置。设置最大速度与最大加速度和斜坡时间(加速度与斜坡时间实际是相关联的,自动换算) 此处要注意,动态默认值一定是要小于动态限制值的,另外回转轴时,尤其要注意,所设置的速度值,要考虑减速比,还原到电机转速时,是否小于额定转速。如果超过额定转速的话,工艺对象会有相应警告,虽然能够复位掉,但也要尽量避免,保证参数的合理性。合理设置位置监视,与跟随误差,使系统响应迅速,跟随性高。至此,轴的组态就完成了,直接调用对应的MC功能块,基本上轴就能动起来了。
探秘西门子工业新产品|SIMATIC S7-1200 G2 紧凑型PLC全新升级,重塑小型自动化标杆?在中小型自动化场景中,紧凑高效、稳定可靠、高性价比的PLC,一直是设备厂商与工厂技改的核心刚需。老牌经典机型迭代升级,总能带来颠覆性体验!今天带大家深度探秘西门子全新迭代力作——SIMATIC S7-1200 G2 新一代紧凑型控制器,传承经典、全面焕新,精准适配中小型设备、产线自动化升级需求,解锁轻量化工控新体验!作为S7-1200系列的全新继任版本,S7-1200 G2并非简单的参数微调,而是从硬件结构、运算性能、安全功能、智能互联四大维度全面升级,兼顾极致空间利用率、高效运算能力与灵活拓展性,完美适配当下智能制造轻量化、精细化、智能化的发展趋势。?? 硬件重构:更小体积,更强集成针对工业现场机柜空间紧张、布线繁琐的痛点,S7-1200 G2完成了硬件结构的全面优化。整机导轨占用空间缩减25%,机身更轻薄紧凑,大幅降低机柜布局压力,尤其适配小型单机设备、非标自动化、模块化产线等空间受限场景。同时搭载可移动式高密度端子排,优化信号板拓展逻辑,在精简体积的同时保留充足的拓展空间,硬件布局更规整、布线更便捷,后期运维检修效率大幅提升,彻底解决传统紧凑型PLC“占地大、拓展弱、布线乱”的难题。? 性能跃升:算力翻倍,从容应对复杂工况性能升级是S7-1200 G2的核心亮点!全新高性能处理器加持,指令执行速度提升50%,运算响应更迅捷,可轻松应对高频逻辑运算、实时控制场景。存储配置全面扩容,装载存储器从经典款4MB升级至8MB,工作内存同步优化升级,完美支撑多轴运动控制、复杂工艺逻辑、多任务并行处理等高阶需求。相较于上一代产品,G2版本在高速点位控制、连续工艺控制、数据实时采集运算中稳定性更强,响应延迟更低,既能满足常规单机自动化控制,也能适配中小型产线联动、精准运动控制等进阶场景,适配吹塑、灌装、打标、包装、物流输送等多行业设备应用。??? 功能革新:安全集成+智能互联,解锁全新体验本次迭代最大的突破之一,就是原生集成安全功能。无需额外加装安全模块,CPU本体即可实现安全控制,大幅降低设备安全改造的硬件成本与接线复杂度,为中小型设备提供高性价比的安全自动化解决方案,契合工业安全生产合规需求。智能互联能力全面进阶,搭载NFC近场通信、集成Web服务器与Web API,支持无线快速读取设备诊断信息、查看运行状态、调试参数。无需拆机、无需外接编程设备,手机即可快速完成设备巡检、故障排查、远程调试,大幅降低运维门槛,让小型设备也能拥有数字化、智能化运维能力。通信兼容性持续升级,可无缝适配SINAMICS S200、S210、V90等主流伺服驱动器,运动控制适配性拉满,助力用户搭建低成本、高稳定的运动控制系统。? 兼容传承:无缝迁移,升级零压力很多用户担心设备迭代、程序迁移成本高?S7-1200 G2完美解决这一顾虑!整机完全兼容上一代S7-1200程序与硬件生态,支持项目无缝迁移,无需大规模改写程序、无需重构设备架构,老设备改造、新机替换均可快速落地,大幅节约升级时间与人力成本。同时产品序列持续优化,主推1212、1214核心型号,覆盖从小型单机到中小型产线的全场景需求,标准化程度更高、选型更简洁,适配批量设备量产与标准化技改项目。?? 核心适用场景依托紧凑、高效、安全、智能的核心优势,SIMATIC S7-1200 G2广泛适配:各类中小型非标自动化设备包装、灌装、打标、物流输送等轻工设备小型流水线、模块化自动化产线需要轻量化安全控制、数字化运维的技改项目从经典迭代到全新突破,西门子SIMATIC S7-1200 G2以更小体积、更强算力、更全功能、更低成本,重新定义中小型紧凑型PLC的行业标准,为中小制造企业轻量化智能制造升级、设备厂商产品迭代提供超强助力!智能制造进阶,从一台高性能PLC开始??#西门子新品 #SIMATIC S7-1200 G2 #工业自动化 #PLC #智能制造 #设备升级 #工控好物
数据:这个数字312.55 我们能想到什么?只能说它的有效数字是小数点后两位!当指明了场景,数字才有一定意义。例如:这数字出现在商场内;它可能代表金额。但还是缺少单位!是元?还是刀?这说明,有效数据一定要有相关(场景、单位)的标注!日常中,我们最常见到的数据,就是财务数据;财务数据除了上述的数值、单位外,还必须有日期(时间)、摘要(内容背景)、入/出(借/贷);凭借数据原始性,达到可分析、可追溯。我们工业控制AI所需要记录的项目也应如此。原始数据来源于感知器(各类传感器);我们就从感知器(模拟量AD传感器)说起:如前所说,工程量(距离、重量、压力、温度、亮度等等)通过换能器转换到电量;然后,再使用AD芯片将电量模拟量(电压、电流)转换成数字量数据。我们知道AD转换是有不同的分辨率(精度)位数的。西门子控制系统对此做了如下格式的统一。AD模拟量统一格式在西门子规范中,采用左对齐,一个16位字长,统一了模拟量格式。黄色部分为置信度误差,可通过平滑、滤波显示为估读。对于数字模拟量,我们系统工程师最直接、最关心的两点:分辨率(精度)和单位(量纲)1、分辨率(精度)问题西门子控制器PLC方面:为了同时兼顾分辨率(精度)和实际场景的信号过冲;规定范围值为0-27648即hex 6C00=100.00%;这保留17%信号过冲时,分辨率达到2.7万分之一。实际AD转换精度:通常主机本体自带模拟量输入的AD为10位。SM信号模块实际AD是13位+符号位。(除了LOGO!外,新一代主机端子基本取消了AD接口。)西门子驱动器(变频器)方面:MM4、G120系列变频器上的AI端子,AD转换12位;而最新的G220系列,AD转换为16位。你可以看出:西门子的工业控制设备,给用户准备了更高转换精度的AD;12、14、16位(达到3.2万分之一);并将其统一为一个16位字长的固定格式。实际工业控制场景下,我们真的需要这些高分辨精度的AD转换么?我国工业传感器通用精度等级分为0.1、0.2、0.5、1.0、1.5、2.5、5.0七个等级,主流产品集中在0.5~2级区间。由此可见,我们的信号源:仪表、电位器等等,在大多数工业场景的测量仪表精度等级是0.5;0.2;(误差+/-0.5%,+/-0.2%;)一个16位字(符号整数)可以表示0- +/-32768。很明显一个10位的AD转换可以表示0-1023;满足大多数的千分之一精度工业场景。题外话:从机械工程师的角度看,在机械加工上,一个16位带符号的INT表达的范围是-32768 – 32767,对于加工直径500毫米的工件,这意味着分辨率:500mm/32767=0.015mm。0.015/500mm偏差范围达到IT5。属于精密级加工了。而大部分的加工精度只需要IT6-IT8。西门子 一个16位字长的智慧我们知道,在通讯领域,最小的传送单位是字节(Byte);在西门子主导的ProfiBus/ProfiNet组织下,对模拟量做了如下特别适宜的规定:采用一个16位的字长度,带符号的INT整数。规范中规定:hex 4000=16384=100.00%;它的分辨率(精度)为:1/16384;1.6万分之一。它表达范围+/- 200%;也就是:-32768 =-200%; 32767=200%在物理层面,它可以较好地表达信号的过冲;例如:表达电感反电势叠加100%信号。而又不丢失较高的分辨率(精度)。题外话:事实上,我们在工业控制过程中,对传感器分辨率(精度)并非要求很高;重点关注的是传感器的最小感度;更关心的是不同场景下,控制器对模拟量变化量的响应!这也正是AI Agent 需要做的事情。 2、量纲(单位)问题在实际工程控制应用上,我们面对着大量的带有单位的物理量;速度、转矩、转动惯量、电流、电压、温度℃、湿度%等等;不胜枚举。它们是我们数据记录的对象。如何才能有效记录他们呢?我们知道,所有这些物理量,都是由SI的7个基本量纲演化出来的。(长度m、质量Kg、时间s、电流A、温度K、物质量mol、发光强度cd)一个数据 20,标上单位:安培A;它就具有了一定的意义。但是,20A;这对于11kW的驱动器来说,是个满负荷;对于110kW的驱动器来说,却是个轻微载荷。由此看来,即便是带有工程单位的数据,没有指定的工业场景对象;对于AI数据训练来说,价值并不大。从驱动工程师的角度看来,控制对象从微型驱动系统到大型控制系统,从开环到闭环,貌似差异很大,但实际控制对象模型都具有相似性。为此,西门子在过程控制领域,早就给出了具体的解决方案:在数字化驱动中,使用固定的参数,标定了数据的参考值、单位(量纲)这样一来,只要保存绑定一次上述特定设备的参考值,那么所有相关数据就变得整齐划一。且达到原值(带单位)复现。(实际值【带单位】=百分比X标定的参考值)这样一来,控制器的数字模拟量的指令和控制对象返回的模拟量实际值,不再需要具体带单位的设定值/实际值;而仅需给出(通讯交换)分辨率(精度)1.6万分之一的百分比数值。这些就是西门子工业控制系统的“精华”!我们再深入一点。我们知道,一个工业控制系统的性能,响应非常重要。在物理世界中,它主要取决与驱动系统的能力和系统的惯量。这就是说,在物理层面上,驱动能力/系统惯量相近,则系统响应既可以相近。在西门子驱动器中:这同样采用了参考值(标准电机的转子的转动惯量。)通过上电驱动测试运转,输出转矩和降速、滑行,即可准确分辨整个传动系的转动惯量和滑动摩擦。参照驱动实际转矩与参考值;整体传动系统的驱动性能,(角加速度=转矩/转动惯量)就可将其计算得清清楚楚了。以上表述说明,西门子工业控制系统采用的就是“归一化”;具体来说:它采用同样一个字16位的长度,用数据类型为带符号整数(INT)来表示百分比。定标为hex 4000=16384=100.00%;那么其表达范围就是+/-200.00%;且分辨率1.6万分之一;这非常适合大多数场景。(更高精度的场合,还预留了hex 4000 0000这类双字的分辨率可用。)通过深入了解西门子的工业控制系统,你就会发现,无论是很小的控制系统还是大型的控制系统,(每个系列)使用一套统一的数字模型。包括运动过程控制采用无量纲(LU)参数。有了这些归一化的标定,那么我们就可以对同一类型的控制建立数学模型。也就是说,我们采集记录这种类型的数据,通过AI对数据的训练,完全可以扩展应用到更宽泛的相似工业控制系统中。这正是训练AI Agent所需要的模型数据(集)。题外话:像HMI的显示,其实(监控)操作者根本不想看那个20A电流的(浮点)数值,(尤其是生产线多台驱动)他想看到是各驱动的负荷率。而HMI的柱状显示,你只需要标定0-hex 3FFF绿色(100%负荷);hex 4000 – hex 5FFF(150%)黄色;hex 6000以上红色;就可以了。这样标定,可用于所有相似系统。当然,你也可以 0-90%绿色,90-99.9%橙色,=100%红色;一目了然,心中有数。3、时间问题数据产生的时间:就像一开始提到财务数据那样,产生数据的时间非常重要!因为,只有按前后发生时间顺序记录,才能分析模拟量的变化量、发现问题。对于驱动工程师来说,在以前,这一直是个“痛点”;驱动器出现报警,故障等,只能看到相对运行时间(本次上电开始计时);只能靠控制器(PLC)上的时钟,推测发生报警/故障的时间。最新的SINAMICS G2xx、S2xx系列内置了时钟,直接通过NTP显示时间:而且除PN/IO接口X150;以太网接口X127之外,添加了千兆的X128网口,专门用于AI时代的数据采集。数据组的时间对齐。我们工业控制系统需要获得数据,并非单一数据。而是需要一组相关数据:例如:命令、设定值(控制字)和状态(转速、转矩、电流、反馈量等等)一组(百分比)实际值;这些数据,理应是同一时刻的;若时间上错位,则这组数据就失去了相关性。对于这点,西门子工业控制系统早就有DPRD这些功能块,保证读取数据的一致性。为工业控制AI打下了基础。 以上,我仅仅是通过一个机械工程师、驱动工程师的侧面视角,来探索AI Agent训练所需要的数据特点。如何采集数据,如何标准统一?如何适应工业控制AI Agent的训练需要?对此,各位有啥看法?连载系列——《工业AI之我见》一、西门子RXD大会 参会感受二、什么是工业AI智能体三、如何从工业传统控制模式走向工业AI智能控制模式四、传统数字开关量逻辑控制的缺陷与工业AI智能化重在关注数字化模拟量五、关注数字模拟量变化量的重要性六、历史变化数据积累的重要性及场景标定的重要性七、专家系统组合智能体与端到端大模型智能体的区别(两步走)八、由预设逻辑规则控制到模糊控制-标注-适配智能控制的改变九、数据,西门子 – 一个16位字长的智慧十、归纳与展望