一种基于双中断的光栅位移传感器软件细分方法

文档序号:6218263阅读:311来源:国知局
一种基于双中断的光栅位移传感器软件细分方法
【专利摘要】本发明涉及一种基于双中断的光栅位移传感器软件细分方法,光栅位移传感器输出两路相位差为90°的方波信号A和B,A、B两相信号的脉冲数表示光栅走过的位移量,当光栅正向移动时,光栅输出的A相信号的相位超前于B相信号90°,当光栅反向移动时,光栅输出的A相信号的相位滞后于B相信号90°,以此为判断依据,将A、B两相信号分别接微处理器的两个中断输入口,如INT0、INT1,对光栅输出的正交方波信号进行四细分,从而进行判向及计数,此方法响应速度快、成本低,与传统的硬件细分法和现有的状态查询软件细分法相比,具有实时性好、稳定性高、抗干扰能力强等优点。
【专利说明】一种基于双中断的光栅位移传感器软件细分方法
【技术领域】
[0001]本发明涉及一种信号判断技术,特别涉及一种基于双中断的光栅位移传感器软件细分方法。
【背景技术】
[0002]现有的光栅细分方法主要有光学细分法、机械细分法、硬件细分法和微处理器软件细分法。由于软件细分法不需要额外的硬件电路,故成本较低。现有的微处理器软件细分方法是状态查询法。光栅传感器输出两路相位相差为90°的方波信号A和B,将A、B两相信号分别接微处理器的两个输入口,如INl,IN2, CPU定时或循环查询这两个输入口的状态,进行如下判断:
(I)如下图1所示正向移动状态示意图:若A、B两相信号状态的相对变化为:
00— 10 — 11 — 01 — 00,就可判断A相彳目号超如于B相彳目号,光栅为正向移动,并且每发生一次状态变化,计数器加1,并且一个周期内共可实现4次加计数,从而实现正向移动状态的四细分计数。
[0003](2)如下图2所示反向移动状态示意图:若A、B两相信号状态的相对变化为:00 — 01 — 11 — 10 — 00,就可判断A相信号滞后于B相信号,光栅为反向移动,并且每发生一次变化,计数器减1,并且一个周期内共可实现4次减计数,从而实现反向移动状态的四细分计数。
[0004]综合上述分析,可以得出处理模块状态转换图3其中“ + - ”分别表示计数器加/减I。状态查询法存在占用CPU时间长,响应慢,容许的最高运动速度受采样间隔时间的限制而比较低等缺点。

【发明内容】

[0005]本发明是针对光栅细分方法中软件细分方法占用CPU时间较长、速度低,硬件细分方法复杂、成本高的问题,提出一种基于双中断的光栅位移传感器软件细分方法,采用微处理器作为控制器,利用双中断(上升沿和下降沿触发)方式对光栅输出的正交方波信号进行四细分、判向及计数。该方法与传统的硬件细分法和现有的状态查询软件细分法相比,具有实时性好、稳定性高、抗干扰能力强等优点。
[0006]本发明的技术方案为:一种基于双中断的光栅位移传感器软件细分方法,光栅位移传感器输出两路相位差为90°的方波信号A和B,A、B两相信号的脉冲数表示光栅走过的位移量,当光栅正向移动时,光栅输出的A相信号的相位超前于B相信号90° ,当光栅反向移动时,光栅输出的A相信号的相位滞后于B相信号90° ,将A、B两相信号分别接微处理器的两个中断输入口,设两个中断输入口为INTO、INTl进行如下判断:
I)当A相信号INTO进入中断,则在其中断服务程序中读B相信号INTl的状态,判断A,B信号状态值的异或值,将其作为计数器输出值的加减标志,
如A上升沿触发时,B为0;A下降沿触发时,B为I ;即A为I时,B为0;A为0时,B为1,A~B=1,此时计数器加I,为正向移动;
如A上升沿触发时,B为I汸下降沿触发时,B为O ;即A为I时,B为I ;A为O时,B为
0,A~B=0,此时计数器减I,为反向移动;
2)当B相信号INTl进入中断,则在其中断服务程序中读A相信号INTO的状态,判断A,B信号状态值的异或值,将其作为计数器输出值的加减标志,
如B上升沿触发时,A为I出下降沿触发时,A为0 ;SPB为I时,A为I ;B为0时,A为0,A~B=0,此时,计数器加1,为正向移动;
如B上升沿触发时,A为0出下降沿触发时,A为I ;即B为I时,A为0 ;B为0时,A为1,A~B=1,此时,计数器减I,为反向移动。
[0007]本发明的有益效果在于:本发明基于双中断的光栅位移传感器软件细分方法,此方法响应速度快、成本低,与传统的硬件细分法和现有的状态查询软件细分法相比,具有实时性好、稳定性高、抗干扰能力强等优点。
【专利附图】

