Friday, June 8, 2012

Scooty Brakes (and a stint through the rain)



Using your shoe as a brake is okay for testing, but the wear gets ridiculous. So, I put a few holes in the front fork to mount a plate and the plate to mount a set of brake calipers on the front wheel.

The plate mounts right on the front fork, held on by 6 4-40 screws. The plate is 1/4" steel.
The calipers I used were inexpensive bike calipers from Amazon. While I knew braking onto a plastic rim is not such a good idea, I thought it would still work okay.

Then, parts and assembly, after a particularly nasty ride in the rain back from work.
Ghetto extra waterproofing with masking tape

Still alive!

Yes, that is water on the inside on my caps.

Attaching the brake to the brake plate. Haha what clearance.
Due to the calipers blocking the screws, I had to slowly inch the parts together, screwing down half the screws, moving the caliper around, and screwing down the other half.
Derp.
And then, I got excited and forgot to take more pictures. Long story short, after some testing, I decided they were worse than failure. Not only do the brakes not work, but the brakes and rims must be mortal enemies because they destroy each other. The pads exhibit significant wear and some chunks coming off already, and this is from a nice walking speed.
Overexposed for your dark caliper viewing pleasure.
 On the rim, it seems these bits have melted on. I'm not sure which surface made them.
Can't brush this off. Its melted on.
I can't imagine can guess what would happen slowing from full speed. Rim failure and tire blowout, or I eat through the pads so much they stop applying pressure, or both.

Well, back to the CAD board. This time, I'll use one of these.
70 mm rotor band brake

Sunday, June 3, 2012

Scooty Puff Build

*Note: somehow the styles on this post crapped out and all the headers are tiny. I can't figure it out*

My first build out of real necessity (not something like, I really want a delta robot)! Scooty Puff is a brushless motor powered wonderfully fast Razor style folding scooter.

The problem:
I needed a way to get around in Dallas, specifically from where I live to work and back.

The constraints:
  • It had to fit in one of my suitcases. This rules out bikes.
  • It has to go some reasonable range.
  • I can carry it on a train.

Nice to have things:
  • Speed.
  • Pneumatic wheels to not rattle my joints apart.
  • Brakes.
All signs point to scooter! Name: Scooty Puff, after Fry's ride in the Futurama episode "The Why of Fry."

The original Scooty Puff Jr.
When designing, I had a lot of help from Jamison and his experience making scooters, and referred to Shane's Pneu Scooter and Charles' RazEr rEVolution and Instructable on electric scooters quite a bit. 

Parts List

Design Considerations

As always, a link to the Solidworks design files are linked below in the appendix.

The Rear Wheel

One tricky part was getting the sprocket mounted on the rear wheel. The hub of the wheel is plastic with spokes, so there was not a lot of material I could remove for, say, holes in the spokes.
So, after asking some friends around the Invention Studio for advice and taking inspiration from Pneu Scooter's hub motor, I came to a solution. I would use a flat free wheel. The sprocket is mounted onto a plate, and that plate onto the wheel with screws that go through the entire wheel assembly, like so.
Wheel in the flesh!

This way there are no threads pulling on the plastic hub. Now this solution works all hunky-dory, until unforeseen material properties smacks me in the face. First, the tire does not have as firm a grip on the hub, so it tends to pull away during turns. This creates the terrifying feeling of the rear wheel slipping around corners. Second, the flat free tire wears down really, really fast.
This wheel used to be round.
Just one week of use.
How is it supposed to last the summer with these terrible characteristics? I had to switch to a pneumatic wheel, with a redesign of the sprocket mounting plate. Two plates now, one on each side of the wheel, are screwed onto the hub (yes, threading into plastic). The sprocket mounting bolts go through both plates to hold the plates in compression, minimizing the chance of the plastic threads pulling out.
There is a hole on the plate opposite of the sprocket for the valve stem. Thus, three of the sprocket bolts go through the entire assembly, the last one only goes through one plate.

The Motorpod

Heavily inspired by Razor Wind's wheel pod, it is a self contained unit for the rear wheel, motor, and power transmission.

Motor Selection


I used the EMP/Turnigy C6374 because not only is it appropriately sized, but it also has a bearing on both sides of the motor. This makes the can more resilient to shaking and vibration and other nasty real world conditions.

Controller

