Ambient said:
How about solenoids? Those are very fast. If you need strength as well then you can try out pushrods connected to a car door lock mechanism. But that would get kinda bulky I imagine. You could also use stepper motors and winch setup. But all in all I would just use some fast servos. You can use the long servo arms and that will give you a good amount of travel, at least 2'' I thin
I started but then gave up on solenoids. I was just disappointed by how inefficient they were - lots of heat, energy suckers, and unreliable in terms of magnetically sticking in the activated position when energized too long. I thought about the car lock and the steppers, too. Trouble is, being a music application the amount of sound the motor/mechanism makes is a bigger factor than most other applications have to be bothered with.
What do you mean by "fast" servos? I'm a little ashamed to admit that I've never worked with servos before, but I'd thought that all hobby servos only refreshed their position every 50ms (at 20Hz, or do I have those numbers backwards?). I've seen servos with plenty enough torque/speed to get the job done, I'm just wondering about the latency, and consequent coordination between multiple servos.
Just to give an idea of the ideal I'm aiming for:
An
allegro tempo in music is 120 beats per minute, or 2Hz. The
beat in music is often called a
quarter note, which can be subdivided into further fractions. So at an allegro tempo, a
sixteenth note would be a note that occurs at a resolution (can I call it that?) of 8Hz (or 125ms = 500ms quarter notes divided by four). The sixteenth note resolution at 120bpm is what I'm aiming for in the prototype. Typically, the note needs to be sounded (with the fingers in a holding position, whether each finger is used or not) for at least half the value of the note (this is close to normal practice for articulated notes at this speed by a real musician). What that means is that at its fastest speed, there is only 62.5ms for the servo to react
and move each robot finger to its new position between different notes.
That might be my ideal for the prototype, but suppose I were to say I'd be satisfied with something that worked at half or even a quarter of the reaction speed? Would it still be possible to get the servos at least coordinated so that they refreshed simultaneously? What I don't want to happen is for the servo/fingers to get out-of-sync, as it were, so that the wrong fingers are going down at the wrong time. Or am I thinking about this all wrong, or too much?!