movs 数据传送指令_博途S7-1200 MOVE指令使用方法的解释及举例说明

在博途中MOVE指令是比较常用的指令,在LAD中是MOVE指令,在SCL编程中用“:=”来表示。

dcd0b9e818fbd5f6f8dbfad0c46e25c8.png

比较常用的是MOVE(移动值),MOVE_BLK(移动块),MOVE_BLK_VARIANT(存储区移动)

一、MOVE移动值指令

3c0a419e35a0273146adf805e1672e16.png

将DB1中数组移动给DB_MOVE数据块中。指令很简单,也很好理解

注意:

1.如果输入 IN 数据类型的位长度超出输出 OUT 数据类型的位长度,则源值的高位会丢失。如果输入 IN 数据类型的位长度低于输出 OUT 数据类型的位长度,则目标值的高位会被改写为 0。

2.REAL传送至DWORD时是按位传送,不是取整。如果需要取整,可以使用ROUND、CONVERT_REAL_TO_DINT等指令。

3.(不)进行IEC检查是指,在MOVE指令所在的OB/FC/FB属性中的"IEC检查"选项,仅在此块中生效。默认的"IEC检查"不激活。设置如图所示。

9ae821b812a5e2248fec2df5c4ca244a.png

4.LAD传送字符串需要使用S_MOVE指令(SCL使用“:=”),但是传送字符串中的字符需要使用MOVE指令。

5.支持通过一个MOVE指令将一个变量传送到多个变量,但是该功能不支持传送复杂数据类型(DTL、结构、数组等)或字符串中的字符。

6.传送数组时,要求元素数据类型以及元素个数必须完全一样,数组限值可以不同,例如Array[0..1] of Byte可以MOVE到Array[1..2] of Byte。

二、MOVE_BLK移动块指令

LAD和SCL均为MOVE_BLK指令。

MOVE_BLK指令是当EN条件满足时,实现相同数组之间部分元素的传送。MOVE_BLK和UMOVE_BLK的区别是UMOVE_BLK不会被中断打断,并且最多16kB的数据量。

f026deeddaaa0834c73014427a5af8bf.png

在上图中"DB1_MOVE_BLK".Static_1和"DB2_MOVE_BLK".Static_1均为BOOL类型数组

程序将"DB1_MOVE_BLK".Static_1[0]开始的4个数组元素移动至"DB2_MOVE_BLK".Static_1[4]开始的4个数组元素

SCL程序如下:

06a68bf1c60d4f6dd2d07fba724b9295.png

注意:

1. IN和OUT必须是数组的一个元素,例如"DB26".Static_1[0],不能是常数、常量、普通变量,也不能是数组名。

2. IN和OUT类型必须完全相同,并且必须是基本数据类型,不能是UDT、Struct等的数组。

3. IN是源数组中传送的起始元素,OUT是目的数组中接收的起始元素。

4. COUNT是传输个数,可以是正整数的常数,如果是变量,数据类型支持USINT、UINT、UDINT。

5. 如果目的数组接收区域小于源数组的传送区域,则只传送目的数组可接收的区域的数据。如果激活指令的ENO功能,则ENO=False。

三、MOVE_BLK_VARIANT

LAD和SCL均为MOVE_BLK_VARIANT指令。

MOVE_BLK_VARIANT的基本功能是数组之间部分元素的传送,并且是可以处理Variant类型的变量的指令之一,适合处理Variant指向的变长数组。

从TIA V13SP1,S7-1200 V4.0开始支持该指令。

MOVE_BLK_VARIANT指令通常用于将源数组SRC的部分元素传送至目的数组DEST的部分元素中,SRC与DEST数组元素必须完全相同。COUNT是传送的元素个数,SRC_INDEX是待传送的源数组的起始编号,DEST_INDEX是目的数组接收的起始编号,此处用编号不是下标的意思是,SRC_INDEX和DEST_INDEX都从0开始,对应SRC和DEST的第一个元素。

同样是传送部分数组元素的指令,MOVE_BLK_VARIANT相对MOVE_BLK有以下优点:

1. SRC和DEST不可以是Bool数组,但可以是Struct、UDT等复杂数据类型数组

2. SRC和DEST都可以是普通的单个变量,例如SRC为一个INT变量,DEST作为一个INT数组,此时需要设置COUNT=1,SRC_INDEX=0,然后根据DEST_INDEX的值,传入DEST的指定位置。

