信号校正

2025-01-07

信号校正(精选3篇)

信号校正 篇1

0 引言

光栅作为一种精密的测量工具, 广泛应用于精密仪器、坐标测量、精确定位、高精度加工等领域[1]。光栅测量技术是集光、机、电于一体的数字位移传感技术, 它采用光电转换可将机械位置信息转换成相应的数字信号输出[2]。圆光栅测角系统中, 光栅度盘的标尺光栅和指示光栅组成光栅副, 而测角系统就是以光栅副发生相对转动时产生的明暗相间的莫尔条纹为基础的。明暗相间的莫尔条纹随着光栅的移动会产生类似于正弦信号的光强变化, 对此信号进行一系列的处理, 即可获得光栅的相对移动量[3,4,5]。然而在实际的测量中受工艺和成本的限制, 由光栅信号产生的正弦信号往往会发生直流漂移, 这会给测量精度带来较大误差。消除信号中直流电平的方法很多, 比如机械式调整法, 包括调整硅光电池的受光面积, 改变推广电池和光源的相对位置等[6]。很多设计中采用差分放大电路来消除信号中的直流分量[7,8]。此外, 文献[2]中还提到在调理电路中设置高通滤波器来滤除直流分量。本文就此问题利用A/D和D/A转换器, 对源光栅信号的直流漂移进行实时校正, 并将校正后的电平作为比较器的基准电压, 使比较器输出更加精准的计数信号。此方法避免了繁杂的调节, 并且不会增加硬件电路的复杂程度, 结构简单易于实现, 对提高光栅的测量精度具有非常重要的实用价值。

1 系统总体设计

光栅计量系统由光栅光学系统信号采集电路和信号处理电路两部分组成, 其基本工作原理是:被测光栅盘和基准光栅盘每转过一条栅线, 它们各自都会产生一个完整的正弦 (余弦) 信号, 经过差分、放大、整形, 送到控制器进一步处理, 系统原理框图如图1 所示。

当指示光栅相对于标尺光栅发生位移时, 会产生明暗相间的莫尔条纹, 把光电传感器放在不同位置可以得到相位相差90°的正余弦信号, 正余弦信号分别用作计数信号和辨向信号。假设正弦信号作为计数信号, 余弦信号作为辨向信号, 当余弦超前正弦90°时光栅计数器做累加计算, 当余弦滞后正弦90°时光栅计数器做累减运算, 这两路信号经过比较器整形成方波, 送给处理器细分、计数和辨向, 正余弦信号如图2 所示。

比较器整形是提取正余弦的直流分量作为基准比较电压, 实际上由于制造工艺, 机械结构以及光路稳定性等各种原因, 光栅信号的直流电平经常发生偏移, 如果不及时测量直流分量, 系统的测量精度就会大大降低。针对这种情况, 本设计在电路中加入了直流电平校正模块, 通过处理器计算获得信号的直流电平, 并将此电平由D/A反馈给比较器作为比较器的基准比较电压, 使比较器输出更准确的计数信号。加入校正模块能有效避免计数脉冲产生延时和遗漏的情况, 这样就基本解决了直流电平漂移影响处理器计数的问题。

信号送到处理器后, 需要经过一系列处理, 其中重要的一环就是对类似于正弦波的电信号进行细分。细分方法可分为光学细分、机械细分和电子细分三大类, 光学细分、机械细分是通过硬件来实现的, 提高细分精度会使硬件电路变得更加复杂。而电子学细分可利用软件编程实现, 大大降低了硬件电路的复杂程度, 并且具有读数快、精度高, 易于实现测量和数据处理过程的自动化等优点, 因而得到了广泛的应用[9,10]。本文采用了电子细分的方法对比较器输出的信号进行细分。

2 硬件电路设计

本系统的硬件电路设计中的处理器选用含有内置D/A和A/D的SMTM32F103。STM32 拥有先进的性能, 基于集成嵌入式FLASH和SRAM存储器的ARM Cortex-M3 内核, 和8/16 位设备相比, ARM Cortex -M3 32 位RISC处理器提供了更高的代码效率, 在高性能的同时拥有低功耗和大集成度等优点。

