FM350-1高速计数器模块可以连接24V增量编码器或5V增量编码器,一个通道连接的信号源可以是PNP型,也可以是NPN型。随硬件包装的光盘中,包含模块配置软件包和电子手册。在STEP7中配置FM350-1模块时,必须预先安装配置软件。以连接24V编码器为例,介绍FM350-1模块的使用。
图11-10 FM350-1端子接线图
1.FM350-1的接线
FM350-1的端子接线如图11-10所示。将24V增量编码器的输出A、B端连接到FM350-1的6、8号端子上,端子3、5可以给编码器提供24V电源,端子13、14、15为模块集成的数字量输入信号,分别为硬件门的启停信号和同步信号,端子17、18为模块集成数字量输出信号,用于两个比较器快速响应输出(设定比较值,当计数值接近设定的比较值时,触发输出),连接类型不同的编码器,需要在模块的侧面设定跳线开关,如图11-11所示。跳线开关分为A、D两个方向,开关指向A,表示连接5V编码器信号;开关指向D,表示连接24V编码器信号,本例中将调节跳线开关指向D。
2.FM350-1的硬件配置
在SIMATIC Manager硬件配置中,双击FM350-1模块,进入配置界面,点击“Encoders”图标,选择连接的编码器类型,如图11-12所示。选择“24V Incre-mental”,单倍频计数;在“Sensor inputs”选项中,可以选择连接信号源的类型,如源流入或源输出;在“Max.Count Frequency”选项中,选择输入信号的最大计数频率,如果输入频率低于20kHz时,应选择“20kHz”选项,增加信号的滤波时间。
图11-11 选择连接编码器类型
图11-12 FM350-1编码器选择界面
在操作模式选择界面中,可以选择计数范围、操作模式及门控制等参数,如图11-13所示。
图中,选择连续计数和软件门控制,如果选择硬件门控制,则需要在“Inputs”界面中进行配置,在“Inputs”界面中,还可以设置DI2(模块集成的第三个数字输入)的同步功能,通过集成的输入信号纠正当前的计数值,当输入信号触发时,将设定值作为当前的计数值,应用于快速移动的物体通过某一开关时,对当前计数值的快速设定,而不会产生大的偏差。在模块的属性中,如果选择产生中断,则“Hardware Interrupt Enable”界面被激活,可以选择产生中断的事件,中断将调用OB40(硬件中断)。在“Outputs”界面中,可以选择触发集成快速输出的事件,这些事件与设置的比较值有关,如图11-14所示。配置完成后编译存盘。
图11-13 FM350-1操作模式选择界面
图11-14 FM350-1集成输出的配置界面
3.FM350-1编程
在CPU中,编写FM350-1控制程序,将控制命令传送到FM350-1中,并读出计数值及反馈信息。安装FM350-1模块的配置软件后,在SIMATIC Manager中的“Libraries”中,将自动创建FM350-1的“FMX50LIB”函数库,打开函数库,将所有函数及UDT复制到当前的项目中。UDT2包含CPU与高速计数器的通信结构,根据UDT2创建数据块,例如DB1,将通信结构赋值到数据块DB1中,CPU发送命令后,定义在DB1中的值将传送到高速计数器中,同时模块的反馈信息存储于DB1相应的地址中。在OB1调用FC2的控制程序如下:
通过UDT2生成的DB1是CPU与高速计数器模块的通信数据区,在数据块中,包含FM350-1的地址信息,例如逻辑地址256存放在DB1.DBW6中,FM350-1的通道地址与逻辑地址相同,但是表达形式为指针形式,例如P#256.0,FM350-1接口区长度为16,这些参数的设定为固定模式,除此之外,DB1中还包括当前计数值、比较值及比较器状态等参数,对FM350-1模块的操作是通过调用FC2实现的。(www.xing528.com)
注意:
如果在模块属性配置中直接指定DB,则只需要调用FC2控制模块,不需要编程指定模块地址。
对函数FC2的参数解释如下:
DB_NO:指定CPU与FM350-1模块数据交换的数据块,本例为DB1。
SW_GATE:软件门,例如M1.1为1时,软件门打开,开始计数,为0时,软件门关闭。
GATE_STP:为1时,终止计数功能。
OT_ERR_A:复位OT_ERR操作故障。
SET_DO0:如果CRTL_DO0(DB1.DBX28.0使能比较器的快速输出功能)为1时,通过该参数可以直接控制FM350-1集成的第一个输出点。
SET_DO1:如果CRTL_DO1(DB1.DBX28.1使能比较器的快速输出功能)为1时,通过该参数可以直接控制FM350-1集成的第二个输出点。
OT_ERR:输出操作故障信息,为1表示有故障。
L_DIRECT:为1时,直接将DB1.DBD14中的值作为计数值。如果发送命令成功,FM350-1将此位复0。
L_PREPAR:为1时,将DB1.DBD14中的值作为预备值,出现特殊事件(例如周期计数模式中没有设定计数方向而到达上下限、同步操作、锁存功能触发等)将预备值作为实际的计数值。如果发送命令成功,FM350-1将此位复0。
T_CMP_V1:为1时,将DB1.DBD18中的值作为比较值1存放到模块中,根据模块“Outputs”界面中的配置决定DO0的输出。如果发送命令成功,FM350-1将此位复0。
T_CMP_V2:为1时,将DB1.DBD22中的值作为比较值2存放到模块中,根据模块“Outputs”界面中的配置决定DO1的输出。如果发送命令成功,FM350-1将此位复0。
C_DOPARA:为1时,将存储于DB1.DBD14中的数值作为命令源(有关命令格式参考模块手册),动态设定两个快速输出DO0、DO1的参数。如果发送命令成功,FM350-1将此位复0。
RES_SYNC:通过DI2及ENSET_UP、ENSET_DN、零脉冲信号进行同步操作,如果同步完成,同步状态位置1,通过RES_SYNC复位同步状态位,从而可以得到新的同步信息。如果发送命令成功,FM350-1将此位复0。
RES_ZREO:复位过零、上下限等状态信息,如果发送命令成功,FM350-1将此位复0。
本例中当M1.1为1时,软件门打开(其他参数可以保持默认状态),计数开始,计数值可以从DB1.DBD34中读出。
注意:
在早期的版本中,通过UDT1生产数据块,通过FC0传递CPU与高速计数器模块的数据;在新的版本中,增加了一些新的功能,例如频率、速度的测量功能,通过FC2,既可以实现计数功能,又可以满足测量的要求。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。