多台S7-200的plc如何用EM277进行通讯?
最佳答案
EM277是PROFIBUS专用模块,这个模块上面DB9为DP口,可以通过该模块实现S7-200与S7-300/400之间的PROFIBUS现场总线通信和MPI(多点接口通信)。但由于EM277只能作为从站,虽然S7-200CPU支持PPI、MPI、PROFIBUS和工业以太网通信方式,但多台S7-200之间通信一般采用PPI协议,因为该协议通过S7-200CPU自身的端口(Port0和Port1)默认的通信方式,否则就要外加专用模块。。
下面分别以S7200(CPU226CN+EM277)如何实现与S7-300CPU之间的PROFIBUS DP和MPI通信来说明。
首先必须安装EM277的GSD文件,步骤如下:在SIMAITC文件夹中有EM277的GSD文件“SIEM089D.GSD”(如果没有可以从西门子网站直接下载〕,然后在硬件组态界面中,选择菜单Options(选项)/Install New GSD,安装以后,在右边“Catalog”(硬件目录)中依次展开PROFIBUS DP/Additional Field Device(附加的现场装置)/PLC/SIMATIC/EM277 PROFIBUS DP。
PROFIBUS通信方式:硬件连接S7-300CPU的MPI端口与EM277的DB9端口通过PROFIBUS电缆利用PROFIBUS网络接头连接起来。在SIMATIC管理器中新建一个S7-300的项目,组态硬件,配置PROFIBUS(1)网络(设定传输速率默认1.5Mbits)和配置文件(DP),然后把EM277挂到PROFIBUS(1)网络上,把S7-200作为DP从站地址,在项目硬件组态界面中,依次展开右边“Catalog”(硬件目录):PROFIBUS DP/Additional Field Device(附加的现场装置)/PLC/SIMATIC,双击EM277 PROFIBUS DP,弹出“属性-PROFIBUS接口”对话框,将地址该为如“3”,单击“确定”按钮,分配DP从站的通信数据存储区,展开EM277 PROFIBUS DP,双击“1 Word In/1 Word Out”(每次主站S7-300接收为1个字节,送出的信息也为1个字),执行“编译并保存,并把硬件组态下载到S7-300CPU中。然后编写主站和从站的程序,并分别下载到各自的CPU中。在通信前,必须要将EM277的”站号“选择按钮旋转到硬件组态设定的地址(这里是”3“),断电后新设定的地址才有效。
MPI通信方式:硬件连接S7-300CPU的MPI端口与EM277的DB9端口通过PROFIBUS电缆利用PROFIBUS网络接头连接起来。一般S7-200CPU与S7-300CPU间的通信只能采用无组态通信,彼此无须组态,只需编写程序,但S7-300必须进行硬件组态。建立S7-300项目,设置主站MPI通信参数(通信波特率为187.5kbit/s)和MPI地址为”3“,执行”编译并保存“,然后下载到S7-300CPU中。打开STEP7-Micro/WIN,选择工具条中的”系统块“,并双击之,设置从站(S7-200)的通信参数(将S7-200的端口0的地址设定为”3“(从站MPI地址,不能与S7-300CPU相同),再设定波特率为187.5kbit/s(与S7-300相同),单击”确定“,并下载到S7-200CPU中。由于S7-200与S7-300之间的MPI通信只能采用单边无组态通信方式。在S7-300侧通过调用SFC68(发送数据)和SFC67(接收数据)分别实现将S7-300中某个数据写不在同一个S7站中的通信伙伴(S7-200)和从本地S7站(指S7-300)以外的通信伙伴(S7-200)读取数据。同时必须将EM277地址设定为”3“(与S7-200设定一致),设定完成后,还要将EM277断电,新设定的地址才能起作用。
提问者对于答案的评价:
ok
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc307781.html