Rotation Measurment with Encoders

Click For Summary
SUMMARY

This discussion focuses on designing a circuit using an Arduino Uno to measure rotation with a rotary encoder and display the angle on three common anode 7-segment displays (part # 5611BH). The rotary encoder produces quadrature signals A and B, which are critical for accurate angle measurement. The user must consider the number of available output pins on the Arduino, as connecting three 7-segment displays directly requires 21 pins. Alternative solutions such as using addressable latches, BCD decoders, or multiplexing techniques are recommended to manage pin limitations.

PREREQUISITES
  • Understanding of Arduino Uno pin configuration
  • Knowledge of rotary encoder operation and quadrature signals
  • Familiarity with common anode 7-segment displays and their wiring
  • Basic electronics concepts, including resistor arrays and multiplexing
NEXT STEPS
  • Research Arduino libraries for rotary encoder integration
  • Learn about multiplexing techniques for 7-segment displays
  • Investigate BCD to 7-segment decoder chips and their applications
  • Explore optical sensors or micro-switches for zero position detection
USEFUL FOR

Electronics hobbyists, Arduino developers, and anyone interested in building projects involving rotary encoders and display systems.

Franklin Lopez
Messages
5
Reaction score
0
I am trying to both design a code for Arduino and build a circuit connected with the Arduino which uses 3 anode 7 segment and 3 resistor arrays with 7 pins to connect to the Arduino Uno. The encoder is a rotary encoder. I have Pin A of the rotary encoder connected to pin 13 of the Arduino and Pin B connected to the pin 12. From there on I am not sure where to conncect from. I do believe to connect all 3 7 segments I need to use one of the arrays in parallel with the rest and then connect to the Arduino Uno. I need the 7 segment LED's to read the angle at which the Rotary Encoder is currently at. Up to 360.
 
Technology news on Phys.org
You have two quite separate problems.

Firstly you have a rotary encoder. That will produce two signals called A and B. Those are in quadrature. There may also be a zero position synchronise output available. What model is your encoder? Do you have a link to a data sheet?

Secondly you have a three digit, seven segment display. If you were to use a display with a serial interface you would need less wire but it would take a little more code. An LCD would need less current than an LED display. Have you selected a display. What is the make and part number.
 
The 3 different LED 7 segments are required for this project to display the angle. The rotary encoder I have has he serial number faded but I know for sure it does not have a zero position output available. The LED 7 segments are common anode part # 5611BH. All connected to the Arduino Uno thru 3 different resistor banks.
 
The counting of pulse edges from the encoder will be critical because you will have to re-establish zero if you miss a step. That suggests you will need an optical sensor or a micro-switch to detect when the encoder axis passes zero in a particular direction. Alternatively, a press-button to set when the angle is at zero.

You will need 21 pins to connect the three 7-segment displays directly.
If you do not have enough output pins available, you will need an alternative solution.
Maybe consider;
1. Three addressable latches to hold the segment bits and drivers to sink the segment current.
2. Decoders from 4 bit BCD to 7 segments will reduce the bits output to 2+4+4=10 bits.
3. You might multiplex the LEDs with one digit powered at the time. That will need 3 anode transistor drive bits, plus 7 segment bits = 10 bits total.
4. Or multiplex with a four to seven decoder chip with three anode driver transistors = 4 + 3 = 7 bits.

You need to investigate the drive capability and how many output pins are available.
Ask much more specific questions.
 
  • Like
Likes Asymptotic
We have many threads on AI, which are mostly AI/LLM, e.g,. ChatGPT, Claude, etc. It is important to draw a distinction between AI/LLM and AI/ML/DL, where ML - Machine Learning and DL = Deep Learning. AI is a broad technology; the AI/ML/DL is being developed to handle large data sets, and even seemingly disparate datasets to rapidly evaluated the data and determine the quantitative relationships in order to understand what those relationships (about the variaboles) mean. At the Harvard &...

Similar threads

  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 14 ·
Replies
14
Views
2K
  • · Replies 8 ·
Replies
8
Views
2K
  • · Replies 15 ·
Replies
15
Views
3K
Replies
7
Views
2K
  • · Replies 5 ·
Replies
5
Views
5K
  • Sticky
  • · Replies 13 ·
Replies
13
Views
7K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 6 ·
Replies
6
Views
4K