ITTO940522A1 - Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi - Google Patents

Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi Download PDF

Info

Publication number
ITTO940522A1
ITTO940522A1 IT94TO000522A ITTO940522A ITTO940522A1 IT TO940522 A1 ITTO940522 A1 IT TO940522A1 IT 94TO000522 A IT94TO000522 A IT 94TO000522A IT TO940522 A ITTO940522 A IT TO940522A IT TO940522 A1 ITTO940522 A1 IT TO940522A1
Authority
IT
Italy
Prior art keywords
bus
systems
bit
contention
devices
Prior art date
Application number
IT94TO000522A
Other languages
English (en)
Inventor
Pier Giorgio Bosio
Luca Gioannini
Original Assignee
Teknox Srl
Pier Giorgio Bosio
Luca Gioannini
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 Teknox Srl, Pier Giorgio Bosio, Luca Gioannini filed Critical Teknox Srl
Priority to IT94TO000522A priority Critical patent/IT1268079B1/it
Publication of ITTO940522A0 publication Critical patent/ITTO940522A0/it
Priority to EP95109682A priority patent/EP0689145A1/en
Publication of ITTO940522A1 publication Critical patent/ITTO940522A1/it
Application granted granted Critical
Publication of IT1268079B1 publication Critical patent/IT1268079B1/it

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/376Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a contention resolving method, e.g. collision detection, collision avoidance
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING SYSTEMS, e.g. PERSONAL CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B25/00Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
    • G08B25/007Details of data content structure of message packets; data protocols
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING SYSTEMS, e.g. PERSONAL CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B25/00Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
    • G08B25/01Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium
    • G08B25/04Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium using a single signalling line, e.g. in a closed loop
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING SYSTEMS, e.g. PERSONAL CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B25/00Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
    • G08B25/01Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium
    • G08B25/08Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium using communication transmission lines

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Small-Scale Networks (AREA)

Abstract

Per regolare l'accesso di più sistemi (S10, S11, ...; SZ0, SZ1, ...; S10, S11, ...), ciascuno operante secondo specifiche modalità proprie, quali protocollo, velocità di trasmissione, ecc., ad un bus comune (B) è prevista una ripartizione del tempo di accesso al bus fra i vari sistemi. Al termine del proprio ciclo di trasmissione, il sistema che di volta in volta controlla il bus (B), genera un evento costituente una base di sincronizzazione per tutti i dispositivi presenti in linea. Questi concorrono quindi alla formazione di un successivo byte di contesa che porta all'identificazione del sistema destinato a subentrare nel controllo del bus (B).(fig. 1).

Description