硬件电路设计原理:光源发出光, 当度盘相对指示光栅发生转动时, 透过大小光栅的光产生明暗交替的变化, 各个位置的光电传感器将光信号转换为电信号, 单个电信号接近正、余弦信号。为了防止直流电平对后级电路的影响, 同时为了增大正、余弦信号的共模抑制比, 将它们接入差分放大电路, 并设置合适的参数将信号放大到合适的范围。此时将信号分为两路, 一路送往比较器, 而另一路送到处理器的A/D口, 由处理器计算信号的直流电平, 并判断直流电平是否需要校正, 如果需要校正则由D/A端口将校正后的直流电平送到比较器的另一端, 作为比较器的基准比较电压。与通用的固定基准电压的比较器相比, 这种方法可以实时地检测正、余弦信号的直流电平变化, 并且根据直流电平的变化实时调整比较器的基准电压, 这样比较器的基准电压就不会因为信号直流电平漂移而受到太大的影响, 因此比较器能输出更加精准的信号, 此时再将信号输入到处理器的A/D口, 交给处理器处理, 硬件电路设计图如图3 所示。

3 软件设计

软件设计主要是对信号的采样、直流电平校正、辨向、计数进行处理。处理过程如下:经过处理后的sin、cos信号, 分为两路, 一路经过同相回差比较器后, 将正、余弦信号整形成方波信号, 方波信号送至STM32 进行计数与辨向处理;另一路送到STM32 内置A/D引脚, 实时检测正弦、余弦信号的电压值并计算直流电平, 根据电压值与直流电平的变化调整软件细分参数以及整形电路的触发电平。当检测到直流信号与上次测得的值有变化时, STM32 就会通过自带的D/A实时地调整比较器的参考比较电压, 自动校正正、余弦信号的过零点。

程序中的两个中断处理。一个用来计算正弦信号的直流电平和峰峰值并利用正弦脉冲信号控制整数周长计数器的加减。另一个用来计算余弦信号的直流电平和峰峰值并利用余弦脉冲信号判断计数方向。主程序主要完成采样、直流校正、细分和显示任务, 系统软件设计流程图如图4 所示。

4 误差分析

在计数之前, 处理器会对信号的直流电平进行实时检测和校正, 并将校正后的直流电平送往比较器作为基准电平, 使比较器输出更精准的信号。如果不进行比较器基准电平的校正, 比较器就会因为基准电平的不正确而输出畸变的方波信号, 影响处理器计数。假设在测角过程中, 比较器基准电压一直固定不变, 而在某一时刻信号的直流电平往上漂移, 那么比较器输出方波也会发生相应的改变, 如图5 所示。此时的方波占空比变大, 上升沿发生的时间被提前, 导致计数脉冲产生的时间也被提前。相对的, 如果信号的直流电平往下漂移, 计数脉冲则会延迟产生, 若这个时间便停止测角, 由于计数脉冲被延迟, 处理器便会将这个计数脉冲遗漏, 造成了计数误差。另外, 直流电平漂移和信号的变形可能会导致信号幅值一直比比较器的基准电平大, 则方波就变成了一段高电平, 如图6 所示。这样就不能产生计数脉冲, 造成了处理器计数的遗漏, 产生了计数误差。本文采用的方法则能改善甚至消除这种误差。

5 结语

本设计采用电子学细分, 利用软件编程对信号进行辨向和计数, 硬件电路设计十分简单, 减少了干扰源, 降低了成本。在此基础上, 硬件电路中对信号的直流电平实时检测并反馈给比较器的输入端, 使比较器输出更准确的计数信号, 解决了以往光栅测量中直流电平漂移的问题, 基本消除了处理器因直流电平的漂移所带来的计数误差, 从而提高了测量精度。

