合信论坛

快捷导航
查看: 3864|回复: 0

S7-1200PLC在博图软件中POKE_BLK指令的用法

[复制链接]

0

主题

0

帖子

50

积分

注册会员

Rank: 1

积分
50
发表于 2022-9-23 16:16:38 | 显示全部楼层 |阅读模式
本帖最后由 Xiaoshaoqian 于 2022-9-23 16:38 编辑

Poke指令是用来将某一个存储区地址的数据写入到另外一个存储区地址的指令。
从指令列表中添加POKE_BLK的初始状态如下
0f45651e270a913a95138828b73fc08.png
可以看到,该指令有7个参数,其中:
1、 area src :字节型数据( Byte ),用来指定源数据存储区。其取值包括如下内容:16#81表示输入缓存区(I)、16#82表示输出缓存区( Q )、16#83表示位存储区( M )、16#84表示数据块( DB );
2、 dbNumber _ src :双整型数据( DINT ),用来指定源数据块的编号,仅在访问数据块时使用,访问其它存储区时设置为0;
3、 byteOffset src :双整型数据( DINT ),用来指定源数据存储区中写入数据的地址偏移量;
4、 area dest :字节型数据( Byte ),用来指定目标数据存储区。具取值包括如下内容:16#81表示输入缓存区(1)、16#82表示输出缓存区( Q )、16#83表示位存储区( M )、16#84表示数据块( DB );
5、 dbNumber _ dest :双整型数据( DINT ),用来指定目标数据块的编号,仅在访问数据块时使用,访问其它存储区时设置为0;
6、 byteOffset _ dest :双整型数据( DINT ),用来指定目标数据存储区中写入数据的地址偏移量;
7、 count :双整型数据( DINT ),用来指定需要拷贝的字节数;
举个例子:
1.将DB1.DBB0开始的10个字节拷贝到QB0开始的10个字节。
2.将IB100开始的10个字节拷贝到DB2,DBB0开始的10个字节。
9ee7cd3110d0c0ed65cac5293291183.png
实际操作
在实际操作中DB块中没有偏移量导致拷贝不到DB块的数据如下图所示
133ef17699c1dd853b9d39beb939217.jpg
右击进入DB块的属性界面将优化的块访问取消勾选如下图所示
456dfb590fdc7cd372227a88cf7e9e3.jpg
998c630742d8e08bdbd3b09620abef1.jpg
bb015b322df11303a5839e8d6a7584f.jpg
cbee5dc323174888e11c6a476f41354.jpg
程序结果显示
27d5c50bd4ac6c8aca7116d676dea19.png

0f45651e270a913a95138828b73fc08.png
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

客服热线
400-700-4858 周一至周五:09:00 - 18:00
深圳市南山区打石一路深圳国际创新谷6栋A座9层

深圳市合信自动化技术有限公司(简称“合信技术”)成立于2003年,高新技术企业,专注于工业自动化产品的研发、生产、销售和技术服务,依靠高质量、高性能的自动化控制产品与方案为客户创造最大价值,立志于成为全球领先的工业自动化解决方案供应商。

Archiver|手机版|小黑屋|COTRUST Inc. ( 粤ICP备13051915号 )

GMT+8, 2024-9-8 12:38 , Processed in 0.112239 second(s), 24 queries .

快速回复 返回顶部 返回列表