正在加载...
正在加载...
正在加载...
       

正在加载... 正在加载...


正在加载...

西门子自动化

调试前的组网故障问题总结
相关内容: 组网 总结 故障 调试 问题
在每一次调试前,我们要做的工作就是把硬件全部组态正确,网络组建好。此时,才能把程序下载进去进行软硬件的调试。然而,就是这前期的组网问题,往往能够遇到千奇百怪的问题。不管经历过多少的弯路,最终都会把项目调试完成。只不过是顺利不顺利的问题。下面就我经历过的一些小白问题,跟大家分享下。1、模块已组态,但不可用,预设值/实际值不匹配:(插入的模块和组态的模块类型不同)期望的型号,与当前型号不匹配或是不可用。这样的故障最为常见了。那么,很有可能的原因:(1)就是检查组态型号和实际模块型号是否一致。不过这样的原因很小,因为大家做工程都很谨慎,(2)就是硬件上有些模块没能正确连接上,导致故障出现。也会出现此类故障现象。我遇到a.西门子ET200S上的高性能直接启动器模块与底板插接处,因为接线工的暴力,竟然把链接处的插针压弯了。表面上安装到位了。实际没有到位。这样导致ET200S故障,导致CPU也会出现上面的故障。当时,换了模块也不行,换了底板才发现插针已经损坏。b.实际安装的模块数量比软件组态中的数量模块多一个,但是多这个模块没有用,只是备用。但是,软件中的硬件组态下载到CPU中,硬件多一个模块,虽然没有接外边传感信号,但是它在ET200S接口模块上。这个故障让我很郁闷。大致一看,没有问题。都是正确的。但是,仔细检查,少组态了一个备用的模块。同样也会出现上面的故障信息。2、针对总线没有连通,我遇到的情况跟大家分享下。(1)ProfiNet网络不能正常连接a、网线硬件连接就是错误的。由于接线都是接线工来操作。根据在线诊断,定位故..
西门子S7-200PLV的PID控制算法中的一个问题
相关内容: S7-200PLV 算法 一个 问题 控制 西门子
请问PID控制中,当输出超出范围后执行MX=1.0-(MPn+MDn)和MX=-(MPn+MDn),这两条算法的作用是什么呢?"答:这两个公式用来对PID的输出限幅。S7-200的系统手册的PID"变量和范围"中有下面的内容:"输出变量是由PID运算产生的,所以在每一次PID运算完成之后,需更新回路表中的输出值,输出值被限定在0.0~1.0之间。如果使用积分控制,积分项前值要根据PID运算结果更新。这个更新了的值用作下一次PID运算的输入,当计算输出值超过范围(大于1.0或小于0.0),那么积分项前值必须根据下列公式进行调整:MX=1.0–(MPn+MDn)当计算输出Mn>1.0或MX=–(MPn+MDn)当计算输出Mn<0.0其中:MX是调整过的偏差的数值MPn是在采样时间n时回路输出比例项数值MDn是在采样时间n时回路输出微分项数值Mn是在采样时间n时回路输出数值"在系统手册的积分项部分,对积分项公式中的MX的解释如下:"MX是在采样时刻n–1时的积分项的数值(也称为积分和或偏差)。""积分和(MX)是所有积分项前值之和。在每次计算出MIn之后,都要用MIn去更新MX。"可见可以将MX视为PID的输出的积分部分MIn。PID的输出Mn=MPn+MIn+MDn=MPn+MX+MDn上面的两个公式实际上是用来对PID的输出限幅的。当Mn>1.0时,令Mn=MPn+MX+MDn=1.0,所以MX=1.0–(MPn+MDn)当Mn>0.0时,令Mn=MPn+MX+MDn=0.0,所以MX=–(MPn+MDn) ..
什么是硬件中断?
相关内容: 硬件 什么 中断
硬件中断,顾名思义就是线路断了,是不是?既然是DI模块,要么是0,要么是1,除非其自身模块短路报警,那么它能不能检测到线路断了?答:硬件中断不是线路断了,与硬件有关的中断称为硬件中断。S7-300的某些DI、AI、通信和功能模块都有可能产生硬件中断。PLC有很多内部或外部的事件是随机发生的,例如外部开关量输入信号的上升沿或下降沿、高速计数器的当前值等于设定值等,事先并不知道这些事件何时发生,但是它们出现时又需要尽快地处理它们。例如电力系统中的断路器跳闸时,需要及时记录事故出现的时间。高速计数器的当前值等于设定值时,需要尽快发出输出命令。PLC用中断来解决上述的问题。出现中断事件时CPU停止执行当前的任务,自动调用预先编写的对应的中断程序。
如何更改S7-1200的IP地址?
相关内容: 更改 S7-1200 如何 地址
进入设备组态后在网络视图中右手边的目录中选择对应的PLC,添加进网络视图中,点击PLC的网络接口,下面有属性、以太网地址(DP网的话就显示DP网地址),点击以太网地址(DP网的话就显示DP网地址),在"IP协议"修改"在项目中修改IP地址"
s7-200/300/400与第三方DCS的modbus通讯
相关内容: s7-200/300/400 第三方 MODBUS 通讯
siemensmylove:我有个项目,现有一个s7-200(CPU为224,只有一个通讯接口且已被占用),一个s7-200(CPU为226,两个通讯端口,PORT0空闲,PORT1占用),另外一个s7-300的CPU为315-2PN/DP(两个以太网口未用),还有一套S7-400H系统(CPU为414-7H)。现在想与第三方DCS进行modbus通讯,请问是否需要增加什么硬件和通讯线?另外如何写发送数据的程序?谢谢!kinkin:如楼上所说,你的CPU226PORT0可以作为MODBUS通讯(主、从都可以),S7-300系统用MODBUS通讯有方案,但是很昂贵。需要配CP341通讯模块,再加MODBUS主站或者从站授权(硬件狗)。那么我建议你使用一个S7-200CPU+EM277,CPU的接口进行MODBUS通讯,EM277作为PROFIBUS从站连接到S7-300上。而S7-400H系统,我还是建议你配CP341+MODBUS授权的方案。因为如果也用上面300的方案的话,还需要增加Y-LINK,这样的话,可能不会省很多钱,但方案看上去就复杂了不少。
STEP7程序中为什么要用OB35调用PID块
相关内容: OB35 STEP7 为什么 调用 程序
pid最早是采用运放等电路器件实现的,是一个连续调节的过程;但是数字电路里面要实现pid,就要进行"离散化",你可以查阅数字pid的相关资料。在大学自控专业的相关教材里面对此有详细的理论公式推导。在plc里面实现pid当然就是个数字pid,其中一个重要的因素是采样时间,说的具体点,就是数字pid——在西门子plc里面就是fb41这个模块需要定时调用!比如放在ob35里面,那么ob35(默认100ms)的执行周期就是数字pid的采样时间,这个100ms是数字pid运算公式里面的一个重要参数!所以,把fb41放在ob1里面执行,表面看也是可以执行的,但运算结果其实是偏离了理论目标。由于ob1扫描周期不固定,所以结果很难预料。单说运行是可以的,但用OB35调用,可以有好的控制精度不是说非要作在OB35里,而是指从OB35调用主要是0B35以固定周期运行,数字化PID的采样周期T必须是等间隔的,所以要用定时中断来触发。PID在定时中断中执行是因为定时中断准确,是以设定的周期执行的,除非有更高优先级的中断同时发生.而主程序的执行周期不是定长的,在主程序中的定时器的精度也受扫描周期的影响.OB35中断周期:按所设定的时间间隔产生中断。即采样周期:常指在周期性的采样系统中,当对一模拟量进行采样时,两次采样之间的时间间隔。原理上,PID的调节节奏应该与其采样周期一致,这是数学模型应与物理过程一致的要求。这也就是FB41要在OB35中周期调用且OB35的周期要与FB41采样周期一致的原因。当然,在OB1或其他FC、FB中调用FB41也是可以的,此时最好将OB1参数区中扫描周期作为FB41的采样周期。FB41"CON..
选用FB带来的一个额外的好处
相关内容: 额外 好处 选用 一个 带来
可以给功能块FB的背景数据块保存的局部变量(不包括TEMP)设置初始值。如果变量需要设置的值与它的初始值(或称默认值)相同,调用FB时则不用设置这类输入、输出参数的值。如果在OB100中设置了变量的初始值,以后调用它们时可以不设置该变量的值,这时将使用背景数据块中用OB100设置的初始值,或上一次执行FB后该变量的值。FC的变量因为没有专用的存储区,调用FC时应给所有的形参指定实参。综上所述,使用FB可少设置大量的参数,在FB的参数很多的情况下(例如PID控制器FB41),用户可以减少调用时设置参数的工作量。
怎样才能删除STEP7的硬件目录中的第三方DP从站?
相关内容: 第三方 从站 STEP7 删除 目录 才能 硬件 怎样
如果用S7-300/400作主站,用STEP7组态PROFIBUS网络。要组态第三方的DP从站,首先需要安装它的GSD文件。安装后可以在硬件目录窗口看到它。要想删除STEP7的硬件目录中的第三方DP从站,首先在安装STEP7的文件夹的"S7DATA">"GSD"子文件夹中删除安装的GSD文件。然后执行STEP7的硬件组态的"选项"菜单中的"更新目录"命令,将目录中的从站删除。
PLC自由口通信
相关内容: 自由 通信
S7200PLC与OMRON3G3JZ变频器通信通信连上了可以写频率程序数据发送完成了但接收不到数据不知道是怎么回事请教一下信息字符的开始信息字符的结束空闲线时间是什么意思这些在程序里面一定要设定吗?答:建议你仔细阅读S7-200系统手册通讯指令一节,使用RCV指令接收,需要设置起始和结束条件,即以哪种方式判断一帧数据的开始和结束,空闲线时间是用于判断起始条件的一种方式,即当总线上没数据传输超过空闲线时间后开始收到数据为一帧数据的起始,对应的接收完成也可用字符间隔时间来确定一帧数据结束,起始条件和终止条件必须设置,才能保证RCV指令正确接收到数据。
S7300/400中DBW和DIW有什么区别
相关内容: S7300/400 什么 区别
S7-300/400PLC有两个数据块寄存器,DB和DI使用DB寄存器打开数据块后,使用DBX、DBB、DBW、DBD等来访问数据块里的变量比如OPNDB1LDBW0//此时访问的就是DB1.DBW0使用DI寄存器打开数据块后,使用DIX、DIB、DIW、DID等来访问数据块里的变量比如OPNDI1LDIW0//此时访问的也是DB1.DBW0因为调用FB时,系统自动使用DI寄存器来打开背景数据块,所以通常DI寄存器又被称为背景数据块寄存器,如果在FB里不使用OPNDI打开数据块,直接使用DIW访问的就是背景数据块里的一个字变量,所以在FB里最好不要使用DI寄存器打开其它的数据,否则造成参数访问混乱。总之,看到DIW并不一定是访问的背景数据块,要看是否在FB里使用,是否使用了OPNDI打开了其它数据块,不在FB里DB寄存器和DI寄存器使用没有区别。
西门子PLC指令表IL与梯形图或语句表编程有啥不同
相关内容: 不同 语句 编程 梯形 指令 西门子
编程语言种类很多,各有各的优势,语句表和指令表类似,是编程语言的一种,在PLC中应用比较普遍,也是一种高级编程语言,PLC中语句表、梯形图、SCL等编程语言的特点: 1、顺序功能图(SFC-SeauentialFuctionChart)  这是位于其它编程语言之上的图形语言,用来编程顺序控制的程序(如:机械手控制程序)。编写时,工艺过程被划分为若干个顺序出现的步,每步中包括控制输出的动作,从一步到另一步的转换由转换条件来控制,特别适合于生产制造过程。  西门子STEP7中的该编程语言是S7 Graph。  2、梯形图(LAD-LAdderDiagram)  这是使用使用最多的PLC编程语言。因与继电器电路很相似,具有直观易懂的特点,很容易被熟悉继电器控制的电气人员所掌握,特别适合于数字量逻辑控制。  梯形图由触点、线圈和用方框表示的指令构成。触点代表逻辑输入条件,线圈 代表逻辑运算结果,常用来控制的指示灯,开关和内部的标志位等。指令框用来表示定时器、计数器或数学运算等附加指令。  在程序中,最左边是主信号流,信号流总是从左向右流动的。  不适合于编写大型控制程序。  3、语句表(STL-STatementList)  是一种类似于微机汇编语言的一种文本编程语言,由多条语句组成一个程序段。语言表适合于经验丰富的程序员使用,可以实现某些梯形图不能实现的功能。  4、功能块图(FBD-FunctionBlockDiagram)  功能块图使用类似于布尔代数的图形逻辑符号来表示控制逻辑,一些复杂的功能用指令框表示,适合于有数字电路基础的编程人员使用。功能块图用类似于与门、或门的框图..
如何从西门子低压产品上查找完整订货号?
相关内容: 低压 订货 完整 查找 产品 如何 西门子
我们在咨询技术问题或者购买备件时,如果能够知道产品的完整订货号,往往可以做到事倍功半,那么西门子低压产品的完整订货号在哪儿可以看到呢?下面我们就针对3WL3WT3VL3RT产品订货号位置进行一下说明。大部分客户都会选定抽出式的3WL和3WT,抽出式断路器有两部分组成,其中一部分是断路器本体,另一部分是导向框架。而为了方便客户单独订购备件,这两部分型号是分别印刷在断路器本体以及导向框架上的,我们可以在3WL正面左下方,3WT正面左上方查到断路器本体的型号,在导向框架侧面可以看到导向框架的单独订货号。而产品的完整型号分别在3WL的包装箱标签上以及3WT的导向框架右侧可以查到。对于3VL来说,在产品侧面也有几个标签,上面有不同的型号,这些型号都是产品各个部件的单独订货号,便于客户单独购买备件时使用。而产品的完整型号需要在产品正面手柄右下方位置查看,它是由3VL1~8开头的一串以数字和字母组成的订货号,这其中会有".."或"--"的符号,对应着这些符号会有向上或者向下的箭头指向对应的数字或者字母,查抄订货号时只需要将这些数字或字母填入到".."或"--"符号位置中便可以得到一个十六位的完整的产品订货号。3RT产品的完整订货号查找也是需要技巧的,不同规格的查询方法如下:1.对于S00规格的3RT产品,其完整订货号可以在产品正面右下角位置看到;2.对于S0~S3规格的3RT产品,其正面右下角也可以看到一串订货号,但是这串订货号的第十位以及第十一位是"..",这两位表示的是线圈电压,具体的型号可到线圈接线端A1,A2中间的标签上查找,将查到的型号(由一个字母和一个..
西门子PLC的电源指示灯不亮怎么处理
相关内容: 怎么 指示灯 处理 西门子 电源
西门子PLC电源灯不亮原因1、检查是否有终端螺丝松动或者导线断开的情况;  西门子PLC电源灯不亮原因2、更换电源模块。  西门子PLC电源灯不亮原因3、确认外部供电电源是否正常;  西门子PLC电源灯不亮原因4、OMRON的AC110/220通用的电源模块会有短接片,短接即为AC110V,断开即为AC220V;
西门子PLC怎样缩短程序扫描周期
相关内容: 缩短 周期 怎样 扫描 程序 西门子
 提高PLC运行效率,缩短完成相同任务时的执行时间。  1、没必要共享信号时,放置在同一网络里的多条指令,会产生额外的进出栈操作(具体可以转成STL来分析),而且如果不是逻辑要求,应避免横向串联,这样至少可以减少一个"与"指令。好处仅仅是放在一个网络里,感觉紧凑一点。  2、合理使用立即IO指令(尽量减少使用)节约PLC处理立即指令的转换时间。  3、计算中尽量使用计算结果存储器,而不用过渡存储器。  4、可以用"字"的时候尽量避免用"双字",可以用整数时,尽量避免用实数。  5、尽量避免数据类型转换,不得不用时,尽量用AC存放中间变量,减少转换次数。或者编程时先预留出存储空间,比如:用VW2存整数时,VW0空出不用,就可以直接以VD0的形式来进行访问VW2中的数据;  6、减少非必要网络扫描,把可以设条件执行的网络(特别是AIW、AQW),归类到子程序中作条件调用(例如定时中断);  7、在保证工艺要求前提下,适当减小发生中断的频率;
西门子PCS7的PID整定器控制器优化步骤
相关内容: PCS7 步骤 优化 控制器 西门子
  从西门子PCS7V5.1开始,可以使用调试工具"PCS7PIDTuner"来优化控制器。这个工具可以通过测量方式识别控制对象参数并给出优化参数的设置建议。如果用户需要,可以立刻使用这些参数。  从PCS7V7.1开始,可以优化"PCS7Library"和"PCS7AdvancedProcessLibrary"中的控制器,以及有类似功能的控制器。同样也可以调整步进控制器的马达启动时间。  要求:  西门子PCS7的PID整定器软件安装在工程师站上。在正常PCS7的工程师站安装中就可以安装此工具。  安装相应授权。从PCS7V7.1开始,不再需要额外的PCS7PID整定器授权。  CFC已经编译并下载到PLC中。  ES和PLC之间有在线连接。  对于控制回路需要了解以下几方面:  1.控制对象的过程特性(是否存在积分环节)  2.控制回路状态(手动或者自动)  3.控制器的阶跃工作点  4.控制器类型(比例积分微分,比例积分或者比例控制器)  说明:  以下以连续型的比例积分控制器为例解释如何使用PCS7的PID整定器。  注意:  1.请注意优化过程会干扰实际系统运行。如果影响了实际过程运行,在相应优化步骤中会有提示。用户需要知道可能出现的后果。  2.在优化工作之前,对操作工做合适的人员安排。  3.优化过程中,密切关注过程曲线记录。  序号步骤  1为控制器优化做准备  优化之前,控制器需要切换到"优化"模式。可以在CFC中或者在上位机OS面板上设置。  在CFC中将"OPTI_EN"管脚设为"Enable",这个管脚默认隐藏。如果在OS面板上,在"Parameter"视图中勾选"EnableOptimiz"选项。  2启动PCS7的PID整定器 ..
西门子PLC操作系统更新方法
相关内容: 更新 操作系统 方法 西门子
更新操作系统时,应当始终更新为相关订货号产品可用的最新版本。以前版本的操作系统可作为备份,以允许用户恢复到最初的版本,尽管迄今为止还未发现有这样做的必要。CPU操作系统的最新版本适用于该订货号的所有版本。用户可以通过微存储卡执行更新或者在线更新:1.微存储卡:创建操作系统更新卡的前提条件:·存储容量为4MB(订货号6ES7953-8LM20-0AA0)或更高的微存储卡·STEP7V5.1+SP2或更高版本·带有外部PROM编程器(6ES7792-0AA00-0XA0)的PC或带有适配器(6ES7798-0BA00-0XA0)的PG720/740或FieldPG/PowerPG,用于编程微存储卡使用STEP7创建操作系统更新卡的步骤:1.下载所需的CPU文件。2.双击文件名解压缩文件3.在SIMATICManager中执行"File/S7MemoryCard/Delete"命令,删除微存储卡。4.在SIMATICManager中选择"PLC/UpdateOperatingSystem"编程操作系统,然后选择目标目录并打开CPU_HD.UPD文件启动编程过程。5.当屏幕上出现"Thefirmwareupdateforthemodulewithordernumber6ES7315-2EH13-0AB0wastransferredsuccessfullytotheS7memorycard"(订货号为6ES7315-2EH13-0AB0的模块的固件更新内容已经成功传送至S7存储卡)提示消息时,操作系统更新卡的编程即告完成。执行操作系统更新:1.切断CPU所在机架的电源(PS)2.将PLC从通信网络断开3.将准备好的操作系统更新卡插入CPU中4.接通CPU所在机架的电源(PS)5.操作系统将从微存储卡传送到CPU内部闪存EPROM。传送期间CPU的所有LED(FRCE、RUN、STOP、SF、BF)都将点亮。6.大约2分钟后,操作系统更新完成。此时CPU上的STOPLED慢速闪..
西门子S7-200PLC模拟量数据格式
相关内容: S7-200PLC 格式 数据 西门子 模拟
由于S7-200的模拟量输出模块都需要占占两个输出通道。即使第一个模块只有一个输出AQW0,第二个模块的输出地址也应从AQW4开始寻址(AQW2被第一个模块占用),依此类推。所以自然不会有输出了。在S7-200中,单极性模拟量输入/输出信号的数值范围是0-32000;双极性模拟量信号的数值范围是-32000-+32000。格式:输入:AIW[起始字节地址]——如AIW6输出:AQW[起始字节地址]——如AQW0每个模拟量输入模块,按模块的先后顺序和输入通道数目,以固定的递增顺序向后排地址。例如:AIW0、AIW2、AIW4、AIW6、AIW8等。对于EM231RTD(热电阻)两通道输入模块,不再占用空的通道,后面的模拟量输入点是紧接着排地址的。温度模拟量输入模块(EM231TC、EM231RTD)也按照上述规律寻址,但是所读取的数据是温度测量值的10倍(摄氏或华氏温度)。如520相当于52.0度。注意:如果没有把握,可以在线检测到模块的起始地址,方法是:STEP7-Micro/WIN中的菜单"PLC>Information"里在线读到。关于SiemensS7-200的模拟量模块,有2个大家(尤其是初学者)需要注意的:1、关于地址,其实S7-200的地址很简单,跟相对位置有关,每个模拟量输入模块,按模块的先后顺序地址为固定的,顺序向后排。可以通过编程软件information菜单来在线查看;说需要注意的就是地址都是偶数,比如AIW0AIW2,绝对没有AIW1之类的,输出地址也需要注意,比如EM235虽然只有1个通道输出,但是占用2个地址,下一个模块必须隔个地址输出,比如有CPU旁扩展2个相连的EM235,那么模拟量输出地址分别为AQW0和AQW4;2、关于拨码开..
S7-200PLC如何在运行中写入程序
相关内容: S7-200PLC 写入 何在 程序 运行
如题,在调试改个常开常闭点都需要在STOP模式下才能下载,请问各位高手,如何在不停机的情况下写入程序。答:可以的需要做到以下两点就OK:1、系统块的属性里面的最后一项--》增加存储区---》禁止运行模式编辑以增加存储区前的方框内没有打勾2、连接PLC以后,在调试菜单下选择--》RUN(运行)模式下编辑程序
西门子S7-300的FC里使用定时器需要注意什么问题?
相关内容: S7-300 注意 问题 需要 什么 定时器 使用 西门子
不少贴子里说FC调用时要小心特别是块内有计时器和计数器时,不知道要注意些什么?答:在FC里使用像T0、T1这样的定时器,如果多次调用就有问题了,一个定时器不能同时用于两台设备!解决的方法是在FC中创建一个参数类型为Timer(定时器)的输入参数,在调用时为该参数指定不同的实参,例如设备A的实参为T0、设备B的实参为T1等等。西门子结构化编程的精髓和相对其他PLC(包括S7-200)的优势就在于FB、FC的可移植性和可重用性。其基本规则是在FB、FC内部不使用任何全局变量,全部使用局部变量。这样的FB、FC的内部程序不作任何修改,就可以在同一项目中多次调用,或者将它们移植到其他项目中去。FC、FB众多的参数类型能实现这一要求。编程人员在工作中积累了大量的这样的FC、FB后,就可以像搭积木一样迅速地创建出满足不同客户要求的类似系统的程序。作为编程人员应该养成不在FB、FC内部使用全局变量的习惯!
PLC的面向对象编程
相关内容: 面向 对象 编程
面向对象编程是计算机高级语言的一种先进的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多优秀特点如"继承",甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程的基本概念就是类和类的实例(即对象),我们只需要使用这种概念就可以了。在计算机编程中我们需要把一些事物抽象和归纳,才能编写类,而在工业控制系统中,控制对象如:电机,阀等等是很明显的控制类别,不需要抽象就可以很明显的针对它们编写类,以下将会用到西门子的Step7编程语言和施奈德的Unity编程语言来讲解PLC的面向对象编程。一、实现方式在Step7中使用功能块(即FB)编程,一谈到此大家就会想到西门子提出的模块化编程,不错,就是这个模块化编程,但西门子提出的模块化、背景数据块、多重背景等名词并不能让大家很明白的理解和使用这种优秀的设计理念。如果大家从面向对象编程的角度去理解,则可以很好的理解这种设计模式。"FB块"被看成"类",它可以被看成是对相似的控制对象的代码归纳,如对MM440的变频器可以编写FB块:MtrMM440,这在面向对象编程中称为"类",当需要编程控制具体的电机时,可以给它分配一个背景DB块,在面向对象编程中称为类的实现(即创建类的实例:对象),当需要控制多个电机时,可以分配不同的背景DB到这个FB块,即创建类的多个实例。Step7中有另外一种程序块,即FC块,以FC块为主的编程在西门子中称为结构化编程,这也可以类比于计算机编程中的面向过程编程,即纯粹以函数为主体的编程。施奈德的Unity软件编程可以更好的理解面向对..
西门子PLC Modbus地址问题原因分析
相关内容: 原因分析 MODBUS 问题 地址 西门子
  Modbus地址实际上分为两种情况即PLC作Modbus主站,Modbus地址和PLC手册里的地址一与PLC作从站,PLC不用管什么Modbus地址。  Modbus地址实际上分为两种情况。下面以西门子S7-200/S7-200SMART/和S7-1200为例来说明:  第一种情况:PLC作Modbus主站,Modbus地址和PLC手册里的地址一致,例如作主站的S7-200的MBUS_MSG指令用于向Modbus从站发送请求消息,和处理从站返回的响应消息。要读取从站(另一台S7-200)的I0.0开始的地址区时,它的输入参数Addr(Modbus地址)为10001。S7-200从站保持寄存器的V区起始地址为VB200时,要读取从站VW200开始的V存储区时,保持寄存器的地址是40001。  第二种情况:PLC作从站,PLC不用管什么Modbus地址,等着主站来读写它的地址区就是了。  主站的计算机软件(例如DCS或组态软件)的编程人员需要编写实现Modbus通信的程序,首先需要确定ModbusRTU的报文结构。他们一般不熟悉PLC,因此PLC的编程人员往往需要和上位机软件的编程人员一起来讨论Modbus的报文结构。  最容易出问题的就是报文里Modbus地址与PLC存储区地址的对应关系。曾经有工作人员做过的一个系统的上位机是专用的组态软件,通过分析GEPLC手册给出的CRC的循环异或计算实例每一步的中间数据,编写出了CRC计算的C语言程序。通过实验验证了Modbus报文结构和CRC的计算的可行性。  S7PLC手册给出的Modbus地址与Modicon公司和GE公司PLC使用的地址相同,是基于1的地址,即同类元件的首地址为1。而西门子PLC采用的是基于0的地址,即同类元件的首地址为0。Modbus报文中西门子PLC的Modbus..
西门子S7-200plc如何在程序块下创建或添加自己的库
相关内容: S7-200PLC 添加 创建 何在 自己 程序 西门子
用户可以把自己编制程序集成到编程软件Micro/WIN中。这样可以在编程时调用实现相同功能的库指令,而不必同时打开几个项目文件拷贝。指令库也可以方便地在多个编程计算机之间传递。新建库操作步骤:第一步:在Micro/WIN的File(文件)菜单中,选择CreatLibrary...(建立库)命令;或者用鼠标右键单击指令树的Libraries(指令库)分支,选择CreatLibrary...第二步:在CreatLibrary对话框中选择哪些子程序要集成为指令库第三步:在Properties(属性)标签中设置指定指令库名称指定要生成的库文件的目录路径指定版本信息第四步:在Protection(保护)标签中设置密码第五步:按OK按钮确定,输出指令库文件指令库文件扩展名为.mwl,缺省情况下存在Micro/WIN安装目录下的lib文件夹中。库文件可以作为单独的文件拷贝、移动。添加指令库第一步:在Micro/WIN的File(文件)菜单中选择Add/RemoveLibraries...(添加/删除指令库)命令;或者在指令树的Libraries(指令库)分支上单击鼠标右键,选择Add/RemoveLibraries...第二步:按Add(添加)按钮,选择新定义的库文件路径。用户自定义库将自动添加到Micro/WIN指令树的Libraries分支下。调用用户定义指令库指令库的使用方法与子程序基本一样。..
西门子上位机WINCC怎样与外部变量进行连接
相关内容: 上位 WinCC 变量 进行 怎样 外部 连接 西门子
创建新连接外部变量只能在与自动化系统连接的基础上创建。如果还没有需要的连接,必须首先创建该连接。先决条件必须安装所需要的通讯处理器和相关的硬件驱动程序。还必须安装期望的通讯驱动程序,例如"SIMATICS7ProtocolSuite"步骤步骤1扩展"变量管理"中通讯驱动程序的视图。2选择期望的通道单元,例如"PROFIBUS"。3在用于通道单元的弹出式菜单中,选择"新建驱动程序连接..."。4在"常规"标签卡的"名称"域中,输入在项目范围内唯一的用于连接的名称。5单击"属性"按钮,打开"连接参数"对话框。设置该连接所需的参数。有关详细信息,请参考各相应通道的帮助文档。6通过单击"确定",关闭所有的对话框。组态外部变量创建变量的过程对于所有数据类型基本相似。然而,对某些数据类型进行特殊设置。(步骤5-7)。先决条件必须安装所需要的通讯处理器和硬件驱动程序。还必须安装期望的通讯驱动程序,例如"SIMATICS7ProtocolSuite"。为了使用通道单元,必须建立连接(例如"PROFIBUS")。步骤步骤1从所期望的连接的弹出式菜单中选择"新建变量"。"变量属性"对话框将打开。2在"常规"标签卡上,"名称"域中,输入在WinCC项目范围内唯一的变量名,例如"WinCCTag_01"。3设置变量的"数据类型",例如"浮点数64位IEEE754",在相关域中。4单击"选择"打开"变量属性"对话框,在AS中设置变量的地址区域。在二进制或8位变量的情况下,如果通道不支持按位/字节访问,在"变量属性"对话框前会显示"位/字节变量"对话框。要获得更多信息,请参考"BinWrite机制"。单击"确定"按钮,关闭"位/字节变量"或"变量属性"对话框。5在..
西门子S7-200子程序出现问题的原因
相关内容: 原因 出现 S7-200 问题 子程序 西门子
在OB1中两次调用上一个日志中的子程序SBR_0,在运行程序时发现,接通I0.0外接的小开关,Q0.0和Q0.1同时变为ON。这是因为分配给SBR_0的输出参数"电动机"的地址为L0.2,第一次调用SBR_0之后,L0.2的值为ON。第二次调用SBR_0时,虽然起动按钮I0.2为OFF,但是因为两次调用SBR_0时局部变量区是公用的,此时输出参数"电动机"(L0.2)仍然为ON,所以第二次调用SBR_0之后,由于执行图4-40中的程序,输出参数"电动机"使Q0.1为ON。子程序的局部变量一定要遵循"先赋值后使用"的原则。S7-200的子程序使用临时变量来传递参数,OUT类型的参数不会把实参读入形参,所以这里使用OUT形参的触点就出现了临时变量未赋值先使用的情况。将输出参数"电动机"的变量类型改为IN_OUT就可以解决上述问题。这是因为两次调用子程序,参数"电动机"返回的运算结果分别用Q0.0和Q0.1保存,在第二次调用子程序SBR_0,执行"O#电动机"指令时,因为"电动机"是IN_OUT参数,使用的是前一个扫描周期保存到Q0.1的值,与本扫描周期第一次调用子程序后参数"电动机"的值无关。简单地说,对于有记忆功能的电路,需要用存储单元来保存要记忆的变量值。S7-300的FB可以用静态变量来保存,而S7-200的子程序没有静态变量,只有用IN_OUT变量的实参(本例中的Q0.1)来保存变量值。..
西门子PLC整数算术运算指令
相关内容: 整数 运算 算术 指令 西门子
在STEP7中可以对整数、长整数和实数进行加、减、乘、除算术运算。算术运算指令在累加器1和2中进行,在累加器2中的值作为被减数或被除数。算术运算的结果保存在累加器1中,累加器1原有的值被运算结果覆盖,累加器2中的值保持不变。CPU在进行算术运算时,不必考虑RLO,对RLO也不产生影响。学习算术运算指令必须注意算术运算的结果将对状态字的某些位产生影响,这些位是:CC1和CC0,OV,OS。在位操作指令和条件跳转指令中,经常要对这些标志位进行判断来决定进行什么操作。l+I16位整数相加指令l-I16位整数相减指令l*I16位整数相乘指令l/I16位整数除法指令l+D32位整数相加指令l-D32位整数相减指令l*D32位整数相乘指令l/D32位整数除法指令lMOD32位整数除法取余数指令例3.7.1LMW0//将MW0中的值装入累加器1低字LMW2//将MW2中的值装入累加器1低字,累加器1低字中的原值移入累加器2低字+I//将累加器l低字和累加器2中的低字相加TMW10//将运算结果送到MW10*FBD格式与STL语句表指令不同处在于多了使能输入端EN和使能输出端ENO。只有当I0.0=1时,才进行加法运算。如果运算的结果超出范围或者I0.0=0,则Q4.0=0。..
西门子PLC实数和长整数间的转换
相关内容: 实数 整数 转换 西门子
指令说明RND将实数化整为最接近的整数。RND+将实数化整为大于或等于该实数的最小整数RND-将实数化整为小于或等于该实数的最大整数TRUNC取实数的整数部分(截尾取整)因为实数的数值范围远大于32位整数,所以有的实数不能成功地转换为32位整数。如果被转换的实数格式非法或超出了32位整数的表示范围,则在累加器1中得不到有效结果,而且状态字中的OV和OS被置1。上面的指令都是将累加器1中的实数化整为32位整数,因化整的规则不同,所以在累加器1中得到的结果也不一致,如下表执行的指令累加器l内容说明化整前化整结果RND+99.5+100将实数化整为最接近的整数RND++99.5+100将实数化整为大于或等于该实数的最小整数RND-+99.5+99将实数化整为小于或等于该实数的最大整数TRUNC+99.5+99只取实数的整数部分(截尾取整)
西门子PLC的Modbus地址的问题
相关内容: MODBUS 问题 地址 西门子
Modbus地址实际上分为两种情况。下面以西门子S7-200/S7-200SMART/和S7-1200为例来说明:第一种情况:PLC作Modbus主站,Modbus地址和PLC手册里的地址一致,例如作主站的S7-200的MBUS_MSG指令用于向Modbus从站发送请求消息,和处理从站返回的响应消息。要读取从站(另一台S7-200)的I0.0开始的地址区时,它的输入参数Addr(Modbus地址)为10001。S7-200从站保持寄存器的V区起始地址为VB200时,要读取从站VW200开始的V存储区时,保持寄存器的地址是40001。第二种情况:PLC作从站,PLC不用管什么Modbus地址,等着主站来读写它的地址区就是了。主站的计算机软件(例如DCS或组态软件)的编程人员需要编写实现Modbus通信的程序,首先需要确定ModbusRTU的报文结构。他们一般不熟悉PLC,因此PLC的编程人员往往需要和上位机软件的编程人员一起来讨论Modbus的报文结构。最容易出问题的就是报文里Modbus地址与PLC存储区地址的对应关系。我做过的一个系统的上位机是专用的组态软件,我通过分析GEPLC手册给出的CRC的循环异或计算实例每一步的中间数据,编写出了CRC计算的C语言程序。通过实验验证了Modbus报文结构和CRC的计算的可行性。S7PLC手册给出的Modbus地址与Modicon公司和GE公司PLC使用的地址相同,是基于1的地址,即同类元件的首地址为1。而西门子PLC采用的是基于0的地址,即同类元件的首地址为0。Modbus报文中西门子PLC的Modbus地址也采用基于0的地址。PLC系统手册中的Modbus地址的最高位用来表示地址区的类型,例如I0.0的Modbus地址为10001。因为地址区类型的信息已经包含在报文的功能码中了..
西门子PLC的计数指令
相关内容: 计数 指令 西门子
  西门子plc的每次向上计数输入执行从关闭至打开转换时,向上计数(CTU)从该计数器的当前值向上计数。重设输入打开或执行重设指令时,计数器被重设。达到最大值(32,767)时,计数器停止。  每次向上计数输入执行从关闭至打开转换时,向上/向下计数器(CTUD)向上计数,每次向下计数输入执行从关闭至打开转换32,767)时,向上计数输入的下一个上升边缘导致当前计数变成最小值(32,768)。与此相似,达到最小值(-32,768)时,向下计数输入的下一个上升边缘导致当前计数变成最大值(32,767)。  向上和向上/向下计数器有一个保持当前计数的当前值。计数器还有一个预设值(PV),每次执行计数器指令时,将预设值与当C位)打开。否则,C位关闭。  每次向下计数输入执行从关闭至打开转换时,向下计数器(CTD)从该计数器的当前值向下计数。载入输入打开时,计数器重设计数器位,并将预设值载入当前值。达到零时,计数器停止,计数器位(C位)打开。  当您使用西门子plc重设指令重设计数器时,计数器位被重设,计数器当前值被设为零。使用计数器号码引用该计数器的当前值和C位。  注释:  因为每台计数器有一个当前值,请勿将相同的号码指定给一台以上计数器。(向上计数器、向上/向下计数器和向下计数器存取相同的当前值。)..