摘要:在圆光栅作为分度基准的高精度测量仪器中, 测量信号的稳定性直接影响到最终的测量精度。针对实际光栅信号不稳定性产生直流电平漂移的情况, 在电子细分的基础上, 采用了A/D和D/A转换器实时校正直流电平的方法, 解决了实际光栅信号的直流电平漂移影响处理器计数的问题, 降低了测量误差。此方法主要由软件编程来实现, 硬件电路设计简单, 电路的复杂程度低, 有利于提高测量精度。

关键词:光栅,直流电平,漂移,A/D和D/A转换器,校正

参考文献

[1]曹向群, 黄维实, 金彤.光栅计量技术[M].杭州:浙江大学出版社, 1992.

[2]吕孟军.光栅莫尔条纹电子学细分技术研究[D].南京:南京航空航天大学, 2008.

[3]袁小滨, 李怀琼.光栅莫尔条纹数字细分技术及其误差分析[J].西安公路交通大学学报, 2001, 21 (1) :113-115.

[4]李怀琼, 陈钱, 王钰.新型光栅信号数字细分技术及其误差分析[J].计量学报, 2001, 15 (3) :71-75.

[5]唐晖, 叶险峰, 李向军.一种基于FPGA的光栅莫尔条纹数字细分技术[J].计量技术, 2006, 10 (10) :14-17.

[6]卢桂正.光栅数字显示装置中前置光电放大器输出直流电平的校正[J].光学技术, 1981 (1) :27-29.

[7]朱维娜.基于DSP2812的光栅细分技术研究[D].成都:西南交通大学, 2012.

[8]刘世峰.基于幅值采样的光栅莫尔条纹信号细分技术的研究[D].武汉:华中科技大学, 2007.

[9]蔺小军, 史耀耀, 汪文虎, 等.光栅信号软件细分技术及其误差分析[J].工具技术, 2006, 40 (10) :72-74.

[10]刘中力.光栅度盘测角仪中信号的辨向细分技术的研究[D].长春:长春理工大学, 2009.

宽带信号的幅相误差校正算法 篇2

在已知精确阵列流形的前提下,传统阵列算法的性能才得以体现,若阵列流形存在误差,传统算法的性能将急剧下降,波束形成器会产生高旁瓣。而在实际情况下,误差是不可避免的。阵列信号处理中通常遇到的阵列误差包括幅度误差、相位误差、阵元位置的扰动误差以及通道间的互耦作用等[2]。

从20 世纪70 ~80 年代至今,常规阵列误差的校正技术始终是国内外的热点研究领域之一,早期阵列校正是通过对阵列流形的直接离散测量、内插、存储来实现的,但该方法的缺陷为: ( 1) 阵列流形的存储增加了运算的复杂度。( 2) 若对方位估计的准确度要求较高,将无法满足阵列流形内插的准确度要求。当进行二维方位估计时,需测量的方位、俯仰角等数目会急剧增加,将大幅增加计算复杂度。90 年代后,人们通过对阵列扰动进行建模,将阵列误差校正转化为一个参数估计问题。

本文介绍了时域与频域算法,且频域算法具有更好的灵活性及更高的计算精度,并通过仿真实验进行了性能分析。

1 研究背景

1. 1 信号模型

( 1) 仅存在阵元的幅相误差时,阵列信号为

其中,ρi为第i个阵元的幅度误差,φi为第i个阵元的相位误差,,A(fj)为M×P维阵列流形矩阵,ai(fj)为M×1维的导向矢量,各阵元接收矩阵,为白噪声矩阵。

( 2) 仅存在阵元的位置误差时,宽带阵列信号为

其中,Ψ = ( Δxl,Δyl) ,l = 1,2,…,M表示阵列的位置误差,则 Ψ 使得导向矢量出现误差。

( 3) 若同时存在阵元幅相误差、阵列位置误差与通道间的相互耦合,其模型为

其中,C为M ×M维由通道间相互耦合而引入的误差因子,均匀线阵的互耦矩阵C是Toeplitz矩阵或循环矩阵。

1. 2 频域幅相校正算法

