Functional Profile:

UFPToutdoorLuminairController

(Preliminary)

Overview

This document provides a basic overview of the UFPToutdoorLuminairController profile currently being finalized by one of the LonMark task groups. This document does not cover every aspect of this profile, but rather provides information on the basic function / content of the network variables and configuration properties and how they might apply to an outdoor LED fixture.

Example Usage

The UFPToutdoorLuminairController Object resides on the driver / generator or an associated interface and communicates via a LonWorks network. The following objects are expected to be present on a device implementing this profile.

  • Node Object (implementing the optional nviTimeSet)
  • Outdoor Luminair Controller Object

Object Details

Figure 2. Object Details

Table 1. Outdoor Luminair Controller Network Variable Type Details

NV #
(M/O)* / Variable
Name / In
Out / SNVT
Name (index) / Principal NV / Polled / Service Type** / Description
5(m) / nviDevRequest / In / UNVT_dev_request / N / N / - / Device request
3(m) / nviEnergy / In / SNVT_elec_ksh_l / N / N / - / Electric energy
1(m) / nviLampValue / In / SNVT_switch / N / N / - / Luminair state and value (set)
2(m) / nviRunHours / In / UNVT_time_hour_32 / N / N / - / Run time hours (set)
10(m) / nvoEnvironment / Out / UNVT_environment / N / N / Unsp. / Outdoor lighting controller environment variables
6(m) / nvoLampValue / Out / SNVT_switch / N / N / Unsp. / Luminair state and value (current)
9(m) / nvoStatus / Out / UNVT_lamp_status / N / N / Unsp. / Luminair operation status (alarm conditions)

*M = mandatory, O = optional.

Table 2. Outdoor Luminair Controller Configuration Property Details

M / O* / SCPT Name
NV Name
Type or SNVT / SCPT
Index / Associated NVs ** / Description
M / cpBkupSchedule
UCPTbkupSchedule / Functional Block / Fallback switching schedule
M / cpDeviceOutSelection
UCPTdeviceOutSelection / nviLampValue / Sets the hardware output mode where applicable
M / cpDimLowLevelLight
SCPTminSetpoint / 53 / Functional Block / Minimum low light level set point
M / cpDimMaxVolt
UCPTdimMaxVolt / Functional Block / Maximum dim voltage
M / cpEnableStatusMsg
UCPTenableStatusMsg / Functional Block / Mask defining which outputs are enabled for reporting via nvoStatus
M / cpGPSLocation
UCPTgpsLoc / Functional Block / GPS location of the fixture
M / cpLampPower
UCPTlampPower (SNVT_power) / Functional Block / Maximum power of the lamp
M / cpMaxSendTime
SCPTmaxSendTime / 49 / Functional Block / Maximum time between output variable transmissions (heart beat)
M / cpMinSendTime
SCPTminSendTime / 52 / Functional Block / Minimum time between output variable transmissions (throttle)
M / cpOLCLimits
UCPTOLCLimits / nvoStatus / Defines the limits for the alarms / events reported via nvoStatus
M / cpWarmUpTime
UCPTWarmUpTime (SNVT_time_sec) / Functional Block / Lamp warm up time

* M = mandatory, O = optional

** List of NVs to which this configuration property applies.

Mandatory Network Variables

Device Request – Input

network input UNVT_dev_request nviDevRequest

text("%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", command,command_ex1,command_ex2[0],command_ex2[1],data[0],data[1],data[2],data[3],data[4],data[5],data[6],data[7],data[8],data[9],data[10],data[11],data[12],data[13],data[14],data[15],data[16],data[17],data[18],data[19],data[20],data[21],data[22],data[23],data[24],data[25],data[26]);

This input network variable is intended to provide a generic means for transferring a command via the UFPToutdoorLuminairController to a host controller running on an associated generator / ballast controller. For an integrated design, this input would likely go unused. The LonMark task group is in the process of defining some generic commands that would leverage this input. There have apparently been discussions about using this bi-directionally.

Valid Range

Field Name / Data Type / Array/Size / Description / Units
command / unsigned short
command_ex1 / unsigned short
command_ex2 / unsigned short / Y – 2
data / unsigned short / Y - 27
Limits / Scales (A*10^B*(raw + C))
Field Name / Min / Max / Invalid / A / B / C / Scaling Notes
command / 0 / 255 / 1 / 0 / 0
command_ex1 / 0 / 255 / 1 / 0 / 0
command_ex2 / 0 / 255 / 1 / 0 / 0
data / 0 / 255 / 1 / 0 / 0

