每日一贴之读取和写入 PLC 变量 - 只针对 840D sl

已锁定

隐身人

版主

  • 帖子

    11175
  • 精华

    73
  • 被关注

    742

论坛等级:至圣

注册时间:2005-12-20

钻石 钻石 如何晋级?

每日一贴之读取和写入 PLC 变量 - 只针对 840D sl

3837

14

2024-05-24 20:37:40

高速数据通道:

在该模块 (DPR) 的通讯缓冲器中预留一个存储区以实现 PLC 和 NC 之间的高速信息交 换。 在该存储区中可以交换任意多个 PLC 变量(I/O、DB、DW、标记)。 PLC 通过‘FunctionCalls’ (FC) 访问该存储器而 NC 通过系统变量访问该存储器。

划分存储区:

用户程序的编程人员(NC 和 PLC)自行负责存储区的划分。 此时可任意划分存储区,但是必须根据数据格式选择限制(“DWORD” 限制为 4 个字节, “WORD” 限制为 2 个字节,等等)。 存储区是通过指定数据类型和存储区内的位置偏移来访问的。

从 NC 访问:

NC 系统中提供变量以便从零件程序或同步动作快速访问 PLC 变量。 可通过 NC 直接读写 数据。 数据类型由系统变量的名称得出。 存储区内的位置作为索引指定,单位为字节。


从 PLC 访问:

PLC 借助“FunctionCall”(FC) 来访问存储器。 在 FC 中,数据都是立即(即:不只是在 PLC 循环开始时)读写到 DPR 中的。数据类型和存储区中的位置是以参数形式传送给 FC  中的。

前提条件:

DPR 存储区的划分完全由用户负责。 系统不会对配置的一致性进行检查。 在输入和输出方向上共有 4096 个字节可供使用。 ● 系统不支持单个位指令,用户必须使用字节指令。  由于变量的内容是直接在通讯缓冲器中被修改的,用户程序的编程人员应注意:在多次 分析一个变量或多个变量互联时,值可能被中途修改(即有必要将值暂时保存在局部变 量或 R 参数中或安装信号装置)。

用户编程人员应负责协调不同通道对通讯缓冲器的访问。 在数据访问中,系统可保证 16 位以内(字节型和字型)数据的一致性。 32 位数据(双 字型和实数型)的一致性由用户自行负责。 为此在 PLC 侧提供了一个简单的信号装置。  PLC 将数据以 ‘Little Endian’ 格式保存在 DPR 中。  通过 $A_DBR 传输的值需要经过转换,因此会损失一定的精度。 浮点型数据在 NC 上 为 DOUBLE(64 位),而在 PLC 上却只是 FLOAT(32 位)。 DPR 中的保存格式 为 FLOAT。转换在保存前后各进行一次。 例如:如果是从 NC 写入然后再次读取 DPR 中的变量,则会进行两次转换。 由于数据 是以两种格式保存的,也就无法避免读写的值有偏差。

示例 通过比较“EPSILON” 来绕开该问题(细微偏差)。

程序代码:

N10 DEF REAL DBR;

 N12 DEF REAL EPSILON = 0.00001 ;

N20 $A_DBR[0]=145.145 ;

N30 G4 F2 ;

N40 STOPRE ;

N50 DBR=$A_DBR[0] ;

N60 IF ( ABS(DBR/145.145-1.0) < EPSILON ) GOTOF ENDE ;

N70 MSG(“故障”) ;

N80 M0 N90 ENDE: ;

N99 M30;

激活:

 可通过 MD28150 $MC_MM_NUM_VDIVAR_ELEMENTS(用于写入 PLC 变量的单元数) 来设置 可同时写入的最大输出变量数。

示例:

 一个单字型变量需从 PLC 传送至 NC。 NC 输入端内的位置偏移应为第四个字节(PLC 输出区)。 位置偏移必须为数据宽度的整 数倍。

由 PLC 写入:

. . . CALL FC21 (

Enable :=M10.0, ; 如果为 TRUE,FC21 便生效

Funct :=B#16#4,

S7Var :=P#M 104.0 WORD1,;

IVAR1 :=04,;

IVAR2 :=-1,;

Error :=M10.1,;

ErrCode :=MW12); . . . )

在零件程序中读取

PLCDATA = $A_DBW[4]; ; 读取一个单字

重新上电后的特性,程序段搜索 在上电时通讯缓冲器 DPR 初始化。 在进行“程序段搜索”时系统会收集输出的 PLC 变量,并通过移动程序段将其传送给通讯 缓冲器 DPR(这一过程类似于写入模拟量和数字量输入)。 其他状态过渡在这儿无效。



每日一贴之读取和写入 PLC 变量 - 只针对 840D sl 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25500条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。