[image of digits] Borland C++ Builder - EZIO
Realworld Interfacing with Sensors & Actuators
Analog-to-Digital (AD), Digital-to-Analog (DA) conversions with Data Acquisition Modules (DAQs)

Sensors - Actuators - Encoders - Steppers - Switches
Pneumatics
- Realworld Interfacing - Circuits - Robots

EZIO Board Details
EZIO Reed Relay Board Schematic as Distributed

The examples on this page make use of RS-232 serial communications to drive the EZIO board. It is connected to the COM1 port through a DB9 cable.

In order to switch more power, the ten (10) digital outputs are fed into a reed relay board. In order to maximize any one type of input or output, some or all of the digital outputs may be used to switch banks of sensors or actuators. The wiring and coding grows slightly more complex but no further components are required.

Modifying the Reed Relay Board
EZIO Reed Relay Board Partially Blank Schematic

As it was distributed, the EZIO Reed Relay Board may be simply wired to control 2 uniphase stepper motors, the 4 positive outputs going to the ends of the coil windings on each motor. The center taps are joined and connected to the grounded common. This uses 8 of the 10 digital outputs.

If you change the wiring to connect the 4 positive outputs in parallel to each of the ends of the coil windings on 6 motors, you can select which of the six motors you wish to activate by connecting the center taps through each of the remaining 6 relays to the grounded common. Notice that the reed relays are no longer grouped together, but separated into a bank of 4 (for the positive connections) and 6 (for the grounded commons). See the schematic for 6 motors.

As the relay board was distributed, you can control 10 digital outputs. If you modify the relay board, you can devote 5 digital outputs to 5 actuators, you can use the remaining 5 digital outputs to choose from among a maximum of 5 banks of 5, for a total of 25 digital outputs.

As the relay board was distributed, you can control 2 pulse-width-modulated "analog" outputs. If you modify the relay board you can use the 10 digital outputs to switch a maximum of 10 banks of 2, for a total of 20 pwm outputs.

As the relay board was distributed, you can control 10 digital inputs. If you modify the relay board, you can use the 10 digital outputs to switch a maximum of 10 banks of 10, for a total of 100 digital inputs.

As the relay board was distributed, you can control 8 analog inputs. If you modify the relay board, you can use the 10 digital outputs to switch a maximum of 10 banks of the 8, for a total of 80 analog inputs.

!!! Pressing the "Panic Button" will turn everything OFF !!!

EZIO Board Communications Characteristics.
You can create a 1 kHz tone.

I/O Command Read/Writes
per Second
Seconds
per Read/Write
Output Write 1 Digital Port Alone 1000w/s 1ms
Write 8 Digital Ports as 1 Byte 1000w/s 1ms
Write Pulse-Width-Modulation ?w/s ?ms
Input Read 1 Digital Port Alone ?r/s ?ms
Read 8 Digital Ports as 1 Byte ?r/s ?ms
Read 1 Analog Port as 1 Byte 100r/s 10ms

A USB alternative to EZIO:
B&B Electronics USB Data Acquisition System:
Plug N Play Reading of Up to 16, 000 Samples/Second

XP EZIO Control
This application controls all the common features of the EZIO realworld interface board. It exercises the 10 digital outputs, 10 digital inputs and 8 analog inputs. It does not control the 2 pulse-width -modulated (PWM) outputs or control addressing 7 ports with a singly byte. For more information about the relay board please go to our EZIO page.

 

Function
Wire Color Code
+V - Supply Voltage
Red
0V - Circuit Ground
Black
A - Channel A
Yellow
B - Channel B
Blue

2006 - BEI Encoder
This sensor is capable of monitoring angles as small as 1000 per revolution (3.6d each). It does so by providing two stepped signals A and B, one lagging one quarter cycle behind the other. From this lag the direction may be determined and cycles may be counted to determine the full angle.

Specification Sheets


The Votrax phoneme chart is based upon
the International Phonetic Alphabet (IPA).

VOTRAX
The Votrax, by Federal Screw Works, is one the earliest speech synthesizers. It offered both text-to-speech and phoneme-based synthesis. In this application, ASCII streams are sent out of the COMM1 RS-232 Serial Port at 9600 baud. Votrax was the voice (subsequently modified) of WOPR in the 1983 Sci-Fi movie WAR GAMES. The text may be mangled to refine the pronunciation or phonemes may be inserted into the stream delimited between a "~" and a "?"



The motor is a 2-phase, 1.8 degree, 16 volts, 0.4 amp stepper.
Specifications for similar motors are here and here.

