大家分析一下,看是否行得通?
光电A C 光电B D 马达
(LMT+) (HOME,LMT-)
┌┐ ┌┐ ┌───┐
┌┴┴─────────┴─┼┼─┴─┘ │
└─────────────┼┼───┐ │
││ └───┘
┌─────────────┼┼┐
└─────────────┼┼┘
└┘
如上图,如果把光电A作为正极限,把光电B同时作为原点和负极限,回零过程应该是这样的:先用自己的程序让马达向正向(光电A方向,图上的左向)行走一段距离,再调用PCI-8134运动卡的回零指令朝负方向(光电B方向,图上的右向)回零,马达遇原点(光电B)后,有一小段过程的细节我就不明白了,有两种情况:
1、马达遇原点细节一:马达遇原点后(得原点左边上升沿信号,如C点),再向右过了原点(得原点右边下降沿信号),如D点,马达再向左返回,遇原点左边下降沿信号,如C点,此时才算原点,马达停止,清零,回零完成。
2、马达遇原点细节二:马达遇原点后(得原点左边上升沿信号,如C点),只要向右移一点点(只要过了上升沿,如C点),就立刻向左返回,遇原点左边下降沿信号,如C点,此时才算原点,马达停止,清零,回零完成。
如果是细节一,因为原点同时作为负极限,那么马达遇负极限停止,不能再向右走了,将得不到原点右边下降沿信号,如D点。此时马达回零就会出现偏差。
这个细节应该和运动卡无关,而是运动控制理论的通用做法。
请高手们分析一下这个细节,请有经验的高手们指点这个细节。谢谢!