Quadrature Encoder Test Kit based around STM32F411 Development Board.
The aim of this project was to design a low cost, embedded system capable of testing the working condition of quadrature encoders. This involved measuring the pulses per revolution, individual channel counts (A, B and Z), relative position of motion and rpm/frequency of rotation. The system shows these measurements on a compact screen, and is comprehendible to someone with a trades-persons education level.
Ryan Lederhose
- Encoder Pulse Count
- Individual Channel Count
- Rotation Direction
- RPM and Frequency Calculation
- Relative Degrees of Rotation Measurement
- 1.8inch TFT Display w/ 25Hz Update Rate
- Screw terminals facilitating strong connection to encoder wires
- Clone the GitHub repository
git clone https://github.com.ryanlederhose/Quadrature-Encoder-Test-Kit.git
- Ensure STM32CubeIDE is downloaded on your personal device
- Within the CubeIDE, start a new STM32 Project from Existing STM32CubeMX Configuration file (*.ioc)
- Use the .ioc file from
./Quadrature-Encoder-Test-Kit/embedded/quadrature-decoder/quadrature-decoder.ioc
- Replace the Core folder from the project with the Core folder form:
./Quadrature-Encoder-Test-Kit/embedded/quadrature-decoder/Core/
- Connect your debugger (e.g. STLink) as such
- Run the debugger software on STM32CubeIDE
- Use a 12V, 1A DC Power Supply (2.1mm plug). It's important not to supply more than the recommended voltage as it will fry the voltage regultator
- Connect the encoder to the 8-pin plug as such:
Typically, encoders will follow the same general colour scheme. In practice, it is not essential to connect the complementary channels (i.e. AN, BN and ZN) as shown as they are all internally connected to ground. As long as they are connected to the ground pins, the device will function properly.
- Connect the 8-pin plug to the socket connection on the PCB
- Upon rotating the shaft of the encoder, the LCD display will now update with the appropriate measurements.
- It is a requirement for correct measurements that the encoder completes at least one full revolution in the direction of rotation starting from the origin point (i.e. origin meaning when the Z channel count ticks over). This point is set by the encoder itself and not the system.