Hey guys,
I've been reading the articles posted on the website and been thinking about the whole thing. I really like the ideas you're exposing.
First to clarify a few things: I'm a consultant for banks and governments and have been in hotels for 5 months so getting any kind of gear is going to be very difficult for me. I can buy it, just can't store it, and would have to throw it away every so often. I also have a degree in electronics and have been doing embedded development for quite some time as a hobby.
Now, for the non-boring, crunchy bit:
- shutter (whatever we're supposed to call you, you sign with a "!c" which comes nowhere close to your nickname), thanks for posting the intervalometer article, it confirmed what I was thinking of. However, I left a comment and it may be better to discuss it here: what are your thoughts about powering the systems when in the field?
- I'm thinking about building a dual-axis stepper-powered system, all controlled from one or more Arduinos (didn't look at the connections available yet). As referenced in one of the article, this would be a Shoot-Move-Shoot (SMS) system, however as it would also be the one firing the camera, from an application perspective there is no issue with knowing when the last shot was fired (and the exposure), when to move and when to shoot again.
- My initial system wouldn't be a shoot-and-move system, quite simply because I don't care too much about my images being overly sharp -- I'm guessing this could be lowered by using an ND filter and lowering the exposure anyway.
Now, as I don't want to be like the new guy who overhauls all the plans and needs to get back in touch with reality, I'd like to quiz you guys about user input. Obviously, recompiling the app just to change the speed isn't going to do, and I don't know how usable the USB interface is on an Arduino (possibility to launch an app using specific parameters and then disconnect USB?) so I was wondering how you guys were planning on doing the user input?
I've seen the User Interface and it looks absolutely brilliant, but I was wondering about what exactly was going to drive that. I do have an N900 and N810 (so USB-host available), but battery life isn't absolutely awesome on that (well, my N810 battery is shot as well, so...) and even though if bad comes to worse I can use that, it just doesn't fit what I'm thinking of. My initial thoughts were to go for a minimalistic implementation, 2x16 display, that wouldn't require any external hardware to function. The form factor would be a remote, which would also contain all the hardware, and maybe 4-6 buttons. I don't see why I'd want to go with a touchscreen-based system. I feel it's overly complicated and overly expensive ($180 for input/output? Seriously) for what it is.
A simple set of menus (shot duration [0.5s-60s], shot interval [1s-72h], rotation direction [cw-ccw], rotation speed [measure tbd], ramp-up %) would probably suffice for an early prototype.
Each axis would be controlled by a stepper motor, in order to keep costs down this will probably be $50 a piece, so a rough estimate would be a 1 or 2 degree stepping motor (no idea about strength), however if cheaper is required 10-15 degree could work too. A small gearbox that has a 360:1 ratio or 180:1 ratio would allow one full turn of the motor to only move the rig 1 degree. Gearbox would ideally be $40 a piece.
So, to recap:
- Arduino: $30
- Arduino LCD shield: $20
- 2x Stepper motor: $50 * 2 = $100
- 2x gearbox: $40 * 2 = $80
- Odds and sods (wires, glue, ghetto style casing): $20
Am I far off?
Again, I'd warmly welcome your opinions.
Thanks
PS: Unsure where to put this, so move as required.

