📄 西门子(中国)自动化与驱动集团-应用实例-自由口模式下plc与计算机的通信.htm
字号:
<TR>
<TD align=middle bgColor=#ece0e0
class=v15>VB183</TD></TR>
<TR>
<TD align=middle bgColor=#ece0e0
class=v15>VB184</TD></TR>
<TR>
<TD align=middle bgColor=#ece0e0
class=v15>VB185至VB198</TD>
<TD align=middle bgColor=#ece0e0
class=v15>未使用</TD></TR>
<TR>
<TD align=middle bgColor=#ece0e0
class=v15>VB199</TD>
<TD align=middle bgColor=#ece0e0
class=v15>本机站号</TD></TR></TBODY></TABLE><FONT class=v15>
<P><IMG alt="" border=0 height=7 src=""
width=7> <B>程序清单</B>
<P><FONT color=#336699><B>主程序:</B></FONT> <BR>
<TABLE align=center border=0 width=430>
<TBODY>
<TR>
<TD colSpan=3>NETWORK 1</TD></TR>
<TR>
<TD width=50>LD</TD>
<TD width=130>SM0.1</TD>
<TD>//第一次扫描调用初始化子程序</TD></TR>
<TR>
<TD>CALL</TD>
<TD>initialize</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 2</TD></TR>
<TR>
<TD>LDB=</TD>
<TD>VB134, VB199 </TD>
<TD>//指令中的站地址与本机站地址相符</TD></TR>
<TR>
<TD>AB=</TD>
<TD>VB102, 5</TD>
<TD>//指令类型为读指令</TD></TR>
<TR>
<TD>A</TD>
<TD>M0.0</TD>
<TD>//BCC码校验正确</TD></TR>
<TR>
<TD>CALL</TD>
<TD>Read</TD>
<TD>//调用读子程序</TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 3</TD></TR>
<TR>
<TD>LDB=</TD>
<TD>VB134, VB199</TD>
<TD>//指令中的站地址与本机站地址相符</TD></TR>
<TR>
<TD>AB= </TD>
<TD>VB102, 6</TD>
<TD>//指令类型为写指令</TD></TR>
<TR>
<TD>A</TD>
<TD>M0.0</TD>
<TD>//BCC码校验正确</TD></TR>
<TR>
<TD>CALL</TD>
<TD>Write</TD>
<TD>//调用写子程序</TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 4</TD></TR>
<TR>
<TD>LD</TD>
<TD>M0.1</TD>
<TD>//指令接收完成后调用BCC码校验子程序</TD></TR>
<TR>
<TD>CALL</TD>
<TD>Verify</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 5</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM4.5</TD>
<TD>//当端口空闲时启动RCV</TD></TR>
<TR>
<TD>RCV</TD>
<TD>VB100, 0</TD>
<TD> </TD></TR></TBODY></TABLE>
<P><SPAN
style="COLOR: #336699; FONT-SIZE: 12px"><B>Read子程序:</B></SPAN>
<BR>
<TABLE align=center border=0 width=430>
<TBODY>
<TR>
<TD colSpan=3>NETWORK 1</TD></TR>
<TR>
<TD width=50>LD</TD>
<TD width=130>SM0.0</TD>
<TD width=250>//停止端口0的接收</TD></TR>
<TR>
<TD>R</TD>
<TD>SM87.7, 1</TD>
<TD> </TD></TR>
<TR>
<TD>R</TD>
<TD>M0.0, 1</TD>
<TD> </TD></TR>
<TR>
<TD>RCV</TD>
<TD>VB100, 0</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 2</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM0.0</TD>
<TD>//将数据写入发送缓冲区</TD></TR>
<TR>
<TD>MOVB </TD>
<TD>103, VB154</TD>
<TD> </TD></TR>
<TR>
<TD>MOVB</TD>
<TD>1, VB155</TD>
<TD> </TD></TR>
<TR>
<TD>HTA</TD>
<TD>*VD135, VB156, 16</TD>
<TD> </TD></TR>
<TR>
<TD>MOVB</TD>
<TD>26, VB174</TD>
<TD> </TD></TR>
<TR>
<TD>MOVB</TD>
<TD>21, VB153</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 3</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM0.0</TD>
<TD>//计算BCC校验码</TD></TR>
<TR>
<TD>FOR</TD>
<TD>VW177, +1, +16</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 4</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM0.0</TD>
<TD> </TD></TR>
<TR>
<TD>XORB</TD>
<TD>*VD181, VB180</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 5</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM0.0</TD>
<TD> </TD></TR>
<TR>
<TD>INCD</TD>
<TD>VD181</TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 6</TD></TR>
<TR>
<TD>NEXT</TD>
<TD> </TD>
<TD> </TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 7</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM0.0</TD>
<TD> </TD></TR>
<TR>
<TD>HTA</TD>
<TD>VB180, VB172, 2</TD>
<TD>//BCC校验码写入发送缓冲区</TD></TR>
<TR>
<TD colSpan=3> </TD></TR>
<TR>
<TD colSpan=3>NETWORK 8</TD></TR>
<TR>
<TD>LD</TD>
<TD>SM4.5</TD>
<TD>//发送反馈信息</TD></TR>
<TR>
<TD>XMT</TD>
<TD>VB153, 0</TD>
<TD> </TD></TR></TBODY></TABLE>
<P><SPAN
style="COLOR: #336699; FONT-SIZE: 12px"><B>Write子程序:</B></SPAN>
<BR>
<TABLE align=center border=0 width=430>
<TBODY>
<TR>
<TD colSpan=3>NETWORK 1</TD></TR>
<TR>
<TD width=50>LD</TD>
<TD width=130>SM0.0</TD>
<TD width=250>//停止端口0的接收</TD></TR>
<TR>
<TD>R</TD>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -