NL2021582B1 - METHOD FOR IDENTIFYING MODULES LINKED TO A BUS SYSTEM, AND A BUILDING AUTOMATION SYSTEM - Google Patents

METHOD FOR IDENTIFYING MODULES LINKED TO A BUS SYSTEM, AND A BUILDING AUTOMATION SYSTEM Download PDF

Info

Publication number
NL2021582B1
NL2021582B1 NL2021582A NL2021582A NL2021582B1 NL 2021582 B1 NL2021582 B1 NL 2021582B1 NL 2021582 A NL2021582 A NL 2021582A NL 2021582 A NL2021582 A NL 2021582A NL 2021582 B1 NL2021582 B1 NL 2021582B1
Authority
NL
Netherlands
Prior art keywords
bus
modules
module
address
message
Prior art date
Application number
NL2021582A
Other languages
Dutch (nl)
Other versions
NL2021582A (en
Inventor
Geebelen Leen
Grosemans Michel
Neyens Frank
Original Assignee
Geebelen Leen
Grosemans Michel
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Geebelen Leen, Grosemans Michel filed Critical Geebelen Leen
Publication of NL2021582A publication Critical patent/NL2021582A/en
Application granted granted Critical
Publication of NL2021582B1 publication Critical patent/NL2021582B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0052Assignment of addresses or identifiers to the modules of a bus system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)

Abstract

Een werkwijze (2500) voor het identificeren van een veelheid van modules (D1, D2, D3) die aan een bedrade communicatie—bus gekoppeld zijn en die elk een uniek adres (UA1, UA2, UA3) bevatten, door een GegevensVerzamellVlodule (GV) die eveneens aan de communicatie—bus gekoppeld is, waarbij de 10 werkwijze de volgende stappen omvat: a) het versturen (2501) van een identificatieverzoek door de GV naar de modules (D1-D3) voor het opvragen van hun unieke adressen; b) het ontvangen (2502) van het identificatieverzoek door de modules (D1-D3); c) het succesvol versturen (2510) van een identificatiebericht door de modules (D1—D3) als reactie op het identificatieverzoek, waarbij ieder identificatiebericht het uniek adres van de betreffende module bevat. Een werkwijze voor het 15 configureren en ondervragen van de modules. Een bussysteem, en een gebouwautomatiseringssysteem waarin deze werkwijze wordt gebruikt. Een set van minstens drie interface—modules (GV, D1, D2) die samen deze werkwijze uitvoeren.A method (2500) for identifying a plurality of modules (D1, D2, D3) coupled to a wired communication bus and each containing a unique address (UA1, UA2, UA3) by a Data Collection Module (GV) which is also coupled to the communication bus, the method comprising the steps of: a) sending (2501) an identification request by the GV to the modules (D1-D3) to request their unique addresses; b) receiving (2502) the identification request from the modules (D1-D3); c) successfully sending (2510) an identification message through the modules (D1-D3) in response to the identification request, wherein each identification message contains the unique address of the relevant module. A method for configuring and interrogating the modules. A bus system, and a building automation system in which this method is used. A set of at least three interface modules (GV, D1, D2) that together perform this method.

Description

WERKWIJZE VOOR HET IDENTIFICEREN VAN MODULES GEKOPPELD AAN EEN BUSSYSTEEM, EN EEN GEBOUWAUTOMATISERINGSSYSTEEM

Domein van de uitvinding

De onderhavige uitvinding heeft in het algemeen betrekking op een digitaal bussysteem zoals gebruikt kan worden in een gebouwautomatiseringssysteem. De onderhavige uitvinding heeft meer specifiek betrekking op een werkwijze voor het identificeren van modules gekoppeld aan het bussysteem, en op een werkwijze voor het opvragen van gegevens van één of meerdere modules van het bussysteem, en op een werkwijze voor het toekennen van een busadres aan één of meerdere modules van het bussysteem. De onderhavige uitvinding heeft tevens betrekking op zulk gebouwautomatiseringssysteem, en een set van interface-modules.

Achtergrond van de uitvinding

Gebouwautomatiseringssystemen zijn gekend in de stand der techniek, en kunnen bv. één of meerdere van de volgende deelsystemen omvatten: een verlichtingssysteem, een zonnewerings-systeem, een branddetectiesysteem, een airconditioningsysteem, een verwarmingssysteem, een HVAC-systeem, een parkeergeleidingssysteem, een toegangscontrolesysteem, enz. De deelsystemen kunnen als afzonderlijke systemen geïmplementeerd worden, of als een geïntegreerd systeem.

Verlichtingssystemen met een digitale bus waarbij verlichtingselementen en/of schakelaars en/of dimmers en dergelijke functioneel met elkaar samenwerken, zijn gekend in de stand der techniek. Een zeer bekend bussysteem dat gebruikt wordt voor verlichtingstoepassingen is "DALI". DALI is een acroniem en staat voor "Digital Addressable Lighting Interface" (Engels) of "Digital Addresseerbare Verlichtingsinterface". Het is een internationale norm bedoeld voor de uitwisselbaarheid van dimbare ballasten van verschillende fabrikanten. De DALI-interface is beschreven in standaard IEC 60929 onder bijlage E. Geïnteresseerde lezers niet vertrouwd met DALI, kunnen een eenvoudig begrijpbare introductie vinden in de "DAU manual", uitgegeven door "DALI AG (Digital Addressable Lighting Interface Activity Group) van ZVEI, Division Luminaires", daterend van 2001. DALI heeft als voornaamste voordeel ten opzichte van klassieke verlichtingssystemen met vaste bedrading dat het toeiaat de functionaliteit van het verlichtingssysteem te herconfigureren zonder de bedrading te wijzigen, bv. door drukschakelaars op een andere manier te associëren met bepaalde verlichtingselementen.

Gebouwautomatiseringssystemen met een digitale bus, die een dergelijk verlichtingssysteem kunnen omvatten, en/of andere elementen zoals de aansturing van zonneweringen, airconditioning, enzovoorts, zijn eveneens gekend in de stand der techniek. Een zeer gekend bussysteem voor gebouwbeheerstoepassingen is KNX. In feite is KNX een systeem dat communicatie over verschillende media specifieert, namelijk (a) KNX TP (afkorting voor "KNX Twisted Pair") waarbij gecommuniceerd wordt over een vierdraadsbus, (b) KNX PL (afkorting voor "KNX Powerline"), waarbij een signaal gesuperponeerd wordt op de 230V voedingskabels in een gebouw, (c) KNX RF (afkorting voor "KNX Radio Frequency") waarbij draadloos wordt gecommuniceerd, en (d) KNX IP (afkorting voor KNX Internet Protocol) waarbij gecommuniceerd wordt over Ethernet. De KNX TP-variant is het meest relevant voor de onderhavige uitvinding. De lezer niet vertrouwd met KNX kan bv. het document [1] "The KNX standard - the basics" (20 blzn), lezen als korte introductie, dat op het moment van opstellen van het onderhavig document kan gedownload worden via de volgende URL: http://www.knx.org/media/docs/Flyers/KNX-Basics/KNX-Basics_en.pdf.

In elk bussysteem zijn er bepaalde "regels" nodig, beter gekend als het "busprotocol", waaraan aiie deelnemers van de bus zich dienen te houden. Het protocol van een bussysteem beschrijft aspecten als spanningsniveaus, timing, frame-structuur, prioriteiten, manieren om botsingen te detecteren (Engels: "collision detection”) en/of botsingen te voorkomen (Engels: "collision avoidance"), enz.

Alvorens een verlichtingssysteem volgens DALI of een gebouwautomatiseringssysteem volgens KNX in werking kan gesteld worden, dienen uiteraard eerst de nodige componenten (zoals bv. drukknoppen, lampen, sensoren, actuatoren) geïnstalleerd te worden in het gebouw, en via interfacemodules (al dan niet ingebouwd in de component) elektrisch gekoppeld te worden aan de communicatie-bus. Verder dienen deze interface-modules geconfigureerd te worden om op een specifieke manier met elkaar samen te werken in een specifiek gebouw, door een handeling die bekend staat onder de naam "commissioning". Dit omvat onder meer het toekennen van lokale adressen aan de verschillende modules, welke adressen tijdens de normale werking van het systeem worden gebruikt om boodschappen te versturen van bv. een lichtknop naar een bijhorende lamp. Zo wordt er bij DALI aan iedere component een 6-bits "busadres" toegekend, en wordt er bij KNX een 16-bits "groepadres " toegekend, (meer informatie hierover kan bv. gevonden worden op URL: "https://nl.wikipedia.org/wiki/KNX")

In de praktijk wordt het busadres of groepsadres toegekend aan de modules tijdens de installatie van de betreffende module in het gebouw, bv. door een fysieke verbinding te maken tussen de betreffende module en een draagbare computer via een RS232 connectie, of zoals beschreven in het hoger genoemde KNX-document [1] (op blz 18 kolom 4 tot blz 19 kolom 1, paragraaf "Commissioning") door het fysiek indrukken van een daartoe speciaal voorziene drukknop op de module en het versturen van een "adres" over de bus, waarbij de module waarvan de genoemde speciale drukknop werd ingedrukt, het adres beschouwt als het zijne. Uiteraard zal het systeem bij ingebruikname alleen correct functioneren wanneer aan elke module van het bussysteem het juiste adres is toegekend volgens het plan (en aannemend dat het plan geen fouten bevat).

Vaak treden er echter menselijke fouten op bij een dergelijke toekenning, bijvoorbeeld omdat men vergeten is om een busadres of groepsadres toe te kennen aan bepaalde modules, of omdat een verkeerd busadres of groepsadres werd toegekend (bv. een adres dat niet voorzien was op het plan), of omdat per vergissing eenzelfde adres werd toegekend aan twee verschillende modules, enz. Zulke fouten kunnen achteraf wel gecorrigeerd worden, maar het kost vaak veel tijd en moeite, om ze op te sporen, en te corrigeren. Dit is een gekend probleem (zoals bevestigd door [1] biz 19 kolom 1 lijn 3). US7606955(Bl) beschrijft een bedraad bussysteem met één enkele meester en 1 tot 7 slaven verbonden met een zgn. "open collector"-architectuur, waarbij de bus passief naar een hoog niveau wordt getrokken via een weerstand, en elk van de deelnemers de bus actief laag kan trekken. Het protocol maakt een onderscheid tussen onder andere "databits", een ”reset"-signaal, en een "attention-request” signaal van één van de slaven. In dit systeem moet elke businterface dus vier soorten signalen detecteren, en overeenkomstig reageren. US8035529(B2) beschrijft een gedistribueerd ballastsysteem met een protocol dat een uitbreiding is op het DALI-protocol, en dat achterwaarts compatibel is met DALI, waarbij 256 modules kunnen aangesproken worden (in plaats van slechts 64 bij DALI), en waarbij functionaliteit kan toegevoegd worden vanwege de langere instructies (3 bytes in plaats van slechts 2 bytes bij DALI). Het document beschrijft niet in detail hoe de "initialisatie'1 (Engels: commissioning) precies gebeurt, noch hoe eventuele fouten bij deze commissioning kunnen opgespoord of gecorrigeerd worden.

Samenvatting van de uitvinding

Het is een doei van de onderhavige uitvinding om een bussysteem te verschaffen voor een gebouwautomatiseringssysteem, en om een werkwijze te verschaffen om te communiceren in dit bussysteem, en een gebouwautomatiseringssysteem met zulk bussysteem, en een set van interfacemodules voor gebruik in zulk bussysteem of zulk gebouwautomatiseringssysteem.

Meer specifiek is het een doel van de onderhavige uitvinding om een dergelijk bussysteem en werkwijze te verschaffen, die het mogelijk maken om fouten (bv. installatiefouten of meer specifiek fouten bij de commissioning) sneller of eenvoudiger op te sporen en/of te corrigeren.

Het is een doel van de onderhavige uitvinding om een werkwijze te verschaffen voor het identificeren van een veelheid van deelnemers van een bussysteem, en om een bussysteem te verschaffen met een busprotocol dat zulke werkwijze ondersteunt.

Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om een werkwijze te verschaffen voor het opvragen van gegevens van één of meerdere deelnemers van het bussysteem, en om een bussysteem te verschaffen met een busprotocol dat een dergeiijke werkwijze ondersteunt.

Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om een werkwijze te verschaffen voor het configureren en/of het herconfigureren van één of meerdere deelnemers van het bussysteem, en om een bussysteem te verschaffen met een busprotocol dat een dergelijke werkwijze ondersteunt.

Volgens een eerste aspect, verschaft de onderhavige uitvinding een werkwijze voor het identificeren van een veelheid van modules die aan een bedrade communicatie-bus gekoppeld zijn en die elk een uniek adres bevatten, door een GegevensVerzamelModule die eveneens aan de communicatie-bus gekoppeld is, waarbij de werkwijze de volgende stappen omvat: a) het versturen over de communicatie-bus van een identificatieverzoek door de GegevensVerzamelModule naar de veelheid van modules, voor het opvragen van hun unieke adressen; b) het ontvangen van het identificatieverzoek door elk van de veelheid van modules; c) het succesvol versturen van een identificatiebericht door elk van de veelheid van modules als reactie op het ontvangen identificatieverzoek, waarbij iedere identificatiebericht het uniek adres van de betreffende module bevat; waarbij stap c) voor ieder van de veelheid van modules de volgende stappen omvat: i) het wachten tot de bus vrij is gedurende minstens een vooraf bepaalde tijd; ii) het trachten te verzenden van het identificatiebericht van de betreffende module, waarbij het trachten te verzenden van het identificatiebericht het achtereenvolgens trachten te verzenden van iedere bit van het identificatiebericht omvat, en waarbij het trachten te verzenden van iedere bit het aansturen en monitoren van de bus omvat, en het bepalen of een botsing op de bus opgetreden is; iii) en indien een botsing opgetreden is, het stoppen met het verzenden van de betreffende bit en van alle volgende bits van het identificatiebericht, en het herhalen van stappen i) tot iii) totdat de identificatiebericht verzonden is zonder botsing; en indien geen botsing opgetreden is, besluiten dat het identificatiebericht succesvol verzonden is, en niet meer deelnemen aan het trachten te verzenden van het identificatiebericht.

Met "succesvol versturen" wordt bedoeld dat iedere module zal blijven proberen zijn identificatiebericht te versturen, totdat dit uiteindeiijk gelukt is. Dit zal gegarandeerd lukken, omdat ieder bericht uniek is, en omdat er geen berichten verloren gaan.

Kort samengevat laat deze werkwijze toe de unieke adressen van alle modules die aan de communicatiebus gekoppeld zijn, in-situ op te vragen. Eens deze unieke adressen gekend zijn, kunnen deze gebruikt worden om bepaalde modules individueel te benaderen, bijvoorbeeld om informatie op te vragen, of om informatie naar de module te zenden, bv. gebruikmakend van absolute addressering.

Ze maakt mogelijk dat fouten sneller gedetecteerd en zelfs gecorrigeerd kunnen worden, met name fouten gerelateerd aan het niet of verkeerdelijk toekennen van één of meerdere busadressen aan de modules tijdens de installatie ("commisioning"), bv. door de modules één voor één individueel te benaderen gebruik makend van commando's met absolute addressering op basis van de aldus verkregen unieke adressen.

De opvraging zelf kan bovendien relatief snel uitgevoerd worden, zelfs terwijl het verlichttingssysteem of gebouwautomatiseringssysteem kan blijven werken.

Het is een voordeel van deze werkwijze dat alle unieke adressen van alle modules die effectief met de bus verbonden zijn (behalve dat van de GV) automatisch kunnen opgevraagd worden zonder tussenkomst van menselijke handelingen, waardoor de kans op menselijke fouten wordt uitgesloten.

Door de unieke adressen (die reeds bij de productie van de modules ingebouwd worden in de modules) op te vragen, worden alle modules ondubbelzinnig "ontdekt", zelfs indien er geen, of een verkeerd busadres werd toegekend aan de module tijdens de installatie (commissioning).

Het is een groot voordeel dat de werkwijze voorziet dat er slechts één enkel identificatieverzoek zal verstuurd worden, waarop ieder van de andere modules zal antwoorden, desnoods in meerdere pogingen, totdat het uiteindelijk gelukt is. Omdat de GV slechts één bericht zal versturen over de bus, wordt veel tijd gewonnen.

Het is een groot voordeel dat de werkwijze zo voorzien is dat er in principe, (tenzij er "normale boodschappen" tussendoor komen) bij iedere iteratie precies één identificatiebericht ongeschonden over de bus zal verstuurd worden.

Dankzij de botsingsdetectie op bitniveau en het desgevallend stoppen met zenden, en het automatisch opnieuw proberen wanneer de bus voldoende lang vrij is, gaan er geen berichten verloren, en wordt er dus geen tijd verloren op de bus vanwege verminkte (Engels: corrupt) gegevens en heruitzendingen. Dit betekent een belangrijke tijdswinst.

Het is een groot voordeel van deze werkwijze dat ze zelfs uitgevoerd kan worden in een operationeel actief bussysteem, wat bv. wil zeggen dat het gebouw-automatiseringssysteem of deelsysteem (bv. verlichtingssysteem, zonneweringssysteem, branddetectiesysteem, enz.) waar dit bussysteem deel van uitmaakt, zal blijven werken terwijl deze adresopvraging plaats vindt. Bovendien kan dit gebeuren met een niet of nauwelijks merkbare vertraging van "normale commando's" zoals het aanschakelen van lichtelementen, het uitlezen van branddetectoren, enz.

Het is een groot voordeel dat deze werkwijze zeer snel kan uitgevoerd worden (bv. grootte-orde 1,85 seconden voor een bitperiode van 150 ps en een bus met 100 deelnemers, en een uniek adres van 32 bits, aannemend dat de bus niet operationeel belast is). Zulke korte tijd is ongezien, en het voordeel ervan mag niet onderschat worden.

In een uitvoeringsvorm wordt stap ii) van het trachten te verzenden gestart van zodra de vooraf bepaalde tijd "WJD" verstreken is.

In deze uitvoeringsvorm wachten alle modules in principe even lang, (op toleranties van de locale klok na). Er wordt dus geen gebruik gemaakt van willekeurige ("random") wachttijden of dergelijke voor het trachten vermijden van botsingen, integendeel. In deze uitvoeringsvorm zullen alle modules dus nagenoeg tegelijkertijd beginnen met zenden, met andere woorden, de kans op botsingen wordt in deze uitvoeringsvorm als het ware gemaximaliseerd in plaats van geminimaliseerd.

In een uitvoeringsvorm, is de communicatie-bus een digitale communicatie-bus; en wordt een eerste signaalvorm geassocieerd met een logische "l"-bit, en een tweede signaalvorm verschillend van de eerste signaalvorm geassocieerd met een logische "O"-bit; en zijn de GegevensVerzamelModule en de veelheid van modules gekoppeld aan de communicatie-bus in een wired-AND of een wired-OR configuratie.

Bij voorkeur wordt de bus hoog wordt getrokken door een (relatief grote) optrekweerstand of door een (relatief zwakke) stroombron, en kan de bus laag getrokken worden door middel van een (relatief sterke) transistor geconfigureerd als "open collector" of als "open drain" (wat betekent dat hij fungeert als AAN-UIT schakelaar, met een zeer lage impedantie wanneer de schakelaar gesloten is, en met een zeer hoge impedantie wanneer de schakelaar open is). In zulke configuratie wint een laag spanningsniveau het van een hoog spanningsniveau. Afhankelijk van de signaalvorm die geassocieerd wordt met een logische "1" of een logische "0", wint een logische "1" het van een logische "0", in welk geval de bus een ”wired-OR” wordt genoemd (zoals in het voorbeeld van FIG. 3). In het omgekeerde geval, waarbij een logische "0" het wint van een logische "1", wordt de busconfiguratie een "wired-AND" configuratie genoemd.

Volgens een tweede aspect, verschaft de onderhavige uitvinding een werkwijze voor het toekennen van minstens één busadres of minstens twee busadressen aan een te configureren module van een veelheid van modules die aan een bedrade communicatie-bus gekoppeld zijn, en die elk een uniek adres hebben, waarbij de werkwijze de volgende stappen omvat: a) het bepalen van de unieke adressen van de veelheid van modules die aan de bus gekoppeld zijn door het identificeren van de modules volgens het eerste aspect; b) het versturen van een configuratiebericht door de GegevensVerzamelModule, waarbij het configuratiebericht het uniek adres van de te configureren module bevat om de module te addresseren, alsook minstens één toe te kennen busadres; c) het ontvangen van het configuratiebericht door de veelheid van modules die aan de bus gekoppeld zijn, en het extraheren van het adres vervat in het configuratiebericht, en het vergelijken van het geëxtraheerde adres met het interne unieke adres van de betreffende module, en indien het geëxtraheerde adres en het interne unieke adres gelijk zijn, verder gaan met stap d), en indien het geëxtraheerde adres en het interne unieke adres verschillend zijn, stap d) overslaan; d) het extraheren van het minstens één busadres uit het configuratiebericht, en het opslaan van het minstens één busadres in een geheugen van de module voor latere communicatie met andere modules op basis van relatieve adressering.

Stap b) en c) betekenen eigenlijk dat een "absolute adressering wordt gebruikt, op basis van het uniek adres van de module, die opgevraagd werd in stap a).

Deze werkwijze maakt het mogelijk om vanop afstand één of meerdere busadres(sen) toe te kennen aan een bepaalde module, zonder dat fysieke toegang tot de module nodig is. Deze werkwijze maakt het ook mogelijk om vanop afstand het busadres te wijzigen.

Volgens een derde aspect, verschaft de onderhavige uitvinding een werkwijze voor het opvragen van gegevens van minstens één te ondervragen module gekozen uit een veelheid van modules die aan een communicatie-bus gekoppeld zijn, en die elk een uniek adres bevatten, omvattende: a) het bepalen van de unieke adressen van elk van de veelheid van modules die aan de bus gekoppeld zijn, door het identificeren van de modules volgens het eerste aspect; b) het versturen van een leesbericht door de GegevensVerzamelModule, waarbij het leesbericht het unieke adres van de te ondervragen module bevat om de module te addresseren, alsook één of meer indicatoren over welke informatie opgevraagd wordt; c) het ontvangen van het leesbericht door de veelheid van modules die aan de bus gekoppeld zijn, en het extraheren van het adres vervat in het leesbericht, en het vergelijken van het geëxtraheerde adres met het interne unieke adres van de betreffende module, en indien het geëxtraheerde adres en het interne unieke adres gelijk zijn, verder gaan met stap d), en indien het geëxtraheerde adres en het interne unieke adres verschillend zijn, stap d) overslaan; d) het versturen van een informatiebericht door de te ondervragen module naar de GegevensVerzamelModule, waarbij het informatiebericht gegevens bevat overeenkomstig de één of meer indicatoren; e) het ontvangen van het informatiebericht door de GegevensVerzamelModule.

Deze werkwijze biedt het voordeel dat informatie kan opgehaald worden over een welbepaalde module, door deze module te adresseren met zijn uniek adres. Door het ophalen van bijkomende informatie, bv. het type van de module, of het/de daarin opgeslagen busadres(sen), is het mogelijk fouten te detecteren gerelateerd aan de toekenning van het/de busadres(sen).

Er wordt opgemerkt dat het informatiebericht bestemd is voor de GV, en dat dit dus als een "commando" kan geïmplementeerd worden, waarbij geen adres hoeft toegevoegd te worden van de bestemmeling.

In een verder uitvoeringsvorm van een werkwijze volgens het eerste, tweede of derde aspect, omvat het uniek adres van minstens één van de veelheid van modules (Dl, D2, D3) minstens 18 bits omvat, of minstens 20 bits, of minstens 24 bits, of minstens 32 bits, of minstens 40 bits, of minstens 48 bits.

Volgens bepaalde standaarden hebben de eenheden op de bus maximaal 6 adres-bits, en kunnen er dus maximaal 64 eenheden op de bus worden onderscheiden. In dergelijke systemen is het perfect mogeiijk om de herkenning van de aanwezige eenheden te doen door alle mogelijke adressen te proberen en na te gaan of er reactie komt. Deze zgn. "brute force" methode is echter niet geschikt wanneer het aantal adresbits erg groot wordt. Immers, voor elke extra bit verdubbelt de tijd die nodig is om alle adressen te proberen.

In een verder uitvoeringsvorm van een werkwijze volgens het eerste, tweede of derde aspect, worden alle berichten over de bus, met inbegrip van het identificatieverzoek en de identificatieberichten, verstuurd door het versturen van één of meerdere frames met een vaste lengte, waarbij ieder frame één startbit, zestien databits, en één stopbit bevat.

Het is een voordeel dat alle communicatie over de bus eenzelfde frame-structuur gebruikt. Hierdoor kan de implementatie vereenvoudigd worden.

In een verdere uitvoeringsvorm, is een minimale wachttijd WT2F tussen twee opeenvolgende frames van eenzelfde bericht kleiner dan een minimale wachttijd WT2B tussen frames van twee verschillende berichten.

De minimale wachttijden maken deel uit van het protocol volgens hetwelke gecommuniceerd wordt over de bus. Dit betekent dat wanneer een bepaalde module een bericht aan het verzenden is dat meerdere frames bevat, dat de trein van frames niet onderbroken zal worden door een ander bericht. Hierdoor kan de implementatie vereenvoudigd worden.

In een verdere uitvoeringsvorm, is de minimale wachttijd WJD voorafgaand aan een identicatiebericht, groter is dan de minimale wachttijd WT2B voorafgaand aan een bericht dat geen identificatiebericht is.

Dit is een manier om ervoor te zorgen dat "normale berichten" of "operationele berichten", zoals de communicatie tussen componenten van een verlichtingssysteem of van een ander deelsysteem van een gebouwautomatiseringssysteem onderling voorrang krijgen op identificatieberichten van de modules naar de GegevensVerzamelModule.

Volgens een vierde aspect verschaft de onderhavige uitvinding een bussysteem voor een gebouwautomatiseringssysteem, omvattende: - een bedrade communicatiebus; - een veelheid van modules die elk een uniek adres hebben en die gekoppeld zijn aan de communicatiebus; een GegevensVerzamelModule die gekoppeld is aan de communicatiebus; waarbij elk van de veelheid van modules en de GegevensVerzamelModule voorzien zijn om samen een werkwijze volgens het eerste, tweede of derde aspect.

De bedrade communicatiebus omvat bij voorkeur minstens één of minstens twee elektrische geleiders.

Volgens een vijfde aspect verschaft de onderhavige uitvinding een gebouwautomatiseringssysteem dat een bussysteem volgens het vierde aspect omvat, en dat verder één of meer van de volgende kenmerken omvat: i) en waarbij het gebouwautomatiseringssysteem minstens een verlichtingssysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een verlichtingselement of een dimmer, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één bewegingsdetector of aanwezigheidsdetector of lichtsensor of schakelaar; ii) en waarbij het gebouwautomatiseringssysteem minstens een zonneweringssysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van minstens één motor van een zonnewering, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één lichtsensor of schakelaar of windsensor; iii) en waarbij het gebouwautomatiseringssysteem minstens een branddetectiesysteem omvat, waarbij minstens één van de modules aangepast is voor het uitlezen van minstens één branddetector of rookdetector of temperatuursensor; iv) en waarbij het gebouwautomatiseringssysteem minstens een airconditioningsysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een airconditioningsmodule, en/of minstens één van de modules aangepast is voor het uitlezen van een temperatuursensor of vochtigheidssensor; v) en waarbij het gebouwautomatiseringssysteem minstens een verwarmingssysteem omvat, waarbij minstens één van de modules aangepast is voor aansturen van minstens één ventiel of een pomp of een verwarmingselement, en/of minstens één van de modules aangepast is voor het uitlezen van een temperatuursensor; vi) en waarbij het gebouwautomatiseringssysteem minstens een HVAC-systeem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een airconditioningsmodule of een verwarmingselement of een ventiel of een pomp, en/of minstens één van de modules aangepast is voor het uitlezen van een temperatuursensor of een vochtigheidssensor; vii) en waarbij het gebouwautomatiseringssysteem minstens een parkeergeleidingssysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van minstens één verlichtingselement, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één bewegingsdetector of aanwezigheidsdetector of schakelaar; viii) en waarbij het gebouwautomatiseringssysteem minstens een toegangscontrolesysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een deur of een toegang, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één bewegingsdetector of aanwezigheidsdetector of schakelaar of identificatiemodule.

In een uitvoeringsvorm omvat het gebouwautomatiseringssysteem verder minstens één van de hoger genoemde actuatoren en/of minstens één van de hoger genoemde sensoren.

In een uitvoeringsvorm, omvat de bedrade bus minstens twee elektrische geleiders die galvanisch van elkaar gescheiden zijn, maar functioneel met elkaar gekoppeld zijn door middel van minstens één signaalversterker met een optische koppeling, welke signaalversterker eveneens deel uitmaakt van het bussysteem.

Volgens een zesde aspect verschaft de onderhavige uitvinding tevens een set van minstens drie interface-modules voor gebruik in een bussysteem volgens het vierde aspect, of voor gebruik in een gebouwautomatiseringssysteem volgens het vijfde aspect, waarbij één interface-module voorzien is voor het uitvoeren van stap a) van een werkwijze volgens het eerste, tweede of derde aspect, en minstens twee andere interface-modules voorzien zijn voor het uitvoeren van de stappen b) en c) van de werkwijze volgens het eerste, tweede of derde aspect.

In een uitvoeringsvorm omvat minstens één der interface-modules verder een IR-zendontvanger, en is de controller van de betreffende interface-module verder voorzien van een IR-protocol software voor het zenden en ontvangen van boodschappen via de IR-zendontvanger.

