Selecting an H-Bridge Motor Controller

When I started my Tote-m robotics project I had planned on building simple H-bridge motor controllers myself.  The basic circuit is rather simple – four FET transistors connected in an “H” configuration with the motor between them (see here for additional details).  However the bridge is just the tip of the iceberg – I would also need a microcontroller to generate a PWM signal (Pulse Width Modulation) to control the motor’s speed and direction.  Additional features such as regenerative braking add still more complexity.

Given this realization I set out to determine if a commercial motor controller  combining a microcontroller and bridge exists within a reasonable price range.  After scouring the web I finally settled on four candidates: Continue reading →

Intelligent Motor Subsystem Interface Specification

intelligentMotorSubsystemConcept Overview

From an architecture perspective the Transport Robot is envisioned as a “system of systems” – the robot’s central computer is connected to its various subsystems via a “central nervous system” USB network.  The central computer sends commands to the various subsystems and then later receives acknowledgement that the commands have either been completed or aborted.

The robot’s locomotion platform is comprised of four such subsystems – one subsystem per each leg of the robot.  Instead of the central computer directly controlling the motors of each leg, microcontrollers embedded within each leg translate high-level “move” commands into the low-level signals required to drive each leg’s motor.  For example, suppose the robot wants to move forward one meter.  After determining that the most efficient path is to simply move forward the required distance, the robot’s central computer sends commands to each leg commanding them to move forward the one meter distance.  Each leg’s microcontroller then computes the number of rotations required of the motor given the wheel’s physical properties pre-programmed into the controller.  The controller pulses the motor enough times to cover the required distance, then sends an acknowledgement to the host computer indicating that the command has been accomplished. Continue reading →

Sizing D.C. Drive Motors

motorWhen building a mobile robot selecting the drive motors is one of the most important decisions you will make.  This article covers some of the basic physics and rules of thumb used to select DC drive motors for mobile robots. Before you can select your motors you’ll need to know some characteristics of the robot you want to build.  How much will it weight?  How fast will it move?  Once you have an idea of what your robot will look like, the equations in this article will give you some guidelines you can use for determining the power required from the robot’s motor(s).  These power requirements will determine 1) how fast the robot can accelerate from rest to full speed, and 2) how fast the robot can travel up an incline (if at all). Continue reading →