DESCRIZIONE dell'invenzione industriale dal titolo: "Procedimento per regolare l'accesso di più sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi dispositivi di interfaccia
TESTO DELLA DESCRIZIONE
Campo dell'invenzione
La presente invenzione affronta in generale il problema di regolare l'accesso di più sistemi ad un bus. Essa è stata sviluppata con particolare attenzione alle possibili applicazioni nel settore della domotica.
Descrizione della tecnica nota - Problema tecnico posto alla base dell'invenzione
Il problema di consentire l'accesso di più sistemi ad una risorsa di comunicazione configurata come una struttura a bus è stato affrontato nella tecnica in misura quantomai estesa.
Una soluzione che ha trovato un'ampia diffusione è quella che prevede il ricorso generalizzato a protocolli di comunicazione, In questo caso, ciascun dispositivo attestato sul bus è configurato in modo da poter trasmettere e/o ricevere messaggi che incorporano almeno una stringa di simboli logici (il cosiddetto protocollo di comunicazione),che identifica ad esempio l'unità che trasmette, l'unità verso la quale si trasmette,più altre caratteristiche del messaggio informativo. Sono di solito anche previsti criteri che consentono di regolare fenomeni di conflitto o di collisione, derivanti dal fatto che più dispositivi cercano di accedere simultaneamente al bus.
Sono parimenti note soluzioni che prevedono una ripartizione più rigida della risorsa disponibile, attuata secondo un generale criterio di suddivisione di tempo. In pratica, a ciascun sistema o dispositivo collegato al bus viene periodicamente allocata una certa finestra temporale, nel corso della quale il sistema o dispositivo di volta in volta prescelto è autorizzato ad accedere al bus.
Entrambe le soluzioni sopra richiamate richiedono, come esigenza pressoché imperativa, di conoscere preventivamente le caratteristiche dei sistemi collegati al bus (ad esempio il numero di questi sistemi, le caratteristiche delle unità collegate, la velocità di trasmissione, ecc.).
Nel caso dell'impiego di un protocollo, tali informazioni preliminari sono necessarie ad esempio per poter predisporre, nell'ambito del protocollo stesso, un numero di caratteri sufficiente a rappresentare tutti i dispositivi che accedono al bus. E ciò anche per quanto riguarda la possibile predisposizione di sistemi arbitri in grado di regolare le situazioni di conflitto o di collisione.
Nel caso di sistemi a divisione rigida di tempo, le stesse informazioni sono richieste per poter organizzare la sequenza di attribuzione delle finestre temporali, la lunghezza e la frequenza di assegnazione delle stesse, ecc..
Le soluzioni del tipo sopra specificato non possono essere considerate come ottimali in settori quale ad esempio quello correntemente indicato come "domotica" (ossia l'informatica degli ambienti domestici), che prevede la presenza, nell'ambito di un edificio quale un edificio civile, di un complesso di sistemi in grado di sovrintendere a funzioni diverse (antiintrusione, rilevazione di fughe di gas o di principi di incendio, rilevazione di temperature con conseguente regolazione dell'impianto di climatizzazione, azionamento automatico dì dispositivi di apertura e di chiusura comprese saracinesche e tende, eventuale diffusione di messaggi di chiamata e di risposta in ambito domestico, ecc.).
In tale specifico contesto di applicazione è infatti necessario tener conto di alcune esigenze fondamentali :
i singoli sistemi sono in generale fabbricati da produttori diversi, operanti in modo autonomo in paesi diversi,dunque con l'oggettiva impossibilità, anche per l'elevato numero di produttori, di operare in condizioni di compatibilità con altri sistemi in vista dell'utilizzazione di una struttura a bus comune;
il numero di sistemi compresi nell'attrezzatura domotica di un edificio è destinato ad evolvere nel tempo, con la possibile graduale aggiunta di nuovi sistemi, con la conseguente impossibilità di prevedere sin dall'inizio quali e quanti sistemi saranno collegati alla struttura a bus; e
il costo di impianto deve mantenersi contenuto, sia per quanto riguarda la struttura a bus, sia per le funzioni elaborative previste per i dispositivi destinati ad essere collegati alla struttura in questione.
Scopi e sintesi dell'invenzione
L'invenzione si prefìgge lo scopo di fornire una soluzione ottimale alle esigenzesopra espresse.
Secondo la presente invenzione, tale scopo viene raggiunto grazie ad un procedimento avente le caratteristiche richiamate in modo specifico nelle rivendicazioni che seguono. L'invenzione riguarda anche dispositivi di interfaccia utilizzabili per l'attuazione di tale procedimento.
In sintesi, la soluzione secondo l'invenzione si basa non già sull'impiego di un protocollo di comunicazione, quale un protocollo di comunicazione seriale, quanto piuttosto sulla configurazione di un sistema suscettibile di permettere di suddividere in modo aperto e flessibile il tempo di accesso ad un generico bus seriale da parte di sistemi diversi, i quali possono a loro volta colloquiare con rispettivi protocolli diversi e con rispettive velocità differenti (ad esempio velocità comprese fra 600 e 9600 baud) .
Nella soluzione secondo l'Invenzione, il tempo a disposizione per ogni singolo sistema viene gestito direttamente dal sistema controllante, il quale -esaurite le proprie necessità di comunicazione -provvede a mettere a disposizione il bus.
E' previsto che, in caso di prolungata assenza di comunicazione, un qualsiasi sistema possa chiedere la linea; ciò è necessario in sede di avviamento (start up) ed in caso di guasto (fault) di un sistema collegato.
L'invenzione verrà ora descritta, a puro titolo di esempio non limitativo, con riferimento ai disegni annessi, in cui:
la fig.1 è uno schema generale che illustra una possibile forma di organizzazione di un sistema di comunicazione su bus operante secondo l'invenzione, la fig.2 è un diagramma temporale che illustra schematicamente l'andamento dei segnali trasmessi sul bus di una rete di comunicazione operante secondo l'invenzione,
la fig.3 è un dettaglio del diagramma temporale di fig.2.
la fig.4 è uno schema a blocchi che illustra una possibile forma di attuazione di un dispositivo di interfaccia per l'impiego in un sistema operante secondo l'invenzione,
le figg.5 e 6 sono diagrammi di flusso schematici illustranti una possibile forma di attuazione del procedimento secondo l'invenzione, e
la fig.7 è un digramma che illustra l'andamento del cosiddetto baud rate in una rete operante in accordo con il procedimento secondo l'invenzione.
Nella fig.1, è indicata nel complesso con R una retedi comunicazione configurata, in un'applicazione preferenziale, come una rete domotica installata in un edificio quale un edificio civile (non illustrato).
In pratica, la rete R è configurata sotto forma di un bus B costituito, nella forma di attuazione più semplice, da un doppino telefonico, sul quale si attestano vari dispositivi costituenti nel loro complesso una pluralità di sistemi.
Un primo sistema S1, comprendente gli elementi S10, S1, S12 , S13 (con la generale possibilità di comprendere elementi S1 con i qualsiasi) può essere costituito, ad esempio da un sistema antifurto. In questo caso, l'unità o modulo S10 può essere la cosiddetta centralina del sistema antifurto, mentre gli elementi S1, S12, ... S13 possono essere costituiti, ad esempio, da sensori di intrusione (all'infrarosso, a radiofrequenza, ecc.) e da elementi avvisatori (acustici, luminosi, di telesegnalazione verso un posto di sorveglianza, ecc.).
Un altro sistema, indicato nel complesso come S2 e comprendente gli elementi S20, S21 , ecc. può essere, ad esempio, un impianto termostatico di controllo del riscaldamento nell'ambito dell'edificio o dell'appartamento. In questo caso, il modulo S20 sarà la centralina di controllo dell'impianto di riscaldamento e i moduli 521, ... S2k potranno essere costituiti, ad esempio, da sensori termostatici montati in vari locali dell'edificio o appartamento e/o associati a singoli caloriferi od elementi scambiatori di calore.
Ancora, un terzo sistema, indicato nel complesso con S3 e comprendente gli elementi S30, S31, ecc. potrà essere costituito, ad esempio, da un sistema che consente di comandare a distanza l'apertura e la chiusura delle porte di uno o più locali ovvero l'apertura e la chiusura di elementi quali saracinesche, tende, ecc..
Così come si può agevolmente comprendere, l'elencazione può essere estesa in modo pressoché infinito, la flessibilità e la libera espansibilità del sistema costituendo le caratteristiche ed i vantaggi fondamentali della soluzione secondo l'invenzione.
Ancora, si apprezzerà che la comunicazione tra ciascuno dei dispositivi attestati sul bus B ed il bus stesso può avvenire tanto in ingresso (ad esempio nel caso di sensori la cui funzione è quella di immettere sul bus i dati di rilevazione (destinati ad essere letti da altri dispositivi), quanto in uscita (ad esempio nel caso di dispositivi fungenti da attuatori azionati a partire da comandi trasmessi sul bus da altri moduli od unità), quanto ancora in modo bidirezionale (come è il caso tipico delle unità o centraline S10, S20, S30, S40 di controllo dei vari sistemi, denominate anche master, configurate in generale sia per prelevare dati dal bus B, ad esempio dati indicativi di rilevazioni fatte da sensori collegati al bus B stesso, sia per immettere dati sul bus stesso, ad esempio sotto forma di comandi diretti a dispositivi attuatori attestati sul bus B. Tali dispositivi, sensori ed attuatori verranno denominati anche slave nel seguito.
In particolare, la soluzione secondo l'invenzione è predisposta in modo da consentire ai vari sistemi S1, S2, S3 , S4 di utilizzare il bus B, comune a tutti i sistemi, con modalità di comunicazione del tutto indipendenti, consentendo in pratica a ciascun sistema S1, S2, S3, S4 di operare con le modalità di funzionamento sue proprie (protocolli, velocità di trasmissione,ecc.), in modo completamente indipendente ed indifferente rispetto alle modalità utilizzate per la comunicazione dagli altri sistemi.
Come già si è accennato nella parte introduttiva della presente descrizione, in questo modo è possibile conseguire, fra l'altro, due vantaggi fondamentali:
l'allacciamento di ciascun sistema alla rete R non presuppone in alcun modo di conoscere né il numero, né le modalità di funzionamento degli altri sistemi; e
ciascun sistema può essere allacciato e scollegato rispetto alla rete R senza che ciò influenzi in alcun modo le specifiche modalità di funzionamento degli altri sistemi.
Così, come verrà illustrato in maggior dettaglio nel seguito, questo risultato viene ottenuto -secondo l'invenzione - prevedendo che i vari sistemi possano accedere al bus B (utilizzandolo quindi come sopporto fisico, dunque possibilità di utilizzare modalità di funzionamento scelte con amplissima libertà) in intervalli di tempo distinti, l'avvicendamento dei vari sistemi nello sfruttamento del bus B essendo fissato, secondo criteri estremamente selliplici, dall'esito di una fase di contesa che si apre ogni qualvolta un sistema, al termine dell'intervallo a lui riservato, segnala il prossimo rilascio dal bus B.
Questo risultato viene ottenuto predisponendo a livello di ciascuno dei dispositivi che compongono i vari sistemi S1, S2, S3, ... una rispettiva funzione di interfaccia (indicata nella fig.1 con lo stesso riferimento adottato per il rispettivo modulo o unità preceduto dalla lettera ”I”) suscettibile di essere facilmente realizzata a livello di software con l'eventuale integrazione (come meglio si vedrà nel seguito) di un eventuale modulo hardware di condizionamento del segnale.
In pratica, a livello di ciascuna interfaccia IS10, IS1, ... deve essere prevista unicamente l'intelligenza che consente al rispettivo dispositivo di riconoscere:
i) l'avviamento di una fase di contesa a seguito del rilascio del bus B da parte del sistema che lo ha precedentemente utilizzato, e
ii) l'esito della fase di contesa, con la conseguente possibilità di stabilire se nel successivo intervallo di utilizzazione del bus B la comunicazione è stata riservata al sistema di cui il dispositivo fa parte, ovvero ad un altro sistema.
La soluzione secondo l'invenzione consente quindi di suddividere il tempo di accesso ad un generico bus, quale ad esempio un bus seriale, da parte di sistemi diversi, colloquianti con protocolli semmai diversi ed a velocità diverse, ad esempio velocità comprese fra 600 e 9600 baud.
Di preferenza, con specifica attenzione alla possibile implementazione del bus B come doppino di tipo telefonico, si ritiene preferenziale identificare come polarità della linea pari a "1" il livello di riposo del bus, ossia la condizione assunta dal bus in assenza di comunicazione, corrispondente anche al livello logico di quello che verrà chiamato nel seguito bit di arresto (stop bit) ed alla trasmissione di un livello logico "1". In modo corrispondente, una polarità della linea pari a "0" viene identificata con la condizione di impegno del bus da parte di un sistema, corrispondente al bit di avvio (start bit) ed alla trasmissione del livello logico 0”
In tali condizioni, ciascuna delle interfacce IS10 , IS1, ... viene preferibilmente configurata a livello hardware cosi da permettere, senza danno per i dispositivi presenti in linea, la contemporanea trasmissione di un "1” e di uno "0", fermo restando il fatto che il livello presente in linea sarà lo "0 ".
Il tempo a disposizione per ogni singolo sistema (che può essere fissato a livelli diversi in funzione delle esigenze di comunicazione dei vari sistemi) è gestito direttamente dal sistema controllante, il quale - esaurite le proprie necessità di comunicazione - provvede a mettere nuovamente il bus B a disposizione.
In modo più specifico e cosi come illustrato nella fig.2, al termine del proprio ciclo di trasmissione, indicato schematicamente come C1 nel diagramma temporale della fig.2, il sistema che controlla il bus provvede a mantenere per un primo intervallo di tempo T1 (ad esempio della durata di 16,7 ms circa) il livello logico "O”, trasmettendo quindi il livello logico "1" per un intervallo T2 (ad esempio della durata di 1,66 ms).
Tale evento costituisce quindi una base di sincronizzazione per tutti i dispositivi (siano essi di natura master o di natura slave) collegati al bus B. Tutti questi devono quindi interpretare e concorrere alla formazione di un byte che viene trasmesso per un successivo intervallo di tempo di durata T3 , scelto in funzione della velocità più bassa tra quelle dei sistemi collegati al bus B (ad esempio, con riferimento alle velocità indicate in precedenza, 600 baud) e costituito da un bit di avvio (start bit) ST e da un certo numero (ad esemplo otto) di bit di dati e di un bit di arresto (stop bit).
In funzione dell'esito della contesa (che si svolge nei termini illustrati in maggior dettaglio nel seguito), un nuovo sistema assume il controllo del bus B e provvede al proprio ciclo di trasmissione {intervallo di tempo indicato con C2 nello schema della fig.2).
Con riferimento all'esempio di attuazione preferito citato in precedenza, il sistema che controlla il bus B - terminato il proprio ciclo di comunicazione - provvede dunque a mantenere il bus B a "0” per un certo intervallo di tempo (ad esempio 16,7 ms). Durante tale periodo, tutti i dispositivi presenti devono riconoscere l'evento e quindi essere pronti a partecipare alla realizzazione del byte di contesa (intervallo T3) che ha lo scopo di definire quale sistema andrà a controllare il bus B.
La fig.3 è un diagramma temporale illustrante, per una migliore comprensione, la porzione terminale della fase di contesa denominata nel seguito anche cessione di sistema. Come si può notare, il bit di avvio ST è seguito dal byte di contesa T3, che di fatto è costituito da una serie di periodi di tempo b0, b1, b2 , ... b7 aventi una durata corrispondente ad un bit, nel caso specifico in numero di otto, il segnale presente sul bus B normalmente si trova al livello "1" in ognuno dei bit b0-b7 del byte di contesa T3 , a meno che uno o più dei sistemi attestati sul bus B trasmettano uno 'Ό" in corrispondenza di quel determinato bit. In pratica, il byte di contesa T3 è quindi un byte che può essere trasmesso e ricevuto contemporaneamente da tutti i sistemi attestati sul bus B.
Ciò è possibile, in quanto il bit di avvio ST fornisce un segnale di sincronizzazione che permette ai vari sistemi di discriminare in modo consistente i vari periodi da un bit b0-b7 , costituenti il byte di contesa T3 . Naturalmente, allo scopo di consentire la compatibilità, il byte di contesa T3 deve essere necessariamente previsto alla velocità di trasmissione minima tra quelle possibili sul bus B.
Al termine del periodo a "0" (T1), il bus B viene rilasciato ed ogni dispositivo attende ancora un certo intervallo di tempo (ad esempio 1,66 ms) corrispondente all'intervallo T2 - prima di trasmettere il byte di contesa T3 . Il tempo di interscambio, con riferimento ai valori indicati in precedenza, risulta quindi pari in pratica a 18,36 iris più il tempo T3 necessario per trasmettere un byte a 600 baud, ossia la velocità minima operabile sul bus B. Al fine di evitare possibili errori di comunicazione, è indispensabile che tutti i dispositivi presenti siano in grado di determinare se - durante il periodo Τ1 a "0" - non ci sia stata alcuna transizione dal livello ”0” al livello "1” di durata uguale o superiore al tempo di bit a 9600 baud (104 ps). Infatti, dispositivi comunicanti a velocità inferiori potrebbero rilevare come periodo di cessione una qualsiasi trasmissione valida che,per puro caso,venisse da loro rilevata (campionata) durante la trasmissione di "0" successivi.
La realizzazione di tale funzione può essere implementata secondo criteri di per sé noti al tecnico esperto del settore, ad esempio secondo una delle alternative seguenti:
utilizzo di single chip dotati di interrupt esterno collegando RX linea a tale terminale di interrupt ed agendo di conseguenza via software;
utilizzo di single chip dotati di UART agendo sul software; e
realizzazione di un circuito esterno che provvede a rivelare tali transizioni ed a mantenere quindi il livello logico "1" per un tempo pari al tempo di bit utilizzato da quel particolare sistema; ad esempio se il dispositivo è realizzato per comunicare a 1200 baud, la trasmissione di un "1” a 9600 baud dovrà provocare sul terminale di ricezione la formazione di un bit a "1” a 1200 baud.
Verrà ora descritto a titolo esemplificativo, con riferimento alla fig.4, un circuito esterno di interfaccia relativo quindi all'ultima alternativa citata.
Il circuito di interfaccia fondamentalmente comprende le seguenti componenti:
un ricevitore RX, cioè un circuito in grado di convertire i segnali presenti sul bus B in livelli logici,
un trasmettitore TX, cioè un circuito in grado di convertire i livelli logici in uscita dai dispositivi DISP attestati sul bus B in segnali idonei, un rivelatore di transizione TD sul bus B, tale rilevatore TD informa la CPU dei vari dispositivi DISP attestati sul bus B dell'eventuale presenza di trasmissioni sul bus B durante il tempo di non parteeipazione alla conversazione del dispositivo DISP in oggetto, evitando quindi allo stesso di dover configurare la propria UART sulla velocità di trasmissione del sistema avente il controllo del bus B.
E' evidente, da quanto detto in precedenza, che il bus B - in condizione di riposo, cioè in assenza di trasmissione - deve trovarsi nella condizione tale da permettere, all'uscita del ricevitore RX, un livello logico "1”. Inoltre, lo start bit ST di trasmissione deve realizzare una condizione tale sul bus B da venire rivelato come uno "0" dal ricevitore RX.
Come già si è detto, il byte di contesa (intervallo T3 ) viene composto con il concorso di tutti i dispositivi presenti, ognuno dei quali è titolare di un particolare bit b1, b2, ... (identificativo del sistema S1, S2, ...) di cui esso fa parte.
Il byte in questione, trasmesso alla velocità più bassa di comunicazione sul sistema (ad esempio 600 baud), è naturalmente preceduto dallo start bit ST. Quindi, i bit successivi b0-b7 (ad esempio in numero di otto) determinano i criteri per lo svolgimento della contesa.Ad esempio, è possibile operare con otto bit attribuendo ai vari bit i contenuti sotto elencati:
bit b0 - priorità
bit b1-b6 - corrispondente ai vari sistemi presenti bit b7 - riservato.
Ogni dispositivo presente che intenda partecipare alla contesa provvederà a porre a "0" il bit corrispondente secondo regole comuni a tutti i dispositivi presenti. Ad esempio, nella forma di attuazione al momento considerata preferenziale, è previsto il ricorso alle regole qui sotto esposte:
il sistema che cede la linea può partecipare immediatamente alla contesa a patto che al momento della presa di linea precedente non fosse stata rilevata alcuna richiesta di accesso mediante azzeramento di bit meno significativi del proprio;
vince la contesa il sistema che azzera il bit più significativo; ad esempio, il sistema che controlla il bit b5 ed il sistema che controlla il bit b3 chiedono la linea: la ottiene il sistema che controlla il bit b5, il quale però - terminato il proprio ciclo di comunicazione - non potrà richiedere nuovamente la linea fino a quando anche il sistema 3 non sia 3tato servito;
il sistema che intende avvalersi della priorità provvede ad azzerare, oltre al proprio bit, anche il bit di priorità b0: gli altri sistemi, rilevato tale bit h0 , possono o astenersi dal proporre il loro bit di richiesta al bus, ovvero proporre comunque il loro; in tal caso, il bus B viene assegnato secondo la regola precedente (contesa fra sistemi che contemporaneamente cercano la priorità); la priorità è quindi a due livelli.
Va ricordato che la formazione degli "1" logici è demandata alla caratteristica hardware del bus B di trasmissione.
Al termine del byte di contesa (intervallo T3) risulta quindi determinato un sistema vincente che può accedere al bus B alla velocità voluta e secondo il protocollo desiderato.Al termine della comunicazione, tale sistema stesso provvede a mantenere la linea a ”0” per il tempo necessario (intervallo Ti) a determinare lo scambio del controllo del bus B.
Ogni dispositivo attestato sul bus B, per poter operare secondo il procedimento dell'invenzione, deve essere configurato di conseguenza, ossia - nel caso tipico - deve essere dotato di una porzione o modulo software in grado di espletare le funzioni previste dal procedimento secondo l'invenzione.
Tale modulo software deve quindi essere in grado di permettere il riconoscimento della fase di commutazione fra sistemi, di partecipare alla costituzione del byte di contesa T3 , di ricevere il byte di contesa T3 e - in base al risultato della lettura - prendere o meno il controllo del bus B. Tale modulo software, indipendentemente dalprotocollo di trasmissione che verrà poi adottato dai vari sistemi, fornisce al resto del software la condizione di controllo della linea e quindi dà il via alla trasmissione, o di non controllo e quindi interdice la trasmissione.
Il software applicativo, ossia il software caratteristico di ogni dispositivo attestato sul bus B, per contro dovrà informare tale modulo software della propria necessità di accedere al bus B, lasciando allo stesso il disbrigo delle attività necessarie ad ottenere tale accesso.
Per una migliore comprensione delle funzioni espletate da tale modulo software, esso verrà ora descritto, con riferimento ai diagrammi di flusso delle figg.5 e 6, in una possibile forma di attuazione per dispositivi di tipo master (fig.5) e dispositivi di tipo slave (fig.6).
Un dispositivo di tipo master,nel caso non sia al controllo del bus B, tipicamente sorveglia (passo 1) il bus B per rilevare un'eventuale fase di scambio. Nel caso si verifichi tale fase di scambio, il master riceve (passo 2) un byte di contesa T3 e provvede quindi a verificare (passo 3) il risultato (cioè il sistema vincitore) della contesa. Nel caso il master abbia vinto la contesa (passo 4), esso acquisisce il controllo del bus B che può quindi essere utilizzato dal suo sistema.
Quando il sistema avente il controllo non necessità più (passo 5) del bus B, provvede ad avviare una nuova fase di scambio. Nel caso invece la verifica della fase di contesa (passo 3) abbia dato esito negativo, cioè nel caso in cui il master non abbia potuto guadagnare l'accesso al bus B, il master stesso si astiene (passo 7) dall' utilizzare il bus B e si limita a sorvegliarlo (passo 1) in attesa della successiva fase di scambio.
Nel caso di un dispositivo slave, le funzioni espletate sono similari. Anche il dispositivo slave sorveglia (passo 8) il bus B allo scopo di rilevare eventuali fasi di scambio. Nel caso si verifichi una delle suddette fasi di scambio, il dispositivo riceve (passo 9) un byte.di contesa T3 che provvede a verificare (passo 10). Nel caso il sistema cui appartiene lo slave abbia vinto l'accesso al bus B (passo 11), lo slave può comunicare con gli altri componenti del sistema, naturalmente secondo il protocollo interno del sistema.
Al termine dell'utilizzo del bus B da parte del sistema (passo 12), vi è naturalmente una nuova fase di scambio (passo 8) con relativa ricezione (passo 9) del byte di contesa T3 . Nel caso invece la verifica del byte di contesa T3 (passo 10) fosse negativa, lo slave si astiene (passo 13) dall' utilizzo del bus B.
Con i valori temporali indicati in precedenza, tale scambio dura globalmente 35 ms. Ovviamente, tale tempo è funzione della velocità minima ipotizzabile per la comunicazione. Di conseguenza, qualora si preveda di collegare sistemi aventi come velocità minima, o bit rate, valori superiori a 600 baud, tale tempo viene conseguentemente ridotto. Per il calcolo di tale tempo, vale infatti la seguente formula:
tempo a "0" - 10*1/bit rate minimo voluto -0+1/(bit rate*2)
tempo a "1” 1/bit rate minimo voluto -0+1/(bit rate *4)
byte di contesa · 10*1/bit rate minimo voluto.
Come già si è detto, il procedimento secondo l'invenzione può essere implementato su sopporti fisici diversi svolgenti la funzione di bus B.
Ad esempio, nella forma di realizzazione più semplice, è previsto l'impiego di un bus B su due fili (ossia un normale doppino telefonico) compresa alimentazione. I dispositivi allacciati al bus B tipicamente realizzano lo "0" logico, per cui l'”l" è la condizione di linea aperta, ideale all'implementazione del procedimento secondo l'invenzione a condizione che possano essere realizzate trasmissioni al bit rate minimo e massimo voluto e che i dispositivi collegati, se come normalmente avviene sono disaccoppiati in continuo, possano rilevare il tempo di scambio.
In alternativa, il bus può essere realizzato ricorrendo ad un'interfaccia del tipo standardizzato RS485. Tale interfaccia prevede la trasmissione tanto degli ”0", quanto degli "1" con il divieto di realizzare collisioni. Si può comunque vantaggiosamente implementare il procedimento secondo l'invenzione con una tale interfaccia, provvedendo alla realizzazione del byte di contesa mantenendo a "1” l'ingresso del trasmettitore per tutta la durata del byte di contesa, provvedendo quindi a pilotare il TX-enable solo nel momento opportuno.
La linea del bus B deve essere comunque terminata su due resistor! RP (si veda la fig.1) che ne garantiscono la polarizzazione e quindi l' "1" a linea aperta, alimentato dalla linea stessa, come del resto previsto dallo standard.
Sebbene il protocollo effettivamente utilizzato da ciascun sistema S1, Sa , S3 ... per la comunicazione all'interno dei singoli sistemi sia libero, va notato che - qualora si tratti di protocolli a libera chiamata - i vari dispositivi connessi devono rispettare le proprie fasce temporali (task) per accedere al bus, mentre il master presente deve realizzare entro tempi convenienti la cessione di sistema.
Possono inoltre esistere alcune necessità particolari. Ad esempio,all'avviamento del sistema non è determinabile chi debba realizzare la fase di contesa. In questo caso, ogni master collegato provvederà, rilevando l'assenza di traffico in linea, in modo casuale a realizzare la cessione di sistema, tutti gli altri lo sentiranno e proporranno la loro volontà di parlare. In questo modo è possibile avviare la gestione del bus B in modo spontaneo.
Qualora sia presente un solo sistema, lo stesso - vinta consecutivamente per n volte la cessione di sistema - evita di riproporla, di fatto autoescludendo il funzionamento del procedimento. In caso in cui vengano aggiunti nuovi sistemi,sarà sufficiente operare un nuovo avviamento.
Un sistema aggiunto in un secondo tempo, con il bus B attivo, scaduta una certa fase temporale imporrà, qualunque sia lo stato della linea, una commutazione che è rilevata da tutti i dispositivi presenti e permette tale aggiunta.
Il diagramma della fig.7 indica l'andamento del baud rate equivalente (in ordinata) in funzione del numero di n sistemi presenti (in ascissa, con n illustrato come variabile da 1 a 10) funzionanti tutti a 9600 baud durante la loro fase di utilizzo del bus B .
Il diagramma illustra il baud rate equivalente in modo comparato i) quando non viene utilizzato il procedimento secondo l'invenzione, ii) quando viene impiegato il procedimento secondo l'invenzione ipotizzando un tempo di accesso di 0,5 secondi per ogni singolo sistema ed infine iii) quando viene impiegato il procedimento secondo l'invenzione utilizzando un tempo di accesso di 1 secondo. Il tempo di accesso corrisponde al tempo massimo intercorrente fra due prese di linea da parte dello stesso sistema. Quindi, il tempo reale di accesso di un dispositivo al bus B è nettamente inferiore ed è funzione del tempo di accesso e della percentuale assoluta di tempo dedicata al sistema in oggetto.
A prima vista si può rilevare come la maggior velocità di trasmissione si ottenga senza l'utilizzo del procedimento secondo l'invenzione:va però notato che in questo caso un eventuale relativo protocollo - dovendo gestire in modo software i vari sistemi - richiederebbe un maggior volume di traffico.
Naturalmente, fermo restando il principio dell'invenzione, i particolari di realizzazione e le forme di attuazione potranno essere ampiamente variati rispetto a quanto descritto ed illustrato, senza per questo uscire dall'ambito della presente invenzione .

