2.4.3  西门子PLC串口网络设定

更新于 2026年10月10日 版权声明
2.4.3 西门子PLC串口网络设定

在串口网络使用之前,必须对网络站点的地址、通信各方的串口,甚至使用的电缆都要进行设置,以确保各方通信参数相符。要记住西门子连网的格言:你糊弄它,它就糊弄你!设置的通信参数不相符,网络将无法顺利工作。

1.S2-700机串口网络设定

(1)CPU模块设定

新出厂的S2-700 CPU通信口的通信参数都有缺省设置,其通信速率为9.6kbaud/s,站址设为2。如要更改这个缺省设置,可在Micro/WIN软件或Windows的控制面板中打开Set-PG/PCInterface进行。事实上,对多站点的网络,这个更改则总是需要的。因为在同一个网络中,各个站的地址总不能都设为2吧!

为此,要更改通信口的地址。当然通信速率也可更改。这个更改可先在S7-200编程软件的Communications(通信)窗口中进行。图2-41所示的即为该窗口,可用鼠标点击指令树中Communications项,或View菜单中的Communications图标打开。

在该窗口上,Local(本地)显示的是运行Micro/WIN的编程器(计算机)的网络地址。默认的地址为0。使用Remote(远程)下拉选择框可以选取试图连通的S7-200 CPU地址。缺省的地址为2。可输入新值,予以更改。

这个更改也可先在S7-200编程软件的Communication Ports(通信端口)选项卡中进行。图2-42所示为Communication Ports(通信端口)选项卡窗口。

图示

图2-41 Communications(通信)窗口

图示

图2-42 Communication Ports(通信端口)选项卡窗口

在该窗口中有:

PLC地址(PLC Address):设定S7-200 CPU通信口的地址。如果有两个通信口,它们的地址可以相同,因为两者不属于一个网络;

最高地址(Highest Address,HSA):它定义一个主站寻找其他主站的最高地址。设置HSA限制了最后一个主站(最高地址)必须检查的地址间隙。限制地址间隙的长度可以最小化寻找和连接另一个主站所需要的时间。最高站地址对于从站地址没有影响。主站仍然可以与地址大于HSA的从站通信。总的规则是应该在所有的主站上设置相同的最高站地址。HSA的缺省值是31。输入通信网络上站点的最高地址;

波特 率(Baud Rate):设置通信速率。可从下拉列表中可以选择9.6K、19.2K、187.5K;

重试次数(Retry Time):输入通信失败时重新尝试的次数;

地址间隙刷新因数(GapUpdate Factor):设置本站每隔几次获得网络令牌后,尝试在本站地址和下一个已知(活动)的主站地址的空间内寻找新加入的主站(仅在本站做主站时有效)。一般情况下使用缺省值10就比较合适。

该窗口左边括号中的数值是相应项可能的取值范围。

设置合适的最高地址和地址间隙刷新因数可以提高网络的运行性能。

假设一个网络中有2号站和10号站作为主站,(10号站的)最高地址设置为15。则对于2号站来说,所谓地址间隙就是3~9的范围;对于10号站来说,地址间隙就是11到最高站址15的范围,同时还包括0号和1号站。

网络通信中的主站之间会传递令牌,分时单独控制整个网络上的通信活动。网络上的所有主站不会同时加入到令牌传递环内,因此必须由某个持有令牌的主站定时查看比自己高的站址是否有新的主站加入。刷新因数指的就是在第几次获得令牌后检查一次高站址。

如果为2号站设置了地址间隙因数3,则在2号站第三次拿到令牌时会检查地址间隙中的一个地址,看是否有新的主站加入。

设置比较大的因数会提高网络的性能(因为无谓的站址检查少了),但会影响新的主站加入的速度。

以上设置仅对通信主站有效。而S7-200是否也作为主站应在它的特殊寄存器SM30、SM130中设定(见关于自由协议通信设定)。对于Micro/WIN、一些HMI(人机界面)TD200也有类似的设置。上述更改,即更改后系统块,要下载到S2-200的CPU中。下载后,新的设置才起作用。

(2)计算机与PPI电缆设置

首先,打开编程软件Step7 Micro/WIN,如图2-43所示。在这个图的View上,用鼠标左键双击图标Set PG/PC Interface(图的1处)(安装好编程软件Step7Micro/WIN,在Win-dow的控制面板上,也有此图标,双击它的效果相同),弹出Set PG/PC Interface窗口。

图示

图2-43 计算机方设置1

接着,在SetPG/PCInterface窗口的PPI选择卡的Interface Parameter Assignment(图的2)处,选择PC/PPI Cable(PPI)。

继而,点击Properties按钮(图的3处),将弹出Properties-C/PPI Cable(PPI)窗口。可在其中的Station Parameters下的Address项(图的4处)选择本计算机的站点地址编号。本例地址选为0。该窗口还有其他选项,也可作相应选择。

图示

图2-44 计算机方设置2

最后,选择使用计算机的那个串口或USB口。办法是击Local Connection按钮,之后将出现Local Connection卡板,如图2-44所示,从中可对其进行选择。

至于电缆,如果使用的是智能多主站电缆(Micro/WIN V3.2 SP4以上版),只需将RS-232C/PPI电缆的DIP开关5设置为“1”,而其他设置为“0”;而USB/PPI电缆不需要设置。老版本的电缆需要按照电缆上的标记设置DIP开关。

2.S7-200串口自由协议通信设置

S7-200 CPU的通信口可以设置为自由协议模式。为此,可通过用户程序把设置值写入特殊寄存器SM30(用于Port0)及SM130(用于Port1),进而完成设定。SM30与SM130字节各位的含义见表2-14。

