New%20Human%20Computer%20Interfaces - PowerPoint PPT Presentation

About This Presentation
Title:

New%20Human%20Computer%20Interfaces

Description:

View the exercise projects. Problems and Difficulties? What Have You Learned? ... Roller switch. Mercury/Tilt switch. Magnetic/Reed switch ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0
Slides: 32
Provided by: amn8
Category:

less

Transcript and Presenter's Notes

Title: New%20Human%20Computer%20Interfaces


1
New Human Computer Interfaces
Class 5 May 9 2006
  • Amnon Dekel
  • HUJI CSE, Spring 2006

2
On the Menu
  • Group Exercise Review
  • Serial Port
  • Board2Board
  • Board2PC
  • PC2Board
  • Some more sensors
  • Changing the world Actuators
  • Projects

3
Exercise Review
  • View the exercise projects
  • Problems and Difficulties?
  • What Have You Learned?

4
Serial Communications
  • The OpenBoard can communicated with other devices
    in the world using the Serial Communications
    Protocol
  • You can use this to have a board Send data to
    another board and receive data from another
    board.
  • You can also use this to have the board
    communicate with a workstation (Why?)

5
Board to Board
  • Call soft-serial-on once at the beginning of the
    program.
  • Sending Values
  • Sending is done from Pin C0.
  • the command
  • send1 value i.e. send1 100
  • Receiving Values
  • You can receive on 4 ports B0, B1, B2, B3
  • To receive you need to do 2 things
  • check if a new value has been received on the
    pin.
  • newin1? will check B0
  • (newin2? will check B1, newin3? will check B2,
    newin4? will check B3).
  • The code
  • loop if newin1? do something with in1
  • Oren comments to use in1 best to set it into a
    different variable, like
  • settemp in1 if temp 100 do something else

6
Board to PC
  • Use the regular programming cable configuration
  • Sending to the PC
  • Use the send command (not send1). Anything sent
    this way will be sent to the PC serial port.
  • send value
  • Reading the data on the PC
  • Make sure the PC is in fact receiving the data.
    Use a terminal program for this (like Hyperterm)
  • If all is well- write a program (in Java, C,
    whatever you like) to read the serial port.
  • Sending data to the Board from the PC
  • You use the following primitives in your code on
    the board
  • enable-recc (to enable receiving of serial
    data)
  • recc? (check if a value is waiting in the
    serial buffer)
  • recc (the value itself, so you can set into
    another variable)
  • To send serial data to the board, use the send lt8
    bit integergt command from the programming
    environment.
  • To send serial data from a different application
    on your PC, it should work just by sending
    numbers to the serial line, so enable the serial
    line and send an integer.

7
Some More About Sensors
8
Types of Input
Switches
Rocker switch
Push button
Slide switch
Toggle switch
9
Sensitive Switches
Roller switch
Hair trigger/whisker switch
Magnetic/Reed switch
Mercury/Tilt switch
10
Analog Sensors
Force Sensitive Resistor (FSR)
Pressure sensors
11
Analog Sensors
Photocell
Temperature Sensor/Thermistor
12
And more
And more Capacitance sensors Piezoelectric
sensors
Accelerometers
Flex Sensor
More info ITP Sensor Workshop Report
13
Changing the World Actuators
14
Examples
15
Actuators
  • Pneumatic
  • Air Pressure causing movement
  • Hydraulic
  • Liquid Pressure causing movement
  • Electronic
  • Electro-magnetic movement
  • Motors (Kinetic)
  • Speakers (Audio)
  • Lights (Visual)

More Info
16
Motors
  • Linear vs. Rotary movement
  • Torque
  • Gear

17
Selecting a Motors
  • Speed (RPM)
  • Movement mechanics
  • Controlling the Position
  • Feedback about the position
  • How much weight can it carry
  • Torque
  • How much power does it need
  • Price

18
Selecting a Motors
  • Speed (RPM)
  • Movement mechanics
  • Controlling the Position
  • Feedback about the position
  • How much weight can it carry
  • Torque
  • How much power does it need
  • Price

1. The moment of a force the measure of a
force's tendency to produce torsion and rotation
about an axis, equal to the vector product of
the radius vector from the axis of rotation to
the point of application of the force and the
force vector. 2. A turning or twisting force.
19
Types of Motors
Stepper
DC
DC servo
20
Motors
  • DC Motor
  • Cheap.
  • Very easy to connect
  • Minimum control
  • Turns 360 degrees.
  • Can add components for more control
  • Speed change the voltage using a POT
  • Direction change the polarity
  • Position cant! ? Add an H-Bridge circuit

21
Motors
  • DC Servo
  • Expensive
  • Very easy to connect
  • Includes all components
  • Turns 90 degrees to each side
  • Full control
  • Speed change the voltage
  • Position Needs CHECKING

Waiting for answer from Oren
22
Controlling a Servo
  • DC Servo - Controlling the position
  • They rotate 0 to 180 degrees depending on the
    pulsewidth. About 1.5 sec to move 180 degrees.
  • The DC Servo takes a pulse of between 1-2 ms
    every 20 ms.
  • A pulse of 1 ms will turn the motor to 0 degrees
    1.5 MS will turn to 90 degrees, 2 ms will turn it
    to 180 degrees
  • To keep a servo in its current position pulse it
    with the same pulse width every 18-20 ms to keep
    it there.

23
Motors
  • Stepper
  • Cheap
  • Usually 12V
  • Hard to connect
  • Need extra components
  • Turns 360 degrees.
  • Can stay still in one position
  • Full control
  • Position
  • Speed

24
Controlling Motors
  • We want to control a few elements
  • Speed
  • Strength
  • Direction
  • Position

25
Controlling Motors
  • We want to control a few elements
  • Speed ? power
  • Strength ? Current
  • Direction ? current direction/Pulse
  • Position ? Pulse

26
Controlling Motors
  • Controlling the position

DC Motor
BS1
Controller ??? (H-Bridge)
PWM
????Feedback
Encoder
27
Controlling Motors
  • Using PWM to control the position
  • For each motor we know the RPM in X Volt, how
    many rounds per minute.
  • From this info we can calculate how many degrees
    a pulse moves in a certain time.
  • When accuracy is important inertia should be
    taken into account (and gear to balance it)

28
Where to get motors?
?????? ??????
?????? ????????
?????? ??????????
29
PAUSE
  • What have we been dealing with so far?

30
Controlling the world?
?Sensing the world
Vision
Video
SOUND
Pressure
Analog Output
Controlling 220V world
Digital Input
Computing
Change
Analog INPUT
Output to the PC
Digital Output
Communications
Position
MOVEMENT (Motors)
Movement
Audio
Temperature
31
Projects
  • Whats a good project?
  • Process
  • Milestones
  • Presentations

32
Whats a Good Project
  • Explores interesting, and preferably, novel
    scenarios
  • Shows interesting use of the technology
  • Exhibits a working prototype for at least one
    main part of the scenario.
  • Explains how it fits into the wider scenario.
  • Includes good documentation
  • Project explanation, process, problems, code,
    possible improvements
  • Project Poster

33
Project
  • If we have time
  • Class Discussion of Projects
  • Home Work
  • Prepare a Project Proposal
  • Intro What problem am I trying to solve
  • Research (what exists)
  • Concept
  • Technology
  • Milestones (7 weeks)
Write a Comment
User Comments (0)
About PowerShow.com