A robot that dances to music. It would be fascinating to have a small robot on your desk dancing to music from Fatboy Slim. Winamp provides an API for writing music visualization plug-ins. A plug-in was developed that sends signals to the parallel port corresponding to the waveform data of the song being played. By controlling the pins of the parallel port, the robot can be made to respond to changes in the music. The initial prototype was a metal and rubber version of the Kinetix dancing baby. The rubber arms were removed, and circular plastic joints were inserted and soldered onto inexpensive DC motors. These motors were connected to a protoboard, which included a circuit that activated them based on the signals from the parallel port. However, the baby’s heavy arms were too much for the motors, leading to erratic movements instead of dancing. A smaller figure, a Buzz Lightyear action figure, was then used, which performed better with strong drumbeats, though it struggled with quieter songs. The circuit diagram provided illustrates the setup for one motor, but since the parallel port has eight data pins, the circuit can be replicated to control up to four motors. The motor can rotate forward by activating pin 1 and deactivating pin 2, or in reverse by doing the opposite. Turning off both pins stops the motor, while turning both on can damage the transistors. There are plans to develop a more advanced version of the robot using servo motors for better limb movement control, although there are concerns about increased costs, as the current version can be built with only five dollars' worth of components. Additionally, there is an intention to enhance the plug-in for improved beat detection, as the robot currently dances well to Prodigy but poorly to Beethoven, with the goal of achieving better performance across various music genres.
The dancing robot project involves a simple yet effective control mechanism utilizing a parallel port to interface with the motors. The primary components include DC motors, a protoboard, a parallel port connection, and a microcontroller or computer running the Winamp software. The circuit diagram for controlling one motor consists of two outputs from the parallel port that dictate the motor's direction. Each motor is connected to a transistor that acts as a switch, allowing for the control of higher current loads than the parallel port can handle directly.
To create a more refined movement, the use of servo motors is proposed. Servos provide precise control over angular position, making them ideal for applications requiring accurate positioning, such as a dancing robot. The transition from DC motors to servos would involve reconfiguring the circuit to accommodate the control signals required by servos, which typically use a PWM (Pulse Width Modulation) signal for position control.
For the software aspect, the plug-in developed for Winamp analyzes the audio signal in real-time, extracting features such as beat and rhythm to dictate the timing of motor activation. Improvements in the beat detection algorithm could enhance the robot's responsiveness to various musical styles, allowing it to perform more complex dance moves. This would involve signal processing techniques to identify beats and tempo more accurately, ensuring that the robot's movements are synchronized with the music.
Overall, this project combines basic electronic components with software programming to create an engaging and interactive robotic experience that responds dynamically to music, offering opportunities for further enhancements and refinements in both hardware and software.A robot that dances to music. G‚ Wouldn`t it be wicked cool to have a cute little robot on your desk dancing to Fatboy Slim Winamp provides a nice API for writing music visualization plug-ins. G‚ I wrote a plug-in that sends signals to the parallelport that correspond to the waveform data in the song being played.
G‚ By setting the pins of the parallel port on and off, I can control the robot and attempt to make him respond appropriately to changes in the music. My first dancing robot prototype was a metal and rubber incarnation of the Kinetix dancing baby. G‚ I took the baby`s rubber arms off, inserted circular plastic joints, and soldered them onto some 99-cent DC motors from Radio Shack. G‚ The motors were hooked up to a protoboard on which I built a circuit that turned them on and off in response to the signals from the parallel port.
Unfortunately, the baby`s thick arms were a little too heavy for the wimpy motors I was using. G‚ Instead of a dancing baby, all I got was a baby that twitched uncontrollably to the music, as if Winamp were givingG‚ him an epileptic seizure. I decided to try a smaller dancing figure instead, so I outfitted this Buzz Lightyear action figure with the same motors.
G‚ He dances in rhythm very well for songs with strong drumbeats, but not as well for quiet songs. If you want to try building your own dancing robot, I can send you my plug-in. G‚ Here`s a diagram of the circuit I used. G‚ This diagram is for just one motor, but the parallel port has eight data pins, so you can replicate this circuit three more times to control four motors. The motor can be turned forward by setting pin 1 on and pin 2 off, or in reverse by setting 1 off and 2 on.
G‚ Turning both pins off turns off the motor, while turning both pins on blows out your transistors (I did this a lot). I`m going to try to build a better version of the robot that uses servo motors to move the robot`s limbs in a more controlled fashion, but I`m a little concerned that this will make the cost of the robot too high (right now, the entire thing can be built with 5 dollars worth of electronic components).
I also want to tweak the plug-in a bit to perform some more sophisticated beat detection. G‚ Right now Buzz dances quite well to Prodigy, but very poorly to Beethoven. G‚ Ideally, he would dance well to many different types of music. 🔗 External reference
Here is a simple circuit which can be used for decoration purposes or as an indicator. Flashing or dancing speed of LEDs can be adjusted and various dancing patterns of lights can be formed. The circuit consists of two...
Build a large dancing robot. This was intended to be a walking robot, but it ended up moving in a more rhythmic manner. A video is available in the last step.
The project involves the construction of a large dancing...
LED sequencer that follows the rhythm of music or speech, powered by a 9V battery, is a portable unit. The basic circuit illuminates up to ten LEDs in sequence, following the beat.
The LED sequencer circuit operates by detecting audio...
Wireless power transfer is not a new concept; it has been discussed since Tesla's patent in 1900, titled "Apparatus for Transmission of Electrical Energy" (USPTO #649, 621). As the technology evolves, the range of potential applications will expand. For...
The line is intentionally not straight to test its performance with zig-zags and splits, which are common in the Chibots advanced line-following contest. The AVRcam is a compact, real-time image processing engine designed to track colorful objects. This system...
The basic circuit illuminates up to ten LEDs in sequence, following the rhythm of music or speech picked up by a small microphone. The expanded version can drive up to ten strips, formed by up to five LEDs each,...
We use cookies to enhance your experience, analyze traffic, and serve personalized ads.
By clicking "Accept", you agree to our use of cookies.
Learn more