In een uitvoeringsvorm omvat minstens één der interface-modules verder een RF-zendontvanger, en is de controller van de betreffende interface-module verder voorzien van een RF-protocol software voor het zenden en ontvangen van boodschappen via de RF-zendontvanger.

In een uitvoeringsvorm omvat minstens één der interface-modules verder een glasvezel-zendontvanger, en is de controller van de betreffende interface-module verder voorzien van een glasvezel-protocol software voor het zenden en ontvangen van boodschappen via de glasvezel-zendontvanger.

In een uitvoeringsvorm omvat minstens één der interface-modules verder een tweede bus-interface, en is de controller van de betreffende interface-module voorzien om zowel te communiceren over de eerste bus-interface via een eerste protocol volgens het eerste, tweede of derde aspect, alsook via een tweede protocol dat verschillend is van het eerste protocol over de tweede bus-interface.

In een uitvoeringsvorm omvat minstens één der interface-modules verder minstens één ingebouwde actuator voor het aansturen van een component van een gebouwautomatisering, en/of minstens één ingebouwde sensor of detector voor het uitlezen van een component van een gebouwautomatisering.

Specifieke en voorkeursdragende aspecten van de uitvinding zijn opgenomen in de aangehechte onafhankelijke en afhankelijke conclusies. Kenmerken van de afhankelijke conclusies kunnen worden gecombineerd met kenmerken van de onafhankelijke conclusies en met kenmerken van andere afhankelijke conclusies zoals aangewezen en niet enkel zoals uitdrukkelijk in de conclusies naar voor gebracht.

Voor het samenvatten van de uitvinding en de bereikte voordelen ten opzichte van de stand van de techniek werden bepaalde doelstellingen en voordelen van de uitvinding hierboven beschreven. Het is uiteraard te begrijpen dat niet noodzakelijk al deze doelstellingen of voordelen kunnen bereikt worden door elke specifieke uitvoeringsvorm van de uitvinding. Dus, bijvoorbeeld, vakmensen zullen onderkennen dat de uitvinding kan worden belichaamd of uitgevoerd op een wijze die één voordeel of een groep van voordelen heeft zoals hierin aangereikt, zonder daarbij noodzakelijk andere doelstellingen of voordelen te bereiken die hierin kunnen aangereikt of gesuggereerd zijn.

Deze en andere aspecten van de uitvinding zuilen duidelijk zijn aan de hand van en verhelderd worden met verwijzing naar de hiernavolgende beschreven uitvoeringsvorm(en).

Korte beschrijving van de figuren

De uitvinding zal nu verder worden beschreven, bij wijze van voorbeeld, met verwijzing naar de bijhorende figuren waarin: FIG. 1 is een replica van FIG. 1 van US8035529(B2), en toont een voorbeeld van een ballastsysteem uit de stand der techniek, gebaseerd op het DALI-protocol. FIG. 2 is een replica van FIG. 2A van US7606955(Bl), en toont een voorbeeld van een bussysteem met een meester-slaaf architectuur, waarbij de bus passief hoog getrokken wordt door een optrekweerstand, en de deelnemers van de bus een bus-interface hebben met een zgn. "opencollector" of een zgn. "open drain" om de bus desgewenst actief laag te trekken. FIG. 3 is een voorbeeldmatig blokdiagram van een deelnemer van de bus volgens de onderhavige uitvinding, hierin verder ook "interface-module" of kortweg "module" genoemd. FIG. 4 is een schematische voorstelling van een voorbeeldmatig bussysteem en gebouwautomatiseringssysteem volgens de onderhavige uitvinding. FIG. 5 is een schematische voorstelling van een tweede voorbeeldmatig bussysteem en gebouwautomatiseringssysteem volgens de onderhavige uitvinding waarbij de digitale bus een backbone en twee fysieke geleiders omvat. FIG. 6 is een schematische voorstelling van een derde voorbeeldmatig bussysteem en gebouwautomatiseringssysteem volgens de onderhavige uitvinding, als variant van het bussysteem van FIG. 5, dat verder signaalversterkers omvat. FIG. 7 tot FIG. 9 tonen enkele voorbeelden van bedrade bussen gekend in de stand der techniek. Bussystemen volgens de onderhavige uitvinding kunnen gebruikt worden met elk van de bedrade bussen getoond in FIG. 7 tot FIG. 9, maar hoeven dat niet. FIG. 7 toont een voorbeeld van een tweedraadsbus met twee geleiders, waarbij één geleider fungeert als referentie (grond), en de andere geleider gebruikt wordt voor data-overdracht, maar niet om andere modules te voeden. FIG. 8 toont een voorbeeld van een driedraadsbus met drie geleiders, waarbij één geleider fungeert als referentie (grond), een tweede geleider gebruikt wordt voor data-overdracht, en een derde geleider gebruikt wordt voor het voeden van minstens één deelnemer van de bus. FIG. 9 toont een voorbeeld van een tweedraadsbus met twee geleiders, waarbij één geleider fungeert als referentie (grond), en de andere geleider gebruikt wordt voor zowel data-overdracht als voor het voeden van minstens één deelnemer van de bus. FIG. 10 toont twee voorbeeldmatige golfvormen die kunnen gebruikt worden door uitvoeringsvormen van de onderhavige uitvinding voor het doorsturen van een logische bit "1" en een logische bit "0", of omgekeerd. FIG. 11 toont twee andere voorbeeldmatige golfvormen die gebruikt kunnen worden door uitvoeringsvormen van de onderhavige uitvinding voor het doorsturen van een logische bit "1" en een logische bit "0", gekend onder de naam "Manchester"-coding. FIG. 12 tot FIG. 19 illustreren aan de hand van een vereenvoudigd voorbeeld een werkwijze voor het identificeren van een veelheid van te identificeren modules van een bussysteem volgens de onderhavige uitvinding, waarbij één module werd toegevoegd aan het bussysteem om te fungeren als "GegevensVerzamelModule".

In FIG. 12 stuurt de "GegevensVerzamelModule" een speciaal identificatieverzoek naar de te identificeren modules, met het verzoek hun uniek adres te verzenden over de bus.

In FIG. 13 beginnen alle deelnemers van de bus (behalve de GegevensVerzamelModule) nagenoeg tegelijkertijd met het versturen van een identificatiebericht dat hun uniek adres bevat, terwijl de GegevensVerzamelModule het identificatiebericht dat over de bus wordt verstuurd ontvangt. FIG. 14 toont de golfvormen die de drie deelnemers trachten te versturen via hun bus-interface, waarin enkel deelnemer Dl slaagt, althans in de eerste poging.

In FIG. 15 beginnen de overblijvende deelnemers D2 en D3 tegelijk een identificatiebericht te versturen dat hun uniek adres bevat, terwijl de "GegevensVerzamelModule" het identificatiebericht dat over de bus wordt verstuurd ontvangt. FIG. 16 toont de golfvormen die de twee overblijvende deelnemers D2 en D3 trachten te versturen via hun bus-interface, als tweede poging om hun uniek adres te versturen, waarin enkel deelnemer D2 slaagt.

In FIG. 17 begint de enig overblijvende deelnemer D3 een bericht te versturen dat zijn uniek adres bevat, terwijl de GegevensVerzamelModule het identificatiebericht dat over de bus wordt verstuurd ontvangt. FIG. 18 toont de golfvorm van het identificatiebericht dat deelnemer D3 verstuurt via zijn bus-interface, als derde poging om zijn uniek adres te versturen, waarin hij ditmaal slaagt. FIG. 19 toont de golfvorm die wordt waargenomen op de bus. FIG. 20 tot FIG. 23 tonen een voorbeeldmatige berichtenstructuur met één of meerdere frames, die gebruikt kan worden door een bussysteem en door werkwijzen volgens de onderhavige uitvinding. FIG. 20 toont een voorbeeldmatig tijdsdiagram van een boodschap bestaande uit één enkel frame. FIG. 21 toont een voorbeeldmatige bitsstructuur van dit ene frame. FIG. 22 toont een voorbeeldmatig tijdsdiagram van een boodschap bestaande uit twee frames die na elkaar worden verstuurd, gescheiden door een wachttijd. FIG. 23 is een schematische weergave van een boodschap bestaande uit drie frames. FIG. 24 toont een werkwijze voor het identificeren van een veelheid van deelnemers van het bussysteem, volgens een uitvoeringsvorm van de onderhavige uitvinding. FIG. 25 toont de werkwijze van FIG. 24, inclusief stappen die uitgevoerd worden door de veelheid van te identificeren modules van de bus.

De figuren zijn enkel schematisch en niet limiterend. In de figuren kunnen de afmetingen van sommige onderdelen overdreven en niet op schaal zijn voorgesteld voor illustratieve doeleinden. De afmetingen en de relatieve afmetingen komen soms niet overeen met de actuele praktische uitvoering van de uitvinding.

Referentienummers in de conclusies mogen niet worden geïnterpreteerd om de beschermingsomvang te beperken.

In de verschillende figuren verwijzen dezelfde referentienummers naar dezelfde of gelijkaardige elementen.

Gedetailleerde beschrijving van uitvoeringsvormen van de uitvinding

De huidige uitvinding zal beschreven worden met betrekking tot bijzondere uitvoeringsvormen en met verwijzing naar bepaalde tekeningen, echter de uitvinding wordt daartoe niet beperkt, maar wordt enkel beperkt door de conclusies.

Het dient opgemerkt te worden dat de term "omvat", zoals gebruikt in de conclusies, niet als beperkt tot de erna beschreven middelen dient geïnterpreteerd te worden; deze term sluit geen andere elementen of stappen uit. Hij is zodoende te interpreteren als het specificeren van de aanwezigheid van de vermelde kenmerken, waarden, stappen of componenten waarnaar verwezen wordt, maar sluit de aanwezigheid of toevoeging van één of meerdere andere kenmerken, waarden, stappen of componenten, of groepen daarvan niet uit. Dus, de omvang van de uitdrukking "een inrichting omvattende middelen A en B" dient niet beperkt te worden tot inrichtingen die slechts uit componenten A en B bestaan. Het betekent dat met betrekking tot de huidige uitvinding, A en B de enige relevante componenten van de inrichting zijn.

Verwijzing doorheen deze specificatie naar "één uitvoeringsvorm" of "een uitvoeringsvorm" betekent dat een specifiek kenmerk, structuur of karakteristiek beschreven in verband met de uitvoeringsvorm is opgenomen in tenminste één uitvoeringsvorm van de onderhavige uitvinding. Dus, voorkomen van de uitdrukkingen "in één uitvoeringsvorm" of "in een uitvoeringsvorm" op diverse plaatsen doorheen deze specificatie hoeven niet noodzakelijk allemaal naar dezelfde uitvoeringsvorm te refereren, maar kunnen dit wel doen. Voorts, de specifieke kenmerken, structuren of karakteristieken kunnen gecombineerd worden op eender welke geschikte manier, zoals duidelijk zou zijn voor een gemiddelde vakman op basis van deze bekendmaking, in één of meerdere uitvoeringsvormen.

Vergelijkbaar dient het geapprecieerd te worden dat in de beschrijving van voorbeeldmatige uitvoeringsvormen van de uitvinding verscheidene kenmerken van de uitvinding soms samen gegroepeerd worden in één enkele uitvoeringsvorm, figuur of beschrijving daarvan met als doel het stroomlijnen van de openbaarmaking en het helpen in het begrijpen van één of meerdere van de verscheidene inventieve aspecten. Deze methode van openbaarmaking dient hoe dan ook niet geïnterpreteerd te worden als een weerspiegeling van een intentie dat de uitvinding meer kenmerken vereist dan expliciet vernoemd in iedere conclusie. De conclusies volgend op de gedetailleerde beschrijving zijn hierbij expliciet opgenomen in deze gedetailleerde beschrijving, met iedere op zichzelf staande conclusie als een afzonderlijke uitvoeringsvorm van deze uitvinding.

Voorts, terwijl sommige hierin beschreven uitvoeringsvormen sommige, maar niet andere, in andere uitvoeringsvormen inbegrepen kenmerken bevatten, zijn combinaties van kenmerken van verschillende uitvoeringsvormen bedoeld als gelegen binnen de reikwijdte van de uitvinding, en vormen deze verschillende uitvoeringsvormen, zoals zou begrepen worden door de vakman. Bijvoorbeeld, in de volgende conclusies kunnen eender welke van de beschreven uitvoeringsvormen gebruikt worden in eender welke combinatie.

In de hier voorziene beschrijving worden talrijke specifieke details naar voren gebracht. Het is hoe dan ook te begrijpen dat uitvoeringsvormen van de uitvinding kunnen uitgevoerd worden zonder deze specifieke details. In andere gevallen zijn welgekende werkwijzen, structuren en technieken niet in detail getoond om deze beschrijving helder te houden.

In de onderhavige uitvinding wordt de term "boodschap" en "bericht" als synoniem gebruikt.

In de onderhavige uitvinding worden de termen "grond" en "massa" als synoniem gebruikt.

In de onderhavige uitvinding verwijst de term "communicatie-bus" of kortweg "bus" naar een bedrade bus met minstens twee elektrische geleiders, of een bedrade bus met één elektrische geleider en een massa.

In de onderhavige uitvinding worden de termen "deelnemer van de bus" of kortweg "deelnemer", en "interface-module" of kortweg "module" als synoniem gebruikt. Ze verwijzen naar een inrichting die minstens een controle-eenheid (bv. een programmeerbare processor) en een bus-interface voor het zenden en ontvangen van berichten over de communicatie-bus omvat. In de context van de onderhavige uitvinding kan de module een uitlezingsmodule zijn (voor het uitlezen van één of meerdere sensoren), of een aansturingsmodule (voor het aansturen van één of meerdere actuatoren), of een combinatie van zowel een uitlezingsmodule als een aansturingsmodule.

In de onderhavige uitvinding wordt met "identificatieverzoek" een specifiek of bedrijfseigen (Engels: "proprietary") bericht bedoeld dat door één van de modules, namelijk de module die fungeert als "GegevensVerzamelModule" (verder afgekort als GV), wordt verstuurd in de vorm van een broadcast-commando naar de overige modules van de bus (d.i. de veelheid van de modules die geïdentificeerd dienen te worden) met het verzoek (of het commando) om hun "uniek adres" kenbaar te maken op de bus.

In de onderhavige uitvinding verwijst de term "absoluut uniek adres" of "uniek adres" naar een adres of serienummer dat doorgaans tijdens de productie van de interface-module aan de betreffende interface-module wordt toegekend, en dat daarna niet meer gewijzigd wordt, en waarvan de waarde uniek is (d.w.z. slechts één keer voorkomt) ongeacht de bus waarin deze module gebruikt wordt. Dit uniek adres bevat minstens 17 bits, of minstens 20 bits, of minstens 24 bits, of minstens 28 bits, of minstens 32 bits, of minstens 40 bits, of minstens 48 bits.

In de onderhavige uitvinding verwijst de term "bus-adres" naar een adres dat minder bits heeft dan het absoluut uniek adres, en dat toegekend wordt aan een "interface-module" na de productie, (bv. tijdens een zogenaamde "commissioning") om efficiënter te communiceren over de communicatie-bus. Dit is het adres dat meestal gebruikt wordt tijdens de normale werking van het bussysteem, en waarmee componenten met elkaar communiceren.

In uitvoeringsvormen van de onderhavige uitvinding kan een "interface-module" méér dan één bus-adres hebben, bv. één bus-adres voor iedere ingang en iedere uitgang van de "interfacemodule" (zoals verder zal toegelicht worden bij FIG. 3).

In de onderhavige uitvinding wordt de term "identificatiebericht" gebruikt om te verwijzen naar een specifiek en bedrijfseigen bericht dat verstuurd wordt door elk van de overige modules (d.i. de modules die geïdentificeerd dienen te worden) als antwoord op het "identificatieverzoek".

In dit document wordt de term "component" gebruikt om te verwijzen naar inrichtingen zoals bijvoorbeeld drukknoppen, deursloten, aanwezigheidssensoren, bewegingssensoren, windsensoren, temperatuur-sensoren, lampen, relais, airconditioning, branddetectoren, rookdetectoren, HVAC, sirenes, verwarmingselementen, sproeisystemen, enz, die deel uitmaken van een verlichttingssysteem of een gebouwautomatiseringssysteem.

In dit document worden "component" en "interface-module" als aparte inrichtingen beschouwd, maar het is uiteraard ook mogelijk om beide inrichtingen te groeperen in één inrichting, die hierin dan eveneens ais "interface-module" of "module" wordt aangeduid.

In dit document verwijst "normale werking" of "normale berichten" of "operationele berichten” naar berichten die over de bus verstuurd worden tijdens de normale werking van het systeem, bv. tussen een sensor en een bijhorende actuator. Het "identificatieverzoek" verstuurd door de GV en de "identificatieberichten" verstuurd door de andere modules worden niet als "operationele berichten” gezien.

De onderhavige uitvinding heeft betrekking op een digitaal bussysteem zoals bv. gebruikt kan worden in een verlichtingssysteem of een gebouwautomatiseringssysteem, en op werkwijzen om te communiceren over een dergelijk bussysteem, waaronder een werkwijze voor het identificeren van een veelheid van deelnemers van een bussysteem, bv. alle "interface-modules" gekoppeld aan het bussysteem behalve de GegevensVerzamelModule.

Zoals reeds aangegeven in de achtergrondsectie, bestaan er diverse bussystemen voor gebouwen, zoals een bussysteem volgens het DALI-protocol voor het aansturen van een verlichtingssysteem, of een bussysteem volgens het KNX protocol voor het besturen van een gebouwautomatiseringssysteem met "componenten" die doorgaans worden ingedeeld in twee categorieën: sensoren (of detectoren) en actuatoren, maar andere componenten zijn ook mogelijk, zoals bv. klokken of logische bouwstenen. De groep van sensoren bevat onder meer: schakelaars, drukknoppen, aanwezigheidsmelders, temperatuurvoelers, enz. De groep van actuatoren bevat onder meer relais, zonneweringen, air-conditionings, enz. Deze "componenten" worden aan de digitale bus gekoppeld via een "interface-module" (hierin verder kortweg "module" genoemd) die fungeert als deelnemer van de bus.

De architectuur van de interface-modules (zie bv. FIG. 3) kan verschillen afhankelijk van het type component dat ermee verbonden wordt (bv. het aansturen van een lamp of een relais vereist andere functionaliteit dan het uitlezen van een drukknop), maar allen hebben ze een bus-interface 303 en een controller 301 (bv. een programmeerbare processor), en zijn ze voorzien voor het versturen en ontvangen van boodschappen volgens een bepaald protocol. Het protocol dat hierin beschreven zal worden is een bedrijfseigen protocol (Engels: "proprietary protocol"), dat deel uitmaakt van het bussysteem volgens de onderhavige uitvinding.

Ontwerpers van een verlichtingssysteem of van een gebouwautomatiseringssysteem dienen dus "componenten" en "interface-modules" te kiezen, en installateurs dienen deze in het gebouw te plaatsen en aan te sluiten volgens een vooraf bepaald plan. Zoals beschreven in de achtergrondsectie, wordt door de installateur aan iedere module minstens één bus-adres toegekend, verwijzend naar het adres dat toegekend wordt aan iedere module tijdens de "commissioning", en waarmee de componenten onderling met elkaar communiceren tijdens de normale werking van het verlichttingssysteem of het gebouwautomatiseringssysteem, en dat minder bits heeft dan het absoluut uniek adres.

In bepaalde uitvoeringsvormen van de onderhavige uitvinding worden aan sommige interfacemodules minstens twee, of minstens drie, of minstens vier busadressen toegekend, namelijk één busadres voor iedere ingang en uitgang. In het specifiek voorbeeld van FIG. 3 zouden bv. vijf busadressen worden toegekend aan de getoonde module 300, namelijk twee voor de ingangen IN1, IN2, en drie voorde uitgangen UIT1, UIT2, UIT3.

In de praktijk is gebleken dat het installeren en monteren en aansluiten van de componenten (wat acties vereist als bv. boren, schroeven, kabel trekken, vals plafond losmaken, isolatie verwijderen, enz.) een heel andere taak is dan het toekennen van een adres aan een module, en totaal andere apparatuur vereist. Het is dan ook niet verwonderlijk dat er vaak menselijke fouten optreden bij een dergelijke adres-toekenning, zoals het vergeten om een adres toe te kennen aan één of meerdere modules, of het toekennen van een verkeerd adres, of het per vergissing toekennen van eenzelfde busadres aan twee verschillende modules, enz.

Het kost vaak veel tijd en moeite om alle fouten op te sporen en te corrigeren, vooral wanneer de modules ingebouwd zijn in een vals plafond of in een holte in een muur, of zich bevinden in een lokaal dat afgesloten is.

Dit probleem is des te moeilijker wanneer het gebouw reeds in gebruik is, en treedt bv. ook op wanneer er modules worden bijgeplaatst in een bestaand gebouw. Het zal duidelijk zijn dat men niet zomaar de verlichting of de airconditioning of de verwarming of dergelijke van het ganse gebouw gedurende lange tijd (bijvoorbeeld meerdere uren) kan onderbreken voor het opsporen en/of het corrigeren van een fout. Het bestaande systeem moet blijven werken.

Geconfronteerd met dit probleem, en zoekend naar een oplossing om de fouten sneller en/of eenvoudiger te kunnen opsporen en/of corrigeren, en rekening houdend met de randvoorwaarde dat het systeem (bv. verlichtingssysteem of gebouwautomatisatiesysteem waarin ze gebruikt wordt) moet blijven werken, kwamen de uitvinders van de onderhavige uitvinding op het idee om een werkwijze te verschaffen voor het identificeren van een veelheid van modules die aan een communicatie-bus gekoppeld zijn, door het opvragen van de unieke adressen UA1, UA2, UA3 van de veelheid van te identificeren modules, en die de volgende stappen omvat: (zoals geïllustreerd in FIG. 24, FIG. 25 en FIG. 12 tot FIG. 17) a) het versturen over de communicatie-bus van een identificatieverzoek BO door de GegevensVerzamelModule GV naar de veelheid van modules Dl, D2, D3, voor het opvragen van het unieke adres UA1, UA2, UA3 van deze modules; b) het ontvangen van het identificatieverzoek BO door elk van de veelheid van modules Dl, D2, D3; c) het succesvol versturen van een identificatiebericht BI, B2, B3 door elk van de veelheid van modules Dl, D2, D3 als reactie op het ontvangen identificatieverzoek BO, waarbij ieder identificatiebericht BI, B2, B3 het uniek adres UA1, UA2, UA3 van de betreffende module bevat, waarbij stap c) voor ieder van de veelheid van modules Dl, D2, D3 de volgende stappen omvat: i) het wachten tot de bus vrij is gedurende minstens een vooraf bepaalde tijd W_ID; ii) het trachten te verzenden van het identificatiebericht BI, B2, B3 van de betreffende module, waarbij het trachten te verzenden van het identificatiebericht het achtereenvolgens trachten te verzenden van iedere bit van het identificatiebericht omvat, en waarbij het trachten te verzenden van iedere bit het aansturen en monitoren van de communicatie-bus omvat, en het bepalen of een botsing op de communicatie-bus opgetreden is, iii) en indien een botsing opgetreden is, het stoppen met het verzenden van de betreffende bit en van alle volgende bits van het identificatiebericht, en het herhalen van stappen i) tot iii) totdat het identificatiebericht verzonden is zonder botsing; en indien geen botsing opgetreden is, besluiten dat het identificatiebericht BI, B2, B3 succesvol verzonden is, en niet meer deelnemen aan het trachten te verzenden van het identificatiebericht.

Met "succesvol versturen" wordt bedoeld dat iedere module zal blijven proberen zijn identificatiebericht te versturen, totdat dit gelukt is.

Het is een voordeel van deze werkwijze dat alle unieke adressen van alle modules die effectief met de bus verbonden zijn (behalve dat van de GV, maar de GV hangt meestal rechtstreeks aan een PC, en kan dus rechtstreeks benaderd worden) automatisch kunnen worden opgevraagd zonder tussenkomst van menselijke handelingen, waardoor de kans op menselijke fouten wordt uitgesloten. Door de unieke adressen (die reeds bij de productie van de modules ingebouwd worden in de modules) op te vragen, worden alle modules ondubbelzinnig "ontdekt", ongeacht of het minstens één voorziene bus-adres correct werd toegekend aan de module tijdens de installatie.

Het is een groot voordeel dat het protocol (en dus ook werkwijzen die volgens dit protocol werken, en dus ook bussystemen waaraan inrichtingen gekoppeld zijn die deze werkwijzen uitvoeren) voorziet dat er slechts één enkel identificatieverzoek zal verstuurd worden, waarop ieder van de andere modules zal antwoorden, desnoods in meerdere pogingen, totdat het uiteindelijk gelukt is. Omdat de GV slechts één bericht zal versturen over de bus, wordt veel tijd gewonnen.

Het is een groot voordeel dat het protocol zo voorzien is dat er (in principe, tenzij er "normale boodschappen" tussendoor komen) bij iedere iteratie precies één identificatiebericht ongeschonden over de bus zal verstuurd worden. Dit is vooral te danken aan het feit dat de modules onmiddellijk na het vaststellen van een botsing op bitniveau zullen stoppen met zenden, (wat ze overigens niet alleen doen bij het verzenden van identificatieberichten, maar bij het verzenden van alle berichten). Aangezien het uniek adres vervat zit in het identificatiebericht, en er geen twee modules geproduceerd worden met hetzelfde uniek adres, zijn alle identificatieberichten afkomstig van de veelheid van modules per definitie verschillend, en zal er dus telkens wanneer meerdere modules tegelijk een identificatiebericht beginnen te versturen, precies één identificatiebericht "winnen". Het protocol is zo voorzien dat dit nog steeds geldt, ook als het identificatiebericht meerdere frames bevat (zoals verder zal worden toegeiicht).

Dankzij de botsingsdetectie op bitniveau en het desgevallend stoppen met zenden, en het automatisch opnieuw proberen wanneer de bus voldoende lang vrij is, gaan er geen berichten verloren, en wordt er dus geen tijd verloren op de bus vanwege verminkte (Engels: corrupt) gegevens en heruitzendingen. Dit betekent een belangrijke tijdswinst.

Het is een groot voordeel van deze werkwijze dat ze zelfs uitgevoerd kan worden in een operationeel bussysteem, wat bv. wil zeggen dat het verlichtingssysteem of het gebouwautomatiseringssysteem waarin dit bussysteem deel van uitmaakt, zal blijven werken terwijl deze adresopvraging plaats vindt. Bovendien kan dit gebeuren met een niet of nauwelijks merkbare vertraging (mits een gepaste keuze van wachttijden en/of prioriteiten van berichten en/of bittoewijzigen aan de beschikbare commando's).

Het is een groot voordeel dat deze werkwijze zeer snel kan uitgevoerd worden (bv. grootte-orde in 1,85 a 2,28 seconden voor een bitperiode van 150 ps en een bus met 100 deelnemers, en een uniek adres van 32 bits, aannemend dat de bus niet belast was), omdat bij elke iteratie exact één uniek adres van de modules naar de GegevensVerzamelModule wordt verstuurd. Zulke korte tijd is ongezien, en het voordeel ervan mag niet onderschat worden.

Deze snelheid is vooral te danken aan: 1) het feit dat een "botsing" op de bus niet betekent dat de informatie verloren is gegaan, in tegenstelling tot bijvoorbeeld draadloze communicatie waar een botsing betekent dat beide boodschappen verloren gaan. In de onderhavige uitvinding daarentegen zal zelfs in het geval van een botsing één boodschap correct op de bus worden gezet (zonder verminkt te worden door botsende boodschappen). Dit impliceert dat de tijd die nodig is om alle unieke adressen te versturen nagenoeg lineair toeneemt met het aantal modules gekoppeld aan de bus, en dus niet exponentieel zal toenemen omdat de kans op botsingen zal toenemen. 2) de werkwijze vereist geen speciale ingrepen om botsingen trachten te vermijden (Engels: "collision avoidance"). Integendeel, alle te ontdekken modules mogen perfect tegelijk beginnen met zenden. Omdat er geen variabele wachttijd hoeft voorzien te worden gebaseerd op een pseudo-willekeurige waarde, kan de implementatie vereenvoudigd worden, en kunnen de berichten gemiddeld gezien sneller verstuurd worden. 3) omdat de GegevensVerzamelModule slechts één identificatieverzoek op de bus zal te versturen, waarna alle andere modules vanzelf zullen antwoorden, en vanzelf opnieuw zullen proberen als het niet gelukt is; 4) omdat de GegevensVerzamelModule het uniek adres vraagt, en de "andere modules" hun adres geven, in tegenstelling tot binaire benaderingstechnieken zoals bv. gekend bij DALI, waarbij de meester een adresbereik opgeeft, en de slaven moeten antwoorden of ze binnen dat bereik vallen, of niet; 5) optioneel kan dit nog verder versneld worden door alle andere modules op nagenoeg hetzelfde ogenblik te laten starten (bv. op 1 bitperiode na), door een vaste, vooraf bepaalde wachttijd te gebruiken, bv WJD=l,90 ms. 6) optioneel kan dit nog verder versneld worden door het gebruik van minstens één stroombron in plaats van een passieve optrekweerstand, waardoor de signaalflanken op de digitale bus zeer stijl kunnen zijn (bv. een stijgtijd en daaltijd van minder dan 10 ps, of minder dan 7 ps, of minder dan 5 ps, of minder dan 3 ps, of minder dan 2 ps), zelfs voor een kabel van meer dan 100 m, wat op zijn beurt een kleinere bitperiode toelaat, en dus een hogere bitsnelheid (Engels: bitrate);

