你的位置: 首页 > 工业控制 > 西门子plc

S7-300与S7-300之间使用CP342-5做从站的PROFIBUS-DP通讯

2017-01-27 10:15:48 | 人围观 | 评论:

这里我们使用CP342-5做从站和S7-300进行DPROFIBUS-DP通讯。
分别建立两个300的站点:


下面我们开始对CP 342-5智能从站进行硬件组态:
在硬件组态页面组态机架,CPU,组态CPU的时候不用建立PROFIBUS网络

从站组态完成,保存编译
下面开始进行对主站的组态:
在硬件组态页面组态机架,CPU,连接从站建立的PROFIBUS(1)网络


下面我们给主站PROFIBUS网络中组态的CP342-5分配I/O


从上面的地址我们可以知道,在主站中CP342-5的输入是IB22-IB53,
输出是QB12-QB43。这里的IB22-IB53, QB12-QB43没有实际的物理点,在主站编程的时候可以直接的使用,在从站编程的时候需要使用FC1,FC2进行映射,下面我们进行说明FC1,FC2的编程。
打开从站,在OB1或者OB35内进行编程:

上图中的意思是将主站的QB256-QB271(共32个字节)映射到从站的MB10为开始的10个字节中去

上图中的意思是将主站的IB256-IB271(共32个字节)映射到从站的MB50为开始的10个字节中去


关于FC1,FC2中CPLADRR起始地址的解释:
打开从站的硬件组态页面


特别提示:为了防止发生错误到时CPU停机,建议在程序内添加OB82,OB85,OB86,OB122
OB82:诊断中断,如果使能一个具有诊断中断模块的诊断功能(例如断线、传感器电源丢失),出现故障时调用OB82,如果程序中没有创建OB82,CPU进入停止模式。诊断中断还对CPU所有内外部故障,包括模块前连接器拔出、硬件中断丢失等作出响应。
OB85:用于处理操作系统访问模块故障、更新过程映像区时I/O访问故障、事件触发但相应的OB没有下载到CPU等事件,事件出现,CPU自动调用OB85报错,如果程序中没创建OB85,CPU进入停止模式。
OB86:用于处理扩展机架(不适用于S7-300系列)、PROFIBUS-DP主站、PROFIBUS-DP或PROFINET  I/O分布I/O系统中站点故障等事件,事件出现,CPU自动调用OB86报错,如果程序中没有创建,CPU进入停止模式。
OB122处理与I/O地址访问故障有关的事件,例如访问一个I/O模块时,出现读故障等。如果上述故障出现,在程序中没有创建OB121、OB122,CP进入停止模式。





标签: