Tech Thursday

Encoder support starts with SuperDroid Robots

There is a lot to know about encoders along with how and when to use them.  This post is intended to summarize all the past posts we have made the involve encoders and shed some more information/support on the topic.

Motors with Encoders

Most of our robot kits allow you to select the motors you want to used to drive the robot. The options will include motors with encoders. Encoders are very useful if you are planning on making your robot semi-autonomous or fully autonomous. Our motors use hall-effect encoders, which require some special consideration. Hall effect encoders require pull up resistors. We have made the process of pulling up the encoders very easy with our encoder hookup kits. You will need to choose the hookup kit that matches the motor controller in the robot. With 4WD or 6WD motors you typically only need to hook up one motor per side to read the encoders unless you are planning to used multiple motor controllers. So the motor power is run in parallel for the right side and the left side and just hook up the front motor encoders.

Counting the Pulses

After the encoders have been pulled up the next decision is what to do with the encoder signal. There are multiple ways to do this. One method is to read the encoders into your computer or micro controller after the signal has been pulled up. If you are using a computer or micro controller directly, you will need to put the encoder pulses on interrupt lines to ensure you don’t miss any pulses. You will also need to make sure your micro controller or computer are fast enough to catch all the pulses There are two encoders per motor (an A and B channel), this allows quadrature counting and the direction of the motor and be determined. All this is rather involved. We have made the process easier with our hookup kits. Each motor controller requires specific parts to read the encoders. We include all the necessary hardware in the hookup kit. For example when selecting the RoboteQ 2x20A motor controller select the RoboteQ Dual Encoder Hookup Kit and everything you need to run encoders is included.

Encoder Support

Components for Reading Encoders

Controlling the Motors

If you want to add speed control to your motors or set the robot to run a set distance and stop, you can do that by reading the pulses as discussed above and then command the motors with the appropriate action. This is sometimes not as responsive as you may like depending on the speed of your computer or micro controller. The other method is to let the motor controller do all the work for you. This requires a fair amount of setup with the motors controllers. The motor controllers that have encoder support build in will state it in the item description.

Encoder Support

Motor controllers for encoder control

  • Sabertooth Dual 12A Motor Driver: Dimension Engineering Sabertooth 2X12 is one of the most versatile, efficient and easy to use dual motor drivers on the market. It is suitable for medium powered robots – up to 30lbs in combat or 100lbs for general purpose robotics.
  • Sabertooth Dual 25A Motor Driver: The Sabertooth 2X25 is one of the most versatile, efficient and easy to use dual motor drivers on the market. It is suitable for medium powered robots – up to 30lbs in combat or 100lbs for general purpose robotics.
  • Sabertooth Dual 32A Motor Driver: The Sabertooth 2X32 is one of the most versatile, efficient and easy to use dual motor drivers on the market. It is suitable for medium powered robots – up to 30lbs in combat or 100lbs for general purpose robotics.
  • Sabertooth Dual 60A motor driver: Dimension Engineering Sabertooth 2X60 is one of the most versatile, efficient and easy to use dual motor drivers on the market. It is suitable for high powered robots – up to 120lbs in combat or up to 1000lbs for general purpose robotics.
  • RoboteQ SDC2160 – 2x20A 60V Motor Controller with Encoder Input: Roboteq’s SDC2160 (60V) controller is designed to convert commands received from an RC radio, Analog Joystick, wireless modem, PC (RS232 or USB) or microcomputer into high voltage and high current output for driving one or two DC motors.
  • RoboteQ MDC2460 – 2x60A 60V Motor Controller with Encoder Input: Roboteq’s MDC2460 (2x60A 60V) controller is designed to convert commands received from an RC radio, Analog Joystick, wireless modem, PC (RS232 or USB) or microcomputer into high voltage and high current output for driving one or two DC motors. To connect the encoders signal to the Roboteq use the 6-pin Molex Microfit 3.0.
  • RoboteQ XDC2460 – 2x150A 60V Motor Controller with Encoder Input: Roboteq’s XDC2460 (2x150A 60V) controller is designed to convert commands received from an RC radio, Analog Joystick, wireless modem, PC (RS232 or USB) or microcomputer into high voltage and high current output for driving one or two DC motors. To connect the encoders signal to the Roboteq use the 6-pin Molex Microfit 3.0.
  • RoboClaw 2x7A Motor Controller: The RoboClaw 2x7A is an intelligent motor controller designed to control two brushed DC motors at 7.5 Amps continuous with up to 15 Amps peak per channel. It can be controlled from USB, RC radio, PWM, TTL serial, analog and microcontrollers such as an Arduino or Raspberry Pi.
  • RoboClaw 2x15A Motor Controller: The RoboClaw 2x15A is an intelligent motor controller designed to control two brushed DC motors at 15 Amps continuous with up to 30 Amps peak per channel. It can be controlled from USB, RC radio, PWM, TTL serial, analog and microcontrollers such as an Arduino or Raspberry Pi.
  • RoboClaw 2x30A Motor Controller: The RoboClaw 2x30A is an intelligent motor controller designed to control two brushed DC motors at 30 Amps continuous with up to 60 Amps peak per channel. It can be controlled from USB, RC radio, PWM, TTL serial, analog and microcontrollers such as an Arduino or Raspberry Pi.
  • RoboClaw 2x60A Motor Controller: The RoboClaw 2x60A is an intelligent motor controller designed to control two brushed DC motors at 60 Amps continuous with up to 120 Amps peak per channel. It can be controlled from USB, RC radio, PWM, TTL serial, analog and microcontrollers such as an Arduino or Raspberry Pi.

Additional Posts and Encoder Support

0 Comments

Leave a reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

©2024 SDRobots.com | All rights reserved.

Log in with your credentials

or    

Forgot your details?

Create Account