Showing posts with label ardWINDo. Show all posts
Showing posts with label ardWINDo. Show all posts

Friday, September 3, 2010

New Project Trailer

I picked up an iPhone 3Gs a week ago and have already taught it some tricks courtesy of the wonderful touchOSC app. Accompanied by the OSC editor freeware, this program allows you to create your own GUI for the iPhone/iPad (I think they have an Android version too?) for controlling all your musical or embedded electronics projects. Yes, it's $4.99 but in my opinion it's well worth the price of admission. In fact, it's the only app I have justified paying for so far.

After playing with my toys for a bit I finally found reason enough to invest in some very small servos to join the Arduino Nano 3.0 and XBees sitting on my desk. And so begins the next project:


No sound I guess...

There is a great guide on SparkFun for syncing OSC over wifi, to Processing, to an Arduino via USB. After tweaking the code - originally intended to control an LED - a little bit the iPhone can control ardWINDo's servo. I won't spill the details now, but I will say that my next project will be mobile. Watch-winder's are cool and all but only watches can ride them...

Monday, August 9, 2010

ardWINDo: Load the Code

In case you're interested here's the code. I'm still working on the schematic but it will be posted soon!

Sunday, August 1, 2010

ardWINDo: v1.0

The goal of ardWINDo was to create an inexpensive, compact, and elegant Arduino-driven watch winder. No in all seriousness this project just my excuse to get into microcontrollers. I mean, big deal I got a second watch it's not that hard to shake the old one a few times over the weekend. I'm happy I did it though and if you were to add up the time it would take me to wind my watch every week I doubt it would ever approach the amount of time it took to construct ardWINDo.

Shown with it's prey

In my last post I had the guts layed out. Arguably the final product still looks like the guts, only screwed to a bent and burnt piece of polycarbonate. There were some intermediate steps though. The main task was to transfer the electronics from a breadboard to a prototyping board. This was challenging given the spacial constraints but I hid the messy soldering on the back of the board. The result works quite well. My only self-criticism is not going all out and making a legit shield...maybe v1.2 or v2.0 (how does the nomenclature work?).

Clean enough

There was also the problem of scratch-protecting and constraining the watch. My solution involved felt, velcro, and a bit of sewing. Most commercially available watch-winders use a pillow and cup interface, displaying the face of the watch through a window. Personally though, I think it's more interesting to watch the gears and rotating mass on an automatic watch. That's what you see with the current interface but maybe I will make one that displays the face with the spare bracket.


The software only needed minor edits since my previous post. The winding is decently precise but I haven't given up making it a perfect match. I have been hinting considerably through this post at a revised version of ardWINDo and by then I will have a better handle on the coding. For now the code is simple, potentially inefficient, but functional. Also, I have yet to hear of a watch that explodes if it's wound 1.374 too many times.

This brings up an important point about watches though: there is such a thing as over-winding! The mainspring is designed to hold only so much potential energy and will break if too much force is applied. For Seiko Kinetic watches which store energy in a capacitor, this is not so much a concern. Still it's a good idea to consult the manufacturer's instructions to determine how many winds to order up. Anyways, without further digression, here is ardWINDo v1.0. Enjoy:

Wiring shematic and full code to come soon.

Tuesday, July 27, 2010

ardWINDo: Update

The stand was anticipated to be the most painless piece of this project. Except, it's 0.22" polycarbonate and from the moment I unchecked the "bullet-resistant" box on the McMaster order I should have known it would be trouble. I thought it would be smelly to cut on the laser but I didn't anticipate it would catch fire. Or that it would be so hard to bend into shape. Functionally though, it works and I will use it. Hey, after going at it with a dremel and sandpaper it doesn't look half bad, Mike (Thanks for the laser time!):


With the mechanical end of things resolved I had some time to play with the electronics and software. The circuit is done and in the process of being transfered to a thinner prototyping board. A lot of careful planning is needed here because the 7-segment display takes up a lot of room. Other than that about the trickiest thing is the Red/Green LED. Maybe I'll post a schematic when it's all done.

As for the code, it does its job; it winds a watch as many times as you like. However, the current control structure for winding is imprecise. I'm not using one of the ATMEGA328 timers or even an external one. I simply use a for loop that decrements the winds and controls the servo per a delay calculated as the time it takes for the servo to complete one revolution. However, each cycle propagates a minute error when switching the servo from go (1400ms) to stop (1500ms). Not the end of the world but I'm going to synchronize the servo and display as well as the Arduino allows. Here's what it does so far:

High-pitched "PIZZAAAA" sound effect courtesy of Shane

Cost Update: $70.....

Monday, July 12, 2010

ardWINDo: Testing Arduino

I finally got a chance to mess around with the Arduino and test some sample code. Results:



Success. There wasn't much to be done but it's best to start from the very beginning. I will work on the actual coding soon but more critical at them moment is the mechanical end of things (SolidWorks license expires in 10 days!). As shown in the video above, the watch will be housed in an aluminum servo bracket...like those used in servo tilt-pans. It was $13 for two plus bearings and hardware, but that's a bargain when considering the time and money to make your own (as nicely).

The pursuit of simplicity has also inspired me to design a more elegant stand. The final product is going to be transparent, probably acrylic or polycarbonate. Fortunately I have a friend with a laser who can supposedly cut up to 1/4". Maybe I'm cheating a little on the pricing through this connection, but it's nothing that couldn't have been done with a drill and a dremel. Should look something like this:

Much Better. And the brick is a dummy Arduino-sized block.
Cost Update: $59.85

Friday, July 2, 2010

It Begins

This is it, my first D.I.Y. project to go public and to be finished (eventually)! It's about time a lowly MechE like myself got acquainted with all the fuss surrounding microcontrollers. After all, mechanical projects become a whole mess cooler when they're autonomous. So...
What does it all mean?

No, not a bomb. It's the shrapnel that with work, skill, and plenty of luck will become a watch-winder. Why a watch-winder? Well, I now own two watches, the primary of which is a self-winding Seiko Kinetic that does not like being neglected over the weekends. It's funny the concept of "self-winding" is misleading; the watch will wind itself only if it is clasped to your swinging wrist all day. And while I'm off enjoying my new Citizen with Eco-Drive I would like to know my Seiko is getting it's TLC. In essence I am constructing a replacement wrist that henceforward will be referred to as the "ardWINDo."

As shown above, the system will be controlled by the popular Arduino Duemilanove. These guys are very popular especially with the people at MAKE. It should be straight forward to program...or that's what I am told. The more I read about this highly capable piece of kit the less mechanical this project becomes. I won't give away all the details of the project but at the moment it will look like:

Subject to change!*

I'm going to try to cap this project at $70 but that will be challenging considering the Arduino itself runs for $30. This price was chosen because that looks like the going price of the cheapest decent watch-winder. It's time to start extracting parts from old projects...like a servo from an RC car? So the concept may be based on laziness but is that laziness then cancelled out by all the trouble I'm going through to construct an autonomous watch-winder? You decide...

*As I post this I already have three other ideas of how to produce the winding motion.