3. SRC和DEST填写的通常是数组名,也可以是普通的单个变量,或者数组的一个元素,后两种情况都需要像(2)一样处理。

4. SRC和DEST可以是参数类型Variant的变量,也就是可以直接填写P#指针的格式,指令将会把P#指针看做数组处理(原因)。即使是SRC和DEST都指向Variant类型,其指向的形参的数组元素数据类型也需要相同,所以通常需要在使用指令之前用EQ_ElemType检查其中元素的数据类型。

使用MOVE_BLK_VARIANT指令的注意:

(1)COUNT>=1,否则报错并且不传送任何数据。

(2) COUNT+SRC_INDEX与COUNT+DEST_INDEX决定了SRC与DEST数组元素编号上限,超出范围将报错并且不传送任何数据。

如下面这个例子:

5e788edaf394f1dd25ce79dfb70b7a6a.png

上图中:

"DB3_MOVE_BLK_VARIANT".Static_1和"DB4_MOVE_BLK_VARIANT".Static_1均为相同结构类型的数组

程序将"DB3_MOVE_BLK_VARIANT".Static_1的第1个数组元素(即SRC_INDEX)开始的2个元素(即COUNT)移动到"DB4_MOVE_BLK_VARIANT".Static_1的第5个数组元素(即DEST_INDEX)开始的2个元素(即COUNT),Temp_1为错误代码

43afaef430ec402a4004f701935068fe.png

上图中:可以将P#M100.0 BYTE 16当做MB100开始的由16个BYTE元素组成的数组

DB5为非优化的数据块,其中的变量可以是任意类型,DB5中的变量数量>=16个字节

同样也可以将P#DB5.DBX0.0 BYTE 16当做DB5.DBB0开始的由16个BYTE元素组成的数组,

通过该段程序实现将MB100~MB115的数值移动至DB5.DBB0~DB5.DBB15,COUNT=16为移动的BYTE元素数量,SRC_INDEX=0即移动源从MB100开始,DEST_INDEX=0即移动目的从DB5.DBB0开始,Temp_1为错误代码

上面程序对应的SCL

9b2f9c4163c81d480fe9a856eca881ce.png
weixin_39768247
关注 关注
  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
