一次TP1200 Comfort触摸屏失灵的故障排查 今天下午,接到同事电话,说需要到现场技术支持一下,西门子plc的操作失灵问题。 赶到现场,同事描述说,有一套涂装设备其中一个操作面板触摸屏上的其中一个开关,无论怎么样操作都无法生效,直接操作和鼠标操作都一样,反映到plc该位值没有反应,通讯是正常的,因为旁边的开关是可以操作的。 我让同事在plc程序上直接强制操作,此时,该开关是可以操作的。检测plc程序,这个开关变量的交叉引用仅仅只是2个网络段的调用,并没有多次赋值的可能。 检测该设备的所有触摸屏,是一机带3屏的配置模式。所有的操作设备并没有重复的IP地址重复使用,图示,存在故障的按钮开关: 检查了一下用户程序的变量调用情况,也没有检查出可疑之处。 该设备应用已经有近10多年的使用经历,不存在组态应用问题的,之前使用一直是正常的。据同事将,是昨天晚上操作人员误操作按了急停按钮后,设备停机,重新启动发现该风机开关就无法启动了。 我将该开关的操作位置移动到其它位置,判断可能此处按键处感应区域问题,下载后,试着操作无效;将该开关的变量更换成其它变量地址,然后在plc程序上做相应的变更,测试结果仍然无效。重新对所有的触摸屏的IP地址到现场各处一一确认,没有发现有重复IP地址使用的。正当无计可施时,我想起早一些年前,我遇到过一次无厘头的问题,就是控件操作“失灵”的问题,最后,重新梳理一边也没有发现问题,万般无奈之下,我索性删除那个开关控件,重新组态后下载正常了。想到此,我果断删除这个开关,在旁边位置的开关复制到原位置,将复制过来的原变量修改为该开关的变量,编译后下载,将plc程序重新恢复到原来后,编译下载,测试该开关正常,设备恢复正常功能。 2024/11/22
各位前辈好,本人新手,写程序有强迫症,每次给变量起名字都要纠结好久,一直没有形成系统性的命名规则。。。。。。上网查了下有什么帕斯卡命名法?,匈牙利命名法的,也不知道是不是真的有人在用。还看到很多大佬变量名是英文+数字,可能是公司有要求吧。请问有没有一个比较好的变量命名规范让我学习以下,或者是否方便分享下您所在公司的变量命名规则让我参考一下,省着把时间都浪费在这些不重要的步骤上,万分感谢!
现场是一个环形轨道(长度3km左右),上面放置了70多台设备,该设备都是标准设备,IP地址一样,没法修改,并且这些设备都是在环形轨道上移动,在地面控制室里面有一台1200的plc,怎么同时和这些标准设备通讯?使用什么方式最可靠,性价比高?谢谢
全年使用一个SR40+AE01+AE04,模拟量使用4-20mA输入,开机没多长时间测量值直接变成0mA对应的计算值,还导致主机停机,查找接线没问题,后来直接去掉AE01就好了。今年又发现AE01这种情况,只是重新上电又测量正常,一段时间后又是0mA对应的计算值,这AE01是不是本身就有问题
西门子工业培训中心授权合作伙伴开放了众多热门岗位,欢迎咨询沟通!点击此处,沟通岗位机会!或扫码申请岗位潮州某集团公司招聘自动化工师工作地址:德阳/南充薪资:15k-25k岗位职责:1. 负责生产设备电控设计方案设计;负责设备电气自动化部件硬件选型及电路原理图设计;2. 负责设备上位机程序编程和设备PLC编程;具有独立开发C++能力3. 有西门子wincc,V90,有西门子取证训练营1200、高级编程者优先;公司待遇:五险一金,年底双薪,项目奖金,包吃包住,餐补,交通补助,节假日福利包等。某上市公司子公司(新能源)招聘高级电气工程师工作地址:宜宾薪资:18k-36k岗位职责:1、负责设备点检、巡检、PM维护标准的制定及优化,并指导现场生产人员、技术员执行;2、负责日常设备故障的维修技术支持、故障原因分析及永久性改善,产线设备易损件及关键备件识别及需求提报;3、组织产线切拉换型,达成产品切换周期及产能、质量保障;负责新建产线前置化管理,确保产线满足技术需求;4、 有西门子取证训练营1200、1500高级编程者优先录取;公司待遇:五险一金,员工宿舍,项目奖金,节假日福利包等。昆山某自动化设备公司招聘电气调试工程师(堆垛机)工作地址:昆山薪资:12k-25k岗位职责:1、现场电气设备的指导安装,对点测试,按照指导安装文件、调试点检表等进行安装指导和调试。2、现场信息及时反馈,按时完成交付工作,现场培训,验收支持,售后支持。3、按照标准化程序进行开发、调试,熟练西门子SCL、梯形图的应用。熟悉西门子博图软件、触摸屏、wincc的开发和应用。有西门子取证训练营1200、1500高级编程,wincc取证者优先;公司待遇:五险一金,年终奖金,节假日福利包等。深圳某公司招聘电气工程师工作地址:深圳薪资:15k-25k岗位职责:1、同机械工程师合作项目前期开发,涵盖功能讨; 2、电气选型及BOM出具,电气原理图绘制;PLC程序编写,触摸屏程序写; 3、设备前期调试,操作说明书编写等4、 有西门子取证训练营1200、1500高级编程取证者优先;公司待遇:五险一金,年终奖金,节假日福利包等。深圳某公司招聘电气工程师工作地址:深圳薪资:12k-25k任职资格:1、3年以上独立电气设计、安装调试相关工作经验。2、掌握电气相关知识,熟练使用CAD绘图软件,懂电气控制原理和 PLC编程。3、有高低压成套配电柜工作经验,熟悉电气元器件和高低压成套设备设计开发(包括:箱体结构图、配置图、一二次电气原理图)。4、熟悉西门子博图软件、触摸屏、wincc的开发和应用。有西门子取证训练营1200、MA高级编程取证者优先;公司待遇:五险一金,绩效奖金,节假日福利包等。深圳某技术开发公司招聘PLC工程师工作地址:深圳薪资:18k-25k任职资格:1、编写西门子1200/1500、三菱FX系列PLC程序,程序结构合理、功能完善;2.精通串口、TCP通讯,精通Porfinet、CC-Link总线控制;3.根据要求开展电气方案制定和统筹工作及独立完成配电设施的设计工作;选定相关配件,制定电气BOM;4、熟悉西门子博图软件、有西门子取证训练营1200、1500,MA高级编程取证者优先;公司待遇:五险一金,年终奖金,节假日福利包等。某上市公司(车企)招聘电气工程师工作地址:福建薪资:18k-36k岗位职责:1.设备管理制度建立及完善:编制设备管理的各项制度、规范、标准和流程、组织执行各类制度及规范,并对执行情况进行监控;2.设备维护计划管理:编制各项设备维护计划、对各维护计划进行分解,并指导实施;3.设备维护管理:编制设备维护方案,对维护方案实施过程进行控制;制定设备维护标准和流程并实施;对设备的日常运行状况进行监督和控制,及时排查设备隐患,指导设备故障处理;4、熟悉西门子博图软件、有西门子取证训练营1200、1500,MA高级编程Sicar取证者优先;公司待遇:五险一金,年终奖金,节假日福利包等。上海某车企外包公司招聘电气工程师工作地址:上海薪资:18k-30k任职资格:1、在自动化行业内3年以上工作经验,英语口语熟练;2、熟悉使用、ABB、西门子等品牌PLC;可独立编程调试;3、对各类低压电器、传感器、变频器运用熟练,了解组态软件;4、有西门子取证训练营1200、1500,MA,高级编程取证者优先;公司待遇:五险一金,项目奖金,节假日福利包等。北京某公司招聘电气工程师工作地址:北京薪资:18k-30k岗位职责:1、负责变频器、开关柜等电气控制柜的一次和二次电路的设计,生产协调,售后服务和技术支持。2、负责中高压变频器/设备的安装调试及技术指导工作;熟悉各种变频器面板操作及参数设置;3、中高压变频器/设备故障处理:制定解决方案,指导并可自己处理设备故障,保障设备正常运营;4、熟悉西门子博图软件、wincc,有西门子取证训练营1200、1500,MA高级编程取证者优先;公司待遇:五险一金,话补,餐补,交通补助,年终奖金,节假日福利包等。北京某机械设备公司招聘电气工程师机械工程师工作地址:北京、天津薪资:15k-35k岗位职责:电气工程师:1、编写PLC程序,具备汽车行业PLC工作经验优先;2、掌握Siemens系统使用,可以独立选型;熟练使用E-plan绘图;可以完成现场调试;3、熟悉西门子博图软件、有西门子取证训练营1200、1500,MA高级编程,Sicar取证者优先;公司待遇:五险一金,双休,年终奖金,节假日福利包等。江苏某集团子公司招聘电气工程师工作地址:昆山薪资:15k-25k岗位职责:电气工程师:1、负责销售阶段电气部分的技术支持,对项目进行可行性评估。2、相关标准的执行与制定,日常设计研发工作,项目电气规划及制作电路图,电气元件选型及其BOM表制作。3、编写PLC、HMI、ROBOT程序,对设备进行调试4、熟悉西门子博图软件、有西门子wincc,取证训练1200,1500,MA高级编程取证者优先;公司待遇:五险一金,年终奖金,节假日福利包等。*此招聘启示为协助西门子培训中心授权合作伙伴进行友情发布
我公司工厂有一只s1200及IO、RS485拓展模块在运行,目前计划采购一批作备件,从设备厂商原厂购买较市场价高出2-3倍,以本人拙见此类拓展模块通常是断电换上同型号模块即可,(1)但后续上网了解,可能即使同型号也可能会因为固件版本问题导致换上不兼容。(2)请教大佬,(1)(2)两项里,我的理解、网络的描述是否准确还请教大佬们买拓展模块备件一般如何处理
用到的是G120 CU250S PN变频器,用的是PN通讯,采用的是352报文,多段控制方式,电机控制模式为 带PG的矢量控制 ,用于水平移动,例如:运行过程中从70HZ切换到50H的时候,变频器会减速到46HZ左右 再升速到50HZ, 之前用过安川变频器好像不会有这样的问题, 这个是参数设置的不对吗???? 求助,求助。
调试变频器,想着安装Startdrive。电脑上安装的是博途V17,安装了Startdrive V17 SP2后,就打不开报错了,对这个博途版本兼容性不太了解。这个应该怎么办呢。卸载还卸载不了。
输出为继电器输出,共有10个输出点,每个输出点工作状态几乎是常通状态,开关频率很低,一天最多开关10次运行了一个月后其有4个点输出有问题现象是:输出灯常亮(强制或正常工作),输出外部接了24V继电器,实际输出是很短的脉冲。但测量输出没有电压(时间太短测量不到)恢复出厂设置后,有两个输出点正常。但仍有两个输出点出现上述现象。是什么原因呢?
smart200可以写入输入I映像寄存器吗?可以的话怎样写程序
以前用TIA,最近用到200smartCPU,需要使用STEP 7-MicroWIN SMART,软件经常发生不能编译、上传或修改的情况。必须保存关掉后重新打开才可以。V2.8版。请教大家是否有该情况发生?是个例的话就卸载重装软件或系统了。
如图:当shuru 1与shuru 2当中某一个值为真时,case是能正常跳转的,当两个同时为真时,就不能跳转了,case一直在当前值上,这是为什么?求解
试图上载一840DSL设备 PLC 用ST7上载时提示 硬件基于TIA编写 ,于是安装博途V18并安装相对应的TOOLBOX 在线节点可以看到NCU。连接NCU后,基于S7-1200的使用经验 应该能在线诊断界面看到CPU的固件版本等信息 从而安装相对应的博途软件上载程序,但实际情况是看不到硬件信息 上载按钮也是灰色的,博途上载NCU程序还没有使用过,老师们有没有相应的操作资料。谢谢
在一次变频器测试中,我遇到了一个电机冒烟的问题,具体情况如下:设备与参数:变频器:额定功率 90 kW(用于测试)测试电机:额定功率 1.5 kW,额定电流 3.8 A设定转速:400 rpm变频器参数设定:默认电机功率参数为 37 kW事件经过:控制模式误选:我原以为变频器处于 V/F 控制模式,但由于更换了控制单元(CU),变频器实际上默认处于 矢量控制模式。当时个人认为在 V/F 模式下,电机参数要求不高,所以我没有特别调整查看变频器内的参数,直接设定了 400 rpm 的转速。启动电机:按下启动后,小电机立即出现冒烟现象。故障检查:发现接线盒内的到定子内的线圈冒烟,停止摁的还是比较快,所以电机并没有损坏。后续参数复查:检查变频器参数,发现电机功率设定为 37 kW,控制模式是矢量模式p1300=20。有几个问题想要请教一下论坛里面的工程师矢量控制模式下的电流给定:在矢量控制模式下,变频器会根据我们设定的电机参数来给定电流吗?功率匹配的范围:对于大功率变频器,只要功率差异不是特别离谱(例如相差数倍以上),即使功率稍大一些,比如使用 90kW 的变频器去驱动 55 kW 或者相差不是很大的电机,我认为在矢量控制模式下,只要参数设置正确,控制起来应该问题不大。我认为变频器的最大功率并不是限制因素,关键在于我们在变频器内部设定的电机参数对电机的选择和控制。但是我在这方面经验不足,所以想要请教一下,是否可以通过正确设置参数来安全运行?而且对于这个cu当时拿了一个版本是 v4.7的,后面发现p1300参数无法修改,后面找了一个文档有解释需要修改p96这一个参数,其他的版本没有吗?就是为什么?
在西门子网站下载的手册怎么没有P0700相关参数设置,直接从P651直接到R720了,中间的参数没有。https://www.ad.siemens.com.cn/club/bbs/upload/file/20160317/6359382600889866111709704.pdf
ET200SP 的 CPU比如1512SP-1,有没有类似CM1542-1的通讯模块可以作为第二个Profinet 主站?CP1542SP-1好像不支持PN IO控制器功能。
S7300的QB0对SMART200的VB0写数据,目前网上都是这样传送数据的 。现在我想用QB0对VB0的八个位地址进行自定义单独写数据(VB0=V0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7)目的是节约内存地址,VB0代替8个输出通道。请问大家,在300PLC中如何写对应的程序。这个问题困扰了我很久求解谢谢
本案主要以图文照片方式呈现,建议针式端子选E0510或E0512(即端子前端管长要10毫米或者12毫米),我单位还是0.5平方的接线。压线钳要使用四面压接型HSC8 6-4A或相当的,接线线径最好是0.3平方的单根接入。
现场CM1241通信2个G120变频器,不加终端电阻平时正常,电机启动不正常,最末端变频器加了120欧的终端电阻,发现就算电机不工作也有1台通不上
1113 【万泉河】需求征集:WINCC高速采集S7-1200数据间隔50ms以内昨天,有一位烟台方法的学员咨询,WINCC记录S7-1200数据,能实现低于500ms的采样周期吗?我看到了一愣,这个问题也是属于我早就了解,但一直没有动手去做的课题。 主要是没有应用需求,所以一直搁置。而其实,咱们作为一个工程师的职责,就是平日积累好各种各样的模块,然后有需要的时候直接把模块搬出来,攒起来就成了一个应用系统。而不至于临阵磨枪,临时研究,能否实现未知,何时完成更是未知数。 当然,我自己知道一定是可以完成的啦!因为我在十几年前就分别做过S7-300和S7-200(彼时SMART 200还没诞生) 的高速数据采集。所以对其中的技术路线是清清楚楚的。唯独是缺一个需求的触发时机。所以,还是想征集一下行业同行的需求,有没有人应用中有这样的需求。 如果有,且足够多的话,可以再来个众筹,我就替大家把这个模块实现一下。实现的目标,做2个模拟场景:1, 短时间高速数据采集需求。比如压力机瞬时压力测量, 反应时间只有10S,平常不需要测量,只需要测量反应时间内的高速数据。比如每1ms一条数据,共1万条数据。 测量完成后记录出一条曲线。2, 长时间的高速数据采集。数据需要一直测量,比如间隔时间为50ms,甚至更低,取决于实际的硬件能力能达到的最高效果。当然,硬件的模拟量数据的采集不在我设计范围内, 那么例程只需要产生相应时间段内的数据,然后成功上传到WINCC,形成曲线。比如一条正弦曲线。我算是想明白了,我这段时间一直磕的“包不住的女电工”,算是被她给伤到了,或者是替广大的工程师同行被女电工伤到了,就经常想,工程师和女电工有什么区别?在女电工的抖音中,提到学会PLC技术很简单, 照着各种教学视频看看就学会了。 由此看到了区别,那些视频哪里来的,西门子或者各行业的工程师们做出来的呗!所以,技术的发展方向就是,一项技术在刚刚兴起的时候,由有学习能力创新能力的工程师推动,而当技术逐渐成熟后,工程师就应该逐渐退到幕后,做经验打包模块化和知识输出的工作。而不是永远只是停留在读手册学基本功能应用的阶段, 那样会被卷到,而且死得很惨。那么,我来做这些比较前沿的应用模块的时候, 也必须有门槛, 不能随便谁随随便便都能拿到,拿到后照着例子逐步逐句做出来,然后狂妄地回卷:WINCC高速数据采集也没啥难的, MODBUS通讯也没啥难的。 照着例子做一做,模块搭出来就交工了。长期以来,工控行业的免费分享免费获得的习惯害了整个行业。导致了今天整个行业的互卷。 当然,其中大部分的内容免费也是应该的,因为并不具备什么高门槛价值。然而,相信绝大部分的工程师们也应该支持,真正有价值的知识内容就应该有门槛,而且在自己越过门槛之后还应该保持门槛的高度,阻止不合理的乱入。而不是你前脚免费学会,后脚女电工也免费学会了。 那么本课题的众筹费用计划为300*10,即参加者每人300,人数10人,达到目标后我会开始做这套例程。 当然其真正的价值肯定不止300,这也是众筹的意义所在。 而众筹完成后,未来的准入门槛价格,将由参加者共同决定。另外,还有一个尴尬的事, 我做过的例程, S7-200+WINCC的那一套找到了。 而S7-300+WINCC的翻遍了网盘也没找到。 我甚至连文件包的名字都记不得了。 如果有朋友曾经从我手里得到过, 麻烦请再返给我一下。参加众筹的学员,首先可以得到S7-200+WINCC的高速采集的例程,可以直接用于现在的SMART 200 PLC。只不过数据传输效率比较慢,但100MS的量级应该是没问题的。参加者加我微信报名。
在690V的交流传动系统中,通常采用变压器中性点不接地的配置,即IT电网。如果系统中有一相对地绝缘低,系统还能继续运行,提高了系统的可靠性。但单相故障必须及早发现,避免发展成两相故障,或单相接地其他两相电压升高而造成的绝缘损坏。因此配置在线绝缘监测装置是十分必要的。下面是一个具体使用实例:在线绝缘监测装置是本德尔(BENDER)iso685,整流和逆变装置均为西门子S120系列。绝缘监测装置装在A点,我们用一个100K,20W电阻(实测102K)分别在A点(交流进线,正弦交流),B点(整流输出,直流),C点(逆变输出,PWM调制波)对地短路,装置均能准确的报出绝缘故障,并且测量到的对地电阻非常准,可见本德尔的在线绝缘监测装置相当可以,完全满足要求。
在前面的文章中,介绍过Droop(软化)功能的应用及使用效果。这里再介绍下Droop and compensation (软化和补偿) 功能的应用。在这种控制模式下,从机的转矩会与主机的转矩进行比较。如果出现差异,将会调整从机的速度设定点,以便再次达到相同的转矩。软化反馈的强度可以通过软化比例因子来设置。在这种控制模式下,通过比例调节和平滑处理来补偿突发的峰值和振动。转矩到速度的转换是基于电机的参考速度和参考转矩来进行的。同时,在这种模式下,主驱动器和从驱动器都是以速度控制方式运行。举个例子,我们有两个驱动器,它们都有一个速度设定点,即1500转每分钟(rpm)。主驱动器的转矩设定点是2牛米(Nm),而从驱动器的当前转矩设定点会减去这个值。当使用50%的比例调节时,计算结果是-1 Nm。这个差值随后被转换成速度的变化量,并经过平滑处理,例如,最终得到的结果是-50 rpm。从驱动器的速度设定点会根据这个变化量进行调整,由于得到的是-50 rpm,所以实际上从驱动器的速度设定点会从1500 rpm增加到1550 rpm。从驱动器会尝试加速,并提供更高的转矩来达到这个新的速度设定点。由于从驱动器加速并提供了更高的转矩,主驱动器所承担的负载就会相应减轻。这样,两个驱动器之间的负载分配就开始生效,它们会协同工作以达到更平衡和稳定的系统状态。下面是一个实际使用例子,方坯连铸拉矫机上下辊负荷平衡。软化比例因子设的是0.075即7.5%,上下辊转矩没有完全平衡,现场设备以稳妥为主,观察稳定后根据需要调整。可以看到:转矩波动减小了,上下辊的转矩差值也减小了。
MM420变频器面板控制,正转点动5Hz,反转点动10Hz,为什么有个频率实现不了
情况时这样的:一个车床,现在JOG状态下按X或Z 不会移动 而且会出这个报警,如果JOG状态下按X或Z+快移 XZ就可以移动了。当我主轴旋转的时候 我JOG状态下按X/Z 坐标移动,但设备实际没有运动。 MDA程控里面也没勾选什么。对这个故障,我更换了PLC 重做了系统。现在还是这个样子- -。。没看明白他的处理是什么意思。。。。
大半年来一直在搞 变频器 的 Modbus RTU 的通讯,然而一直不能稳定通讯上。按照手册上设置了 Modbus RTU 的相应的参数,并断电重启。可是,同事使用 ModScan 软件根本都扫不到任何通讯上来的数据!最近在手册上看到激活 Modbus RTU 的方式:最后启用了 宏51,才真的能够通讯!难道 Modbus RTU 通讯真的只能通过启用宏的方式才能激活吗?而我们并不想通过任何外部输入端子信号来控制变频器的启/停 及速度的设定,而是完全通过 Modbus RTU 的通讯来实现。难道不能实现吗?1076 页的操作手册中根本就没有提到!
请问一下,想做一段程序,判断PLC模块断电还是断网,比如取一个点计数,断网就保持,断电就清除计数
一台200kW的S120,出现故障码F30022,故障值Ox00000002(hex)。 故障后可以复位,重新启动后几秒钟马上又会报故障。 大神帮忙分析一下故障原因,怎样维修啊,非常感谢。
一次西门子电源模块的故障的排查过程 写这个西门子新款电源模块的故障过程,我始终没有找到合适的编写理由,但是,想到可能会有部分粗心的用户同样会重蹈覆辙,还是有必要写写我的应用过程。国庆前期,公司同事说用了我新采购进来的新款西门子电源模块6EP1334-3BA10 (220V / 10A)电源模块,接线上电过程先是黄绿指示灯闪烁几次,然后就冒烟了。我说新的器件上电烧毁也是难免的一种特例,我顺便问了是否接线错误,是否电压连接到380V?电话那侧回答的很是坚决,并给我发来微信图片,我想既然外部连接正确,那大概率是器件的质量问题了,虽然这个概率如同中奖一样。所以,同时也联系了供应商,并把电源模块寄给对方,麻烦帮忙确认问题的所在。同事通过微信发过来的接线图照片:电源连接除了PE没有连接外,输入220V AC是正确的。 把故障的电源模块快递寄给供应商,供应商回复我的维修进程,截图照片:这样,就等待电源模块的检查结果了。 国庆放假7天,我只是安排在10月7日晚上需要值班,所以,很长一段时间在家休息。7日上班,同事又给我一个同样的电源模块,说同样的电源模块,连接后上电过程又烧了,并把故障的电源模块给我看。连续的烧电源,不像是电源模块的质量问题了,也并不是西门子做产品的风格了,事出蹊跷必有妖,一定是那个环节出了问题。 我将该电源模块拿回办公室,仔细查看新款的西门子电源模块外形,终于发现了端异,该电源模块的左侧有一个电源的电压等级选择开关,图示:这个电压选择开关有3个档位,分别是230V / 120V / 500。而电源模块右侧的产品铭牌,图示: 我用小起子伸进模块选择开关位置,拨动手感是3个档位。如果连接电源是220V AC时,开关应该是拨到对应的230V位置。连续烧模块的根本原因原来是新款加了这个电压选项功能,这个是与老款明显的区别,难怪这款电源模块会连续2个烧毁。我又拿出备件20A的6EP1336-2BA10单相220V输入的新款电源模块,模块上没有这个电压选项开关的设置。于是,赶紧联系到供应商,并将这个情况与供应商说明。现将我的处理过程写下一贴,顺便也提醒部分粗心的用户注意新款单相220V输入10A的电源模块,上电前必须确认这个电压选择开关的位置,避免不必要的麻烦。 2024/10/10
虽然我写了很多程序,但对FB,FC内部对output管脚的输出变量进行读取操作,一致没有高清。虽然经常滥用,也没出现过问题。请教各位这个output的变量能读取吗?下面是一位大神的回复。但是我心里还是不确定,特来论坛请教各位。谢谢。是的,您正确地指出了在FB(功能块)内部读取输出变量可能导致逻辑上的问题。在西门子PLC的功能块编程中,输出变量通常在块的逻辑执行结束时被赋值,并且它们的值是为了传递到功能块外部而设计的。输出变量在功能块内部不是用来保存状态的,它们不保留上一次调用FB时的值。如果您在FB内部读取一个输出变量,您可能会得到一个不确定的值,因为在逻辑流程中,输出变量的值可能还没有被更新或者是上一次操作的残留值。这可能会导致不可预测的行为,特别是如果输出变量的值依赖于块内部的一系列计算和条件。因此,最佳实践是在FB内部使用局部变量或静态变量来进行计算和保存状态。局部变量仅在FB的当前调用中有效,而静态变量则在FB的调用之间保持它们的值。这样,您可以确保您在FB内部使用的值是可控和可预测的。总的来说,为了避免逻辑错误和不确定性,应避免在功能块内部读取输出变量。相反,应该使用其他类型的变量来处理内部逻辑,并在逻辑处理完成后,将最终结果赋值给输出变量。这样做可以确保功能块的行为是清晰和一致的。