分享

S7-1200与MM4变频器PROFIBUS通讯

 金玉满堂jjnla8 2019-09-24

1、MM440周期性数据通讯的报文说明

MM440周期性数据通讯报文有效 数据区域由两部分构成,即PKW区(参数识别ID-数值区)和PZD区(过程数据),见图1。

PKW区最多占用4个字,即PKE(参数标识符值:占用一个字)、IND(参数的下标:占用一个字)、PWE1和PWE2(参数数值:共占用两个字)。

S7-1200使用功能块DPRD_DAT/DPWR_DAT读取和修改参数需要占用4个PKW,即调用一次功能块可以修改一个参数。PKW区的说明见表2。下面分别介绍一下PKW区的四个字。

 图1

图2

(1)第一个字PKE:参数识别标识ID,见图3。

图3

参数识别标记ID(PKE)总是一个16位的值,位0~10(PNU)包括所请求的参数号码,位11(SPM)用于参数变更报告的触发位,位12~15(AK)包括任务识别标记ID(见图4)和应答识别标记ID(见图5)。

图4

图5

(2)第二个字IND:参数的下标完整的参数号码是由基本参数号码和下标(PNU页号)中的位7产生,见图6。因为MM440参数号码没有超过4000,所以在读取和修改参数号为2000到3999时位7中必须为1。

图6

(3)第三个字PWE1和第四个字PWE2:参数数值,见图7。总是以双字(32位)来传送参数值(PWE)。在PPO报文中,仅一个参数值能被传送。由PWE1(高位有效字:第三个字)和PWE2(低位有效字:第四个字)组成一个32位参数值。用PWE2(低位有效字:第四个字)传送一个16位参数值,这种情况下,必须在PROFIBUS-DP主站中,设定PWE1(高位有效字:第三个字)为零。

图7

位0到15(PWE2):用于16位参数的参数值或用于32位参数的低位部分。

位16到31(PWE1):用于等于零的1位参数或用于32位参数的高位部分。

2、1200PLC硬件组态和站地址设置本例中主站选用的是1214C+CM1243-5 DP通讯模块,从站MM440的DP地址为3,选择的报文结构是PPO1,即含有4个PKW和2个PZD。也可以选择其他报文类型,只要含有4个PKW就可以,如下图:

3、周期性DP通讯读取和修改参数例程首先在主程序OB1块中调用使用功能块DPRD_DAT/DPWR_DAT读取和修改参数,功能块中LADDR管脚直接同一选择地址277,读写两个块LADDR管脚地址必须设置一致,否则可能会出现读写不统一的情况。

(备注:1200/1500定义LADDR管脚直接可以在管脚下标选项中直接选择,300/400STEP7TIA环境中需要手动输入,例如:W#16#100

因为参数2000以下和2000以上的报文中IND不同,本文则以实例分别介绍如何读取和修改MM440的单字、双字和浮点数的三种参数类型。

(1) 单字:修改参数P2013[0]为4,如图:

修改参数请求报文
PKE=MW200=200D
IND=MW202=0080
PWE1= MW204=0000
PWE2= MW206=0004
实际应答报文
PKE= MW300=100D
IND= MW302=0080
PWE1= MW304=0
PWE2= MW306=4

(2) 双字:修改参数P2200[1]为1,如下图。修改参数请求报文
PKE= MW200=80C8
IND= MW202=0080
PWE1= MW204=0001
PWE2= MW206=0000

实际应答报文
PKE= MW300=50C8
IND= MW3002=0080
PWE1= MW304=0001
PWE2= MW306=0000

(3) 浮点数:修改参数P2240[1]为30.0,如下图。

修改参数请求报文
PKE= MW200=80F0
IND= MW202=0080
PWE1+PWE2= MD204=30.0

实际应答报文
PKE= MW300=50F0
IND= MW302=0080
PWE1+PWE2= MD304=30.0

来源:网络

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多