usb controlled io module jon knoll dave wolowicz sponsored by: dr. kin li a 499a project

7
USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

Upload: armani-simones

Post on 01-Apr-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

USB Controlled IO Module

Jon KnollDave Wolowicz

Sponsored by: Dr. Kin Li

A 499a Project

Page 2: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

ObjectiveTo create a low cost automation control using the USB

Protocol. This I/O module is to be a replacement for the Festo EasyPort D16.

The following design requirements were created at the beginning of the project:

• 16 Digital Inputs & 16 Digital Outputs (24V)• Pin compatible with Festo EasyPort D16• Must fit in the same enclosure as the Festo EasyPort D16• Input/Output Indicator Lights• Plug and Play USB Interface• Optical isolation between USB and I/O Ports• 5A loading capability per output• Low Cost Pricing

Page 3: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

Circuit DesignSteps:1. Decide on the main architecture

based on the design requirements

2. Design each subsystem, and calculated the requirements for each component.

3. Select components, ensure each component meets our specifications (and also ensure that we are using the component within its specification).

4. Build and test prototypes of each subsystem to verify the design. Modify the design where necessary.

5. Draw the schematic diagram.

Our Design:• Our board is designed from

scratch. It is designed to be simple and cheap yet reliable.

• Our circuit uses a PIC 16C745 for USB communications. It also writes to the outputs and reads the inputs.

• Each output uses a high current MOSFET

• All inputs/outputs are optically isolated from the computer.

Page 4: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

The USB ProtocolA USB device carries all

of its critical information with it such as:

• Type of device• Country of origin• Developing company• Product identification• Size and type of

communications• Required power

consumption

Plug the device in

Computer asks the device“what are you?”

The Device tells thecomputer what it is and how

it will communicate

Computerchecks for a driver to

communicate with

Computer loads one copy ofthe driver for the device

Computer communicatesfreely to the device

Computer prompts userfor a driver

Driver found

No driver found

User inputs driver

The flowchart shows how the USB protocol registers a device and sets up the communications for it. (enumeration)

Page 5: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

SoftwareTo communicate with the

device we used an Human Interface Device (HID) driver. The main reasons for using an HID driver are:

• Comes standard with Windows

• Did not need to write a kernel level driver from scratch

• Supports nesting and collections

• Ease of programming The flowchart shows how data is transferred from the application through the drivers and to the device

I/O Module

Page 6: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

Make the Printed Circuit BoardSteps:

1. Make the component “footprints” (images of the components on the PCB, to show where the pins go).

2. Measure critical placement components, the components that need exact placement (like the LEDs and the connectors).

3. Lay out the rest of the components by functionality and asthetics.

4. Manually route the important traces (traces - strips of copper that connect two points electrically)

5. Autoroute the rest of the traces.

6. Double check everything, particularly hole sizes, and perform an electrical rule check.

7. Email the files to a PCB manufacturer

8. Populate the board (ie. put the components on it

Page 7: USB Controlled IO Module Jon Knoll Dave Wolowicz Sponsored by: Dr. Kin Li A 499a Project

Marketing

The device is built to be a low cost solution. Applications for the module include:

• Low cost basic PLC replacement

• Computer interface for laboratories

• Process simulator

• Home automation control box

• I/O for home hobbyists