Tags:
create new tag
, view all tags

SoccerBot

For the past year or so, in my spare time, I've been making some way cool remote-controlled ball-playing LEGO robots. I didn't consciously start out with ball-playing in mind as the robot's reason for moving around... but it's turned out to be pretty darn good at it none-the-less, and, well, ball-playing is a pretty good way of testing out the robot, if you don't have a cat or a dog around, anyway. (if you do... program something that chases them around... they'll love you for it!)

These are no toys. Sure, they're primarily plastic kit components, but they're far more than toys. I've been using the LEGO technics "bricks" and Mindstorm robotics kit parts (controllers, sensors, motors) to build fully functional, small-scale holonomic and omni-directional drive platforms. We're not talking industrial robots, but we are talking fully functional.

These NXT-G robots are capable of executing any number of concurrent "sequence branches" in parallel; that can be used to implement, for example, sensor monitor loops that virtually instantaneously affect the actions of a remote robot. For example, "flip the remote over and the bot stops" is a no-brainer to implement. (haven't... just know it would be) They can talk via Bluetooth and USB, they can play sampled sounds, control and/or be controlled by any connected motors and sensors, they can monitor/sample the positions of any connected motors (if you're using them as haptic inputs) and they can of course be programmed to take actions (example: affecting motor power levels) based on sampling the available sensor data, from their own sensors or from sensors on other bots which was sent to them via bluetooth. With sensors such as the following - sound, compass, gyro, accel, IR, touch, sonar, light/color - DIY clap-on/clap-off is just the tip of the iceberg.

DSC06799.JPG

DSC06769.JPG

BUDGET:

The project requires at least 3 LEGO Mindstorms robot kits and utilizes pieces from various other LEGO kits as well. So, it's not an entry level project, thus, it needs a "real robotic project" level budget. Expect to spend around a thousand dollars if you'd like to jump into a project like this, for 3 LEGO Mindstorms robotics kits, an $80 IR Soccer ball, and at least a handful of sensors at around $50/ea. The good thing is that many if not all of the components of this project can be REUSED for other projects in the future.

DSC06825.JPG DSC06978.JPG DSC06794.JPG

OVERVIEW:

SoccerBot is a 2-part robot - one part is the ergonomic hand-held "remote control", the other part is the agile controlled "robot" that zooms around (...the field, or your living room, as the case may be...), starts and stops on a dime, and accelerates in any direction without having to re-orient (turn) itself to do so. The forward claw can be opened and closed as well as swung around from left to right, so it's pretty easy to learn how to "catch the ball" using the remote.

The 'bots motion routines are under programatic control, so it was easy enough, for example, to hook up a simple PID loop that used sonar sensor readings to slow the bot down as it moved closer to the wall, and stop it before hitting things directly in front of the sensor. Yes... that sort of thing actually works, and works well, with the NXT-G platform. (asides: (a) I don't recommend running the NXT-G's with the sonar powered up (plugged in) all the time; it is not "audible" but it is definitely detectable, and (b) only one sonar module can be used in the same room at the same time... boo, esp. since I now have a handful...)

DETAILS:

COMMUNICATIONS: The "remote control" 'bot and other two NXT-G bricks that are the dual brains of the "robot" itself all talk with each other via bluetooth.

CONTROLLER: The remote control has 1 belt-hookable NXT Controller, wired to a hand-held "sensor bundle" - 3 motor inputs a user can turn, along with two touch sensors, a gyro, and an accelerometer, all tightly packed into one small hand-held bundle.

ROBOT: The "robot" (cute little thing flying around on the floor of the room) is comprised of 2 NXT Controllers, 4 on-body sensors, 4 neck-mounted sensors, 3 joint-angle-controlling motors, 2 "drive assembly" controlling motors, and 1 front-mounted-claw controlling motor.

KID-TESTING:

I try to keep my 'bots somewhat cute yet a little menacing at the same time, so kids will love them, yet respect them enough to not hurt themselves or the bots. I.e. no intentional sharp edges, but a few intentional sharp looks. smile Spot-testing has shown it's easy enough for a 5-year-old to understand and use the remote-control solutions I've programmed into these robot.

Why would you do something like this:

At first, when I was working on the holonomic drive aspects of this robot, I wasn't really consciously aware of why I might build something like that, I just wanted to build it. Building working, non-falling-apart LEGO-based robots is ongoing fun, and experimenting with the sensors, monitoring them in innovative ways and programming the control modes for the robot has been far more than just fun - - it's been really rewarding. I'm quite proud of some of the stuff I've built, and how well it works. I hope some other makers give this sort of project a try.

DSC06777.JPG


DSC06809.JPG

Topic revision: r5 - 2009.02.21 - PaulReiber
 
This site is powered by the TWiki collaboration platformCopyright © 2008-2012 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback