NC变量的问题

在840DsL系统的NC date\Definition目录下有一XX.DEF文件中有下面一句:
define ib_wp_fct                as $a_dbb[250]
define i_wp_clamped             as (($a_dbb[250] b_and 'b1')<>0)       
define i_wp_unclamped            as (($a_dbb[250] b_and 'b100')<>0) 
请问    $a_dbb[250]与(($a_dbb[250] b_and 'b1')<>0) 、 (($a_dbb[250] b_and 'b100')<>0) 是NC变量还是PLC变量,他们有什么联系?他们的值是怎么谁赋给的?

最佳答案

楼组的问题比较典型,在 NC 高级编程中经常要读写 PLC 变量。具体如下:
1、$A_DBB[ ] 此语句的含义:读取 PLC 变量。例如 $A_DBB[250] 读取 NC内存区域中的 DBB250 ,此区域的大小在做内存配置时被指定。此区域专门用来和PLC 交换数据。必须要分清,这些区域是连贯的,DBB[250]是指区域 中的第250个字节。它可以存储 PLC 中任何区域的内容例如: M、Q、I、 DB 、L区域 。
$A_DBW对应地址是由FC21输入变量指定的。同样840D的NC和PLC用FC21来实现NC与PLC的数据交换,这是一块独立的内存区,其中交换数据的类型、起始地址与长度要在FC21中说明。
2.define ib_wp_fct                as $a_dbb[250],即即读取 $a_dbb[250]为ib_wp_fct  赋值,
define i_wp_clamped             as (($a_dbb[250] b_and ''b1'')<>0),即$a_dbb[250]的每一位与b1相与,B_AND 是二进制数按位进行逻辑与运算的符号。将$a_dbb[250]不为0的各位赋值给i_wp_clamped变量,
define i_wp_unclamped            as (($a_dbb[250] b_and ''b100'')<>0) ,即将$a_dbb[251]不为0的各位赋值给i_wp_unclamped变量,注意,字节的读取顺序,
3.直接读写PLC 输入输出变量:
读输入
$A_PBB_IN[n] 
$A_PBW_IN[n] 
$A_PBD_IN[n] 

写输出
$A_PBB_OUT[n] = XX
$A_PBW_OUT[n] = XX
$A_PBD_OUT[n] = XX

上述语句中的n 是指读写plc 中的哪一输入输出,记住是输入输出,不是过程印象区 例如:$A_PBB_OUT[1] = 1 在 plc 中的表现就是 PQB1=1。
具体可以参阅西门子权威资料包光盘 DOCONCD 2006 中的 
SINUMERIK 840Dsl/840D/840Di
SINUMERIK 810D
Special *s (Part 3)一节内容,其中 FB1 这一章中的FC21 对自定义变量的如何使用读写介绍的非常详细。

提问者对于答案的评价:
非常满意

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc194721.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年8月18日
下一篇 2017年8月18日

相关推荐

  • 828D PLC报警消除问题

    828D basic M PLC版本828D 06.00在PLC程序中添加一条报警,并把对应14516设为8,即报警时产生’急停’反应,但把…

    SINUMERIK 2017年6月13日
  • HMI ANALYZER 这个软件怎么样使用的

    西门子数控系统调试软件TOOLBOX  怎么样使用的   我是这方面的新手 最佳答案 首先要确定调试的产品型号:比如808,828…

    SINUMERIK 2017年6月11日
  • 828D主轴

    828D数控车床使用的6ra80直流调速装置,主轴转速通过编码器经SMC30反馈,现在液压泵启动后HMI上的S 后面的旋转方向箭头不停的来回变化是什么原因 最佳答案 这种…

    SINUMERIK 2020年10月31日
  • 螺距误差补偿问题

    请教各位前辈,我的设备是840D;PCU50的,按照简明调试手册上说对于PCU50可以直接在系统上写补偿值,不用传到电脑上做,我在服务界面下的数据选择栏里已经找到系统误差补偿文件,…

    SINUMERIK 2019年6月11日
  • HT2

    用的840DSL,已在使用,现在要增加HT2,需要重新拓扑么?若不增加HT2而是增加mini手持的话,要重新拓扑么? 最佳答案 都不需要重新拓扑,需要在PLC程序里调用相应的程序块…

    SINUMERIK 2017年8月3日
  • 828D数控系统最多支持几轴

    如题,求教各位大神,828d能支持五轴联动嘛,最多支持几轴联动啊,我看网上说828d最多支持10个轴,是真的么,都是哪些轴啊 最佳答案 PPU28x.3的SW 28&nb…

    2020年10月31日
  • 如何实现840D 故障急退

    对于西门子840D,怎样可以实现从PLC或者nc接口调用NC急返程序,实现紧急情况急返 最佳答案 1.如果你NC选配有此功能,你可以直接调用。2.也可以自己设计,我常用的方法是pl…

    SINUMERIK 2020年10月31日
  • 840d 功能块定义

    求FC19,FC24,FC25,FC26这几个功能内部参数的定义?谢谢另外有的程序里还有FC119是不是自己编写的? 最佳答案 《SINUMERIK 840D …

    SINUMERIK 2020年10月31日
  • 西门子802dsl子程序中mcpa有效信号给定

    西门子802DSL中  plc调用子程序mcp里面有个信号简明安装调试手册上是说MCPA有效信号PLC给定 但是PLC需要怎么接线 最佳答案 重复问题…

    SINUMERIK 2021年7月5日
  • 西门子plc mov-b

    这一段是什么意思啊   看不懂http://www.ad.siemens.com.cnhttp://www.ad.siemens.com.cn/ser…

    2020年11月1日