In de praktijk wordt een PC of een laptop of dergelijke gekoppeld aan de GV, voor het opslaan en/of weergeven van de unieke adressen, en voor verdere analyse.

Er wordt opgemerkt dat in eerste instantie alleen de unieke adressen worden opgevraagd aan de veelheid van deelnemers, maar dit is de meest cruciale stap. Éénmaal de unieke adressen UA gekend zijn, kunnen de modules individueel geadresseerd worden, door gebruik van specifieke commando's binnen het protocol, waarbij het uniek adres UA gebruikt wordt om één module individueel te adresseren, in plaats van de gebruikelijke (en kortere) busadressen. Deze berichten waarbij het UA wordt gebruikt voor de adressering zijn weliswaar langer dan de "normale berichten" die tijdens de "normale werking" van het systeem tussen de modules worden verstuurd (bv. van een lichtknop naar een lamp), maar zijn bijzonder handig om fouten in het bussysteem op te sporen, en zelfs te corrigeren.

Hierbij wordt opgemerkt dat het op het eerste gezicht misschien triviaal lijkt om lees- en schrijfcommando's op basis van het uniek adres te voorzien in het protocol, maar dat is absoluut niet zo, precies omdat deze adressen niet gekend zijn voor de installateur (bv. omdat ze in gekende werkwijzen niet voorzien worden op het plan), dus zelfs als die functies zouden bestaan in de stand der techniek, zou hij ze niet kunnen gebruiken.

En het was evenmin triviaal om een functie te bedenken om deze adressen op te vragen op de manier zoals hierboven voorgesteld, omdat er duidelijk een vooroordeel bestaat dat men botsing op de bus zoveel mogelijk dient te vermijden.

De unieke adressen laten reeds een eerste analyse toe. Zo is het bv. mogelijk om aan de hand van de structuur van het uniek adres, of door na te gaan in welk bereik het uniek adres valt, of door het uniek adres op te zoeken in een database die tijdens de productie werd opgesteld, bijkomende informatie over de betreffende modules te achterhalen of op te halen, bv. om te bepalen om welk type van module het gaat. Aan de hand van een lijst met functies die correct werken, kan bv. reeds een selectie worden gemaakt voor welke modules bijkomende informatie dient opgevraagd te worden via de bus, en welke niet. Alternatief kan deze informatie ook opgevraagd worden over de bus, bv. door een lees-commando te sturen naar iedere module, waarbij absolute adressering wordt gebruikt in plaats van het lokale busadres.

Verdere details en voordelen zullen duidelijk worden bij de gedetailleerde bespreking van de figuren. FIG. 1 is een replica van FIG. 1 van US8035529(B2), en toont een voorbeeld van een ballastsysteem uit de stand der techniek, gebaseerd op het welgekende "DAU"-protocol. Hoewel de onderhavige uitvinding niet beperkt is tot verlichtingssystemen met een ballast, is dit document uit de stand der techniek interessant als achtergrond informatie voor lezers niet vertrouwd met dergelijke bussystemen, of met het DALI-protocol, of met "commissioning".

Voor de onderhavige uitvinding volstaat het te weten dat FIG. 1 een meester-slaafsysteem 100 toont met een meester-module 20 die berichten over de bus 16 verstuurt (volgens het DALI- protocol) naar de veelheid van modules 12 voor het apart of in groep aansturen van lampen 44. Bij de installatie wordt aan elke module een 6-bits busadres toegekend, bv. gebruik makend van afstandsbediening 18 en infrarood ontvanger 24. De lezer kan meer details lezen in het betreffende document. FIG. 2 is een replica van FIG. 2A van US76O6955(B1), en toont een voorbeeld van een (extreem eenvoudig voorgesteld) bussysteem 200 met een meester-slaaf architectuur, waarbij de bus 203 passief hoog getrokken wordt door een externe 204 of interne 205 optrekweerstand. De modules 201, 211 hebben een bus-interface met een ingangsbuffer 207, 217 en een uitgangsbuffer 206, 216 die aan elkaar gekoppeld zijn. De uitgangsbuffer 206, 216 heeft een "open-collector uitgang" of een "open drain uitgang" waarmee de bus 203 actief laag getrokken kan worden. De werking van zulke bus-interface is welgekend in de stand der techniek, en hoeft daarom niet verder in detail besproken te worden.

De modules 201, 211 van FIG. 2 zijn zodanig verbonden dat de bus 203 een laag spanningsniveau (bv. 0V) zal aannemen wanneer minstens één van de modules 201, 211 de bus laag trekt, en dat de bus 203 een hoog spanningsniveau zal aannemen (bv. 3V) wanneer geen enkele module 201, 211 de bus laag trekt maar de bus wordt hoog getrokken door de optrekweerstand.

Hoewel niet expliciet getoond, bevat de meester 201 en de slaaf 211 elk een controller die een te verzenden signaal aanbiedt aan de uitgangsbuffer 206, 216, en die een signaal ontvangt via de ingangsbuffer 207, 217.

Tijdens het verzenden van een signaal monitort elke module 201, 211 of het te verzenden signaal inderdaad op de bus 203 verschijnt. Een zogenaamde "botsing" treedt op wanneer één van de modules een (passief) hoog niveau op de bus wil zetten, terwijl de bus actief laag wordt getrokken door een andere module. Zulke botsing kan eenvoudig gedetecteerd worden door het signaal van de ingangsbuffer 207, 217 te vergelijken met het te versturen signaal dat aangeboden wordt aan de uitgangsbuffer 206, 216. De bus 203 wordt een "digitale bus" genoemd omdat er slechts twee signaalniveaus onderscheiden dienen te worden: "laag" wanneer de busspanning in een eerste spanningsbereik ligt of hoog "hoog" wanneer de busspanning in een tweede spanningsbereik ligt, dat niet overlapt met het eerste spanningsbereik. FIG. 3 toont een voorbeeldmatig blokdiagram van een interface-module 300 (of kortweg "module") volgens de onderhavige uitvinding. De interface-module 300 bevat minstens één bus-interface 303 en een controller of processor 301.

De bus-interface 303 van FIG. 3 heeft een uitgangsbuffer (niet getoond) om signalen te kunnen verzenden, en heeft een ingangsbuffer (niet getoond) om signalen te kunnen ontvangen. De module 300 heeft verder middelen (niet getoond) om een botsing te detecteren op de bus, en heeft middelen om de uitgangsbuffer uit te schakelen (wat betekent dat er gestopt wordt met zenden) zodra een botsing wordt gedetecteerd.

De controller of processor 301 kan bijvoorbeeld een toestandsmachine (Engels: "statemachine") zijn, of kan een programmeerbare processor zijn, bv. een programmeerbare microprocessor, met een intern of extern werkgeheugen (bv. RAM), en met een intern of extern niet-vluchtig geheugen (bv. ROM, FLASH, EEPROM) voor het opslaan van programma-instructies die uitgevoerd dienen te worden door de processor. Deze programma-instructies zorgen ervoor dat communicatie over de bus gebeurt volgens een specifiek protocol.

Optioneel kan de module 300 een interne optrekweerstand 305 bevatten, al dan niet via een schakelaar (niet getoond) verbonden aan de voedingsspanning VDD, om de bus passief hoog te trekken.

Optioneel kan de module 300 een interne stroombron 304 bevatten, al dan niet via een schakelaar (niet getoond) verbonden aan de voedingsspanning VDD, om de bus actief hoog te trekken, maar met een (relatief zwakke) stroom die kleiner is dan de (relatief sterke) stroom die afgevoerd kan worden door de uitgangsbuffers. Een voordeel van het gebruik van een stroombron 304 in plaats van een optrekweerstand 305 is dat de spanning op de bus nagenoeg lineair kan stijgen (of dalen) als functie van de tijd in plaats van exponentieel. Hierdoor kunnen stijlere flanken bekomen worden, wat toelaat om de bitperiode te verkleinen.

In voorkeursuitvoeringsvormen van de onderhavige uitvinding wordt de bus 311 passief hoog getrokken door middel van minstens één interne optrekweerstand 305 , of door middel van minstens één interne stroombron 304, of door middel van een externe optrekweerstand (zoals in FIG. 2).

Optioneel bevat de module 300 nog één of meer bijkomende blokken zoals een IR (infrarood) zendontvanger 306, een RF zendontvanger 307, een temperatuursensor 308, een bewegingsdetector 309, een glasvezel-zendontvanger (niet getoond), enzovoorts.

Verder kan de module één of meerdere externe ingangen "IN” en/of één of meerdere externe uitgangen "UIT" hebben, afhankelijk van de component waaraan deze interface-module 300 verbonden dient te worden. In het voorbeeld van FIG. 3 wordt een module 300 met twee ingangen en drie uitgangen getoond, maar uiteraard is de uitvinding daartoe niet beperkt, en bepaalde modules kunnen bv. slechts één enkele ingang hebben en geen uitgang, of slechts één uitgangen geen ingang.

In voorkeursuitvoeringsvormen van de onderhavige uitvinding wordt aan iedere ingang en aan iedere uitgang van de module 300 een uniek busadres toegekend, waarbij het busadres ongeveer dezelfde functie heeft als een busadres bij DALI, met ais verschil dat bij DALI één module slechts één busadres heeft terwijl een module 300 volgens de onderhavige uitvinding meerdere busadressen kan hebben, en dat een DALI-adres slechts 6 bits lang is (max. 64 componenten), terwijl een busadres in voorkeursuitvoeringsvormen van de onderhavige uitvinding minstens 10 bits (max. 1024 componenten), of minstens 12 bits (max. 4048 componenten) of minstens 14 bits of minstens 16 bits of minstens 20 bits lang is.

Als voorbeeld, wanneer er bv. een dimmer aan uitgang UIT1 hangt, en aan deze dimmer is bv. busadres "500" toegekend volgens het plan, dan dient de module 300 overeenkomstig geconfigureerd te worden door de installateur, bv. door het opslaan van getal "500" op een specifieke plaats in een niet-vluchtig geheugen. Dit kan eventueel hetzelfde flash-geheugen 314 zijn als dat waarin de uitvoerbare code is opgeslagen, of het kan een apart niet-vluchtig geheugen zijn, bv. EEPROM 302. Na het opslaan van het getal "500" als busadres voor uitgang UIT1 (in dit voorbeeld) zal de module 300 berichten bestemd voor busadres "500" ontvangen en decoderen, en de uitgang UIT1 overeenkomstig aansturen.

Indien bv. ingang IN2 verbonden is met een drukknop met busadres "188", dan kan op een gelijkaardige manier door het opslaan van getal "188" in een niet-vluchtig geheugen van de module 300, de module geconfigureerd worden om een bericht te verzenden afkomstig van "busadres 188" wanneer de betreffende drukknop wordt ingedrukt.

In de context van de onderhavige uitvinding dient tijdens de "commissioning" in principe een uniek busadres toegekend te worden aan iedere ingang en aan iedere uitgang van de module (in zoverre dat die gebruikt wordt), waarbij het busadres alleen uniek hoeft te zijn binnen één bepaald bussysteem (meestal één gebouw). Indien de module 300 slechts één ingang of slechts één uitgang bevat, dan kan dat ene busadres beschouwd worden als het busadres van de module (zoals bij DALI).

De functie van het dimmen en het nagaan van de status van een drukknop (in het voorbeeld van hierboven) is eigen aan het type van module 300, en zal doorgaans verschillen per type. In voorkeursuitvoeringsvormen van de onderhavige uitvinding kan informatie, waaronder het type van de module, opgevraagd worden via de bus-interface.

Optioneel bevat de module 300 verder een seriële interface, bv. een I2C of een RS232 of een SPI-interface, die bijvoorbeeld gebruikt kan worden om de busadressen te programmeren tijdens de hoger genoemde "commissioning". Alternatief kan er bv. een drukknop voorzien worden (niet getoond) verbonden met een daartoe bestemde ingang PROG van de controller 301, om ervoor te zorgen dat de module 300 een speciale routine uitvoert waarbij hij een speciaal daartoe bestemd bericht met daarin minstens één busadres zal ontvangen en zal opslaan, om later te gebruiken als busadres. In het voorbeeld van hierboven zou dat speciale bericht bv. het busadres "500" bevatten bestemd voor uitgang UIT1 en het busadres "188" bestemd voor ingang IN2, en eventueel andere busadressen voor de andere ingangen en uitgangen.

De seriële interface kan ook gebruikt worden om te communiceren met een gebruikersinrichting, bv. een computer 401, zoals getoond in het voorbeeld van FIG. 4, waar de module D01 fungeert als GegevensVerzamelModule GV en informatie kan doorsturen of uitwisselen met de PC 401. Alternatief kan communicatie met de gebruikersinrichting 401 (bv. PC) ook gebeuren via de IR zendontvanger 306 (indien aanwezig), of via de RF zendontvanger 307 (bv. Wifi of Bluetooth), of via een andere geschikte interface, zoals een USB-poort (niet getoond).

Elke module 300 volgens de onderhavige uitvinding heeft een uniek adres UA, bv. een serienummer, zo gekozen dat er geen twee modules 300 met hetzelfde uniek adres bestaan. Dit uniek adres wordt doorgaans tijdens de productie van de module 300 opgeslagen in een niet vluchtig geheugen van de module, bv. in Flash of EEPROM, of liever nog in een OTP geheugen (One-Time-Programmabie).

Uiteraard heeft elke module 300 ook een poort voor connectie met een voeding Vdd en een referentiepotentiaal Gnd. In het voorbeeld van FIG. 3 kan de voeding bv. een gelijkspanning VDD zijn die geleverd wordt door een externe transformator (niet getoond), maar deze voeding kan ook geleverd worden via één van de draden van de bus (zoals verder zal besproken worden in FIG. 7 tot FIG. 9).

Verder bevat de module 300 bij voorkeur een klokcircuit 310, voor het genereren van één of meerdere interne kloksignalen. Klokcircuits zijn gekend in de stand der techniek, en kunnen bv. gebaseerd zijn op een interne RC-vertraging, of zijn bij voorkeur gebaseerd op de oscillatiefrequentie van een extern kristal 315. Indien de bus 311 zelf een kloksignaal aanlevert (niet getoond), dan kan het kristal 315 eventueel weggelaten worden, anders dient de module 300 zijn timing te synchroniseren met de flanken van het data-signaal op de bus 311, op gekende manieren.

Optioneel kan de module 300 een zgn. ware-tijd-klok (Engels: "Real Time Clock") 313 bevatten, dat is meestal een chip gevoed door een lokale batterij, welke chip de datum en de tijd bijhoudt (bv. in uren, minuten en seconden), zoals bv. gekend in de PC-wereld. Deze ware-tijd-klok kan bv. handig zijn om tijdstempels (Engels: "time-stamps") toe te voegen aan logboekberichten die opgeslagen worden in een logboek in een niet-vluchtig geheugen.

Bij voorkeur omvat de module 300 ook een zgn. "watchdog-timer" 312, of een bewakingcircuit, dat bv. zorgt voor een interne reset van de module 300 bij het opkomen van de spanning, of wanneer er gedurende een vooraf bepaalde tijd geen activiteit van de controller meer wordt vastgesteld.

De module 300 volgens de onderhavige uitvinding is nieuw ten opzichte van de stand der techniek, onder meer omdat de controller 301 voorzien is, bv. geprogrammeerd is voor het uitvoeren van communicaties over de bus 311 volgens een specifiek protocol dat minstens de werkwijze bevat waarbij de module 300 bij het ontvangen van het identificatieverzoek, herhaaldelijk zal trachten zijn uniek adres te versturen via een identificatieboodschap (getoond aan de rechterkant van FIG. 25). FIG. 4 is een schematische voorstelling van een voorbeeld van een (zeer eenvoudig) "verlichtingssysteem" of een "gebouwautomatiseringssysteem" 420, omvattende vier componenten COMP1, COMP2, COMP3, COMP4 (bijvoorbeeld gekozen uit de verzameling bestaande uit een lichtknop, een lamp, een bewegingsdetector, en een zonnewering), en drie interface-modules Dl, D2, D3 en een digitale bus 404 met draden (Engels: "wired bus"). In het voorbeeld van FIG. 4 is module Dl verbonden met slechts één component Dl, en is module D2 verbonden met slechts één component D2, maar is module D3 verbonden met twee componenten D3, D4. Elke module Dl, D2, D3 heeft een uniek adres of serienummer, respectievelijk UA1, UA2, UA3. Deze unieke adressen worden echter niet gebruikt tijdens de "normale werking" van het verlichttingssysteem of het gebouwautomatiseringssysteem, maar wel busadres BA1 dat toegekend wordt aan module Dl en geassocieerd wordt de ingang of uitgang waaraan de eerste component COMP1 gekoppeld is, busadres BA2 dat toegekend wordt aan module D2 en geassocieerd wordt met de ingang of uitgang waaraan de tweede component COM2 gekoppeld is, en busadressen BA3 en BA4 die beiden toegekend worden aan module D3, waarbij busadres BA3 geassocieerd wordt met de ingang of uitgang waaraan de derde component COMP3 is verbonden, en busadres BA4 geassocieerd wordt met de ingang of uitgang waaraan de vierde component COMP4 is verbonden

Het deelsysteem dat de interface-modules Dl, D2, D3 en de digitale bus 404 omvat, wordt het "bussysteem" genoemd. De modules Dl, D2 en D3 kunnen slaven op de bus zijn, maar kunnen ook meesters zijn, d.w.z. dat ze autonoom een bericht over de bus kunnen versturen, zonder dat daarom gevraagd werd door een andere module.

Aan de bus 404 kan optioneel ook een module DO gekoppeld zijn, tijdelijk of permanent. In het voorbeeld van FIG. 4 is deze module DO niet gekoppeld met één van de hoger genoemde componenten COMP1, COMP2, COMP3, maar is verbindbaar of functioneel verbonden met een gebruikersinrichting 401, bv. een PC met invoerorganen 403 en een scherm 402, of een Laptop of een tablet of een smartphone. De module DO kan bv. gebruikt worden voor het configureren of herconfigureren van het bussystem en/of voor het monitoren van traffiek over de bus 404, enz. De PC 401 kan bv. informatie over het bussysteem opvragen via de interface-module DO, waarmee hij functioneel verbonden is, bv. door middel van een seriële of draadloze interface, en kan deze informatie bv. weergeven op een scherm 402, of opslaan op een opslagmedium (niet getoond), enz.

In de context van de onderhavige uitvinding fungeert de module DO als "GegevensVerzamelModule", afgekort: "GV", wat betekent dat dit de module is die het hoger beschreven "identificatieverzoek" op de bus verstuurt, en die de "identificatieberichten" ontvangt van de andere modules Dl, D2, D3 met daarin respectievelijk de unieke adressen UA1, UA2, UA3. De GV kan deze identificatieberichten of deze unieke adressen doorsturen naar de gebruikersinrichting 401 voor verdere verwerking, bv. voor weergave op een scherm 402. De term "GegevensVerzamelModule" wordt in dit document gebruikt om een onderscheid te maken met de gekende begrippen van "meester" en "slaaf".

Een mogelijk scenario om het bussysteem van FIG. 4 correct te installeren in een gebouw verloopt bv. als volgt: - een installateur legt een kabel 404 met meerdere draden van een controlekamer naar een bepaalde kamer van een gebouw, volgens een plan; - de installateur monteert de componenten COMP1, COMP2, COMP3, COMP4 en monteert de modules Dl, D2, D3, en verbindt de componenten met de bijhorende modules, en verbindt de modules met de kabel 404; - de installateur programmeert (op gekende wijze) het busadres BA1 voor component COMP1 in module Dl, en programmeert het busadres BA2 voor component COMP2 in module D2, en programmeert de busadressen BA3 en BA4 voor COMP3 en COMP4 in module D3, zoals voorzien in het plan. Iedere module Dl, D2, D3 slaat het/de aan hem toegekende busadres(sen) op in een intern niet-vluchtig geheugen (bv. in flash of eeprom).

Stel nu bij wijze van voorbeeld dat de installateur correct busadres BA1="1" toekent aan module Dl, maar per vergissing niet busadres BA2="22" in module D2 heeft opgeslagen, maar een foutief adres (bv. adres "23"), en wel correct busadres BA3="33" opslaat in module D3, maar per vergissing heeft vergeten het busadres BA4="43" op te slaan in de module D3. Uiteraard zal het verlichtingssysteem of het gebouwautomatiseringssysteem waarin het bussysteem wordt gebruikt dan niet werken zoals voorzien in het plan. Om deze fout(en) te detecteren en te corrigeren dient de installateur zich fysiek naar elk van de modules Dl, D2 en D3 te begeven (want hij weet niet welke modules correct, en welke modules niet correct geprogrammeerd zijn), en dient bv. de toekenning van het busadres/de busadressen alsnog of opnieuw uit te voeren, of toch minstens extra handelingen uit te voeren om het busadres dat opgeslagen is in de module (of de fabriekswaarde) op de een of andere manier op te vragen (bv. in het geval van een lamp is het soms mogelijk een gemoduleerd lichtsignaal te versturen, aan de hand waarvan het busadres kan bepaald worden). Dit is tijdrovend, en soms heel lastig of zelfs onmogelijk, bv. omdat de betreffende kamer waarin de module zich bevindt afgesloten is.

Volgens de onderhavige uitvinding kunnen tenminste sommige van deze problemen veel sneller, en/of eleganter gedetecteerd worden, en eventueel zelfs vanop afstand opgelost worden, bij voorbeeld als volgt (verwijzend naar FIG. 4 en FIG. 24): - indien de module DO nog niet aanwezig is, dan wordt ze toegevoegd, en (tijdelijk of permanent) verbonden met de digitale bus 404, zoals getoond in FIG. 4; - indien de gebruiksinrichting 401, bv. PC of laptop of dergelijke nog niet aanwezig is in het systeem, wordt ook deze toegevoegd, en functioneel verbonden met de module DO, zoals getoond in FIG. 4 (bv. via Bluetooth); - de module DO fungeert als GegevensVerzamelModule GV en verstuurt een identificatieverzoek BO (zie ook FIG. 12) naar de andere modules DI, D2, D3, bv. na het drukken op een knop (niet getoond), of na het ontvangen van een opdracht vanuit de PC 401, of op een andere geschikte wijze.

Dit identificatieverzoek BO is een zgn. "query-commando" of "broadcast-commando", wat betekent dat het een bericht is dat bestemd is voor alle andere modules, ongeacht hun busadres(sen). Dit bericht bevat een vooraf bepaald bitpatroon om aan te duiden dat dit bericht een identificatieverzoek is, vastgelegd in het protocol. Het bericht B0 zai ontvangen worden door de andere modules Dl, D2, D3. De modules Dl, D2 en D3 zullen dit commando ontvangen zelfs indien hun busadres(sen) nog niet, of verkeerd geprogrammeerd is/zijn.

Vervolgens zullen de andere modules Dl, D2, D3, als reactie op het identificatieverzoek, elk een eigen identificatiebericht terugsturen over de bus, bestemd voor de GegevensVerzamelModule GV. Deze identificatieberichten BI, B2, B3 bevatten een eerste gedeelte dat dient om aan te geven dat dit bericht een identificatiebericht is, en een tweede gedeelte dat het uniek adres UA1, UA2, UA3 van de betreffende module bevat. Het eerste gedeelte is een vooraf bepaald bitpatroon dat gelijk is voor alle modules. Het tweede gedeelte is verschillend.

De GegevensVerzamelModule GV herkent deze identificatieberichten aan de hand van het specifieke bitpatroon dat aangeeft dat dit een identificatiebericht is, en ontvangt de berichten met de unieke adressen van alle andere modules Dl, D2, D3. In FIG. 12 tot FIG. 19 zal aan de hand van een vereenvoudigd voorbeeld in meer detail toegelicht worden hoe dit kan gebeuren, zowel op bit-niveau als op frame-niveau. Eén van de onderliggende ideeën van de onderhavige uitvinding is erop gebaseerd dat elk uniek adres UA1, UA2, UA3 waarlijk uniek is, en dat bijgevolg ook de identificatieberichten uniek zijn, waardoor het gegarandeerd is dat elk identificatiebericht precies één keer ongeschonden over de bus zal verstuurd worden, zelfs wanneer honderden of zelfs duizend of meer modules "nagenoeg tegelijk” beginnen met hun identificatiebericht te verzenden, en zelfs wanneer het systeem reeds operationeel was op het moment dat het identificatieverzoek wordt verstuurd, en er "normale berichten" tussen de identificatieberichten worden verstuurd.

Er wordt opgemerkt dat de module DO die fungeert als GV slechts één enkel query-commando zal versturen, en dat de andere modules Dl, D2, D3 vanzelf opnieuw zullen proberen om hun identificatiebericht BI, B2, B3 te verzenden, mocht het niet van de eerste poging lukken. Doordat de GV slechts één commando zal versturen, wordt de trafiek op de bus beperkt, en wordt veel tijd gewonnen. Wanneer de bus inactief blijft over minstens een vooraf bepaalde time-out periode WJD, dan weet de module DO dat alle identificatieberichten verstuurd zijn.

Het is belangrijk om op te merken dat de herhaalde pogingen wei als "heruitzendingen" voor de betreffende module mogen worden beschouwd, maar niet als "heruitzending" op de bus vanwege verminkte boodschappen veroorzaakt door botsingen. Het protocol is zo gedefinieerd dat er wel botsingen zullen voorkomen wanneer twee (of meer) modules tegelijk een verschillende bit op de bus trachten te zetten, maar de module waarvan de informatie verminkt wordt, stopt meteen met zenden, en de module waarvan de data ongeschonden blijft, gaat verder met verzenden. Dit aspect an sich is weliswaar gekend, maar niet in combinatie met het opvragen van de unieke addressen die automatisch het ene na het andere worden verstuurd, waardoor een grote snelheidswinst wordt bereikt. En ook niet in combinatie met het optioneel kenmerk dat er geen pseudo-random tijd wordt gewacht alvorens de identificatieberichten te versturen.

Terug verwijzend naar FIG. 4, zullen alle unieke adressen UA1, UA2, UA3 dus verzonden worden naar het gebruikerstoestel 401, bv. een PC met een scherm 402 en invoerorgangen 403 (bv. een toetsenbord en een muis). Deze unieke adressen zijn de basis voor verdere analyse.

Wanneer de unieke adressen gekend zijn, kan er bv. een commando verstuurd worden naar iedere module Dl, D2, D3 afzonderlijk, om meer details op te vragen, zoals bv. het type van de module, en/of het busadres of de busadressen die opgeslagen zijn in de module, enz.

Daartoe kan het protocol van een bussysteem volgens de onderhavige uitvinding tevens commando's bevatten om bepaalde informatie op te vragen van één bepaalde module die geadresseerd wordt aan de hand van zijn uniek adres, en kan het protocol ook commando's bevatten om deze informatie te versturen vanuit de betreffende module naar de GV, om eventueel daarin opgeslagen te worden in een niet-vluchtig geheugen. In de stand der techniek kan weliswaar informatie opgevraagd worden aan de modules (inclusief het serienummer), maar die communicatie gebeurt op basis van het toegekende busadres, en werkt dus pas nadat de busadressen correct zijn toegekend, en werkt niet als er geen of een foutief busadres is toegekend. De bijkomende functie van de onderhavige uitvinding, waarmee modules individueel kunnen geadresseerd worden gebruik makend van hun uniek adres, zijn dus uitermate geschikt om fouten op te sporen en/of te corrigeren, maar pas nadat de unieke adressen gekend zijn.

Eventueel kan de PC 401 ook een gegevensbestand consulteren, waarin extra informatie is opgeslagen van de geproduceerde modules, op basis van het unieke adres. Zo kan bv. het type van iedere module eenvoudig opgehaaid worden uit een gegevensbestand.

Terug verwijzend naar het voorbeeld van hierboven, kan de installateur bepalen dat: (a) de module Dl van het type is om te interfacen met COMP1 (bv. een drukknop), en dat het busadres BA1 correct geprogrammeerd is, en dat (b) de module D2 van het type is om te interfacen met COMP2 (bv. een lamp), en dat het busadres BA2 verkeerd geprogrammeerd is, en dat (c) de module D3 van het type is om te interfacen met COMP3 (bv. een relais voor een motor van een zonnewering) en COMP4 (bv. een windsensor), en dat het busadres BA3 correct geprogrammeerd is, maar het busadres BA4 niet geprogrammeerd is.

Deze fouten kunnen vervolgens eenvoudig gecorrigeerd worden door het versturen van een correct busadres naar module D2 en D3, gebruik makend van een schrijf-commando met absolute addressering (d.w.z. waarbij het unieke adres wordt gebruikt om de module te addresseren en niet het busadres).

Uit het voorbeeld van hierboven blijkt dat het niet altijd noodzakelijk is de fysieke locatie van de modules te kennen, en dat het niet altijd nodig is om naar de fysieke locatie te gaan waar de betreffende component zich bevindt, maar soms is dat wel nodig. Maar zelfs dan is de onderhavige uitvinding bijzonder handig, omdat het aantal componenten dat handmatig geverifieerd dient te worden drastisch kan verminderd worden.

