Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Quadrature Encoder AMT103: Examples, Pinouts, and Specs

Image of Quadrature Encoder AMT103
Cirkit Designer LogoDesign with Quadrature Encoder AMT103 in Cirkit Designer

Introduction

The AMT103 is a high-resolution quadrature encoder manufactured by Same Sky (formerly CUI Devices). It is designed to provide precise position and speed feedback for rotary applications. Utilizing optical sensing technology, the AMT103 detects the rotation of a shaft and outputs two square wave signals (A and B) that indicate both the direction and speed of rotation. This encoder is highly versatile and suitable for applications requiring accurate motion control.

Explore Projects Built with Quadrature Encoder AMT103

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Configurable Battery-Powered RF Signal Transmitter with DIP Switch Settings
Image of fyp transmitter: A project utilizing Quadrature Encoder AMT103 in a practical application
This circuit appears to be a configurable encoder system with an RF transmission capability. The encoder's address pins (A0-A7) are connected to a DIP switch for setting the address, and its data output (DO) is connected to an RF transmitter, allowing the encoded signal to be wirelessly transmitted. The circuit is powered by a 9V battery, regulated to 5V by a 7805 voltage regulator, and includes a diode for polarity protection. Tactile switches are connected to the encoder's data inputs (D1-D3), and an LED with a current-limiting resistor indicates power or activity.
Cirkit Designer LogoOpen Project in Cirkit Designer
Rotary Encoder Interface with STG Adapter for Signal Processing
Image of Encoder in STG: A project utilizing Quadrature Encoder AMT103 in a practical application
The circuit consists of two rotary encoders (Kalamoyi P3022-V1-CW360) connected to two STG adapters. Each encoder's VCC, OUT, and GND pins are connected to the corresponding STG adapter, facilitating signal transmission and power supply management.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO with I2C Multiplexer and Multiple AS5600 Magnetic Encoders
Image of Thesis: A project utilizing Quadrature Encoder AMT103 in a practical application
This circuit consists of an Arduino UNO microcontroller interfaced with multiple AS5600 magnetic encoders through an Adafruit TCA9548A I2C multiplexer. The encoders are connected to different channels of the multiplexer, allowing the Arduino to communicate with each encoder individually over the I2C bus. The purpose of this circuit is to read multiple rotary positions simultaneously without I2C address conflicts, likely for precision control or feedback in a robotic or automation application.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Mega and Nano-Based Dual Rotary Encoder Controller with AC-DC Power Supply
Image of dual_encoder_v1: A project utilizing Quadrature Encoder AMT103 in a practical application
This circuit features an Arduino Mega 2560 and two Arduino Nano microcontrollers interfacing with two rotary encoders for input. The system is powered by an AC-DC PSU board converting 220V AC to 5V DC, and the microcontrollers communicate with each other via serial connections. The setup is designed for reading rotary encoder inputs and potentially processing or transmitting the data.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Quadrature Encoder AMT103

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of fyp transmitter: A project utilizing Quadrature Encoder AMT103 in a practical application
Configurable Battery-Powered RF Signal Transmitter with DIP Switch Settings
This circuit appears to be a configurable encoder system with an RF transmission capability. The encoder's address pins (A0-A7) are connected to a DIP switch for setting the address, and its data output (DO) is connected to an RF transmitter, allowing the encoded signal to be wirelessly transmitted. The circuit is powered by a 9V battery, regulated to 5V by a 7805 voltage regulator, and includes a diode for polarity protection. Tactile switches are connected to the encoder's data inputs (D1-D3), and an LED with a current-limiting resistor indicates power or activity.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Encoder in STG: A project utilizing Quadrature Encoder AMT103 in a practical application
Rotary Encoder Interface with STG Adapter for Signal Processing
The circuit consists of two rotary encoders (Kalamoyi P3022-V1-CW360) connected to two STG adapters. Each encoder's VCC, OUT, and GND pins are connected to the corresponding STG adapter, facilitating signal transmission and power supply management.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Thesis: A project utilizing Quadrature Encoder AMT103 in a practical application
Arduino UNO with I2C Multiplexer and Multiple AS5600 Magnetic Encoders
This circuit consists of an Arduino UNO microcontroller interfaced with multiple AS5600 magnetic encoders through an Adafruit TCA9548A I2C multiplexer. The encoders are connected to different channels of the multiplexer, allowing the Arduino to communicate with each encoder individually over the I2C bus. The purpose of this circuit is to read multiple rotary positions simultaneously without I2C address conflicts, likely for precision control or feedback in a robotic or automation application.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of dual_encoder_v1: A project utilizing Quadrature Encoder AMT103 in a practical application
Arduino Mega and Nano-Based Dual Rotary Encoder Controller with AC-DC Power Supply
This circuit features an Arduino Mega 2560 and two Arduino Nano microcontrollers interfacing with two rotary encoders for input. The system is powered by an AC-DC PSU board converting 220V AC to 5V DC, and the microcontrollers communicate with each other via serial connections. The setup is designed for reading rotary encoder inputs and potentially processing or transmitting the data.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Robotics and automation systems
  • CNC machines and 3D printers
  • Motor control and feedback systems
  • Industrial equipment requiring precise positioning
  • Servo motor feedback

Technical Specifications

Key Technical Details

