plc高速计数器测量模拟量信号的方法说明

作者:老电工时间:2015-10-26 16:23:09

plc高速计数器测量模拟量信号的方法

用plc高速计数器实现测量模拟量信号的方法(光电隔离、抗干扰、低成本)

plc的模拟量模块却不尽如意,表现在工作现场特别容易受外界环境干扰,信号波动太大,虽然加大了信号滤波时间,但仍然无法获得良好的可用数据,这究竟是为什么呢?

1、模拟量采集要求信号本身环境要好,包括传感器、仪表的供电良好!模拟量传输线路尽量避开强电电缆和高、中、低频干扰,例如:高频焊管机、中频加热炉和变频器的输出到电机的电缆等,否则,给你的真实信号中加点“佐料”,从而污染了信号源;

2、电气系统接地在施工设计中就要特别重视,如果现场接地处理不好,轻者干扰plc系统正常工作,重者在带有模拟量的控制回路中根本不能使用或者会损坏传感器、plc的电源、模拟量等模块。

注意事项:

1、plc的模拟量采集模块,没有采用模拟量与plc回路隔离方式,因此,模拟量输入、输出回路就需要特别当心,如果传感器或者输入回路串入高电压信号,当心其损坏plc主机?

2、plc模块采用了高速采样方式,可分辨0.25ms的信号变化,这本来是件好事,但实际使用其来却十分讨厌,因为它太敏感了,以致影响了模拟量信号的正常采集,如果遇到信号回路串入干扰、屏蔽不良,则想去掉干扰,单靠增加滤波时间是根本无法解决这类问题,我们曾经就遇到此类问题,不得已,将输入信号经rc滤波回路过滤后才能勉强工作!

由于plc控制的某些系统,经常要测量各类模拟电压/电流信号,以往通常用电压/电流传感器进行采样,由plc的模拟量扩展模块进行运算处理。电压传感器输出是模拟量,在电磁骚扰较强的环境中,容易出现较大的测量误差;同时,由于占用模拟量扩展模块宝贵的输入点(模拟量扩展模块价格接近中、小型plc的价格,且输入点极少),使系统的性价比降低。

当用电压/电流/频率转换器进行采样,进而用plc高速计数器计数,能较好地解决上述问题,vfc或ifc转换器输出是脉冲信号,该信号在电磁骚扰下变化极小;另外,该信号是数字量,可直接接入plc高速计数器的输入点。

cpu224有hsc0-hsc5共6个高速计数器,每个高速计数器都有多种工作模式以完成不同的功能,在使用一个高速计数器时,根据系统的控制需要,首先要给计数器选定一种工作模式,可用高速计数器定义指令hdef来进行设置。只有定义了计数器和计数器模式,才能对计数器的动态参数进行编程。

编程时,每个高速计数器只能使用一条hdef指令。每个高速计数器都有一个控制字节,包括允许或禁止计数,计数方向的控制,要装入的计数器当前值和要装入的预置值。

v/f传感器把测量的模拟电压信号按着固定的比率转换成矩形脉冲信号,

首先,vfc或ifc变送器将输入电压(电流)转换为脉冲信号,再将此信号送入高速计数器hsc1的输入端,并累计脉冲数。通过设置定时中断0的间隔时间,来控制高速计数器累计脉冲的时间,当预置的间隔时间到后,根据累计脉冲数,计算出被测电压(电流)值。

编程原理:
主程序在第一个扫描周期调用子程序sbr0;
sbr0高速计数器和定时中断的初始化;
int0对高速计数器求值的定时中断程序;

程序和注释

主程序在第一个扫描周期调用初始化子程序sbr0,仅在第一个扫描周期标志位sm0?1=1。由子程序sbr0实现初始化。

首先,把高速计数器hsc1的控制字节mb47置为16进制数fc,其含义是:正方向计数,可更新预置值(pv),可更新当前值(cv),激活hsc1。

然后,用定义指令hdef把高速计数器hsc1设置成工作模式0,即没有复位或启动输入,也没有外部的方向选择。当前值smd48复位为0,预置值smd52置为ffff(16进制)。定时中断0间隔时间smb34置为100ms,中断程序0分配给定时中断0,并允许中断,用指令hsc1启动高速计数器。

每100ms调用一次中断程序0,读出高速计数器的数值后,将其置零。通过hsc1计数值及变换关系来求被测的电压值。

以上方法已用于多个自控项目,实践证明,该方法进行模拟电压信号测量,具有精度高,抗干扰性强,运行可靠等优点,具有较大的实用价值和广泛的应用前景。

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > plc基础教程