Course Notes, 17 Feb, 2022

How can we move things in a helpful, accessible way?

Why do things move?  How can we express emotion?

American Sign Language (ASL) is not English as we speak English, or like they speak in books.  (The wiki entry goes in to deep linguistic details.)

Emotional, artistic expression is done solely through movement.  These examples have audio for people who can’t read ASL:

ASL poetry Sign off Finals – “drop it like its hot”

Cardi B, Bodak Yellow ASL Interpretation

From “Hamilton:  Can you sign as fast as Daveed Diggs can rap? “Guns and Ships“.  “Alexander Hamilton” by a performance group with correct costumes.

ASL in entertainment

Troy Kotsur, a deaf actor, was hired to play a Tusken Raider and create their sign language.

Expression through artistic grammars

Bill Shannon has invented a new vocabulary for dance performed with canes.

Demo Using transistors and diodes

  • rotate a DC motor
  • use a solenoid
  • use a servo

Fritzing sketch, compressed with gzip: arduino-IRLB8721-simple.fzz

Class Notes, 15 Feb, 2022

Note: Office hours on Tuesday, no Thursday

Intro to Electricity and Power

Start with example using light and power

100w incandescent bulb

23w LED bulb

120v 20a electrical circuit

wattage — what does it really mean?  Is a 100W incandescent bulb brighter than a 23W LED?

Compute amps based on wattage and 120v power.

Same brightness but different amounts of power, meaning LEDs are more efficient:

100W incandescent bulb ~1A

24W LED bulb ~0.2A

 

How things move

Think about power in the physical world:

voltage => weight

amps => speed

I weigh 85 kilos, how “dangerous” am I if I bump in to you while I’m walking?  While I’m running?

Is voltage dangerous or is amperage dangerous?

Bicycles vs. cars. Hit by a car or a bike at 10mph, which is worse? Is it really voltage or amps?

Handheld 50 KW stun gun.  500 times as strong as strong as a 100W light bulb.  Why doesn’t it kill people?

Think about volts vs. amps.  Where does the power come from?

Mine uses two 9V batteries, the ones you use in consumer electronics.   50KW is more like 50KV at 1 Amp, or 100Kv at 0.5 Amps.

Where we get power

A/C wall power to drive power supplies (PSUs).

DC power from a PSU, from 5V to 12V, we use 6V in class.

USB power converted by Arduinos or other devices

Arduino pins only have a tiny amount of power: 5V at 20 mA (milliamp).

How motors work

How to determine power requirements

How to drive servos vs. DC motors

Spring-loaded solenoids that require constant power to stay open/closed

How do you lock a motor and prevent it from turning?

What happens if you spin a DC motor?  It’s now a DC generator and could fry your Arduino.  We “fix” this using diodes in the circuits.

For moving things, use basic physics

  • gears — FAQ on 3d printing gears
  • levers — drive a lever with a solenoid, transfer short movement to long
  • pulleys – drive with DC motors or stepper

A great guide for animated mechanisms:  http://507movements.com/index02.html

Reading/Watching Assignment

“The Secret Life of” was a British TV series by Tim Hunkin.  He now has a Youtube channel and a new series, “The Secret Life of Components“.  Each of the eight episodes is about 45 minutes long.  Pick the one you know the least about, watch it, and post comments here or in Looking Outward

 

 

 

 

 

Assignment 5: smooth and parse data then display a result

Take physical input over time from sensor(s), smooth and parse the data in way to make it usable/accessible.

You can “fake” sensors for safety.  If you want to make a “smoke detector” detect the relative humidity and note significant changes (like from taking a shower) as if they were dangerous levels of smoke.

Interaction has emotional meaning.  Can you create an emotional data feed?  An emotional output?

Due by midnight, Monday, 14 Feb, 2022

Class Notes, 10 Feb 2022

Class 8: 10 Feb

Going forward, verify that your camera is not set to “HD” in Zoom.  I disabled this tonight and things went much better than expected.

Correction for previous lecture!  You do use Serial.print() and Serial.write() to send info to p5.js.  When you’re doing this, you can’t use Serial methods for “printf debugging”.

Types of Input

Using sound / music as an example:

  • monophonic: wind instruments, voice.  Easy to detect pitch/volume.

polyphonic: keyboards, pianos, organs, stringed instruments.  Hard to detect pitch/volume of a single note, but easy to detect volume of a collection of instruments.

Anthropomorphic inputs

respond to human state/condition:  blood pressure, galvanic skin response, breath rate, pulse rate.

Visual interpretation of secondary movements: eye twitch, touching your face, blinking

Tracking “rapid eye movement” when eyes are closed, like REM when you’re asleep is used in PTSD therapy EMDR. https://en.wikipedia.org/wiki/Eye_movement_desensitization_and_reprocessing.  This is a recently developed form of therapy and treatment for PTSD and requires trained human therapists.

Alternatively, you can make art out it:  http://www.flong.com/archive/projects/optoisolator/index.html

SparkFun’s biometric sensors:  https://www.sparkfun.com/categories/146

More kinetic output

There is a lot of work in this area to provide accessibility for people with limited vision or blind people.  Please watch all of these, we didn’t have time to show them all in class.

Accessibility and HCI

