INTRO TO ROBOTIC ART
EMAIL – DADAGEEK
GITHUB CODE

Terms

Arduino Platform
IDE
Breadboard
Breakout Board
Teensy
Sketch
Library
Microcontroller
Datasheet
Pins
USB
Serial
Serial Emulator
RX
TX
Transistor
Mosfet
Solid State Relay
LED
Wattage
Amperage
Power Supply
Processing
MIDI
DAW
Solenoid
Servo
PWM
Frequency
Note
Control Change
Piano Roll
Timeline

Goals:

  1. Study robotic design and movement in the context of contemporary ART
  2. Participate in a standardized workflow that enables efficient methods of prototyping robotic objects for narratives, music, and performance
  3. Master one or more of the Three Techniques below
  4. Produce a final work to be exhibited or included in a performance
  5. Be able to discuss the technology that you developed as well as the conceptual and/or narrative aspects of your piece

Three Techniques:

  1. MIDI ON/OFF TO MOTOR/SOLENOID ON/OFF
  2. MIDI CONTROL CHANGE (CC) TO MOTOR SPEED
  3. MIDI CONTROL CHANGE OR NOTE ON/OFF TO SERVO POSITION

Homework:

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.

Final Project:

  1. 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.
  2. 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.
  3. 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.

Week 1:

DISCUSSION:
– 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
Prototyping
Power supplies
Transistor switches

CLASSWORK:
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

HOMEWORK:
Install Ableton or Logic and make sure all of the software above is installed and tested

Serial Midi and Usb Midi Flow Diagram

Week 2:

DISCUSSION:
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?
Prototyping
Schematics and signal flow
Power supplies
Transistor switches
Reading and understanding schematics and datasheets
ULN TRANSISTOR ARRAYS

CLASSWORK:
Set up circuit below. Make the blink sketch turn a motor on and off using TIP122 Transistor and external power supply

HOMEWORK:
Take time to learn the basics of your DAW and be able to Import and playback one or more audio tracks.

Breadboard Connections
breadboard connections

Controlling a motor with a teensy and a power transistor switch

Transistor Switch Schematic

Transistor Switch Schematic

TRANSISTOR ARRAY – ULN2003A (7 channel) ULN2803A (8 channel)

Teensy ULN2803 Breadboard Setup

Week 3:

DISCUSSION:
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+)
USB MIDI

DEMO:
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

CLASSWORK:
MIDI OUT: Trigger led, solenoid, and motor with MIDI note on and note off messages
DAW -> TEENSY -> 4 LEDs
ABLETON PROJECT EXAMPLE

HOMEWORK:
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

Make an LED Tester!

MIDI OUT TO TEENSY LC DIRECTIONS

To get MIDI out from your Ableton (DAW) to the Teensy, follow these steps.

  1. Copy and paste this code MIDI Out Test into a blank sketch and name it “midi-out-test”
  2. Make sure that you select Tools/USB Type/MIDI
  3. Compile and upload the sketch to your Teensy
  4.  Set up your DAW (Ableton) preferences to recognize the Teensy
  5. 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.
  6. 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).
  7. 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.
  8. The Ableton example above should work with this sketch after you set your Ableton preferences to recognize the Teensy.
  9. 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.

 

Week 4:

REVIEW HOMEWORK:
MIDI NOTE ON/OFF TO MOTOR ON/OFF STUDY

DISCUSSION:
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
Project Consultations

CLASSWORK:
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

HOMEWORK:
MODULATION STUDY

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

PART 1

 

PART 2
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)

Week 5:

REVIEW HOMEWORK:

DISCUSSION:
Servos and CC Messages
Non-MIDI programming techniques and sample sketches
Discuss MIDI Servo LIbrary and control servo with CC

CLASSWORK:
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

HOMEWORK:
ANIMATRONIC EXPERIENCE

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…

Week 6:

FINAL BUILD DUE

Week 7:

COMPOSE

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)
Jumpers
Breadboard
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
Homework
Project Materials
EXTRA SUPPLIES – Volt Meter, Wire Strippers, Flush Cutters, Solder
Teensy LC Robot Output Board
dev board for intro to robotic arts

Resources

Tutorials

Electronic Components

Parts

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

Arduino

Teensy

Software and References

Midi Reference

Virtual MIDI Piano

Note names, MIDI numbers and frequencies

Mechanical Construction

507 Mechanical Movements

Open Modular Hardware

Open Builds

Artists

Trimpin

Logos Foundation

Piere Bastian

Tim Hawkinson

Nic Collins

Shawn Decker

Douglas Repetto

Chico MacMurtrie

Jean Tinguely