Architecture for Control Networks: Difference between revisions

Content deleted Content added
m Add link to Wi-Fi, fix plural grammar, add Acacian reference, fix some links
Bender the Bot (talk | contribs)
m Implementations: HTTP to HTTPS for SourceForge
 
(3 intermediate revisions by 2 users not shown)
Line 44:
===Device Description Language===
 
Device Description Language (DDL) allows a machine parsable description of the interface and capabilities of any device to be defined.<ref name="EngArts">{{Cite web|url=http://www.engarts.com/ddl/index.html|title=Device Description Language}}</ref> This description can be interpreted by a controller which may then automatically configure itself for controlling that device. The description not only provides the address and property mapping information which is necessary for DMP to operate but it can also contain a huge amount of information on the functionality, capabilities and semantics of the device in an extensible format which allows a controller to extract the features it needs for its specific context while skipping over information which is not relevant to its needs.<ref>{{Cite web |url=http://powers.media.mit.edu/wiki/upload/E1-17ACN2006DDL.pdf |title=ArchivedANSI copyE1.17-2006 Architecture for Control Networks |access-date=2014-11-17 Device Description Language (DDL) |archive-url=https://web.archive.org/web/20141129101447/http://powers.media.mit.edu/wiki/upload/E1-17ACN2006DDL.pdf |archive-date=2014-11-29 |url-status=dead }}</ref>
 
DDL is an [[XML]] based language and descriptions are contained in a small number of [[XML]] documents. In normal ACN systems the description for a device may be downloaded from the device itself. However, descriptions may also be distributed in other ways (such as internet download) and since a description is valid for all devices of the same type, controllers can typically maintain a cache of descriptions for devices they commonly encounter.
Line 65:
==Implementations==
 
An early [[Open-source software|open-source]] implementation of ACN was released as OpenACN<ref>{{cite web |url=httphttps://sourceforge.net/projects/openacn/ |title=OpenACN |accessdate=2011-08-25}}</ref> and is available on [[SourceForge]]. This has been ported to a wide range of platforms, but it is limited in its scope and does not implement any DDL support.
 
There is another open source ACN project<ref>{{cite web|url=https://github.com/HakanL/ACN|title=Architecture for Control Networks project home page|website=[[GitHub]] |accessdate=2022-03-09}}</ref> which is implemented in [[C Sharp (programming language)|C#]]. This aims to provide a full [[managed code]] implementation and includes code for several other related protocols.
 
An full implementation entitled Acacian<ref>{{cite web|url=https://github.com/hoyes/acacian|title=Acacian project on GitHub|website=[[GitHub]] |accessdate=2022-05-05}}</ref> in [[C (programming language)|C]], which includes parsing of DDL descriptions to generate DMP structures was released under the [[Mozilla Public Licence]] in 2014
 
E1.31 (Streaming DMX over ACN) is supported on [[Linux]] ([[ARM architecture|ARM]], [[Intel 80386|i386]], [[x86-64]]) and [[Macintosh]] ([[PowerPC]]; i386, x86-64) by the Open Lighting Architecture.<ref>{{cite web |url=http://opendmx.net/index.php/OLA |title=Open Lighting Architecture |accessdate=2012-01-05}}</ref>