In 1968, Doug Englebart demonstrated the first “workstation”.  It’s a long watch but I think at least the first half will give you a lot of ideas on how to pitch a novel technological concept.  The important bit about accessibility   starts about 30 minutes in when they show the interface. https://www.youtube.com/watch?v=yJDv-zdhzMY

Using this workstation requires sight, hearing, and functioning hands/fingers/feet.

Accessibility vs. Inclusion

What makes something accessible?  Is Universal Design also accessibility?

Inclusion ==> inviting, making someone want to participate. How do you invite someone to provide input / direction?

Are 30mm arcade buttons are accessible? Interrupt or constant? Convex or concave? If you want to use Universal Design, how do you decide how big the button should be and where it’s located?

There’s a wide variety of arcade push buttons.  Are controls like buttons the wrong answer?  Is a better way to collect input?

Physical interaction with temperature

There are some serious things to consider when working with temperature.  Basically, “what happens if this breaks, has bugs, or completely fails?”  Can someone be injured?

Maybe you need temperature control in your project? Adam Savage made 2001:Space Odyssey suits for Comic-Con that required a costume cooling vest.  He actually made two, the other was for Astronaut Chris Hadfield(!) who provides good feedback.  This is another one to watch all the way through, there’s a lot of design/fabrication skills shown off.

There’s also a commercial alternative for performers.

Coaching vs. grading

Think  about coaching, providing good feedback and encouragement to take a positive action.

Example: sports trainer that monitors your HR, BP, breathing rate, and hydration and knows your training course.  It encourages you to do better instead of punishing you for not doing enough.

Example: music “coach” that helps you learn to perform music. Watches your body and helps you correct form/posture.  Reminds you that you are always performing, even when you’re just practicing a scale or an etude.

Alice Miller’s “For Your Own Good“, a criticism arguing that we replace the pedagogy of punishment  with support for learning, using the German pedagogy that gave rise to support of fascism as one study

Assignment 5 has requirements in its own post.

 

Class Notes, 8 Feb 2022

Class recording check your email for the pass code.

Kinetics Introduction

When we’re working with kinetics it’s important to remember:

  • size of physical control vs. input
  • size of physical control vs. output

Tactile controls are great for fine control, refinement, or when we need detailed feedback.  They an also be used for coarse controls:  on/off switches, radio buttons.

Controls can be stylistic or skeumorphic.   Why does a Starfleet vessel have touchscreens (LCARS) everywhere but the warp engines are driven by a 20th century ship’s throttle?

 

Mix mechanical and virtual controls where appropriate

Mechanical controls are better for some uses, though they can’t as easily serve multiple functions. Non-mechanical controls, like touch-screen buttons, are easier to change into other controls but don’t offer the same kind of haptic feedback, making them impossible to identify without looking at them and creating questions about whether they’ve been actuated. Design interfaces with an appropriate combination that best fits the various uses and characteristics.

Types of kinetic output

  • vibration
  • thumps, pokes
  • can we use temperature? something like peltier boards?
  • symbols: Braille, history of Braille and printed shapes of letters for the blind in early books
  • Braille readers today

Inputs for kinetic

One of the problems with kinetic inputs is errors/noise in the data.

One tool is basic stats, looking at the standard deviation helps us filter data.  If you have a temperature sensor for your office that occasionally returns temps below freezing or above boiling, what do you do with that data?

Another tool is smoothing and filtering incoming data

We’re talking about data over time, that gets in to the idea of languages:

  • signal encodings like Morse code.  People have “accents” in how they generate Morse code by hand, WWI and WWII radio monitors learned who they were listening to.  “That’s Hans, he always radios from western German between midnight and 4 am.”
  • pattern recognition: what does walk feel like?  Run?  What do crying and   laughing sound like relative to speech?
  • earthquake pattern recognition
  • meaning generated by content that changes over time, poetry

Haptic/touch vs. objects moving in space

How is touching a person different than moving an object?

Person presses a button vs. wind from a heating vent spinning a fan sensor?

Touch can be wrapped in a robotic device to convey emotion: Paro (wiki) trade show demo.

Mini exercise for Looking Out

Find some examples of data over time to use in accessibility.  No weather, no stock prices, will explain why on Thu.

 

 

Assignment 4: Interaction with p5.js and Arduino

Create accessibility using an Arduino, sensors, p5.js, and a screen.

The context is you’re making something accessible or usable. We’re still in the early days so this can be rather abstract or a proof of concept.

Two parts to the assignment which can be implemented as two different sets of sketches.  If you can do both in one set of sketches, that’s great.

Use Arduino inputs to display something in a p5.js sketch.  A very simple example is a switch on the Arduino that detects a door being opened, and the Arduino asks the p5.js script to go from dark to light.

Use a p5.js sketch interract to make something happen on the Arduino: turn LEDs on/off, spin a motor, etc.  Imagine p5.js is a touch-screen and you’re making things happen across the room.

Due Monday, 7 Feb 2022, 11:59 pm.  We will discuss on Tuesday.

Class notes 1 Feb, p5.js example

Hi,

I’ve asked for replacement Teensy Arduinos, I’m not sure if they will be here before class on Thu.

Please work on getting p5.js talking to your Arduino.  I have mine working on Win10 without NPM.  Here’s simple sketches for p5.js and Arduino.  Remember that you have to disconnect p5.serialconnect before you can upload and Arduino sketch.  On your browser (I use firefox), you might need to shift-reload the p5.js sketch to get it working again.

example-20220201.tar.gz