Hacking the OWI535 Robot ARM Using RobotSee, the TI Launchpad, and the EMGRobotics Six Pack Booster

Hacking the OWI535 Robot ARM Using RobotSee, the TI Launchpad,

and the EMGRobotics Six Pack Booster

by Eric Gregori (www.EMGRobotics.com)

 

You can download all the firmware and  RobotSee code used in this article from here:

www.robotsee.com/Launchpad_SixPack_Booster/SIXPack_OWI535_RobotSee_...

 

The OWI535 robot ARM is an educational toy manufactured by OWI.  The ARM has four degrees of freedom and a gripper.  All four joints and the gripper are controlled by small three volt DC motors.

http://www.robotshop.com/owi-535-robotic-arm-edge-3.html

 

As shown above, normally the robot arm is controlled by a manual wired controller.  Each DC motor has two wires coming from it, that plug into an adapter board that then connects to a manual controller.  Since both wires from the motor are available on (0.1" headers), hacking the arm is incredibly easy.


Programming/Controlling the ARM Using RobotSee

 

RobotSee is a free programming language and part of the Robot Vision Toolkit.  RobotSee is as easy as BASIC, with the power of C.  Using RobotSee you can write simple graphics based programs for controlling anything over a serial port.    The above image shows the RobotSee tool with some RobotSee code in the upper left corner and the graphic application controlling the arm in the lower corner.  Using RobotSee you can easily customize your graphics application to look however you want.


 

A simple Graphics Application Used to Control the Arm via the TI Launchpad and Six Pack

 

The above graphic application allows the user to control four of the five motors by simply clicking on the up or down arrows.  Click the arrow start the motor, clicking the red box stops the motor.  This graphic application was written in 30 minutes using RobotSee.  

 

EMGRobotics SixPack Booster plugged into TI Launchpad

 

The SixPack Booster from EMGRobotics plugs into the TI Launchpad and can be used to control up to six small DC motors.  The TI Launchpad is a $4.30 development system similar to the Arduino.   The TI Launchpad has made a big mark in the hobbyist/DIY industry by being a very low cost, high quality development board.  The TI Launchpad is supported by a large Wiki, and a huge amount of projects.  The TI Launchpad includes a built-in USB to serial converter.  This creates a virtual COM port on your PC whenever the TI Launchpad is plugged in.

 

 

The Six Pack Booster plugs into the TI Launchpad and up to six low power DC motors.  The direction of each DC motor can be controlled independently, using two signals each from the Launchpad.  The motor drivers are FAN8200's.  Each FAN8200 can control two DC motors.  The Six Pack is ideal for use with 3 volt motors.  The FAN8200's can be used with 6 volt motors but that is close to the limit of the FAN8200's capabilities.  The three volt motors used in the OWI535 ARM are ideal for the Six Pack board.

Click Here to Learn more about the EMGRobotics Six Pack

 

The firmware for the EMGRobotics Six Pack is free and Open Source.  You can modify it to do whatever you would like.  You can add digital or analog sensors, you can add buttons, you can even add more TI Launchpads using I2C.  robotSee is also free, and can be downloaded from here: www.buildsmartrobots.com.  The RX and TX lines on the launchpad are available.  Simply remove the USB to serial RX/TX jumpers and you can control the robot arm from any 3.3 volt TTL controller (add a resistor divider yo use with Arduino).

 

Control your OWI535 using any software that can send character through the serial port.  You can control the arm using C, C++, .NET, C# or Python.  You can even manually control the arm using hyperterminal.

  

Where to get the parts:

 

The OWI535 is available from: 

http://www.robotshop.com/owi-535-robotic-arm-edge-3.html

 

The TI Launchpad is available from: 

http://e2e.ti.com/group/msp430launchpad/w/default.aspx

 

The Six Pack is available from: 

http://buildsmartrobots.ning.com/group/emgrobotics-six-pack-ti-laun...

 

You can download the Robot Vision Toolkit with RobotSee from:

http://www.robotsee.com/RobotVisionToolkit.zip


To control all five(5) motors you will need to get a MSP430G2553.  You can order one from TI (free sample) or direct from Digikey.

 

 

You can download all the firmware and  RobotSee code used in this article from here:

www.robotsee.com/Launchpad_SixPack_Booster/SIXPack_OWI535_RobotSee_...

 

 


 Any question, check out the OWI535 group on www.buildsmartrobots.com (http://buildsmartrobots.ning.com/group/owi535).


Views: 7090

Tags: arm, control, dc, launchpad, motor, owi535, pack, robot, robotsee, six, More…ti, toolkit, vision

Comment by Jeremy Darling on November 18, 2011 at 10:44am

I have to ask the dumb questions yet again, but do you have a link to RobotSee?  Google turns up a TON of links about robot vision projects, but nothing that resembles a programming language.

Comment by eric gregori on November 18, 2011 at 11:11am

Good point,  the link is at the top of the BuildSmartRobots website, but it was not clear in the article.

I updated the article to include the link.

Here is the link:   http://www.robotsee.com/RobotVisionToolkit.zip

 

I also clarified that RobotSee is part of the Robot Vision Toolkit.

 

I just got the six motor (MSP430G2553) firmware done last night.  I will append the article to include information about the new firmware this weekend.

 

Comment by Jeremy Darling on November 18, 2011 at 11:31am

Awesome, thanks for the link/download.  I'll be taking a look as I think this is going to be a xmas preset setup for my 9 year old who is really interested in him and dad doing something like this.

Comment by eric gregori on November 20, 2011 at 1:34am

Comment by Christopher Lyons on December 6, 2011 at 1:08pm

Has anyone played with adding feedback control to the arm motors?  I use these arms to teach intro robotics classes (with my own curriculum) and have had it in my mind for the last year to find a way to add a feedback mechanism so they could be used for more automatic control.  I've had the arms apart many times and there should be enough room to do some part mounting on the motors.  The other option would be to add something to the external joints to provide feedback.  Has anyone started to dig into this at all?  I'm willing to help ....

There is a great set of small rotary encoder chips by austriamicrosystems that have chip-based hall-effect sensors that provide encoder information when placed near a magnet attached to the shaft.  These are really small & cheap and provide interfacing in several formats (i.e. 1-wire PWM, 2-wire CLK,DIO, & 3-wire CLK,DIO,CS.  Seems like control would be fairly simple with the MSP430.  Standard bit-depth is 8-bits which would provide approx. 1.4 degrees of resolution.  They are available at up to 12-bits too.  I'm thinking absolute encoding would be the best, but the chips are in incremental too.  Some will work directly at 3.3V, to make the MSP430 interfacing that much easier.  Checkout the AS5040.  I've ordered a few samples.

Let me know what you think.

Comment by Jeremy Darling on December 6, 2011 at 2:42pm

I haven't got to that point yet as I've been arguing with the dealer I purchased the arm from about what they advertised and what I received (long story), but my plans were rubber wheels mounted to pot's.  Feed this back into a I2C or SPI A->D and bobs your uncle (hopefully).  I'm also looking at the options regarding I2C or SPI interfaces for the motor controllers to open up some ports.

Then again I'm dealing with a 5 year old and a 9 year old so I need more "slippage" potential than others might :)

 - Jeremy

Comment by Christopher Lyons on December 6, 2011 at 3:07pm

The AS5040 chip is $8 from Newark (free on sample from the manufacturer) and has a host of available options.  It also allows you to daisy-chain them together, so you can talk to a whole slew with only about 3-bits I/O.  Not exactly sure of all the details yet (HW or SW), but I have some coming and will start working on it next week.  I'm really looking at this as a teaching tool for my students too, since encoder feedback is such an important component of automatic control.  Giving them an introduction to encoder options & hall-effect interfacing should be very good.  This will be real working experience too, since this approach can be used in so many ways and is current.  Yeah, we all have the "slippage factor", in one form or another, but my plan is to have something ready by 1/15/2012.  (keeping fingers & toes Xed!!)

I'm teaching an intermediate class with the OWI arms at the end of January and need to provide a programming intro to get them started with automated control.  I typically do this with the OWI USB control board (and/or custom LEGO arms) which gives you the ability to create simple multi-step programs, but the lack of feedback really holds it back.  This should work well.  I'll try to keep you posted.

Comment by eric gregori on January 23, 2013 at 11:06pm

Connection diagram for Revision V4 of the SixPack board.

Comment

You need to be a member of buildsmartrobots to add comments!

EMGRobotics

© 2014   Created by eric gregori.

Badges  |  Report an Issue  |  Terms of Service