正在加载... 正在加载...


正在加载... 正在加载...



正在加载...

正在加载...

相关栏目


正在加载... 正在加载...

STEP7-Micro/WIN编程软件的通信选项设置..
当利用编程器或编程计算机进行程序的传送、现场编辑、调试与诊断时,为了建立编程器或..

正在加载...

西门子PLC触点串联指令A(And)、AN(And not)..


正在加载...

热门

应用 变频器 系统 西门子 控制 三菱 系列 基于 技术 电机 编程 设计 控制器 控制系统 伺服 方案 程序 如何 单片机 方法 电梯 什么 故障 使用 指令 通讯 功能 FX2N 总线 解决方案 触摸屏 问题 教程 连接 分析 模块 高压 实现 传感器 软件 s7-200 数据 详细 原理 S7-200plc 网络 输出 通信 可编程 输入 WeinView 步进 采用 设定 实例 监控系统 无线 智能 机上 解决 维修 ModBus 运行 行业 现场 工业 交流 安全 发展 LINUX 设备 设置 操作 Profibus DEVELOPER 检测 监控 显示 自动 PROFIBUS-DP 台达 参数 电路 可以 远程 S7-300PLC Omron zigbee 进行 改造 接口 安装 WinCC 特点 自动化 信号 方式 处理 及其 CC-link 基本 装置 siemens 电气 定位 一个 节能 原因 选择 VxWorks 嵌入式 视觉 以太网 施耐德 uCos 自动扶梯 放大器 ucLinux 监测 机器 中断 松下 mm440 串口 丹佛斯 案例 工具 变频

热门文章

正在加载...

三菱 | 西门子 | 施耐德 | 欧姆龙 | 松下自动化 | 永宏自动化| 其它自动化 | PLC课件 | 单片机 | 变频器 | 电梯知识 | 电梯维修| 电梯安装 | 电梯论文 | 电梯事故

常用资料| 印刷| 电工| 电子| 工控| 论文| 制冷| 包装| 数控| 菜谱| 短信| 范文| 驾车| 安全| 创业| 笑话| 人生| 故事| 宝宝| 幼儿| 小学| 初中| 高中| 古典文学