In the beginning of the Exertion Instruments project, before it even had a name, a gross effort was made to produce instruments which bring out the original sound of electromagnetically-generated electricity. That means listening to the current produced by motor controls in place of powering a microcontroller.
Before attempting to regulator the stepper motor velocity to produce a steady tone, stepper motors of several sizes were connected directly to speakers of various sizes, but the result was always the same: a disco-style "peeeew!" sound, as the motor spun down. It was fun and brought out the electromechanical timbre, but so much more musical potential lurked close by. For example, it would have been very musically useful to be able to keep a steady pitch playing. To do this, performers, including myself, attempted to maintain a stable rotation rate on the cranks and spokes of various weights attached to motors. Heavier weighted axles produced more even tones, but without even measuring, it was clearly audible that it would difficult to keep the pitch within a single octave, making it very musically limited.
Therefore, some attempts were made to regulate the speed with microprocessor accompaniment. No mechanical attempts were made, but there are still outstanding mechanical possibilities. Currently, the book 507 Mechanical Movements is being scrutinized to find some means of regulation. Also, discussions and brainstorming sessions are underway with a few mechnically-inclined students at the Media Lab. The goal of these discussions is to design a means of quantizing and regulation the rotation rate of a spinning disk in order to create a range of stable frequencies.
This paragraph describes the electromechanical attempts at velocity/frequency regulation. Initially, they were based on the observation that shorting the leads of a stepper motor's coil can brake the motor. The scheme was to measure the velocity of the motor, then selectively brake the motor if the velocity was faster than a target frequency. For simplicity, the original system was limited to a single frequency: 100 Hz. Braking-only mode was chosen because it could be implemented without a large power drain.
The velocity measurement was simple enough: a pair of large-gain op-amp circuits was connected to each of the stepper motor's poles. The output of the op-amps was connected to interrupt pins on a microcontroller. The number of interrupts per second, proportional to the velocity, was measured. In order to get low-latency readings, the number of interrupts was windowed into 10 bins each 10ms long, and the total of the 10 bins used to compute the velocity.
The braking system was simple: a darlington transistor pair (TIP120) was used to short the leads of the stepper motor.
Initially, the braking system seemed to have no effect on the velocity! After consulting several engineer friends, a number of changes and variables were modified. For example, various window sizes from 100uS to 1mS to 100mS were attempted. Also, instead of merely shorting the stepper motor pins together, current was injected into the system. The higher current did have a noticeable effect on the system, but it did not have adequate regulating power.
Additionally, Analog Devices offers a complete motor control Digital Signal Processing (DSP) environment, which includes modeling of the physical characteristics of the motor, and high-speed (class D amplifier) current regulation. Given this level of complexity, it would be worthwhile to further explore mechanical regulation possibilities.
One of the suggested mechanical regulation possibilities is based on the classic steam locomotive engine regulator which relies on centripetal to lift weights and thus change its moment. The level arms would be fitted with a lightly-sprung quantizing cam to regulate the velocity to the nearest musical note. Perhaps this scheme in tandem with some second-order electronic regulation will produce the desired effects.