ModbusInterfaceTrainingLABMVI56-MCMMVI56-MCMLadderLogic1.如右图创建新的模块,或从样例程序中复制已经创建的MCM模块。MVI56-MCMLadderLogic2.如果是新创建模块,则需要选择的模块类型是1756-MODULE。MVI56-MCMLadderLogic3.新建模块的设置如图所示。如果是从样例程序中复制的模块,那么这些设置都已经内置。MVI56-MCMLadderLogic4.下个步骤是复制样例程序的User-Defined里所有的数据类型到新的程序中。MVI56-MCMLadderLogic5.然后复制样例程序中的tag到新的程序。需要复制的tag包括:ColdBoot(模块冷启动),WarmBoot(模块热启动)和MCM。如果新创建MCMtag,那就必须仔细参考样例程序和说明书对新的MCMtag预先填写设置数据。MVI56-MCMLadderLogic6.MCM.ModDef的数据设置。此Tag设置模块的基本数据传送结构MVI56-MCMLadderLogic7.MCM.Port2和MCM.Port3的数据设置。这两个Tag设置模块的两个Modbus端口的设置。每个Tag的具体含义请参考说明书。样例程序中把模块的Port2设置成Modbus主站,Port3设置成Modbus从站,并设置了相同的通讯参数。模块运作正常时,Port2可以成功向Port3发送Modbus命令。先要将Port2和Port3用两根RJ45-RS232和一根RS232NULLMODEM线连接。MVI56-MCMLadderLogic8.MCM.P2Cmd定义了P2端口上的Modbus命令。MCM.P2Cmd[0]这条指令的含义是从Modbus从站地址1的40001开始,用功能代码3读取10个寄存器,所读的数据放置在模块的内部数据库600开始。每个端口最多100条命令。MVI56-MCMLadderLogic9.MCM.P3Cmd定义了P3端口上的Modbus命令。如果P3端口做从站,这些设置的命令将无效。MVI56-MCMLadderLogic10.MCM.InStat用来查看模块的状态数据。MVI56-MCMLadderLogic11.复制MainRoutine里的此行程序,以及两个子程序:ReadData和WriteData。MVI56-MCMLadderLogicMCMModuleModbusNetwork12.ControlLogixTag和模块的内部数据库的对应关系,以及数据流向。a.需要向Modbus网络写数据c.从Modbus网络读到的数据c.数据写向Modbus网络b.数据先写到模块内部数据库a.收到Modbus网络数据先放到模块内部数据库b.再写到CLxTag梯形程序处理完成(样例程序已完成这部分功能)设置模块的Modbus功能来实现SimpleStepsToMakeYourOwnMCMLadder总结:---从样例程序复制MCM模块到新程序---复制user-defined数据类型---复制Tags---复制ladders和routines---通过MCMTag设置您的Modbus网络应用※样例程序运行后,连接端口2和3后,WriteData[0]到WriteData[9]的数据会经过模块,Modbus网络,模块,最后到ReadData[0]到ReadData[9]内。