| View previous topic :: View next topic |
| Author |
Message |
parrotcam
Joined: 30 Nov 2007 Posts: 2 Location: Portland, Oregon
|
Posted: Fri Nov 30, 2007 9:48 pm Post subject: Non robotic application |
|
|
Hello,
I'm looking for some guidance on a current project. I am working on a bluetooth controller conversion for one of my panoramic camera designs. As part of the project I need to control a slit mechanism that consists of a rotating slotted tube within a fixed slotted tube. The idea is to move slits in the inner tube into/out of alignment with the opposing pair of slits in the outer tube. The present design has that process being handled with a manual knob acuator.
The camera uses a microstepping system to run the main drive so I thought of using a very small stepper to drive the slit mechanism but the most critical issue is spacial constaint. There are some small stepper/gearheads that could be used with a worm gear drive but it occurred to me that an RC servo might be able to handle the chore with less overhead by using a timing belt drive. But as I tested a very small, digital servo it is apparent that repeatability is not a strong suit. A larger servo seemed to produce better results so I wondered if maybe the small scale of the potentiometer in the smaller servo or perhaps limited electronics due to the same space constraints might be an issue.
So in doing some more research I stumbled upon the Open Servo project. I'm presently wondering if it might be possible to hack a micro servo to use the Open Servo electronics mounted externally and use an external potentiometer already mounted in the camera for slit position feedback instead of the one in the servo. I might find space to use the existing Open Source board or perhaps incorporate the components on the new control board for the camera.
The existing application can be seen with the potentiometer in place on my website. Since I am not presently allowed to post URLs, you can google Mottweiler Studio and look at the link found at the fourth red nav bar under the page title.
The servo would mount where the buttons presently are.
Another concern is durability of the off-the-shelf RC servos. As compared with the available steppers they are much less costly but correspondingly less substantially made.
Any thoughts? |
|
| Back to top |
|
 |
ginge Site Admin
Joined: 14 Jan 2006 Posts: 1029 Location: Manchester, UK
|
Posted: Mon Dec 03, 2007 1:47 am Post subject: |
|
|
Hi Parrotcam,
welcome to the OpenServo community, and thanks for your interest.
After looking over the link you provided (http://www.mottweilerstudio.com/html/cameras/camera_3.html) I think you should be able to use a standard servo. I do have a few questions that maybe you could help clarify before I give you a definitive answer.
Forgive my ignorance, but I know very little about cameras.
From the description you gave above it looks like the pot controls a motor controlled mechanism inside the enclosure. Turning the pot changes the aperture slits. Either that or the slit alignment is entirely manual. I wasn't overly sure what was going on there.
If the case is that it is entirely manual, and assuming the loading of the servo is not going to change, then I am pretty sure you could use a cheap RC servo to turn it.
Q1) What is driving what? Is the slit mechanism manual?
Q2) What is the "main drive", and is this decoupled from your slit mechanism?
Q3) How accurate do you need this system to be? The OpenServo has a resolution of 10 bits, with a total error of +/- 1 bit. This is substantially more than a microstepping system which typically has a step of 0.9degrees/step, but will a stepper will stay fast at the destined position, whereas a servo might not.
If anything, the major problems you may face are going to be tuning the algorithms for the application and making sure there is no play in the gears. I would recommend using a metal geared servo to reduce the amount of play in the gear train. Lastly, pots in the cheap servos are pretty awful. The electronics even worse. upgrading the pot to somthing better is a good start. The OpenServo has analogue and digital filtering to help get rid of the noise from the pot, but this will only go so far to help.
Regards,
Barry _________________ http://www.headfuzz.co.uk/
http://www.robotfuzz.co.uk/ |
|
| Back to top |
|
 |
