Let's Make Robots!

T.W.E.R.P. - test platform for robot hardware & software.

Wanders around sensing obstacles with ultrasonic & IR sensors.

T.W.E.R.P. - The Wandering Electronic Robotics Platform was built to test sensors and code for future projects . The platform is the bottom of a RAD 1.0 robot (I have another complete so I chopped this one up) that has a high/low speed switch. 6v alarm battery powers the drive motors, 4 AA rechargeables in a case power the Arduino "brain". SR04 ultrasonic distance sensor sits on a small actuator for obstacle avoidance and to determine a clear path. IR proximity sensor mounted low like a bumpswitch for small obstacles not picked up by ultrasonics. The next project will be W.A.S.P - Wandering Automated Security Platform which will be a modified Omnibot 2000, I plan to paint it, make both arms moveable, possibly controlled over Internet, with video camera and speech. This will be a security robot to guard the house while I'm away.


6v SLA drive motor battery, 4AA rechargeable battery pack for Arduino, L298N based motor controller shield & sensor shield.

*** UPDATE *** I modified the code to keep from getting stuck in corners. Now the LookAround() function sweeps right & left 180 degrees in 40 degree increments then maps the angle to a variable for delay time when turning. I tried to approximate the max distance angle with the actual turn angle and it looks close (I'm no math wizard but I'm sure there's an equation for that). So while moving forward it does a quick right/left look when an obstacle is detected which is fine for normal navigation but in a more complex environment, like a corner, it does a wider search for the optimal path.


Successfully integrated remote control by adding a wireless PS2 controller. No video at this time but this is not a quality upgrade. Maybe it's because of using a cheap knockoff controller purchased through Ebay. In researching on the 'Net it seems there is varying success. It sometimes gets a little erratic thinking it got a joystick signal when it hasn't even though I compensated by adding a dead zone around the joystick center as it's very touchy. The buttons seem to respond as they should however I'm only using the L1 + Left Stick for direction and R1 + Right Stick for servo sweep. This code will be integrated into my BigBot project to drive it around and pan/tilt a camera. Left Stick controls forward, reverse, left turn and right turn. Right Stick (since TWERP only has an ultrasonic sensor on a servo I'm only using the x-axis) for left/right sweep. The PS2 Shield from Cytron looked good but the price more than doubled with shipping added so I went with PS2 Connector and PS2 Wireless Controller Receiver Level Shifter from http://www.robotshop.com/ (I was already getting an order together and they were really cheap). I probably should have bought the complete setup from them but I had already ordered the controller + receiver on Ebay and was just looking for the connector.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

I decided to check out remote control by wireless PS2 controller. I want to use one for controlling my BigBot project and a few smaller projects that are still in the dream about stage. It works but not as clean as I'd like although it could be because it's a cheap knockoff and not a real Sony or quality compatible controller. I just like the idea of using a remote that people (kids) are familiar with so with the help of my grandson I'll try to match how it works in video games. So far the left joystick controls movement direction and the right joystick controls a camera to look around.

I'm using a PS2 controller as part of my robot remote project. Before purchasing a real Sony controller, I tried using a clone from SparkFun. The clone only had 5-bits of resolution on their joysticks. The 5-bits were shifted over by three so the output was the same range as a real controller but the joystick values would increment by intervals of 8 units instead a single units.

You would likely find a Sony controller provides better control than the clone you're using.

Unfortunately genuine PS2 controllers are more expensive than they used to be.

One thing I like about the PS2 controller is most of the buttons are pressure sensitive. I haven't found an application where I need this feature but I'm determined to come up with an application which uses the analog nature of the buttons.

I noticed they go to the extreme pretty quick, it's hard to get small increments out of them. At first I mapped the joystick position to the servo but it basically went straight to the max in either direction plus it centered when I let up. I decided to have it increment by 1 whenever the joystick exceeded the dead zone. That way I can leave it where it is until I decide to move it again. Still, it jumps pretty quickly so it's hard to zero in on a specific point.

I haven't bothered with the button pressure but I did notice (I'm not a gamer) the joysticks are buttons and I have a use for reading them to center the servo. Too bad it's not in the libraries. For now I mapped the X button to center the servo.

***EDIT: I just saw the link to and then watched the video. : Looks like most of the noise in this one is just the gearing?

(IGNORE the rest of this...; my aplogizes i was going off of previous bots id seen on the Rad base...)***

Those bases look wonderfull. Ive been looking at rad for a long time. I've been wondering though; has anyone experimented with any ways to make the motors quiter or to muffle them? I'd prefer to create a relatively quiet base.. It looks like ill have to build one with over powered motors myself and find some way to get around the noise created by pwm on a microcontroller.. Maybe a proper motor controller?


Anyways not trying to hijack the thread. Just curious. Very nice 'bot.

I am curious, would having the servo turn farther help drive the machine in fewer corners?

I originally had it turn more each way but it was making drastic changes so I'm trying to narrow down the best option. Too much and it can't navigate a doorway. It's all a learning experience, that's the purpose of the platform. When I find what works best it will all go into the Omnibot2000. Have you done something like this? What have you found to be the best range?

I have no clue on range. You might look to see what the beam width of your particular sensors are. That should give you a decent idea as to how far to each side to look.

I updated the code for a wider range when a quick right/left isn't enough. It sweeps 189 degrees in 40 degree increments. I'll post a new video when my son brings my camera back. :-)

Those make a great base. They can handle a lot more weight without stalling than about any other Toy base. There's an eBay shop based in Missouri that has several bases only for sale at any given time.