Claims (16)

  1. RIVENDICAZIONI 1. Procedimento per regolare l'accesso ad un bus (B) di una pluralità di sistemi (S1, S2, ... Sn), ciascuno di detti sistemi comprendendo un rispettivo insieme di dispositivi (S10, S11 , ... S1k ; S20 , S21 , ... S2k ; Sn0 , Sn1 , ... Snk) con modalità di comunicazioni caratteristiche di ciascun sistema (S1, S2, ... Sn), caratterizzato dal fatto che comprende le operazioni di: configurare detto bus (B) e detti dispositivi in modo che ciascun sistema possa alternativamente commutare fra una condizione di impegno del bus (B), utilizzabile per la comunicazione nell'ambito del sistema stesso attuata tramite detto bus (B) ed una condizione di disimpegno, in cui il sistema stesso lascia il bus (B) libero per la comunicazione degli altri sisterni, generare, quando ciascun sistema passa dalla condizione di impegno del bus (B) a detta condizione di disimpegno, un rispettivo segnale di rilascio (T1, T2 , ST) del bus (B) riconoscibile da tutti detti dispositivi, generare, per tutti detti sistemi alla ricezione di detto segnale di rilascio (T1, T2 , ST) del bus (B), rispettivi segnali di contesa (T3) la cui combinazione determina quale dei sistemi dovrà passare nella condizione di impegno del bus (B), e determinare l'impegno del bus (B) da parte di uno ed uno solo sistema risultante vincitore in detta contesa, con conseguente passaggio di detto uno ed un solo sistema nella condizione di impegno del bus (B), con successiva generazione da parte di detto sistema vincitore di un nuovo segnale di rilascio (Ti, T2 , ST) del bus (B) a completamento di una rispettiva fase di comunicazione da parte di detto sistema vincitore.
  2. 2. Procedimento secondo la rivendicazione 1, caratterizzato dal fatto che detti segnali di contesa vengono generati come bit (b0-b7) costituenti una parola (T3), ciascun sistema essendo identificato da un rispettivo bit e dal fatto che il sistema vincitore nell'ambito di detta contesa viene identificato in funzione del grado di significatività del rispettivo bit nell'ambito di detta parola (T3).
  3. 3. Procedimento secondo la rivendicazione 2, caratterizzato dal fatto che detto sistema vincitore nella contesa viene identificato come sistema corrispondente al bit più significativo nell'ambito di detta parola (T3 ).
  4. 4. Procedimento secondo la rivendicazione 2 o la rivendicazione 3, caratterizzato dal fatto che detta parola (T3) comprende inoltre un bit di priorità (b7) suscettibile di essere espresso da un sistema che accede al bus (B), detto bit di priorità essendo riconoscibile dagli altri sistemi che chiedono di accedere al bus (B).
  5. 5. Procedimento secondo la rivendicazione 4, caratterizzato dal fatto che detti altri sistemi che chiedono di accedere al bus (B), riconosciuta la presenza di detto bit di priorità (b7) imposto da un altro sistema, si astengono dal proporre il proprio bit di richiesta al bus (B).
  6. 6. Procedimento secondo la rivendicazione 4, caratterizzato dal fatto che detti altri sistemi che chiedono di accedere al bu3 (B), riconosciuta la presenza di detto bit di priorità { b7 ) imposto da un altro sistema, propongono comunque il proprio bit di richiesta al bus (B), la contesa essendo risolta a favore del sistema che ha proposto il bit più significativo nell'ambito della parola (T3).
  7. 7. Procedimento secondo una qualsiasi delle precedenti rivendicazioni,caratterizzato dal fatto che il sistema che genera detto segnale di rilascio (T1, T2, ST) del bus (B) è autorizzato a partecipare nuovamente a detta contesa.
  8. 8. Procedimento secondo la rivendicazione 7, caratterizzato dal fatto che detto sistema che ha emesso detto segnale di rilascio (T1, T2 , ST) del bus (B) è ammesso a partecipare a detta fase di contesa unicamente se nella contesa precedente non è stata rilevata alcuna richiesta di accesso da parte di un sistema a cui corrisponde un bit meno significativo nell'ambito di detta parola (T3).
  9. 9. Procedimento secondo una qualsiasi delle precedenti rivendicazioni,caratterizzato dal fatto che a detto segnale di rilascio (T1, T2, ST) del bus (B) o a detta parola di contesa (T3)è associata l'emissione di almeno un segnale di sincronizzazione (ST) di tutti i dispositivi attestati su detto bus (B).
  10. 10. Procedimento secondo una qualsiasi delle precedenti rivendicazioni, caratterizzato dal fatto che detta parola di contesa (T3) è completata da un bit di arresto (stop bit).
  11. 11. Procedimento secondo una qualsiasi delle precedenti rivendicazioni, caratterizzato dal fatto che comprende l'operazione di identificare,come polarità del bus (B) pari a "l", il livello di riposo del bus (B), ossia la condizione assunta dal bus (B) in assenza di comunicazione.
  12. 12. Procedimento secondo una qualsiasi delle precedenti rivendicazioni, caratterizzato dal fatto che la condizione di impegno del bus (B) da parte di un sistema viene identificata con la polarità del bus (B) pari a "0".
  13. 13. Procedimento secondo una qualsiasi delle precedenti rivendicazioni, caratterizzato dal fatto che comprende, all'avviamento del procedimento, la generazione casuale, da parte di tutti i sistemi attestati su detto bus (B), di detto segnale di rilascio (T1, T2 , ST) del bus (B) stesso.
  14. 14. Procedimento secondo la rivendicazione 13, caratterizzato dal fatto che comprende l'operazione di rilevare, prima della generazione in modo casuale di detto segnale di rilascio (T1, T2 , ST) del bus (B), l'assenza di traffico sul bus (B) stesso.
  15. 15. Procedimento secondo la rivendicazione 14, caratterizzato dal fatto che detti dispositivi, attestati su detto bus (B), sono configurati in modo da essere in grado di rilevare (TD) l'assenza di traffico sul bus (B) per tutte le modalità di comunicazione caratteristiche di ciascun sistema attestato o attestabile su detto bus (B).
  16. 16. Procedimento secondo la rivendicazione 15, caratterizzato dal fatto che è consentita la trasmissione, su detto bus (B), ad una pluralità di velocità differenti e dal fatto che detti dispositivi,attestati su detto bus (B), sono configurati in modo da essere in grado di rilevare la trasmissione di bit a "0" su detto bus (B) alla velocità di trasmissione più elevata di detta pluralità di velocità di trasmissione. il tutto sostanzialmente come descritto ed illustrato e per gli scopi specificati.