幅相校正算法分为时域校正[3 -4]和频域校正[5 -7]。 本文主要研究均匀线阵的频域幅相校正方法。

频域校正原理如图1 所示[5,8 -9],假设第i个通道的频率响应为Fi( jw) ,而理想通道的频率响应为Hi( jw) ,经频域校正后通道的频率响应为Bi( jw) ,则

其中,M为需校正的通道数。频域校正后所有的Bi( jw) 均等于参考通道的频率响应,即

若参考通道的频率响应为Fref( jw) ,则第i个通道的频率响应为

选择理想通道作为参考通道,选择Href( jw) 为全通线性相位网络来确保参考通道和校准通道具有相同的延迟,延迟量为D =( L -1) T/2,则参考通道的频率响应为

校正前,向各通道中注入相同的线性扫频信号,由各通道对线性调频信号的响应来得到相应通道的频率响应特性。假设校准通道的频率响应Hi( jw) 有N个离散频率点,则第i个校准通道的期望均衡校正器的频率响应为

式( 8) 中,各通道输入的校正信号是相同的线性调频( LFM) 信号,根据参考通道与校准通道的信号离散傅里叶变换( DFT) 之比得到均衡校正器的频率响应Hi( n) ,则FIR滤波器的频率响应为

其中,表示期望校正器的相移矢量,hi=[hi( 0) ,hi( 1) , …,hi( L -1) ]T表示FIR校正器的权矢量,T表示FIR滤波器的时间延迟。

2 改进的频域幅相校正算法

在频域算法中,噪声会影响幅相误差校正,所以通过求解最小二乘得到均衡校正器系数。写成矢量的形式,即

其中

则最佳均衡校正器的系数矢量hi可通过下列优化公式得到

FIR滤波器可通过均衡校正器的系数矢量hi= [hi( 0) ,hi( 1) ,…,hi( L -1) ]T来设计。采用最小二乘优化准则求解均衡校正器权系数矢量hi。若矩阵A为由L个线性无关的列矢量组成的满秩矩阵,则式( 14) 的解为

其中,Q =AHA,bi= AHHi。若DFT所做的点数D和均衡校正器的抽头数L确定,则频率因子矩阵A就是确定的矩阵。

在频域算法中,将宽带信号分为若干子频带来处理,根据不同频率点的拟合精度的不同,提出一种采用加权的最小二乘拟合法。

加权的最小二乘拟合法为

式中,W为一个N × N维的对角加权矩阵,其对角元素的大小与不同频点的拟合精度有关,其中一种方法是利用窗函数对不同频点进行加权拟合,其可降低总误差,从而在宽带信号的频带内将FIR滤波器进行有效的校正,文中以Hamming加权、Hanning加权和Chebwin加权为例。另一种方法是对角加权矩阵W对角因子可采用参考通道子频点的频率响应,参考通道频率响应与校准通道子频点的分布规律一致,所以文中加权矩阵W的对角元素采用参考通道各子频点频率响应和的平均值,式( 16) 的解仍为

式中,Q = AHWHWA,bi= AHWHWHi,则Q的第s行第l列的元素Qs,l和bi的第s个元素( bi)s分别为

文献[5]详细推导了幅相校正的时域算法和频域算法,本质上加权的频域算法和时域算法是等价的。 将频域算法与时域算法比较总结如下: ( 1) 幅相校正的时域算法是根据维纳滤波和最小二乘理论,通过接收到的两通道数据得出均衡校正器的权系数。而频域算法是根据最小二乘拟合法,拟合两通道的频率响应得到均衡校正器的权系数。( 2) 时域算法较易实现, 而频域算法的精度比时域算法高。( 3) 时域算法的频带由输入信号、通道响应、采样率等因素决定,不易人为控制。而频域算法的频带可人为控制,并具有较大的灵活性[5]。

3 计算机仿真结果