Samengevat laat de onderhavige uitvinding dus toe om op een snelle manier alle unieke adressen te vinden (met slechts één query-commando), en laat vervolgens toe om iedere module individueel te adresseren aan de hand van hun uniek adres, om bijkomende informatie te lezen en/of te schrijven. Eventueel kan ook een gegevensbestand geraadpleegd worden om bepaalde informatie op te vragen op basis van het uniek adres. Aan de hand van deze informatie kan de installateur een diagnose maken van de fouten, en kan zeer gericht de nodige correcties uitvoeren. FIG. 5 is een schematische voorstelling van een tweede voorbeeld van een bussysteem volgens de onderhavige uitvinding, en van een verlichtingssysteem of een gebouwautomatiseringssysteem dat het bussysteem omvat.

Het bussysteem van FIG. 5 omvat een eerste fysieke geleider VO die modules DOI, D02 en D03 gesitueerd op een gelijkvloers van een gebouw verbindt, voor het interfacen met bijhorende componenten COMPOl, COMP02, COM03, en omvat een tweede fysieke geleider VI die modules Dll, D12 en D13 gesitueerd op een eerste verdieping van het gebouw verbindt, voor het interfacen met bijhorende componenten COMP11, COMP12, COMP13. De eerste geleider VO en de tweede geleider VI zijn elektrisch met elkaar verbonden via een zogenaamde "backbone" BB.

Op een gelijkaardige manier als beschreven in het voorbeeld van FIG. 4, kan de GegevensVerzamelModule 504 een identificatieverzoek sturen naar elk van de modules DOI, D02, D03, Dll, D12, D13, en zal elke module antwoorden met een identificatiebericht dat het unieke adres van de betreffende module bevat.

Daarna kan de GegevensVerzamelModule GV desgewenst bijkomende informatie opvragen van de modules door deze te adresseren aan de hand van hun uniek adres (hierin "absolute addressering genoemd"), en/of kan de GegevensVerzamelModule GV één of meerdere busadressen vanop afstand programmeren in de betreffende module.

Hierboven werd beschreven hoe het identificatieverzoek en de identificatieberichten kunnen gebruikt worden om fouten te detecteren gemaakt bij de initiële toekenning van één of meer busadressen bij de installatie van het systeem, maar de onderhavige uitvinding is daartoe niet beperkt, en kan bv. ook gebruikt worden bij pannes, bijvoorbeeld om te detecteren of alle modules nog reageren, of kan bijvoorbeeld ook gebruikt worden om een up-to-date lijstte genereren met de unieke adressen met de toegekende busadressen (bv. om te bepalen welke busadressen nog vrij zijn wanneer een module wordt toegevoegd aan het systeem), enz.

In een voorkeursuitvoeringsvorm van de onderhavige uitvinding is het busprotocol zodanig ontworpen dat het versturen van het identificatieverzoek door de GegevensVerzamelModule 504, en het daarop antwoorden door alle andere modules DOI, D02, D03, D04, D05, D06 kan uitgevoerd worden terwijl het systeem "in werking" is als verlichttingssysteem of als gebouwautomatiseringssysteem. Wanneer er bijvoorbeeld twee modules (niet getoond) en twee componenten (niet getoond) worden bijgeplaatst op de eerste verdieping, dan is het wenselijk dat de verlichting en/of de functies zoals airconditioning en/of zonnewering op het gelijkvloers blijven werken. Zoals verder zal toegelicht worden is dit mogelijk omdat het identificatieverzoek en de identificatieberichten gebruik maken van eenzelfde framestructuur als de framestructuur die gebruikt wordt voor het verzenden van "normale" boodschappen tussen componenten (bv. van een drukknop naar een verlichting, of van een lichtsensor naar een zonnewering, enz.). Dat geldt ook voor de lees- en schrijfoperaties met absolute addressering.

Het zal duidelijk zijn dat een relatief snelle detectie van alle unieke adressen, en vooral een communicatie waarbij de andere modules kunnen blijven werken, des te belangrijker wordt naarmate het gebouw meer modules en/of meer componenten heeft, bijvoorbeeld minstens 17, of minstens 33, of minstens 50, of minstens 65, of minstens 100, of minstens 129, of minstens 150, of minstens 200, of minstens 257.

In een uitvoeringsvorm van de onderhavige uitvinding hebben identificatieberichten een lagere prioriteit op de bus dan andere berichten zoals bv. berichten voor het versturen van een bericht van een drukknop naar een lamp (hierin "normale berichten" of ook "operationele berichten" genoemd). Op die manier wordt voorkomen dat de identificatieberichten de bus volledig innemen totdat alle modules geïdentificeerd zijn. Dit kan bv. eenvoudig geïmplementeerd worden door de minimale wachttijd W_ID (zie FIG. 19) voorafgaand aan een identificatiebericht groter te kiezen dan de minimale wachttijd voorafgaand aan een "normaal bericht", bv. minstens 2.1 ms in plaats van minstens 1.95 ms.

Bij voorkeur zijn de modules zo uitgevoerd dat, wanneer de module zowel een identificatiebericht moet verzenden alsook een "normaal bericht" (bv. een bericht vanwege het indrukken van een drukknop of vanwege een detector gekoppeld aan de module), dat het "normale bericht" eerder verstuurd wordt dan het identificatiebericht. Dit is een kwestie van het bepalen van welk te versturen bericht voorrang krijgt in de module. In het geval van een programmeerbare controller, kan deze functionaliteit eenvoudig voorzien worden in het programma dat uitgevoerd wordt door de controller.

Uiteraard moeten alle modules ten allen tijde luisteren naar de bus, en de nodige actie uitvoeren indien een bericht ontvangen wordt dat voor hem bestemd is, bv. het aanschakelen van een bepaalde lamp die verbonden is met deze module, zelfs indien de module nog een identificatiebericht moet versturen. Dit kan bv. eenvoudig geïmplementeerd worden door bv. een microcontroller te gebruiken die aan een voldoend hoge kloksnelheid wordt geklokt. FIG. 6 is een derde schematisch voorbeeld van een bussysteem volgens de onderhavige uitvinding. Het is een variant van het bussysteem van FIG. 5. De componenten zijn niet weergegeven om de tekening niet te overladen. Het voornaamste verschil met het bussysteem van FIG. 5 is dat er signaalversterkers Rl, R2 zijn toegevoegd op de bus, om de impedantie van de bus te verlagen. De signaalversterkers kunnen bv. twee deelcircuits omvatten, verbonden met een optische koppeling.

De deelcircuits zijn bij voorkeur zo uitgevoerd dat wanneer de bus aan de ene kant van de signaalversterkers laag is (bv. aan de kant van de backbone BB), dat de signaalversterker de bus aan de andere kant (bv. deelbus VO) ook laag trekt, en omgekeerd. Dankzij de optische koppeling in de signaalversterkers is de impedantie van de bus drastisch verlaagd, wat de steilheid van de flanken ten goede komt, waardoor een hogere bitsnelheid kan gekozen worden, en kunnen alle modules functioneel met elkaar praten alsof ze allemaal aan eenzelfde draad hingen. Zulk bussysteem biedt een enorme flexibiliteit qua herconfiguratie, zonder de nadelen die gepaard gaan met lange leidingen, zoals trage flanken en lage bitsnelheid. FIG. 7 tot FIG. 9 tonen enkele voorbeelden van bedrade bussen (Engels: "wired bus"), gekend in de stand der techniek. Deze figuren dienen onder meer om aan te geven dat de voeding voor de modules van de bus kan komen of lokaal kan gegenereerd worden, en/of om aan te geven dat de bus bv. een tweedraads of driedraads bus kan zijn, maar de uitvinding is daartoe niet beperkt. FIG. 7 toont een voorbeeld van een tweedraadsbus met twee elektrische geleiders waarbij één geleider "GND" fungeert als referentie (grond), en een andere geleider "DATA" gebruikt wordt voor data-overdracht. In dit geval dienen de modules Dl, D2, D3 zelfstandig gevoed te worden, bijvoorbeeld vanuit een lokale transformator of vanuit een batterij (niet getoond). FIG. 8 toont een voorbeeld van driedraadsbus met drie elektrische geleiders waarbij één geleider "GND" fungeert als referentie (grond), een tweede geleider "DATA" gebruikt wordt voor dataoverdracht, en een derde geleider "VDD" gebruikt wordt om ten minste sommige andere deelnemers te voeden via de bus. De spanning VDD is bij voorkeur een gelijkspanning. FIG. 9 toont een voorbeeld van een tweedraadsbus met twee elektrische geleiders waarbij één geleider "GND" fungeert als referentie (grond), en de tweede geleider "DATA/VDD" gebruikt wordt voor zowel data-overdracht als voor het voeden van andere deelnemers. Deze deelnemers dienen dan wel speciale voorzieningen te hebben zoals bv. een diode en een capaciteit, maar dergelijke circuits zijn bekend in de stand der techniek, en hoeven dus niet verder toegelicht worden.

Bussystemen volgens de onderhavige uitvinding kunnen gebruikt worden met elk van de configuraties getoond in FIG. 7 of FIG. 8 of FIG. 9, maar zijn daartoe niet beperkt. Zo kan een bussysteem volgens de onderhavige uitvinding bv. ook werken met tweepolige signalen (Engels: "dual ended signals"), of met synchrone signalen (in dit geval bevat de bus bv. een extra geleider met een klok-signaal). FIG. 10 toont enkele voorbeelden van signalen die gebruikt kunnen worden in uitvoeringsvormen van de onderhavige uitvinding. De modules van een bussysteem volgens de onderhavige uitvinding hoeven slechts drie verschillende signalen te onderscheiden op de bus: - een "databitl-signaal" (of kortweg "databitl") overeenkomstig een logische "1", - een "databitO-signaal" (of kortweg "databitO") overeenkomstig een logische "0", - een "leeg signaal" (Engels: "idle", dat aangeeft dat de bus vrij is). Deze vorm wordt gebruikt tussen verschillende sequenties van bits (verder "frame" genoemd).

In een voorkeursuitvoeringsvorm van de onderhavige uitvinding, heeft het "databitl-signaal" een vooraf bepaalde bitperiode (bv. 150 ps) en een vooraf bepaalde vorm met één spanningstransitie van een laag niveau (bv. 0V) naar een hoog niveau (bv. 24V) na ongeveer 2/3 van de bitperiode (bv. 100 ps), zoals weergegeven in FIG. 10(a); en heeft het "databitO-signaal" een vooraf bepaalde bitperiode gelijk aan de duur van het databitl-signaal (bv. 150 ps), en een vooraf bepaalde vorm met één spanningstransitie van het laag niveau (bv. 0V) naar het hoog niveau (bv. 24V) na ongeveer 1/3 van de bitperiode (bv. 50 ps), zoals weergegeven in FIG. 10(b); en heeft het "vrij-signaal" een signaalvorm gelijk aan het hoog niveau (bv. 24V), zoals weergegeven in FIG. 10(c), met een onbepaalde duur; maar de uitvinding is hiertoe niet beperkt, en zal ook werken met andere signaalvormen en/of andere spanningswaarden en/of een andere timing, op voorwaarde dat de signalen toelaten dat een botsing van een databitl-signaal en een databitO-signaal op bitniveau kan gedetecteerd worden, en dat één van de bits zelfs bij botsing ongeschonden verstuurd wordt, aannemende dat alle zenders van de niet-dominante bit stoppen met zenden vóór het einde van de bitperiode.

Hierbij dient opgemerkt te worden dat de signalen getoond in FIG. 10 ideaal zijn voorgesteld. In de praktijk zal het signaal niet exact OV of 24V zijn, maar zulke aspecten zijn gekend, en hoeven niet verder toegelicht te worden.

Bij voorkeur is het bussysteem volgens de onderhavige uitvinding een bussysteem waarbij de bus (zwak) hoog wordt getrokken door middel van een (relatief grote) optrekweerstand (Engels: "puli-up resistor") of een relatief zwakke stroombron, en waarbij iedere module de bus actief laag kan trekken door middel van een (relatief sterke) laagtrektransistor (Engels: pull-down-transistor). In zulke busconfiguratie is databitl de dominante bit en databitO de niet-dominante bit, omdat de transistor een sterkere stroom kan leveren dan de zwakke pull-up weerstand of de zwakke stroombron, maar de uitvinding is hiertoe niet beperkt, en andere configuraties kunnen eveneens gebruikt worden, bv. een busconfiguratie waarbij de bus (zwak) wordt laag getrokken door middel van een relatief grote weerstand, en actief hoog kan getrokken worden door een (relatief sterke) transistor in de modules.

In een andere uitvoeringsvorm van de onderhavige uitvinding stelt de signaalvorm van FIG. 10(a) een logische "0" voor, en stelt de signaalvorm van FIG. 10(b) een logische "1" voor. In dat geval is databitO de dominante bit, en is databitl de niet-dominante bit. FIG. 11 toont twee andere voorbeeldmatige golfvormen die eveneens kunnen gebruikt worden door uitvoeringsvormen van de onderhavige uitvinding, gekend onder de naam "Manchester"-coding. In de variant aangeduid met "Manchesterl" (gekend in de stand der techniek als Manchester volgens G.E.Thomas) wordt een logische "0" voorgesteld door een spanningstransitie van laag naar hoog na 50% van de bitperiode, en wordt een logische "1" voorgesteld door een spanningstransitie van hoog naar laag na 50% van de bitperiode. In de variant aangeduid met "Manchester" (gekend in de stand der techniek als Manchester volgens IEEE 802.3) is dat net omgekeerd.

Een voordeel van de signalen van FIG. 10 t.o.v. de signalen van FIG. 11 is dat de start van iedere bitperiode samenvalt met de dalende flank van het signaal, waardoor de synchronisatie nauwkeuriger kan zijn.

Sommige bussystemen uit de stand der techniek maken gebruik van bijkomende signaaltypes zoals een "resetsignaai" of een "aandachtsverzoeksignaal" (Engels: "attention request signal"), maar dat is niet nodig voor de onderhavige uitvinding. De drie hoger genoemde signalen (databitO, databitl en vrij) volstaan. Dit kan meehelpen om de complexiteit van de modules voor een bussysteem volgens de onderhavige uitvinding te reduceren. FIG. 12 tot FIG. 19 illustreren aan de hand van een vereenvoudigd voorbeeld, in meer detail de werkwijze voor het identificeren van de modules van een bussysteem volgens de onderhavige uitvinding. In het vereenvoudigd voorbeeld bestaat ieder identificatiebericht uit één frame van 5 bits, en bevat het frame een eerste gedeelte met de vooraf bepaalde sequentie "101" om aan te geven dat het bericht een identificatiebericht is, en bevat het frame verder 2 bits die overeenkomen met het uniek adres. In het voorbeeld van FIG. 12 tot FIG. 19 heeft module Dl uniek adres UA1="11", heeft module D2 uniek adres UA2="10" en heeft module D3 uniek adres UA3-O0".

Het voornaamste doel van FIG. 12 tot FIG. 19 is om het principe aan te tonen dat, zelfs wanneer alle modules, na het ontvangen van het identificatiecommando, tegelijkertijd starten met het verzenden van hun identificatiebericht met daarin hun uniek adres, dat in elke iteratie precies één module erin slaagt zijn uniek adres te versturen, zonder dat een boodschap verloren gaat.

In FIG. 12 stuurt de "GegevensVerzamelModule" een identificatieverzoek BO naar de "andere" deelnemers Dl, D2, D3 van het bussysteem, met het verzoek zich kenbaar te maken. Dit is een broadcast-commando bestemd voor alle "andere modules", ongeacht hun busadres(sen). (met "andere modules" wordt bedoeld alle modules behalve de "GegevensVerzamelModule" die het identificatieverzoek heeft verzonden). Dit bericht wordt ontvangen door de "andere" deelnemers Dl, D2, D3 zoals gesuggereerd door de pijltjes.

Het identificatieverzoek wordt gedecodeerd door elk van de modules Dl, D2, D3, en na een zekere wachttijd (gemeten vanaf het einde van de laatste bit op de bus) zal elke "andere" module trachten zijn identificatiebericht te versturen dat zijn uniek adres bevat. Zo bevat het identificatiebericht BI dat verzonden zal worden door module Dl het uniek adres UA1, en bevat het identificatiebericht B2 dat verzonden zal worden door module D2 het uniek adres UA2, en bevat het identificatiebericht B3 dat verzonden zai worden door module D3 het uniek adres UA3.

In het voorbeeld van FIG. 13 starten de drie modules Dl, D2, D3 allemaal tegelijk met het versturen van hun bericht naar de bus. Voor zover als bekend bij de uitvinders is het alles behalve triviaal om een identificatieverzoek te versturen naar alle andere modules, wetende dat vervolgens alle modules nagenoeg tegelijkertijd zullen antwoorden. Integendeel, in de stand der techniek wordt er meestal alles aan gedaan om botsingen trachten te vermijden (Engels: "collision avoidance) bv. door er trachten voor te zorgen dat er geen twee modules tegelijkertijd zullen starten met zenden, laat staan dat er een commando zou gedefinieerd worden waarop alle modules (op één na) tegelijk zullen starten met zenden.

Bovendien lijkt er een vooroordeel te bestaan dat het wel mogelijk en praktisch doenbaar is om adressen van deelnemers te bepalen voor adressen met ten hoogste een 6-tal of een 8-tal bits, (desnoods door alle mogelijke adressen te proberen, en na te gaan of er iemand reageert), maar er lijkt een vooroordeel te bestaan dat het ondoenbaar is om "rechtstreeks" adressen op te vragen aan modules wanneer die adressen meer dan 10 bits bevatten, laat staan meer dan 20 bits of zelfs 32 bits, minstens in het vakgebied van gebouwautomatiseringssystemen.

De uitvinders van de onderhavige uitvinding gaan dus regelrecht in tegen het vooroordeel dat het niet mogelijk of niet praktisch doenbaar zou zijn om adressen op te vragen met meer dan pakweg 10 bits, en tegen de gangbare opinie dat botsingen ten allen prijze moeten vermeden worden, en doen precies het omgekeerde, want idealiter (als alle modules perfect synchroon zouden lopen), zullen alle "andere" modules op het precies hetzelfde moment starten met het verzenden van hun identificatiebericht. Inderdaad, in voorkeursuitvoeringsvormen van de onderhavige uitvinding wordt er geen willekeurige (random) tijd gewacht door de verschillende modules na het ontvangen van het identificatieverzoek, maar starten ze allemaal na eenzelfde vooraf bepaalde tijd WJD die minstens gelijk is aan 1,5 bitperiode (in het voorbeeld van FIG. 10, dus minstens 225 ps), of minstens 2,0 bitperiodes, of minstens 2,5 bitperiodes, of minstens 3,0 bitperiodes, of minstens 5,0 bitperiodes, of minstens 10 bitperiodes (in het voorbeeld 1,50 ms), bv. 2,10 ms na de laatste bit van het identificatieverzoek. De tolerantie op de genoemde timing is afhankelijk van de implementatie, en is typisch een waarde tussen 1 interne klokperiode van de module en 1 bitperiode of de bus, en ligt typisch in het bereik van ongeveer 16,6 ns tot ongeveer 250 ns, overeenkomstig een interne klok van 4MHz tot 60MHz), maar de uitvinding is hiertoe niet beperkt, en de interne klok kan ook een frequentie hebben die groter is dan 60 MHz, bv. die in het bereik ligt van 60 MHz tot 2 GHz.

Aangezien eenzelfde formaat wordt gebruikt voor alle identificatieberichten BI, B2, B3, en aangezien de unieke adressen UA verschillend zijn, zal (indien er geen andere trafiek is over de bus) telkens precies één module erin slagen om zijn identificatiebericht "ongeschonden" over de bus te versturen, en zullen de andere modules een botsing op de bus vaststellen, waarna ze onmiddellijk de verzending van hun identificatiebericht afbreken, en zullen wachten tot de bus weer vrij is voor minstens de vooraf bepaalde periode WJD, waarna ze opnieuw zullen proberen hun identificatiebericht te versturen, net zolang tot alle identificatieberichten verstuurd zijn. Maar zelfs indien er wel andere trafiek is over de bus, dan nog zal ieder identificatiebericht precies één keer ongeschonden over de bus worden verstuurd, en de module kan zelf bepalen of dat gelukt is, en zal net zolang blijven proberen tot het gelukt is. Dit is een belangrijk onderliggend principe van deze werkwijze volgens de onderhavige uitvinding. FIG. 14 toont de golfvormen van de berichten BI, B2, B3 die de drie modules Dl, D2, en D3 respectievelijk willen versturen via hun bus-interface. In het voorbeeld zijn de eerste drie bits van de drie boodschappen gelijk (en geven aan dat dit bericht een "identificatiebericht" is). Pas bij het versturen van de vierde bit zal de module D3 een botsing vaststellen, omdat hij zelf een databitO-signal op de bus wil zetten, maar dat kan niet omdat de bus laag getrokken wordt door databitl van zowel module D2 als D3. Zodra module D3 de botsing detecteert, stopt hij met zenden, uiterlijk op het einde van de vierde bitperiode, maar liefst eerder. Module Dl en D2 merken geen botsing en gaan gewoon verder met het versturen van de vierde bit, en beginnen daarna aan het versturen van hun vijfde bit.

Tijdens het versturen van de vijfde bit detecteert de module D2 een botsing op de bus, en stopt met het verzenden van bericht B2. Module Dl detecteert geen conflict, en gaat verder met het versturen van zijn bericht BI, en concludeert na het versturen van alle bits van het bericht BI, dat hij daarin geslaagd is, en doet niet meer mee in de volgende iteratie. De modules D2 en D3 zijn er niet in geslaagd hun identificatiebericht (respectievelijk B2 en B3) te versturen, en zullen later opnieuw proberen, zoals getoond in FIG. 15 en FIG. 16.

Er wordt opgemerkt dat (volgens het protocol van een bussysteem volgens de onderhavige uitvinding) de GegevensVerzamelModule niet opnieuw een bericht zal versturen, maar dat de modules die er nog niet in geslaagd zijn hun identificatiebericht ongeschonden te versturen, vanzelf opnieuw zullen proberen hun identificatiebericht te versturen.

In FIG. 15 starten de overblijvende deelnemers D2 en D3 dus tegelijk met het verzenden van hun identificatiebericht, respectievelijk bericht B2 en bericht B3, terwijl de GegevensVerzamelModule luistert naar het bericht dat over de bus wordt verstuurd, zoals gesuggereerd door de pijltjes. Volledigheidshalve dient vermeld te worden dat module Dl eveneens het signaal dat op de bus wordt geplaatst zal ontvangen en zal decoderen, want alle modules moeten altijd luisteren naar de bus, maar de module Dl zal hieraan geen gevolg geven, omdat identificatieberichten bestemd zijn voor de GV. FIG. 16 toont de golfvormen van het bericht B2 en B3 dat de module D2 en D3 respectievelijk trachten te versturen via hun bus-interface, in een tweede poging om hun identificatiebericht te versturen. Op een gelijkaardige manier als hierboven beschreven zal de module D3 bij het versturen van de vierde bit een botsing op de bus detecteren, en stoppen met het verzenden van zijn bericht B3, zoals gesuggereerd door de stippellijn. In deze tweede iteratie zal module D2 erin slagen zijn bericht B2 ongeschonden te verzenden en besluiten niet langer deel te nemen aan de iteraties. Dus enkel module D3 blijft over.

In FIG. 17 stuurt de enig overblijvende module D3 het bericht B3 dat zijn uniek adres UA3 bevat, terwijl de GegevensVerzamelModule GV luistert naar het bericht dat over de bus wordt verstuurd zoals gesuggereerd door de pijltjes. De modules Dl en D2 zullen meeluisteren op de bus, en zullen de boodschap decoderen, maar zullen verder geen gevolg geven aan de boodschap B3 die verstuurd wordt door module D3, en bestemd is voor de GegevensVerzamelModule. FIG. 18 toont de golfvorm van het bericht B3 dat module D3 verstuurt via zijn bus-interface, als derde poging om zijn identificatiebericht te versturen, waarin hij ditmaal slaagt. FIG. 19 toont de totale golfvorm die wordt waargenomen op de bus na het versturen van het identificatieverzoek. De getoonde golfvorm is in feite een opeenvolging van de signalen van FIG. 14 (van tijdstip tl tot t2), gevolgd door een wachttijd WJD, dan de signalen van FIG. 16 (van tijdstip t3 tot tijdstip t4), wederom gevolgd door de wachttijd WJD, en tenslotte de signalen van FIG. 18 (van tijdstip t5 tot tijdstip t6).

Zoals hoger beschreven is in voorkeursuitvoeringsvormen van de onderhavige uitvinding de minimale wachttijd WJD om te antwoorden op het identificatieverzoek dezelfde voor alle modules, en dus niet gebaseerd op een willekeurige waarde, maar de uitvinding zal ook werken als de wachttijden verschillend zouden zijn.

In het voorbeeld van FIG. 19 hebben op tijdstip t6 alle "andere" modules Dl, D2 en D3 hun identificatiebericht verstuurd, en zal de bus "vrij" blijven na t6. Na het verstrijken van een vooraf bepaalde time-out waarde voor identificatieberichten TOJB, zal de GegevensVerzamelModule besluiten dat alle identificatieberichten BI, B2, B3 van alle andere modules Dl, D2, D3 ontvangen zijn. Deze time-out is bij voorkeur een factor 1,05 tot 2,00 groter dan WJD, bv. TOJB=2,25 ms, maar de uitvinding is daartoe niet beperkt.

In het voorbeeld van FIG. 12 tot FIG. 19 werd aangenomen dat er geen "normale" of "operationele" berichten over de bus werden verstuurd, maar mocht dat wel het geval zijn, dan zou bv. reeds een botsing vastgesteid kunnen worden in het eerste gedeelte "deell" van het bericht. De vakman zal begrijpen dat de keuze van het bitpatroon van de commando's, alsook de wachttijd tussen verschillende soorten berichten zullen bepalen welke berichten voorrang krijgen op andere berichten.

In voorkeursuitvoeringsvormen van de onderhavige uitvinding is het niet wenselijk dat de identificatieberichten voorrang krijgen op "normale" berichten, omdat dit de responstijd van het verlichttingssysteem of het gebouwautomatiseringssysteem zou verslechteren. Dit nadeel kan eenvoudig opgelost worden door een gepaste keuze van het bitpatroon van de identificatieberichten (in het voorbeeld van FIG. 12 tot FIG. 19 kan dit bv. bekomen worden door de waarde "000" toe te kennen aan het eerste gedeelte, dus als commando van de identificatieberichten), en/of door een gepaste keuze van de wachttijd WJD voor identificatieberichten te gebruiken (in het voorbeeld van FIG. 12 tot FIG. 19 kan dit bv. bekomen worden door de wachttijd WJD minstens 3,0 bitperiodes langer te kiezen dan de wachttijd voor "normale" berichten). Een combinatie is eveneens mogelijk. De vakman kan met de bijkomende inzichten verkregen uit dit document, een geschikte set van commando's en bijhorende bitpatronen vinden, desnoods proefondervindelijk. Dit hoeft niet verder toegelicht te worden.

Zoals reeds gezegd, zijn FIG. 12 tot FIG. 19 een sterk vereenvoudigde voorstelling van de situatie, en vooral bedoeld om het principe aan te tonen dat elke module (behalve de GV zelf) er uiteindelijk zal in slagen zijn identificatiebericht met zijn uniek adres op te sturen, en dat er geen berichten verloren gaan. De hierboven vermelde iteraties zijn dus geen "heruitzendingen" omdat een bericht verloren is gegaan, en dienen dus niet gezien te worden als "verloren tijd", maar eerder als "uitstel" omdat een ander bericht voorrang kreeg.

In voorkeursuitvoeringsvormen van de onderhavige uitvinding worden alle berichten over de bus, dus ook het identificatieverzoek en de identificatieberichten, verpakt in een frame-structuur bestaande uit één of meerdere frames van een vaste lengte, bv. de framestructuur zoals weergegeven in FIG. 20, en zal het uniek adres minstens 16 bits bevatten, of minstens 20 bits, of minstens 24 bits, of minstens 28 bits, of minstens 32 bits, of minstens 36 bits, of minstens 40 bits, of minstens 48 bits, verspreid over meerdere frames, bij voorkeur op elkaar volgende frames, maar de werkingsprincipes en voordelen blijven geldig. FIG. 20 toont een voorbeeldmatig tijdsdiagram van een bericht bestaande uit één enkel frame. In voorkeursuitvoeringsvormen van de onderhavige uitvinding bestaat één frame uit 18 tijdstots of bitperiodes. Elk tijdslot kan bijvoorbeeld 150 ps lang zijn, maar een andere waarde kan eveneens gebruikt worden, bv. een tijdslot in het bereik van 5 ps tot 1500 ps, of in het bereik van 8 ps tot 1500 ps, of in het bereik van 10 ps tot 1250 ps, of van 15 ps tot 1250 ps, of van 20 ps tot 1000 ps, of van 30 ps tot 750 ps, of van 50 ps tot 500 ps, of van 75 ps tot 300 ps, of van 100 ps tot 250 ps, bv. ongeveer gelijk aan 125 of 150 of 175 of 200 of 225 ps. De vakman kan een geschikte waarde vinden rekening houdend met bv. de stijg- en daaltijd van de signalen (voornamelijk bepaald door de busimpedantie en de waarde van de optrekweerstand of de uitgangsimpedantie van de optrekstroombron), robuustheid (bit-error-rate), en datasnelheid. De bitperiode "Tbit" moet dezelfde zijn voor alle modules die rechtstreeks (zie FIG. 4) of onrechtstreeks via een repeater zonder noemenswaardige vertraging (zie FIG. 5) aangesloten zijn op de communicatiebus, maar kan in principe verschillen van gebouw tot gebouw.

