背景: - version 1: 未做代码修改,直接复刻本项目。发现在使用编码器时,时常会出现滚动方向判断错误的情况。 - version 2: 尝试基于 esp32 自制了一版码表,使用相同旋转编码器,也会出现类似的输入错判问题。 排查: <div align="center"> <img src="https://github.com/user-attachments/assets/d733c774-10d8-477b-b040-418922f03cf3" alt="Image" width="60%" /> </div> - 编码器输入波形正常,偶有毛刺,但不是方向误判的主要原因。 解决思路: - https://www.faulhaber.com/fileadmin/Import/Media/AN147_EN.pdf 文档中介绍,可以使用四步法解析正交编码器的输出,该方法能有效避免毛刺和采样错误导致的误判。 - 尝试在我的 ESP32 项目中实现该方法,测试证明修改后几乎不再出现误码情况 https://github.com/Reskip/ESP32TrackRecorder/blob/main/main/status/encoder_state.cpp#L52 项目还在持续开发中,代码仅供参考,如有帮助欢迎 star~
背景:
排查:
解决思路:
https://github.com/Reskip/ESP32TrackRecorder/blob/main/main/status/encoder_state.cpp#L52
项目还在持续开发中,代码仅供参考,如有帮助欢迎 star~