PLC的比较赋值指令,值得收藏
按功能分类: 按对象分类:
等于 整数比较指令(INT) 16位
不等于 双整数比较指令(DINT)32位
大于或等于 浮点数比较指令(REAL)32位
小于或等于
大于
小于
整数等于比较指令
双整数大于比较指令
浮点数小于或等于比较指令
赋值指令
赋值指令应用举例
PLC编程,看多了梯形图,这样的赋值语句你习惯吗
赋值语句
1) 格式及功能
是结构化文本中最常用的语句之一,作用是将其右侧表达式产生的值赋给左侧的操作数(变量
或地址),使用“:=”表示。
具体格式如下:
<变量>:=<表达式>;
示例:分别给两个布尔型变量赋值,风扇打开,加热器关闭。
2) 使用中的注意事项
a) 数据类型的匹配。如果赋值操作符的两侧数据类型不同,应调用数据类型转换函数。例如,
rVar1 是 Real 实数类型,iVar1 是 Int 整数类型,当 iVar1 赋值给 rVar1 时,应调用 INT_TO_REAL
的转换函数(转换函数后期介绍)。例如:
rVar1:= INT_TO_REAL(iVar1);
b) 一行中语句可以有多个,例如,arrData[1]:=3; arrData[2]:=12; 该两句指令可以写在一行。
函数及功能块 控制语句
函数和功能块控制语句用来调用函数和功能块。
1) 函数控制语句
函数调用后直接将返回值作为表达式的值赋值给变量。
例如,rVar1:=SIN(rData1);
语句中,调用正弦函数 SIN,并将返回值赋值给变量 rVar1。其语句格式如下:
变量:=函数名(参数表);
示例:
rResult:=ADD (rData1, rData2); //使用 ADD 函数,将 rData1+ rData2的结果赋值给变量 rResult。
2) 功能块控制语句
调用功能块,对功能块名实例化,具体格式如下:
功能块实例名:(功能块参数);
如果需要在 ST 中调用功能块,可直接输入功能块的实例名称,并在随后的括号中给功能块的
各参数分配数值或变量,参数之间以逗号隔开;功能块调用以分号结束。
示例:在结构化文本中调用功能块 TON 定时器,给定时器取名为 TON1。
编者旨在与对Codesys感兴趣的同学一起分享交流,欢迎关注!关注!关注!转发,然后私信我关键字“资料”。
相关问答
欧姆龙PLC时间比较指令=D怎么赋值?
欧姆龙=d是双精度浮点比较指令,不支持直接赋值。只能比较地址。跟时间没有关系。需要赋值的话需要先赋值到某个比如DM地址,再指定dm地址进行比较。可编程...
PLC中怎么给数组赋值,我定义了一个二维数组,想一次性给它赋值?
做个for循环for(inti=0;i{for(intj=0;j{b[i,j]=你要的值;}}做个for循环for(inti=0;i{for(intj=0;j{b[i,j]=你要的值;...
在WINCC做的人机界面上怎么给PLC300程序中的定时器赋值呢?比如循环时间要随时修改?
300程序不需任何操作,可以直接引用如DB1.DBW4存放设定的时间值:名称:Time_T,类型:S5TIME,初始值:S5T#10SWincc建立变量Time_T,类型Float,类型转换选择....
三菱PLC在编程软件里怎么给变址寄存器VZ赋值啊?
1.VZ变址寄存器主要是用来改变操作地址,能够改变的软元件有:KYMSPTCDKHKnXKnYKnS,但是不能修改V与Z本身及制定的Kn本身,列:K4M0Z0有效,K0Z0M...
施耐德编程%mw399:=10是什么意思?
赋值语句,含义是把10赋给地址为%MW399;在施耐德PLC编程中,直接引用地址相当于默认该地址作为一个整数型变量。%MW是施耐德模拟量输出模块和中间寄存器地址的表...
三菱PLC中定时器的D值赋值怎么修改?
在三菱PLC中,要修改定时器的D值(预设时间),首先需要进入程序编辑模式,在相应的定时器指令中找到D寄存器的地址。然后,选择要修改的D寄存器,并输入新的数值...
plcmove指令讲解?
移动值指令MOVE,是用于对存储器进行赋值,或者把一个存储器的数据复制到另外一个存储器中,还可以用于清零功能。对于这个指令进行移动复制之后,源操作数的数...
plc怎么让三个地址值同时互等?
PLC可以使用“MOV”指令将三个地址值同时赋值为同一个值。先在PLC程序中定义三个需要互等的地址,然后使用“MOV”指令,将这三个地址分别与一个值相等。在PLC执...
【PLC中直接寻址举例,比如,MOVDVD100,16#1000结果是怎样...
[最佳回答]你应该是用的西门子的PLC吧,就直接拿一个应用的例子来解释吧。例如,直接寻址是你直接对一个区间的变量赋值或者搬移,例如MOV500,VB100;间接寻址是...
西门子plc不能两个相同的q输出吗?两个相同的m呢?
两个相同的Q输出和两个相同的M输出都是可以的,但是因为出现相同的输出所以会出现双线圈输出问题。双线圈输出不是错误,只是提醒程序员,输出状态以最后一次赋值...
扫一扫微信交流