IT94TO000522A 1994-06-23 1994-06-23 Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi IT1268079B1 (it)

Priority Applications (2)

Application Number Priority Date Filing Date Title
IT94TO000522A IT1268079B1 (it) 1994-06-23 1994-06-23 Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi
EP95109682A EP0689145A1 (en) 1994-06-23 1995-06-22 A process for controlling access to a bus by several systems, for example for application in the domotic field, and associated interface devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT94TO000522A IT1268079B1 (it) 1994-06-23 1994-06-23 Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi

Publications (3)

Publication Number Publication Date
ITTO940522A0 ITTO940522A0 (it) 1994-06-23
ITTO940522A1 true ITTO940522A1 (it) 1995-12-23
IT1268079B1 IT1268079B1 (it) 1997-02-20

Family

ID=11412624

Family Applications (1)

Application Number Title Priority Date Filing Date
IT94TO000522A IT1268079B1 (it) 1994-06-23 1994-06-23 Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi

Country Status (2)

Country Link
EP (1) EP0689145A1 (it)
IT (1) IT1268079B1 (it)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2133118B1 (es) * 1997-10-21 2000-05-01 Josa Electrotecnica Fab Sistema domotico para el control inteligente del hogar
EP1538580B9 (de) 2003-12-06 2019-05-15 Siemens Schweiz AG Gefahrenmeldeanlage

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6165555A (ja) * 1984-09-05 1986-04-04 Mitsubishi Electric Corp ホームコントロールシステムおよびインターホンシステム
US5243702A (en) * 1990-10-05 1993-09-07 Bull Hn Information Systems Inc. Minimum contention processor and system bus system
FR2677473B1 (fr) * 1991-06-05 1995-04-07 Telemecanique Procede et bus d'arbitrage pour transmission de donnees serie.

