L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

23
LONMARK® Profiles - What Works Alex Chervet Alex Chervet Echelon Corp. Echelon Corp.

Transcript of L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

Page 1: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

LONMARK® Profiles - What Works

Alex ChervetAlex ChervetEchelon Corp.Echelon Corp.

Page 2: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

2

Agenda

• How to build a closed proprietary system

• Why be closed?

• How to build an open system

• Why be open?

• Using open standards in a closed or proprietary fashion

Page 3: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

3

Agenda (cont.)

• Using open standards in an open, interoperable fashion

• Network Variables

• Creating and publishing open interfaces

• Open interfaces are not enough– Being a good network citizen

Page 4: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

4

How to build a closed system

• Use special hardware– “Homebrew” bit-shifting interface

• Use standard hardware in a non-standard way– RS-232 running at 5500 baud

• Create your own protocol (e.g. AlexTalk)

• Use a standard protocol as the transport but create your own unique message format– Application messages instead of NVs

Page 5: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

5

Why be closed?

• It allows you to make simplifying assumptions about your system– My system will only ever have 10 devices, 9 of the

devices always talk back to the master, …

• Closed systems make it more difficult for your customers to choose one of your competitors as a future supplier or for service needs

Page 6: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

6

How to build an open system

• Don’t do the things listed on slide #4

• Publish your interface

• Don’t use system specific definitions– Up / Down / Pass / Nudge chime

• Don’t force people to adopt your semantics– Use LONMARK definitions, not your own. Allows a

single set of semantics to apply across industries

Page 7: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

7

Why be open?• Your customers are demanding it!

• Using open systems allows you and your customers to assemble “best of breed” products into the final design

• Open systems provide a platform that is easily leveraged into the next generation of your design– The software interface that was supplied to

customer “A” is the same interface that will be asked for by customer “B”.

Page 8: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

8

Why be open? (cont.)• Open systems offer multiple sources of supply

and greater economies of scale - which lead to lower costs

• You can react quickly to customer needs by utilizing off-the-shelf products– May require a business shift from pure

manufacturing to a combination of manufacturing and system integration

– Only manufacture parts/components where you add significant value - focus on your core competencies

Page 9: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

9

Watch out for these people!

• Using open systems in a closed or proprietary fashion– Usually motivated by the belief that they can

“lock-in” their customers

• Example– A manufacture might claim they are “open”

because they use LonWorks as their network protocol. However, if the content of the LonTalk packets is unpublished or controlled by a single vendor, the system is not truly open

Page 10: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

10

What LONMARK is about

• Using open standards in a truly open, interoperableinteroperable fashion– Although the concepts set forth by LONMARK

could be applied to any networking technology, LONMARK profiles assume an IEEE-1473L implementation

TM

Page 11: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

11

Command Vs. Informationbased systems

Page 12: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

12

“Command-Based” systems

Motion Detector Lamp

ON/OFF Command

• The decision to turn the lamp ON or OFF is made in the motion detector. This system applies a master/slave approach to control. The master (motion detector) commands everything in the system.

Page 13: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

13

Adding a device is difficult!

Motion Detector

Lamp

ON/OFF Command

Alarm Bell

• If the motion detector is commanding everything in the system, adding a new device (the Alarm Bell) requires a software change in the motion detector. The motion detector now has to send commands to the alarm horn as well as the light!

Sound Alarm Command

Alarm

Page 14: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

14

“Information-Based” systems

Key Pad

Key Code

Control Knob

0% - 100%

Motion Detector

Motion

Lamp

Brightness

Room Occupied

Alarm Bell• Sensors “publish” information,

and actuators “subscribe” to the information which interests them!

Feedback

AlarmArm / Disarm

Intruder

Page 15: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

15

“Information-Based” systems

Key Pad

Control Knob

0% - 100%

Motion Detector

Motion

Lamp

Brightness

Room Occupied

Alarm Bell

Key Code

• The details of how devices are connected or “bound” together are abstracted by LonWorks. Binding can occur at any time without affecting the application program in the device!

Feedback

AlarmArm / Disarm

Intruder

Page 16: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

16

Defining an open software interface

Page 17: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

17

Use Network Variables

SNVT_angle

SNVT_lev_cont

SNVT_speed

SNVT_temp

Network Variables (Semantics defined by LONMARK)

Temperature, Degrees Celsius, -274..6271, 0.1 degree

Speed, Meters/Sec, 0 - 6553, 0.1 m/s

Continuous Level, Percent, 0 - 100%, 0.5%

Phase/Rotation, Radians, 0 - 65, 0.001 rads

• Network Variables provide semantic information about their data

• Connections can be defined at any time

Page 18: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

18

23

Room Temp

Set Point

Temp

Set Point

Temp Sensor(Made in USA)

Setpoint Display(Made in Canada)

Boiler System(Made in Europe)

Engineering units are defined

Page 19: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

19

Object Name & Number

MandatoryNetwork Variables

OptionalNetwork Variables

Manufacturer SpecificNetwork Variables

ConfigurationProperties

Hardware Outputs

Hardware Inputs

Config Props

LONMARK functional profiles

Page 20: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

20

Sample Profile“Chime”

Page 21: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

21

Chime - proposed elevator profile

SNVT_Chime

nviChime

SNVT_lev_cont

nviChimeVol

Configuration Properties

MandatoryNetworkVariables

OptionalNetworkVariables

Object Type 4

Audible Signal

“The chime object interacts with the elevator control system or other LONMARK node…”

“The chime can output one of five signals: fast tone for floor passing, one tone for up, two tones for down, nudging, fire service.”

Page 22: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

22

The Code

network input SNVT_chime nviChime;

typedef enum{ up = 1, down = 2, pass = 3, nudge = 4, fireserv = 5, enable = 6, disable = 7}(S)NVT_Chime;

network input SNVT_lev_cont nviChimeVol;

Proposed SNVT contains elevator specificProposed SNVT contains elevator specificenumerations!enumerations!

Enable/Disable has nothing to do with the Enable/Disable has nothing to do with the actual tone. This should be handled actual tone. This should be handled using a third NV.using a third NV.

Possibly okay, but why not use SNVT_Sound_db, it was Possibly okay, but why not use SNVT_Sound_db, it was meant to define audio volume.meant to define audio volume.

Page 23: L ON M ARK ® Profiles - What Works Alex Chervet Echelon Corp.

23

Configuration Properties

Mandatory NVs

Optional NVs

Object Type 4

Chime - a better solution

SNVT_Switch nviPlay

Configuration Properties

Audible Signal

SNVT_sound_db nviVol

SNVT_Switch nvEnable

SNVT_Freq nviFreq

SNVT_Millisecond nviDuration

SNVT_Switch nvEnableFb