Default Value

Unspecified.

Configuration Considerations

There are no configuration properties associated with this variable.

Service Type

Not applicable

Energy – Input

network input SNVT_elec_kwh_l nviEnergy

text("%f");

This input network variable is used to set or assign the accumulated energy consumption for the object. There may be cases where the accumulated energy needs to be set or reset. As an example, if a lamp driver was replaced that contained the node, but the lamp itself was not replaced, the accumulated energy consumption might need to be restored as part of the change out. Likewise, a re-lamping might create the need to reset the accumulated energy consumption. This input provides the means to set this value. Note that the accumulated energy must be stored in a non-volatile fashion by the device.

Valid Range

* M = mandatory, C = Conditional, O = Optional

Limits / Scales (A*10^B*(raw + C))
Field Name / Min / Max / Invalid / A / B / C / Scaling Notes
-2147483648 / 2147483647 / 2147483647 / 1 / -1 / 0 / Kilo-Watt Hrs (0.1 resolution)

Default Value

Unspecified.

Configuration Considerations

There are no configuration properties associated with this variable.

Service Type

Not applicable

Lamp Value – Input

network input SNVT_switch nviLampValue

text("%f %d", value, state);

This input network variable provides a means for setting the lamp state (on / off) as well as its value (dimming level).

Valid Range

Field Name / Data Type / Array/Size / Description / Units
value / unsigned short / % of full level
state / signed short / 0 – off, 1 - on / state code
Limits / Scales (A*10^B*(raw + C))
Field Name / Min / Max / Invalid / A / B / C / Scaling Notes
value / 0 / 200 / 5 / -1 / 0 / 0 – 100%, 0.5 Incr.
state / -1 / 1 / -1 / 1 / 0 / 0

Default Value

Unspecified.

Configuration Considerations

cpDeviceOutSelection (see below)

Service Type

Not applicable

Run Hours – Input

network input UNVT_time_hour_32 nviRunHours

text("%d");

This input network variable is used to set or assign the accumulated running hours for the object. There may be cases where the accumulated run time needs to be set or reset. As an example, if a lamp driver was replaced that contained the node, but the lamp itself was not replaced, the accumulated run time might need to be restored as part of the change out. Likewise, a re-lamping might create the need to reset the accumulated run time. This input provides the means to set this value. Note that the accumulated run time hours must be stored in a non-volatile fashion by the device.

Valid Range

Field Name / Data Type / Array/Size / Description / Units
signed quad / hours
Limits / Scales (A*10^B*(raw + C))
Field Name / Min / Max / Invalid / A / B / C / Scaling Notes
-2147483648 / 2147483647 / 1 / 0 / 0

Default Value

Unspecified.

Configuration Considerations

There are no configuration properties associated with this variable.

Service Type

Not applicable

Environment– Output

network output UNVT_environment nvoEnvironment

text("%d %d %d %d %d %d %d %d %d", lampCurrent,lampVoltage,supplyVoltage,supplyCurrent,ballastTemp,power,powerFactor,runHours,energy);

This output network variable is used to report the current environment variables / conditions associated with the operation of the lighting controller. A device implementing this profile that cannot provide data for all of the fields listed in this structure should use the appropriate “invalid value” for the field in question as a means of identifying an unsupported field.

Valid Range

Field Name / Data Type / Array/Size / Description / Units
lampCurrent / UNVT_amp_ac_mil / Electrical current (lamp) / milliamperes
lampVoltage / SNVT_volt_ac / Lamp voltage / volts ac
supplyVoltage / SNVT_volt_ac / Supply voltage / volts ac
supplyCurrent / UNVT_amp_ac_mil / Electrical current (supply) / milliamperes
ballastTemp / SNVT_temp_p / Temperature / degrees Celsius
power / SNVT_power / Power / Watts
powerFactor / SNVT_pwr_fact / Power factor / Multiplier
runHours / UNVT_time_hour_32 / Cumulative run time (hours) / Hours
energy / SNVT_elec_kwh_l / Cumulative energy / kilo-Watt-hours