Het frame van FIG. 20 begint met een "startbit" met de logische waarde ”1", dan volgen 16 databits, en eindigt met een "stopbit" met de logische waarde "0". De ontvangers van de modules zullen steeds trachten deze frame-structuur van 18 bits te herkennen, en zuilen bit-sequenties die niet aan deze structuur voldoen, negeren. De verdere verwerking van de boodschap wordt bij voorkeur door de controller 301 (zie FIG. 3) uitgevoerd, op gekende manieren.

In bussystemen volgens de onderhavige uitvinding kan één bericht één of meerdere frames omvatten, bv. van 1 tot 20 frames, maar meer frames zijn eveneens mogeiijk. De combinatie van relatief korte frames (16 databits in plaats van 24) en één of meerdere frames per bericht, biedt het voordeel dat korte berichten efficiënt kunnen vestuurd worden, maar lange berichten eveneens mogelijk zijn, waardoor de functionaliteit van een bussysteem volgens de onderhavige uitvinding zeer uitgebreid kan zijn, veel ruimer bv. dan de beperkte functionaliteit geboden door een bussysteem met het DALI-protocol. Bussystemen volgens de onderhavige uitvinding zijn danook zeer geschikt om gebruikt te worden in een verlichtingsysteem of een gebouwautomatiseringssysteem. FIG. 21 toont een voorbeeldmatige bitsstructuur van het frame van FIG. 20. De precieze betekenis van iedere bit valt buiten het bestek van dit document, en is niet nodig om de onderhavige uitvinding te begrijpen.

Indien een bericht meerdere frames bevat, kunnen gekende technieken gebruikt worden om ervoor te zorgen dat de frames aan de ontvangstzijde correct samengevoegd worden, zoals bv. door het vermelden van het aantal frames in het eerste frame, en/of door het vermelden van een volgnummer in ieder frame, enz. FIG. 22 toont een voorbeeldmatig tijdsdiagram van een boodschap bestaande uit twee frames die na elkaar worden verstuurd, gescheiden door een wachttijd WT2F (afkorting voor wachttijd tussen twee frames van eenzelfde bericht).

Hoewel niet strikt noodzakelijk, worden frames van eenzelfde bericht bij voorkeur als een serie of als een trein verstuurd over de bus, wel met de nodige wachttijd WT2F tussen de frames, maar zonder tussenkomst van frames van andere berichten. Dit kan bv. bekomen worden door de wachttijd WT2F tussen frames van eenzelfde bericht kleiner te kiezen dan de wachttijd WT2B tussen twee "normale" berichten. FIG. 23 is een schematische weergave van de tijd nodig om een bericht bestaande uit drie frames te versturen. Na het derde frame moet de bus minstens gedurende WT2B (wat staat voor "wachttijd tussen twee berichten”) vrij zijn, dus eigenlijk neemt het bericht van drie frames in totaal 13,65 ms in beslag.

In de voorbeelden hierboven werden de volgende waarden gebruikt:

maar andere waarden zijn eveneens mogelijk, bv. waarden die voldoen aan de volgende set van voorwaarden:

Bij voorkeur is bovendien WT2F <= 100 x Tbit (11), al is dat niet strict noodzakelijk. FIG. 24 toont (op hoog-niveau) een werkwijze voor het identificeren van een veelheid van modules van een bussysteem, (bij voorkeur alle modules behalve de module die fungeert als GegevensVerzamelModule), volgens een uitvoeringsvorm van de onderhavige uitvinding.

In optionele stap 2401 wordt één van de modules aangeduid als GegevensVerzamelModule, of in stap 2402 wordt een module toegevoegd om te fungeren als GegevensVerzamelModule. De GV wordt bij voorkeur functioneel verbonden (bv. door middel van een elektrische kabel, bv. een RS232 kabel, een USB-kabel, een UTP-kabel, een FTP kabel, een Ethernet kabel, een coax kabel of een glasvezelkabel, of een ander soort netwerkkabel of draadloos, bv. via een infraroodverbinding, of een RF verbinding zoals Wifi of Bluetooth) met een gebruikersinrichting 401, 501, 601 (zoals in FIG. 4 tot FIG. 6), bv. een PC met een scherm 402, 502, 602 en met invoerorganen 403, 503, 603 zoals bv. een toetsenbord en/of een muis; of een smartphone, of een laptop, of dergelijke. De GV is voorzien om te communiceren met de gebruikersinrichting, bv. om opdrachten te ontvangen van de gebruikersinrichting, zoals het starten met opvragen van de unieke adressen, of het opvragen van bijkomende informatie van een module met een bepaald uniek adres, en voor het doorsturen van informatie naar de gebruikersinrichting.

In stap 2403 verstuurt de GegevensVerzamelModule een identificatieverzoek naar alle andere modules op de bus. Dit verzoek kan bv. geïnitieerd worden door een timer of een real-time-clock (bv. iedere nacht op een vooraf bepaald tijdstip, bv. om 24u00), of kan bv. geïnitieerd worden door een verzoek vanuit de gebruikersinrichting, of door het indrukken van een daartoe voorziene drukknop op de GegevensVerzamelModule (niet getoond), of op een andere geschikte manier.

In stap 2404 ontvangt de GegevensVerzamelModule een identificatiebericht van een module, met daarin het uniek adres van de betreffende module. Deze boodschap kan bv. tijdelijk of permanent opgeslagen worden in RAM van de GV, en/of in niet-vluchtig geheugen van de GV (bv. flash).

In stap 2405 gaat de GegevensVerzamelModule na of de bus langer dan een vooraf bepaalde time-out tijd TOJB vrij is, en indien dat het geval is, besluit de GegevensVerzamelModule dat alle identificatieberichten ontvangen zijn. Indien dat niet het geval is, worden stappen 2404 en 2405 opnieuw uitgevoerd, voor het ontvangen van bijkomende identificatieberichten.

In optionele stap 2406, kan de GegevensVerzamelModule de identificatieberichten verwerken (bv. door de Unieke Adressen eruit te halen), en/of als dusdanig doorsturen naar de gebruikersinrichting (bv. de PC). De PC kan deze unieke adressen eventueel opslaan in een gegevensbestand, en/of weergeven op een scherm.

In een alternatieve uitvoeringsvorm van de werkwijze, worden de unieke adressen niet pas verwerkt en/of verstuurd naar de gebruikersinrichting nadat ze allemaal aangekomen zijn bij de GegevensVerzamelModule, maar worden ze reeds tussentijds verwerkt en/of verstuurd, bv. als onderdeel van stap 2404.

Indien gewenst kan de gebruikersinrichting (bv. de PC) ook het uniek adres van de GegevensVerzamelModule opvragen, maar meestal is dat niet nodig. FIG. 25 is een schematische voorstelling van de werkwijze die wordt uitgevoerd door de GegevensVerzamelModule (linkerkant van FIG. 25), en de werkwijze die wordt uitgevoerd door elk van de "andere" modules (rechterkant van FIG. 25) van een bussysteem volgens de onderhavige uitvinding.

In stap 2501 verstuurt de GegevensVerzamelModule een identificatieverzoek op de bus. Deze stap is dezelfde als stap 2403 van FIG. 24.

In stap 2502 ontvangt iedere "andere" module het identificatieverzoek, waarna iedere "andere" module een identificatiebericht met daarin zijn uniek adres of uniek serienummer zal versturen. Dit gaat als volgt (stappen 2510):

In stap 2511 wacht iedere "andere" module tot de bus vrij is voor minstens een vooraf bepaalde periode W_ID (de "minimale wachttijd voor het versturen van het identificatiebericht")

In stap 2512 zal iedere "andere" module die er nog niet in geslaagd is zijn identificatiebericht correct te versturen, (in de eerste iteratie zijn dat alle andere modules), starten met het verzenden van zijn identificatiebericht, waarbij tijdens het verzenden van iedere bit wordt nagegaan (stap 2513) of er botsing optreedt, en indien er botsing wordt vastgesteld, dan stopt de module waarvan het te verzenden signaal afwijkt van het signaal op de bus onverwijld met zenden (stap 2514), en zal later opnieuw proberen door de stappen i) tot iii) opnieuw uit te voeren. Iedere module zal blijven proberen, totdat de module er uiteindelijk in geslaagd is zijn identificatiebericht ongeschonden te versturen.

Terwijl de modules hun identificatiebericht trachten te verzenden (stappen 2510) luistert de GegevensVerzamelModule naar de bus, en ontvangt in stap 2503 telkens één identificatiebericht, dat eventueel kan bestaan uit één of meerdere frames, zoals hoger toegelicht.

Indien de GegevensVerzamelModule vaststelt (stap 2504) dat de bus langer vrij is dan een vooraf bepaalde time-out waarde TOJB, dan gaat hij ervan uit dat alle identificatieberichten zijn ontvangen.

Hoewel niet getoond in FIG. 25 voeren de modules in parallel steeds een ontvangstroutine uit, waarbij ze het signaal van de bus decoderen, en indien het signaal bestemd is voor de betreffende module, voeren ze die opdracht ook uit, bv. door een bepaalde uitgang laag of hoog te zetten om een lamp aan of uit te schakelen, of om een relais te openen of te sluiten, of dergelijke.

Hoewel het hoofddoel van de GegevensVerzamelModule zoals hierin beschreven gericht is op het opvragen en ontvangen van de unieke adressen, en eventueel het opvragen van bijkomende informatie gebruik makend van absolute adressering, en de GegevensVerzamelModule na de ingebruikname van het verlichttingssysteem of gebouwautomatiseringssysteem in principe kan verwijderd worden, omdat ze niet nodig is voor de normale werking van het systeem, kan het handig zijn om deze toch in het gebouw achter te laten, en eventueel te gebruiken voor het monitoren van bustraffiek, bv. voor veiligheidsdoeleinden of voor visualisatie.

Samengevat, beschrijft de onderhavige uitvinding een bussysteem en een werkwijze volgens een bedrijfseigen protocol dat een speciale functie of broadcast-commando bevat, hierin "identificatieverzoek" genoemd, voor het opvragen van de unieke adressen van een veelheid van modules gekoppeld aan de communicatie-bus, en een functie voor het doorsturen van deze unieke adressen over de communicatie-bus, (hierin "identificatiebericht" genoemd). Éénmaal deze unieke adressen gekend zijn, kunnen de modules individueel benaderd worden door lees- en schrijfcommando's met absolute adressering. Het grote voordeel hiervan is dat deze lees- en/of schrijfopdrachten ook zullen werken, zelfs als het busadres (of de busadressen) in de module foutief of helemaal niet geprogrammeerd is/zijn.

Het opvragen van de unieke adressen verloopt razend snel. Stel bv. dat er 100 modules zijn, en dat elk identificatiebericht verstuurd wordt door middel van 4 frames. Met de hoger genoemde bitperiode van 150 ps, en frame-periode van 2,7 ms, en drie wachttijden WT2F van 1,80 ms, en een wachttijd W_ID van 1,95 ms tussen de berichten, bedraagt de totale tijd ongeveer: 100 x 18,15 ms = slechts ongeveer 1,8 seconden in totaal. En voor 1000 modules bedraagt de totale tijd voor het opvragen en ontvangen van alle unieke adressen slechts ongeveer 18,1 s.

Een bussysteem met modules die communiceren volgens dit protocol laat toe om de unieke adressen op te vragen, en vervolgens minstens sommige fouten en/of vergissingen die plaatsvonden tijdens de "commissioning" (de toekenning van busadressen) vanop afstand te corrigeren over de bus.

De digitale bedrade bus kan een totale lengte hebben van minstens 10 m, of minstens 20 m, of minstens 30 m of minstens 50 m. De afstand tussen de GegevensVerzamelModule en de interfacemodules kan groter zijn dan 10 m, of groter dan 20 m, of groter dan 30 m, of groter dan 50 m.

METHOD FOR IDENTIFYING MODULES LINKED TO A BUS SYSTEM, AND A BUILDING AUTOMATION SYSTEM

Domain of the invention

The present invention generally relates to a digital bus system such as can be used in a building automation system. The present invention relates more specifically to a method for identifying modules coupled to the bus system, and to a method for retrieving data from one or more modules of the bus system, and to a method for assigning a bus address to one or several modules of the bus system. The present invention also relates to such a building automation system, and a set of interface modules.

BACKGROUND OF THE INVENTION

Building automation systems are known in the art, and can for instance comprise one or more of the following subsystems: a lighting system, a sun protection system, a fire detection system, an air conditioning system, a heating system, an HVAC system, a parking control system, an access control system, etc. The subsystems can be implemented as separate systems, or as an integrated system.

Digital bus lighting systems in which lighting elements and / or switches and / or dimmers and the like function together in a functional manner are known in the prior art. A well-known bus system used for lighting applications is "DALI". DALI is an acronym and stands for "Digital Addressable Lighting Interface" (English) or "Digital Addressable Lighting Interface". It is an international standard intended for the interchangeability of dimmable ballasts from different manufacturers. The DALI interface is described in standard IEC 60929 under Appendix E. Interested readers who are not familiar with DALI can find an easily understandable introduction in the "DAU manual", published by "DALI AG (Digital Addressable Lighting Interface Activity Group) from ZVEI, Division Luminaires ", which dates from 2001. The main advantage over DALI is that over traditional fixed-wired lighting systems, it is possible to reconfigure the functionality of the lighting system without changing the wiring, eg by associating pressure switches with certain lighting elements in a different way .

Building automation systems with a digital bus, which may comprise such a lighting system, and / or other elements such as the control of sun blinds, air conditioning, etc., are also known in the prior art. A well-known bus system for building management applications is KNX. In fact, KNX is a system that specifies communication across different media, namely (a) KNX TP (abbreviation for "KNX Twisted Pair") where communication is carried out over a four-wire bus, (b) KNX PL (abbreviation for "KNX Powerline"), where a signal is superimposed on the 230V power cables in a building, (c) KNX RF (abbreviation for "KNX Radio Frequency") where wireless communication takes place, and (d) KNX IP (abbreviation for KNX Internet Protocol) where communication takes place over Ethernet. The KNX TP variant is the most relevant for the present invention. The reader who is not familiar with KNX can, for example, read the document [1] "The KNX standard - the basics" (20 pages), which can be downloaded at the time of drafting the present document via the following URL: http://www.knx.org/media/docs/Flyers/KNX-Basics/KNX-Basics_en.pdf.

In every bus system, certain "rules" are needed, better known as the "bus protocol", which all participants in the bus must adhere to. The protocol of a bus system describes aspects such as voltage levels, timing, frame structure, priorities, ways to detect collisions (English: "collision detection") and / or prevent collisions (English: "collision avoidance"), etc.

Before a lighting system according to DALI or a building automation system according to KNX can be put into operation, the necessary components (such as push buttons, lamps, sensors, actuators) must first be installed in the building, and via interface modules (whether or not built into the component) to be electrically coupled to the communication bus. Furthermore, these interface modules must be configured to interact with each other in a specific building in a specific building, by an action known as "commissioning". This includes, among other things, assigning local addresses to the various modules, which addresses are used during normal operation of the system to send messages from, for example, a light switch to an associated lamp. In DALI, for example, a 6-bit "bus address" is assigned to each component, and a 16-bit "group address" is assigned to KNX (more information can be found, for example, at URL: "https: // nl. wikipedia.org/wiki/KNX ")

In practice, the bus address or group address is assigned to the modules during the installation of the relevant module in the building, for example by making a physical connection between the relevant module and a portable computer via an RS232 connection, or as described above. said KNX document [1] (on page 18 column 4 to page 19 column 1, paragraph "Commissioning") by physically pressing a specially designed push button on the module and sending an "address" on the bus, wherein the module for which the said special push button was pressed, considers the address to be his. Of course, the system will only function correctly when it is put into operation if each module of the bus system has been assigned the correct address according to the plan (assuming the plan contains no errors).

However, human errors often occur with such an assignment, for example because one has forgotten to assign a bus address or group address to certain modules, or because an incorrect bus address or group address has been assigned (eg an address that was not provided on the plan ), or because the same address was mistakenly assigned to two different modules, etc. Such errors can be corrected afterwards, but it often takes a lot of time and effort to detect and correct them. This is a known problem (as confirmed by [1] biz 19 column 1 line 3). US 7606955 (B1) describes a wired bus system with a single master and 1 to 7 slaves connected to a so-called "open collector" architecture, where the bus is passively pulled to a high level via a resistor, and each of the participants the bus actively low. The protocol makes a distinction between, among other things, "data bits", a "reset" signal, and an "attention-request" signal from one of the slaves. In this system, therefore, each bus interface must detect four types of signals and respond accordingly. US8035529 (B2) describes a distributed ballast system with a protocol that is an extension to the DALI protocol, and that is backwards compatible with DALI, whereby 256 modules can be accessed (instead of only 64 with DALI), and where functionality can be added due to the longer instructions (3 bytes instead of just 2 bytes with DALI). The document does not describe in detail how the "initialization" 1 (English: commissioning) happens exactly, nor how any errors with this commissioning can be traced or corrected.

Summary of the invention

It is an object of the present invention to provide a bus system for a building automation system, and to provide a method for communicating in this bus system, and a building automation system with such a bus system, and a set of interface modules for use in such a bus system or such building automation system. .

More specifically, it is an object of the present invention to provide such a bus system and method that makes it possible to detect and / or correct errors (e.g. installation errors or more specifically errors in commissioning) faster or easier.

It is an object of the present invention to provide a method for identifying a plurality of bus system participants, and to provide a bus system with a bus protocol that supports such method.

It is an object of certain embodiments of the present invention to provide a method for querying data from one or more participants of the bus system, and to provide a bus system with a bus protocol that supports such a method.

It is an object of certain embodiments of the present invention to provide a method for configuring and / or reconfiguring one or more participants of the bus system, and to provide a bus system with a bus protocol that supports such a method.

According to a first aspect, the present invention provides a method for identifying a plurality of modules that are coupled to a wired communication bus and that each contain a unique address, by a Data Collection Module that is also coupled to the communication bus, wherein the method comprises the following steps: a) sending over the communication bus an identification request through the Data Collection Module to the plurality of modules, to request their unique addresses; b) receiving the identification request by each of the plurality of modules; c) successfully sending an identification message through each of the plurality of modules in response to the received identification request, each identification message containing the unique address of the relevant module; wherein step c) comprises for each of the plurality of modules the following steps: i) waiting for the bus to be free for at least a predetermined time; ii) trying to send the identification message of the relevant module, wherein trying to send the identification message comprises sequentially trying to send each bit of the identification message, and wherein trying to send each bit is controlling and monitoring the bus, and determining whether a collision has occurred on the bus; iii) and if a collision has occurred, stopping sending the relevant bit and all subsequent bits of the identification message, and repeating steps i) to iii) until the identification message is sent without collision; and if no collision has occurred, decide that the identification message has been successfully sent, and no longer participate in trying to send the identification message.

By "successful sending" it is meant that each module will continue to try to send its identification message until this is finally successful. This is guaranteed to work because every message is unique and because no messages are lost.

Briefly summarized, this method makes it possible to request the unique addresses of all modules that are connected to the communication bus in-situ. Once these unique addresses are known, they can be used to access specific modules individually, for example to request information, or to send information to the module, for example using absolute addressing.

It makes it possible for errors to be detected and even corrected more quickly, in particular errors related to the non-assignment or incorrect assignment of one or more bus addresses to the modules during installation ("commissioning"), for example by individualizing the modules one by one approach using absolute addressing commands based on the unique addresses thus obtained.

Moreover, the query itself can be carried out relatively quickly, even while the lighting system or building automation system can continue to work.

It is an advantage of this method that all unique addresses of all modules that are effectively connected to the bus (except that of the GV) can be automatically retrieved without human intervention, thereby excluding the risk of human error.

By requesting the unique addresses (which are already built into the modules during the production of the modules), all modules are unambiguously "discovered", even if no or an incorrect bus address was assigned to the module during installation (commissioning) ).

It is a great advantage that the method provides that only a single identification request will be sent, to which each of the other modules will respond, if necessary in multiple attempts, until it is ultimately successful. Because the GV will only send one message on the bus, a lot of time is saved.

It is a great advantage that the method is provided in such a way that, in principle, (unless "normal messages" intervene) exactly one identification message will be sent on the bus undamaged at every iteration.

Thanks to the collision detection at bit level and, if necessary, stopping sending, and automatically retrying when the bus is free for a sufficient length of time, no messages are lost, so no time is lost on the bus due to corrupted (English: corrupted) data and retransmissions. This means an important time saving.

It is a major advantage of this method that it can even be implemented in an operationally active bus system, which means that the building automation system or subsystem (eg lighting system, sun protection system, fire detection system, etc.) of which this bus system forms part , will continue to work while this address query is taking place. Moreover, this can happen with a not or hardly noticeable delay of "normal commands" such as switching on light elements, reading out fire detectors, etc.

It is a great advantage that this method can be carried out very quickly (e.g., 1.85 second order for a 150 ps bit period and a bus with 100 participants, and a unique 32-bit address, assuming the bus is not operational) charged). Such a short period of time is unseen, and its benefit should not be underestimated.

In one embodiment, step ii) of attempting to send is started as soon as the predetermined time "WJD" has elapsed.

In this embodiment, all modules wait in principle the same amount of time (except for tolerances of the local clock). Therefore, no use is made of random ("random") waiting times or the like for attempting to avoid collisions, quite the contrary. In this embodiment, all modules will thus start transmitting almost simultaneously, in other words, the chance of collisions is, as it were, maximized instead of minimized in this embodiment.

In one embodiment, the communication bus is a digital communication bus; and a first signal form is associated with a logical "1" bit, and a second signal form different from the first signal form is associated with a logical "0"bit; and the Data Collection Module and the plurality of modules are linked to the communication bus in a wired-AND or a wired-OR configuration.

Preferably the bus is pulled high by a (relatively large) pull-up resistor or by a (relatively weak) current source, and the bus can be pulled low by means of a (relatively strong) transistor configured as "open collector" or as "open collector" drain "(which means that it acts as an ON-OFF switch, with a very low impedance when the switch is closed, and with a very high impedance when the switch is open). In such a configuration, a low voltage level wins over a high voltage level. Depending on the signal form associated with a logical "1" or a logical "0", a logical "1" beats a logical "0", in which case the bus is called a "wired-OR" (as in the example of FIG. 3). In the reverse case, where a logical "0" beats a logical "1", the bus configuration is called a "wired-AND" configuration.

According to a second aspect, the present invention provides a method for assigning at least one bus address or at least two bus addresses to a module to be configured from a plurality of modules that are coupled to a wired communication bus and that each have a unique address, the method comprising the steps of: a) determining the unique addresses of the plurality of modules coupled to the bus by identifying the modules according to the first aspect; b) sending a configuration message by the Data Collection Module, wherein the configuration message contains the unique address of the module to be configured to address the module, as well as at least one bus address to be assigned; c) receiving the configuration message by the plurality of modules coupled to the bus, and extracting the address contained in the configuration message, and comparing the extracted address with the internal unique address of the relevant module, and if the extracted address and the internal unique address are the same, proceed to step d), and if the extracted address and the internal unique address are different, skip step d); d) extracting the at least one bus address from the configuration message, and storing the at least one bus address in a memory of the module for later communication with other modules based on relative addressing.

Steps b) and c) actually mean that absolute addressing is used, based on the unique address of the module requested in step a).

This method makes it possible to remotely assign one or more bus address (s) to a specific module, without the need for physical access to the module. This method also makes it possible to change the bus address remotely.

According to a third aspect, the present invention provides a method for querying data from at least one module to be queried selected from a plurality of modules that are coupled to a communication bus, and each containing a unique address, comprising: a) the determining the unique addresses of each of the plurality of modules coupled to the bus, by identifying the modules according to the first aspect; b) sending a reading message by the Data Collection Module, wherein the reading message contains the unique address of the module to be interrogated to address the module, as well as one or more indicators of which information is requested; c) receiving the read message from the plurality of modules coupled to the bus, and extracting the address contained in the read message, and comparing the extracted address with the internal unique address of the relevant module, and if the extracted address and the internal unique address are the same, proceed to step d), and if the extracted address and the internal unique address are different, skip step d); d) sending an information message by the module to be interrogated to the Data Collection Module, the information message containing data in accordance with the one or more indicators; e) receiving the information message by the Data Collection Module.

This method offers the advantage that information can be retrieved about a specific module by addressing this module with its unique address. By retrieving additional information, e.g. the type of the module, or the bus address (s) stored therein, it is possible to detect errors related to the assignment of the bus address (s).

It is noted that the information message is intended for the GV, and that it can therefore be implemented as a "command", without the addressee having to add an address.

In a further embodiment of a method according to the first, second or third aspect, the unique address of at least one of the plurality of modules (D1, D2, D3) comprises at least 18 bits, or at least 20 bits, or at least 24 bits, or at least 32 bits, or at least 40 bits, or at least 48 bits.

According to certain standards, the units on the bus have a maximum of 6 address bits, and therefore a maximum of 64 units on the bus can be distinguished. In such systems it is perfectly possible to do the recognition of the units present by trying all possible addresses and checking if there is a reaction. However, this so-called "brute force" method is not suitable when the number of address bits becomes very large. After all, for each additional bit, the time required to try all addresses doubles.

In a further embodiment of a method according to the first, second or third aspect, all messages on the bus, including the identification request and the identification messages, are sent by sending one or more fixed-length frames, each frame having one start bit, sixteen data bits, and one stop bit.

It is an advantage that all communication on the bus uses the same frame structure. This can simplify the implementation.

In a further embodiment, a minimum wait time WT2F between two consecutive frames of the same message is smaller than a minimum wait time WT2B between frames of two different messages.

The minimum waiting times are part of the protocol according to which communication is via the bus. This means that when a particular module is sending a message that contains multiple frames, the train of frames will not be interrupted by another message. This can simplify the implementation.

In a further embodiment, the minimum wait time WJD before an identification message is greater than the minimum wait time WT2B before a message that is not an identification message.

This is a way to ensure that "normal messages" or "operational messages", such as communication between components of a lighting system or of another subsystem of a building automation system, are given priority over identification messages from the modules to the Data Collection Module.

According to a fourth aspect, the present invention provides a bus system for a building automation system, comprising: - a wired communication bus; - a plurality of modules that each have a unique address and that are linked to the communication bus; a Data Collection Module that is linked to the communication bus; wherein each of the plurality of modules and the Data Collection Module are provided for compiling a method according to the first, second or third aspect.

The wired communication bus preferably comprises at least one or at least two electrical conductors.

According to a fifth aspect, the present invention provides a building automation system comprising a bus system according to the fourth aspect, and further comprising one or more of the following features: i) and wherein the building automation system comprises at least one lighting system, at least one of the modules being adapted for controlling a lighting element or a dimmer, and / or at least one of the modules is adapted to read out at least one motion detector or presence detector or light sensor or switch; ii) and wherein the building automation system comprises at least one sun protection system, wherein at least one of the modules is adapted to control at least one motor of a sun protection, and / or at least one of the modules is adapted to read out at least one light sensor or switch or wind sensor; iii) and wherein the building automation system comprises at least one fire detection system, wherein at least one of the modules is adapted to read out at least one fire detector or smoke detector or temperature sensor; iv) and wherein the building automation system comprises at least one air conditioning system, wherein at least one of the modules is adapted to control an air conditioning module, and / or at least one of the modules is adapted to read out a temperature sensor or humidity sensor; v) and wherein the building automation system comprises at least one heating system, wherein at least one of the modules is adapted to control at least one valve or a pump or a heating element, and / or at least one of the modules is adapted for reading a temperature sensor; vi) and wherein the building automation system comprises at least one HVAC system, wherein at least one of the modules is adapted to control an air conditioning module or a heating element or a valve or a pump, and / or at least one of the modules is adapted for reading out of a temperature sensor or a humidity sensor; vii) and wherein the building automation system comprises at least one parking guidance system, wherein at least one of the modules is adapted to control at least one lighting element, and / or at least one of the modules is adapted to read out at least one motion detector or presence detector or switch; viii) and wherein the building automation system comprises at least one access control system, wherein at least one of the modules is adapted to control a door or an access, and / or at least one of the modules is adapted to read out at least one motion detector or presence detector or switch or identification module.

In one embodiment, the building automation system further comprises at least one of the above-mentioned actuators and / or at least one of the above-mentioned sensors.

In one embodiment, the wired bus comprises at least two electrical conductors which are galvanically isolated from each other, but which are functionally coupled to each other by means of at least one signal amplifier with an optical coupling, which signal amplifier also forms part of the bus system.

According to a sixth aspect, the present invention also provides a set of at least three interface modules for use in a bus system according to the fourth aspect, or for use in a building automation system according to the fifth aspect, wherein one interface module is provided for performing step a) provided with a method according to the first, second or third aspect, and at least two other interface modules are provided for performing steps b) and c) of the method according to the first, second or third aspect.

In one embodiment, at least one of the interface modules further comprises an IR transceiver, and the controller of the interface module in question is further provided with an IR protocol software for sending and receiving messages via the IR transceiver.

In one embodiment, at least one of the interface modules further comprises an RF transceiver, and the controller of the relevant interface module is further provided with an RF protocol software for sending and receiving messages via the RF transceiver.

In one embodiment, at least one of the interface modules further comprises a fiber optic transceiver, and the controller of the relevant interface module is further provided with a fiber optic protocol software for sending and receiving messages via the fiber optic transceiver.

In one embodiment, at least one of the interface modules further comprises a second bus interface, and the controller of the relevant interface module is provided for both communicating over the first bus interface via a first protocol according to the first, second or third aspect , as well as via a second protocol that is different from the first protocol over the second bus interface.