表2-14 SM30与SM130字节各位的含义

图示(https://www.daowen.com)

设置为自由协议模式后,通信口就不支持其他通信协议(比如PPI),S7-200的编程软件Micro/WIN也将不能与PLC通信。但自由协议只能在PLC处于运行状态才生效。故只要把PLC重置于编程模式仍可与编程软件通信。此外,通过程序用值“00”重写SMB30.00及00位,按此重复定义后,将不再执行自由协议,也可恢复与编程软件通信。

如果调试时需要在自由协议模式与PPI模式之间切换,可以使用SM0.7的状态决定通信口的模式;而SM0.7的状态反映的是CPU运行状态开关的位置(在RUN时SM0.7=“1”,在STOP时SM0.7=“0”)

自由协议通信的核心指令是发送(XMT)和接收(RCV)指令。在自由协议通信常用的中断有“接收指令结束中断”、“发送指令结束中断”,以及通信端口缓冲区接收中断。

3.S7-300/400串口设定

这个设定也称网络组态。要使用西门子编程软件。要做两个组态:一是MPI网络及其PLC站点的组态;二是全局数据组态。

(1)MPI网络及其PLC站点的组态

MPI网络组态是确定站点数,设定站点地址及网络通信有关参数。PLC站点组态是选用CPU型号、电源、机架及信号模块等有关模块,以按要求构成PLC控制系统。其具体步骤是:

1)生成网络及其站点。以3个S7-300站点为例。其过程为:首先,在STEP7中生成MPI网络项目;其次,在MPI网络项目中生成SIMATIC 300(1)、SIMATIC 300(2)及SI-MATIC 300(3)站点;最后,对每个站点分别确定选用的CPU、电源及其他模块,进行硬件配置。配置的结果如图2-45所示。

图示

图2-45 生成MPI网络及其站点

2)MPI网络连接。在MPI网络项目中,双击“MPI图标”,打开“NETPRO”窗口,选择MPI(1)进行组态。这时,可对一条红线(MPI网线)和三个互不相连的站点上建立连接。办法是分别用鼠标左键压住站的红点,并拖到MPI网线上。连接情况见图2-46 MPI(1)网络连接。注意,连接完成后要存盘。

3)连接后再用鼠标右键点击各个站点,修改通信参数或进行各站点的硬件配置。具体过程与单机系统类似,这里不再赘述。

(2)全局数据表组态

如果要使用全局数据表链接通信,还需要进行全局数据表组态。其过程是:

1)生成空GD表。这可在图2-46所示的“NETPRO”窗口上,选中MPI网络线(变粗)。然后点击“OPTIONS”菜单项下的“DEFINE GLOBAL DATA(定义全局数据)”项。这时将弹出如图2-47所示空GD表。

图示

图2-46 MPI(1)网络连接情况

图示

图2-47 空GD表

2)填写CPU。双击“GDID”右边的方格,在出现的“SELECT CPU”对话框中双击站1的CPU图标,该CPU就出现在“GDID”右边的方格中。用同样方法将站2的CPU和站3的CPU放到对应的方格中。图2-48所示为已完成3个CPU的选用。

3)填写GD包。在CPU下面的一行中,生成1号GD环1号GD包中的1号数据。这可用鼠标右键点击CPU 314下面的方格,在出现的菜单中选择“SENDER”(发送者),该方格变深色,且在左端出现“>”符号。这时输入要发送的全局数据的地址MW0。点击CPU313下面的方格单元,输入要接收的全局数据的地址QW0。该方格的背景为白色,表示在该行中CPU 313是接收站。

用同样方法可以填写其余的GD数据。其示例如图2-49所示。

图示

图2-48 已完成3个CPU的选用

图示

图2-49 GD数据包填写示例

提示:每行中应定义一个并且只能有一个CPU作为数据的发送方。要输入数据的实际地址。

这里变量引号“:”之后的数据为变量的复制因子,是用来定义数据区以字节为单位的长度。例如MB20:8表示数据区是从MB20开始的连续8个字节。而所占区域还要加上两个说明字节,共占10字节的区域。MW0∶11表示数据区是从MW0开始的连续11个字,加上两个说明字节,共占24个字的区域。

4)第一次编译GD表。其办法是,点击菜单项“GDTABLE”下的“COMPILE...”项。之后将生成GD环,如图2-50所示。例如,GD1.2.1表示,1号GD环2号GD包中第1组变量。

5)设置扫描速率。第一次编译GD以后,点击菜单项“VIEW”下的“SCAN RATES”项。之后,每个数据包将增加标有“SR”的行,如图2-51所示。这行可用来设置该数据包的扫描速率(1~255)。S7-300默认值为8,S7-400默认值为22。CPU-400扫描速率设置为0,表示是事件驱动的GD发送和接收。

6)设置GD包状态双字的地址。第一次编译GD以后,再点击菜单项“VIEW”下的“STATUS”项,将出现如图2-52所示的GDS行。可在其上给每个数据包指定一个用于反映状态双字的地址(不过此图中还没有给出此状态双字赋予地址)。其中GST是各GDS行中的状态双字相“与”的结果。有了这状态双字,可便于用户程序能及时了解通信的有效性和实时性,增强了系统的诊断能力。

图示

图2-50 第一次编译后生成的GD环

图示

图2-51 出现标有“SR”行的画面

图示

图2-52 出现标有GDS行的画面

7)以上设置下载个PLC,然后运行PLC,才能进行通信。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)