Mixing RC Signals for Robot Drive Control

image

Mixing RC transmitter signals for robot drive control is easy with out BM011 Dual Motor Quad Servo Controller.  This is a design we’ve been working on for a bit, and the test software and microcontroller firmware are ready to release.  This is a completely open source hardware design.  The BM011 can be used to control two DC motors, can output 4 0.5mS-2.5mS pulses for driving RC servos, and read up to 4 servo channels.  Files should be available on our web site within a couple of weeks.

[Read more…]

Arduino clone controlled robot chassis

We’ve been pretty busy around here doing contract work, so there’s not been much time for just doing fun things.  As part of the design effort going into an Arduino clone that control servos and motors independent of the Arduino Atmel part we put together an experimental robot chassis.  The chassis was designed in Sketchup and the parts were fabricated from Plexiglas by Ponoko.

[Read more…]

Arduino Compatible Robot Controller 2

image

We’re getting pretty close to finishing up the Arduino compatible robot controller design.  We’ve completed the design, re-design, prototype, re-prototype, assembly, and initial testing (those “re-’s” are not always required).

[Read more…]

Arduino Motor Control

image

 

We carry a few products that can be used to implement motor control with an Arduino (or any other controller).  A recent addition is the BM001 Single H-bridge Controller.  Pictured above is the BM001 attached to a test board “Arduino shield”  I put designed.  It allows me to easily wire our breakout modules to an Arduino.  Since the breakout modules don’t have pins I used spring-loaded test points to connect the modules to the shield.  Then jumpers are used to wire from the module connections to the Arduino pins.

[Read more…]

H Bridge Control of a Motor–Low Side Switch 2

In my last post I wrote about using an N-channel MOSFET as a low side switch element.  In many H-bridge applications, the low side switch is PWM’d allowing for control over the average current / voltage applied to the load.   This is typical of robotics systems and other motion control designs.  In a motor drive application the PWM of a motor allows you to control the motor’s speed and torque.  The PWM signal is often generated by a microcontroller pin, which creates certain issues.  One substantial issue is that a microcontroller pin is not an appropriate current source for high current MOSFETs.

[Read more…]

H Bridge Control of a Motor – Low Side Switch

h-bridge

H-bridges are used in robotics applications, motion control systems, and other applications where the current to the load needs to be controlled.  The H-bridge allows you to control both the direction and amount of current to your load.   In the image above the red lines indicate the path of current through the motor.  This blog post goes into some details regarding the low side switch element.

[Read more…]

Velocity control with the Synaptron Micro

I spent a couple of days adding velocity control to our Synaptron Micro motion controller.  I should probably be more clear.  The product already has the ability to use the velocity measurement from a quadrature encoder as a feedback source.  Meaning you can operate a motor at a PID controlled velocity.  What you couldn’t do was operate as a position controller with a velocity limit applied to the movement.  Okay you could already do that too, but the methods were a little “complicated”.  The desire for a less complicated velocity control method  came about when working on the articulated robot wheel.   Laziness, the mother of invention.

For those not familiar with the Synaptron Micro the product is configured by modifying internal register settings.  For some applications, such as analog control of position, you only need to configure the device once.  For other modes such as serial control of position it is assumed you have a controller that is continuously in contact with the Synaptron Micro motion controller.

The video above shows the results of the velocity control that was added, while the remainder of this blog entry covers other methods of controlling motor speed during movement.  Here are the four ways you can now control a motor’s velocity while moving to a position…
[Read more…]

Articulated Wheel

articulated_wheel

We’re messing around with the design and control of an articulated robot wheel.  We’re not even sure at this point what the end goal is, but initially we’ll be using Synaptron Micro motion controllers to control a multi-jointed wheel system.  This first bit of hardware is just designed to test weight limits and motion profiles.  In the end it would be nice to have a walking wheeled systems.  In the end we’ll have to do some more in-depth mechanical design to handle allowed movement ranges, weight limits, and wiring requirements, but for now this setup will be fun to flail around a bit.

Round 2 Goes To The Electrons

synaptron_mega_round2

Our never-ending quest to develop a powerful but tiny motion controller for DC motors continues.  In my second hardware iteration of the Synaptron Mega design I was flummoxed, flustered, flabbergasted, and then finally forged forward.  But the electrons gave me a run for the money on this one.

[Read more…]

Proportional Motor Control In A Microcontroller

pgain

Proportional motor control is useful in many applications.  Control theory describes

proportional control as…

Pout = Kp*error( t )

Where Pout is your drive signal, Kp is your proportional gain, and error( t ) is the error signal.  Here’s an example of how this translates to a microcontroller application that isn’t using floating point numbers.

[Read more…]