I use a cheap sensorless ebike controller from China. After reading Charles' Beyond Unboxing of the controllers, I thought they would do well after a bit of modification, and they do. The mods:
  • Reduced shunt resistance to 2 milliohms. This, in theory, boosts the controller's wattage from 250W to close to 1000W
  • Due to Charles' reports on the bus caps getting warm, an additional 4700uF of capacitance.
  • Swapping the power FETs with IRF3207s to more than halve the on resistance (Rdson)
This give the controller enough beef to accelerate uphill.

The rest of the scooter was designed to be made with the waterjet, manual mill, and lathe. After two weeks of machining, it looks like this. 

A scooter!

Scooterbros


With a 3D printed fender
The stats:
  • 4.25 mile range
  • 28 mph theoretical top speed
  • 25 mph observed top speed
  • 2 hour 15 minute charge time from empty to full, limited by charger power
  • 26.1 Watt-hour/mile efficiency 
Lets see how long this thing lasts with a 3.5-4 mile long round trip commute every weekday this summer.

Appendix

Complete design files on github: https://github.com/aaronbot3000/scooty-puff

Saturday, June 2, 2012

Catching Up

Wow it's been a long time since I last posted. Busyness and schoolwork and then moving to Dallas for a summer internship at TI and general laziness added up, I guess.

In chronological order:

My good friends Jamison Go and Xo Wang and I visited MIT and MITERS over spring break mid-March. We managed to bring three electric vehicles in two pieces of luggage: Safety Razor, Razor Wind, and the newest incarnation of Velociryder with breadboarded (but functional) circuitry. This involved a panicked redistribution of weight in front of the luggage check in as our suitcase ended up being 70 pounds, while the limit is 50. In the end, our flight was successful, and the TSA screeners didn't lose any parts.

While at MITERS, us Georgia Tech guys completed a 12 hour build, the Scooter-Ass-Kart, one of the most dangerous vehicles to ever have been constructed there.

Two people wiped out riding it, and one battery pack damaged. Thank god for dent tolerant A123 cells.

Upon return, I started assembling the Velociryder's actual circuit board. While the breadboard + Arduino works, its not pretty, and doesn't use the encoders.

Hot air reflow.

Everything is so nice and straight and aligned.
I ignored common sense and soldered everything on at once. Luckily, neither soldering errors nor circuit design flaws damaged the PIC microcontroller. When I was clicking around the programmer, I accidentally sent 5 volts to the chip instead of the required 3.3 volts. Now, whenever I try to program it, I get verification errors, always in the same block of memory. Ah poop. Discouraged by this setback, I put the Velociryder back on the shelf.

While at MIT, everyone else had practical vehicles. That is, they move faster than the Velociryder's slightly-above-walking speed. And they were lighter. Knowing I would be going to Dallas over the summer, most likely car-less, I decided what I was going to do. Make something useful! Thus, project Scooty Puff was born.

Sunday, April 1, 2012

Progress on the Velociryder V4

Circuit Board

After some Eagling:
Blank space for your comfort.
Using Dorkbot PDX's PCB printing service, kapow in real life!


The EAGLE (version 6) board files can be found in the appendix on the bottom of the page. Unfortunately, the finished boards didn't come in time for my trip. 

Mechanicals

In the mean time, I learned a lesson the difference between mathematically ideal chain sprockets and realistic chain sprockets.

Good sprocket on the left, bad sprocket on the right.
The mathematically ideal sprocket had extra tall teeth and too narrow spacing. The chain can only fit a few teeth before they become misaligned. Foo, wasted a bunch of steel.

But once the good sprockets were made, ghetto beveling with the drill and belt sander, as learned from Jamison.


Otherwise, the build went smoothly.

All the waterjet parts
Frame assembled
And add wheels.
Wheels and motors and shaft and duck shaft clamps were borrowed from Velociryder V2.

Battery spot goes in the top.

With the deck placed.
Since, during the build, I didn't have the PCB, I breadboarded an equivalent circuit using sensors from Velociryder V1 and an Arduino. Also, I figured out I did not screw up the strain gauge circuitry. Yay!
While in the picture I used a switching regulator to bring the main battery's 22.2 V down to 5 V logic, I had previously used linear regulators. Three 6805s in parallel did the trick for a few hours before they died. Just enough time for a quick demo to MTV and the Inventure Prize judges. Law of Demos (see below) didn't curse me this time!

To be continued as I accumulate more pictures.

Appendix:

Code: https://github.com/aaronbot3000/velociryder/tree/master/arduino
Solidworks: https://github.com/aaronbot3000/velociryder/tree/master/solidworks%20model
PCB: https://github.com/aaronbot3000/velociryder/tree/master/board

Law of Demos: Anything, during a demo, will not cooperate. Things that should work will not, and things that should not work will.

