-
Доброе утро. Вобщем вопрос решился. Экспеременитруя с данными прищел к такому выводу - линейка корректно работает только если в поле числа импульсов, в конфигурации энкодера, вводить число 2^n, тогда при счете в минус при переходе через 0 появляется не пресловутые 5355, а (в моем случае раз уж 16000 импульсов на длину, то выбрал 2^14=16384) 16383...16382...итд... и ещё, если записать в число импульсов как 2^n, то энкодер будет считываться как линейный, те при значении энкодера 0 счет в минус производиться не будет (ну и при достижении максимума счет в+ тоже остановится), а если как (2^n)-1, то счет будет производиться как круговой энкодер..
разницу в значениях(16000действительное и 16383записанное) уравнял арифметически... так что всё работает нормально, всем спасибо![Smile](images/smilies/smile.png)
НО! вот почему при отличном от 2^n или (2^n)-1 значении при счете в-, при переходе через ноль появляется 5355, загадка интересная..
Последний раз редактировалось woffka; 03.11.2009 в 06:34.
-
Супер Модератор
Спасибо, проверим.
Не могли бы написать полное название контроллера и версию прошивки и Target (можно просто лог гипертерминала).
Ваши права
- Вы не можете создавать новые темы
- Вы не можете отвечать в темах
- Вы не можете прикреплять вложения
- Вы не можете редактировать свои сообщения
-
Правила форума