INTRO TO ROBOTIC ART
EMAIL – DADAGEEK
Solid State Relay
- Study robotic design and movement in the context of contemporary ART
- Participate in a standardized workflow that enables efficient methods of prototyping robotic objects for narratives, music, and performance
- Master one or more of the Three Techniques below
- Produce a final work to be exhibited or included in a performance
- Be able to discuss the technology that you developed as well as the conceptual and/or narrative aspects of your piece
- MIDI ON/OFF TO MOTOR/SOLENOID ON/OFF
- MIDI CONTROL CHANGE (CC) TO MOTOR SPEED
- MIDI CONTROL CHANGE OR NOTE ON/OFF TO SERVO POSITION
In each class, we will collectively tackle one of the THREE TECHNIQUES. You are encouraged to both recreate this technique on your own and to expand upon it by making it into small scale ART works. Homework assignments are designed to reinforce your understanding of the current class project and to get you to think beyond problem-solving, design-thinking, and technical engineering. This is a tall order but know that you will not be judged by your efforts and homework does not have to be “perfect”. Assignments are studies intended to challenge your right and left brain’s creative processes and to encourage you to view your work in this class within the context of contemporary art.
- You will be expected to produce an installation or a performance to be presented at the Dadageek Student Show. I encourage you to start brainstorming the direction that you would like to take as soon as possible. I will be checking in with you each week to help you develop your work.
- You will be expected to independently research one or more “Artist Mentors” who use robotics and/or electronics in their work or influences the conceptual components of your work. You will then be able to reference and talk about their work in respect to your final project at the show. The purpose of the “Artist Mentor” is to encourage you react to and engage in a dialog with a historical or contemporary artist. This will help you find a focus and a reference point for your final project and help you talk about the conceptual and contextual aspects of your work in addition to the technology that you developed. I need to know who your mentor is by the end of the second week. You can review the Artist References below for ideas but you are also encouraged to find others.
- There are two parts to each project, the THE FINAL BUILD and the THE FINAL COMPOSITION. Your FINAL BUILD needs to be completed by the the 6TH WEEK of this course so that you have at least one week to compose your movements and/or music.
Attendance and Notes:
You are expected to come prepared to every class in order to learn the skills to produce your final piece. If you miss any class, you will fall behind as each week builds upon the previous week. If for any reason you must miss a class, contact other students to get caught up on materials as soon as possible. Also, in the interest of the whole class, I will not review past weeks material until I have presented the current weeks material and activities. There is a private class Facebook group that you may join if you would like to schedule activities outside of class and if you would like to post issues, accomplishments, or related articles.
The material covered in this class is highly interdisciplinary and will require you to switch modes. We will be talking about electronics and then switching to coding and then switching to software. We will also be discussing design principles and art concepts that can become abstract or open ended.
– How has ART made use of technology in the past? Automata, mechanical music, puppetry, industrialization, and the availability of new materials and processes.
– The History of Robotic Art
– Class Goals and Agenda
– How to develop robotic art
– Communication: Serial, RX, TX, MIDI, Packets, Streaming Data, Bits, PWM, TTL
The difference between Serial MIDI and USB MIDI
Learn to solder – MIDI OUT KIT and TEENSY BOARD
Intro to Teensy LC
– Getting Started!
– Install Teensy Loader application and teensyduino pluggin and Arduino IDE and upload “blink.ino” sketch
Install Ableton or Logic and make sure all of the software above is installed and tested
TOPICS: Design vrs ART, Problem Solving vrs Problem Making, Form following Function, Top Down and Bottom Up Design, Where is the ART and why do we care?
Schematics and signal flow
Reading and understanding schematics and datasheets
ULN TRANSISTOR ARRAYS to the rescue!
Set up circuit below. Make the blink sketch turn a motor on and off using TIP122 Transistor and external power supply
Take time to learn the basics of your DAW and be able to Import and playback one or more audio tracks.
Controlling a motor with a teensy and a power transistor switch
Transistor Switch Schematic
TRANSISTOR ARRAY – ULN2003A (7 channel) ULN2803A (8 channel)
Teensy ULN2803 Breadboard Setup
Timelines, Linear Experiences, Musical Scores, Choreography, Writing, Narrative
The Digital Audio Workstation, Digital Media Timelines
The Teensy’s onboard USB MIDI and Serial Emulator – connect Teensy to DAW directly
Libraries (in C+)
The DAW – Working with Midi and Audio in Logic and Ableton
What are MIDI Tracks and Audio Tracks?
Plotting MIDI with Piano Roll Window
Connecting Controllers and Recording MIDI
Communicating with Teensy through MIDI
MIDI NOTE ON/OFF STUDY
Use a MIDI track from Logic or Ableton to compose a short and simple percussion or movement study with surplus or salvaged motors and/or solenoids using 4 or more notes and transistor outputs
MIDI OUT TO TEENSY LC DIRECTIONS
To get MIDI out from your Ableton (DAW) to the Teensy, follow these steps.
- Copy and paste this code MIDI Out Test into a blank sketch and name it “midi-out-test”
- Make sure that you select Tools/USB Type/MIDI
- Compile and upload the sketch to your Teensy
- Set up your DAW (Ableton) preferences to recognize the Teensy
- Playback MIDI from DAW to the Teensy. Pin 13 should light up each time a note is played from the piano roll. You may use this ABLETON PROJECT EXAMPLE to test your Teensy. Ableton’s PIANO ROLL view should look something like this.
- Notice that all MIDI note on events trigger pin 13 to flash on (HIGH) and all MIDI not off events trigger pin 13 to turn off (LOW).
- Now copy this usbMidi note on/off code into a blank sketch and name it “usbMidi-note-on-off“. Using “switch statements”, this MIDI OUT example is more specific about which notes it will listen to coming from the DAW. Then it uses the DAW’s note on/off messages to trigger “callback functions” in the code embedded in the Teensy which then turns specific pins HIGH and LOW. Notes 60, 61, 62, 63 coming from your DAW trigger output pins 1, 2, 3, 4 on the Teensy. Look at the code to find these numbers. What does “int” mean in the code? What is the “loop”? Make a list of questions to bring to class next week.
- The Ableton example above should work with this sketch after you set your Ableton preferences to recognize the Teensy.
- When you connect LEDs to the output pins 1, 2, 3, 4, they should light to the corresponding notes 60, 61, 62, 63 in the sketch.
MIDI NOTE ON/OFF TO MOTOR ON/OFF STUDY
Expressive Robotic ART
Ramps and Envelops in Digital Media Timelines
Modulation and the Two “Flavors” of PWM
MIDI Control Change Tracks for Modulating Motors and Servos
Control Change and PWM for Fading Lights and Modulating Motor Speed
Use Control Change tracks and Note On/Off tracts to control LEDs and motors
MIDI CC TO LED BRIGHTNESS AND MOTOR SPEED STUDY
Compose a robotic performance using 4 CC tracks and PWM to fade LEDs and modulate the speed of Motors. IDEAS: You can use DC powered toys, radios, tape players, vcrs, cd players, etc by wiring directly into their power terminals. Make a light piece set to music.
MIDI CONTROL CHANGE (CC) FOR MOTOR AND LED BRIGHTNESS MODULATION
SET UP ABLETON TO DRAW CC MESSAGE ENVELOPES
MIDI CC -> PWM -> MOTOR
1. Create a sketch from this code and upload it to the Teensy – usbMidi-cc-pwm example
2. Look at the code to determine what CC message number are being called and what pins are outputting PWM
3. Set up your breadboard Leds to reflect the pin numbers in the code
4. Set up Ableton with more CC tracks for each pin
5. Try using motors instead of Leds. Use the same output circuit that we used for the note on/off and blink example (see image below)
Servos and CC Messages
Non-MIDI programming techniques and sample sketches
Discuss MIDI Servo LIbrary and control servo with CC
MIDI CC -> PWM -> SERVO
Connect servo to power supply and to Teensy
Upload Servo Test Sketch
Review Usb MIDI CC Servo sketch to map the control change (0-127) coming from the DAW to the range of a servo (0-270)
Control two servos with two tracks of MIDI CC messages
Construct a small light weight robotic sculpture out of cardboard, paper, matte board, bass wood, balsa, or any light material. Attach servos to moving parts on the piece and synch their movements to an audio file in your DAW using MIDI cc messages.
Ideas: An automated slide rule reveals messages or images through windows, attach flashlights to servos to paint light on wall, make a body that moves to music or sound, make a painting or mark-making machine that abstractly interprets the audio, a mechanized shadow puppet, more ideas to come…
FINAL BUILD DUE
Final Critique and Show
Be prepared to discuss your final piece. We are all learning from each other. The more you share, the more we all learn.
What Do I Bring to Class?
Teensy LC Microcontroller
USB Mini Cable, MIDI Cables (if you are doing serial midi)
All the Electronic Components that I Use in This Class
Laptop with Arduino IDE and Teens Loader Installed
Laptop with MIDI software installed or MIDI controller
EXTRA SUPPLIES – Volt Meter, Wire Strippers, Flush Cutters, Solder
Teensy LC Robot Output Board
Sparkfun – Great kits and parts specific to microcontroller dev, 3d printers, maker stuff
Adafruit – Great kits and parts specific to microcontroller dev, 3d printers, maker stuff
All Electronics – Surplus parts, kits and parts specific to microcontroller dev, 3d printers, maker stuff
Electronic Goldmine – Surplus parts
Software and References