文档库 最新最全的文档下载
当前位置:文档库 › 绝对值旋转编码器程序

绝对值旋转编码器程序

绝对值旋转编码器程序
绝对值旋转编码器程序

#include // 寄存器头文件包含

#include <1602.h> // 寄存器头文件包含

#include // 空操作函数,移位函数头文件包含

#define uchar unsigned char

#define uint unsigned int

/*

sbit SH_CP = P1^1; //移位时钟脉冲端口

sbit DS = P1^2; // 串行数据输入端口

sbit ST_CP = P3^7; //锁存端口

*/

int inc_data=0; //每刷新一次的增量值

int jms=0; //累计增量

int m_iPrvSSI = 0;

int m_bIsSPI = 0;

uchar uPrvState = 0;

sbit AA = P3^3;//

sbit BB = P3^4;//这个是时钟

sbit ZZ = P3^5;//这个是数据

sbit BEEP=P1^5;

//正反判断

bit t_bFang = 1;

int a;

int iSSI = 0;

int temp,num,j;

uchar led_buf[12]; /*定义LED显示缓冲区*/

uchar code table[]="0123456789";

void delay (int t)

{

int i,j;

for(i=1;i

for (j=1;j<25000;j++);

}

void GetSSI(void)

{

uchar ix = 0; //

uchar uState = 0; //状态位数据

int iSSI = 0;//当前的角度数据(0-1023)

bit bCrc = 0; // 奇数或偶数标志位

int ire = 0; //增量数据,表示上次正确读的数据,和这次正确读的位置差

AA = 0; //CSN

_nop_();_nop_();

BB = 0;//CLK

_nop_();_nop_();

BB = 1;//CLK

_nop_();_nop_();

for(ix = 0; ix < 10;ix++)//读10次前10位数据

{

BB = 0;//CLK

iSSI <<= 1;//前10位的数据1024

if(ZZ)//DO数据

{

bCrc = !bCrc;//标置位取反,数位中“1”的个数是奇数或偶数来进行校验(初值=0)

iSSI |= 1;//最后位置1

}

BB = 1;//CLK

_nop_();_nop_();

}

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

for(ix = 0; ix < 5;ix++)//读5次状态位标志!

{

BB = 0;

uState <<= 1; //后五位的数据状态位

if(ZZ)

{

bCrc = !bCrc;//数位中“1”的个数是奇数或偶数来进行校验

uState |= 1;//数据等于1置1

}

BB = 1;

_nop_();_nop_();_nop_();

}

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

if(ZZ == bCrc)//最后一位校验一下,要是奇偶通不过,就认为CRC错误,就当这次无效

{

AA = 1;//使能CSN置高,为下次准备

if((uState == 16)||(uState == 19));//&&(uState == uPrvState)); //16=10000;19=10011 表示状态位(5位uState) 都可以理解为数据正常

{

if((iSSI < 256)&&(m_iPrvSSI > 768)) //

iSSI(0-1023)是这次读出的数据m_iPrvSSI(0-1023)上一次读出的数据

{

ire = iSSI - m_iPrvSSI + 1024; // 第一种情况

}else

if((m_iPrvSSI < 256)&&(iSSI > 768))

{

ire = iSSI - m_iPrvSSI - 1024; // 第二种情况

}else

{

ire = iSSI - m_iPrvSSI;// 第三种情况新数据减去老数据}

//------

m_iPrvSSI = iSSI;// 刷新数据,新数据替换老数据,为下一次做好准备

inc_data=ire;

a=jms+=inc_data;//显示累计长度

}

}

AA = 1;//使能CSN置高,为下次准备

if(a>=500) BEEP=0;

else BEEP=1;

}

void main()

{ init();

while(1)

{

GetSSI();//读编码器数值

//a=m_iPrvSSI;//显示0-1023值位置值

// a=-a;

Display(0x80+0x00,table[a/10000]); //1602显示子程序

Display(0x80+0x01,table[a%10000/1000]); //1602显示子程序

Display(0x80+0x02,table[a%10000%1000/100]); //1602显示子程序

Display(0x80+0x03,table[a%10000%1000%100/10]); //1602显示子程序

Display(0x80+0x04,table[a%10000%1000%100%10]); //1602显示子程序

//display();//显示a的值

delay(30);//延时

}

}

旋转编码器原理及其应用

旋转编码器的原理及其应用 摘要:本文介绍了常用编码器的原理、分类以及其应用的注意事项,并以德国P+F公司的编码器产品为参照,重点介绍了增量型编码器和绝对值型编码器的原理及应用,其中绝对值型编码器中以格雷码为主作了详细的介绍。 关键词:编码器增量型绝对值格雷码 一、前言 在自动化领域,旋转编码器是用来检测角度、速度、长度、位移和加速度的传感器。依靠轴杆、齿轮、测量轮或绳缆的控制,线性的移动能被检测。编码器也把实际的机械参数值转换成电气信号,这些电气信号可以被计数器、转速表、PLC和工业PC处理。 二、功能原理 由玻璃或塑料制成的圆盘被分成透明和非透明的区域,如果一个光源固定在圆盘的一侧,光敏元件固定在另一侧,旋转的移动没有接触就可获得。如果一束光打在透明的区域,接收器接收到,产生脉冲,当光束被 黑色区域隔断式,不产生脉冲。发光二极管 通常用作光源,发光范围在红外线范围内, 光敏二极管或光敏晶体管作为接收器。(见 右图) 如果按照此原理没有其它功能加入的 话,仅能推论出圆盘在转动,旋转的感应或 绝对值位置不能被确定。 编码器根据它们的功能原理和机械形式 和安装系统有不同的区别。 1、功能原理 1.1增量型旋转编码器 轴的每圈转动,增量型编码器提供一定数量的脉冲,周期性的测量或者单位时间内的脉冲数可以用来测量移动的速度。如果在一个参考点后面脉冲数被累加,计算值就代表了转动角度或行程的参数。双通道编码器输出脉冲之间相差900。能使接收脉冲的电子设备接收轴的旋转感应信号,因此可用来实现双向的定位控制。另外,三通道增量型编码器每一圈产生一个称之为零位信号的脉冲。 旋转增量型编码器以转动时输出脉冲,通过计数设备来计算其位置,当编码器不动或停电时,依靠计数设备的内部记忆来记住位置。这样,当停电后,编码器不能有任何的移动,当来电工作时,编码器输出脉冲过程中,也不能有干扰而丢失脉冲,不然,计数设备计算并记忆的零点就会偏移,而且这种偏移的量是无从知道的,只有错误的产生结果出现后才能知道。 解决的方法是增加参考点,编码器每经过参考点,将参考位置修正进计数设备的记忆位置。在参考点以前,是不能保证位置的准确性的。为此,在工控中就有每次操作先找参考点,开机找零等方法。 这样的方法对有些工控项目比较麻烦,甚至不允许开机找零(开机后就要知道准确位置),于是就有了绝对编码器的出现。 1.2绝对值旋转编码器 绝对编码器光码盘上有许多道光通道刻线,每道刻线依次以2线、4线、8线、16线编排,这样,在编码器的每一个位置,通过读取每道刻线的通、暗,获得一组从2的零次方到2的n-1次方的唯一的2进制编码(格雷码),这就称为n位绝对编码器。这样的编码器是由光电码盘的机械位置决定的,它不受停电、干扰的影响。特别是在定位控制应用中,绝对值编码器减轻了电子接收设备的计算任务,从而省去了复杂的和昂贵

编码器详细介绍与编程指导

增量型编码器与绝对型编码器的区分 编码器如以信号原理来分,有增量型编码器,绝对型编码器。 增量型编码器 (旋转型) 工作原理: 由一个中心有轴的光电码盘,其上有环形通、暗的刻线,有光电发射和接收器件读取,获得四组正弦波信号组合成A、B、C、D,每个正弦波相差90度相位差(相对于一个周波为360度),将C、D信号反向,叠加在A、B两相上,可增强稳定信号;另每转输出一个Z相脉冲以代表零位参考位。 由于A、B两相相差90度,可通过比较A相在前还是B相在前,以判别编码器的正转与反转,通过零位脉冲,可获得编码器的零位参考位。 编码器码盘的材料有玻璃、金属、塑料,玻璃码盘是在玻璃上沉积很薄的刻线,其热稳定性好,精度高,金属码盘直接以通和不通刻线,不易碎,但由于金属有一定的厚度,精度就有限制,其热稳定性就要比玻璃的差一个数量级,塑料码盘是经济型的,其成本低,但精度、热稳定性、寿命均要差一些。 分辨率—编码器以每旋转360度提供多少的通或暗刻线称为分辨率,也称解析分度、或直接称多少线,一般在每转分度5~10000线。 信号输出: 信号输出有正弦波(电流或电压),方波(TTL、HTL),集电极开路(PNP、NPN),推拉式多种形式,其中TTL为长线差分驱动(对称A,A-;B,B-;Z,Z-),HTL 也称推拉式、推挽式输出,编码器的信号接收设备接口应与编码器对应。 信号连接—编码器的脉冲信号一般连接计数器、PLC、计算机,PLC和计算机连接的模块有低速模块与高速模块之分,开关频率有低有高。 如单相联接,用于单方向计数,单方向测速。 A.B两相联接,用于正反向计数、判断正反向和测速。 A、B、Z三相联接,用于带参考位修正的位置测量。 A、A-, B、B-,Z、Z-连接,由于带有对称负信号的连接,电流对于电缆贡献的电磁场为0,衰减最小,抗干扰最佳,可传输较远的距离。 对于TTL的带有对称负信号输出的编码器,信号传输距离可达150米。 对于HTL的带有对称负信号输出的编码器,信号传输距离可达300米。

编码器内部PNP-NPN详解说明-有图示

编码器输出信号类型 一般情况下,从编码器的光电检测器件获取的信号电平较低,波形也不规则,不能直接用于控制、信号处理和远距离传输,所以在编码器内还需要对信号进行放大、整形等处理。经过处理的输出信号一般近似于正弦波或矩形波,因为矩形波输出信号容易进行数字处理,所以在控制系统中使用比较广泛。 增量式光电编码器的信号输出有集电极开路输出、电压输出、线驱动输出和推挽式输出等多种信号形式。 1集电极开路输出 集电极开路输出是以输出电路的晶体管发射极作为公共端,并且集电极悬空的输出电路。根据使用的晶体管类型不同,可以分为NPN集电极开路输出(也称作漏型输出,当逻辑1时输出电压为0V,如图2-1所示)和PNP集电极开路输出(也称作源型输出,当逻辑1时,输出电压为电源电压,如图2-2所示)两种形式。在编码器供电电压和信号接受装置的电压不一致的情况下可以使用这种类型的输出电路。 图2-1 NPN集电极开路输出 图2-2 PNP集电极开路输出 对于PNP型的集电极开路输出的编码器信号,可以接入到漏型输入的模块中,具体的接线原理如图2-3所示。 注意:PNP型的集电极开路输出的编码器信号不能直接接入源型输入的模块中。

图2-3 PNP型输出的接线原理 对于NPN型的集电极开路输出的编码器信号,可以接入到源型输入的模块中,具体的接线原理如图2-4所示。 注意:NPN型的集电极开路输出的编码器信号不能直接接入漏型输入的模块中。 图2-4 NPN型输出的接线原理 2.2电压输出型 电压输出是在集电极开路输出电路的基础上,在电源和集电极之间接了一个上拉电阻,这样就使得集电极和电源之间能有了一个稳定的电压状态,如图2-5。一般在编码器供电电压和信号接受装置的电压一致的情况下使用这种类型的输出电路。

数控机床编码器的选型及各类编码的特点及调试

一:增量旋转编码器选型有哪些注意:1.械安装尺寸,包括定位止口,轴径,安装孔位;电缆出线方式;安装空间体积;工作环境防护等级是否满足要求。 2.分辨率,即编码器工作时每圈输出的脉冲数,是否满足设计使用精度要求。 3.电气接口,编码器输出方式常见有推拉输出(F型HTL格式),电压输出(E),集电极开路(C,常见C为NPN型管输出,C2为PNP型管输出),长线驱动器输出。其输出方式应和其控制系统的接口电路相匹配。 二如何使用增量编码器?1,增量型旋转编码器有分辨率的差异,使用每圈产生的脉冲数来计量,数目从6到5400或更高,脉冲数越多,分辨率越高;这是选型的重要依据之一。 2,增量型编码器通常有三路信号输出(差分有六路信号):A,B和Z,一般采用TTL电平,A脉冲在前,B脉冲在后,A,B脉冲相差90度,每圈发出一个Z脉冲,可作为参考机械零位。一般利用A超前B 或B超前A进行判向,我公司增量型编码器定义为轴端看编码器顺时针旋转为正转,A超前B为90°,反之逆时针旋转为反转B超前A为90°。也有不相同的,要看产品说明。 3,使用PLC采集数据,可选用高速计数模块;使用工控机采集数据,可选用高速计数板卡;使用单片机采集数据,建议选用带光电耦合器的输入端口。 4,建议B脉冲做顺向(前向)脉冲,A脉冲做逆向(后向)脉冲,Z原点零位脉冲。 5,在电子装置中设立计数栈 三:从接近开关、光电开关到旋转编码器:工业控制中的定位,接近开关、光电开关的应用已经相当成熟了,而且很好用。可是,随着工控的不断发展,又有了新的要求,这样,选用旋转编码器的应用优点就突出了: 信息化:除了定位,控制室还可知道其具体位置; 柔性化:定位可以在控制室柔性调整; 现场安装的方便和安全、长寿:拳头大小的一个旋转编码器,可以测量从几个μ到几十、几百米的距离,n个工位,只要解决一个旋转编码器的安全安装问题,可以避免诸多接近开关、光电开关在现场机械安装麻烦,容易被撞坏和遭高温、水气困扰等问题。由于是光电码盘,无机械损耗,只要安装位置准确,其使用寿命往往很长。 多功能化:除了定位,还可以远传当前位置,换算运动速度,对于变频器,步进电机等的应用尤为重要。 经济化:对于多个控制工位,只需一个旋转编码器的成本,以及更主要的安装、维护、损耗成本降低,使用寿命增长,其经济化逐渐突显出来。 四:电源供应及编码器和PLC连接:一般编码器的工作电源有三种:5Vdc、5-13Vdc或11-26Vdc。如果

旋转编码器详解

增量式编码器的A.B.Z 编码器A、B、Z相及其关系

TTL编码器A相,B相信号,Z相信号,U相信号,V相信号,W相信号,分别有什么关系? 对于这个问题的回答我们从以下几个方面说明: 编码器只有A相、B相、Z相信号的概念。 所谓U相、V相、W相是指的电机的主电源的三相交流供电,与编码器没有任何关系。“A相、B相、Z相”与“U相、V相、W相”是完全没有什么关系的两种概念,前者是编码器的通道输出信号;后者是交流电机的三 相主回路供电。 而编码器的A相、B相、Z相信号中,A、B两个通道的信号一般是正交(即互差90°)脉冲信号;而Z相是零脉冲信号。详细来说,就是——一般编码器输出信号除A、B两相(A、B两通道的信号序列相位差为90度)外,每转一圈还输出一个零位脉冲Z。 当主轴以顺时针方向旋转时,输出脉冲A通道信号位于B通道之前;当主轴逆时针旋转时,A通道信号则位于B通道之后。从而由此判断主轴是正转还是反转。 另外,编码器每旋转一周发一个脉冲,称之为零位脉冲或标识脉冲(即Z相信号),零位脉冲用于决定零位置或标识位置。要准确测量零位脉冲,不论旋转方向,零位脉冲均被作为两个通道的高位组合输出。由于通道之间的相位差的存在,零位脉冲仅为脉冲长度的一半。 带U、V、W相的编码器,应该是伺服电机编码器 A、B相是两列脉冲,或正弦波、或方波,两者的相位相差90度,因此既可以测量转速,还可以测量电机的旋转方向Z相是参考脉冲,每转一圈输出一个脉冲,脉冲宽度往往只占1/4周期,其作用是编码器自我校正用的,使得编码器在断电或丢失脉冲的 时候也能正常使用。 ABZ是编码器的位置信号,UVW是电机的磁极信号,一般用于同步电机; AB对于TTL/HTL编码器来说,AB相根据编码器的细分度不同,每圈有很多个,但Z相每圈只有一个; UVW磁极信号之间相位差是120度,随着编码器的角度转动而转动,与ABZ 之间可以说没有直接关系。 /#############################################################

Arduino关于旋转编码器程序的介绍资料

Arduino关于旋转编码器程序的介绍介绍 旋转或编码器是一个角度测量装置. 他用作精确测量电机的旋转角度或者用来控制控制轮子(可以无限旋转,而电位器只能旋转到特定位置)。其中有一些还安装了一个可以在轴上按的按钮,就像音乐播放器的控制按钮。Some of them are also equipped with a pushbutton when you press on the axis (like the ones used for navigation on many music controllers). 它们的精度多种多样,有每圈16步到1024步的各种,价格也从2到200欧元不等。 我写了一个小例子去读旋转编码器,并且使将读数通过RS232显示。我们很容易实现当编码器每走一步更新一下计数,并且将它通过串口显示在电脑上(通过串口监视器)。这个程序在ALPS STEC12E08编码器(每圈有24步)上运行良好。但是我认为当它使用在一个有更高精度的编码器上时有可能就会失效或者当电机旋转很快,或者你拓展这个程序以适应多个编码器。请先试试他吧。 我在Arduino distribution(A VRLib的一部分)的encoder.h中学会了怎样操作编码器。谢谢作者:Pascal Stang,感谢他对每一个函数友好而详细的解释。如下: Example 1 /* Read Quadrature Encoder * Connect Encoder to Pins encoder0PinA, encoder0PinB, and +5V. * * Sketch by max wolf / https://www.wendangku.net/doc/e015606177.html, * v. 0.1 - very basic functions - mw 20061220 * */ int val; int encoder0PinA = 3; int encoder0PinB = 4; int encoder0Pos = 0; int encoder0PinALast = LOW; int n = LOW; void setup() { pinMode (encoder0PinA,INPUT); pinMode (encoder0PinB,INPUT); Serial.begin (9600); } void loop() { n = digitalRead(encoder0PinA); if ((encoder0PinALast == LOW) && (n == HIGH)) {//上升沿

多圈绝对值编码器工作原理

2010-04-30 08:14 传统的绝对编码器光码盘上有许多道光通道刻线,每道刻线依次以2线、4线、8线、16线。。。。。。编排,这样,在编码器的每一个位置,通过读取每道刻线的通、暗,获得一组从2的零次方到2的n-1次方的唯一的2进制编码(格雷码),这就称为n位绝对编码器。这样的编码器是由光电码盘的机械位置决定的,它不受停电、干扰的影响。 绝对编码器由机械位置决定的每个位置是唯一的,它无需记忆,无需找参考点,而且不用一直计数,什么时候需要知道位置,什么时候就去读取它的位置。这样,编码器的抗干扰特性、数据的可靠性大大提高了。 单圈绝对值编码 多圈绝对值编码器 旋转单圈绝对值编码器,以转动中测量光电码盘各道刻线,以获取唯一的编码,当转动超过360度时,编码又回到原点,这样就不符合绝对编码唯一的原则,这样的编码只能用于旋转范围360度以内的测量,称为单圈绝对值编码器。 如果要测量旋转超过360度范围,就要用到多圈绝对值编码器。 编码器生产厂家运用钟表齿轮机械的原理,当中心码盘旋转时,通过齿轮传动另一组码盘(或多组齿轮,多组码盘),在单圈编码的基础上再增加圈数的编码,以扩大编码器的测量范围,这样的绝对编码器就称为多圈式绝对编码器,它同样是由机械位置确定编码,每个位置编码唯一不重复,而无需记忆。 多圈编码器另一个优点是由于测量范围大,实际使用往往富裕较多,这样在安装时不必要费劲找零点,将某一中间位置作为起始点就可以了,而大大简化了安装调试难度. 绝对值多圈有电子增量计圈与机械绝对计圈等多种,(还有其他几圈方式,但不多见)。机械绝对计圈,无论是每圈位置是绝对的,而且圈数也是绝对值的,但是,这样的话,圈数就有个范围,例如现在较多的4096圈和65536圈两种。这样,就有人提出来,超过圈数还算不算绝对的在一次加工中不超过圈数,或停电移动不超过1/2圈数,当然是绝对的。 电子增量计圈,通过电池记忆圈数,实际上是单圈绝对,多圈增量,好处是省掉了一组机械齿轮,经济、体积小且没有圈数限制,似乎也不错,但是他毕竟是多圈增量的,不能算真正意义上的绝对值,什么是真正意义上的绝对值就是不依赖于前次历史的直接读数。它在停电后,由于电池低功耗的要求,移动的速度与范围其实是有限制的,另外加上电池的因数,可靠性方面还是要有疑问的。尤其是如果计圈的失误,反而无法找到原来的绝对位置。 事实上,很多人理解用绝对值,都是停电后移动的问题,却不了解德国人在运动控制中用机械真多圈绝对值的真正用意,由于真正的绝对值是不依赖于前次历史

绝对值编码器 选型

@Q发表于:2013/10/14 16:50:08 标签(TAG):编码器绝对值编码器选型 (绝对值编码器问答集节选) 本人正在编写一部《绝对值编码器问答集》的小册子,以下是部分节选。——根据实际使用要求判断是否需要选用绝对值编码器,根据已有的设备信号接口选择选什么样的编码器 1,使用绝对值编码器一定会比用增量式编码器贵吗? 没有!从编码器器件成本上说增量编码器内部器件少,成本价格确实低,但是从编码器的如何使用并产生效果的角度说,绝对值编码器如果选型得当,其使用的效果带来的综合成本,会低于选用增量值编码器,为使用者大大节省成本。2,什么情况下要选绝对值编码器? a.停电移动、惯性滑动的数据安全可靠性问题,对于一些需要高度、长度测量的安全性设备、较大型设备、起重类工程类设备,安全性是很重要的因素,为确保编码器数据的稳定可靠性,必须选用全行程绝对值编码器。这类应用如果发生编码器数据错误可能引起的损失远远超过了编码器成本本身。例如水闸、工程机械、起重机、电梯、门机等等的高度、长度测量。 b.信号抗干扰问题,有时所化的人工成本远远大于一个编码器成本,增量信号较易受到各种干扰,数据采集不稳定,对于各种现场不可预知的干扰会花很多精力去排查,并要设法避开干扰,此情况下应考虑更换绝对值编码器。例如各种自动化工程项目,对于现场的变频器、开关电源、接地状况不明的情抗下,无从判断干扰情况,选用绝对值编码器可以确保应对各种工况条件。 c.后续设备节省资源,增量编码器需要高速计数不停的计数,耗费CPU资源,有时多个编码器连接没有更多的高速计数口,此时选用绝对值编码器的串行输出(如RS485)或总线型输出,其实是节省了后续设备的资源而节省费用。例如需要多个编码器比较的同步纠偏、多个编码器联动操作的流水线、加工机械等。 d.环境较恶劣的选择,增量编码器绝大部分是光学式的,易受水气灰尘及振动影响而损坏,选用磁电式绝对值编码器(单圈或真多圈)的可以避免这种损坏,而大大提高产品使用的寿命,而得到综合效果更佳,使用成本更低。例如户外使用的港口矿山机械、工厂的快速开门机等。 e.节省综合成本,在一些不便于停机修正、更换、维修,或停机修正、更换、维修成本很高的场合下,用绝对值编码器,因其数据的可靠性、产品的耐用性,可以大大减少售后服务人工成本,产品可长时间的使用效果,直接的是产品使用的综合成本大大的节省了。例如一些高速运转的流水线、较远地区的管网系统(电动执行器)。 。。。。。 3.按绝对值编码器输出信号接口有哪些信号输出可选? 选择使用绝对值编码器,首先要根据自身所有的后续接受设备(例如PLC)有什么样的信号接口,根据已有的信号接口选择编码器:

旋转编码器的原理及应用

旋转编码器的原理及应用 旋转编码器是用来测量转速的装置。它分为单路输出和双路输出两种。技术参数主要有每转脉冲数(几十个到几千个都有),和供电电压等。单路输出是指旋转编码器的输出是一组脉冲,而双路输出的旋转编码器输出两组相位差90度的脉冲,通过这两组脉冲不仅可以测量转速,还可以判断旋转的方向。 什么是光电编码器? 工作原理:当光电编码器的轴转动时A、B两根线都产生脉冲输出,A、B两相脉冲相差90度相位角,由此可测出光电编码器转动方向与电机转速。如果A相脉冲比B相脉冲超前则光电编码器为正转,否则为反转.Z 线为零脉冲线,光电编码器每转一圈产生一个脉冲.主要用作计数。A线用来测量脉冲个数,B线与A线配合可测量出转动方向. N为电机转速Δn=ND测-ND理 例如:我们车的速度为1.5m/s,轮子的直径220mm,C=D*Pi,电机控制在21.7转/秒,根据伺服系统的指标, 设电机转速为1500转/分,故可求得当ND=21.7*60=130转/分时,光码盘每秒钟输出的脉冲数为: PD=130×600/60=1300个脉冲 当测出的脉冲个数与计算出的标准值有偏差时,可根据电压与脉冲 个数的对应关系计算出输出给伺服系统的增量电压△U,经过D/A转换,再计算出增量脉冲个数,等下减去。 当运行时间越长路线越长,离我们预制的路线偏离就多了。这时系统起动位置环,通过不断测量光电编码器每秒钟输出的脉冲个数,并与标准值PD(理想值)进行比较,计算出增量△P并将之转换成对应的D/A 输出数字量,通过控制器减少输个电机的脉冲个数,在原来输出电压的基础上减去增量,迫使电机转速降下来,当测出的△P近似为零时停止调节,这样可将电机转速始终控制在允许的范围内。

绝对值旋转编码器程序

绝对值旋转编码器程序 #include // 寄存器头文件包含 #include // 寄存器头文件包含 #include // 空操作函数,移位函数头文件包含 #define uchar unsigned char #define uint unsigned int /* sbit SH_CP = P1^1; //移位时钟脉冲端口 sbit DS = P1^2; // 串行数据输入端口 sbit ST_CP = P3^7; //锁存端口 */ int inc_data=0; //每刷新一次的增量值 int jms=0; //累计增量 int m_iPrvSSI = 0; int m_bIsSPI = 0; uchar uPrvState = 0; sbit AA = P3^3;// sbit BB = P3^4;//这个是时钟 sbit ZZ = P3^5;//这个是数据 sbit BEEP=P1^5; //正反判断 bit t_bFang = 1; int a; int iSSI = 0;

int temp,num,j; uchar led_buf[12]; /*定义LED显示缓冲区*/ uchar code table[]="0123456789"; void delay (int t) { int i,j; for(i=1;i for (j=1;j } void GetSSI(void) { uchar ix = 0; // uchar uState = 0; //状态位数据 int iSSI = 0;//当前的角度数据(0-1023) bit bCrc = 0; // 奇数或偶数标志位 int ire = 0; //增量数据,表示上次正确读的数据,和这次正确读的位置差 AA = 0; //CSN _nop_();_nop_(); BB = 0;//CLK _nop_();_nop_(); BB = 1;//CLK _nop_();_nop_(); for(ix = 0; ix { BB = 0;//CLK

绝对值编码器的工作原理

******************************************************************************* 从编码器使用的计数来分类,有二进制编码、二进制循环编码(葛莱码)、二-十进制吗等编码器。 从结构原理来分类,有接触式、光电式和电磁式等几种。最常用的是光电式二进制循环码编码器。码盘上有许多同心圆,它代表某种计数制的一位,每个同心圆上有透光与不透光的部分,透光部分为1,不透光部分为0,这样组成了不同的图案。每一径向,若干同心圆组成的图案带标了某一绝对计数值。二进制码盘每转一个角度,计数图案的改变按二进制规律变化。葛莱码的计数图案的切换每次只改变一位,误差可以控制在一个单位内。精度受到最低位分段宽度的限制。要求更大计数长度,可采用粗精测量组合码盘。 接触式码盘可以做到9位二进制,它的优点是简单、体积小输出信号强,不需要放大;缺点是电刷摩擦是、寿命低、转速不能太高。 光电式码盘没有接触磨损寿命长,转速高,最外层每片宽度可以做得更小,因而精度高。每个码盘可以做到18位进制。缺点是结构复杂价格高。 电磁码盘是在导磁性好的软铁和坡莫合金原盘上,用腐蚀的办法作成相位码制的凹凸图形,当磁通通过码盘时,由于磁导大小不一样,其感应电势也不同,因而可区分0和1,到达测量的目的。该种码盘是一种无接触式码盘,具有寿命长‘转速高等优点。它是一种发展前途的直接编码式测量元件。 工作原理,接触式码盘,每个码道上有一个电刷与之接触,最里面一层有一导电公用区,与各码道到点部分连在一起,而与绝缘部分分开。导电公用区接到电源负极。当被测对象带动码盘一起转动时,与电刷串联的电阻上将会出现电流流过或没有电流流过两种情况,带标二进制的1或0.若码盘顺时针转动,就可依次得到按规定编码的数字信输出。如果电刷安装不准就会照成误差。葛莱码没转换一个数字编码,只改变一位,故照成的误差不会超过一个单位。 *******************************************************************************

案例五旋转编码器的安装与应用

案例五旋转编码器的安装与应用 1.项目训练目的 掌握旋转编码器的安装与使用方法。 2.项目训练设备 旋转编码器及相应耦合器一套。 3.项目训练内容 先熟悉旋转编码器的使用说明书。 (1)旋转编码的安装步骤及注意事项 ①安装步骤: 第一步:把耦合器穿到轴上。不要用螺钉固定耦合器和轴。 第二步:固定旋转编码器。编码器的轴与耦合器连接时,插入量不能超过下列值。 E69-C04B型耦合器,插入量 5.2mm;E69-C06B型耦合器,插人量 5.5mm;E69-Cl0B型耦合器,插入量7.lmm。 第三步:固定耦合器。紧固力矩不能超过下列值。E69-C04B型耦合器,紧固力矩2.0kfg?cm;E69-C06B型耦合器,紧固力矩 2.5kgf?cm;E69B-Cl0B型耦合器,紧固力矩4.5kfg?cm。 第四步:连接电源输出线。配线时必须关断电源。 第五步:检查电源投入使用。 ②注意事项: 采用标准耦合器时,应在允许值内安装。如图5-1所示。 图5-1 标准耦合器安装 连接带及齿轮结合时,先用别的轴承支住,再将旋转编码器和耦合器结合起来。如图 5-2所示。 图5-2 旋转编码器安装 齿轮连接时,注意勿使轴受到过大荷重。 用螺钉紧固旋转编码器时,应用5kfg?cm左右的紧固力矩。 固定本体进行配线时,不要用大于3kg的力量拉线。 可逆旋转使用时,应注意本体的安装方向和加减法方向。 把设置的装置原点和编码器的Z相对准时,必须边确定Z相输出边安装耦合器。 使用时勿使本体上粘水滴和油污。如浸入内部会产生故障。 (2)配线及连接

①配线应在电源0FF状态下进行。电源接通时,若输出线接触电源线,则有时会损坏输出回路。 ②若配线错误,则有时会损坏内部回路,所以配线时应充分注意电源的极性等。 ③若和高压线、动力线并行配线,则有时会受到感应造成误动作或损坏。 ④延长电线时,应在10m以下。还由于电线的分布容量,波形的上升、下降时间会延长,所以有问题时,应采用施密特回路等对波形进行整形。 还有为了避免感应噪声等,也要尽量用最短距离配线。集成电路输人时,要特别注意。 ⑤电线延长时,因导体电阻及线间电容的影响。波形的上升、下降时间变长,容易产 生信号间的干扰(串音),因此应使用电阻小、线间电容低的电线(双绞线、屏蔽线)。

编码器编程

我用的是三菱PLC的FX2N,这里有A、B、Z相的HK38系列的增量式旋转编码器,将PLC 的X0,X1,X2分别接编码器的A相和B相及Z相,用PLC的双相计数器C252计数,虽然我知道A相超过B相90°为顺时针转,滞后就逆时针转,但不知道如何具体编程,我的目的是达到测旋转轴的角度,从-135°~-30°~-10°~10°~+30°~-135°,正反转旋转 多谢各位,我改了一下,但仍旧没找到问题原因,但测试中发现,接X2和X5都能使C252复位,尽管手册上说只有X2复位,但由于以上提到的Z相接入任何一个输入端都使之ON,所以我就避开了接X2和X5端子,改接其他的端子,比如X3,这并不是因为它是高速输入端的一种才选,其他端也一样,因此我采用了软件复位,也没办法了,效果倒是达到了想要的,

DHSZ D200 K8 C235 M8130 HSZ是高速区间比较指令,前面加D是32位的。运作如下: D200 > C235 M8130 ON D200<=C235>=k8 M8131 ON D200 < C235 M8132 ON

将旋转编码器的A相或B相的输出信号连接至X0~X5,(使用不同的计数器,接不同的输入点)然后用高速计数器对编码器的脉冲信号进行计数。以C235为例,只进行加计数,脉冲编码器的A相或B相需要接入PLC的X0,当设备带动编码器旋转,则X0就有信号输入,C235就会进行计数。使用很简单。 需求一段三菱PLC+旋转编码器+变频器实行多段距离控制,例如:上升总距离为50cm,0-15cm 实行20hz运行、16-25 cm 实行35HZ运行、26-35cm实行40HZ 运行、36-46cm实行20HZ 运行、47-50cm实行10HZ运行;下降反之! 程序中的数字,是按每厘米100个脉冲设计的,在实际中还要经过计算。

编码器的选型及技术解答

编码器的选型及技术解答 一、问:增量旋转编码器选型有哪些注意事项? 应注意三方面的参数: 1.机械安装尺寸,包括定位止口,轴径,安装孔位;电缆出线方式;安装空间体积;工作环境防护等级是否满足要求。 2.分辨率,即编码器工作时每圈输出的脉冲数,是否满足设计使用精度要求。 3.电气接口,编码器输出方式常见有推拉输出(F型HTL格式),电压输出(E),集电极开路(C,常见C为NPN型管输出,C2为PNP型管输出),长线驱动器输出。其输出方式应和其控制系统的接口电路相匹配。 二、问:请教如何使用增量编码器? 1,增量型旋转编码器有分辨率的差异,使用每圈产生的脉冲数来计量,数目从6到5400或更高,脉冲数越多,分辨率越高;这是选型的重要依据之一。 2,增量型编码器通常有三路信号输出(差分有六路信号):A,B和Z,一般采用TTL电平,A脉冲在前,B 脉冲在后,A,B脉冲相差90度,每圈发出一个Z脉冲,可作为参考机械零位。一般利用A超前B或B超前A进行判向,增量型编码器定义为轴端看编码器顺时针旋转为正转,A超前B为90°,反之逆时针旋转为反转B超前A为90°。也有不相同的,要看产品说明。 3,使用PLC采集数据,可选用高速计数模块;使用工控机采集数据,可选用高速计数板卡;使用单片机采集数据,建议选用带光电耦合器的输入端口。 4,建议B脉冲做顺向(前向)脉冲,A脉冲做逆向(后向)脉冲,Z原点零位脉冲。 5,在电子装臵中设立计数栈。 增量型编码器与绝对型编码器的区分:编码器如以信号原理来分,有增量型编码器,绝对型编码器。 增量型编码器(旋转型)工作原理:由一个中心有轴的光电码盘,其上有环形通、暗的刻线,有光电发射和接收器件读取,获得四组正弦波信号组合成A、B、C、D,每个正弦波相差90度相位差(相对于一个周波为360度),将C、D信号反向,叠加在A、B两相上,可增强稳定信号;另每转输出一个Z相脉冲以代表零位参考位。由于A、B两相相差90度,可通过比较A相在前还是B相在前,以判别编码器的正转与反转,通过零位脉冲,可获得编码器的零位参考位。编码器码盘的材料有玻璃、金属、塑料;玻璃码盘是在玻璃上沉积很薄的刻线,其热稳定性好,精度高。金属码盘直接以通和不通刻线,不易碎,但由于金属有一定的厚度,精度就有限制,其热稳定性就要比玻璃的差一个数量级。塑料码盘是经济型的,其成本低,但精度、热稳定性、寿命均要差一些。 分辨率:编码器以每旋转360度提供多少的通或暗刻线称为分辨率,也称解析分度、或直接称多少线,一般在每转分度5~10000线。 信号输出:信号输出有正弦波(电流或电压),方波(TTL、HTL),集电极开路(PNP、NPN),推拉式多种形式,其中TTL为长线差分驱动(对称A,A-;B,B-;Z,Z-),HTL也称推拉式、推挽式输出,编码器的信号接收设备接口应与编码器对应。 信号连接:编码器的脉冲信号一般连接计数器、PLC、计算机,PLC和计算机连接的模块有低速模块与高速模块之分,开关频率有低有高。如单相联接,用于单方向计数,单方向测速。A.B两相联接,用于正反向计数、判断正反向和测速。A、B、Z三相联接,用于带参考位修正的位臵测量。A、A-,B、B-,Z、Z-连接,

旋转编码器在S7-200的应用

运行工作方式,机器大概情况, 机器共18个工位,每个工位为一个机器过程,一个工件为5米(误差1CM)要求用2000线的轴式旋转编码器通过PLC协调控制完成每个工件。 每个工位都有一个人,1个绿启动按钮。一个绿灯,1个红色急停按钮,1个红灯。当1号工人按1号启动按钮后1号指示灯亮,2号工人按2号启动按钮后2号指示灯亮,直到第18个工人都按启动按钮后18灯全亮,机器开始运转,自动运转到5米后停止。绿灯全灭(记米自动复位)等待18个工人下一次继续给18个运行信号后运行。(红色按钮为紧急停车按钮:当工件工作到一半时紧急停车,手动不复位情况下,8个工人动启动后机器可继续当前的米数运转。手动复位则重新开始) 当18个工人无论哪个工人按红色按钮时机器立即停机(此时红色指示灯全亮,红色按钮释放后指示灯全灭)机器再次启动需18个工人都给启动信号才能运行。18个红色按钮共用PLC一个点。如果点富裕的话18个红按钮分为3组,一组6个共用一个点,用3个点实现这个功能。变频器运行过程,当给变频器运行信号时变频器缓慢启动逐渐加速到高速,指定记米到达时变频器缓慢减速到低速运行,记米到达后变频器立即停止刹车,18个工位如果少几个工位的把那几个工位短接,要不影响工作。

程序分为3部分,主程序,指示灯输出,初始化。初始化中有两个中断程序,分别为当前值=设定值时中断以及复位时产生的中断。高速计数器HDEF的通道是HSC0,意思为编码器的A、B相接I0.0、I0.1,复位接在I0.2。事件号是10,意思是选择A/B正交计数器。中断ATCH的事件号12代表当前值=设定值时中断。事件号28代表HSC0当I0.2高电平时产生中断。 主程序:

旋转编码器工作原理

增量式旋转编码器工作原理 增量式旋转编码器通过内部两个光敏接受管转化其角度码盘的时序和相位关系,得到其角度码盘角度位移量增加(正方向)或减少(负方向)。在接合数字电路特别是plc后,增量式旋转编码器在角度测量和角速度测量较绝对式旋转编码器更具有廉价和简易的优势。增量式编码器是直接利用光电转换原理输出三组方波脉冲A、B和Z相;A、B两组脉冲相位差90o,从而可方便地判断出旋转方向,而Z相为每转一个脉冲,用于基准点定位。它的优点是原理构造简单,机械平均寿命可在几万小时以上,抗干扰能力强,可靠性高,适合于长距离传输。其缺点是无法输出轴转动的绝对位置信息。 增量式旋转编码器的内部工作原理(附图) 增量式编码器是直接利用光电转换原理输出三组方波脉冲A、B和Z相;A、B两组脉冲相位差90o,从而可方便地判断出旋转方向,而Z相为每转一个脉冲,用于基准点定位。它的优点是原理构造简单,机械平均寿命可在几万小时以上,抗干扰能力强,可靠性高,适合于长距离传输。其缺点是无法输出轴转动的绝对位置信息。 A,B两点对应两个光敏接受管,A,B两点间距为 S2 ,角度码盘的光栅间距分别为S0和S1。 当角度码盘以某个速度匀速转动时,那么可知输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值相同,同理角度码盘以其他的速度匀速转动时,输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值仍相同。如果角度码盘做变速运动,把它看成为多个运动周期(在下面定义)的组合,那么每个运动周期中输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值仍相同。 通过输出波形图可知每个运动周期的时序为

绝对值编码器工作原理

从增量值编码器到绝对值编码器 旋转增量值编码器以转动时输出脉冲,通过计数设备来计算其位置,当编码器不动或停电时,依靠计数设备的内部记忆来记住位置。这样,当停电后,编码器不能有任何的移动,当来电工作时,编码器输出脉冲过程中,也不能有干扰而丢失脉冲,不然,计 数设备计算并记忆的零点就会偏移,而且这种偏移的量是无从知道的,只有错误的生产结果出现后才能知道。 解决的方法是增加参考点,编码器每经过参考点,将参考位置修正进计数设备的记忆位置。在参考点以前,是不能保证位置的准确性的。为此,在工控中就有每次操作先找参考点,开机找零等方法。 这样的方法对有些工控项目比较麻烦,甚至不允许开机找零(开机后就要知道准确位置),于是就有了绝对编码器的出现。 绝对编码器光码盘上有许多道光通道刻线,每道刻线依次以2线、4线、8线、16线。。。。。。编排,这样,在编码器的每一个位置,通过读取每道刻线的通、暗,获得一 组从2的零次方到2的n-1次方的唯一的2进制编码(格雷码),这就称为n位绝对编码器。这样的编码器是由光电码盘的机械位置决定的,它不受停电、干扰的影响。 绝对编码器由机械位置决定的每个位置是唯一的,它无需记忆,无需找参考点,而且不用一直计数,什么时候需要知道位置,什么时候就去读取它的位置。这样,编码器的抗干扰特性、数据的可靠性大大提高了。 从单圈绝对值编码器到多圈绝对值编码器 旋转单圈绝对值编码器,以转动中测量光电码盘各道刻线,以获取唯一的编码,当转动超过360度时,编码又回到原点,这样就不符合绝对编码唯一的原则,这样的编码只能用于旋转范围360度以内的测量,称为单圈绝对值编码器。 如果要测量旋转超过360度范围,就要用到多圈绝对值编码器。 编码器生产厂家运用钟表齿轮机械的原理,当中心码盘旋转时,通过齿轮传动另一组码盘(或多组齿轮,多组码盘),在单圈编码的基础上再增加圈数的编码,以扩大编 码器的测量范围,这样的绝对编码器就称为多圈式绝对编码器,它同样是由机械位置确定编码,每个位置编码唯一不重复,而无需记忆。

绝对值编码器说明

绝对值型的特点 对应旋转角度以格雷码形式并行输出绝对位置值,而且无需计数器。在通电状态下常时输出旋转角度,因为不用计数,可以在有电气噪声、振动的环境下使用。 而且在掉电和上电时都能正确读出旋转角度,不必回归原点,提高系统的速度。 格雷二进制码是为了弥补二进制码的缺陷而产生的代码。 在二进制码中当从某一个数到下一个数变化时,可能同时有2个以上的数据位发生变化,由于对各位读取的时序上的差异,可能造成读出错误。 为了解决此问题,设计一种代码,使其在从任一数到下一数变化时,只有一个数据位变化,以避免读取错误,这样的代码即格雷二进制码。输出码的转换 使用格雷码时,按以下方式进行二进制,BCD码转换。

输出脉冲数/转 旋转编码器的轴转一圈所输出的脉冲数。对于光学式旋转编码器,通常与旋转编码器内部的光栅的槽相同。(也可在电气上使用输出脉冲数增加到槽数的2倍、4倍。) 增量型 在转动时,可连续输出与旋转角度对应的脉冲数。静止状态不输出。因此,只要对脉部进行计数,就可知旋转的位置。 增量型旋转编码器可任选基准位置。根据在一圈内只输出一次的Z 相信号,可调整基准位置。 绝对值型 与旋转的有无没有关系,可并行输出与旋转角度对应的角度信号,可确认绝对位置。 分辩率 分辩率表示旋转编码器的主轴旋转一周,读出位置数据的最大等分数,绝对值型不以脉冲形式输出,而以代码形式表示当前主轴位置(角度),与增量型不同,相当于增量型的“输出脉冲/转”。 光栅 光学式旋转编码器,其光栅有金属和玻璃两种。如是金属制的开有通光孔(槽)。如是玻璃制的,是在玻璃表面涂了一层遮光膜,在此上面没有透明线条(槽)。槽数少的场合,可在金属圆盘上用冲压加工或腐蚀法开槽,在耐冲击型编码器上使用了金属的光栅。

旋转编码器在线速度检测控制中的应用

在电缆生产线上,通常需要检测电缆的走线速度,用来控制收线电机的转速和计算线缆的长度。成缆工艺参数的稳定,直接关系到电线电缆的质量。 该项目是为某电缆厂的技术改造项目,要改造的设备是利用束线原理制造的盘绞式成缆机,改造的内容是更换全部电气控制系统。这种成缆机的放线盘固定,而收线盘固定在盘绞架上同时完成绞合和收线的双重运动。工作时,在线缆盘直流电机的带动下,完成电缆的收线运动,在排线电机的带动下实现电缆在收线盘的整齐排列。在大盘电机的带动下,通过齿轮箱带动盘绞架实现轴向旋转,完成电缆绞合运动,是保证节距的关键。线速度是由收线盘的旋转速度决定的,如果收线电机的转速恒定,收线盘随着收线轴的变粗,线速度会增大,因此,为保证收线速度恒定,要逐渐降低收线电机的转速。 1 系统设计原理 根据电缆的生产工艺要求,不同型号的电缆,其走线速度是恒定的。通常,电缆的运行速度是由电缆带动旋转编码器来检测的。电缆线速度测速示意图如图1所示。 该项目中,采用的旋转编码器的型号是TRDJ1000系列,旋转一周输出1 000个脉冲。因此,根据在一定时间内检测到的脉冲数,就可以计算出电缆的走线速度。实际应用中,将其与一加工精度极高、周长为500 mm的旋转编码器测量主动轮与旋转编码器同轴安装,主动轮与电缆接触。在电缆生产运动过程中,依靠摩擦力拉动测量轮旋转,这样就把电缆的直线位移(长度)转化为旋转编码器的脉冲数字信号输出。

设旋转编码器每旋转一周,其计数脉冲个数为NP(脉冲个数/转),则旋转编码器角分辨率(单位:(°)/个)为: P=360/NP 假定固定在旋转编码器转轴上的主动导向轮半径为r m,则旋转编码器位移分辨率(单位:m/个)为: Ps=27πr/NP 这时,若计数脉冲个数为N(个),则由旋转编码器测量的位移量S(单位:m)为: S=Ps·N 线缆走线速度V(单位:m/s)为: V=S/T 式中:T为接收N个脉冲所用的时间(单位:s)。 2 硬件电路设计原理 该检测电路以AT89C51单片机为控制核心,如图2所示,旋转编码器输出的脉冲,经过电平转换,变成O~5 V的TTL电平脉冲,送到AT89 C51单片机的外部中断INT0端。每收到

绝对值编码器简介

绝对值编码器概述 工作原理 绝对值编码器与增量编码器工作原理非常相似。它是一个带有若干个透明和不透明窗口的转动圆盘,用光接收器来收集间断的光束,光脉冲转换成电脉冲后, 由电子输出电路进行 处理,并将电脉冲发送出去。 绝对值代码 绝对值编码器和增量编码器之间主要的差别在于位置是怎么样来确定的:增量编码器的位置是从零位标记开始计算的脉冲数量来确定的,而绝对值编码器的位置是由输出代码的读数来确定的,在一转内每个位置的读数是唯一的。因此,

当电源断开或码盘移位时,绝对值编码器不会丢失实际位 置。 然而,当绝对值编码器的电源一旦重启位置值就会立即替代旧值,而一个增量编码器则需要设置零位标记。 输出代码用于指定绝对位置。很明显首选会是二进制码,因为它可以很容易被外部设备所处理,但是,二进制码是直接从旋转码盘上取得的,由于同时改变的编码状态位数超过一位,所以要求同步输出代码很难。 例如,两个连续的二进制码编码7(0111)变到8(1000),可以注意到所有位的状态都发生了变化。因此,如果你试着读在特定时刻的编码,要保证读数的正确性是很困难的,因为在数据改变的一瞬间同时就有超过一位的状态变化。因此,格雷码在二个连续编码之间(甚至于从最后一个到第一个)只有一位二进码状态变化。 格雷码通过一个简单的组合电路就可以很容易被转换为二进制码。(见如下表单)

格雷余码 当定义位置的个数不是2的幂次方时,从最后一个位置变到最前一个位置,即使是格雷码,同时改变的编码状态也会超过一位。 例如,假设一个每转12个位置的绝对型编码器,其格雷码如右侧所示,显而易见在位置11和0之间变化时,3位二进制码位同时改变状态,可能会引起读数出错,这是不允许的。试用格雷余码,3位二进制就可以维护编码仅仅只有一位状态变化,使得位置0与N值一一对应,这就得到格雷余码。其中,N是这样一个数,从转换成二进制码的格雷余码中减去N,就得到正确的位置值。 超差值N的计算: N=(2n-IMP)/2 式中:IMP IMP是每转的位置数(只能是 偶数)

相关文档
相关文档 最新文档