* M = mandatory, C = Conditional, O = Optional

Limits / Scales (A*10^B*(raw + C))
Field Name / Min / Max / Invalid / A / B / C / Scaling Notes
lampCurrent / 0 / 65535 / 65535 / 1 / 0 / 0
lampVoltage / 0 / 65535 / 65535 / 1 / 0 / 0
supplyVoltage / 0 / 65535 / 65535 / 1 / 0 / 0
supplyCurrent / 0 / 65535 / 65535 / 1 / 0 / 0
ballastTemp / -27317 / 32767 / 32767 / 1 / -2 / 0 / 1/100th Deg. C.
power / 0 / 65535 / 1 / -1 / 0 / 1/10th Watt
powerFactor / -20000 / 20000 / 5 / -5 / 0
runHours / -2147483648 / 2147483647 / 1 / 0 / 0
energy / -2147483648 / 2147483647 / 2147483647 / 1 / -1 / 0 / 1/10th Res.

Default Value

Unspecified.

Configuration Considerations

There are no configuration properties explicitly associated with this variable.Note that the cpMaxSendTime and cpMinSendTime properties could be used to control the update rate of nvoEnvironment, however in a stand-alone network management mode with the SmartServer, the SmartServer regulates the polling rate.

Service Type

Unspecified

Lamp Value – Output

network output SNVT_switch nvoLampValue

text("%f %d", value, state);

This output network variable reports the lamp state (on / off) as well as its value (light level).

Valid Range

Field Name / Data Type / Array/Size / Description / Units
Value / unsigned short / % of full level
State / signed short / 0 – off, 1 - on / state code
Limits / Scales (A*10^B*(raw + C))
Field Name / Min / Max / Invalid / A / B / C / Scaling Notes
value / 0 / 200 / 5 / -1 / 0 / 0 – 100%, 0.5 Incr.
state / -1 / 1 / -1 / 1 / 0 / 0

Default Value

Unspecified.

Configuration Considerations

There are no configuration properties explicitly associated with this variable. Note that the cpMaxSendTime and cpMinSendTime properties could be used to control the update rate of nvoLampValue, however in a stand-alone network management mode with the SmartServer, the SmartServer regulates the polling rate.

Service Type

Unspecified

Status– Output

network output UNVT_lamp_status nvoStatus

text("%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", time_old.year,time_old.month,time_old.day,time_old.hour,time_old.minute,time_old.second,alarm_old.lamp_current_high,alarm_old.lamp_current_low,alarm_old.main_current_high,alarm_old.main_current_low,alarm_old.lamp_voltage_high,alarm_old.lamp_voltage_low,alarm_old.main_voltage_high,alarm_old.main_voltage_low,alarm_old.powerfactor_low,alarm_old.temp_high,alarm_old.power_high,alarm_old.power_low,alarm_old.relay_failure,alarm_old.cap_failure,alarm_old.lamp_failure,alarm_old.ballast_failure,alarm_old.inter_com_failure,alarm_old.exter_com_failure,alarm_old.main_volt_below_spec,alarm_old.lamp_restart_count,alarm_old.fading_ready,alarm_old.bit_22_res,alarm_old.bit_23_res,alarm_old.bit_24_res,alarm_old.bit_25_res,alarm_old.bit_26_res,alarm_old.bit_27_res,alarm_old.bit_28_res,alarm_old.bit_29_res,alarm_old.bit_30_res,alarm_old.bit_31_res,alarm_old.bit_32_res,alarm_old.bit_33_res,alarm_old.bit_34_res,alarm_old.bit_35_res,alarm_old.bit_36_res,alarm_old.bit_37_res,alarm_old.bit_38_res,alarm_old.bit_39_res,alarm_old.bit_40_res,time_new.year,time_new.month,time_new.day,time_new.hour,time_new.minute,time_new.second,alarm_new.lamp_current_high,alarm_new.lamp_current_low,alarm_new.main_current_high,alarm_new.main_current_low,alarm_new.lamp_voltage_high,alarm_new.lamp_voltage_low,alarm_new.main_voltage_high,alarm_new.main_voltage_low,alarm_new.powerfactor_low,alarm_new.temp_high,alarm_new.power_high,alarm_new.power_low,alarm_new.relay_failure,alarm_new.cap_failure,alarm_new.lamp_failure,alarm_new.ballast_failure,alarm_new.inter_com_failure,alarm_new.exter_com_failure,alarm_new.main_volt_below_spec,alarm_new.lamp_restart_count,alarm_new.fading_ready,alarm_new.bit_22_res,alarm_new.bit_23_res,alarm_new.bit_24_res,alarm_new.bit_25_res,alarm_new.bit_26_res,alarm_new.bit_27_res,alarm_new.bit_28_res,alarm_new.bit_29_res,alarm_new.bit_30_res,alarm_new.bit_31_res,alarm_new.bit_32_res,alarm_new.bit_33_res,alarm_new.bit_34_res,alarm_new.bit_35_res,alarm_new.bit_36_res,alarm_new.bit_37_res,alarm_new.bit_38_res,alarm_new.bit_39_res,alarm_new.bit_40_res);

