S7300编程初级问题 点击:541 | 回复:6



sxggj

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:40帖 | 85回
  • 年度积分:0
  • 历史总积分:256
  • 注册:2005年4月14日
发表于:2008-05-09 13:56:07
楼主

经常听到有人说数据地址为XXX偏移多少,也就是说经常听到对数据地址的分配,是不是只有在STL语句编程中才会碰到这些问题???在LAD编程中也会有这些问题吗???因为我的工程中只有一个OB,是不是必须创建DB才会有地址分配???请明白的指点一下




海阔天空

  • 精华:0帖
  • 求助:1帖
  • 帖子:35帖 | 183回
  • 年度积分:0
  • 历史总积分:1879
  • 注册:2002年8月31日
发表于:2008-05-09 14:07:05
1楼

楼主的问题我理解的不太好,“数据地址为XXX偏移多少” 是不是指一个WORD的某个位,如果是对位的分配,和是STL和LAD无关

孤掌难鸣

  • 精华:0帖
  • 求助:0帖
  • 帖子:76帖 | 324回
  • 年度积分:0
  • 历史总积分:704
  • 注册:2007年8月17日
发表于:2008-05-09 14:14:23
2楼

地址偏移是在总线配置时提到的,主站和从站有映射关系,如一个PROFIBUS-DP网络,主站是S7300,从站为S7200,当偏移量为0时,配置的第一个地址对应VB0,偏移量为100时,对应的是VB100

yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2008-05-09 14:15:17
3楼

用技术面来说:一般此种术语也只用于间接寻址,由于LAD不支持间接寻址,因此LAD不会发生此术语。

从应用面来说:此种表示方法也可以用于平常用语,比如,您到某某路不认识,别人会告诉您靠近什么路,这也是一种相对于地址的偏移,也因为如此,我们在平时语言表达的时候,也会用此种方式表达。

并不是DB才会涉及地址,I,Q都会有地址存在,比如可以这样描述,IW0的偏移10个字,那么就是指IW11了。

如果您不对DB进行地址分配,那么需要使用绝对地址方式进行访问,如DB1.DBW0,这种情况下,您仅仅失去的是数据的类型检查而已。但是如果您对DB中进行了地址分配,那么当数据类型不一致时系统会提示,仅此而已。

 

以上!

 

sxggj

  • 精华:0帖
  • 求助:0帖
  • 帖子:40帖 | 85回
  • 年度积分:0
  • 历史总积分:256
  • 注册:2005年4月14日
发表于:2008-05-09 14:40:29
4楼

非常感谢几位的回答:“海阔天空”的回答比较正确,因为我的问题问的应该是有错的。“孤掌难鸣”的回答比较容易理解,其实我最接近的情况是从现场设备读取的数据存储问题。“yuanle”的回答比较深刻,非常感谢yuanle大侠多次认真回答我比较弱弱的问题。

其实我现在最想知道的是:I、Q、M、DB等这些S7-300中的地址,我在STEP7中哪儿能看见,,有没有个类似内存管理的地方我一览无余,再次感谢三位

ChaseSun

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 36回
  • 年度积分:0
  • 历史总积分:73
  • 注册:2007年11月11日
发表于:2008-05-11 18:23:43
5楼
在硬件组态界面,相应的能看到I、Q,DB可以在相应的数据中查询,但是M我自己也不清楚在什么地方能体现出来,或者,你可以执行交叉引用的变量表,从中可看到所有的相关变量。

huangyoufu

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 1083回
  • 年度积分:0
  • 历史总积分:1224
  • 注册:2006年9月23日
发表于:2008-05-11 21:49:20
6楼
楼主的问题我理解的不太好

热门招聘
相关主题

官方公众号

智造工程师