Pololu Zumo

Out of all the black friday sales, Pololu is my favorite. They usually offer one or two items at a good deal…but more importantly it’s something that I’m interested in. This year they are offering a nearly 40% discount on their new Zumo which is an off the shelf mini-sumo class robot that docks to an Arduino. It does not come with sensors, so expect to put up some additional cash for sensors. The only really quirky aspect of the Zumo is the shield mates to the Arduino when it is upside down.

Finishing the pump controller

It’s been a busy summer. Next weekend I’m travelling down to the cabin. I keep telling myself it would be really nice to get the pump controller working. I spent some this weekend ironing out a few bugs–and creaking a mock to test it.

Mostly battling this stupid SSR. While the label says it takes 3VDC as control, I’ve found it takes at least 5 and better 6 volts to adequately turn on. At first I thought I burnt out the FloJet pump, but it was the SSR not fully triggering (only at a lower level).

Tonight I fixed the hysteresis feature (millis() is my friend). There is more work to do to finish out a feature features: (1) the manual overide switch (2) add a menu item to set the hysteresis time (3) test!

Arduino based water pressure controller

I started playing around with the idea of using an Arduino based water pressure controller because of fears of the common and ubiquitous Square D pressure switch failing. There are many accounts of how these switches fail after only a few years. If you are switching DC voltages, then they fail faster.

The primary goal of this project:

  • Use a variable pressure sensor, not a switch with a longer lifetime
  • Provide over heating protection via a remote temperature sensor
  • Use a float switch to detect when the resevoir tank is empty

I’ve started making some headway on this. I have an LCD displaying status, and I picked up two Sensata 67CP sensors on ebay. These Sensata sensors are probably for a hydraulic application, my friend John thinks. The smaller threading is 5/16-24. I purchased a brass PEX end cap, drilled, and tapped it for this sensor. The output at 0psi (sea level) hovers about 1.3 volts and a regression curve shows it to be linear to about 60psi.

I have a DC Fotek SSR that I’m using for pump control. I’m driving the SSR from a PWM port on timer1. I’ve changed the prescalar constant to something lower that the Fotek can cleanly switch. I found out the hard way that using a digital port on timer0 messes up the serial output to the LCD.

DSC02251

DSC02252

DSC02253

Model7 code now on github

I decided to put the code for this robotics journey on GitHub. Not really because I care to share it, but because I need a good way to bounce the code across two development machines onto the BeagleBone. Git is very easy to get working on Angstrom, subversion is not.

GitHub

Otherwise, it’s been a productive day. I wrote a python class to control the RoboClaw. I’m now sitting down to flush out some Arduino Mega stuff.

Finished the greenhouse

I finished my greenhouse this weekend. I put a second layer of poly siding up to create a dead-air insulation space. The SLA battery that powered my Arduino driven environmental monitor appears dead. The Oregon winter did not provide enough light to keep the battery topped off. I have resorted to running an extension cable to use an AC adaptor.

New adventures: model #7

I’ve started a new, more ambitious robotics project. This robot is targeted for outdoor use in semi-controlled settings, but with much larger range. I’ve been conceptualizing this for about six months now.

The goal is to build a platform that:

  • can be used outside on pavement
  • provides a wide array of sensors to navigate complex environments
  • has enough computation power to play with OpenCV
  • can be internet connected for rapid development (aka BeagleBone, wifi, and Python)

Using this platform I would like to play with:

  • Outdoor navigation and obstacle avoidance
  • OpenCV
  • GPS and pre-planning algorithms
  • “mission control” software
  • infrastructure management

In the near term it will be built upon:

  • Arduino Mega
  • BeagleBone
  • RoboClaw for motor control
  • Pololu 37D motors with encoders
  • LS20031 GPS
  • CH robotics UM6 IMU
  • Adafruit TTL Camera
  • HC-SR04 Ultrasound sensors
  • IOGear GWU627 for wifi

In the longer term:

  • XBee Pro for long-range “missions”
  • Solar panel charging
  • “measurementation” sensor packages

DSC01761

DSC01760

blinkm

Got a RGB led: blinkm. These are cool. The kids liked them. Can’t imagine buying more than one because of the price.

Quality time with the Byvac BV4213

I found BV4213 on ebay back in early January. The 4WD dfrobot chasis has four discrete motors. All the commonly available Arduino motor shields only support two channels. The BV4213 is a solution to this. Each board is about 2.5cm square; it provides full PWM and directional motor control to two motors per board. You communicate with it using I2C. Using two of these boards, I have discrete control over all four motors and free up four pins on the primary Arudino (now a Mega…so it does not matter that much.)

A few days ago I finally got the test command on the BV4213 to return a test signal. It’s alive! Today I started writing direction and PWM commands to it. I have not yet figured out the behavior of PWM when you change its value. It seems to lag a bit. I’ll post some code when I get it cleaned up.

A few things while on vacation

I’ve got a four day weekend. Shaking out some new hardware including:

  • Arduino Mega board
  • Figuring out how to use xbee shield
  • Took delivery of an Argent APRS shield
  • ByVac BV4213 I2C motor controller

2WD dfrobot

Build log: tonight I soldered in 10nf disc caps on every motor: four in the 4WD dfrobot and two in the 2WD version.

I also assembled a Sharp IR distance sensor on an EXI servo from HobbyPartz.com. The EXI is maybe 1mm too wide to fit in the 2WD dfrobot hole. I think this may be because of the powder coating.