parrotcam
Joined: 30 Nov 2007 Posts: 2 Location: Portland, Oregon
|
Posted: Mon Dec 03, 2007 7:18 am Post subject: |
|
|
Hello Barry,
Thanks for the input. It is often difficult to adequately explain such a thing in the first draft.
Q1) What is driving what? Is the slit mechanism manual?
The pot on top of the slit mechanism is presently only used for the camera's MCU to determine what position the slit is in. The mechanism has spring detents for each manually set slit location. The detent mechanism would be disabled in the envisioned new system. I imagined that the extant pot might be used as part of a servo system but I don't know if having the pot located remotely from the servo separated by a timing belt drive poses problems.
Q2) What is the "main drive", and is this decoupled from your slit mechanism?
If it isn't clear from the comments above, the slit is presently manually operated and is a completely separate system from the film/camera drive. The idea is to bring the slit mechamism under motorized control by the primary mcu based control system.
Q3) How accurate do you need this system to be? The OpenServo has a resolution of 10 bits, with a total error of +/- 1 bit. This is substantially more than a microstepping system which typically has a step of 0.9degrees/step, but will a stepper will stay fast at the destined position, whereas a servo might not.
As might be inferred by the presence of a spring detent mechanism in the present setup, the main goal is repeatability. The exposure produced by the camera is dependent upon the slit being in the calibrated position. I can't presently say what plus/minus accuracy is required but it was clear in testing the servo at hand that it was not up to the task. There is no significant force working against the servo in a set position but it nonetheless finds its way to inconsistent stopping points after a longer return move.
(As an aside, the stepper system driving the film mechanism has a maximum resolution of 256 microsteps for each of the 0.9 degree normal steps of the motor in use. But is is not being used for position accuracy - rather for creating something akin to the smoother output of a DCPM motor but in a much more compact form factor.)
At the scale required to fit a drive into available space for the slit mechanism, it will take a planetary gearhead on the available small steppers to even attain 0.9 degrees per step. (But 0.9 degrees per step is probably more than adequate for the task.) That will necessarily make a planetary gearhead/motor long enough that it would have to be mounted at right angles to the slit mechanism and thus require a worm or bevel gear drive to complete the system. That quickly becomes expensive and complicated to implement. Hence my interest in a servo that could drive the extant slit shaft with a simple timing belt.
From the trend of your response and the nature of the apparently available "micro" servos it sounds like I might be out of luck. There appear to be no examples available with metal gears and I'm guessing that the minimum space for electronics and pots in those very small servos leads in part to the quality issues you mention.
It is possible, I suppose, that another servo from another manufacturer might perform better than the Bluebird digital servo I am working with now. There was supposed to be a metal geared version of the BMS-303 available but I'm told that it never materialized. The Cirrus CS-3 Micro Joule Servo looked interesting, but it apparently had some issues and seems no longer to be available.
So I am left to wonder if a possible solution would be to create a servo out of a higher quality DCPM motor/gearhead, OpenServo electronics and the potentiometer already present in the camera hardware. It might be that the learning curve for the OpenServo and the cost of a suitable motor/gearhead might outweigh the downsides of a stepper but I would consider any further comments before committing to that conclusion.
Thanks for bearing with my lengthy reply,
Kurt. |
|
| Back to top |
|
 |
ginge Site Admin
Joined: 14 Jan 2006 Posts: 1029 Location: Manchester, UK
|
Posted: Mon Dec 03, 2007 1:40 pm Post subject: |
|
|
Hi Kurt.
Thanks fore the clarification. I now understand how the camera fits together.
From your description above, I believe it will be OK to use a standard servo. The tricky part will be recreating all of your mechanical linkages. A belt drive might introduce some play into the system that will be difficult to compensate for. I would think it would be better if you could drive the pot shaft directly from the servo horn, but I don't know how feasible that would be given your small space constraints. Reusing the pot you have in there already would be a good idea, as you already know the properties and accuracy of it, and if you can drive the mechanics at 1:1 you shouldn't a massive problem.
One of OpenServo's strengths is repeatable motion.
As you are going to be using in a system that approximates a linear system, it won't take long to tune the needed parameters. You will only need to tune 2 parameters, the P and D term of the PID. Controlling the system will be as simple as sending a couple of bytes of data over I2C.
As for the learning curve... Yes, there will be a learning curve that you will need to deal with. Luckily your system is very simple, and you will be using 1% of the features available.
We would be more than happy to help you out with whatever is needed.
If you could provide some specs for the size requirements, we (the OpenServo crowd) could help identify a servo mechanism that would help.
Ultimately the decision of which system to use will come down to how much time you are willing to invest in refactoring your PIC MCU to handle the I2C data, and how difficult it will be to incorporate the mechanics.
Each system has it's pros and cons, the stepper motor solution is a more established system, while the OpenServo is a more complex solution. The simplest solution is often the best
Barry _________________ http://www.headfuzz.co.uk/
http://www.robotfuzz.co.uk/ |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|