有关P#DB100.DBX108.0问题,请赐教。 点击:4348 | 回复:6



rumensheng

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 10回
  • 年度积分:0
  • 历史总积分:577
  • 注册:2003年11月01日
发表于:2012-02-15 16:23:57
楼主

1、LAD图中块FC500输入端IO10连接P#D100.DBX108.0,P#D100.DBX108.0是什么符号?
2、P#D100.DBX108.0如何赋值给FC500块中的那个地址?
3、块中输入端子IO10是个结构变量,结构变量元素有IO11~IO25.

 



楼主最近还看过



rumensheng

  • 精华:0帖
  • 求助:2帖
  • 帖子:2帖 | 10回
  • 年度积分:0
  • 历史总积分:577
  • 注册:2003年11月01日
发表于:2012-02-15 16:36:07
1楼

图片是与问题有关的内容

rumensheng

  • 精华:0帖
  • 求助:2帖
  • 帖子:2帖 | 10回
  • 年度积分:0
  • 历史总积分:577
  • 注册:2003年11月01日
发表于:2012-02-15 16:39:11
2楼

图片是与问题有关的内容

rumensheng

  • 精华:0帖
  • 求助:2帖
  • 帖子:2帖 | 10回
  • 年度积分:0
  • 历史总积分:577
  • 注册:2003年11月01日
发表于:2012-02-15 16:40:41
3楼
因受限制,变量IO23后面还有,直到IO26。

EBN战略军团-ww19830217

  • 精华:0帖
  • 求助:6帖
  • 帖子:44帖 | 4442回
  • 年度积分:0
  • 历史总积分:14636
  • 注册:2006年12月16日
发表于:2012-02-15 16:47:07
4楼

 P#中的P是Pointer,是个32位的直接指针。所谓的直接,是指P#中的#后面所跟的数值或者存储单元,是P直接给定的。这样P#XXX这种指针,就可以被用来在指令寻址中,作为一个“常数”来对待,这个“常数”可以包含或不包含存储区域。例如: 
  ● L P#Q1.0 //把Q1.0这个指针存入ACC1,此时ACC1的内容=82000008(hex)=Q1.0 
  ★ L P#1.0 //把1.0这个指针存入ACC1,此时ACC1的内容=00000008(hex)=1.0 
  ● L P#MB100 //错误!必须按照byte.bit结构给定指针。 
  ● L P#M100.0 //把M100.0这个指针存入ACC1,此时ACC1的内容=83000320(hex)=M100.0 
  ● L P#DB100.DBX26.4 //错误!DBX已经提供了存储区域,不能重复指定。 
  ● L P#DBX26.4 //把DBX26.4这个指针存入ACC1,此时ACC1的内容=840000D4(hex)=DBX26.4 
  我们发现,当对P#只是指定数值时,累加器中的值和区域内寻址指针规定的格式相同(也和存储器间接寻址双字指针格式相同);而当对P#指定带有存储区域时,累加器中的内容和区域间寻址指针内容完全相同。事实上,把什么样的值传给AR,就决定了是以什么样的方式来进行寄存器间接寻址。在实际应用中,我们正是利用P#的这种特点,根据不同的需要,指定P#指针,然后,再传递给AR,以确定最终的寻址方式。 
  在寄存器寻址中,P#XXX作为寄存器AR指针的偏移量,用来和AR指针进行相加运算,运算的结果,才是指令真正要操作的确切地址数值单元! 
  无论是区域内还是区域间寻址,地址所在的存储区域都有了指定,因此,这里的P#XXX只能指定纯粹的数值,如上面例子中的★。

另,相关资料:
见《详解西门子间接寻址.pdf》下载:
http://ishare.iask.sina.com.cn/f/3022080.html
见《关于S7-300和S7-400指针寻址的说明与例程(更新版)(2008.03.04)     》下载:
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=F0215

《step7编程之地址概念详解》,完全可解决你的问题,连接:
http://www.plc365.com/jishu/57.html 

彩云之滇东北

  • 精华:37帖
  • 求助:5帖
  • 帖子:148帖 | 2725回
  • 年度积分:0
  • 历史总积分:21121
  • 注册:2005年6月14日
发表于:2012-02-15 17:06:04
5楼
是一个指针地址,间接寻址,在程序里面定义的,然后再调用的时候需要填入指针地址。

rumensheng

  • 精华:0帖
  • 求助:2帖
  • 帖子:2帖 | 10回
  • 年度积分:0
  • 历史总积分:577
  • 注册:2003年11月01日
发表于:2012-02-19 10:27:09
6楼
回复内容:
对:彩云之滇东北关于是一个指针地址,间接寻址,在程序里面定义的,然后再调用的时候需要填入指针地址。 内容的回复:

能留个邮箱吗?我吧FC500块LAD程序发给你,请你讲解一下。谢谢

热门招聘
相关主题

官方公众号

智造工程师