课程6 :PLC常见指令详解:MOVE指令,教你将数据传递至PLC界任意角落
weixin_42430971的博客
11-22 2万+
MOVE指令是什么? 在PLC编程过程当中,MOVE指令也是我们经常可以用到的指令,顾名思义,MOVE让我们联想到小学时候学到的单词move,意味移动的意思,那么在指令当中它的含义也和’移动‘这个词差不多,MOVE指令的功能是把下图左端IN输入命令传输到右端的OUT1,而MOVE做了一次牵线搭桥,传话的媒婆。那么在程序中MOVE指令长成什么样子呢?咱们开启实例模式,请看下图: 在图中可以看到,MOVE指令藏在了:基本指令-移动操作的下面,如需使用可以用鼠标左键点击所需要的指令拖拽到左边的程序段当中。那么如
TIA博途中字符串转换相关指令使用方法(一)
Robot_PLC_自动化学院
02-11 9308
TIA博途中字符串相关指令使用方法(一)
PLC-12/13-信号上下升沿和移动MOVE
weixin_56126597的博客
08-24 1958
我们可以回忆一下上一节的加法的程序现象,当我们在左边同样也加上IN3赋予变量“值”时,左边的IN3的值和右侧的OUT的“值”中显示的数字会不断跳动、改变。>现象:加法仅进行了一次 ,并没有像我们上一节的加法内容一样值的数字不断改变;和后面的额触摸屏内容联系起来的话,点一下按钮的一刻就进行加法运算。示例和前面的是一样的,把P改成N就可以了,联系后面要学的触摸屏的话,点下按钮后再松开按钮的那一刻就进行加法运算,和上升沿操作数正好是相对的。按上述图片设置好程序段。
西门子S7-1200(博途)学习二
最新发布
qq_29839055的博客
08-13 1134
右键点击选择 插入行/添加行来增加数据 名称可以使用中文,数据类型在下拉框中选择需要的类型,起始值是指断电/改变PLC运行状态时会赋予的初始值,保持是指在断电/改变PLC运行状态后再次启动依旧会维持断电前的状态/数值。注意: 设置起始值后如果再勾选保持的话会使保持功能无效! 1:右键点击数据块,打开最后一行的属性 2:关闭优化块的访问 3:重新编译后就能看到偏移量,根据数据类型的不同所占用的位大小也不同。 这里的偏移量就是数据的绝对地址 4:回到组织块中,向程序段中添加一个空的功能框 5:在红色问号
拖拽模块move1
weixin_30916125的博客
08-20 168
刚开的博客,想着写点什么,以前写过拖拽函数,后来又学习了模块化,于是一直想把之前写的拖拽函数封成一个独立的模块,方便以后调用,说干就干,下面码代码。。。 <script> var move =(function(){ function drop(bar,target){ var target=document.getElementById("target...
TIA博途使用DB数据块的快照功能实现数据传递的具体方法
Robot_PLC_自动化学院
11-03 6432
TIA博途使用DB数据块的快照功能实现数据传递的具体方法 进行数据块或者数据类型修改时,为了避免数据的丢失,灵活的使用快照和复制快照数值到初始值功能,可以帮助我们快速地调试和维护项目。 S7-1500 数据块的在线操作 S7-1500 数据块的快照功能 S7-1500数据块的快照功能可以将数据块某一时刻的过程值上传到离线的数据块中,缺省情况下,数据块的快照列被隐藏,需要在数据块的列中使能显示“快照” 首先点击监控按钮,使数据块DB保持在线,再次点击快照栏中的“实际值的快照”按钮,数据块中变量在这一时刻
西门子博图功能指令(块移动)
yue008的博客
07-06 9257
西门子博图功能指令---块移动
博途利用MOVE_BLK_VARIANT实现混合数据类型的块移动
xulibo5828的博客
06-26 5383
MOVE_BLK_VARIANT可以将一个数据块的指定数据区域移动到另一个数据块的指定数据区域,前提是源区域和目标区域的数据类型相同。MOVE_BLK_VARIANT的实际应用意义在于,可以将不同类型的连续数据块一次性传输(不支持bool类型),这在PLC与网络设备的通信中会有用得到。
Move 教程
smartContractXH的博客
09-22 1057
欢迎来到Move教程!在本教程中,我们将通过开发Move代码的一些步骤,包括Move模块的设计、实现、单元测试和形式验证。BasicCoinBaseCoinBasicCoinBasicCoinBasicCoin每个步骤都被设计成在相应的step_x文件夹中自成一体。例如,如果你想跳过第1到第4步的内容,请随意跳到第5步,因为我们在第5步之前写的所有代码都在step_5文件夹中。在一些步骤的末尾,我们还包括更多高级主题的补充材料。教程代码:现在让我们开始吧!
movs 数据传送指令_数据传送指令之:MOV指令-嵌入式系统-与非网
weixin_42311335的博客
01-14 4007
1.指令编码格式MOV指令是最简单的ARM指令,执行的结果就是把一个数N送到目标寄存器Rd,其中N可以是寄存器,也可以是立即数。MOV指令多用于设置初始值或者在寄存器间传送数据指令的编码格式如图5.1所示。图5.1MOV指令编码格式MOV指令将移位码(shifter_operand)表示的数据传送到目的寄存器Rd,并根据操作的结果更新CPSR中相应的条件标志位。2.指令的语法格式MOV{}{S...
movs 数据传送指令_Introduction to CSAPP(十二):数据传送指令与 C 语言赋值
weixin_28755447的博客
02-07 2629
传送指令的分类:通用数据传送指令MOVMOVSMOVZXCHGPUSH/POP地址传送指令LEA输入输出指令IN/OUT标志传送指令PUSHF/POPF这一节主要讨论通用数据传送指令MOV 类指令MOV 类指令就是将数据从一个位置复制到另一个位置,不做任何变化的指令。需要注意的是:源操作数指定的值是一个立即数,存放在寄存器活着内存中目的操作数指定的是一个位置,寄存器或者内存地址X86-64 限...
TIA博途使用DB数据块的快照功能实现数据传递的具体方法.docx
11-06
TIA博途使用DB数据块的快照功能实现数据传递的具体方法
TIA博途中数组Array【】的基本使用方法详解.docx
10-08
TIA博途中数组Array【】的基本使用方法详解
TIA博途中字符串转换相关指令使用方法(一).docx
02-11
TIA博途中字符串转换相关指令使用方法(一)
数据传送指令与算术逻辑运算和移位指令使用
05-02
数据传送指令是计算机指令系统中的基础部分,它们用于在处理器内部、内存和I/O设备之间移动数据。在本文中,我们将深入探讨几种常见的数据传送指令及其应用。 首先,通用传送指令包括: 1. MOV:将数据从一个位置...
movs 数据传送指令_1.数据传送指令中,错误的操作是()。 A.MOVSS[BX+DI],1000H B.......
weixin_39932939的博客
01-14 2434
1.数据传送指令中,错误的操作是()。 A.MOVSS[BX+DI],1000H B....2017-4-467717春北航《汇编语言》在线作业二三一答案1.数据传送指令中,错误的操作是()。A.MOVSS[BX+DI],1000HB.MOVDX,1000HC.MOVWORDPTR[BX],1000HD.MOVDS,2000H正确答案251959822.条件转移指令JNE的测试条件为().A.ZF...
std在汇编语言是什么指令_汇编语言--x86汇编指令集大全
weixin_39955142的博客
12-19 519
X86和X87汇编指令大全(有注释)汇编指令集太多,如果不用就会忘记,所以将intel处理器官方的指令集整理一下,有需要的人可以参考一下!------------------------------------------ 一、数据传输指令 ---------------------------------------------它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据。1. 通用数...
怎样通俗理解PLC的move赋值指令
weixin_42372763的博客
01-22 2738
用于把一个常数、寄存器里面的值装到另一个寄存器里面去。实际的原理就是把左边的这一份快乐分享给右边的这位老铁,那这就是赋值的指令的作用了。右边这老铁也白得一份快乐,这时实际就有了两份快乐了。左边这个老铁的快乐还在,赋值指令也叫传送指令
博途IEC TIME数据类型_基于博途V15 西门子S7-1200数据处理指令应用-移动操作
weixin_39531604的博客
10-22 4807
本篇是《基于博途V15 西门子S7-1200 ...》系列的后续篇,看懂本篇文章之前请大家关注我,然后查找相关文章,学习之后再学习此篇。也请专业领域的大神批评指正。感谢大家关注与支持!这是第七篇功能指令,本篇介绍两个简单的定时器指令应用实例。上一篇是《基于博途V15 西门子S7-1200 数据处理指令应用-数学函数》,大家可以自行查阅学习。1.MOVE(移动值)、MOVE_BLK(移动块)、UMO...
写文章

热门文章

  • movs 数据传送指令_博途S7-1200 MOVE指令使用方法的解释及举例说明 27731
  • 汇编语言sub指令用法_汇编指令一览表 18912
  • code405是什么意思_HTTP协议状态码详解(HTTP Status Code) 17423
  • 全国计算机考试考ms还是wps,计算机wps和ms哪个简单?计算机一级office考试技巧有什么?... 14224
  • 正确的座机号码格式_电话号码格式怎么输入才是正确 13524

最新文章

  • 堡垒之夜为什么显示服务器离线,堡垒之夜自己显示离线 | 手游网游页游攻略大全...
  • 信息发布服务器 鸿合ws-10s,鸿合精品课程全自动录播系统解决方案设计.doc
  • 方服务器未响应 重新投递中,notes 常见问题汇总.docx
2021年159篇
2020年217篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家福建商场创意商业美陈经验沈阳定制玻璃钢雕塑多少钱玻璃钢造型雕塑哪个信誉好山东开业商场美陈哪里买雕塑玻璃钢雕塑雕塑商场美陈造型木作玻璃钢雕塑厂厂家供应4米高的玻璃钢仿铜雕塑要多少钱江苏玻璃钢花盆怎么样六安十一商场美陈佛山玻璃钢糖果雕塑贵州动物玻璃钢雕塑供应商沁阳玻璃钢雕塑厂家新余玻璃钢雕塑生产厂家四川秋季商场美陈供应澳门玻璃钢小品雕塑马拉玻璃钢雕塑南京小型玻璃钢雕塑哪家好芜湖学校玻璃钢雕塑批发提升商场品质 增加美陈猇亭区玻璃钢雕塑大观玻璃钢花盆花器德兴玻璃钢景观雕塑宁安玻璃钢景观雕塑动物玻璃钢卡通雕塑尺寸常德玻璃钢果蔬雕塑玻璃钢卡通雕塑平台商场美陈dp点商场美陈床黄浦高品质玻璃钢雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化