Showing posts with label _projectABE. Show all posts
Showing posts with label _projectABE. Show all posts

Saturday, March 31, 2012

ABE Accessibility Mod: Continuous Drive Servo Configuration Windows



["What the hell happened to my feet???]

What’s the deal with drilling holes in your drive servos?

Continuous rotation servos are made by taking normal servos and replacing the feedback pot with a static pot and/or some extra resistors. In essence, when you tell a regular servo motor to move itself to a specific angle, here’s what happens:
  1. It reads its current angle
  2. It sets the direction of the motor in such a way that the difference between the current angle and the one that you’ve requested will be reduced
  3. If the difference is large, the speed of the motor will be set high. If small, it will be set low
[pre-mod: notice the pot onboard and where it should line up to roughly once reinserted]
In a continuous rotation servo:
  1. It reads its current angle the angle given by the static pot (usually inside the enclosure). The static pot is usually set such that it reports back about 90°, which is the zero-point of most standard servos.
  2. As above
  3. As above
[a completed accessibility mod - I see a pot dial!]

So, why are you drilling holes again?

Well, in the not-so-wonderfully-made servos, there is a tendency for the servos to (over time or perhaps with vibration/delivery) have the pot move or the impedence in some way change itself. That means that when you want a continuous rotation servo to STOP, it will often be just moving instead.

Now, this can be fixed by telling the servo to go to the 90° angle and adjusting the pot until the servo stops moving. Doing this is a finnicky operation as the four screws that hold a servo together usually release all the gears, the circuit board and the motor at once. Getting it back together is a pain in my arse.

SO! One simple hole later and we have a feature that some servo makers are charging extra for: Accessible tuning pot. Done!

Tuesday, March 20, 2012

ABE Signage

Randomly spotted this* whilst out and about.


It's just begging to be defaced. Not as clever as "rave outside the guard's compartment naked with a blue light", but meh. :)

*Those of you who know me well enough know that I rave about CamScanner+ for iPhone. This was a sign on a wall that I took a photograph of on an angle. App love!

Wednesday, March 7, 2012

First look at WRPC with ABE



This is a pre-pre-pre alpha look at the basics of communication between WRPC and ABE. Spot the bug at the end of the clip :)

Monday, March 5, 2012

Dual Battery Monitor Adapter

This is a design I sketched up tonight for a compact in-line dual battery monitor adapter for Arduino. Those of you who have looked into battery monitoring for Arduino will know that the maximum voltage that the Arduino's ADC pins can handle is 5v.

Here's a simple design (5 solder points) that will take your servo battery (~6v) and your Arduino battery (~9v) and reduce the voltage from them to safely measurable levels. I wouldn't push this design past measuring two 9v sources as it gets a bit close to the maximum.


Assuming you are using the voltages specified, the power usage is 58.5 microWatts. If you use 10M resistors instead, you can reduce that by a factor of 10 (und so weiter...).

I will be making one of these for ABE and a half-one for the WRPC so that they can monitor their own battery levels.

Monday, February 6, 2012

ABE

In the beginning (of 2012), there was ABE…

Earlier this year, I brought to life a small, cutish robotic creation called ABE. ABE stands for Autonomous Base Explorer (or something like that). It’s a working title. Here are some pictures of ABE with indications of what his parts are and what he (yes, he) can do. I’ll add more detail later (perhaps).

Chips & Boards Servo Motors Sensors & Outputs Power & Stability

Robot Definition Statement

A mobile, terrestrial, wirelessly programmable and interactive, human-interactive expandable robot prototype with multiple sensory inputs and feedback devices, capable of self-navigation and autonomous task completion. (bloated, I know)

Current Working Title

ABE = Autonomous Base/Building Explorer

What Can He Do?

ABE can do quite a number of things. Based on the Arduino UNO, he has a highly flexible programmable microprocessor. Apart from that, there’s the other sensors and capabilities. Here’s a short list:

He Can…

  1. Measure distance from himself to an object in centimeters using sonar
    • Measurements are in centimeters
    • The sonar sensor (SRF05) is mounted in the pan and tilt sensor array
    • The beam pattern is shown here:
      Beam Pattern
    • Sensor supplier’s information
  2. Measure the temperature in a 90 degree field of view
    • Operating ambient temperature is between -40 and 85 degrees Celcius
    • Measurement temperatures range from -70 to 382.2 degrees Celcius
    • Measurement resolution is 0.02 degrees Celcius
    • Measurement accuracy is +/- 0.5 degrees Celcius at Room Temperature
    • It is immune to IR & Sunlight
    • The Infrared Temperature sensor is mounted in the pan and tilt sensor array
    • Sensor Datasheet
  3. Detect obstacles using front left and right mounted IR proximity sensors
    • Measurements are only the existence or not of an obstacle
    • Sensors are angled to allow approximately 7cm forward detection and enough sidewards detection to allow approximately 1-2cm clearence for the wheels.
  4. Pan and tilt the sonar and temperature sensor
    • The pan range is approximately 180 degrees, with 90 degrees being full forward
    • The tilt range is less than 180 degrees, with 45 degrees being level, 120 degrees being up and rear facing and a minimum tilt of about 10-20 degrees
  5. Indicate the direction of sensing for sonar and temperature using a low power laser
    • The laser is mounted on the pan and tilt array to allow him to indicate the direction of the sonar and temperature sensor
    • The laser can be turned on and off
  6. Play simple tunes using the front-mounted piezo
    • Currently, he plays Edna’s theme from The Day Of The Tentacle by LucasArts
    • Of course, this is most useful for human feedback
  7. Sense knock patterns on the front of the bot using the piezo
    • This is untested but completely plausible (it would require the piezo also be connected to an analog input as it is not currently so connected)
  8. Convey information to humans using a green 7-segment display
    • Currently, this is used to show the current mode of the robot, it being programmed for multiple modes of use. Future plans are to have a debounced microswitch mode button on the bot itself
  9. Move itself around using two continuous rotation servos and a third caster contact point
    • Wheels are rubber
    • Caster is ¾" plastic ballbearing caster, located at the bot’s rear
  10. Operate without being connected to any non-mobile power source
    • On-board batteries are 9v and 6v (latter for the servo power)
  11. Communicate with a computer or other electronic device by means of a Wixel wireless serial link
    • Presently, this is used to provide feedback to the developer and to provide instruction to the robot
    • Future plans are to change the interface to use PHP and serproxy instead of the standard Arduino IDE serial monitor
  12. Be completely reprogrammed at any time over-the-air using the Wixel wireless serial link
    • This is limited by the range of the pair of Wixels, which is about 12 meters
    • The Wixels themselves must first be programmed when connected locally (only needed to be done once)
    • Programming may be battery intensive