MM440变频器中的PZD区怎样与modbus协议中的地址对应起来呢?
问题补充:
MM440变频器应该支持Modbus协议的,我在好多资料上都看到了它的编程例子,但是就是不知道Modbus协议里的40001对应MM440里的地址是多少???难道是0000吗?也就是说用40001可以读取或修改r0000的参数吗????还有这里的好心人怎么都说MM440不支持Modbus协议呢?我知道用USS协议比较方便,但是因为我要用无线通信模块来把CPU224XP和MM440连起来,怕用USS协议不好用,所以用的是Modbus协议,
最佳答案
PZD是Profibus DP中的,而mm40是不支持modbus,它支持USS协议,使用USS协议与200可以通信的。
传统的PLC与变频器之间的接口大多采用的是依靠PLC的数字量输出来控制变频器的启停,依靠PLC的模拟输出来控制变频器的速度给定,这样做存在以下问题:
1、需要控制系统在设计时采用很多硬件,价格昂贵
2、现场的布线多容易引起躁声和干扰
3、PLC 和变频器之间传输的信息受硬件的限制,交换的信息量很少。
4、在变频器的启停控制中由于继电器接触器等硬件的动作时间有延时,影响控制精度。
5、通常变频器的故障状态由一个接点输出,PLC能得到变频器的故障状态,但不能准确的判断当故障发生时,变频器是何种故障。
如果PLC通过与变频器进行通讯来进行信息交换,可以有效地解决上述问题,通讯方式使用的硬件少,传送的信息量大,速度快,等特点可以有效地解决上述问题,另外,通过网络,可以连续地对多台变频器进行监视和控制,实现多台变频器之间的联动控制和同步控制,通过网络还可以实时的调整变频器的参数。
目前各个厂家的变频器都相继的开发出了支持连网的功能,比如,很多变频器都有了支持现场总线(如:DEVICENET、PROFIBUS、AS_I)等的接口协议,可以很方便的与PLC进行数据通信。现在主要介绍西门子S7-200和MicroMaster变频器之间的通讯协议USS,使用USS通讯协议,用户可以通过程序调用的方式实现S7-200和MicroMaster变频器之间的通信,编程的工作量小,通讯网络由PLC和变频器内置的RS485通讯口和双绞线组成,一台S7-200最多可以和31台变频器进行通讯,这是一种费用低、使用方便的通讯方式。
一、USS通讯协议介绍
USS通讯协议的功能,所有的西门子变频器都带有一个RS485通讯口,PLC作为主站,最多允许31个变频器作为通讯连路中的从站,根据各变频器的地址或者采用广播方式,可以访问需要通讯的变频器,只有主站才能发出通讯请求报文,报文中的地址字符指定要传输数据的从站,从站只有在接到主站的请求报文后才可以向从站发送数据,从站之间不能直接进行数据交换。在使用USS协议之前,需要先安装西门子的指令库。USS协议指令在STEP7—MICRO/WIN32指令树的库文件夹中,STEP7—MICRO/WIN32指令库提供14个子程序、3个中断程序和8条指令来支持USS协议。调用一条指令时,将会自动地增加一个或几个子程序。
USS协议使用CPU的下列资源:
1)USS协议占用PLC的通讯端口0或1,使用USS——INIT指令可以选择PLC的端口是使用USS协议还是PPI协议,选择USS协议后PLC的相应端口不能在做其它用途,包括与STEP7-WICRO/WIN32的通讯,只有通过执行另外一条USS指令或将PLC——CPU的模式开关拨到RUN或STOP状态,才能钟新在进行PPI通讯,当PLC和与变频器通讯中断时,变频器将停止运行,所以在本例中选择CPU226 因为它有两个通讯端口,当第一个口用于USS通讯时,第二个端口可以用于程序监控,USS指令要占用2300~3600字节的程序存储空间和400个字节的变量存储区间
2)变频器的通讯与CPU的扫描时异步的,完成一次变频器的通讯通常需要几个CPU的扫描周期,通讯时间和链路上变频器的台数、波特率和扫描周期有关,本例中通讯的波特率设定为19200,变频器的台数为3台,经实际调试检测通讯时间大约为50ms.
二、使用USS协议的步骤:
1)安装指令库后在STEP7-Micro/win32指令树的/指令/库/USS PROTOOL文件夹中将出现8条指令,用它门来控制变频器的运行和变频器参数的读写操作,这些子程序是西门子公司开发的用户不需要关注这些指令的内部结构,只需要在程序中调用即可。
2)调用USS—INIT初始化改变USS的通讯参数,只需要调用一次即可,在用户程序中每一个被激活的变频器只能用一条USS-DRIVE-CTRL指令,可以任意使用USS-RPM-X 或USS-WPM-X指令,但是每次只能激活其中的一条指令。
3)为USS指令库分配V存储区。在用户程序中调用USS指令后,用鼠标点击指令书中的程序块图标,在探出的菜单中执行库内存命令,为USS指令库使用的397个字节的V存储区指定起始地址,
4)用变频器的操作面板设置变频器的通讯参数,使之与用户程序中所用的波特率和从站地址相一致。
5)连接CPU和变频器之间的通讯电缆,为了提高看干扰能力最好采用屏蔽电缆。
三、USS指令说明
1、初始化指令USS-INIT
初始化指令USS-INIT用于允许或禁止PLC和变频器之间的通讯,在执行其他USS协议前,必须先成功的执行一次USS-INIT指令,只有当该指令成滚执行完成后其完成位(DONE)置位后,才能继续执行下面的指令。
2、控制指令USS-CTRL
USS-CTRL指令用于控制已经用USS-INIT激活了的变频器,每台变频器只能使用一条这样的指令,该指令将用户命令放在一个通讯缓冲区内,如果指令的参数DRIVE指定的变频器已经激活,缓冲区内的命令将被发送到指定的变频器.
3、读取变频器参数的USS_RPM_X指令
读取变频器参数的指令包括USS_RPM_W; USS_RPM_D; USS_RPM_R三条指令,分别用于读取变频器的一个无符号字,一个无符号双字和一个实数类型的参数.
4、写变频器参数的USS_WPM_X指令
写变频器参数的指令包括USS_WPM_W; USS_WPM_D; USS_WPM_R三条指令,分别用于向指定变频器写入一个无符号字,一个无符号双字和一个实数类型的参数,该指令的参数如表4所示:
四、在使用USS协议时变频器的相关参数设定如下(以MM440为例)
1、P0003=3 允许访问变频器的所有参数。
2、P0970=1 允许变频器通过参数复位。
3、P0700=5 变频器的控制方式选择为通讯方式。
4、P2010[2>=6 变频器的USS波特率选择为9600
5、P2011[0>=11 变频器的USS地址0~31
五、应用实例
1、控制说明
自动化生产线运载小车是工业自动化生产过程中一种非常实用的机械,它主要用在工厂的自动化生产上不同的生产线之间以及不同的工位之间的物料搬运。它的一个完整的动作周期包括:当一个工位需要装配零件时,该工位的操作者在该工位的操作盘上输入需要的零件名称,输入的信号通过MIS(或ERP)系统生成一个作业信息,该作业信息包括所需零件的存放位置,零件的外型尺寸及所需工位的工位号,然后,MIS(或ERP)系统把该作业信息发送到运载小车的控制系统中,如果运载小车正在作上次接收到作业,则本次下发的作业信息存储到运载小车的作业队列中,前面所接收到作业做完后执行该作业,执行该作业的步骤是运行到取料位置,根据零件的外型尺寸,决定取料时升降和左、右的运行位移,取料完成后,带载运行到所需零件的工位.运载小车动作过程可分为前进、后退;上升、下降;向左、向右,三个方向的运动,在控制系统的设计上,前后运行采用一台变频器,上升下降运行采用一台变频器;左右运行采用一台变频器。控制系统采用西门子S7-200系列的CPU226,CPU226和三台变频器之间采用USS协议进行通讯.
参考资料:http://www.ad.siemens.com.cn/club/bbs/post.asp?b_id=3&a_id=488698&num=11
提问者对于答案的评价:
谢谢各位好心人,但是问题还没有解决,我会努力
专家置评
在USS协议的报文中,也有PZD和PKW。PZD是控制字,主要用来控制变频器的起停、方向和速度。建议plczhang可以参考以下链接文档中的相关内容:
S7-200 Micro’n Power 参考资料的免费下载链接:文档编号:A0136
http://www.ad.siemens.com.cn/download/DocList.aspx?TypeId=7&CatFirst=1&CatSecond=2&CatThird=-1
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc321288.html