2006 - BF Slot Machine Reel(s)
Did you ever wonder how slot machine payoffs can be adjusted? The answer: They are under computer control, which means the reels themselves are under computer control. Yes, the computer stops the reel where it decides to stop it. The computer makes that decision the instant the lever is pressed. Since players thrive on suspense that is what the software will give them. Is this "entertainment" or "deception?"

Note the two rings of notches on the inside of the reel. There are 22 notches on the outer ring and 1 notch on the inner ring. These are read by the two "U"-shaped optical interruptors at the center of the circuit board.

Wikipedia on "Virtual Reel" technology.

Function
EZIO Connection
EZIO
Address
Wire color code
VCC - Power for logic
+5V for sensors
not
applicable
Red
VMM - Power for motors
Battery +
not
applicable
Yellow
Blue
GND - Ground
GND for sensors
not
applicable
Gray
GND - Ground
Battery -
not
applicable
Gray
Red
22 per Revolution Interruptor (16.36d)
Digital In 1
read 0
Brown
Black
1 per Revolution Interruptor (360d)
Digital In 2
read 1
Brown
White
Motor - Coil 1
Digital Out 1
write 0
Brown
Red
Motor - Coil 2
Digital Out 2
write 1
Brown
Motor Coils 1&2 - I0
Digital Out 3
write 2
Brown
Green
Motor Coils 1&2 - I1
Digital Out 4
write 3
Brown
Yellow


Stepper motor driver chip 3770.
Note: If I0 & I1 are wired together and write 2 & 3 are combined, only 3 digital outputs are needed per motor and the EZIO board can accommodate all 3 reels.

2006 - Theremin
Nanae Kido & Andrew Folick
ALiCE Fall 2006
A two-sensor, two-instrument, record and play back forward or reverse enhancement...

2006 - Theremin
Andrew Liu, Laura Zhang, Ryan Huang & Subby Bhatia. ALiCE Fall 2006
A two-sensor, two-pitch enhancement...

2005 - Theremin
Theremin is an EZIO-controlled interface to the MIDI synthesizer. It uses an EZIO real-world data acquisition module to convert infrared rangefinder data to notes on the keyboard. The raw sensor data and MIDI note are shown and the sensor data is plotted. The speed at which the sensor is interrogated is variable and the user may select any one of some 100 MIDI instruments.

XP EZIO Stepper Accelerator
It is now so fast that we need to put the application to "Sleep()" to slow it down. The EZIO digital outputs may be addressed 1 at-a-time or 7 at-a-time. This requires either 2-bytes-per-step or 12-bytes-per-step (respectively). The optimized 2-byte code is so fast and Sleep() is so slow that there is no effective difference between the 2 and 12-byte protocols if one uses Sleep(). When using the 12-byte protocol, bypassing Sleep() by setting its argument to Sleep(0) is fast enough: two revolutions in one second.

Note: Addressing 7 digital outputs at a time using the 12-bytes-per-step protocol effectively wastes 3 outputs, since only 4 are needed to run the motor.

