dmx512 programmable theater lighting controller jeff sand and kris kopel advisor: dr. don schertz...

21
DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Post on 21-Dec-2015

221 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

DMX512 Programmable Theater Lighting Controller

Jeff Sand

and

Kris Kopel

Advisor: Dr. Don Schertz

May 8, 2001

Page 2: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Outline

• Objectives• Digital Lighting Control Overview• System Block Diagram (Hardware)• Firmware• Software• Results

Page 3: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Objectives

• Generate DMX512 output to control lighting devices

• Enable PC control to change dimmer levels

• Develop USB platform for future use• Write commercial quality firmware,

driver, and windows software• In short, Design a complete marketable

system using a top down approach

Page 4: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Digital Theatrical Lighting

Console

Lights

Lights

Lights

Lights

Dimmers

Dimmers

IntelligentLuminaries

DMX512

Page 5: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

DMX512 Protocol

• United States Institute for Theatre Technology (USITT) standard

• Controls up to 512 dimmers/devices

• Serial and asynchronous bitstream• 250 kbits/s• RS-485 physical implementation• 32 nodes on one chain

Page 6: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

System Block Diagram

Motorola 68376

ControllerPersonal

ComputerInput Blocks

RS485Driver

MAX483

DMX512 Output

USB Transceiver

Philips PDIUSBD12

Page 7: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Microcontroller Interfaces

• Data bus, chip selects, and external IRQ used for USB transceiver

• Queued Serial Module (QSM)– Serial Communication Interface (SCI) for DMX

output– Queued Serial Peripheral Interface (QSPI) for

input blocks

• Internal RAM for data storage• EPROMs for program code• Background Debug Mode (BDM) for

development without a monitor program

Page 8: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Input Block

Serial A/D

MAX148

SerialShift

Register74166

Fader Inputs

Momentary

PushButtons

Out to Controller

QSM Module

QSPI Control Lines

Latch74373

Page 9: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Firmware

• Written in assembly language• Interrupt driven• DMX512 output• Fader/Button data acquisition• USB Communication over data bus• Main program loop for standalone

mode only

Page 10: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

DMX Output Stream

Page 11: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

DMX Output Status?

Last Channel?End Break

DMX Output Status <- Data

DMX Output Status <- Start

DMX Output Status <- Break

DMX Output Status <- Mark

Output Start Code

Output Data Byte

Exit ISR

Start Break

Set Timer

no yes

break datamark start

SCI Interrupt Routine

Page 12: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

QSPI Interrupt RoutineRead/Clear

Status Register

Read all Buttons

Read 8 Faders

Buttons

Faders

Reprogram QSPI for Faders

Reprogram QSPI for Buttons

Increment Chip Selects

Re-Enable QSPI

Exit ISR

Faders or Buttons?

Last Fader Block?

yes

no

Page 13: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

no

Read interrupt register

Bus Reset

Suspend Change

Data Endpoint In

Data Endpoint Out

Exit ISR

Control Endpoint In

Control Endpoint Out

Handle Reset

Handle Change

Data left to send?

no

Send ityes

Read Data into Buffer

Data left to send?

Send it

yes

Set Address

String Descriptor

Get Descriptor

Device Descriptor

Configuration Descriptor

USB Interrupt Routine

Page 14: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Windows Driver

• Windows kernel mode USB driver• Recognizes and initializes device• Registers device with Windows to be

accessed by user applications• Handles reads from/writes to device• Plug n Play and Windows power

management compatible

Page 15: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Windows Device Detection

Page 16: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Windows Software

• Three modes of operation– Direct fader control– Software dimmer “patching”– Programmed lighting queues

• Uses Windows common controls• Uses Windows timers

Page 17: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Windows Software

Page 18: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Results

• Completed DMX512 Output (Hardware and Firmware)– Adjustable number of channels– Proper output frequency

• Completed Input Blocks(Hardware and Firmware)– Buttons, Faders, and control circuitry wire

wrapped onto panel– One master block and two 8 channel scenes– Firmware capacity for 128 faders and buttons

Page 19: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

DMX Output Result

Page 20: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Results

• Wrote a firmware routine for direct external fader control with master control, two scenes, and crossfade

• Implemented USB firmware (all functions necessary for this device)

• Interfaced USB peripheral chip with microcontroller on data bus

• Master power switch

Page 21: DMX512 Programmable Theater Lighting Controller Jeff Sand and Kris Kopel Advisor: Dr. Don Schertz May 8, 2001

Results

• Wrote functional Windows kernel mode driver

• Wrote windows user application– Currently does not properly interface with

driver

• Tested complete unit with DMX light and it worked perfectly

• We plan to test the device in the Bradley theater in the near future