Also Published As

Publication number Publication date
EP0689145A1 (en) 1995-12-27
IT1268079B1 (it) 1997-02-20
ITTO940522A0 (it) 1994-06-23

Similar Documents

Publication Publication Date Title
CN100505651C (zh) 向一系统中的节点发送信号的方法和系统
KR100722271B1 (ko) 빌딩관리시스템
CN101354582B (zh) 在建筑物自动化系统中绑定无线设备
EP2119322B1 (en) Communication protocol for a lighting control system
JP2010532635A (ja) コードレス商用電源式メッシュネットワークルータノード
CN103973532A (zh) 通信网络和用于在通信网络中通信的方法
CN110959273B (zh) 用于房屋自动化的设备
JP5900966B2 (ja) 状態制御システム及び方法
ITTO940522A1 (it) Procedimento per regolare l'accesso di piu' sistemi ad un bus, ad esempio per applicazioni nel settore della domotica, e relativi
JP4368478B2 (ja) エレベータのローカル機器ネットワークおよびこれの送信制御方法
US20200274813A1 (en) Network interface for home-automation apparatus, home-automation system for a building containing such home-automation apparatus and building comprising such home-automation system
JP2002359625A (ja) コントロールエリアネットワーク
EP1570576B1 (en) Method for setting home code of home network system
JPH09145134A (ja) 空気調和システムの制御方法および制御装置
JP4333250B2 (ja) 防災照明用監視システム
Shweta et al. Implementation of controller area network (CAN) bus (Building automation)
JP3493918B2 (ja) 通信回線監視設定機能を備えた通信インターフェース及びこれを用いた通信制御システム、鍵管理通信制御システム
JP4390573B2 (ja) 空気調和システム
JPS60134644A (ja) 遠隔制御監視システム
JPS63260335A (ja) デ−タ伝送におけるデ−タ送出方法
JP2001285506A (ja) 自律分散コントローラ
JPH0766819A (ja) ホームバスシステムの同期回復方法
JPH01228395A (ja) 遠隔監視制御システム
JPH01220094A (ja) ホームバスシステム
JP2613711B2 (ja) 多重伝送システムの信号伝送保留方式

Legal Events

Date Code Title Description
0001 Granted