Lighting Manager

From ETC Public Wiki
Jump to: navigation, search


Overview

The Lighting Manager controls the various lighting fixtures throughout the bridge hallway.


Operation

Stations - Bridge0 or The Brain Box

Location - the lighting folder

Started by - the Bridge Manager on the Brain Box

Manual Start - on Brain Box run C:\Bridge\lighting\run_LightingController.bat


Software

Written in Python using the Panda3D libraries. Has the following components

  • run_LightingController.bat => bat file to manualy start the program
  • main_LightingController.py => main Bridge Manager code base
  • config_lighting.py => important config data, dmx data per fixture
  • DMX_Helper.py => module that communicates with the Entec box ( sends data to the dmx world )
  • config_Ports.py => list of OSC ports for network communications, located in C:\Bridge\sb-system
  • OSCmanager.py => open ports as receivers and senders for network communications, located in C:\Bridge\sb-system
  • process.py => window controls using the windows api, located in C:\Bridge\sb-system


Features

Manage Resources Communicate with the dmx world through the Entec box. Define where light fixtures exist within the dmx world. Control the light fixtures via sending data to the dmx world. Through the config_lighting.py file define:

  • Each fixtures starting address
  • Groups - giving a name to a series of light fixtures that cover a certain portion of the bridge
  • Cues - a single configuration of all the lights on the bridge
    • Name - the name a cue has been given - must be unique
    • Note - descriptive info that helps the human lighting designer
    • Lights - a list of groups that are to be used in this cue
    • Color - a list of color triplets that coincide with each group in Lights
    • Function - how to transition into this cue
    • Duration - how long to take to make the transition
  • Show - a sequence of cues that are displayed to create an over all effect
    • Name - the name a show has been given - must be unique
    • Note - descriptive info that helps the human lighting designer
    • Cues - a list of cue names
    • Delay - a list of wait times before advancing to the next cue, each time coincides with each cue in Cues

The possible Functions that can be used to transition between cues are:

  • allOn - for the given group of lights set the absolute power, all others turn off
  • addOn - for the given group of lights set the absolute power, all others stay as is
  • blackout - all lights are set to an absolute power of 0
  • fade - for the given group of lights, fade from current color to color over duration, all others fade to off
  • addFade - for the given group of lights, fade from current color to color over duration, all others stay as is
  • chase - in sequence, save the current color, set it to color, hold it on for delay, set it back
  • TODO cycle - for the given list of groups and colors, cycle the groups through the set of colors holding for duration
  • TODO strobe - for the given group of lights, set it to color, activate the lights strobe effect with duration as speed(0-255), all others turn off
  • TODO reveal - in sequence, fade each group from current color to color over duration, delay, goto next
  • TODO scroll - for a variable list of colors, scroll groups through the colors, fade for duration, hold for delay, cycle for full effect - must have two of the three


Cycle Cycle the light fixtures in the hallway through a sequence of cues that has been defined in config_lighting.py.


Lighting Requests Using OSC Networking Communications, Receiver LIGHTING is created to listen for lighting requests from the Bridge Manager or Content.

  • Show - Begin a show, a sequence of light cues, that has been defined in config_lighting.py.
  • Cue - Switch to a particular light cue, that has been defined in config_lighting.py.
  • Operations - Either start or stop the display of the Cycle.


Configurable Parameters

Unless there is a change in the physical lighting fixtures - fixtures removed, replaced, added, or rearranged - then nothing in the LIGHTS INFO section should be changed. If there is a change, the START_ADDRS list must be updated to reflex the change. The number(data stored) in the list is the fixtures starting dmx address. The order of the list is important in reference to where the fixture is located within the bridge hallway - see the hardware section on how the fixtures are physically located. The ALL Group needs to be updated and any other Groups that may be effected. The number within the group list is the index of the fixture within the START_ADDRS list. NUM_CHANNELS needs to be updated - remember that a dmx world can only have 512 channels.


What parameters can be adjusted in the config_lighting.py file

  • num_port: int - the com port number that the Entec box is conneted to -1 ( see Note 1 )
  • CUE : list of dictionaries - add a dictionary to the list to create a new cue ( see Note 2 )
  • CYCLE_CUES : list of strings - a list of cues to cycle through as normal operations
  • TIME_DELAY : int - how long to wait ( in seconds ) before checking to see if it is time to shutdown
  • SHOW : list of dictionaries - add a dictionary to the list to create a new show ( see Note 3 )


Possible needs to change these

  • A Hardware change or fault has caused the Entec box to be connect to a different port number
  • Add a new Cue
  • Add a new Show
  • Change what Cues are used within the Cycle feature


Interface

The Lighting Controller runs on the Brain Box with a very simple UI.

LightingController.png

Shows

Buttons across the top of the window

Use these buttons to start a particular show Note - long show names causes bigger buttons that can overlap with other buttons

Controls

Buttons AllWhite and BlackOut

Use these buttons to either make all the lights full white or turned completely off

Buttons Select, Prev, Next Light#:

Use these buttons to select a single light fixture by its index in START_ADDRS. Then use the color sliders to set the color of that fixture.

Buttons Select, Prev, Next Cue:

Use these buttons to set the lights to a particular cue by name

Buttons stopCycle, startCycle

Use these buttons to either start or stop the Cycle feature

Groups

Button across the bottom half of the window

Use these buttons to select a particular group of light fixtures. Then use the color sliders to set the color of these fixtures.

Color Sliders

Sliders Red, Green, Blue

Use these sliders to adjust the color of the selected fixture or fixtures.

Keyboard Shortcuts

Enter to call function Blackout - turn all light fixtures off

Esc to exit

Notes

1. How to find the com port the Entec box is connected to =================>>>> TODO

2. How to add a cue =================>>>> TODO

3. How to add a show =================>>>> TODO