This output network variable is used to report on any alarm conditions associated with the operation of the lighting controller. Both the current and last alarm / event condition state is reported via this output.

Valid Range

Field Name / Data Type / Description / Units
time_old / SNVT_time_stamp / Time stamp of previous alarm data / Year, Month, Day..
old.lamp_current_high / unsigned:1 / Lamp current high
old.lamp_current_low / unsigned:1 / Lamp current low
old.main_current_high / unsigned:1 / Main current high
old.main_current_low / unsigned:1 / Main current low
old.lamp_voltage_high / unsigned:1 / Lamp voltage high
old.lamp_voltage_low / unsigned:1 / Lamp voltage low
old.main_voltage_high / unsigned:1 / Main voltage high
old.main_voltage_low / unsigned:1 / Main voltage low
old.powerfactor_low / unsigned:1
old.temp_high / unsigned:1
old.power_high / unsigned:1
old.power_low / unsigned:1
old.relay_failure / unsigned:1
old.cap_failure / unsigned:1
old.lamp_failure / unsigned:1
old.ballast_failure / unsigned:1
old.inter_com_failure / unsigned:1
old.exter_com_failure / unsigned:1
old.main_volt_below_spec / unsigned:1
old.lamp_restart_count / unsigned:1
old.fading_ready / unsigned:1
old.bit_22-40_res / unsigned:19 / Future use
time_new / SNVT_time_stamp / Time stamp of latest alarm data / Year, Month, Day..
new.lamp_current_high / unsigned:1 / Lamp current high
new.lamp_current_low / unsigned:1 / Lamp current low
new.main_current_high / unsigned:1 / Main current high
new.main_current_low / unsigned:1 / Main current low
new.lamp_voltage_high / unsigned:1 / Lamp voltage high
new.lamp_voltage_low / unsigned:1 / Lamp voltage low
new.main_voltage_high / unsigned:1 / Main voltage high
new.main_voltage_low / unsigned:1 / Main voltage low
new.powerfactor_low / unsigned:1
new.temp_high / unsigned:1
new.power_high / unsigned:1
new.power_low / unsigned:1
new.relay_failure / unsigned:1
new.cap_failure / unsigned:1
new.lamp_failure / unsigned:1
new.ballast_failure / unsigned:1
new.inter_com_failure / unsigned:1
new.exter_com_failure / unsigned:1
new.main_volt_below_spec / unsigned:1
new.lamp_restart_count / unsigned:1
new.fading_ready / unsigned:1
new.bit_22-40_res / unsigned:19 / Future use

Default Value

Unspecified.

Configuration Considerations

cpEnableStatusMsg – Mask cp that determines which output events / conditions are enabled for reporting via nvoStatus.

cpOLCLimits – Defines the threshold limits for the various alarm conditions reported by nvoStatus.

Service Type

Unspecified

Mandatory Configuration Properties

Back Up Schedule

Applies to Functional BlockcpBkupSchedule

UCPTbkupSchedule

typedef struct {unsigned short hour_on; unsigned short minute_on; unsigned short hour_off; unsigned short minute_off;} UCPTbkupSchedule;

This configuration property defines a fallback switching schedule for the controller to use in the event that communications with the segment controller is lost.

Device Output Selection

Applies to nviLampValuecpDeviceOutSelection

UCPTdeviceOutSelection

enumeration type, dev_out_select_t, text(“%m”)

