关于FB41中I、D在画面中的设定 点击:680 | 回复:12



春华★秋实

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:103帖 | 1038回
  • 年度积分:0
  • 历史总积分:3013
  • 注册:2007年5月17日
发表于:2007-09-28 10:36:00
楼主
I、D需要的是TIME值,我们在画面中输入的是整数,需要转换一下。以前我迷茫的地方是怎么把整数转化为S5TIME值,因为FC33能把S5T转换为TIME值。也许很多象我这样的新手也是在这糊涂的。今天看了一下别人的程序,才知道把整数转换为BCD码后,再把时基写进去,直接就可以用FC33了。程序如下:
NETWORK1:
L MW100            //连到画面的值
ITB
L W#16#2000        //时基为1S
OW
T MW102
NETWORK2:
CALL  "S5TI_TIM"
IN     :=MW102
RET_VAL:=MD104     //连到I或D的值



金粟兰看法

  • 精华:0帖
  • 求助:0帖
  • 帖子:18帖 | 479回
  • 年度积分:0
  • 历史总积分:975
  • 注册:2006年8月23日
发表于:2007-09-28 11:28:00
1楼
顶!
技术要交流才会提高.好东西大家都来分享.

三脚猫

  • 精华:0帖
  • 求助:0帖
  • 帖子:180帖 | 1598回
  • 年度积分:0
  • 历史总积分:1097
  • 注册:2004年7月08日
发表于:2007-09-28 14:10:00
2楼
可以试验出  S5T#5S
就是500ms,好象保存的整数500

彩云之滇东北

  • 精华:20帖
  • 求助:5帖
  • 帖子:107帖 | 2725回
  • 年度积分:0
  • 历史总积分:21121
  • 注册:2005年6月14日
发表于:2007-09-28 16:19:00
3楼
说的好

千山独步

  • 精华:0帖
  • 求助:0帖
  • 帖子:159帖 | 3098回
  • 年度积分:4
  • 历史总积分:21261
  • 注册:2007年2月02日
发表于:2007-09-28 18:31:00
4楼
学习了!

千山独步

  • 精华:0帖
  • 求助:0帖
  • 帖子:159帖 | 3098回
  • 年度积分:4
  • 历史总积分:21261
  • 注册:2007年2月02日
发表于:2007-09-28 18:38:00
5楼
楼主可以将FC33的内容发布上来吗,学习一下.

不死小强

  • 精华:0帖
  • 求助:0帖
  • 帖子:15帖 | 57回
  • 年度积分:0
  • 历史总积分:129
  • 注册:2007年4月03日
发表于:2007-09-29 08:27:00
6楼
MARK!
回头看,现在FB41还没搞动呢

yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2007-09-29 08:36:00
7楼
To 千山独步:
    FC33是西门子标准库功能,请自行到西门子标准库查找哦,该功能用于将无符号整数转换为S5time,如果使用该功能,不需要改写时基,因为时基默认为毫秒。与之对应的函数为FC40,用于将S5Time转换为无符号整数。如果用户不希望使用系统提供的功能,那么才进行修改时基。

guafa58

  • 精华:1帖
  • 求助:0帖
  • 帖子:43帖 | 2142回
  • 年度积分:4
  • 历史总积分:3969
  • 注册:2006年1月13日
发表于:2007-09-29 08:38:00
8楼
从上位机写整型数INT或实数REAL到PLC,首先该数值需包含以毫秒为单位的时间值,在写入PLC的数据存储区后,利用ITD(Integer to Double Integer)或RND(Real to Double Integer with Rounding Off)将该值转换为双整形,然后将该值写到类型为TIME的变量里,在程序中调用FC40,将TIME转换成S5TIME即可。

因为TI,TD本身的变量类型就是TIME,所以不用调用FC33或者FC40啊,直接转换后就可以了啊,

三脚猫

  • 精华:0帖
  • 求助:0帖
  • 帖子:180帖 | 1598回
  • 年度积分:0
  • 历史总积分:1097
  • 注册:2004年7月08日
发表于:2007-09-29 10:31:00
9楼
1.TIME时间类型,四个字节; MDxx
以毫秒的整数值保存;  常数: T#20MS  
2.S5T时间是以BCD码保存的毫秒;
                     常数:  S5T#50MS


勤耕耘

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 37回
  • 年度积分:0
  • 历史总积分:80
  • 注册:2003年8月26日
发表于:2007-09-29 10:42:00
10楼
我也来说两句,

还可以在HMI组态软件中定义变量的标定,

千山独步

  • 精华:0帖
  • 求助:0帖
  • 帖子:159帖 | 3098回
  • 年度积分:4
  • 历史总积分:21261
  • 注册:2007年2月02日
发表于:2007-09-29 17:59:00
11楼
谢谢大家了!

春华★秋实

  • 精华:0帖
  • 求助:0帖
  • 帖子:103帖 | 1038回
  • 年度积分:0
  • 历史总积分:3013
  • 注册:2007年5月17日
发表于:2007-09-30 10:37:00
12楼
TO 千山独步:
FC33是系统内的,你在libraries>stdlibs>iec可以找到

热门招聘
相关主题

官方公众号

智造工程师