Подскажите мне, пожалуйста, если сами знаете и готовы поделиться информацией, следующий момент: у меня имеется энкодер KY-040 15 шагов за оборот (24 градуса), использую библиотеку GyverEncoder, “сажаю” CLK на 3 пин, DT на 4 пин, SW на 5 пин. Этот энкодер связан муфтой с двигателем. Вторым энкодером задаю количество шагов. Когда нажимаю кнопку, двигатель должен провернуть первый энкодер на количество шагов, указанных вторым энкодером. Заметил следующее: при вращении в одном направлении, все отлично. Как только направление меняю, в первом цикле сохраняется ошибка, равная 12-15 градусов (точно не могу определить). Решил посмотреть на осциллографе, что там происходит, подключил к ножкам и обнаружил, что при вращении в одном направлении (когда всё хорошо) оба импульсных сигнала (А и В) проходят одинаковый период, однако один относительно другого сдвинут не на половину, как везде рисуют, а, вроде как, на четверть. Причем наглядно это так выглядит примерно так, как показано на рисунке. Таким образом, на рисунке можно отметить 4 изменения с сиганалами: сначала красный изменяется, потом зеленый, потом вновь красный, и снова зеленый. После этого двигатель останавливается, поскольку количество шагов обоих энкодеров сравнялись. В случае с обратным вращением, происходит сначала 3 изменения с сигналами, причем по осциллограмме видно, что проходят они в сумме больше, чем полупериод, после чего система считает, чтоб произошел поворот на 24 градуса (1 шаг). Затем, если еще раз в этом же направлении начать вращать, все становится на свои места и система действительно начинает “шагать” по 24 градуса.
Подскажите, это где то я ошибаюсь или проблема в библиотеке? Или это вовсе не проблема, а принцип работы энкодера. Можно ли как то точно посчитать, какая ошибка при первой смене направления? Заранее благодарю.
Ошибаешься именно ты, коль считаешь, что можно добиться точности большей, чем шаг энкодера.
Если нужна ошибка не более 10 градусов, то и энкодер нужно брать минимум на 70 шагов на оборот.
Да, кэп!
А также бывают энкодеры, у которых один контакт разомкнут, а другой - замкнут. А также такие, у которых оба контакта замкнуты, и такие, у которых оба контакта разомкнуты.