Make sure to follow the wiring diagram. (Here's a larger one.)
Press RESET if anything goes wrong!

XP EZIO Stepper Ciao
It is now so fast that we need to force the application to "doodle" (Canvas->Pixels[][]) to slow it down. This application choreographs the movements of two figures in a routine called "ciao." Functions move the figures together or in opposite directions and generate gestures. The speed can be set with the "delay" slider. "Whirl" uses a cos() function to smoothly vary the speed.

For the ER1 robot, a short delay is required. The coil sequence is RED, GREEN, BLUE, BLACK. Since the motors are mounted pointed in opposite directions, "together" results in opposite (turn) and "opposite" results in together (forward/backward).

Press RESET if anything goes wrong!

EZIO Jennifer
"Here's looking at you, kid." Two infrared rangefinders capture the viewer's position and Jennifer's gaze. Her gaze can also be directed by the arrow keys. The "end" key stops her from looking around. The "home" key returns her gaze straight ahead. (Don't go crazy with the arrow keys - there is a narrow boundary between the intriguing and the grotesque!)

FAST EZIO Color Mixer
In this application the three additive primaries (red, green and blue) may be mixed using either the slider bars in the application or sensors connected to the EZIO board. Potentiometers are a logical beginning for the three sensors, but any realword analog sensor will do. Sensors must be connected to analog terminals 1 (red), 2 (green) and 3 (blue).

FAST EZIO Botticelli
An example of how you might dynamically alter a .bmp image with external controls. In this instance, the red, green and blue values are either incremented or decremented by +/- 10 depending upon the positions of three potentiometers. There are 16,777,216 different renderings possible and the image may never return to its original appearance. Pots are attached to analog terminals 1-3.

Images: Cestello (at left) Buck Rodgers Pistol
Ziegler Components Abstract Shapes Segregation Shapes

FAST EZIO Quickstep
Inspired by the desire to visualize and analyze human walking and running gaits, this application monitors four switches (good for quadrupeds), knows when their status has changed, and plots their state on the screen. Switches are attached to digital input terminals 1-4.

FAST EZIO Faux Midi
Using the electronics from a cheap toy guitar, this application plays chromatic notes using a simple random algorithm through digital output terminals 1-10. Reed relays are used to change the high/low EZIO signals and contact closures for the toy.

FAST EZIO Joystick
Inspired by a dance floor simulation, this application uses the joystick to move a shape (in violet) across the screen. Depending on where it is, it and the other objects change shape and color. A joystick is the input device on analog terminals 1 and 2, but any realworld analog sensor will do. You may have to play with the numbers to get the desired effect.

EZIO Chimes
The EZIO activates eight solenoids that strike eight notes on a wind chimes. Two infrared sensors pick up the viewer's distance. Each solenoid requires 110VAC and draws .9Amps, consuming 10-watts. The solenoids are switched through reed relays.

 

EZIO Joystick and Infrared Sensor Example
Please make the following connections:

  • RED to +5V for Sensors
  • BLACK to Gnd for Sensors
  • YELLOW IR to A/D 0
  • YELLOW POT to A/D 1
  • GREEN POT to A/D 2

The raw values of the Yellow and Green pots in the Joystick are displayed and used to move the rectangular Shape components. The raw value of the IR Sensor is displayed and used to color the circular Shape component. Double Buffering is used to prevent flicker.

EZIO Digitizer
The EZIO reads the analog out put of two potentiometers. One gives the angle and the other the distance to a stylus. From these the location of the stylus can be computed. The device was originally made by BBN.

Computer Instrument Corporation, Model 206, rotary 1.11 kOhm
potentiometer: 2-Pink, 3-Blue, 4-Green (slide).

Data Equipment Company, Model Rho-Theta, linear 2.68 kOhm potentiometer: 7-Red, 8-Black, 9-Yellow (slide).

 

EZIO Stepper Basics
Some basic functions to operate the VEXTA C4041 stepper motor using the EZIO board. Coils are activated in four phases.

Reset brings the motors into a synchronized position.
Release keeps the battery from draining and the motors cool.
Motor selects one of two steppers.
Forward and Reverse move either motor one step.

Make sure to follow the wiring diagram. (Here's a larger one.)
Press RESET if anything goes wrong!

XP EZIO Stepper IR Scanner
This application uses two stepper motors and an IR sensor to scan a 3d scene and create an image based upon distance. Because of the large step size, the "camera" is equivalent to a wide angle lens. The IR sensor does not provide a linear output with respect to distance. (See the specifications sheet.) Consequently an LUT (Look-Up-Table) has been constructed to provide an appropriate gray-scale mapping. The "image" is a portrait of the author.

Make sure to follow the wiring diagram. (Here's a larger one.)
Press RESET if anything goes wrong!

XP EZIO Stepper Color (RGB) Scanner
This application uses two stepper motors and 3 photo-sensitive resistors (originally with red, green and blue filters) to scan a scene and create an image. Because of the large view of each sighting tube, the "camera" is equivalent to a wide angle out-of-focus lens. Three trackbars are provided to adjust the color balance.

Make sure to follow the wiring diagram. (Here's a larger one.)
Press RESET if anything goes wrong!

EZIO Telephone
This application monitors the switches in the handset "hook" as well as the "dial in use" switch and the dialing pulse. The ringer is also activated using a pager vibrator to shake the striker for the bells. Sound files are played back to the handset receiver depending on the 7-digit number that the user dials. In this case, if the user dials her name her photo appears on the screen. Errors are captured and result in a random sound message being returned.

The sound files must be in the same directory as the executable file.

 

Telephone Connections:
BLACK
EZIO & Audio GND
Ground for all.
YELLOW
EZIO DIGITAL IN 1
hook (normally ???)
GREEN
EZIO DIGITAL IN 2
Dial in Use, cocked to the right (normally ???)
BLUE
EZIO DIGITAL IN 3
Dial Pulsing, released and turning to the left (pulses open)
RED
RELAY OUTPUT 1
Pager Motor
WHITE
AUDIO OUT
Computer Speaker to Handset Receiver
6 Volt Battery Connections:
RED
+
to Relay Board Terminal COM
BLACK
-
to EZIO Terminal GND