西门子S7-1200间接寻址指令的应用
西门子S7-1200的间接寻址需要通过数据块中的数组来实现。指令FieldRead通过索引(又称为下标)变量从数组中读取数值,指令FieldWrite 通过索引变量向数组中写数值,使用这两条指令可以实现间接寻址。 索引变量是间接寻址中的地址指针,它的值是要读写的数组元素的索引值。地址指针就像收音机调台的指针,改变指针的位置,指针指向不同电台。改变地址指针中的索引值,指针“指向”
0评论2024-09-11115
STEP7-Micro/WIN编程软件的程序结构组织
程序结构的组织事实上是确定所编入的子程序、中断程序的调用次序。在完成全部子程序、中断程序的输入与编辑后,可以在主程序中进行。在主程序中,可以首先编辑子程序、中断程序的调用条件(触点的逻辑条件),并通过打开指令树中的指令文件夹(Instructions)打开指令分类文件夹Call Subroutines,再双击相应的子程序号,即可输入子程序、中断程序的调用功能框,以完成程序的组织过程(见图
0评论2024-09-1192
西门子S7-300/400PLC的程序结构
西门子S7-300/400的PLC程序结构随着编程人员所采用的程序设计方法的不同而不同。一般而言,程序设计可以采用线性化编程、调用式编程、结构化编程的方法(如图所示)。 采用线性化编程时,所有程序指令都编写在一个连续的程序块——组织块OB1中,无须编制程序块、功能块、数据块等。 采用调用式编程的程序由组织块OB、程序块(FC)、功能块(FB)、系统程序块(SFC)、系统功
0评论2024-09-1170
西门子PLC S7-200的寻址方式
S7-200编程语言的基本单位是语句,而语句的构成是指令,每条指令有两部分:一部分是操作码,另一部分是操作数。操作码是指出这条指令的功能是什么,操作数则指明了操作码所需要的数据所在。所谓寻址,就是寻找操作数的过程。S7-200 CPU的寻址分三种:立即寻址、直接寻址、间接寻址。1.立即寻址在一条指令中,如果操作码后面的操作数就是操作码所需要的具体数据,这种指令的寻址方式就叫立即寻址。如
0评论2024-09-1175
西门子PLC整数算术运算指令
在STEP 7中可以对整数、长整数和实数进行加、减、乘、除算术运算。算术运算指令在累加器1和2中进行,在累加器2中的值作为被减数或被除数。算术运算的结果保存在累加器1中,累加器1原有的值被运算结果覆盖,累加器2中的值保持不变。CPU在进行算术运算时,不必考虑RLO,对RLO也不产生影响。学习算术运算指令必须注意算术运算的结果将对状态字的某些位产生影响,这些位是:CC1和CC0,OV,OS
0评论2024-09-11172
S7-200自由口通信,小错误引发大麻烦
西门子S7-200的自由口通信需要通过编程设置串口的工作模式,安排发送和接受指令的触发顺序,还要设定接收的起始和结束条件。对于刚刚开始使用s7-200的工程师来说,的确有很多细微处易犯错误。一般碰到客户抱怨通信不上的问题,就要逐一帮客户确认编程配置是否正确。虽然麻烦,不过逐条查下去,总能查到错误所在并解决问题。但是有一次客户遇到的问题颇出人意料,还真耗费了一些时间。 客户反应在编写了自由口通
0评论2024-09-1151
西门子PLC的常用触点与线圈
由于编程软件的不同,西门子S7-200与S7-300/400 PLC用于梯形图编程的逻辑符号有所区别,具体如表所示。表中有部分符号为非通用型符号,只能在S7-200中使用(或只能在S7-300/400中使用)。
0评论2024-09-1153
Modbus数据地址在S7-200中的表示
Modbus地址与Modbus的功能码是两个概念。根据 Modbus 通信协议,Modbus 数据的地址使用 0*x、1*x、3*x 和 4*x 的形式,分别表示数字量输出、数字量输入、模拟量输入等数据地址。在使用 S7-200 的指令库时,Modbus 数据地址与 S7-200 的 I/O 和数据存储区地址间有特定的对应关系。Modbus 地址所访问的数据,是通过各种“功能”读写而来。功能
0评论2024-09-1179
西门子S7-PLCSIM V5.2仿真软件的功能
通过西门子S7-PLCSIM V5.2仿真软件,可以对系统中的组织块OB、系统功能块SFB、系统程序块FC进行仿真。在S7-PLCSIM V5.2仿真软件上,不仅可以对指令表STL、梯形图LAD、逻辑功能图SFB程序进行仿真,还可以对S7 Graph、S7 HiGraph、S7-SCL和CFC程序进行仿真操作。 S7-PLCSIM V5.2仿真软件的主要功能如下: ①可以
0评论2024-09-11118
西门子PLC CPU315自动停机的处理方法
设备出现生产线不能开机,检查为CPU自动停机所致,停机时出现SF系统故障灯亮,CPU STOP, BF灯不亮,说明不是从站导致停机的,停电或将CPU上开关从RUN转到STOP再转到RUN,CPU又工作正常,在线联机诊断,报警内容很多,最重要的报警内容就是: 事件 29 / 100: 事件 ID 16# 494D 由 I/O 错误引起的 STOP 模式
0评论2024-09-11107
梯形图语言中使用比较指令在定义符号表时出现问题
问:使用梯形图语言编程时,采用了比较指令,是CMP==I,输入分别是MW10和MW12,然后想在符号表里定义这两个变量,类型分别是WORD型,但是这样定义后,程序就错了。在比较指令输入那边显示红色。请问如果我想在符号表里定义这两个变量,应该怎样申明,程序里面要做什么改动?答:数据类型定义为INT即可字(WORD),16位整数(INT)都是STEP 7的基本数据类型区别如下(以下内容抄写书
0评论2024-09-1179
运用VBS编程实现每分钟计算一次PLC变量值
我想在WINCC6.2尝试VBS编程,计算生产设备实时坏品率,我有两个PLC变量:a1(unsigned 32 int)、a2(unsigned 16 int);WINCC6.2脚本变量a3(script tag float 32)。想实现每分钟计算一次:a3=a2/a1*100,请问VBS怎样编程才能实现这个功能?答:先建立变量tag1,tag2,tag3连接a1,a2,a3.vbs中:d
0评论2024-09-1198
新手学习西门子PLC语句表的几点建议
我接触到很多同行,他们都说S7-300/400的语句表(即指令表)语言难学,最近在西门子的S7-300/400论坛上,看到有网友感叹“语句表好难学啊!”。 梯形图为什么好学?其原因很简单,梯形图来源于继电器电路图,以触点和线圈为主,因此熟悉继电器控制的电气人员感觉很容易学。 1.语句表非学不可 1)语句表的指令比梯形图多,只有语句表才有下列指令:定时器/计数器的FR指
0评论2024-09-11112
S7-200编程软件中系统块的设置
S7-200编程软件系统块中的数据掉电保持范围0默认的是数据区VB偏移量0单元数目10240,范围1默认的是数据区VB偏移量0单元数目0,两者有什么关系,互相影响吗?答:互相不影响,只要设置任一个都有效。该保存区域断电后靠超级电容记录数据,一般超级电容可以维持数据记忆时间为50-100小时左右。跟使用时间和温度关联。如果想长期保存数据,可以将数据写入EEPROM,永不丢失。或加电池模块,电池
0评论2024-09-1193
s7-200 plc的数据区 输入/输出映像寄存器
(一)数字量输入和输出映象区1.输入映象寄存器(数字量输入映象区)(I)数字量输入映象区是S7-200 CPU为输入端信号状态开辟的一个存储区。输入映像寄存器的标志符为I,在每个扫描周期的开始,CPU对输入点进行采样,并将采样值存于输入映象寄存器中。输入映象寄存器是PLC接收外部输入的开关量信号的窗口。可以按位、字节、字、双字四种方式来存取。(1)按“位”方式:从I0.0-I15.7,共有1
0评论2024-09-1160
西门子S7-PLCSIM仿真软件的其他仿真对象选择
为了选择仿真的对象,在S7-PLCSIM应用窗中设置有S7-PLCSIM仿真用的“仿真对象选择”快捷按钮,用于指定与显示仿真对象。按钮布置如图14-4.2所示,点击按钮可以逐一打开仿真的对象。 图中自左向右,对应按钮所打开的仿真对象依次为:输入(Input Variable)、输出(Output Variable)、标志寄存器(M)、定时器(T)、计数器(C)、通用变量(Gen
0评论2024-09-10133
西门子PLC自制一个周期、占空比可调脉冲
一个简单的例子,应用一个定时器来调节,即使该定时器按特定的数值为1或0:AN M0.0 L S5T#1S // 值可设,例如1秒SD T1A T1=M 0.0L T1 // 取定时器内容T MW26L MW26 // 通过变量表实时观察T1的最大值(16进制),例如,与其的二分之一比较。这个数根据实际需要可调。L
0评论2024-09-10107
西门子PLC参考数据的基本设置
为了查看PLC程序中的参考数据,需要在STEP7中进行基本的设置,步骤如下: ①在SIMATIC管理器中打开项目,选择逻辑块文件夹。 ②执行菜单指令“Option”一“Reference Data”一“Generate”,可以在对话框中(见图14-1.1)选择是否重新生成( regenerated)或修改(updated)参考数据。修改( updated)参考数据只有在已经建立了参考
0评论2024-09-10147
西门子PLC的特殊的触点与线圈说明
由表9-1.1可见,在西门子S7系列PLC中,除部分几乎所有PLC都通用的触点符号外,还有部分特殊符号,说明如下。 以使用“指令执行结果小于等于0”的触点为例,其程序如图9-1.4所示。图中,当IO.O=l时执行“MW10 -MW20”的运算,如MW10 - MW20≤0,则QO.O=l。
0评论2024-09-1077