Kirk Wallace wrote:
> On Sun, 2008-07-20 at 16:30 -0400, Kenneth Lerman wrote:
>> What do you mean by "encoder is in an invalid position". Every position 
>> read from an absolute encoder is valid in the sense that it reflects the 
>> actual position of the encoder within its tolerance.
> 
> I don't think it does. Every edge from on/off to off/on has an unstable
> region, which can be cleaned up with hysteresis, which requires motion
> (?). The only time the data is valid, is when all bits are cleanly
> within a stable area, off any edges.

That statement is not correct. When you read the data, even if it is at 
the edge, you will get either a zero or a one. Since only one of the 
sensors can be at the edge, all of the other bits will have "stable" 
values. An important feature of a Gray code is that the difference in 
location between that "unstable" bit being a zero and it being a one is 
one part in 256 (for our eight bit encoder). That should not be significant.

> 
>> If you used a 256 count encoder for your 24 positions, each tool 
>> position would correspond to 256/24 = 10-2/3 counts. So if the encoder 
>> read from 0-10, that would be position zero. 11-22 would be position 
>> one, etc.
>>
>> On power up, you would read the encoder and that would tell you what 
>> position you were at. Assuming that the tool positions corresponded to 
>> the start of each range, 0 would correspond to position 0, 10 would 
>> correspond to tool position 1. 21 would correspond to tool position 2, 
>> etc. To allow for some "slop", you would probably set things up so that 
>> 255, 0, 1 were tool position 0. 9, 10, 11 were tool position 1, etc.
>>
>> If you found that you were between positions, it wouldn't really matter. 
>> The first time you seek to a tool, you would still know where you are 
>> and where you have to go.
> 
> Bingo. You need motion to do that, it just took me a while to realize I
> could deal with that on the first tool change. Or, use the spiffy
> magnetic sensor.
> 
>> A true absolute encoder is a static device. You can read a value without 
>> moving it.
>>
>> Ken
> 
> Thanks for your help. That's why I posted the question.
> 

-- 
Kenneth Lerman
Mark Kenny Products Company, LLC
55 Main Street
Newtown, CT 06470
888-ISO-SEVO
203-426-7166

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to