Tuesday, March 27, 2012

Strain gauges

In the Velociryder versions 1-3, turning was achieved using a tilting rear section. This tilting section prevented the back foot from helping the rider balance forward and backwards. I would not stand for this in version 4. I planned to use an actual skateboard deck and strain gauges to measure the tilt of the rider. This will minimize moving parts and ideally make it easier to ride. Not only that, knowing the weight of the rider can improve the board's response.

Part 1: Acquiring Strain Gauges

After some Googling and ebaying, I found strain gauges or pressure sensors either come in tiny or extra large, 1-3 pound range or industrial strength. All were too expensive. Then I realized digital bathroom scales must have something to measure weight. And since they're designed to both precisely measure human weights and not break under the heaviest of people, they are perfect. A quick search revealed digital bathroom scales going on eBay for a dollar.

Kilograms only? Good enough!
Disassembly followed. The strain gauges look like this.
It is supported by the side prongs. Pressure is applied on the top of the middle prong.

Part 2: Analysis

Electrically, they look like a potentiometer.


The outer blue and white wires measure a constant resistance, in this case 2 kOhms, while the middle red wire is the wiper, with roughly 1 kOhm resistance between the red and blue wire and the red and white wire. Pressing the gauge is equivalent to turning the potentiometer, though only a very slight amount. When five volts was applied to the outer wires, the middle wire deviated by about 4 millivolts over the range of 100-ish pounds. Since I had four, I used two pairs, one pair each for the left and right side. The power supply for each pair was put in opposition, so pressing on a pair of strain gauges causes one output voltage to go up, and the other to go down.

Left strain gauge/potentiometer goes up under pressure, right side goes down.
This create the biggest difference to amplify for your buck.

Electrically, it forms a wheatstone bridge. Measuring the voltage across the outputs gives a reading that varies linearly with pressure applied.
A wheatstone bridge. Voltage is measured in the middle.
The two strain gauges fully connected. Remember, one is connected upside down to get a differential voltage.



Part 3: Using Them

The tiny voltage difference needs to be beefed up. In comes a differential amplifier!
One channel of the differential amplifier with zero point adjustment and low pass filters. The Velociryder uses two, for the right and left side.
This is an almost standard diff amp configuration, with a couple extra bits. The capacitors C8 and C10 are (very) low pass filters to get rid of noise. Instead of a constant resistor on the non-inverting input, a potentiometer is used so any zero offset can be tuned out. This converts the range from 0-4 mV to 0-3 V, an excellent range for a microcontroller's ADC.

Protips

Since the op-amp will likely be used in single supply (unipolar) mode, use a rail to rail op-amp so the output won't crap out near 0 and 3 volts.

Thursday, March 1, 2012

Velociryder V4!

I have all these parts and nothing to velociryde on.

First, we had Velociryder V1.

It actually worked.
Then, we had Velociryder V2 for the Inventure Prize.
Woo waterjet aluminum.
This one worked too!
We kinda had Velociryder V3, ambitious but never completed.
I couldn't find a picture, so here's a render. It didn't work.
Now, we will have Velociryder V4!
With 20% more height!

Giving a good view of the encoders and motors.
From the side, showing the small sprocket for the encoder.

New and improved, with:
  • Digital accelerometer and gyroscope, less analog signals to corrupt!
  • No pivoting rear section whatsoever; strain gauges for steering!
  • Actual skateboard deck to stand on!
  • Overengineered 80/20 frame for no structural failures!
  • PIC24H core for double the speed of an Arduino!
  • Quadrature encoders for real motor control!
  • 5 Ah longpack! (That's one more amp-hour than before)!
A bonus effect of using strain gauges to measure steering is that they can also measure the user's weight. With this and wheel encoder information, I can use actual inverted pendulum state space control, instead of PID.

In the time that I have been not posting updates, I have created a control board, complete with DC regulator, super differential amplifiers for the strain gauges, and sensors.

Ooh, aah. And a logo! The actual size is 3.75" x 1.00"
I have almost all the parts and two weeks to finish to go from computer drawings to Velociryding for a certain event and a certain trip. Including programming. Boy am I hoping my circuit design is correct.

There are still a couple kinks I hope will work itself out. The first is the incredibly wide motors are probably going to hit the ground.
Derp.
The second is that the strain gauge turning is completely untested. I hope I can get a good enough difference between the weight on the right and left sides to use.

Welp, here goes another build marathon. I thought I was done with them after the Inventure Prize last semester.

Appendix