实验条件: 假设天线阵列是由8 个全向阵元组成的均匀线阵,阵元间距为信号中心频率对应波长的1 /2。信号中心频率为1 GHz,信号带宽为200 MHz,相对带宽为20%,采样频率为带宽的2 倍,即400 MHz, 工作周期为20 ms,脉冲宽度为10 ms,FFT变化后分为512 个窄带分量,噪声为加性零均值高斯白噪声。

图3 是参考信号与普通频域算法的信号幅相校正误差对比图,对比图2 可知,普通频域算法的误差精度高于时域算法几个数量级。图4 是参考通道频率响应加权算法的信号与参考信号幅相校正对比误差图,其误差精度为10- 12,对比图3 可见,改进频域算法的误差精度比普通频域算法高,由图4 可得,改进的频域算法具有可行性。图5 ~ 图7 分别为参考信号与加汉明窗、汉宁窗、切比雪夫窗后的信号幅相误差对比误差图,加窗函数幅相误差后的误差精度与参考通道频率响应的加权算法的精度基本相同。由此可得,选择窗函数作加权矩阵可达到精度要求。图8 为普通频域校正前后及理想信号波束形成对比图,虚线为校正前信号波束图,波束指向为22. 4°但第一旁瓣较高,对主波束的指向产生了严重影响。实线为校正后信号波束图,波束指向为20°,第一旁瓣被压低,对主波束的指向并未产生实质影响。星线为理想情况下信号波束方向图,校正后信号波束方向图与理想情况下的信号波束图基本重合,说明了该频域校正算法的准确性。 表1为3 个频点处的校正算法误差对比。由表1 可看出,在950 MHz、1 000 MHz和1 100 MHz的3 个频点处,改进的频域算法误差精度优于普通频域算法,而加切比雪夫窗的结果要优于改进的频域算法。

4 结束语

本文考虑了存在阵列误差的情况下数字波束形成的性能会急剧下降,在普通频域校正算法的基础上提出一种改进的频域算法,通过加权最小二乘拟合的方法优化了其算法,并通过计算机仿真验证了该方法的可行性与准确性。

摘要:宽带数字阵列雷达通道中特性差异,使得通道产生随频率变化的幅相不一致性,文中主要研究了时域和频域的校正算法,并根据不同频点的对角因子形成相应的对角加权矩阵,改进了加权最小二乘拟合的方法,优化了频域算法,最后通过仿真对比分析了时域与频域算法的精度和对数字波束形成性能的影响,并验证了改进频域算法的精确性与可行性。

信号校正 篇3

在工业位置控制领域中,为了提高控制精度,准确地对控制对象进行检测是十分重要的。传统的机械测量位移装置已远远不能满足现代化生产的需要,而数字式传感器光电编码器能将角位移量转换为与之对应的电脉冲输出,具有精度高、体积小等特点,因此光电编码器作为测量机械位移和转速的元器件,在现代化工业生产中得到了广泛应用。但如果工作现场环境恶劣、电磁干扰严重,则会造成光电编码器测量不准,长时间会产生信号累积误差,影响测量精度。

1 光电编码器脉冲信号分析

光电编码器主要由光栅盘和光电检测装置两部分组成。光栅盘是在一定直径的圆盘上等分地开通若干个长方形孔,当传动设备带动光电码盘旋转时,光栅盘就会与连接设备同速旋转,发光二极管等电子元件发出的光就会穿过光栅盘,再由检测装置检测输出若干个脉冲信号。光电编码器输出信号主要包括A、B、Z三路脉冲信号,其中A、B为相位互差90°的方波信号,Z为过零脉冲信号。光电编码器每旋转一周,A、B信号输出相同数量的脉冲,同时A、B信号脉冲出现的先后顺序可以反映出传动设备旋转的正反转方向。如果A信号脉冲超前B信号90°,说明设备正转,输出计数脉冲为正值;如果B信号脉冲超前A信号脉冲90°,说明设备反转,输出计数脉冲为负值。可见光电编码器A、B输出脉冲的个数和传动设备旋转角度、传动设备的运行距离成正比关系,因此可以通过计算脉冲数计算出传动设备在实际旋转中所运行的距离。