In one embodiment, at least one of the interface modules further comprises at least one built-in actuator for controlling a component of a building automation, and / or at least one built-in sensor or detector for reading out a component of a building automation.

Specific and preferred aspects of the invention are included in the appended independent and dependent claims. Features of the dependent claims can be combined with features of the independent claims and with features of other dependent claims as appropriate and not merely as explicitly stated in the claims.

To summarize the invention and the advantages achieved over the prior art, certain objects and advantages of the invention have been described above. It is, of course, understood that not all of these objectives or advantages can be achieved by any specific embodiment of the invention. Thus, for example, those skilled in the art will recognize that the invention may be embodied or implemented in a manner that has one benefit or a group of benefits as provided herein, without necessarily achieving other objectives or benefits that may be offered or suggested herein.

These and other aspects of the invention will be apparent from and clarified with reference to the embodiment (s) described below.

Brief description of the figures

The invention will now be further described, by way of example, with reference to the accompanying drawings in which: FIG. 1 is a replica of FIG. 1 of US8035529 (B2), and shows an example of a prior art ballast system based on the DALI protocol. FIG. 2 is a replica of FIG. 2A of US 7606955 (B1), and shows an example of a bus system with a master-slave architecture, where the bus is passively pulled high by a pull-up resistor, and the participants of the bus have a bus interface with a so-called "open collector" or a so-called "open drain" to actively lower the can if desired. FIG. 3 is an exemplary block diagram of a participant of the bus according to the present invention, hereinafter also referred to as "interface module" or simply "module". FIG. 4 is a schematic representation of an exemplary bus system and building automation system according to the present invention. FIG. 5 is a schematic representation of a second exemplary bus system and building automation system according to the present invention wherein the digital bus comprises a backbone and two physical conductors. FIG. 6 is a schematic representation of a third exemplary bus system and building automation system according to the present invention, as a variant of the bus system of FIG. 5, further comprising signal amplifiers. FIG. 7 to FIG. 9 show some examples of wired buses known in the art. Bus systems according to the present invention can be used with any of the wired buses shown in FIG. 7 to FIG. 9, but don't have to. FIG. 7 shows an example of a two-wire bus with two conductors, one conductor serving as a reference (ground), and the other conductor being used for data transfer, but not for feeding other modules. FIG. 8 shows an example of a three-wire bus with three conductors, one conductor serving as reference (ground), a second conductor being used for data transfer, and a third conductor being used to feed at least one participant of the bus. FIG. 9 shows an example of a two-wire bus with two conductors, one conductor serving as a reference (ground), and the other conductor being used for both data transfer and for feeding at least one participant of the bus. FIG. 10 shows two exemplary waveforms that can be used by embodiments of the present invention to transmit a logic bit "1" and a logic bit "0", or vice versa. FIG. 11 shows two other exemplary waveforms that can be used by embodiments of the present invention to transmit a logic bit "1" and a logic bit "0", known as "Manchester" coding. FIG. 12 to FIG. 19 illustrate, on the basis of a simplified example, a method for identifying a plurality of identifiable modules of a bus system according to the present invention, wherein one module was added to the bus system to act as "Data Collection Module".

In FIG. 12, the "Data Collection Module" sends a special identification request to the modules to be identified, with the request to send their unique address on the bus.

In FIG. 13 all participants of the bus (except the Data Collection Module) begin sending an identification message containing their unique address almost simultaneously, while the Data Collection Module receives the identification message sent over the bus. FIG. 14 shows the waveforms that the three participants try to send via their bus interface, in which only participant D1 succeeds, at least in the first attempt.

In FIG. 15, the remaining participants D2 and D3 simultaneously begin to send an identification message containing their unique address, while the "Data Collection Module" receives the identification message sent over the bus. FIG. 16 shows the waveforms that the two remaining participants D2 and D3 attempt to send via their bus interface, as a second attempt to send their unique address, in which only participant D2 succeeds.

In FIG. 17, the only remaining participant D3 begins to send a message containing its unique address, while the Data Collection Module receives the identification message sent over the bus. FIG. 18 shows the waveform of the identification message that participant D3 sends through his bus interface, as a third attempt to send his unique address, which he succeeds this time. FIG. 19 shows the waveform observed on the bus. FIG. 20 to FIG. 23 show an exemplary message structure with one or more frames that can be used by a bus system and by methods according to the present invention. FIG. 20 shows an exemplary time diagram of a message consisting of a single frame. FIG. 21 shows an exemplary bit structure of this one frame. FIG. 22 shows an exemplary time diagram of a message consisting of two frames sent one after the other, separated by a waiting time. FIG. 23 is a schematic representation of a message consisting of three frames. FIG. 24 shows a method for identifying a plurality of participants in the bus system, according to an embodiment of the present invention. FIG. 25 shows the method of FIG. 24, including steps performed by the plurality of identifiable modules of the bus.

The figures are only schematic and non-limiting. In the figures, the dimensions of some parts may be exaggerated and not represented to scale for illustrative purposes. The dimensions and the relative dimensions sometimes do not correspond to the current practical embodiment of the invention.

Reference numbers in the claims may not be interpreted to limit the scope of protection.

In the various figures, the same reference numbers refer to the same or similar elements.

Detailed description of embodiments of the invention

The present invention will be described with reference to particular embodiments and with reference to certain drawings, however, the invention is not limited thereto, but is only limited by the claims.

It is to be noted that the term "comprises", as used in the claims, is not to be interpreted as being limited to the means described thereafter; this term does not exclude other elements or steps. It can therefore be interpreted as specifying the presence of the listed features, values, steps or components referred to, but does not exclude the presence or addition of one or more other features, values, steps or components, or groups thereof. Thus, the scope of the expression "a device comprising means A and B" should not be limited to devices that consist only of components A and B. It means that with regard to the present invention, A and B are the only relevant components of the device.

Reference throughout this specification to "one embodiment" or "an embodiment" means that a specific feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, occurrence of the expressions "in one embodiment" or "in an embodiment" at various places throughout this specification may not necessarily all refer to the same embodiment, but may do so. Furthermore, the specific features, structures, or characteristics may be combined in any suitable manner, as would be apparent to those skilled in the art based on this disclosure, in one or more embodiments.

Similarly, it should be appreciated that in the description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together into a single embodiment, figure, or description thereof for the purpose of streamlining disclosure and assisting in understanding one or several of the various inventive aspects. This method of disclosure should not be interpreted in any way as a reflection of an intention that the invention requires more features than explicitly mentioned in each claim. The claims following the detailed description are hereby explicitly included in this detailed description, with each independent claim as a separate embodiment of the present invention.

Furthermore, while some embodiments described herein include some, but not other, features included in other embodiments, combinations of features of different embodiments are intended to be within the scope of the invention, and constitute different embodiments, as would be understood by those skilled in the art . For example, in the following claims, any of the described embodiments can be used in any combination.

Numerous specific details are set forth in the description provided here. It is, however, understood that embodiments of the invention can be practiced without these specific details. In other cases, well-known methods, structures and techniques have not been shown in detail to keep this description clear.

In the present invention, the term "message" and "message" is used as a synonym.

In the present invention, the terms "soil" and "mass" are used as synonyms.

In the present invention, the term "communication bus" or simply "bus" refers to a wired bus with at least two electrical conductors, or a wired bus with one electrical conductor and a ground.

In the present invention, the terms "participant of the bus" or simply "participant", and "interface module" or simply "module" are used as synonyms. They refer to a device that comprises at least one control unit (e.g., a programmable processor) and a bus interface for sending and receiving messages over the communication bus. In the context of the present invention, the module can be a read-out module (for reading one or more sensors), or a control module (for controlling one or more actuators), or a combination of both a read-out module and a control module.

In the present invention, "identification request" means a specific or proprietary (English: "proprietary") message sent by one of the modules, namely the module that acts as "Data Collection Module" (hereinafter abbreviated as GV), in the form of a broadcast command to the other modules of the bus (ie the plurality of modules to be identified) with the request (or command) to make their "unique address" known on the bus.

In the present invention, the term "absolutely unique address" or "unique address" refers to an address or serial number that is usually assigned to the interface module in question during production of the interface module, and that is no longer changed thereafter, and whose value is unique (ie occurs only once) regardless of the bus in which this module is used. This unique address contains at least 17 bits, or at least 20 bits, or at least 24 bits, or at least 28 bits, or at least 32 bits, or at least 40 bits, or at least 48 bits.

In the present invention, the term "bus address" refers to an address that has fewer bits than the absolutely unique address, and that is assigned to an "interface module" after production, (e.g., during so-called "commissioning") to communicate more efficiently on the communication bus. This is the address that is usually used during the normal operation of the bus system, and with which components communicate with each other.

In embodiments of the present invention, an "interface module" may have more than one bus address, e.g., one bus address for each input and each output of the "interface module" (as will be further explained in FIG. 3).

In the present invention, the term "identification message" is used to refer to a specific and proprietary message sent by each of the remaining modules (i.e., the modules to be identified) in response to the "identification request".

In this document the term "component" is used to refer to devices such as, for example, push buttons, door locks, presence sensors, motion sensors, wind sensors, temperature sensors, lamps, relays, air conditioning, fire detectors, smoke detectors, HVAC, sirens, heating elements, spray systems, etc. , which are part of a lighting system or a building automation system.

In this document, "component" and "interface module" are considered as separate devices, but it is of course also possible to group both devices into one device, which is also referred to herein as "interface module" or "module".

In this document, "normal operation" or "normal messages" or "operational messages" refers to messages sent on the bus during the normal operation of the system, for example, between a sensor and an associated actuator. the RR and the "identification messages" sent by the other modules are not considered "operational messages".

The present invention relates to a digital bus system such as can be used, for example, in a lighting system or a building automation system, and to methods of communicating about such a bus system, including a method of identifying a plurality of participants of a bus system, e.g. all "interface modules" linked to the bus system except the Data Collection Module.

As already indicated in the background section, there are various bus systems for buildings, such as a bus system according to the DALI protocol for controlling a lighting system, or a bus system according to the KNX protocol for controlling a building automation system with "components" that are usually classified in two categories: sensors (or detectors) and actuators, but other components are also possible, such as clocks or logical building blocks. The group of sensors includes: switches, push buttons, presence detectors, temperature sensors, etc. The group of actuators includes relays, sun blinds, air-conditioning, etc. These "components" are connected to the digital bus via an "interface" module "(hereinafter also referred to simply as" module ") which acts as a bus participant.

The architecture of the interface modules (see, for example, FIG. 3) may differ depending on the type of component that is connected to it (eg controlling a lamp or a relay requires functionality other than reading a push button), but all they have a bus interface 303 and a controller 301 (e.g. a programmable processor), and they are provided for sending and receiving messages according to a certain protocol. The protocol that will be described herein is a proprietary protocol (English: "proprietary protocol"), which is part of the bus system of the present invention.

Designers of a lighting system or of a building automation system must therefore choose "components" and "interface modules", and installers must place these in the building and connect them according to a predetermined plan. As described in the background section, the installer assigns at least one bus address to each module, referring to the address assigned to each module during commissioning, and with which the components communicate with each other during normal operation of the lighting system or the building automation system, and which has fewer bits than the absolutely unique address.

In certain embodiments of the present invention, some interface modules are assigned at least two, or at least three, or at least four bus addresses, namely, one bus address for each input and output. In the specific example of FIG. 3, for example, five bus addresses would be assigned to the module 300 shown, namely two for the inputs IN1, IN2, and three for the outputs OUT1, OUT2, OUT3.

In practice it has been found that installing and assembling and connecting the components (which requires actions such as drilling, screwing, pulling cables, loosening false ceiling, removing insulation, etc.) is a very different task than assigning an address to a module, and totally different equipment is required. It is therefore not surprising that human errors often occur with such an address assignment, such as forgetting to assign an address to one or more modules, or assigning a wrong address, or assigning the same bus address by mistake. to two different modules, etc.

It often takes a lot of time and effort to detect and correct all errors, especially when the modules are installed in a false ceiling or in a cavity in a wall, or in a room that is locked.

This problem is all the more difficult when the building is already in use, and also occurs, for example, when modules are added to an existing building. It will be clear that it is not possible to interrupt the lighting or the air conditioning or the heating or the like of the entire building for a long time (for example several hours) to detect and / or correct an error. The existing system must continue to work.

Faced with this problem, and looking for a solution to detect and / or correct the errors faster and / or easier, and taking into account the precondition that the system (eg lighting system or building automation system in which it is used) must continue to work, the inventors of the present invention came up with the idea of providing a method for identifying a plurality of modules coupled to a communication bus by retrieving the unique addresses UA1, UA2, UA3 of the plurality of identifiable modules, and which comprises the following steps: (as illustrated in FIG. 24, FIG. 25 and FIG. 12 to FIG. 17) a) sending over the communication bus an identification request BO through the Data Collection Module GV to the plurality of modules D1, D2, D3, for requesting the unique address UA1, UA2, UA3 of these modules; b) receiving the identification request BO by each of the plurality of modules D1, D2, D3; c) successfully sending an identification message B1, B2, B3 by each of the plurality of modules D1, D2, D3 in response to the received identification request BO, each identification message B1, B2, B3 having the unique address UA1, UA2, UA3 of the module in question comprises, wherein step c) comprises the following steps for each of the plurality of modules D1, D2, D3: i) waiting for the bus to be free for at least a predetermined time W_ID; ii) trying to send the identification message B1, B2, B3 of the relevant module, wherein trying to send the identification message comprises sequentially trying to send each bit of the identification message, and wherein trying to send each bit is the comprises controlling and monitoring the communication bus, and determining whether a collision has occurred on the communication bus, iii) and if a collision has occurred, stopping the transmission of the relevant bit and of all subsequent bits of the identification message and repeating steps i) to iii) until the identification message is sent without collision; and if no collision has occurred, decide that the identification message B1, B2, B3 has been successfully sent, and no longer participate in trying to send the identification message.

By "sending successfully" is meant that each module will continue to try to send its identification message until it is successful.

It is an advantage of this method that all unique addresses of all modules that are effectively connected to the bus (except that of the GV, but the GV usually hangs directly on a PC, and can therefore be accessed directly) can be automatically retrieved without human intervention, which excludes the risk of human error. By requesting the unique addresses (which are already built into the modules during the production of the modules), all modules are unambiguously "discovered", regardless of whether the at least one provided bus address was correctly assigned to the module during installation.

It is a great advantage that the protocol (and therefore also methods that operate according to this protocol, and therefore also bus systems to which devices that perform these methods are linked) provides that only one single identification request will be sent, on which each of the other modules will answers, if necessary in multiple attempts, until it is finally achieved. Because the GV will only send one message on the bus, a lot of time is saved.

It is a great advantage that the protocol is provided in such a way that (in principle, unless "normal messages" come through), exactly one identification message will be sent on the bus undamaged at every iteration. This is mainly due to the fact that the modules will stop transmitting immediately after the detection of a bit-level collision (which they do not only do when sending identification messages, but when sending all messages). Since the unique address is contained in the identification message, and no two modules are produced with the same unique address, all identification messages from the multitude of modules are by definition different, and so every time several modules start sending an identification message, exactly one "winning" identification message. The protocol is provided in such a way that this still applies, even if the identification message contains several frames (as will be explained below).

Thanks to the collision detection at bit level and, if necessary, stopping sending, and automatically retrying when the bus is free for a sufficient length of time, no messages are lost, so no time is lost on the bus due to corrupted (English: corrupted) data and retransmissions. This means an important time saving.

It is a great advantage of this method that it can even be implemented in an operational bus system, which means, for example, that the lighting system or the building automation system in which this bus system forms part will continue to work while this address request takes place. Moreover, this can happen with a not or hardly noticeable delay (provided that an appropriate choice of waiting times and / or priorities of messages and / or bit assignments to the available commands).

It is a great advantage that this method can be carried out very quickly (e.g., order of magnitude in 1.85 to 2.28 seconds for a bit period of 150 ps and a bus with 100 participants, assuming a unique address of 32 bits) that the bus was not loaded), because with each iteration exactly one unique address of the modules is sent to the Data Collection Module. Such a short period of time is unseen, and its benefit should not be underestimated.

This speed is mainly due to: 1) the fact that a "collision" on the bus does not mean that the information has been lost, in contrast to, for example, wireless communication where a collision means that both messages are lost. In the present invention, on the other hand, even in the event of a collision, one message will be correctly put on the bus (without being mutilated by colliding messages). This implies that the time required to send all unique addresses increases almost linearly with the number of modules connected to the bus, and therefore will not increase exponentially because the chance of collisions will increase. 2) the method does not require any special measures to avoid collisions (English: "collision avoidance"). On the contrary, all modules to be discovered may perfectly start sending simultaneously. Because no variable waiting time needs to be provided based on a pseudo-random value, the implementation can be simplified, and the messages can on average be sent faster. 3) because the Data Collecting Module will only send one identification request on the bus, after which all other modules will respond automatically, and will try again if they have not succeeded; 4) because the Data Collection Module requests the unique address, and the "other modules" give their address, as opposed to binary approximation techniques such as those known to DALI, where the master specifies an address range, and the slaves must answer if they fall within that range , or not; 5) Optionally, this can be accelerated even further by having all other modules start at virtually the same time (eg except for 1 bit period), by using a fixed, predetermined waiting time, eg WJD = 1.90 ms. 6) Optionally, this can be further accelerated by the use of at least one current source instead of a passive pull-up resistor, so that the signal flanks on the digital bus can be very steep (e.g., a rise and fall time of less than 10 ps, or less than 7 ps, or less than 5 ps, or less than 3 ps, or less than 2 ps), even for a cable of more than 100 m, which in turn allows a smaller bit period, and therefore a higher bit rate );

In practice, a PC or a laptop or the like is coupled to the GV, for storing and / or displaying the unique addresses, and for further analysis.

It is noted that initially only the unique addresses are requested from the multitude of participants, but this is the most crucial step. Once the unique UA addresses are known, the modules can be addressed individually, using specific commands within the protocol, the unique UA address being used to address one module individually, instead of the usual (and shorter) bus addresses. These messages where the UA is used for addressing are indeed longer than the "normal messages" that are sent between the modules during the "normal operation" of the system (e.g. from a light switch to a lamp), but are particularly useful for detect and even correct errors in the bus system.

It is noted here that it may seem trivial at first sight to provide read and write commands based on the unique address in the protocol, but that is absolutely not true, precisely because these addresses are not known to the installer (eg because they are not provided in known methods on the plan), so even if those functions existed in the prior art, he would not be able to use them.

Nor was it trivial to think of a function to request these addresses in the way suggested above, because there is clearly a bias that one should avoid collision with the bus as much as possible.

The unique addresses already allow an initial analysis. For example, it is possible, based on the structure of the unique address, or by checking into which range the unique address falls, or by looking up the unique address in a database that was created during production, additional retrieve or retrieve information about the relevant modules, eg to determine which type of module is involved. On the basis of a list of functions that work correctly, for example, a selection can already be made for which modules additional information should be requested via the bus, and which not. Alternatively, this information can also be requested on the bus, for example by sending a read command to each module, using absolute addressing instead of the local bus address.

Further details and advantages will become apparent in the detailed discussion of the figures. FIG. 1 is a replica of FIG. 1 of US8035529 (B2), and shows an example of a prior art ballast system based on the well-known "DAU" protocol. Although the present invention is not limited to ballasted lighting systems, this prior art document is interesting as background information for readers not familiar with such bus systems, or with the DALI protocol, or with "commissioning."

For the present invention, it is sufficient to know that FIG. 1 shows a master-slave system 100 with a master module 20 that sends messages over the bus 16 (according to the DALI protocol) to the plurality of modules 12 for controlling lamps 44 separately or in groups. module is assigned a 6-bit bus address, eg using remote control 18 and infrared receiver 24. The reader can read more details in the relevant document. FIG. 2 is a replica of FIG. 2A of US766955 (B1), and shows an example of an (extremely simply proposed) bus system 200 with a master-slave architecture, where the bus 203 is passively pulled high by an external 204 or internal 205 pull-up resistor. The modules 201, 211 have a bus interface with an input buffer 207, 217 and an output buffer 206, 216 which are coupled to each other. The output buffer 206, 216 has an "open collector output" or an "open drain output" with which the bus 203 can be actively pulled low. The operation of such a bus interface is well known in the art, and therefore does not need to be discussed in further detail.

The modules 201, 211 of FIG. 2 are connected such that the bus 203 will assume a low voltage level (e.g., 0V) when at least one of the modules 201, 211 pulls the bus low, and that the bus 203 will assume a high voltage level (e.g., 3V) when none module 201, 211 pulls the bus low but the bus is pulled high by the pull-up resistor.

Although not explicitly shown, the master 201 and the slave 211 each include a controller that provides a signal to be sent to the output buffer 206, 216, and which receives a signal through the input buffer 207, 217.

During the transmission of a signal, each module 201, 211 monitors whether the signal to be transmitted indeed appears on the bus 203. A so-called "collision" occurs when one of the modules wants to set a (passive) high level on the bus, while the bus is actively pulled low by another module. Such a collision can be easily detected by comparing the signal from the input buffer 207, 217 with the signal to be transmitted that is applied to the output buffer 206, 216. The bus 203 is called a "digital bus" because only two signal levels have to be distinguished. become "low" when the bus voltage is in a first voltage range or high "high" when the bus voltage is in a second voltage range that does not overlap with the first voltage range. FIG. 3 shows an exemplary block diagram of an interface module 300 (or simply "module") according to the present invention. The interface module 300 includes at least one bus interface 303 and a controller or processor 301.

The bus interface 303 of FIG. 3 has an output buffer (not shown) to be able to send signals, and has an input buffer (not shown) to be able to receive signals. The module 300 further has means (not shown) to detect a collision on the bus, and has means to disable the output buffer (which means that transmission is stopped) as soon as a collision is detected.

The controller or processor 301 may be, for example, a state machine (English: "status machine"), or may be a programmable processor, e.g., a programmable microprocessor, with an internal or external working memory (e.g. RAM), and with an internal or external not volatile memory (eg ROM, FLASH, EEPROM) for storing program instructions to be executed by the processor. These program instructions ensure that communication on the bus is according to a specific protocol.

Optionally, the module 300 may include an internal pull-up resistor 305, optionally via a switch (not shown) connected to the supply voltage VDD, to passively raise the bus.

Optionally, the module 300 may include an internal power source 304, whether or not via a switch (not shown) connected to the supply voltage VDD, to actively pull the bus high, but with a (relatively weak) current that is smaller than the (relatively strong current that can be discharged through the output buffers. An advantage of using a current source 304 instead of a pull-up resistor 305 is that the voltage on the bus can rise (or fall) almost linearly as a function of time rather than exponentially. In this way, more stylish edges can be obtained, which makes it possible to reduce the bit period.

In preferred embodiments of the present invention, the bus 311 is raised passively by means of at least one internal pull-up resistor 305, or by means of at least one internal current source 304, or by an external pull-up resistor (as in FIG. 2).

Optionally, the module 300 includes one or more additional blocks such as an IR (infrared) transceiver 306, an RF transceiver 307, a temperature sensor 308, a motion detector 309, a fiber optic transceiver (not shown), and so on.

Furthermore, the module may have one or more external inputs "IN" and / or one or more external outputs "OUT", depending on the component to which this interface module 300 is to be connected. In the example of FIG. 300 with two inputs and three outputs, but of course the invention is not limited thereto, and certain modules may, for example, only have one single input and no output, or only one output no input.

In preferred embodiments of the present invention, each input and each output of the module 300 is assigned a unique bus address, the bus address having approximately the same function as a bus address at DALI, with the difference that in DALI one module has only one bus address while a module 300 according to the present invention can have multiple bus addresses, and that a DALI address is only 6 bits long (max. 64 components), while a bus address in preferred embodiments of the present invention is at least 10 bits (max. 1024 components), or at least 12 bits (max. 4048 components) or at least 14 bits or at least 16 bits or at least 20 bits long.

For example, if a dimmer is connected to output OUT1, for example, and this dimmer is assigned bus address "500" according to the plan, then the module 300 must be configured accordingly by the installer, eg by storing the number "500" at a specific location in a non-volatile memory. This may optionally be the same flash memory 314 as the one in which the executable code is stored, or it may be a separate non-volatile memory, eg EEPROM 302. After saving the number "500" as the bus address for output OUT1 (in this example), the module 300 will receive and decode messages destined for bus address "500", and control the output OUT1 accordingly.

For example, if input IN2 is connected to a push button with bus address "188", then by storing the number "188" in a non-volatile memory of the module 300, the module can be configured to send a message originating from "bus address 188" when the corresponding push button is pressed.

In the context of the present invention, during commissioning, a unique bus address should in principle be assigned to each input and to each output of the module (insofar as it is used), the bus address only having to be unique within one certain bus system (usually one building). If the module 300 contains only one input or only one output, then that one bus address can be considered as the bus address of the module (as with DALI).

The function of dimming and checking the status of a push button (in the example above) is peculiar to the type of module 300, and will usually differ per type. In preferred embodiments of the present invention, information, including the type of the module, can be retrieved via the bus interface.

Optionally, the module 300 further comprises a serial interface, e.g. an I2C or an RS232 or an SPI interface, which can be used, for example, to program the bus addresses during the aforementioned "commissioning". Alternatively, a push button may be provided (not shown) connected to a dedicated input PROG of the controller 301, to ensure that the module 300 performs a special routine in which it will send a special intended message with at least one bus address therein received and will save, for later use as a bus address. In the example above, that special message would contain, for example, the bus address "500" intended for output OUT1 and the bus address "188" intended for input IN2, and possibly other bus addresses for the other inputs and outputs.

The serial interface can also be used to communicate with a user device, e.g., a computer 401, as shown in the example of FIG. 4, where the module D01 acts as a Data Collection Module GV and can transmit or exchange information with the PC 401. Alternatively, communication with the user device 401 (e.g., PC) can also be via the IR transceiver 306 (if present), or via the RF transceiver 307 (eg Wifi or Bluetooth), or via another suitable interface, such as a USB port (not shown).

Each module 300 according to the present invention has a unique address UA, e.g. a serial number, chosen so that no two modules 300 with the same unique address exist. During the production of the module 300, this unique address is usually stored in a non-volatile memory of the module, for example in Flash or EEPROM, or rather in an OTP memory (One-Time Programming).

Of course, each module 300 also has a port for connection to a power supply Vdd and a reference potential Gnd. In the example of FIG. 3, the power supply may be, for example, a DC voltage VDD supplied by an external transformer (not shown), but this power supply may also be supplied via one of the bus wires (as will be further discussed in FIGS. 7 to FIG. 9).

Furthermore, the module 300 preferably comprises a clock circuit 310, for generating one or more internal clock signals. Clock circuits are known in the art, and may, for example, be based on an internal RC delay, or are preferably based on the oscillation frequency of an external crystal 315. If the bus 311 itself supplies a clock signal (not shown), then the crystal 315 may be omitted, otherwise, the module 300 must synchronize its timing with the edges of the data signal on the bus 311, in known ways.

Optionally, the module 300 may contain a so-called real-time clock 313, that is usually a chip powered by a local battery, which chip keeps track of the date and time (e.g. in hours, minutes and seconds), as is known in the PC world for example. This real-time clock can, for example, be useful for adding time stamps (English: "time-stamps") to log messages that are stored in a log in a non-volatile memory.

Preferably, the module 300 also comprises a so-called "watchdog timer" 312, or a monitoring circuit, which causes, for example, an internal reset of the module 300 when the voltage comes on, or when there is no activity for a predetermined time. of the controller.

The module 300 according to the present invention is new to the prior art, inter alia because the controller 301 is provided, e.g., is programmed to execute communications on the bus 311 according to a specific protocol that includes at least the method in which the module 300 upon receiving the identification request, will repeatedly attempt to send its unique address via an identification message (shown on the right of FIG. 25). FIG. 4 is a schematic representation of an example of a (very simple) "lighting system" or a "building automation system" 420, comprising four components COMP1, COMP2, COMP3, COMP4 (for example selected from the set consisting of a light button, a lamp, a motion detector and a sun blind), and three interface modules D1, D2, D3 and a digital bus 404 with wires (English: "wired bus"). In the example of FIG. 4, module D1 is connected to only one component D1, and module D2 is connected to only one component D2, but module D3 is connected to two components D3, D4. Each module D1, D2, D3 has a unique address or serial number, respectively UA1, UA2, UA3. However, these unique addresses are not used during the "normal operation" of the lighting system or the building automation system, but bus address BA1 assigned to module D1 and associated with the input or output to which the first component COMP1 is linked, bus address BA2 assigned to module D2 and is associated with the input or output to which the second component COM2 is linked, and bus addresses BA3 and BA4 which are both assigned to module D3, where bus address BA3 is associated with the input or output to which the third component COMP3 is connected, and bus address BA4 is associated with the input or output to which the fourth component COMP4 is connected

The subsystem comprising the interface modules D1, D2, D3 and the digital bus 404 is called the "bus system". The modules D1, D2 and D3 can be slaves on the bus, but can also be masters, ie they can send a message autonomously on the bus, without being requested by another module.

Optionally, a module DO can be coupled to the bus 404, temporarily or permanently. In the example of FIG. 4, this module DO is not coupled to one of the above-mentioned components COMP1, COMP2, COMP3, but is connectable or functionally connected to a user device 401, e.g. a PC with input devices 403 and a screen 402, or a laptop or tablet or a smartphone. The DO module can be used, for example, to configure or reconfigure the bus voice and / or to monitor traffic on the bus 404, etc. The PC 401 can, for example, request information about the bus system via the DO interface module, with which it is functionally connected, e.g. via a serial or wireless interface, and can display such information on a screen 402, for example, or store it on a storage medium (not shown), etc.

In the context of the present invention, the module DO functions as "Data Collection Module", abbreviated as "GV", which means that it is the module that sends the "identification request" described above on the bus, and which receives the "identification messages" from the other modules D1, D2, D3 containing the unique addresses UA1, UA2, UA3, respectively. The GV can forward these identification messages or these unique addresses to the user device 401 for further processing, e.g. for display on a screen 402. The term "Data Collection Module" is used in this document to distinguish the known concepts of "master" and "slave".

A possible scenario for the bus system of FIG. 4 to be correctly installed in a building proceeds, for example, as follows: - an installer lays a cable 404 with several wires from a control room to a specific room of a building, according to a plan; the installer assembles the components COMP1, COMP2, COMP3, COMP4 and assembles the modules D1, D2, D3, and connects the components with the associated modules, and connects the modules with the cable 404; - the installer programs (in known manner) the bus address BA1 for component COMP1 in module D1, and programs the bus address BA2 for component COMP2 in module D2, and programs the bus addresses BA3 and BA4 for COMP3 and COMP4 in module D3, as provided in the plan. Each module D1, D2, D3 stores the bus address (s) assigned to it in an internal non-volatile memory (eg in flash or eeprom).

Now assume, for example, that the installer correctly assigns bus address BA1 = "1" to module D1, but mistakenly has not stored bus address BA2 = "22" in module D2, but an incorrect address (eg address "23"), and correctly stores bus address BA3 = "33" in module D3, but by mistake has forgotten to store bus address BA4 = "43" in module D3. Of course, the lighting system or the building automation system in which the bus system is used will not work as provided for in the plan. To detect and correct this error (s), the installer must physically go to each of modules D1, D2 and D3 (because he does not know which modules are correct, and which modules are not programmed correctly), and eg. still or re-execute the assignment of the bus address / bus addresses, or at least perform additional actions to request the bus address stored in the module (or the factory value) in one way or another (eg in in the case of a lamp it is sometimes possible to send a modulated light signal, on the basis of which the bus address can be determined). This is time-consuming, and sometimes very difficult or even impossible, for example because the room in which the module is located is locked.

According to the present invention at least some of these problems can be detected much faster, and / or more elegantly and possibly even remotely solved, for example as follows (referring to FIG. 4 and FIG. 24): - if the module DO is still is not present, then it is added, and (temporarily or permanently) connected to the digital bus 404, as shown in FIG. 4; if the user device 401, e.g. PC or laptop or the like is not yet present in the system, this is also added, and functionally connected to the module DO, as shown in FIG. 4 (e.g. via Bluetooth); - the module DO functions as Data Collection Module GV and sends an identification request BO (see also FIG. 12) to the other modules DI, D2, D3, e.g. after pressing a button (not shown), or after receiving a command from the PC 401, or in another suitable manner.

This identification request BO is a so-called "query command" or "broadcast command", which means that it is a message intended for all other modules, regardless of their bus address (s). This message contains a predetermined bit pattern to indicate that this message is an identification request recorded in the protocol. The message B0 will be received by the other modules D1, D2, D3. The modules D1, D2 and D3 will receive this command even if their bus address (s) have not yet been programmed or have been programmed incorrectly.

Subsequently, the other modules D1, D2, D3, each responding to the identification request, will each send back their own identification message on the bus intended for the Data Collection Module GV. These identification messages B1, B2, B3 contain a first part that serves to indicate that this message is an identification message, and a second part that contains the unique address UA1, UA2, UA3 of the relevant module. The first part is a predetermined bit pattern that is the same for all modules. The second part is different.

The Data Collection Module GV recognizes these identification messages on the basis of the specific bit pattern indicating that this is an identification message, and receives the messages with the unique addresses of all other modules D1, D2, D3. In FIG. 12 to FIG. 19 it will be explained in more detail on the basis of a simplified example how this can be done, both at bit level and at frame level. One of the underlying ideas of the present invention is based on the fact that each unique address UA1, UA2, UA3 is truly unique, and that consequently the identification messages are also unique, thus guaranteeing that each identification message will be sent on the bus exactly once undamaged. even when hundreds or even a thousand or more modules start sending their identification message "almost simultaneously", and even when the system was already operational at the time the identification request is sent, and "normal messages" are sent between the identification messages .

It is noted that the module DO acting as GV will only send a single query command, and that the other modules D1, D2, D3 will automatically retry sending their identification message BI, B2, B3 if it is not of the first attempt. Because the GV will only send one command, the traffic on the bus is limited and a lot of time is saved. If the bus remains inactive for at least a predetermined timeout period WJD, the module DO knows that all identification messages have been sent.

It is important to note that the repeated attempts may be regarded as "retransmissions" for the relevant module, but not as "retransmission" on the bus due to corrupted messages caused by collisions. The protocol is defined in such a way that collisions will occur when two (or more) modules try to put a different bit on the bus at the same time, but the module whose information is mutilated immediately stops sending, and the module whose data is intact continues to send. This aspect in itself is known, but not in combination with requesting the unique addresses that are automatically sent one after the other, as a result of which a large speed gain is achieved. And also not in combination with the optional feature that no pseudo-random time is waited before sending the identification messages.

Referring back to FIG. 4, all unique addresses UA1, UA2, UA3 will thus be sent to the user device 401, e.g. a PC with a screen 402 and input means 403 (e.g. a keyboard and a mouse). These unique addresses are the basis for further analysis.

When the unique addresses are known, for example, a command can be sent to each module D1, D2, D3 separately to request more details, such as the type of the module, and / or the bus address or bus addresses that are are stored in the module, etc.

To that end, the protocol of a bus system according to the present invention may also include commands to request certain information from one particular module that is addressed by its unique address, and the protocol may also include commands to send this information from the relevant module to the GV, to possibly be stored therein in a non-volatile memory. In the state of the art, although information can be requested from the modules (including the serial number), that communication takes place on the basis of the assigned bus address, and therefore only works after the bus addresses have been correctly assigned, and does not work if none or an incorrect bus address has been assigned. The additional function of the present invention, with which modules can be individually addressed using their unique address, is therefore extremely suitable for detecting and / or correcting errors, but only after the unique addresses are known.

Optionally, the PC 401 can also consult a data file, in which additional information is stored from the modules produced, based on the unique address. For example, the type of each module can easily be retrieved from a data file.

Referring back to the example above, the installer can determine that: (a) the module D1 is of the type to interface with COMP1 (e.g., a push button), and that the bus address BA1 is correctly programmed, and that (b) the module D2 is of the type to interface with COMP2 (eg a lamp), and that the bus address BA2 is incorrectly programmed, and that (c) the module D3 is of the type to interface with COMP3 (eg a relay) for a sunblind motor) and COMP4 (eg a wind sensor), and that the bus address BA3 is correctly programmed, but the bus address BA4 is not programmed.

