光电编码器位置检测程序

光电编码器位置检测程序

ID:41561061

大小:63.50 KB

页数:5页

时间:2019-08-27

光电编码器位置检测程序_第1页
光电编码器位置检测程序_第2页
光电编码器位置检测程序_第3页
光电编码器位置检测程序_第4页
光电编码器位置检测程序_第5页
资源描述:

《光电编码器位置检测程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、typedefstruct{intl6ElecTheta;inti6MechTheta;Uintl6DirectionQep;Uintl6QepCountlndex;Uintl6RawTheta;Uint32MechScaler;Uintl6LineEncoder;Uintl6PolePairs;1•位置检测,计算过程中的变量的定义DefinethestructureoftheQEP(QuadratureEncoder)DriverObject*///Output:MotorElectricalangle(Q15)//(输出的电角度?)//Output:Motor

2、MechanicalAngle(Q15)〃(输出的机械角度?)//Output:Motorrotationdirection(QO)〃(电机转向?)//Variable:Encodercounterindex(QO)〃(编码器输出的脉冲数?)//Variable:RawanglefromTimer2(QO)〃(某一时刻转子对于定子A相的绝对角度?)//Parameter:0.9999/totalcount(Q30)//(每个脉冲所转过的机械角度?)//Parameter:Numberoflineencoder(QO)//(编码器每转输出的脉冲个数?)//Param

3、eter:Numberofpolepairs(QO)〃(极对数)intl6CalibratedAngle;//Parameter:RawangularoffsetbetweenencoderUintl6IndexSyncFlag;void(*init)();//indexandphasea(Q0)〃翻译过來是编码器与定子A相之间的角度偏量,〃但不知道到底这个偏移量是指什么,请教高人//Output:Indexsyncstatus(Q0)(?)//Pointertotheinitfunction//(初始化函数)void(*calc)();//Pointertoth

4、ecalcfunction〃(位置测量,计算函数)void(*isr)();//Pointertotheisrfunction//(Z信号的捕获屮断)}QEP;上面的汉语解释不知道对不对,请高人过目,指出问题。2、变量的初始化#defineQEP_DEFAULTS{0x0,0x0,0x0,0x0,0x0,0x00020C4A,0x0,4,-1250,0x0,(void(*)(Uint32))F281X_EVl_QEP_Init,(void(*)(Uint32))F281X_EVl_QEP_Calc,(void(*)(Uint32))F281X_EV1_QEP_

5、Isr}QEPqepl=QEP_DEFAULTS;//Applied-motionPMSMmotor:24-v,8-pole,2000lineencoder,CalibratedAngle=-1250//MechScaler=1/8000=0x00020C4A(Q30)主程序里还有QEP模块的初始化,与上面的初始化有一点点重复的地方。//InitializeQEPmoduleqep1.LineEncoder=2000;qepl.MechScaler=_IQ30(0-25/qepl.LineEncoder);qepl.PolePairs=P/2;qep1.Calib

6、ratedAngle=-1250;qepl.init(&qepl);此处要请教高手指导的问题就是:CalibratedAngle到底是什么东西?3、功能模块程序3、1在进行正交编码,捕获ZZ前对2812的寄存器进行初始化,设置定时器2为QEP电路提供基准时钟voidF281X_EVl_QEP_Init(QEP*p)EvaRegs.CAPCONA.all=0X9004;//SetupcaptureunitsEvaRegs.T2CON.all=0X9870;//SetupcapturetimerEvaRegs.T2PR=4*p->LineEncoder;//InitT

7、imer1periodRegisterEvaRegs.EVAIFRC.bit.CAP3INT=1;//ClearCAP3flagEvaRegs.EVAlMRC.bit.CAP3INT=1;//EnableCAP3Interr叩tEALLOW;//EnableEALLOWGpioMuxRegs.GPAMUX.all

8、=0x0700;//SetupthecapturepinstoprimaryfunctionsEDIS;//DisableEALLOW此处要请教高手问题就是:EvaRegs.T2PR=4*p->LineEncoder,根据上面初始化的定义,4*2000=

9、8000个

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。