帮我看看s7300的一段程序 点击:1300 | 回复:18



红烧大肠

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-07 09:54:00
楼主
这是一个s7-300的一个子程序,读取DP标准从站的连续数据和向DP标准从站写连续数据
我看不懂啊
cpu314-2DP连接2个MASTERDRIVES CBP和4个MICROMASTER 4

有兄弟告诉我,这段程序的意思吗?

    ON    M    255.1
      O     M    255.1
      =     L      0.0
      A     L      0.0
      BLD   102
      =     DB6.DBX    0.2
      A     L      0.0
      BLD   102
      =     DB6.DBX   13.1
      A     L      0.0
      JNB   M001
      CALL  "DPWR_DAT"
       LADDR  :=W#16#100
       RECORD :=P#DB6.DBX 0.0 BYTE 12
       RET_VAL:=MW150
M001: A     L      0.0
      BLD   102
      =     DB6.DBX    0.3
      A     L      0.0
      BLD   102
      =     DB6.DBX   13.2
      A     L      0.0
      JNB   M002
      CALL  "DPWR_DAT"
       LADDR  :=W#16#10C
       RECORD :=P#DB6.DBX 12.0 BYTE 12
       RET_VAL:=MW152
M002: A     L      0.0
      BLD   102
      =     DB6.DBX   13.4
      A     L      0.0
      BLD   102
      =     DB6.DBX    0.4
      A     L      0.0
      JNB   M003
      CALL  "DPWR_DAT"
       LADDR  :=W#16#118
       RECORD :=P#DB6.DBX 24.0 BYTE 12
       RET_VAL:=MW154
M003: A     L      0.0
      BLD   102
      =     DB6.DBX   13.5
      A     L      0.0
      JNB   M004
      CALL  "DPWR_DAT"



mccandhmi

  • 精华:0帖
  • 求助:0帖
  • 帖子:27帖 | 239回
  • 年度积分:0
  • 历史总积分:349
  • 注册:2004年8月26日
发表于:2006-07-07 09:57:00
1楼
简单的看了一下,这是PLC和你的MASTERDRIVE通讯的一段程序,调用SFC14和SFC15进行的.状态字和控制字.

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-07 10:02:00
2楼
是的
PLC和MASTERDRIVE之间是怎么控制的,比如正点,反点,运行

mccandhmi

  • 精华:0帖
  • 求助:0帖
  • 帖子:27帖 | 239回
  • 年度积分:0
  • 历史总积分:349
  • 注册:2004年8月26日
发表于:2006-07-07 11:03:00
3楼
它是由你的控制字决定的.你的程序里面没有注释正转,反转,运行我也看不懂.
请问你是不是解开了别人写的块?

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-07 13:05:00
4楼
是的
我单位的一台机子上的

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-07 13:12:00
5楼
兄弟
你有这方面的资料吗?
给来一份
你是高手
594022856@qq.com
小弟我多谢你了

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-08 08:24:00
6楼
请问这个块是不是s7的libraries的块,还是用户编的?
我个人觉得是用户编的
因为我在libraries找了好久没找到

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-09 10:22:00
7楼
我的意思就是:
是用户编的还是SEIMENS提供的标准功能FC?
有兄弟回个话吗?

大杨

  • 精华:0帖
  • 求助:0帖
  • 帖子:32帖 | 91回
  • 年度积分:0
  • 历史总积分:289
  • 注册:2005年5月08日
发表于:2006-07-09 11:24:00
8楼
DPWR_DAT
这个是SEIMENS提供的

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-11 07:30:00
9楼
我个人觉得是用户编的
因为我在libraries找了好久没找到

mccandhmi

  • 精华:0帖
  • 求助:0帖
  • 帖子:27帖 | 239回
  • 年度积分:0
  • 历史总积分:349
  • 注册:2004年8月26日
发表于:2006-07-11 08:41:00
10楼
请问红烧大肠你们那里的MASTERDRIVE是VC还是MC.带了T400工艺模块吗?对于你的问题可以加我QQ:290132521

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-11 11:31:00
11楼
好的
太好了

继续扫盲

  • 精华:1帖
  • 求助:0帖
  • 帖子:28帖 | 186回
  • 年度积分:0
  • 历史总积分:264
  • 注册:2004年11月22日
发表于:2006-07-11 15:50:00
12楼
Calling SFC15 in the Publisher (CPU 318-2 DP) 

CALL "DPWR_DAT" 

LADDR :=W#16#64 //start address Q 100 

RECORD :=P#M 10.0 BYTE 16 //source area for user data 

RET_VAL:=MW100 //return value 


Calling SFC14 in the Receiver (CPU 316-2 DP) 

CALL "DPRD_DAT" 

LADDR :=W#16#78 //start address I 120 

RET_VAL:=MW100 //return value 

RECORD :=P#M 10.0 BYTE 2 //target area for user data 

继续扫盲

  • 精华:1帖
  • 求助:0帖
  • 帖子:28帖 | 186回
  • 年度积分:0
  • 历史总积分:264
  • 注册:2004年11月22日
发表于:2006-07-11 16:19:00
13楼
这个象是主站向多个从站循环读取控制,状态字.是读取配置信息或少量数据用的.你想学看明白也简单,装一个带Help文件的Step7,看看帮助文件,里面讲的挺有指导意义的.

继续扫盲

  • 精华:1帖
  • 求助:0帖
  • 帖子:28帖 | 186回
  • 年度积分:0
  • 历史总积分:264
  • 注册:2004年11月22日
发表于:2006-07-11 16:32:00
14楼
子程序SFC14 15 的说明我贴给你了.

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-12 07:38:00
15楼
谢谢你
阿连兄:
RECORD :=P#M 10.0 BYTE 16 //source area for user data
RECORD :=P#M 10.0 BYTE 2 //target area for user data 
就是这两句了
上面的一大段程序主要也是这个问题:
我在问题是sfc15分配的mb10到mb26地址中控制是如何安排的,比如,正转,反转,点动,启动等等
sfc14分配的mb10到mb12地址中控制是如何安排的,比如,正转,反转,点动,启动等等
再次感谢!!!!!!!!!

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-12 07:49:00
16楼
是不是要在MASTERDRIVES CBP和MICROMASTER 中设定?
因为我看了sfc14和sfc15的说明,它这介绍LADDR,RET_VAL,RECORD.


这样的话,我就不知道控制是怎么样的了.

继续扫盲

  • 精华:1帖
  • 求助:0帖
  • 帖子:28帖 | 186回
  • 年度积分:0
  • 历史总积分:264
  • 注册:2004年11月22日
发表于:2006-07-12 08:40:00
17楼
Masterdrives是要设定好的,你要知道怎么点动的话,主要是看Masterdrives里的参数,你需要安装DriveES 或者Drivemonitor
而且在STEP7里也要对硬件配置进行设定.在Step7的Help文件里:Example of Configuring Direct Data Exchange.(通过查DPWR_DAT)和这个例子类似.你明白道理就行了,要想把正转,反转,点动,启动等等搞明白的话比较浪费时间,因为是编程的人定的,你肯定要反过来猜.

红烧大肠

  • 精华:1帖
  • 求助:0帖
  • 帖子:46帖 | 493回
  • 年度积分:0
  • 历史总积分:722
  • 注册:2006年6月05日
发表于:2006-07-12 15:06:00
18楼
多谢!!!!阿连兄

我看看再说。
我把你加为好友了
有什么问题我可以在工控网上发信息给你
我是江苏张家港

热门招聘