登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:s7200 与仪表自由口通讯的问题

点击:6213 回复:24

我想学习S7200自由口通讯。可否举个简单的例子,如何用XMT和RCV。比如同一仪表通讯,通讯协议是当仪表接收到#01时,回传实时测量值。问题是我该如何写PLC的程序。是用中断还是定时器与仪表通讯?可否给个标准的例子给我!不胜感激!
07-07-25 19:08
S7-200系统手册上附有相关例子。
07-07-26 06:16
查手册是关键啊!还是要多看手册,而且200有中文的手册。
07-07-26 08:47
最好能给个例子,手册上的例子不适合我用啊
07-07-26 12:51
主要是把关于自由口的寄存器位看明白就差不多了.
07-07-26 14:02
寄存器我都设置好了 ,单次可以接受和发送 ,就是不能连续发送和接收。
最后修改:2007-7-26 22:53:04
07-07-26 22:28
ORGANIZATION_BLOCK 主程序:OB1
TITLE=程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD     SM0.7
O      SM0.1
EU
CALL   SBR0
Network 2
LD     SM0.7
ED
CALL   SBR1
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCK SBR_0:SBR0
TITLE=子程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD     SM0.0
MOVB   16#09, SMB30
MOVB   250, SMB34
MOVB   16#B0, SMB87
MOVB   16#0A, SMB89
MOVW   +5, SMW90
MOVB   5, SMB94
ATCH   INT0, 10
ENI
RCV    VB200, 0
END_SUBROUTINE_BLOCK
SUBROUTINE_BLOCK SBR_1:SBR1
TITLE=
BEGIN
Network 1
LD     SM0.0
MOVB   16#08, SMB30
END_SUBROUTINE_BLOCK
INTERRUPT_BLOCK INT_0:INT0
TITLE=中断程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD     SM0.0
XMT    VB100, 0
ATCH   INT1, 23
END_INTERRUPT_BLOCK
INTERRUPT_BLOCK INT_1:INT1
TITLE=
BEGIN
Network 1
LD     SM0.0
RCV    VB200, 0
END_INTERRUPT_BLOCK
07-07-28 10:43
我尝试用上面的程序,可是PLC发不出信号。
07-07-28 10:47
ORGANIZATION_BLOCK MAIN:OB1
TITLE=程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
LD     SM0.1
MOVB   16#09, SMB30
MOVB   250, SMB34
MOVB   16#B0, SMB87
MOVB   16#0A, SMB89
MOVW   +5, SMW90
MOVB   50, SMB94
Network 2
LD     SM0.1
MOVB   5, VB100
MOVB   '#', VB101
MOVB   '0', VB102
MOVB   '1', VB103
MOVB   16#0D, VB104
MOVB   16#0A, VB105
Network 3
LDN    M0.0
TON    T33, +50
Network 4
LDW<=  T33, +20
=      Q0.1
Network 5
LDW>=  T33, +30
=      Q0.0
Network 6
LD     T33
=      M0.0
Network 7
LD     Q0.1
EU
XMT    VB100, 0
Network 8
LD     Q0.1
EU
RCV    VB200, 0
END_ORGANIZATION_BLOCK
07-07-28 13:44
上面是我尝试用定时器用作的发送和接收通讯,可是仍然没有信号发出。
各位,可否帮我看看 !
07-07-28 13:46

上一页下一页

工控新闻

更多新闻资讯