These errors can then be easily corrected by sending a correct bus address to modules D2 and D3, using a write command with absolute addressing (ie where the unique address is used to address the module and not the bus address).

The example above shows that it is not always necessary to know the physical location of the modules, and that it is not always necessary to go to the physical location where the component in question is located, but sometimes it is necessary. But even then, the present invention is particularly useful because the number of components that must be verified manually can be drastically reduced.

In summary, the present invention thus allows to quickly find all unique addresses (with only one query command), and then allows each module to be individually addressed based on their unique address, to read additional information and / or to write. A data file can also be consulted to request specific information based on the unique address. On the basis of this information, the installer can make a diagnosis of the errors and can make the necessary corrections in a very targeted manner. FIG. 5 is a schematic representation of a second example of a bus system according to the present invention, and of a lighting system or a building automation system comprising the bus system.

The bus system of FIG. 5 comprises a first physical conductor VO connecting modules DO1, D02 and D03 situated on a ground floor of a building, for interfacing with associated components COMP0l, COMP02, COM03, and a second physical conductor VI which links modules D11, D12 and D13 connects on a first floor of the building, for interfacing with associated components COMP11, COMP12, COMP13. The first conductor VO and the second conductor VI are electrically connected to each other via a so-called "backbone" BB.

In a similar manner as described in the example of FIG. 4, the Data Collection Module 504 can send an identification request to each of the modules DO1, D02, D03, D11, D12, D13, and each module will respond with an identification message containing the unique address of the relevant module.

Thereafter, the Data Gathering Module GV can, if desired, request additional information from the modules by addressing it based on their unique address (referred to herein as "absolute addressing"), and / or the Data Gathering Module GV can remotely program one or more bus addresses in the relevant module .

It was described above how the identification request and the identification messages can be used to detect errors made during the initial assignment of one or more bus addresses at the installation of the system, but the present invention is not limited thereto, and can also be used e.g. breakdowns, for example to detect whether all modules are still responding, or can for example also be used to generate an up-to-date list with the unique addresses with the assigned bus addresses (eg to determine which bus addresses are still free when a module is added to the system), etc.

In a preferred embodiment of the present invention, the bus protocol is designed such that sending the identification request by the Data Collection Module 504, and responding to it by all other modules DO1, D02, D03, D04, D05, D06 can be performed while the system is "in" operation "is as a lighting system or as a building automation system. For example, if two modules (not shown) and two components (not shown) are installed on the first floor, then it is desirable that the lighting and / or functions such as air conditioning and / or sun blinds continue to work on the ground floor. As will be further explained, this is possible because the identification request and identification messages use the same frame structure as the frame structure used to send "normal" messages between components (e.g. from a push button to a light, or from a light sensor to a sunblind, etc.). This also applies to read and write operations with absolute addressing.

It will be clear that a relatively fast detection of all unique addresses, and especially a communication whereby the other modules can continue to work, becomes all the more important as the building has more modules and / or more components, for example at least 17 or at least 33, or at least 50, or at least 65, or at least 100, or at least 129, or at least 150, or at least 200, or at least 257.

In an embodiment of the present invention, identification messages have a lower priority on the bus than other messages such as e.g. messages for sending a message from a push button to a lamp (herein referred to as "normal messages" or also "operational messages"). In this way, the identification messages are prevented from completely occupying the bus until all modules have been identified. This can, for example, be easily implemented by selecting the minimum wait time W_ID (see FIG. 19) prior to an identification message greater than the minimum wait time before a "normal message", e.g. at least 2.1 ms instead of at least 1.95 ms.

Preferably, the modules are designed such that, if the module is to send both an identification message and a "normal message" (e.g. a message due to pressing a push button or due to a detector linked to the module), the "normal message" is sent before the identification message. This is a matter of determining which message to send is given priority in the module. In the case of a programmable controller, this functionality can easily be provided in the program executed by the controller.

Naturally, all modules must listen to the bus at all times, and take the necessary action if a message is received for them, eg switching on a specific lamp connected to this module, even if the module still has an identification message must send. This can be easily implemented, for example, by using a microcontroller that is clocked at a sufficiently high clock speed. FIG. 6 is a third schematic example of a bus system according to the present invention. It is a variant of the bus system of FIG. 5. The components are not shown not to overload the drawing. The main difference with the bus system of FIG. 5 is that signal amplifiers R1, R2 have been added on the bus to lower the impedance of the bus. The signal amplifiers may, for example, comprise two sub-circuits connected to an optical coupling.

The sub-circuits are preferably designed in such a way that when the bus on one side of the signal amplifiers is low (e.g. on the backbone BB side), the signal amplifier also pulls the bus on the other side (e.g. sub-bus VO) low , and vice-versa. Thanks to the optical coupling in the signal amplifiers, the impedance of the bus has been drastically reduced, which improves the steepness of the edges, allowing a higher bit rate to be selected, and all modules can functionally talk to each other as if they were all hanging on the same wire. Such a bus system offers enormous flexibility in terms of reconfiguration, without the disadvantages associated with long pipes, such as slow flanks and low bit rates. FIG. 7 to FIG. 9 show some examples of wired buses (English: "wired bus"), known in the art. These figures serve, inter alia, to indicate that the power supply for the modules can come from the bus or can be generated locally, and / or to indicate that the bus can be, for example, a two-wire or three-wire bus, but the invention is not limited to that. FIG. 7 shows an example of a two-wire bus with two electrical conductors in which one conductor "GND" acts as a reference (ground), and another conductor "DATA" is used for data transfer. In this case, the modules D1, D2, D3 must be supplied independently, for example from a local transformer or from a battery (not shown). FIG. 8 shows an example of three-wire bus with three electrical conductors in which one conductor "GND" acts as a reference (ground), a second conductor "DATA" is used for data transfer, and a third conductor "VDD" is used to at least some other participants. feeding via the bus. The voltage VDD is preferably a direct voltage. FIG. 9 shows an example of a two-wire bus with two electrical conductors where one conductor "GND" acts as a reference (ground), and the second conductor "DATA / VDD" is used for both data transfer and for feeding other participants. These participants must have special facilities such as, for example, a diode and a capacitance, but such circuits are known in the art, and therefore need not be further explained.

Bus systems according to the present invention can be used with any of the configurations shown in FIG. 7 or FIG. 8 or FIG. 9, but are not limited thereto. For example, a bus system according to the present invention can also work with two-pole signals (English: "dual ended signals"), or with synchronous signals (in this case the bus contains, for example, an additional conductor with a clock signal). FIG. 10 shows some examples of signals that can be used in embodiments of the present invention. The modules of a bus system according to the present invention need only distinguish three different signals on the bus: - a "data bit signal" (or simply "data bit") according to a logical "1", - a "data bit signal" (or simply "databitO") according to a logical "0", - an "empty signal" (English: "idle", indicating that the bus is free). This form is used between different sequences of bits (hereinafter referred to as "frame").

In a preferred embodiment of the present invention, the "data bit signal" has a predetermined bit period (e.g., 150 ps) and a predetermined shape with one voltage transition from a low level (e.g., 0V) to a high level (e.g., 24V) ) after about 2/3 of the bit period (e.g., 100 ps), as shown in FIG. 10 (a); and the "data bit" signal has a predetermined bit period equal to the duration of the data bit signal (e.g., 150 ps), and a predetermined shape with one voltage transition from the low level (e.g., 0V) to the high level ( e.g., 24V) after about 1/3 of the bit period (e.g., 50 ps), as shown in FIG. 10 (b); and the "free signal" has a signal form equal to the high level (e.g., 24V), as shown in FIG. 10 (c), of indefinite duration; but the invention is not limited thereto, and will also work with other signal forms and / or other voltage values and / or a different timing, provided that the signals allow a collision of a data bit signal and a data bit signal to be detected at bit level and that one of the bits is sent undamaged even in the event of a collision, assuming that all transmitters of the non-dominant bit stop transmitting before the end of the bit period.

It should be noted here that the signals shown in FIG. 10 have been ideally proposed. In practice, the signal will not be exactly OV or 24V, but such aspects are known, and need not be further explained.

The bus system according to the present invention is preferably a bus system in which the bus is pulled (weakly) high by means of a (relatively large) pull-up resistor (English: "puli-up resistor") or a relatively weak power source, and wherein each module has the bus can actively pull low by means of a (relatively strong) low-pull transistor (English: pull-down transistor). In such a bus configuration, data bit is the dominant bit and data bit is the non-dominant bit, because the transistor can provide a stronger current than the weak pull-up resistor or the weak current source, but the invention is not limited thereto, and other configurations can also be used eg a bus configuration in which the bus is (weakly) pulled low by means of a relatively large resistance, and can be pulled high by a (relatively strong) transistor in the modules.

In another embodiment of the present invention, the signal form of FIG. 10 (a) represents a logical "0", and represents the signal form of FIG. 10 (b) a logical "1" for. In that case, data bit is the dominant bit, and data bit is the non-dominant bit. FIG. 11 shows two other exemplary waveforms that can also be used by embodiments of the present invention, known as "Manchester" coding. In the variant designated "Manchester1" (known in the art as Manchester according to GEThomas), a logical "0" is represented by a voltage transition from low to high after 50% of the bit period, and a logical "1" is represented by a voltage transition from high to low after 50% of the bit period. In the variant referred to as "Manchester" (known in the prior art as Manchester according to IEEE 802.3) that is just the opposite.

An advantage of the signals of FIG. 10 with respect to the signals of FIG. 11 is that the start of each bit period coincides with the falling edge of the signal, whereby the synchronization can be more accurate.

Some state-of-the-art bus systems use additional signal types such as a "reset signal" or an "attention request signal", but this is not necessary for the present invention. The three signals mentioned above (data bit, data bit and free) are sufficient. This can help to reduce the complexity of the modules for a bus system according to the present invention. FIG. 12 to FIG. 19 illustrate in more detail the method for identifying the modules of a bus system according to the present invention on the basis of a simplified example. In the simplified example, each identification message consists of one frame of 5 bits, and the frame contains a first part with the predetermined sequence "101" to indicate that the message is an identification message, and the frame further comprises 2 bits corresponding to the unique address. In the example of FIG. 12 to FIG. 19, module D1 has unique address UA1 = "11", module D2 has unique address UA2 = "10" and module D3 has unique address UA3-O0 ".

The main purpose of FIG. 12 to FIG. 19 is to demonstrate the principle that even when all modules, after receiving the identification command, simultaneously start sending their identification message containing their unique address, that exactly one module in each iteration succeeds in sending its unique address , without losing a message.

In FIG. 12, the "Data Collection Module" sends an identification request BO to the "other" participants D1, D2, D3 of the bus system, with the request to make themselves known. This is a broadcast command intended for all "other modules", regardless of their bus address (s). ("other modules" means all modules except the "Data Collection Module" that sent the identification request). This message is received by the "other" participants D1, D2, D3 as suggested by the arrows.

The identification request is decoded by each of the modules D1, D2, D3, and after a certain waiting time (measured from the end of the last bit on the bus) each "other" module will attempt to send its identification message containing its unique address. Thus, the identification message B1 that will be sent by module D1 contains the unique address UA1, and the identification message B2 that will be sent by module D2 contains the unique address UA2, and the identification message B3 that will be sent by module D3 contains the unique address UA3 .

In the example of FIG. 13, the three modules D1, D2, D3 all start simultaneously with sending their message to the bus. As far as known to the inventors, it is anything but trivial to send an identification request to all other modules, knowing that subsequently all modules will respond almost simultaneously. On the contrary, in the state of the art, everything is usually done to try to avoid collisions (English: "collision avoidance"), for example by making sure that no two modules will start sending at the same time, let alone a command would be defined on which all modules (except one) will start sending at the same time.

Moreover, there seems to be a bias that it is possible and practicable to determine participants' addresses for addresses with a maximum of 6 or 8 bits (if necessary by trying all possible addresses and checking them) whether someone responds), but there seems to be a bias that it is not possible to request "direct" addresses from modules when those addresses contain more than 10 bits, let alone more than 20 bits or even 32 bits, at least in the field of building automation systems.

The inventors of the present invention thus directly contradict the premise that it would be impossible or practicable to request addresses with more than, say, 10 bits, and against the current opinion that collisions should be avoided at all costs, and do exactly the opposite, because ideally (if all modules would run perfectly synchronously), all "other" modules will start sending their identification message at exactly the same time. Indeed, in preferred embodiments of the present invention, no random (random) time is waited by the different modules after receiving the identification request, but they all start after the same predetermined time WJD that is at least equal to 1.5 bit period (in the example of FIG. 10, so at least 225 ps), or at least 2.0 bit periods, or at least 2.5 bit periods, or at least 3.0 bit periods, or at least 5.0 bit periods, or at least 10 bit periods (in the example 1, 50 ms), e.g. 2.10 ms after the last bit of the identification request. The tolerance at said timing depends on the implementation, and is typically a value between 1 internal clock period of the module and 1 bit period or bus, and is typically in the range of about 16.6 ns to about 250 ns, according to a internal clock from 4 MHz to 60 MHz), but the invention is not limited thereto, and the internal clock may also have a frequency greater than 60 MHz, e.g. in the range of 60 MHz to 2 GHz.

Since the same format is used for all identification messages B1, B2, B3, and since the unique addresses UA are different, exactly (if there is no other traffic on the bus) exactly one module will succeed each time to send its identification message "intact" on the bus and the other modules will detect a collision on the bus, immediately interrupting the sending of their identification message, and will wait until the bus is free again for at least the predetermined period of time WJD, after which they will again try to send their identification message until all identification messages have been sent. But even if there is other traffic on the bus, then each identification message will be sent on the bus exactly once undamaged, and the module can determine if it has succeeded, and will continue to try until it has succeeded. This is an important underlying principle of this method according to the present invention. FIG. 14 shows the waveforms of the messages B1, B2, B3 that the three modules D1, D2, and D3 want to send via their bus interface, respectively. In the example, the first three bits of the three messages are the same (and indicate that this message is an "identification message"). Only when the fourth bit is sent will the module D3 detect a collision, because it wants to put a data bit signal on the bus itself, but that is not possible because the bus is pulled low by data bit from both modules D2 and D3. As soon as module D3 detects the collision, it stops transmitting, no later than the end of the fourth bit period, preferably earlier. Module D1 and D2 do not notice a collision and just continue to send the fourth bit, and then start sending their fifth bit.

During the sending of the fifth bit, the module D2 detects a collision on the bus, and stops sending message B2. Module D1 does not detect a conflict, and continues to send its message BI, and concludes after sending all the bits of the message BI that it has succeeded, and no longer participates in the next iteration. The modules D2 and D3 have failed to send their identification message (B2 and B3, respectively), and will try again later, as shown in FIG. 15 and FIG. 16.

It is noted that (according to the protocol of a bus system according to the present invention) the Data Collection Module will not send a message again, but that the modules that have not yet succeeded in sending their identification message undamaged will automatically try to send their identification message again .

In FIG. Thus, the remaining participants D2 and D3 start simultaneously with sending their identification message, message B2 and message B3, respectively, while the Data Collection Module listens for the message sent over the bus, as suggested by the arrows. For the sake of completeness, it should be mentioned that module D1 will also receive and decode the signal that is placed on the bus, because all modules must always listen to the bus, but the module D1 will not respond to this because identification messages are intended for the GV . FIG. 16 shows the waveforms of the message B2 and B3 that the modules D2 and D3 attempt to send via their bus interface, respectively, in a second attempt to send their identification message. In a similar manner to that described above, the module D3 will detect a collision on the bus upon sending the fourth bit and stop sending its message B3, as suggested by the dotted line. In this second iteration, module D2 will succeed in sending its message B2 undamaged and decide to no longer participate in the iterations. So only module D3 remains.

In FIG. 17, the only remaining module D3 sends the message B3 containing its unique address UA3, while the Data Collection Module GV listens for the message sent over the bus as suggested by the arrows. The modules D1 and D2 will listen in on the bus, and will decode the message, but will further not respond to the message B3 sent by module D3, and intended for the Data Collection Module. FIG. 18 shows the waveform of the message B3 sending module D3 via its bus interface, as a third attempt to send its identification message, which it succeeds this time. FIG. 19 shows the total waveform observed on the bus after sending the identification request. The waveform shown is in fact a sequence of the signals of FIG. 14 (from time t1 to t2), followed by a wait time WJD, then the signals of FIG. 16 (from time t3 to time t4), again followed by the waiting time WJD, and finally the signals of FIG. 18 (from time t5 to time t6).

As described above, in preferred embodiments of the present invention, the minimum waiting time WJD to respond to the identification request is the same for all modules, and thus not based on any value, but the invention will also work if the waiting times are different.

In the example of FIG. 19 at time t6 all "other" modules D1, D2 and D3 have sent their identification message, and the bus will remain "free" after t6. After a predetermined time-out value for identification messages TOJB has elapsed, the Data Collection Module will decide that all identification messages B1, B2, B3 of all other modules D1, D2, D3 have been received. This timeout is preferably a factor of 1.05 to 2.00 greater than WJD, e.g. TOJB = 2.25 ms, but the invention is not limited thereto.

In the example of FIG. 12 to FIG. 19 it was assumed that no "normal" or "operational" messages were sent on the bus, but if that were the case, a collision could already be detected in the first part of the message. Those skilled in the art will understand that the choice of the bit pattern of the commands, as well as the waiting time between different types of messages, will determine which messages take precedence over other messages.

In preferred embodiments of the present invention, it is not desirable that the identification messages take precedence over "normal" messages, as this would degrade the response time of the lighting system or the building automation system. This drawback can be easily solved by an appropriate choice of the bit pattern of the identification messages (in the example of FIG. 12 to FIG. 19, this can be achieved, for example, by assigning the value "000" to the first part, i.e. as command of the identification messages), and / or by using an appropriate choice of the waiting time WJD for identification messages (in the example of FIG. 12 to FIG. 19 this can be achieved, for example, by making the waiting time WJD at least 3.0 bit periods longer choose the waiting time for "normal" messages). A combination is also possible. The person skilled in the art can, with the additional insights obtained from this document, find a suitable set of commands and associated bit patterns, if necessary experimentally. This does not need to be explained further.

As already stated, FIG. 12 to FIG. 19 a greatly simplified representation of the situation, and primarily intended to demonstrate the principle that each module (except the GV itself) will ultimately succeed in sending its identification message with its unique address, and that no messages will be lost. The iterations mentioned above are therefore not "retransmissions" because a message has been lost, and should therefore not be seen as "lost time", but rather as "delay" because another message was given priority.

In preferred embodiments of the present invention, all messages over the bus, thus also the identification request and the identification messages, are packaged in a frame structure consisting of one or more frames of a fixed length, e.g. the frame structure as shown in FIG. 20, and the unique address will contain at least 16 bits, or at least 20 bits, or at least 24 bits, or at least 28 bits, or at least 32 bits, or at least 36 bits, or at least 40 bits, or at least 48 bits, spread over several frames, preferably consecutive frames, but the operating principles and benefits remain valid. FIG. 20 shows an exemplary time diagram of a message consisting of a single frame. In preferred embodiments of the present invention, one frame consists of 18 time dots or bit periods. For example, each time slot can be 150 ps in length, but a different value can also be used, e.g. a time slot in the range of 5 ps to 1500 ps, or in the range of 8 ps to 1500 ps, or in the range of 10 ps up to 1250 ps, or from 15 ps to 1250 ps, or from 20 ps to 1000 ps, or from 30 ps to 750 ps, or from 50 ps to 500 ps, or from 75 ps to 300 ps, or from 100 ps to 250 ps, e.g., approximately equal to 125 or 150 or 175 or 200 or 225 ps. The person skilled in the art can find a suitable value taking into account, for example, the rise and fall time of the signals (mainly determined by the bus impedance and the value of the pull-up resistor or the output impedance of the pull-up current source), robustness (bit-error rate), and data rate. The "Tbit" bit period must be the same for all modules that are connected directly to the communication bus (see FIG. 4) or indirectly via a repeater without significant delay (see FIG. 5), but may in principle differ from building to building.

The frame of FIG. 20 starts with a "start bit" with the logical value "1", then 16 data bits follow, and ends with a "stop bit" with the logical value "0." The receivers of the modules will always attempt this 18-bit frame structure and ignore column sequences that do not conform to this structure The further processing of the message is preferably performed by the controller 301 (see FIG. 3) in known ways.

In bus systems according to the present invention, one message may comprise one or more frames, e.g. from 1 to 20 frames, but more frames are also possible. The combination of relatively short frames (16 data bits instead of 24) and one or more frames per message offers the advantage that short messages can be sent efficiently, but long messages are also possible, whereby the functionality of a bus system according to the present invention can be very extensive, much wider, for example, than the limited functionality offered by a bus system with the DALI protocol. Bus systems according to the present invention are therefore very suitable for use in a lighting system or a building automation system. FIG. 21 shows an exemplary bit structure of the frame of FIG. 20. The precise meaning of each bit is beyond the scope of this document, and is not necessary to understand the present invention.

If a message contains several frames, known techniques can be used to ensure that the frames on the receiving side are correctly merged, such as by stating the number of frames in the first frame, and / or by stating a sequence number in each frame, etc. FIG. 22 shows an exemplary time diagram of a message consisting of two frames sent one after the other, separated by a waiting time WT2F (abbreviation for waiting time between two frames of the same message).

Although not strictly necessary, frames of the same message are preferably sent as a series or as a train on the bus, with the necessary waiting time WT2F between the frames, but without the intervention of frames of other messages. This can be achieved, for example, by making the waiting time WT2F between frames of the same message smaller than the waiting time WT2B between two "normal" messages. FIG. 23 is a schematic representation of the time required to send a message consisting of three frames. After the third frame, the bus must be free for at least WT2B (which stands for "wait time between two messages"), so the message of three frames takes 13.65 ms in total.

In the examples above, the following values were used:

but other values are also possible, eg values that meet the following set of conditions:

In addition, it is preferably WT2F <= 100 x Tbit (11), although this is not strictly necessary. FIG. 24 shows (at a high level) a method for identifying a plurality of modules of a bus system, (preferably all modules except the module that acts as a Data Collection Module), according to an embodiment of the present invention.

In optional step 2401, one of the modules is referred to as Data Collecting Module, or in step 2402, a module is added to act as Data Collecting Module. The GV is preferably functionally connected (e.g. by means of an electrical cable, e.g. an RS232 cable, a USB cable, a UTP cable, an FTP cable, an Ethernet cable, a coax cable or a fiber optic cable, or a other kind of network cable or wireless, e.g. via an infrared connection, or an RF connection such as WiFi or Bluetooth) with a user device 401, 501, 601 (as in FIG. 4 to FIG. 6), e.g. a PC with a screen 402, 502, 602 and with input means 403, 503, 603 such as e.g. a keyboard and / or a mouse; or a smartphone, or a laptop, or the like. The GV is provided to communicate with the user device, e.g., to receive commands from the user device, such as starting to request the unique addresses, or requesting additional information from a module with a particular unique address, and for forwarding of information to the user device.

