s7300及s7200的mpi通讯以及mcgs组态超详细教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
s7300及s7200的mpi通讯以及mcgs组态超详细教程
S7300 与 S7200之间的mpi通讯和组态
在通讯之前先得确认cpu没有报任何错误,首先硬件组态,组态完毕后下载进CPU 下载后先在线看是否有错误cpu指示灯是否有SF BF报警灯亮。
(BF1灯亮为通信故障检查电缆是否松动接触不良,九针接口螺丝拧紧)(SF灯亮为硬件组态出错)
首先打开STEP7 SP9 200编程软件写入测温程序
公式为 T = 500 * (AIWX – 6400)/(32000 – 6400) – 0
化简后 T = 5 * (AIWX - 6400)/256
由通道18转换上来的数值为word类型而温度要显示小数点后的数值就需要转换为浮点形的数据,浮点型的数据为32位二进制数,所以就有了如上的转换,接着乘5除256即出现最终的温度值。
也可用库来调用,这样方便一些
温度转换程序的结果说明程序无问题可正常测温。
接着打开通讯
设置为PLC地址为2 波特率设置为187.5kbps
点确认下载一次即可。
然后打开博途,组态硬件。
在硬件组态完成后确认CPU没有任何错误信息错误指示灯亮。
如有即是组态错误。
将地址设置为3 传输率设置为187.5kbps 如设备中含有cp通信模块cpu会自动加1的地址。
Mpi地址不可相同。
接着写一个X_GET 指令
返回值的显示格式要为浮点数,这样才可以看到正确的信息。
根据实际测试,300的温度值可以变应该和AI模块中滤波时间有关系。
X_GET 指令中 DENT_ID为刚刚设置200PLC中的站地址
由于300中没有v存储区访问200的v存储区得用指针方式寻址,P#DB1.DBX20.0 BYTE 4 代表的含义为从vb20开始的四个字节。
也就是VD20。
RET_VAL 中可以看到返回值。
此返回值开头为8时有错误,可按F1参考说明手册查找相应问题。
PLC程序无错误,即可开始组态。
打开MCGS 新建一个工程,打开设备窗口,添加一个为西门子CP443-1以太网模块的设备将其添加到设备窗口中
将本地的ip地址和plc的ip地址填写完毕后新建一个变量点击右边的添加设备通道
接着给通讯状态连接一个变量
确认完成后点击右边的启动设备调试通讯状态的调试数据为0 说明通讯成功如变量值关联正确也会传回相应的数值。
接着添加两个文字框一个写通讯成功一个写通讯失败调节可见度为通讯成功com = 0 通讯失败 com = 1
添加一个文字框罐子水温:再添加一个输入框
关联变量使用单位温度确认即可
接着下载程序启动仿真结果如下。
读回来的值为300 GET 200 的温度值。
教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。
教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。