Thursday, April 12, 2007
The Surveillance Orchestra
The robotic accordion / [Deep|Remote] Listening Device might actually be the first instrument in a strange electro-mechanical orchestra that tries to find music in everyday occurrences and processes that people do not normally notice. The following is a description of the orchestra. It informs the process of how an architectural proposal forms around my project.
The Surveillance Orchestra is a group of robotic musical instruments that finds and explores the music hidden in the banal, the mundane and the ordinary. The Orchestra uses surveillance devices to observe specific phenomena such as the movement of trains on a track, the traffic on a street, or the growth of a burdock plant. Each instrument of the orchestra is unique and responds to its own remote surveillance device or set of devices that observe its phenomenon of interest. The surveillance devices convert their observations into audible tones that can be periodically sent over radio to the orchestra instruments.
The owners of the instruments of the Surveillance Orchestra are a secretive and diverse group of hobbyists and amateur musicians. In Winnipeg, they have chosen a piece of city property in Point Douglas as the site of their observations. This is because of the variety of phenomena available to observe and to exploit the nature of Point Douglas as a forgotten neighborhood near the centre of the city. Someone skulking around and placing an object on a fence does not look quite so out of place in Point Douglas as they might in Tuxedo or Charleswood.
The owners of the instruments keep them tucked away at their homes where they continually revise and update the mechanisms, electronics and software of their devices. They constantly search for the best way to translate the surveillance data into a music appropriate for the surveilled phenomenon. Each member of the orchestra transmits the sounds produced by their instruments over a single (pirate) AM radio frequency (which changes periodically to help avoid detection by authorities).
Winnipeg’s Surveillance Orchestra started in 2007 with three members. The orchestra grew to twelve members by 2017 when their presence in Point Douglas was discovered by a CP Rail employee performing maintenance on one of the tracks. The employee did not usually work in the area, and questioned why there was such a large structure carrying cables over the tracks.
Each member of the orchestra constructs and adapts their own infrastructure in Point Douglas to accommodate their surveillance devices. Their constructions are primarily made of pieces of existing infrastructure that had been forgotten, abandoned or at least looked like they wouldn’t be missed if they were “borrowed.” The constructions start small and are built up slowly and covertly enough that locals scarcely notice the changes. Most parts are carried in by hand and no more than four visible pieces are installed during a week. Power for the devices is provided by solar panels and batteries, strategically placed to avoid theft and suspicion. The surveillance devices communicate to the orchestra instruments over Citizen’s Band (CB) radio, a mode of communication largely abandoned in favour of the cell phone.
Tuesday, April 03, 2007
Hardware Update
Once I got the robotic accordion up and running, I discovered a couple of issues. The bellows were more leaky than I realized. I took out the bellows and added a plastic liner. This dramatically improved the volume of sound produced by the instrument.
After a period of extended use, the relay that controls the direction of the motor failed. I suspect this occurred because the abrupt motor direction changes that I was subjecting the relay to. Any motor produces a back current while it is turning (acting like a generator). I believe that while the relay was reversing the polarity of the motor back and forth, substantial electric arcs were probably occurring inside the relay (as the motor keeps turning for a fraction of a second while the current reverses). This probably damaged the relay contacts over time. Also, the relay was handling close to its maximum rated current of 5 amps (the motor probably draws more than 5 amps when it first starts turning).
I was lucky enough to find some 10 amp relays that have the same pinout as the 5 amp relays, so I replaced all the relays on the board. In addition, I modified the Arduino code to shut the power off to the motor for a fraction of a second while the motor direction is changed. Hopefully these changes will extend the life of the control circuit.
Following is the current Arduino code that is running on the instrument. It includes changes to make the motor direction control and limit sensing more robust.
[Deep|Remote] Listening Device Firmware 1.12
After a period of extended use, the relay that controls the direction of the motor failed. I suspect this occurred because the abrupt motor direction changes that I was subjecting the relay to. Any motor produces a back current while it is turning (acting like a generator). I believe that while the relay was reversing the polarity of the motor back and forth, substantial electric arcs were probably occurring inside the relay (as the motor keeps turning for a fraction of a second while the current reverses). This probably damaged the relay contacts over time. Also, the relay was handling close to its maximum rated current of 5 amps (the motor probably draws more than 5 amps when it first starts turning).
I was lucky enough to find some 10 amp relays that have the same pinout as the 5 amp relays, so I replaced all the relays on the board. In addition, I modified the Arduino code to shut the power off to the motor for a fraction of a second while the motor direction is changed. Hopefully these changes will extend the life of the control circuit.
Following is the current Arduino code that is running on the instrument. It includes changes to make the motor direction control and limit sensing more robust.
[Deep|Remote] Listening Device Firmware 1.12
Friday, March 30, 2007
From Breadboard to Printed Circuit Board
I went through a self-directed crash course in printed circuit design in order to create a printed circuit board to hold my control circuit for the robotic accordion. A printed circuit board provides more stable and reliable connections than those on a breadboard. I used CadSoft's Eagle software to layout my circuit schematic and convert it to a two-layer board design.
There are many companies online that specialize in building circuit boards. I uploaded my design files to Advanced Circuits in Colorado who built the board, which turned out quite well.
I transferred the parts from my breadboard circuit to the new printed circuit board, soldering them in place.
I built an oak frame to hold the circuit board, the Arduino microcontroller and the power supply, using pin connections to hold the frame in place.
Here is the circuit board in place in the robotic accordion device.
Friday, March 23, 2007
Accordion Automation
This post shows some of the steps I went through to automate the treble section of the accordion.
I came across this website that describes the use of car windshield wiper motors to animate large Halloween projects:
http://www.scary-terry.com/wipmtr/wipmtr.htm
The windshield wiper motor provides more than enough torque to raise the bellows. In fact, I removed some of the pulleys I had previously installed on the device. With fewer pulleys, less rope has to travel to move the bellows. This makes them much more responsive to the motor movement.
When the bellows are at their greatest extension, the wiper motor must be reversed to allow gravity to squeeze out the air contained within. I used a couple of reed switches to sense when the bellows are fully extended and send a signal to the Arduino board that controls the accordion. One reed switch is attached to each side of the device for redundancy.
Small rare earth magnets were attached to the extension structure of the bellows. The reed switch contacts close whenever the magnets pass by, sending a signal to the Arduino controller.
Solenoids are used to pull the accordion pallets to select which notes are played. Bicycle brake cable is used to transfer the pulling motion of the solenoids to the accordion pallet arms. I experimented with a couple different strategies of connecting the brake cable to the pallet arms. I developed some laser-cut clips that wrap around the pallet arm and accept the ball-end of the brake cable. I designed break-away arms on the clips to aid with their installation in the tight spaces between pallet arms.
The clips worked with light tension on the brake cable, but they failed with a heavy tug. The acrylic did not have enough strength in the tiny dimensions that I had to use in the clips and did not fit inbetween some of the pallet arms. I designed another piece that uses the cable itself to wrap around the pallet arm, saving quite a bit of space.
I built a couple of oak brackets to fit over the front of the accordion to align the brake cables and hold the brake cable housing.
The placement of the brake cables translates the order of the accordion pallets to the order of the solenoids.
I adapted a computer power supply to power the windshield wiper motor and the relays that control them. I clipped and insulated the wires that weren't needed, leaving only two yellow 12V wires and two black ground wires exposed from the power supply. The green power wire was permanently connected to a ground wire to keep the power supply on.
I came across this website that describes the use of car windshield wiper motors to animate large Halloween projects:
http://www.scary-terry.com/wipmtr/wipmtr.htm
The windshield wiper motor provides more than enough torque to raise the bellows. In fact, I removed some of the pulleys I had previously installed on the device. With fewer pulleys, less rope has to travel to move the bellows. This makes them much more responsive to the motor movement.
When the bellows are at their greatest extension, the wiper motor must be reversed to allow gravity to squeeze out the air contained within. I used a couple of reed switches to sense when the bellows are fully extended and send a signal to the Arduino board that controls the accordion. One reed switch is attached to each side of the device for redundancy.
Small rare earth magnets were attached to the extension structure of the bellows. The reed switch contacts close whenever the magnets pass by, sending a signal to the Arduino controller.
Solenoids are used to pull the accordion pallets to select which notes are played. Bicycle brake cable is used to transfer the pulling motion of the solenoids to the accordion pallet arms. I experimented with a couple different strategies of connecting the brake cable to the pallet arms. I developed some laser-cut clips that wrap around the pallet arm and accept the ball-end of the brake cable. I designed break-away arms on the clips to aid with their installation in the tight spaces between pallet arms.
The clips worked with light tension on the brake cable, but they failed with a heavy tug. The acrylic did not have enough strength in the tiny dimensions that I had to use in the clips and did not fit inbetween some of the pallet arms. I designed another piece that uses the cable itself to wrap around the pallet arm, saving quite a bit of space.
I built a couple of oak brackets to fit over the front of the accordion to align the brake cables and hold the brake cable housing.
The placement of the brake cables translates the order of the accordion pallets to the order of the solenoids.
I adapted a computer power supply to power the windshield wiper motor and the relays that control them. I clipped and insulated the wires that weren't needed, leaving only two yellow 12V wires and two black ground wires exposed from the power supply. The green power wire was permanently connected to a ground wire to keep the power supply on.
Thursday, March 22, 2007
It's Alive!
The [Deep|Remote] Listening Device is now operational. I've spent quite a bit of time detailing the connections from the accordion pallets (the covers that open to allow air to pass through the reeds) to the solenoids. I used bicycle brake cable and housing to pull each rod that operates the accordion pallets.
The pallets close using the force of the springs located under the accordion piano keys. Some additional springs were added for a few of the solenoids to make up for weak and broken springs under the piano keys.
I programmed the device to have a start-up sequence to test the solenoids and bellows. The sequence cycles each solenoid in rapid succession, moves the bellows to their lowest point, and then plays a couple of chords. I posted a few videos on YouTube:
Sunday, March 18, 2007
Save $$$ by Learning to Repair Your Own Accordion!
While working on controlling the pallets arms of the accordion, I broke off a couple of the pallets. The pallets hold on to the pallet arms with a special mixture of beeswax, resin and mineral oil. It is common for the wax to dry out and crack in older accordions. To repair the pallets, I reactivated the old wax mixture by adding some fresh beeswax to it and melting it with a heat gun.
As the mixture cooled, I applied it to the pallet and then secured it to the pallet arm.
The repaired pallet is shown in the bottom centre of the following photo:
As the mixture cooled, I applied it to the pallet and then secured it to the pallet arm.
The repaired pallet is shown in the bottom centre of the following photo:
Saturday, February 24, 2007
Remote Observation
I've been investigating how to connect my Deep Listening Device to our given site of Point Douglas (6.7 miles or 10.7 kilometres from the University). I thought about different ways of communicating between sites including telephone and the Internet, but radio seemed to be the most accessible and feasible for this project. I looked into Citizen's Band (CB) radio since I knew it had a transmission range close to what I need. I borrowed a couple of old CB radios to start playing around with. I set up one radio in studio and could not hear any activity on any of the 40 CB channels. I suspect CB radio is still in use, but that it has been largely abandoned in favour of cell phones.
I'm working towards the creation of a device to be located in Point Douglas to watch the passing trains and transmit data about their motion to the [Deep|Remote] Listening Device which would translate the data into a strange music. I started prototyping a device using an Arduino board to read a photocell and transmit a signal over CB radio whenever there is an abrupt change in light that would indicate motion past the photocell. Most CB radios have a connector for an external microphone that contains all the basic control lines for the radio. I modified a cable taken from an old AT keyboard that happens to match the 5-pin DIN connector on the CB radio.
To transmit with the CB radio, the radio's TX line must be connected to the ground line, causing any signal applied to audio line to be transmitted. (This is the basic operation when using the CB radio's external microphone; pressing the button on the microphone causes any sound picked up by the microphone to be transmitted over the radio). I attached a 2N3904 transistor to one digital pin on the Arduino board to control the TX line. Tones are sent out from another digital pin on the Arduino.
This picture shows the Arduino connected to the portable CB radio. In the middle is the photocell (shielded by the blue straw) connected through the coil of green and black wire. This is the code I developed for the Arduino to send a sequence of two tones over the CB radio whenever there is a substantial change of light detected by the photocell:
Motion_Bleep.txt
You can hear the tones produced over the CB radio by clicking the following link:
Two_tone.mp3
I'm working towards the creation of a device to be located in Point Douglas to watch the passing trains and transmit data about their motion to the [Deep|Remote] Listening Device which would translate the data into a strange music. I started prototyping a device using an Arduino board to read a photocell and transmit a signal over CB radio whenever there is an abrupt change in light that would indicate motion past the photocell. Most CB radios have a connector for an external microphone that contains all the basic control lines for the radio. I modified a cable taken from an old AT keyboard that happens to match the 5-pin DIN connector on the CB radio.
To transmit with the CB radio, the radio's TX line must be connected to the ground line, causing any signal applied to audio line to be transmitted. (This is the basic operation when using the CB radio's external microphone; pressing the button on the microphone causes any sound picked up by the microphone to be transmitted over the radio). I attached a 2N3904 transistor to one digital pin on the Arduino board to control the TX line. Tones are sent out from another digital pin on the Arduino.
This picture shows the Arduino connected to the portable CB radio. In the middle is the photocell (shielded by the blue straw) connected through the coil of green and black wire. This is the code I developed for the Arduino to send a sequence of two tones over the CB radio whenever there is a substantial change of light detected by the photocell:
Motion_Bleep.txt
You can hear the tones produced over the CB radio by clicking the following link:
Two_tone.mp3
Subscribe to:
Posts (Atom)