Как я и
подозревал, оказалось все в худших китайских традициях. Пока искал, что ж за принцип работы у оптического энкодера (ну не понимаю я, почему там не два, а целых четыре фоторезистора!), наткнулся
на материал, о котором и вспоминал - человек тоже пытался "завести" энкодер, и ему пришлось потрошить железяку.
В общем, помучился я с этим энкодером, внимательно посмотрел на матрицу фоторезисторов и понял, что у меня тот же самый косяк. Пришлось вскрывать (а для этого нужно феном расплавить корпус - он какой-то совсем уж дохлый и уже при 200°C течет) и вынуть содержимое, приклеили его туда знатно. Чтобы можно было под близкому к нужному углу установить датчик, сделал надрез надфилем:
На этой фотографии хорошо видна ориентация датчика:
Оказалось, что светодиод ультрафиолетовый, и камера его хорошо "видит". Нет, светодиод-таки инфракрасный, просто на лопате камера как-то неправильно ИК отображает.
Если он будет стоять строго радиально, то направление вращения определять никак не сможет! Фоторезисторы, расположенные ближе к оси, просто не будут затеняться (в итоге на одной фазе всегда +5В), а дальние просто считают шаги.
При помощи пластилина я закрепил дачтики на двигателе:
и наконец-то осциллограф показал то, что надо!
Крутим в одну сторону - на нарастающем фронте "желтой" фазы "красная" имеет значение логической единицы:
Крутим в противоположную - и на нарастающем фронте "красная" фаза имеет логический нуль:
Все шикарно, только смещение между фазами не 90° из-за того, что резистор на плате мешал дорезать нормально. Нужно будет выпаивать из платы светодиод и датчик, да вставлять их в какой-нибудь новый корпус, чтобы светоприемник можно было сориентировать как надо.
Месяца через три, как придут заказанные вчера энкодеры, надо будет не забыть проверить их и поставить китайцу жирный "МИНУС" со ссылками на эту публикацию и публикацию на mysku.
Кстати, может кто подскажет, что за датчик используется в этих энкодерах? Может, проще купить все по частям, чем курочить?