Z脉冲是光电编码器中的特殊脉冲,当光电编码器每旋转一周,Z脉冲信号输出一个脉冲,即Z脉冲相对于旋转编码器而言,是一圈一次的脉冲。虽然Z脉冲能够实现计数,但是它无法对光电编码器旋转方向进行判断,编程时需要结合A、B信号脉冲出现的先后顺序对Z脉冲进行正反转方向判断。

Z脉冲信号在光电编码器实际应用中的使用很广泛,包括:用作高速计数器的复位,用作高速计数器当前值的校正;在位置控制中用作定位;在转速控制中可以根据需要,在计数偏差过大时修正计数值,用作累计误差校正;在每圈或者转过固定圈数后需要对计数脉冲进行一定补偿时,Z相可以作为参考修正信号(N×圈长+原始零位修正长度)来计算修正。

2 定尺机位移检测系统缺陷及改进方案

秦皇岛首钢板材有限公司定尺机移动采用三相交流异步电机通过减速机带动丝杆转动来实现。在电机另外一端变速齿轮与光电编码器通过膜片联轴器连接,电机转动带动光电编码器旋转进行脉冲计数。利用西门子S7-200 PLC高速计数功能采集脉冲信号、光电编码器进行反馈、西门子变频器进行驱动和实际长度显示,操作工通过操作面板进行参数设定,实现定尺机自动定尺控制。

在实际应用中发现有时定尺不准,经过长时间现场观察,发现反馈信号光电编码器脉冲计数有时丢失,怀疑外部电磁干扰所致。为防止A/B脉冲或因外界干扰出现的脉冲信号丢失,最终导致脉冲信号误差累积,造成定尺机定尺测量不准,引入Z脉冲数值对反馈信号进行实际校正,在一定程度上能够避免定尺不准情况的发生。具体改进方案如下:

S7-200 CPU提供了6路高速计数器以响应快速的脉冲输入信号(如表1所示),而且高速计数器具有独立于用户程序工作、不受程序扫描时间限制的优势,因此改进方案中将原来的一路输入改进为3路高速计数器输入模式。即一路采集A/B脉冲输入信号,作为定尺机实际定尺反馈和显示;一路采集A/B/Z脉冲输入信号,用来采集零位初始值和判断光电编码器旋转方向以便于Z脉冲确定增减;一路单独采集Z脉冲输入信号,结合零位初始值对A/B实际位移值进行校正。为了提高测量精度,根据PLC-200的类型和设置,采用4倍计数模式,编码器精度提高4倍,即在A/B相的上下沿都进行计数。该套定尺机自动定尺系统由西门子S7-200 CPU224 AC/DC/RLY(6ES7 214-1BD23-0XB0)、TD200文本显示器(6ES7272-0AA30-0YA0)和光电编码器(LEC-250B M-R24C)、西门子变频器(6SE7026-0ED61 59/80.5A)4部分组成。

3 定尺机位移检测校正系统硬件选型

3.1 高速计数器硬件输入及工作模式选择

西门子S7-200提供了6路高速计数器,依据计数脉冲、复位脉冲、起动脉冲端子的不同接法又分为12种工作模式,每种高速计数器所拥有的工作模式和其占有的输入端子有关。选用3路高速计数器,分别为HSC0、HSC1、HSC4。根据各路输入信号和实际需要的不同,3种输入信号又分别采用了工作模式0、工作模式10和工作模式9。工作模式不同,高速计数器外部输入端子也不相同,PLC硬件外部接线如图1所示,I/O端子地址分配见表2。

3.2 高速计数器控制字节位定义及设置

高速计数器要实现计数功能,需要对其控制字进行必要的参数设置。高速计数器控制字地址如表3所示,以HSC0为例对控制字各位定义进行说明,由表3知HSC0控制字地址为SMB37,HSC0控制字各位定义如表4所示。为了提高定位精度,选用4x分辨率计数模式,则控制字位SM37.2定义为0;若需要进行计数内部方向控制,只需要对位SM37.3进行0或1定义,即减计数控制字设置为16#90,增计数控制字设置为16#98。综上所述,HSC0初始化启用控制位可设置为:11111000转化成16进制为F8,启用计数器时存放在SMB47中,即SMB47=16#F8。