In step 2403, the Data Collecting Module sends an identification request to all other modules on the bus. This request can, for example, be initiated by a timer or a real-time clock (e.g. every night at a predetermined time, e.g. at midnight), or can be initiated by, for example, a request from the user device, or by the pressing a provided push button on the Data Collection Module (not shown), or in any other suitable manner.

In step 2404, the Data Collection Module receives an identification message from a module, containing the unique address of the relevant module. This message can, for example, be stored temporarily or permanently in RAM of the GV, and / or in non-volatile memory of the GV (eg flash).

In step 2405, the Data Collecting Module checks whether the bus is free for a predetermined time-out time TOJB, and if so, the Data Collecting Module decides that all identification messages have been received. If not, steps 2404 and 2405 are performed again to receive additional identification messages.

In optional step 2406, the Data Collection Module can process the identification messages (e.g., by extracting the Unique Addresses), and / or forward it as such to the user device (e.g., the PC). The PC can possibly store these unique addresses in a data file and / or display them on a screen.

In an alternative embodiment of the method, the unique addresses are not processed and / or sent to the user device until they have all arrived at the Data Collection Module, but are already processed and / or sent in the meantime, e.g. as part of step 2404.

If desired, the user device (e.g. the PC) can also request the unique address of the Data Collection Module, but this is usually not necessary. FIG. 25 is a schematic representation of the method performed by the Data Collection Module (left side of FIG. 25), and the method performed by each of the "other" modules (right side of FIG. 25) of a bus system according to the present invention .

In step 2501, the Data Collecting Module sends an identification request on the bus. This step is the same as step 2403 of FIG. 24.

In step 2502, each "other" module receives the identification request, whereafter each "other" module will send an identification message containing its unique address or unique serial number. This is done as follows (steps 2510):

In step 2511, each "other" module waits for the bus to be free for at least a predetermined period of W_ID (the "minimum wait time for sending the identification message")

In step 2512, any "other" module that has not yet succeeded in sending its identification message correctly (in the first iteration it is all other modules) will start sending its identification message, during which each bit is transmitted it is checked (step 2513) whether a collision occurs, and if a collision is detected, the module whose signal to be transmitted deviates from the signal on the bus stops transmitting immediately (step 2514), and will try again later by steps i ) to iii). Each module will keep trying until the module has finally succeeded in sending its identification message intact.

While the modules attempt to send their identification message (steps 2510), the Data Collection Module listens to the bus, and in step 2503 receives one identification message each time, which may possibly consist of one or more frames, as explained above.

If the Data Collection Module determines (step 2504) that the bus is free longer than a predetermined time-out value TOJB, then it assumes that all identification messages have been received.

Although not shown in FIG. 25 the modules always execute a reception routine in parallel, decoding the signal from the bus, and if the signal is intended for the relevant module, they also execute that command, e.g. by setting a certain output low or high to to switch a lamp on or off, or to open or close a relay, or the like.

Although the main purpose of the Data Collection Module as described herein is aimed at requesting and receiving the unique addresses, and possibly requesting additional information using absolute addressing, and the Data Collection Module can in principle be removed after commissioning the lighting system or building automation system , because it is not necessary for the normal operation of the system, it may be useful to leave it in the building anyway, and possibly use it for monitoring bus traffic, for example for safety purposes or for visualization.

In summary, the present invention describes a bus system and method according to a proprietary protocol that contains a special function or broadcast command, referred to herein as "identification request", for querying the unique addresses of a plurality of modules coupled to the communication bus, and a function for forwarding these unique addresses over the communication bus, (herein referred to as "identification message"). Once these unique addresses are known, the modules can be accessed individually by read and write commands with absolute addressing. The big advantage of this is that these read and / or write commands will also work, even if the bus address (or bus addresses) in the module is / are incorrectly programmed or not at all.

Requesting the unique addresses is extremely fast. For example, suppose there are 100 modules, and that each identification message is sent through 4 frames. With the above-mentioned bit period of 150 ps, and a frame period of 2.7 ms, and three waiting times WT2F of 1.80 ms, and a waiting time W_ID of 1.95 ms between the messages, the total time is approximately: 100 x 18.15 ms = only about 1.8 seconds in total. And for 1000 modules, the total time for requesting and receiving all unique addresses is only around 18.1 s.

A bus system with modules that communicate according to this protocol makes it possible to request the unique addresses, and then remotely correct some errors and / or mistakes that took place during commissioning (the assignment of bus addresses) remotely over the bus.

The digital wired bus can have a total length of at least 10 m, or at least 20 m, or at least 30 m or at least 50 m. The distance between the Data Collection Module and the interface modules can be greater than 10 m, or greater than 20 m, or larger than 30 m, or larger than 50 m.

Claims (16)

1. Een werkwijze (2500) voor het identificeren van een veelheid van modules (Dl, D2, D3) die aan een bedrade communicatie-bus gekoppeld zijn en die elk een uniek adres (UA1, UA2, UA3) bevatten, door een GegevensVerzamelModule (GV) die eveneens aan de communicatie-bus gekoppeld is, waarbij de werkwijze de volgende stappen omvat: a) het versturen (2501) over de communicatie-bus van een identificatieverzoek (B0) door de GegevensVerzamelModule (GV) naar de veelheid van modules (Dl, D2, D3), voor het opvragen van hun unieke adressen (UA1, UA2, UA3); b) het ontvangen (2502) van het identificatieverzoek (BO) door elk van de veelheid van modules (Dl, D2, D3); c) het succesvol versturen (2510) van een identificatiebericht (BI, B2, B3) door elk van de veelheid van modules (Dl, D2, D3) als reactie op het ontvangen identificatieverzoek (B0), waarbij iedere identificatiebericht (BI, B2, B3) het uniek adres (UA1, UA2, UA3) van de betreffende module (Dl, D2, D3) bevat; waarbij stap c) voor ieder van de veelheid van modules (Dl, D2, D3) de volgende stappen omvat: i) het wachten (2511) tot de bus vrij is gedurende minstens een vooraf bepaalde tijd (WJD); ii) het trachten te verzenden (2512) van het identificatiebericht (BI, B2, B3) van de betreffende module, waarbij het trachten te verzenden (2512) van het identificatiebericht het achtereenvolgens trachten te verzenden van iedere bit van het identificatiebericht omvat, en waarbij het trachten te verzenden van iedere bit het aansturen en monitoren van de bus omvat, en het bepalen (2513) voor iedere bit of een botsing op de bus opgetreden is, iii) en indien een botsing opgetreden is, het stoppen (2514) met het verzenden van de betreffende bit en van alle volgende bits van het identificatiebericht, en het herhalen van stappen i) tot iii) totdat de identificatiebericht verzonden is zonder botsing; en indien geen botsing opgetreden is, besluiten dat het identificatiebericht (Bl, B2, B3) succesvol verzonden is, en niet meer deelnemen aan het trachten te verzenden van het identificatiebericht.A method (2500) for identifying a plurality of modules (D1, D2, D3) coupled to a wired communication bus and each containing a unique address (UA1, UA2, UA3) by a Data Collection Module ( GV) which is also coupled to the communication bus, the method comprising the steps of: a) sending (2501) over the communication bus an identification request (B0) through the Data Collection Module (GV) to the plurality of modules ( D1, D2, D3), to request their unique addresses (UA1, UA2, UA3); b) receiving (2502) the identification request (BO) by each of the plurality of modules (D1, D2, D3); c) successfully sending (2510) an identification message (B1, B2, B3) by each of the plurality of modules (D1, D2, D3) in response to the received identification request (B0), each identification message (B1, B2, B3) contains the unique address (UA1, UA2, UA3) of the relevant module (D1, D2, D3); wherein step c) for each of the plurality of modules (D1, D2, D3) comprises the following steps: i) waiting (2511) for the bus to be free for at least a predetermined time (WJD); ii) trying to send (2512) the identification message (B1, B2, B3) of the relevant module, wherein trying to send (2512) the identification message comprises sequentially trying to send each bit of the identification message, and wherein attempting to transmit each bit includes driving and monitoring the bus, and determining (2513) for each bit whether a collision has occurred on the bus, iii) and if a collision has occurred, stopping (2514) the sending the relevant bit and all subsequent bits of the identification message, and repeating steps i) to iii) until the identification message is sent without collision; and if no collision has occurred, decide that the identification message (B1, B2, B3) has been successfully sent, and no longer participate in trying to send the identification message. 2. De werkwijze volgens conclusie 1, waarbij stap ii) van het trachten te verzenden (2512) wordt gestart van zodra de vooraf bepaalde tijd (WJD) verstreken is.The method of claim 1, wherein step ii) of attempting to send (2512) is started as soon as the predetermined time (WJD) has elapsed. 3. De werkwijze volgens conclusie 1 of 2, waarbij de communicatie-bus een digitale communicatie-bus is; en waarbij een eerste signaalvorm (101) wordt geassocieerd met een logische "l"-bit, en een tweede signaalvorm (102) verschillend van de eerste signaalvorm, wordt geassocieerd met een logische "O"-bit; en waarbij de GegevensVerzamelModule (GV) en de veelheid van modules (Dl, D2, D3) gekoppeld zijn aan de communicatie-bus in een wired-AND of een wired-OR configuratie.The method of claim 1 or 2, wherein the communication bus is a digital communication bus; and wherein a first signal form (101) is associated with a logical "1" bit, and a second signal form (102) different from the first signal form is associated with a logical "0" bit; and wherein the Data Collection Module (GV) and the plurality of modules (D1, D2, D3) are coupled to the communication bus in a wired-AND or a wired-OR configuration. 4. Een werkwijze voor het toekennen van minstens één busadres (BA1) of minstens twee busadressen (BA3, BA4) aan een te configureren module (Dl; D3) van een veelheid van modules (Dl, D2, D3) die aan een bedrade communicatie-bus gekoppeld zijn, en die elk een uniek adres hebben (UA1, UA2, UA3), waarbij de werkwijze de volgende stappen omvat: a) het bepalen van de unieke adressen (UA1, UA2, UA3) van de veelheid van modules (Dl, D2, D3) die aan de bus gekoppeld zijn door het identificeren van de modules volgens één der voorgaande conclusies; b) het versturen van een configuratiebericht door de GegevensVerzamelModule (GV), waarbij het configuratiebericht het uniek adres (UA1; BA3, BA4) van de te configureren module (Dl; D3) bevat om de module te addresseren, alsook minstens één toe te kennen busadres (BAI; BA3, BA4); c) het ontvangen van het configuratiebericht door de veelheid van modules (Dl, D2, D3) die aan de bus gekoppeld zijn, en het extraheren van het adres (UA1; UA3) vervat in het configuratiebericht, en het vergelijken van het geëxtraheerde adres (UA1) met het interne unieke adres (UA1, UA2, UA3) van de betreffende module (Dl, D2, D3), en indien het geëxtraheerde adres (UA1) en het interne unieke adres gelijk zijn, verder gaan met stap d), en indien het geëxtraheerde adres (UA1) en het interne unieke adres verschillend zijn, stap d) overslaan; d) het extraheren van het minstens één busadres (BAI; BA3, BA4) uit het configuratiebericht, en het opslaan van het minstens één busadres (BAI; BA3, BA4) in een geheugen van de module (Dl; D3) voor latere communicatie met andere modules op basis van relatieve adressering.A method for assigning at least one bus address (BA1) or at least two bus addresses (BA3, BA4) to a configurable module (D1; D3) of a plurality of modules (D1, D2, D3) that are connected to a wired communication -bus are coupled, each having a unique address (UA1, UA2, UA3), the method comprising the steps of: a) determining the unique addresses (UA1, UA2, UA3) of the plurality of modules (D1 , D2, D3) coupled to the bus by identifying the modules of any one of the preceding claims; b) sending a configuration message by the Data Collection Module (GV), wherein the configuration message contains the unique address (UA1; BA3, BA4) of the module to be configured (D1; D3) for addressing the module and assigning at least one bus address (BAI; BA3, BA4); c) receiving the configuration message by the plurality of modules (D1, D2, D3) coupled to the bus, and extracting the address (UA1; UA3) contained in the configuration message, and comparing the extracted address ( UA1) with the internal unique address (UA1, UA2, UA3) of the relevant module (D1, D2, D3), and if the extracted address (UA1) and the internal unique address are the same, proceed with step d), and if the extracted address (UA1) and the internal unique address are different, skip step d); d) extracting the at least one bus address (BAI; BA3, BA4) from the configuration message, and storing the at least one bus address (BAI; BA3, BA4) in a memory of the module (D1; D3) for later communication with other modules based on relative addressing. 5. Een werkwijze voor het opvragen van gegevens van minstens één te ondervragen module (Dl) gekozen uit een veelheid van modules (Dl, D2, D3) die aan een communicatie-bus gekoppeld zijn, en die elk een uniek adres (UA1, UA2, UA3) bevatten, omvattende: a) het bepalen van de unieke adressen (UA1, UA2, UA3) van elk van de veelheid van modules (Dl, D2, D3) die aan de bus gekoppeld zijn, door het identificeren van de modules volgens één der voorgaande conclusies; b) het versturen van een leesbericht door de GegevensVerzamelModule (GV), waarbij het leesbericht het unieke adres (UA1) van de te ondervragen module (Dl) bevat om de module te addresseren, alsook één of meer indicatoren over welke informatie opgevraagd wordt; c) het ontvangen van het leesbericht door de veelheid van modules (Dl, D2, D3) die aan de bus gekoppeld zijn, en het extraheren van het adres (UA1) vervat in het leesbericht, en het vergelijken van het geëxtraheerde adres (UA1) met het interne unieke adres (UA1, UA2, UA3) van de betreffende module (Dl, D2, D3), en indien het geëxtraheerde adres (UA1) en het interne unieke adres gelijk zijn, verder gaan met stap d), en indien het geëxtraheerde adres (UA1) en het interne unieke adres verschillend zijn, stap d) overslaan; d) het versturen van een informatiebericht door de te ondervragen module (Dl) naar de GegevensVerzamelModule (GV), waarbij het informatiebericht gegevens bevat overeenkomstig de één of meer indicatoren; e) het ontvangen van het informatiebericht door de GegevensVerzamelModule (GV).5. A method for requesting data from at least one module to be interrogated (D1) selected from a plurality of modules (D1, D2, D3) which are coupled to a communication bus and which each have a unique address (UA1, UA2 (UA3), comprising: a) determining the unique addresses (UA1, UA2, UA3) of each of the plurality of modules (D1, D2, D3) coupled to the bus, by identifying the modules according to one of the preceding claims; b) sending a read message by the Data Collection Module (GV), wherein the read message contains the unique address (UA1) of the module to be interrogated (D1) to address the module, as well as one or more indicators of which information is requested; c) receiving the read message from the plurality of modules (D1, D2, D3) coupled to the bus, and extracting the address (UA1) contained in the read message, and comparing the extracted address (UA1) with the internal unique address (UA1, UA2, UA3) of the relevant module (D1, D2, D3), and if the extracted address (UA1) and the internal unique address are the same, proceed with step d), and if the extracted address (UA1) and the internal unique address are different, skip step d); d) sending an information message by the module to be interrogated (D1) to the Data Collection Module (GV), the information message containing data in accordance with the one or more indicators; e) receiving the information message from the Data Collection Module (GV). 6. Een werkwijze volgens één der voorgaande conclusies, waarbij het uniek adres van minstens één van de veelheid van modules (Dl, D2, D3) minstens 18 bits omvat, of minstens 20 bits, of minstens 24 bits, of minstens 32 bits, of minstens 40 bits, of minstens 48 bits.A method according to any one of the preceding claims, wherein the unique address of at least one of the plurality of modules (D1, D2, D3) comprises at least 18 bits, or at least 20 bits, or at least 24 bits, or at least 32 bits, or at least 40 bits, or at least 48 bits. 7. Een werkwijze volgens één der voorgaande conclusies, waarbij alle berichten over de bus, met inbegrip van het identificatieverzoek en de identificatieberichten, verstuurd worden door het versturen van één of meerdere frames met een vaste lengte, waarbij ieder frame één startbit, zestien databits, en één stopbit bevat.A method according to any one of the preceding claims, wherein all messages over the bus, including the identification request and the identification messages, are sent by sending one or more fixed-length frames, each frame having one start bit, sixteen data bits, and one stop bit. 8. Een werkwijze volgens conclusie 7, waarbij een minimale wachttijd (WT2F) tussen twee opeenvolgende frames van eenzelfde bericht kleiner is dan een minimale wachttijd (WT2B) tussen frames van twee verschillende berichten.A method according to claim 7, wherein a minimum wait time (WT2F) between two consecutive frames of the same message is less than a minimum wait time (WT2B) between frames of two different messages. 9. Een werkwijze volgens conclusie 8, waarbij de minimale wachttijd (W_ID) voorafgaand aan een identicatiebericht groter is dan de minimale wachttijd (WT2B) voorafgaand aan een bericht dat geen identificatiebericht is.A method according to claim 8, wherein the minimum wait time (W_ID) prior to an identification message is greater than the minimum wait time (WT2B) prior to a message that is not an identification message. 10. Een bussysteem voor een gebouwautomatiseringssysteem, omvattende; - een bedrade communicatiebus; - een veelheid van modules (Dl, D2, D3) die elk een uniek adres (UA1, UA2, UA3) hebben en die gekoppeld zijn aan de communicatiebus; - een GegevensVerzamelModule (GV) die gekoppeld is aan de communicatiebus; waarbij elk van de veelheid van modules (Dl, D2, D3) en de GegevensVerzamelModule (GV) voorzien zijn om samen de werkwijze uit te voeren volgens één der conclusies 1-9.A bus system for a building automation system, comprising; - a wired communication bus; - a plurality of modules (D1, D2, D3) which each have a unique address (UA1, UA2, UA3) and which are coupled to the communication bus; - a Data Collection Module (GV) that is linked to the communication bus; wherein each of the plurality of modules (D1, D2, D3) and the Data Collection Module (GV) are provided to jointly perform the method of any one of claims 1-9. 11. Een gebouwautomatiseringssysteem dat een bussysteem volgens conclusie 10 omvat, en dat verder één of meer van de volgende kenmerken omvat: i) en waarbij het gebouwautomatiseringssysteem minstens een verlichtingssysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een verlichtingselement of een dimmer, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één bewegingsdetector of aanwezigheidsdetector of lichtsensor of schakelaar; ii) en waarbij het gebouwautomatiseringssysteem minstens een zonneweringssysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van minstens één motor van een zonnewering, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één lichtsensor of schakelaar of windsensor; iii) en waarbij het gebouwautomatiseringssysteem minstens een branddetectiesysteem omvat, waarbij minstens één van de modules aangepast is voor het uitlezen van minstens één branddetector of rookdetector of temperatuursensor; iv) en waarbij het gebouwautomatiseringssysteem minstens een airconditioningsysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een airconditioningsmodule, en/of minstens één van de modules aangepast is voor het uitlezen van een temperatuursensor of vochtigheidssensor; v) en waarbij het gebouwautomatiseringssysteem minstens een verwarmingssysteem omvat, waarbij minstens één van de modules aangepast is voor aansturen van minstens één ventiel of een pomp of een verwarmingselement, en/of minstens één van de modules aangepast is voor het uitlezen van een temperatuursensor; vi) en waarbij het gebouwautomatiseringssysteem minstens een HVAC-systeem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een airconditioningsmodule of een verwarmingselement of een ventiel of een pomp, en/of minstens één van de modules aangepast is voor het uitlezen van een temperatuursensor of een vochtigheidssensor; vii) en waarbij het gebouwautomatiseringssysteem minstens een parkeergeleidingssysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van minstens één verlichtingselement, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één bewegingsdetector of aanwezigheidsdetector of schakelaar; viii) en waarbij het gebouwautomatiseringssysteem minstens een toegangscontrolesysteem omvat, waarbij minstens één van de modules aangepast is voor het aansturen van een deur of een toegang, en/of minstens één van de modules aangepast is voor het uitlezen van minstens één bewegingsdetector of aanwezigheidsdetector of schakelaar of identificatiemodule.A building automation system comprising a bus system according to claim 10, and further comprising one or more of the following features: i) and wherein the building automation system comprises at least one lighting system, wherein at least one of the modules is adapted to control a lighting element or a dimmer and / or at least one of the modules is adapted to read out at least one motion detector or presence detector or light sensor or switch; ii) and wherein the building automation system comprises at least one sun protection system, wherein at least one of the modules is adapted to control at least one motor of a sun protection, and / or at least one of the modules is adapted to read out at least one light sensor or switch or wind sensor; iii) and wherein the building automation system comprises at least one fire detection system, wherein at least one of the modules is adapted to read out at least one fire detector or smoke detector or temperature sensor; iv) and wherein the building automation system comprises at least one air conditioning system, wherein at least one of the modules is adapted to control an air conditioning module, and / or at least one of the modules is adapted to read out a temperature sensor or humidity sensor; v) and wherein the building automation system comprises at least one heating system, wherein at least one of the modules is adapted to control at least one valve or a pump or a heating element, and / or at least one of the modules is adapted for reading a temperature sensor; vi) and wherein the building automation system comprises at least one HVAC system, wherein at least one of the modules is adapted to control an air conditioning module or a heating element or a valve or a pump, and / or at least one of the modules is adapted for reading out of a temperature sensor or a humidity sensor; vii) and wherein the building automation system comprises at least one parking guidance system, wherein at least one of the modules is adapted to control at least one lighting element, and / or at least one of the modules is adapted to read out at least one motion detector or presence detector or switch; viii) and wherein the building automation system comprises at least one access control system, wherein at least one of the modules is adapted to control a door or an access, and / or at least one of the modules is adapted to read out at least one motion detector or presence detector or switch or identification module. 12. Een gebouwautomatiseringssysteem volgens conclusie 11, dat verder minstens één van de actuatoren en/of minstens één van de sensoren vernoemd in conclusie 11 omvat.A building automation system according to claim 11, further comprising at least one of the actuators and / or at least one of the sensors mentioned in claim 11. 13. Een gebouwautomatiseringssysteem volgens conclusie 11 of 12, waarbij de bedrade bus minstens twee elektrische geleiders (BB, VO) omvat die galvanisch van elkaar gescheiden zijn, maar functioneel met elkaar gekoppeld zijn door middel van minstens één signaalversterker (Rl) met een optische koppeling, welke signaalversterker eveneens deel uitmaakt van het bussysteem.A building automation system according to claim 11 or 12, wherein the wired bus comprises at least two electrical conductors (BB, VO) that are galvanically isolated from each other but functionally coupled to each other by means of at least one signal amplifier (R1) with an optical coupling , which signal amplifier is also part of the bus system. 14. Een set van minstens drie interface-modules voor gebruik in een bussysteem volgens conclusie 10, of voor gebruik in een gebouwautomatiseringssysteem volgens conclusie 11, waarbij één interface-module (GV) voorzien is voor het uitvoeren van stap a) van een werkwijze volgens één der conclusies 1 tot 9, en minstens twee andere interface-modules (Dl, D2) voorzien zijn voor het uitvoeren van de stappen b) en c) van de werkwijze volgens één der conclusies 1 tot 9.A set of at least three interface modules for use in a bus system according to claim 10, or for use in a building automation system according to claim 11, wherein one interface module (GV) is provided for performing step a) of a method according to one of claims 1 to 9, and at least two other interface modules (D1, D2) are provided for performing steps b) and c) of the method according to one of claims 1 to 9. 15. Een set van minstens drie interface-modules volgens conclusie 14, waarbij minstens één der interface-modules (GV, Dl, D2) verder een IR-zendontvanger (306) omvat, en waarbij de controller (301) van de betreffende interface-module verder voorzien is van een IR-protocol software voor het zenden en ontvangen van boodschappen via de IR-zendontvanger; waarbij minstens één der interface-modules (GV, Dl, D2) verder een RF-zendontvanger (306) omvat, en waarbij de controller (301) van de betreffende interface-module verder voorzien is van een RF-protocol software voor het zenden en ontvangen van boodschappen via de RF-zendontvanger; waarbij minstens één der interface-modules (GV, Dl, D2) verder een glasvezel-zendontvanger omvat, en waarbij de controller (301) van de betreffende interface-module verder voorzien is van een protocol software voor het zenden en ontvangen van boodschappen via de glasvezel-zendontvanger; waarbij minstens één der interface-modules (GV, Dl, D2) verder een tweede bus-interface omvat, en waarbij de controller (301) van de betreffende interface-module voorzien is om zowel te communiceren over de eerste bus-interface via een eerste protocol volgens één der conclusies 1 tot 9, alsook via een tweede protocol dat verschillend is van het eerste protocol over de tweede bus-interface.A set of at least three interface modules according to claim 14, wherein at least one of the interface modules (GV, D1, D2) further comprises an IR transceiver (306), and wherein the controller (301) of the interface interface in question the module is further provided with an IR protocol software for sending and receiving messages via the IR transceiver; wherein at least one of the interface modules (GV, D1, D2) further comprises an RF transceiver (306), and wherein the controller (301) of the relevant interface module is further provided with an RF protocol software for transmitting and receiving messages via the RF transceiver; wherein at least one of the interface modules (GV, D1, D2) further comprises a fiber optic transceiver, and wherein the controller (301) of the relevant interface module is further provided with a protocol software for sending and receiving messages via the fiber optic transceiver; wherein at least one of the interface modules (GV, D1, D2) further comprises a second bus interface, and wherein the controller (301) of the relevant interface module is provided to communicate both over the first bus interface via a first protocol according to any one of claims 1 to 9, as well as via a second protocol that is different from the first protocol over the second bus interface. 16. Een set van minstens drie interface-modules volgens conclusie 14 of 15, waarbij minstens één der interface-modules (GV, Dl, D2) verder minstens één ingebouwde actuator omvat voor het aansturen van een component van een gebouwautomatisering, en/of minstens één ingebouwde sensor of detector omvat voor het uitlezen van een component van een gebouwautomatisering.A set of at least three interface modules according to claim 14 or 15, wherein at least one of the interface modules (GV, D1, D2) further comprises at least one built-in actuator for controlling a component of a building automation, and / or at least one built-in sensor or detector for reading a component of a building automation.
NL2021582A 2017-09-08 2018-09-07 METHOD FOR IDENTIFYING MODULES LINKED TO A BUS SYSTEM, AND A BUILDING AUTOMATION SYSTEM NL2021582B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BE2017/0124A BE1025606B1 (en) 2017-09-08 2017-09-08 Method for identifying modules linked to a bus system, and a building automation system

Publications (2)

Publication Number Publication Date
NL2021582A NL2021582A (en) 2019-03-14
NL2021582B1 true NL2021582B1 (en) 2019-03-28

Family

ID=60019640

Family Applications (1)

Application Number Title Priority Date Filing Date
NL2021582A NL2021582B1 (en) 2017-09-08 2018-09-07 METHOD FOR IDENTIFYING MODULES LINKED TO A BUS SYSTEM, AND A BUILDING AUTOMATION SYSTEM

Country Status (2)

Country Link
BE (1) BE1025606B1 (en)
NL (1) NL2021582B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101028138B1 (en) * 2006-05-29 2011-04-08 차이나 모바일 커뮤니케이션즈 코포레이션 A method for assigning address to the intelligent information household appliance and the sub-equipment in the household network
DE102008017281A1 (en) * 2008-04-04 2009-10-08 Zumtobel Lighting Gmbh Automatic bus address assignment via collision check
CN103106142B (en) * 2011-11-10 2016-06-29 澜起科技(上海)有限公司 Need the distribution device of address, device system and address distribution method

Also Published As

Publication number Publication date
BE1025606A1 (en) 2019-04-25
BE1025606B1 (en) 2019-04-29
NL2021582A (en) 2019-03-14

Similar Documents

Publication Publication Date Title
EP2678973B1 (en) System and method for automatic configuration of master/slave devices on a network
EP2119322B1 (en) Communication protocol for a lighting control system
US9100397B2 (en) BACnet MS/TP automatic MAC addressing
CN107181659B (en) Intelligent cabinet communication method and system based on RS485 bus
US10229078B2 (en) Multi-master bus
EP3363257B1 (en) Commissioning of a wireless-communication enabled device
CN104956768A (en) Requesting information from lighting devices
US20180109398A1 (en) Master communication device for a token network
US8484323B2 (en) Network system connected with multiple master devices and method for operating the same
NL2021582B1 (en) METHOD FOR IDENTIFYING MODULES LINKED TO A BUS SYSTEM, AND A BUILDING AUTOMATION SYSTEM
CN104104567A (en) Networking method, control device and networking system for double communication link
Varghese et al. A study of communication protocols and wireless networking systems for lighting control application
JP6042585B2 (en) New slave station setting method for control / monitor signal transmission system
CN106406176B (en) Hotel guest room Zigbee network control system
DE10034087B4 (en) Fieldbus system with minimized hardware architecture
Shweta et al. Implementation of controller area network (CAN) bus (Building automation)
CN112206453A (en) Fire control system
KR101543148B1 (en) Automatic searching method of sub-module for direct digital control device
CN106527364B (en) Hotel guest room electrical equipment control system
US20220256678A1 (en) Control network system
WO2017067842A1 (en) Control system for communicating with devices connected to a bus, and communication method
CN213852891U (en) Fire control system
CN102568143B (en) Smoke alarm device and achieving method thereof
CN113672540A (en) Two-bus system
CN116578519A (en) Communication method, device, equipment and medium