西门子编程技术问题 点击:1250 | 回复:14



海棉

    
  • 精华:2帖
  • 求助:1帖
  • 帖子:36帖 | 405回
  • 年度积分:160
  • 历史总积分:21648
  • 注册:2003年4月16日
发表于:2007-01-31 21:57:00
楼主
各位高手,我是一名刚学西门子PLC的新手,关于编程时相关的进制不太清楚.
一、字、双字在什么时候用比较好?
二、浮点数,再什么情况下用?如果我的控制系统有上位机控制,那么我的程序中与上位机相关的数据(开关量除外)是否都要转成浮点数?



menggur

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 28回
  • 年度积分:0
  • 历史总积分:73
  • 注册:2006年11月09日
发表于:2007-01-31 22:10:00
1楼
1.例如字处理16位开关量,而双字 处理32位开关量的,一般在处理采集模拟量是采用,要看你的采样
2.对于浮点数我给你查一下,以后帮你答复,我记得浮点数是在处理数据交换时才用到.数字量不用,
3.你刚学就研究这么深,!!!前途无量啊!!!

苗子

  • 精华:0帖
  • 求助:1帖
  • 帖子:363帖 | 2721回
  • 年度积分:0
  • 历史总积分:5525
  • 注册:2002年11月15日
发表于:2007-02-01 12:51:00
2楼
1、根据需要使用字、双字;
2、不需要

freebull

  • 精华:1帖
  • 求助:0帖
  • 帖子:41帖 | 125回
  • 年度积分:0
  • 历史总积分:384
  • 注册:2005年12月23日
发表于:2007-02-01 13:40:00
3楼
浮点数尽量少用,除非你的cpu在318以上

海棉

  • 精华:2帖
  • 求助:1帖
  • 帖子:36帖 | 405回
  • 年度积分:160
  • 历史总积分:21648
  • 注册:2003年4月16日
发表于:2007-02-01 21:40:00
4楼
谢谢大家,如果我的模拟量使用的16位的,那么我只要用到字就可以满足了是不是?以后我还有什么不懂的还望各位指教.

dustya

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 54回
  • 年度积分:0
  • 历史总积分:197
  • 注册:2003年7月16日
发表于:2007-02-01 22:04:00
5楼
plc处理浮点数或者说模拟量和dcs比差太多了,在选择的时候要想好应用场合:

倥偬

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:58
  • 注册:2006年12月30日
发表于:2007-02-02 10:52:00
6楼
浮点数,
例如采集模拟量(流量4~20MA)信号,
在上位机上显示时用浮点数!

城不思汗

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 22回
  • 年度积分:0
  • 历史总积分:374
  • 注册:2004年11月16日
发表于:2007-02-02 15:37:00
7楼
1、根据需要使用字、双字,该用就用
2,凡是进出I/O的都是整数INT 你要在PLC内部运算,和上位机显示  肯定是要转换成32位的浮点数乐了

....。

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 32回
  • 年度积分:0
  • 历史总积分:49
  • 注册:2004年9月14日
发表于:2007-02-08 10:49:00
8楼
学习

小小弟

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 101回
  • 年度积分:0
  • 历史总积分:210
  • 注册:2007年2月08日
发表于:2007-02-08 10:53:00
9楼
哦,你刚学就有这么多人帮你  咋我发的帖子  还没人光顾呢555

mith520

  • 精华:0帖
  • 求助:4帖
  • 帖子:8帖 | 41回
  • 年度积分:0
  • 历史总积分:178
  • 注册:2009年3月29日
发表于:2009-08-03 17:12:18
10楼
回复内容:
对:小小弟 关于哦,你刚学就有这么多人帮你  咋我发的帖子  还没人光顾呢555 内容的回复:


人品的差距啊 哈哈 开玩笑啦

小号C

  • 精华:0帖
  • 求助:1帖
  • 帖子:8帖 | 184回
  • 年度积分:0
  • 历史总积分:429
  • 注册:2007年1月01日
发表于:2009-08-04 09:28:38
11楼
怎么尽是老帖被翻出来,新帖无人答

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2009-08-08 21:41:34
12楼

呵呵,很多人可能都是凑热闹的态度!

我看到楼主的问题后,我首先想说的一句话是,你应该好好看看编程手册,里面讲到,整数,浮点数在内存中怎么表示的,

1,字、双字在什么时候用比较好?
答:看你处理的数据的大小,及精度,一般要是能达到要求就尽量用字,有些情况甚至字节都够,要是处理浮点数,或比较大的值,你必须用

双字啊,没得商量的,不是你想不想用!

2。浮点数,再什么情况下用?

答:浮点数在你处理的数据要求高精度的情况下用,或标准化一些数据时,例如,你要把一个小于65535的整数,标准化成精确到0。1%

的百分比时,就要把它转换成实数,很典型的应用!

至于你说“如果我的控制系统有上位机控制,那么我的程序中与上位机相关的数据(开关量除外)是否都要转成浮点数? ”

你上位机读取数据一般是 一帧一帧数据读把,那你不管数据是浮点数,还是整数,你只要知道这一帧数据的第几个字或字节是什么类型就可以了;

在上位机那端,你只考虑这PLC那端数据是什么类型,读上来的也就是什么类型;例如:读取PLC 中 B200~VB220,连续20个字节的数据;

事先你肯定知道这里面有些定义好的数据,比如 VB 200里是PLC地址,那就是一个字节,整型数据,VB201里放了一个百分比的值最大100,

也是整型数据,你知道的一个字节存放有符号数范围-128~127,无符号,0~255,足够用!

再假如,VD202 (即VB202~VB205)存放了一个浮点数,读取到上位机,取这几个字节的数据就是你要的浮点数,直接拿来用不必转换!

海棉

  • 精华:2帖
  • 求助:1帖
  • 帖子:36帖 | 405回
  • 年度积分:160
  • 历史总积分:21648
  • 注册:2003年4月16日
发表于:2009-10-05 14:12:33
13楼
再次感谢各位的热心帮助,以后有问题再请教各位

郭星如

  • 精华:1帖
  • 求助:0帖
  • 帖子:122帖 | 285回
  • 年度积分:0
  • 历史总积分:2297
  • 注册:2007年7月29日
发表于:2009-10-05 14:18:26
14楼
个字节存放有符号数范围-128~127,无符号,0~255,足够用!

再假如,VD202 (即VB202~VB205)存放了一个浮点数,读取到上位机,取这几个字节的数据就是你要的浮点数,直接拿来用不必转换!

热门招聘
相关主题

官方公众号

智造工程师