4 定尺机位移检测校正系统软件程序设计

与S7-200相配套编程软件为STEP 7-Micro/WIN V4.0。系统程序由1个主程序、6个初始化子程序(高速计数器子程序、增减计数子程序和TD200文本显示器子程序)和1个时间中断程序组成。

定尺机位移检测校正软件编写程序流程图如图2所示。首先在主程序中调用高速计数器HSC0、HSC1、HSC4的初始化子程序、时间中断子程序、HSC0计数增减子程序以及编写相应的逻辑控制程序。当Z脉冲信号HC0绝对值首次为1时,通过时间中断子程序采集保存HC1零位初始值HC1(1),同时判断HC1计数值的正负,作为Z脉冲信号HC0调用加减子程序的依据。当定尺机到达设定位置时,得到Z脉冲计数值即光电编码器实际旋转圈数Z(1)以及此时HC1当前计数脉冲值HC1,通过脉冲计算公式可得到校正脉冲计数值Y1=Z(1)×10000+HC1(1)+HC1。

HC4作为A/B脉冲自始至终实际累加值,将其与Y1校正计数脉冲相比较得到差值,若该差值在累加误差允许范围内,则将HC4作为有效位移反馈信号,同时TD200画面显示实际定尺数值;若超出累加误差允许范围,则输出超差报警指示,由操作工手动复位,定尺机重新开始定尺测量。

根据Z脉冲校正流程图对部分程序进行编写并说明。高速计数器HSC1和HSC4初始化子程序通过选择S7-200 PLC编程软件指令向导中高速计数器HSC逐步生成。首先通过菜单栏“工具”>“指令向导”中选择HSC,点击“下一步”;计数器选择HC1(HC4),模式选择10(9),点击“下一步”;打开配置菜单,选择默认值,点击“下一步”;打开中断配置,选择默认值,点击“下一步”;点击“完成”完成设置,生成高速计数器初始化子程序。初始化子程序与前面选定的工作模式、控制字设置一致,该子程序需要在主程序块中使用SM0.1或一条沿触发指令调用,子程序仅首次扫描运行一次。

由于Z脉冲信号无方向性,所以高速计数器HSC0需要根据内部方向控制调用中断子程序,因此需要在主程序内调用加减子程序,加减子程序(如图3所示)根据HC1进行内部判断正反方向的状态,调用子程序改变计数方向。SBR_0:初始化HSC0;SBR_11:改计数方向为减计数;SBR_12:改计数方向为增计数。

在本程序编写中需要用到时间中断,S7-200 CPU提供了时基中断处理功能,用来执行精确定时的周期性任务。时基中断包括2个特殊存储器定时中断和2个定时器中断,以1ms为单位,可以指定1~255ms的周期范围。本程序中使用定时中断4ms作为定时周期计数,使用定时中断0,通过查中断事件表可以得知定时中断0的中断事件号为10,确定周期的特殊存储器字节是SMB34。在程序中,SBR_0:中断初始化程序;INT_0:中断服务程序。在S7-200 CPU中运行程序,INT_0会自动根据定时中断事件的发生而执行。时间中断子程序和初始化数据采集程序分别如图4、图5所示。

5 结语

随着设备控制方式自动化水平程度的不断提高,光电编码器越来越得到广泛应用,外部干扰信号也随之增多,通过对反馈信号进行双重检测校正编程,一定程度上解决了外部干扰信号造成的编码器测量不准的问题,也提供了一种应用光电编码器Z脉冲信号进行累积误差校正的新方法。

参考文献

[1]蔡行建.深入浅出西门子S7-200PLC[M].北京:北京航空航天大学出版社,2004

上一篇:路径协同下一篇:ICU气管切开患者