Parameter Value
Manufacturer Part ID AMT103
Resolution Configurable: 48 to 2048 pulses per revolution (PPR)
Output Signal Type Quadrature (A and B channels)
Supply Voltage 4.5 V to 5.5 V
Current Consumption 16 mA (typical)
Operating Temperature -40°C to +100°C
Maximum Shaft Speed 10,000 RPM
Output Voltage Levels TTL-compatible
Mounting Options Modular, with multiple shaft adapters

Pin Configuration and Descriptions

The AMT103 has a 5-pin interface for power and signal output. The pinout is as follows:

Pin Number Name Description
1 VCC Power supply input (4.5 V to 5.5 V)
2 GND Ground
3 A Quadrature signal A (speed and direction)
4 B Quadrature signal B (90° phase-shifted from A)
5 Index Optional index pulse (1 pulse per revolution)

Usage Instructions

How to Use the AMT103 in a Circuit

  1. Power Supply: Connect the VCC pin to a regulated 5V power source and the GND pin to the ground of your circuit.
  2. Signal Connections:
    • Connect the A and B output pins to the input pins of a microcontroller or motor driver that supports quadrature decoding.
    • Optionally, connect the Index pin if your application requires a reference pulse for each revolution.
  3. Mounting: Secure the encoder to the motor shaft using the provided mounting hardware and shaft adapters. Ensure proper alignment to avoid signal errors.
  4. Resolution Configuration: Use the included configuration tool or DIP switches (if applicable) to set the desired resolution (PPR).

Important Considerations and Best Practices

  • Signal Decoding: Ensure your microcontroller or motor driver can interpret quadrature signals. Many microcontrollers, such as the Arduino UNO, have libraries or hardware support for quadrature decoding.
  • Noise Filtering: Use pull-up resistors or capacitors to filter noise on the signal lines if necessary.
  • Alignment: Properly align the encoder with the motor shaft to prevent wobbling or misalignment, which can cause inaccurate readings.
  • Speed Limit: Do not exceed the maximum shaft speed of 10,000 RPM to avoid signal degradation.

Example: Connecting the AMT103 to an Arduino UNO

Below is an example of how to connect and read the AMT103 signals using an Arduino UNO:

// Example code to read quadrature encoder signals from the AMT103
// Connect A to pin 2, B to pin 3 on the Arduino UNO

volatile int encoderPosition = 0; // Variable to store encoder position
int lastEncoded = 0;              // Variable to store the last encoder state

void setup() {
  pinMode(2, INPUT_PULLUP); // Set pin 2 (A) as input with pull-up resistor
  pinMode(3, INPUT_PULLUP); // Set pin 3 (B) as input with pull-up resistor

  // Attach interrupts to handle encoder signals
  attachInterrupt(digitalPinToInterrupt(2), updateEncoder, CHANGE);
  attachInterrupt(digitalPinToInterrupt(3), updateEncoder, CHANGE);

  Serial.begin(9600); // Initialize serial communication
}

void loop() {
  // Print the current encoder position
  Serial.println(encoderPosition);
  delay(100); // Delay for readability
}

void updateEncoder() {
  // Read the current state of A and B
  int MSB = digitalRead(2); // Most significant bit (A)
  int LSB = digitalRead(3); // Least significant bit (B)

  int encoded = (MSB << 1) | LSB; // Combine A and B into a single value
  int sum = (lastEncoded << 2) | encoded; // Track state changes

  // Update position based on state transitions
  if (sum == 0b1101 || sum == 0b0100 || sum == 0b0010 || sum == 0b1011) {
    encoderPosition++;
  } else if (sum == 0b1110 || sum == 0b0111 || sum == 0b0001 || sum == 0b1000) {
    encoderPosition--;
  }

  lastEncoded = encoded; // Update the last state
}

Notes:

  • Ensure the encoder is securely mounted to avoid signal errors.
  • Use a stable 5V power supply to prevent voltage fluctuations.

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Signal Output:

    • Verify the power supply voltage (4.5 V to 5.5 V).
    • Check the connections to the A, B, and GND pins.
    • Ensure the encoder is properly aligned with the motor shaft.
  2. Inaccurate Position Readings:

    • Check for misalignment or wobbling of the encoder.
    • Ensure the resolution (PPR) is correctly configured for your application.
    • Add pull-up resistors or capacitors to filter noise on the signal lines.
  3. Signal Noise or Interference:

    • Use shielded cables for signal lines.
    • Keep the encoder wires away from high-power or noisy components.
  4. Microcontroller Not Detecting Signals:

    • Verify that the microcontroller pins are configured as inputs.
    • Check the interrupt configuration if using an Arduino or similar platform.

FAQs

Q: Can the AMT103 be used with a 3.3V microcontroller?
A: Yes, the AMT103 outputs TTL-compatible signals, which are typically compatible with 3.3V logic. However, ensure the microcontroller can tolerate 5V signals or use a level shifter.

Q: How do I change the resolution (PPR)?
A: The AMT103 includes a configuration tool or DIP switches (depending on the model) to set the desired resolution. Refer to the manufacturer's manual for detailed instructions.

Q: What is the purpose of the Index pin?
A: The Index pin provides a single pulse per revolution, which can be used as a reference point for absolute positioning.

Q: Can the AMT103 handle high-speed applications?
A: Yes, the AMT103 supports shaft speeds up to 10,000 RPM, making it suitable for most high-speed applications.