【附图说明】
[0008]图1为现有技术光栅正向移动时输出信号不意图;
图2为现有技术光栅反向移动时输出信号不意图;
图3为现有技术处理模块状态转换示意图;
图4为本发明A相信号进中断,光栅正向移动时输出信号示意图;
图5为本发明A相信号进中断,光栅反向移动时输出信号示意图;
图6为本发明B相信号进中断,光栅正向移动时输出信号示意图;
图7为本发明B相信号进中断,光栅反向移动时输出信号示意图。
【具体实施方式】
[0009]本发明涉及一种基于双中断的光栅位移传感器软件细分方法。光栅位移传感器输出两路相位差为90°的方波信号A和B,用A、B两相信号的脉冲数表示光栅走过的位移量,标志光栅分正向与反向移动。如图1所不,当光栅正向移动时,光栅输出的A相信号的相位超前于B相信号90° ;如图2所不,当光栅反向移动时,光栅输出的A相信号的相位滞后于B相信号90°。本发明采用双中断(上升沿和下降沿触发)的方式对光栅输出的正交方波信号进行四细分、判向及计数。
[0010]A、B两相信号分别接微处理器的两个中断输入口,如INTO、INTl
(I)当A相信号(INTO )进入中断,则在其中断服务程序中读B相信号(INTl)的状态,判断A,B信号状态值的异或值,将其作为计数器输出值的加减标志,
①如图4所示:A上升沿触发时,B为0;A下降沿触发时,B为I ;即A为I时,B为0 ;A为0时,B为I。综上:A~B=1,此时计数器加I,为正向移动;
②如图5所示:A上升沿触发时,B为I;A下降沿触发时,B为0;即A为I时,B为I;A为0时,B为O。综上:A~B=0,此时计数器减I,为反向移动。
[0011](2)当B相信号(INTl)进入中断,则在其中断服务程序中读A相信号(INTO)的状态,判断A,B信号状态值的异或值,将其作为计数器输出值的加减标志,
①如图6所示:B上升沿触发时,A为I ;B下降沿触发时,A为0 ;即B为I时,A为I ;B为O时,A为O。综上:A~B=0,此时,计数器加1,为正向移动;
②如图7所示:B上升沿触发时,A为O ;B下降沿触发时,A为I;即B为I时,A为O ;B为O时,A为I ;综上:A~B=1,此时,计数器减I,为反向移动。
【权利要求】
1.一种基于双中断的光栅位移传感器软件细分方法,其特征在于,光栅位移传感器输出两路相位差为90°的方波信号A和B,A、B两相信号的脉冲数表示光栅走过的位移量,当光栅正向移动时,光栅输出的A相信号的相位超前于B相信号90° ,当光栅反向移动时,光栅输出的A相信号的相位滞后于B相信号90° ,将A、B两相信号分别接微处理器的两个中断输入口,设两个中断输入口为INTO、INTl进行如下判断: 1)当A相信号INTO进入中断,则在其中断服务程序中读B相信号INTl的状态,判断A,B信号状态值的异或值,将其作为计数器输出值的加减标志, 如A上升沿触发时,B为0 ;A下降沿触发时,B为I ;即A为I时,B为0 ;A为0时,B为1,A~B=1,此时计数器加I,为正向移动; 如A上升沿触发时,B为I ;A下降沿触发时,B为0;即A为I时,B为I ;A为0时,B为0,A~B=0,此时计数器减I,为反向移动; 2)当B相信号INTl进入中断,则在其中断服务程序中读A相信号INTO的状态,判断A,B信号状态值的异或值,将其作为计数器输出值的加减标志, 如B上升沿触发时,A为I出下降沿触发时,A为0;即B为I时,A为I出为0时,A为0,A~B=0,此时,计数器加1,为正向移动; 如B上升沿触发时,A为0 ;B下降沿触发时,A为I ;即B为I时,A为0 ;B为0时,A为1,A~B=1,此时,计数器减I,为反向移动。
【文档编号】G01B11/02GK103777960SQ201410052746
【公开日】2014年5月7日 申请日期:2014年2月17日 优先权日:2014年2月17日
【发明者】蔡锦达, 齐建虹, 黄帅, 许鹏程 申请人:上海理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1