This configuration property defines the hardware output mode for the controller if more than one output control option is available. For a controller integrated into the generator / driver, this cp would likely go unused.

Valid Range

Tag name / Member / Value / Comment
dev_out_select_t / MEM_NUL / -1
Member_0 / 0
Relay / 1
ECO_Mode / 2
Volt_1to_10 / 3
DALI / 4

Default Value

Member_0

Dim Low Level

Applies to Functional Block cpDimLowLevelLight

SCPTminSetpointReference SNVT_lev_percent

This configuration property sets the minimum allowed light level for dimming operation.

Default Value

00*2 (0.000)

Maximum Dimming Voltage

Applies to Functional BlockcpDimMaxVolt

UCPTdimMaxVoltReference SNVT_volt

This configuration property sets the maximum dimming voltage, i.e. the voltage level that equates to 100% light output.

Default Value

00*2

Alarm Condition Enable

Applies to Functional BlockcpEnableStatusMsg

UCPTenableStatusMsg

typedef struct {unsigned lamp_current_high:1; unsigned lamp_current_low:1; unsigned main_current_high:1; unsigned main_current_low:1; unsigned lamp_voltage_high:1; unsigned lamp_voltage_low:1; unsigned main_voltage_high:1; unsigned main_voltage_low:1; unsigned power_factor_low:1; unsigned temp_high:1; unsigned power_high:1; unsigned power_low:1; unsigned relay_failure:1; unsigned cap_failure:1; unsigned lamp_failure:1; unsigned ballast_failure:1; unsigned inter_com_failure:1; unsigned exter_com_failure:1; unsigned main_volt_below_spec:1; unsigned lamp_restart_count:1; unsigned fading_ready:1; unsigned bit_22_res:1 … unsigned bit_40_res:1;} UCPTenableStatusMsg;

This configuration property identifies the available alarm conditions that can be output from nvoStatus, which are enabled for reporting on the controller. This “mask” cp regulates the list of potential alarm conditions the controller can output.

Default Value

00*5

GPS Location

Applies to Functional BlockcpGPSLocation

UCPTgpsLocReference UNVT_gps_loc

typedef struct {struct longitude{signed short degrees; signed quad minutes;}; struct latitude{signed short degrees; signed quad minutes;}; flooat elevation;} UNVT_gps_loc;

This configuration property sets the GPS location of the asset.

Default Value

00*15

Maximum Lamp Power

Applies to Functional BlockcpLampPower

UCPTLampPowerReference SNVT_power

This configuration property specifies the maximum power of the lamp associated with this controller.

Default Value

00*2

Maximum Send Time

Applies to Functional BlockcpMaxSendTime

SCPTmaxSendTimeReference SNVT_time_sec

This configuration property defines the maximum period of time (heartbeat) allowed between successive transmissions of the controllers key outputs. Note that in a stand-alone network management mode with the SmartServer, the SmartServer regulates the polling rate (master / slave), so this cp would be unused.

Minimum Send Time

Applies to Functional BlockcpMinSendTime

SCPTminSendTimeReference SNVT_time_sec

This configuration property defines the minimum period of time (throttle) required between successive transmissions of the controllers key outputs. Note that in a stand-alone network management mode with the SmartServer, the SmartServer regulates the polling rate (master / slave), so this cp would be unused.

Alarm Condition Limits

Applies to nvoStatuscpOLCLimits

UCPTOLCLimits

typedef struct {UNVT_amp_ac_mil lamp_current_high; UNVT_amp_ac_mil lamp_current_low; UNVT_amp_ac_mil main_current_high; UNVT_amp_ac_mil main_current_low; SNVT_volt_ac lamp_voltage_high; SNVT_volt_ac lamp_voltage_low; SNVT_volt_ac main_voltage_high; SNVT_volt_ac main_voltage_low; SNVT_pwr_fact power_factor_low; SNVT_power power_high; SNVT_power power_low; } UCPTOLCLimits;

This configuration property defines the threshold limit criteria used for reporting the various, enabled alarm conditions using nvoStatus.

Warm Up Time

Applies to Functional BlockcpWarmUpTime

UCPTWarmUpTimeReference SNVT_time_sec

This configuration property defines the warm up time for the lamp / fixture under control.

Additional Considerations

None specified.

UFPToutdoorLuminairController Profile 1