Чет не пойму, это условие же никогда не выполнится. Значение tsOLD присваивается в теле IF и до этого равно нулю...Код:if ts - tsOLD >= 1000 then // ПР может проскочить 1000 мс период
Вид для печати
Чет не пойму, это условие же никогда не выполнится. Значение tsOLD присваивается в теле IF и до этого равно нулю...Код:if ts - tsOLD >= 1000 then // ПР может проскочить 1000 мс период
Выполнится, для кого сделали Отладку ФБ, в том числе пошаговую ? Вложение 85203
Сигналы А и В представляют собой меандр и сдвинуты на 90 градусов относительно друг друга(для определения направления вращения), счёт осуществляется по фронту и спаду каждого импульса для обеспечения более точного позиционирования, в 4 раза(что существенно), короче, было бы просто обидно иметь точность в 4 раза меньшую из-за незнания, это как строить акведук зная закон сообщающихся сосудов!
Так было задумано, чтобы использовать возможности энкодера по полной!
Я конечно понимаю, что на самолёте можно и по дороге ехать, но задумка была другая!
Можно проверить на практике если есть ПР с быстрыми входами, для обычных входов я здесь выкладывал макрос работы с энкодером:
https://owen.ru/forum/showthread.php...l=1#post434001
https://owen.ru/forum/showthread.php...l=1#post385600
https://owen.ru/forum/showthread.php...l=1#post404346
И, довольно давно, не менее года назад, в одной из тем форума один товарищ жаловался на то, что счётчик энкодера считает в 4 раза больше импульсов, чем он ожидал!
И, о чём это говорит?
Короче, если Вы возьмёте нормальный прибор для работы с энкодером, то точность позиционирования вырастет в 4 раза, у Вас частота и длительность сигналов позволяет работать и с обычными(не быстрыми) входами, ссылку на макрос работы с энкодером я постом выше давал!
Видимо Овен неисправим, в смысле, всегда стремится всё сделать через заднее место по принципу "и так сойдёт", наверно он мультик одноимённый не смотрел про зайчика и к каким печальным результатам это может привести!
https://www.youtube.com/watch?v=D3tr1lQIoOk