IO Board
"IO Board" project aim is to build a powerful multi-purpose input/output board
which could be used in a number of computer driven experiments. It is a part
of a bigger project, "labcenter", which goal is to build remote, web-controlled
laboratories for digital electronics and automation technology courses.
We hope the projects will be versatile and powerful enough to let people from
other academic fields build laboratories based on out work.
The board will be built around a powerful ColdFire V2 microcontroller.
Goals:
- easy reprogramming: available MCU BDM and EzPort pins; preinstalled USB bootloader
- possibility to control the device using either USB or ethernet
- available source files of all developement stages (schematics, layouts, gerbers, c source files, and more)
- open and well documented USB and ethernet protocols
- small embedded www server allowing to perform some simple tasks
NOTE: "IO Board" is just a working name and may change in future.
Table of contents
- Basic structure
- Board block interconnections
- Board elements
- Their functions and purpose
- Current progress
- work we've done so far
- Contact information
- who and how to contact
Basic structure
Board elements
- microcontroller (MCU)
-
Main component, controls ALL the devices on the board.
- Ethernet
-
Used to communicate with the board at high speed and control
all of its functions.
- USB
-
Used to communicate with the board and control some or all of its
functions. May also be used to reflash the microcontroller.
- JTAG
-
Direct access to JTAG pins on the MCU helps with electric debugging.
- BDM
-
Background debugger may be used for reflashing the MCU in case of
usb bootloader missing. Should also be helpful in code debugging.
- LED display
-
Indicates most important events and errors.
- Voltage monitor
-
Monitors internal board voltages and temperatures.
- Current monitor
-
Monitors current and power of board main power supply.
- UART
-
RS-232 or RS-485 ports used to control other devices.
- CAN
-
Isolated CAN port. Bus power lines may be used as transceiver
voltage input. Isolated (external) 5v power source may also be used
for the transceiver and to distribute the power over CAN.
- I2C
-
Isolated I2C master. May be used to control most I2C devices.
Reference voltage (3.3v or 5v) must be connected. Contains pull-up
resistors.
- CPLD
-
Used as JTAG master for external devices and as fast parallel port.
JTAG input is directly wired to MCU which allows easy reflashing.
Any functionality may be programmed as needed.
- CLK
-
Clock output. May be used as synchronization clock for other boards.
- SPI
-
Isolated I2C master. May be used to control most SPI devices.
Reference voltage (3.3v or 5v) must be connected. The device must
have active-low Chip Select input.
- SD card
-
May be used to write usage logs or data acquisition values.
- DAC
-
SPI-controlled digital to analog converter provides high quality analog
output.
- PWM
-
PWM provides low quality analog voltage output. May be configured
as 0..5v, -5..5v, 0..10v or -10..10v.
- PWM 4..20
-
PWM controlled current limiter. May be used to simulate industrial
4..20 device.
- analog input
-
Medium quality analog input with selectable gain. Allows 0..5v, -5..5v,
0..10v and -10..10v signals.
- ohm-meter
-
May be used to connect 2-wire or 4-wire PT100 temperature resistor.
MCU-selectable current also allows connection of other resistors, like
other PTCs or NTCs.
- industrial I/O
-
Provides up to 16 industrial-compatible (12v/24v) outputs and allows up to
16 inputs.
Current progress
- Component list
- [LIST]
- [TABLE]
- [TEXT]
- Schematics
- [PDF]
- [ZIP]
- Electrical documentation
- N/A
- Software source code
- N/A
- Software documentation
- N/A
- Board and firmware developer
- Name: Przemysław Iskra
- email: sparky@pld-linux.org
- Labcenter software developer
- (information hidden)
- Coordinator
- (information hidden)