Money wise you are not far
Money wise you are not far off I guess. You only forgot the drivers for the motors; I am using EasyDrivers for now. You might have higher costs for your casing. I expect higher cost for my casing when it is fully built.
I just purchased most of the equipment needed to build a working prototype. I might need larger motors in the future after the prototype phase.
My first prototype is fully working as of today. All the software is working; the Arduino is running the latest 0.82 version of the software. Nikon camera is triggering perfectly and I have one motor (out of four in the future) connected and working too. I am still struggling with the slim application, but that's just because I am still learning. A few very simple examples (like an SMS script) as available in the initial tutorial would help.
I am now waiting for my Mega and TouchShield Slide (ordered one week ago). I will then start my experiments to see if I can contribute to an interface that is working on the TouchShield.
Overall I am very enthusiastic about the OpenMoco initiative. I ordered most of the equipment needed on the same day as I found this site!
Hi Slau, It may not be
Hi Slau,
It may not be obvious, and I do apologize, but everyone either calls me "Chris," or "Church" - if you look at the header in the code files, it will make some more sense as to why I sign with '!c':
(c) 2008, 2009, 2010 C.A. Church*grin*
I'm not sure which gearboxes you'd get fr $40, and how you'd intend to use them. NEMA-mount gearboxes tend to be pricey (Anaheim offers nice combos w/ planetary gearboxes. Their 136:1 [iirc] gearboxes on steppers run ~ $70. However, you'll need to deal with power transmission still, as most of these have serious radial and axial limits on the weight applied to the shaft.)
For powering in the field, we typically use small (ish), 12V SLA batteries. They're inexpensive - an 8Ahr battery can be had for about $30-40, and will run most setups for 9-10 hours.
Depending on how you do your cabling, your odds and ends will run north of that, unless you make do with whatever cheap parts you find. For example, I just switched from PS2 to MIDI (DIN 5/180') cabling. It ran about $20 for a couple of midi cables and some connectors, and then polarized connectors run a buck or two each new. (Unless you just kinda get whatever works.) BUT! The steppers should be well cheaper than what you've listed. =)
If you intend to use the OpenMoco arduino engine (which does pretty much everything you've mentioned) it will already handle the S-M-S part for you, but you'll need a second arduino, as attempting to build in the UI timing into it would cause conflict with program timing, or have to lock the user out during certain actions. The USB->serial connection works great, when you build a streamlined protocol. =)
For connecting/disconnecting, check out the post I wrote here: http://openmoco.org/node/119
The GUI I'm working on right now might actually work on the Nokia -- it's written in processing, and I'm pretty sure there's the needed JRE on the Nokia.
You can certainly build a simple push-button lcd/arduino interface, and the serial-to-serial will work fine. I haven't pushed that route, as asking most entry-level people to not only design a driver/camera/control board, but also a separate UI board seemed to be asking a lot. The hope was many people would use the GUI on their PDAs or Netbooks, and if a specialized UI was needed somewhere, it could be built then and detailed for everyone else.
FWIW, I started on a new, final schematic for 0.82 and driver boards using the Pololu A4983's (which I was just introduced to last weekend). I'll be posting it up in a few days, but the final board file will be reviewed by someone with more talent than me, and then I can get them fabbed in bigger orders if people want. (I'm ok w/ protoboard myself though *grin*)
!c
Just saw that I missed this
Just saw that I missed this when replying earlier, so I wanted to add some color commentary:
"Each axis would be controlled by a stepper motor, in order to keep costs down this will probably be $50 a piece, so a rough estimate would be a 1 or 2 degree stepping motor (no idea about strength), however if cheaper is required 10-15 degree could work too. A small gearbox that has a 360:1 ratio or 180:1 ratio would allow one full turn of the motor to only move the rig 1 degree. Gearbox would ideally be $40 a piece."
200/steps/rev (1.8') is going to be your standard stepper motor. I wouldn't worry about any other types, as there's no economic reason for a system like this. $50 is a fairly high price, when NEMA 17-23 motors can be had on the cheap. If you really want to save power and weight, NEMA15 is good choice too. All are available from Anaheim automation new, but you can save money on the bigger motors from surplus shops. Where are you finding 360:1 or 180:1 gearboxes for $40/ea? Are they spur, planetary, or worm? I've never seen a NEMA-mount gearbox in that price range (now, little gearboxes made for tiny DC motors, sure, but not for steppers). From most suppliers that gear ratio would run hundreds to thousands of dollars for say, a NEMA 23 mount, in single unit orders with a modicum of accuracy. Obviously, there are some cheap ones out there - but I've seen them running as high as 20 arc-minutes of backlash! That's fairly insane.
If you know of someone that can provide a low-backlash gearbox, with that sort of ratio, in a NEMA frame size, at those sorts of prices please share w/ the rest of us. =)
The closest I've seen (that can ordered immediately), is the 17PG series from Anaheim, their 17 series stepper combined w/ a 136:1 planetary gearbox is about $70/ea, and has 3 arc-min of backlash. However, you still need to transfer power through another gear assembly (such as a timing belt) for pan and tilt, as the axial load the shaft can take (what the pan would place on the shaft) is about 7lbs, and the radial load (what the tilt would place on the shaft) is about 8lbs. You obviously want to come in safely below those ratings.
Additionally, it seems from your other posts that power consumption is a major issue to you (350mA really seems pretty low to me =) -- if so, forget about steppers. Look at the bipolar series current for most of the motors you're looking at - the average NEMA 17 I've come across runs from 600mA to 2A.
!c
Hey Chris, Thanks for the
Hey Chris,
Thanks for the quick reply. I'll reply in reverse order because that's how it's wired in your head anyway:
Power isn't really a main issue for me, but weight kinda is. If I need to hike 35 clicks with a car battery on my shoulders, the tripods, camera bags and camping gear, yeah, I might start to feel the pain. Sometimes when it's easy to go places I'll use a (push) bike with a trailer, so weight is less of an issue, but still. As I said, I did study electronics and did a few projects here and there, however we never went wireless, so I have strictly no idea what kind of batteries we can get these days, and what we need for a 6-12 hour usage.
Sadly, I was sorely mistaken with regards to the gearboxes. Looking through the webs, it's starting to look more like an average price of $200 than $50, and that hurts pretty badly. Do you think milapse could look inside his tripod to see what kind of hardware they're using? Would be pretty interesting to see what an entry-level TM is using. I could probably send the request to build a few off as an assignment to a few teachers from back in the day, but it would take 2 weeks - 1 month to get, build quality would be studenty, and no way to get mass production.
The Anaheim steppers combined with planetary gearboxes do look nice indeed; have you tried them? Is there a lot of backlash on those -- I can't help but notice that the datasheet doesn't have any information regarding backlash...
What kind of mount are you guys looking after at the moment? There's quite a lot of designs possible (read: that I can think of), but none of them seem extremely interesting compared to the others. And until I have the system, I'm not going to know if it'll work or not (with said motor). From what I read in your post, you're thinking about having the motor off-axis, with a cam/belt/chain powering a support shaft?
Would it not be easier/cheaper/less-failure-prone to have have the motor caged in and use the outer shaft around the motor to provide support to the transmission shaft using ball-bearings? Again, I'm not cost-conscious, so please correct me if I'm wrong.
The N810 doesn't have Java out-of-the-box, sadly. It can run Java, but will be dog-slow. Only the N900 is capable of running Java at reasonable speeds, but that one doesn't have USB-host features. I can setup some tests with the N810 trying to get the UI running on it, and see how fast/responsive it is. If performance isn't too bad we can go from there, however if it's unusably slow I'll have to write a small C frontend for it.
The main issue I can see with having to use an external control unit is obviously that it can be stolen. I read your post about connectivity, and understand now that we only need to be connected during setup phase, or restart. This does make things easier/more interesting, as I couldn't imagine most people running around with a laptop that would stay awake for the full 6-12 hours out in the backwoods. I have an mbp, so I can pull 8 hours, but it'd be tough to expect that from everyone.
I'll set aside a budget of about $300-$400 next month (mid-march) for this. This month I spent quite a lot on a new 40d, filters and blah.
Thanks for your replies,
When it comes to power,
When it comes to power, you'll have to trade cost for weight - a lot of people choose the SLA's as they're the cheapest for the amount of juice they provide (cheap in the sense of the battery its self, and the charger), obviously lithium, nicad, etc. can be used to reduce weight, but at a greater cost.
The reason I chose worm gearing is that allows power to be cut from the axis between moves, reducing power consumption. If you go with timing belt (pulleys), planetary, or spur gearing, you're going to need to keep the motor powered the entire time for any axis that has the force of gravity working against it. To be clear: worm gearing has a distinct advantage in that any attempt to transfer power from the worm gear to the worm wheel is met with nearly infinite friction, and therefore nearly infinite torque is required to spin the gear from the load side. Obviously, it increases cost and complexity somewhat, and has its own drawbacks, but it's very useful for loads that rotate or move vertically (tilt and vertical dollies). Otherwise, you'd have to compensate with counter-weights, etc. to cut power between moves.
Milapse has been using the 17PG series from Anaheim on his dolly with great results. His uses a 19:1 gearing, because that works well for the dolly configuration (belt pulley pitch diameter, microstepping, etc.) I like getting to around 100:1 or great on pan/tilt to allow for macro-style shooting, but someone who doesn't need that much resolution could go with as low as 50 or 60:1, but you'd need to compensate for the reduced torque multiplier by using a stronger motor, which therefore consumes more power. Of course, most of their gear boxes have a 3-arc minute backlash rating, which translates to about 0.05 degrees of backlash. That would mean that, using 200 step/rev motor, and 19:1 gearing, w/ 8x microstepping, one makes approximately 5 steps compensation when changing direction.
As to what's in the head that Milapse uses? The Meade telescope heads use plastic worm-gearing, and a standard DC motor with a feedback loop to determine/adjust current speed. Plastic worms save you a lot of money, and they last longer under constant use than metal worm gears. They do have a drawback in that you can't put as much initial torque on them as you can on a metal worm wheel/gear combo - they'll flex or tear under the load that the brass and steel ones I'm using tolerate nicely.
You can buy the gears and motors as kits, I've heard, for the Meade DS head. Never had the inclination for one myself though, so no idea how easy they are to find. =)
The motor output shaft still takes load, even with the ball-bearing in place. The bearing will flex and give under load, transferring a lot of that same load down the shaft. (There's actually a bearing inside of most stepper motors on the shaft, already performing this function.) The bearings actually change shape when load is applied to them, this is why ball bearings have a higher dynamic (spinning) load rating than static (sitting still) load rating - as the amount time an individual bearing is under stress is reduced when spinning. Consider also, that as you extend the shaft to add more length to it, you also increase the length of the lever, thereby reducing the overall weight you can put on the end of it while still applying the same force at the point of the motor. This is why you almost never see a design where the load weight is placed on the output shaft of the motor when the driven-weight is non-negligible, whether using belts, cables, or gearing, the load is placed on something other than the output shaft of the motor.
Between you and me - I'm far more concerned with my camera and moco rig being stolen than my netbook *grin*. My netbook costs a couple of hundred dollars, camera alone several times that =) But, yes, my netbook battery lasts about 4 hours, but I only need about 20 minutes to set up several different shots. Sometimes we each have different needs and constraints. One should certainly design their system around theirs!
I could see how phones need UI's with a little less juice. I know, however, that I can only work on so much at once *grin* If you'd like to make a special UI for cellphones, that would be awesome! Remember you don't necessarily need a USB host interface, if the phone can talk regular RS232, you can just wire up straight to the serial pins on the arduino, and add a DB9 port or whatever you need to your box.
!c
Just a quick reply, I haven't
Just a quick reply,
I haven't used Java on the N810 as of yet (and actually, checking my bags I realised that my N810 is at sea between London and Oz), and don't know what its performance is like. This is something I'll only be able to check next month (April). The N900 sadly doesn't have either USB-Host nor any kind of serial connections (well, there are a few pins available, but no documentation whatsoever, and I don't fancy soldering stuff to a $800 device just in an attempt to guess what the port is for.
That being said, when I have the time (I need to finish coding another project first, mwkn.net) I'd love to contribute to the code. I've used Processing a bit (well, the usual discovery things, I wrote this bot that would crawl the web to find "emotions" on blogs (I feel like, I'm feeling, etc), and the pictures attached to them, then a small processing app that would display a slideshow of the sentence and the picture. Some results were pretty awesome, sadly, the database (sqlite) crashed after it reached a couple dozen million entries. Never bothered running it again.
You are correct, I'd be far more bummed to lose the rig than the laptop, but laptops/netbooks/PDAs look easier to steal than a massive camera on a 10lb tripod (at least, that's how I'd think about it).
I leave my current rig in the streets quite a lot, people don't notice the camera as much when there's not someone behind it looking through the viewfinder. I always keep an eye on the camera and tripod, but the simple fact that it is mounted on a tripod just causes people to watch out for it. A camera left on its own would be gone in the blink of an eye; tripod mounted, anyone paying attention to the camera could be the owner.
Any contributions you can
Any contributions you can make will be highly appreciated, whenever you can make them! I'll keep posting as new updates are made so you can follow along.
Thanks!
!c