[0001] La présente invention concerne un dispositif d'adressage sur bus. Elle s'applique
à tous les systèmes d'alarme, de surveillance de locaux ou d'installation, de conduite
de processus et, plus généralement, à tous systèmes comportant au moins deux modules
reliés entre eux par une liaison bus et ayant des entrées et des sorties reliées à
des capteurs ou sources d'information et à des indicateurs ou organes utilisateurs.
[0002] Dans de tels systèmes, généralement spécifiques d'une application, l'utilisateur
souhaite réaliser des relations fonctionnelles particulières et plus ou moins complexes
entre certaines entrées et certaines sorties. Il voudra par exemple que si une information
apparaît sur une entrée d'un module, un voyant ou une alarme se déclenche sur un autre
module ou encore qu'une combinaison particulière de plusieurs informations d'entrée
sur divers modules entraîne l'activation d'une ou plusieurs informations de sortie.
[0003] Dans les installations en question, les modules peuvent être plus ou moins éloignés
les uns des autres et ils étaient antérieurement reliés par des liaisons multifilaires
fixes et complexes.
[0004] L'utilisation généralisée de microprocesseurs dans les modules d'une installation
a permis de remplacer les liaisons multifilaires par un bus unique reliant l'ensemble
des modules.
[0005] Grâce à ces microprocesseurs, l'utilisateur a la possibilité de modifier dans certaines
limites les relations fonctionnelles entre les entrées et les sorties des divers
modules.
[0006] En effet, ces relations fonctionnelles sont généralement déterminées par des moyens
d'adressage organisés de telle sorte qu'un module qui doit envoyer des informations
apparaissant sur ses entrées, dispose des adresses des modules qui doivent les recevoir
et des adresses des sorties qui doivent être activées.
[0007] Ces moyens d'adressage, accessibles à l'utilisateur, sont généralement constitués
par des ensembles de commutateurs ou de sélecteurs électromécaniques et ce point limite
beaucoup les possibilités de ces systèmes.
[0008] Les ensembles de commutateurs ne disposent que d'un nombre de combinaisons réduit,
deux cent cinquante six pour huit contacts par exemple, et n'assureront donc pas une
bonne protection contre la fraude dans certaines applications.
[0009] Il faudra, dans chaque module, autant d'ensembles de commutateurs qu'il y aura de
destinataires pour les informations à envoyer et d'expéditeurs pour les informations
à recevoir, ce qui devient vite complexe et onéreux.
[0010] Du fait de leur nécessaire accessibilité, ces commutateurs sont de plus facilement
perturbables.
[0011] La présente invention a pour but de remédier à tous ces inconvénients et concerne
un dispositif d'adressage sur bus destiné aux installations du type susdit et plus
particulièrement caractérisé en ce que les moyens d'adressage program mables comprennent
au moins une mémoire RAM, de préférence non volatile du type E2PROM, au moins un poussoir
de sélection des entrées et des sorties, au moins un poussoir de programmation et
au moins un moyen de visualisation d'au moins une des entrées ou sorties sélectionnées.
[0012] Un mode d'exécution de l'invention sera décrit ci-après, à titre d'exemple non limitatif,
avec référence aux dessins annexés dans lesquels :
La figure 1 est une représentation schématique d'un système de modules interconnectés
par un bus et muni d'un dispositif d'adressage à commutateurs selon l'art antérieur
; et
La figure 2 est une représentation schématique d'un système de modules interconnectés
par un bus et muni d'un dispositif d'adressage selon l'invention.
[0013] Comme précédemment mentionné et ainsi que le montre la figure 1, une installation
selon l'art antérieur comprend une ligne bus 1 sur laquelle sont branchés des modules,
six dans l'exemple présenté, 2, 3, 4, 5, 6 et 7. Seules les architectures des modules
2 et 6 ont été détaillées pour la clarté de l'explication, et il va de soi que celles
des modules 3, 4, 5 et 7 sont semblables.
[0014] Le module 2, par exemple, comprend :
- un processeur 8 sur lequel arrivent deux entrées 9 et 10 et une sortie 11 ; une
autre connexion 15 est reliée à la ligne bus 1,
- trois ensembles de commutateurs 12, 13 et 14 affectés respectivement aux deux entrées
9 et 10 et à la sortie 11, les commutateurs 12 et 13 mémorisant chacun l'adresse du
module et de la sortie qui doivent être informés des événements se produisant sur
les entrées correspondantes 9 ou 10. Dès qu'un évènement se produit sur l'une de ces
entrées 9 ou 10, le processeur 8 utilise l'adresse correspondante fournie par le
commutateur 12 ou 13 et l'envoie sur la ligne bus 1 où elle sera reconnue par le module
qu'elle désigne ; le commutateur 14 mémorise l'adresse du module et de l'entrée sur
ce module dont le processeur 8 doit prendre en compte les informations pour activer
la sortie 11.
[0015] Le module 6 comprend :
- un processeur 16,
- deux entrées 17 et 18 branchées sur ledit processeur,
- deux sorties 19 et 20 branchées sur ledit processeur,
- une liaison 21 à la ligne bus 1,
- six ensembles de commutateurs 21, 22, 23, 24, 25 et 26 également reliés au processeur
16.
[0016] Dans ce module, et en fonction des besoins, plusieurs ensembles de commutateurs
peuvent être affectés à une au moins des entrées 17 et 18 ou des sorties 19 ou 20
et faire ainsi que l'information de ladite entrée soit envoyée à plusieurs autres
modules dont les adresses auront été mémorisées sur lesdits commutateurs ou que ladite
sortie soit actionnée par les informations en provenance de plusieurs autres modules
dont les adresses auront été mémorisées sur lesdits commutateurs, adresses dont le
processeur 16 reconnaîtra la présence sur la ligne bus 1.
[0017] Il apparaît donc clairement, sur cet exemple, que les possibilités d'adaptation
des systèmes selon l'art antérieur sont limitées par le nombre d'ensembles de commutateurs
prévus dans chaque module.
[0018] Un système selon la présente invention, et comme le montre la figure 2, comporte
lui aussi au moins deux modules, six dans l'exemple présenté, 27, 28, 29, 30, 31 et
32, reliés à une ligne bus 33.
[0019] Comme dans l'exemple précédent, seules les architectures des modules 27 et 31 ont
été détaillées et celles des modules 8, 29, 30 et 32 leurs sont semblables.
[0020] Le module 27 comporte :
- un moyen de liaison, de préférence électronique, qui peut être simplifié à l'extrême
et qui, dans l'exemple présenté, est un processeur 34,
- deux entrées 35 et 36,
- une sortie 37,
- une liaison 38 bidirectionnelle branchée sur la ligne bus 33,
- une mémoire 39 reprogrammable non volatile et à accès aléatoire du type E2PROM par
exemple,
- trois voyants 40, 41 et 42,
- un poussoir de sélection 43,
- un poussoir ou commutateur de programmation 44.
[0021] L'ensemble de ces éléments, entrées 35 et 36, sorties 37 et 8, mémoire 39, voyants
40, 41 et 42, poussoir de sélection 43 et poussoir de programmation 44, sont reliés
au processeur 34.
[0022] Les entrées 35 et 36, dont le nombre peut bien sûr être augmenté ou diminué, sont
reliées à des sources d'information qui peuvent être analogiques ou numériques, extérieures
ou incorporées au module lui-même.
[0023] La sortie 37 qui peut être supprimée ou complétée par d'autres sorties, est reliée
à un organe utilisateur qui peut être par exemple un voyant, un indicateur ou une
alar- me. Les informations de sortie peuvent être analogiques ou numériques. Le ou
les organes utilisateurs peuvent être extérieurs ou incorporés au module lui-même.
[0024] Les voyants 40 et 41 sont affectés respectivement aux entrées 35 et 36.
[0025] Le voyant 42 est affecté à la sortie 37.
[0026] Le nombre de voyants peut bien entendu être augmenté ou diminué comme ceux des entrées
ou des sorties.
[0027] La mémoire 39 peut disposer d'autant de mots qu'il en sera nécessaire et ceci pour
un coût très réduit. Si chaque mot a seize bits ou plus, le nombre de combinaisons
devient très grand et rend la fraude impossible.
[0028] Le poussoir ou commutateur de programmation 43 est disposé de telle sorte qu'il ne
puisse pas être manoeuvré par inadvertance. Sa manoeuvre peut par exemple nécessiter
l'emploi d'un tournevis ou d'une pointe.
[0029] Le module 31 est tout à fait similaire au module 39, et comporte des entrées et des
sorties plus nombreuses et dont le nombre peut également être aisément diminué ou
augmenté.
[0030] Il comprend donc :
- un moyen de liaison, de préférence électronique qui peut lui aussi être simplifié
à l'extrême et qui, dans l'exemple présenté, est un processeur 45,
- trois entrées 46, 47 et 48 reliées à des sources d'information,
- trois sorties 49, 50 et 51 reliées à des organes utilisateurs,
- une sortie 52 reliée à la ligne bus 33,
- une mémoire 53 du même type que la mémoire 39 et d'une capacité éventuellement supérieure,
- trois voyants 54, 55 et 56 affectés aux trois entrées respectivement 46, 47 et 48,
- trois voyants 57, 58 et 59 affectés aux trois sorties respectivement 49, 50 et 51,
- un poussoir de sélection 60,
- un poussoir ou commutateur de programmation 61.
[0031] Les caractéristiques des éléments dudit module 31 et des éléments des autres modules
non décrits sont analogues à celles des éléments du module 27.
[0032] Le logiciel des processeurs de chaque module est agencé de telle sorte que ceux-ci
effectuent les actions suivantes :
- A la mise sous tension de l'installation, et dans chaque module, définition d'une
adresse du module par balayage et arrêt aléatoire par exemple.
[0033] Ledit arrêt aléatoire peut ne se produire que lorsque l'opérateur manoeuvrera l'un
des poussoirs de sélection ou de programmation.
[0034] Sans qu'il soit nécessaire d'en détailler le processus exact, une interrogation générale
de tous les modules peut être déclenchée afin de savoir si l'adresse qui vient d'être
aléatoirement déterminée n'est pas déjà utilisée, si par hasard cela était le cas,
une nouvelle adresse non déjà utilisée serait à nouveau recherchée.
[0035] Chaque module est alors muni d'une adresse aléatoire inconnue de quiconque, et qu'il
met en mémoire.
[0036] Chaque entrée et chaque sortie peuvent également, par le même moyen, avoir une numérotation
aléatoire, également mise en mémoire dans le module.
[0037] Ces adresses et numérotations peuvent également avoir été définies en atelier lors
de la fabrication ou du contrôle des modules.
- Lors d'une action sur un poussoir de sélection 43 par exemple, allumage du premier
voyant 40 et sélection de l'entrée correspondante 35.
[0038] A chaque nouvelle action sur ledit poussoir de sélection, le voyant allumé s'éteint,
le voyant suivant s'allume et l'entrée suivante est sélectionnée, et ainsi de suite,
les entrées puis les sorties de chaque module étant successivement sélectionnées.
- Lors d'une action sur un poussoir de programmation, 44 par exemple, passage du module
27 en mode programmation seulement si une entrée ou une sortie a été sélectionnée.
[0039] Si une entrée a été sélectionnée, le module 27 passe en mode programmation, et se
met en attente d'une adresse apparaissant sur la ligne bus 33. Dès qu'une adresse
apparaît sur ladite ligne bus, le processeur 34 dudit module 27 prend en compte ladite
adresse, l'affecte à l'entrée sélectionnée et la range dans la mémoire RAM 39, puis
il ré-émet ladite adresse sur la ligne bus suivie de l'adresse dudit module 27 et
du numéro de ladite entrée sélectionnée. Il quitte ensuite le mode programmation
pour passer sur un mode fonctionnement.
[0040] Si c'est une sortie qui a été sélectionnée, le module 27 passe en mode programmation
après la manoeuvre du poussoir de programmmation 44 ; le processeur 34 va rechercher
dans la mémoire 39 l'adresse dudit module 27 ainsi que le numéro de la sortie sélectionnée
et les émet par sa liaison 38 sur la ligne bus 33 ; il se met alors en attente de
la réapparition de cette adresse sur la ligne bus 33. Lorsque celle-ci apparaît,
le processeur 34 la reconnaît, il enregistre et met en mémoire l'adresse et le numéro
qui la suivent immédiatement.
[0041] Du fait que cette seconde adresse correspond à une entrée d'un autre module, il sait
de quelle entrée et de quel module proviendront les informations qui activeront sa
sortie sélectionnée.
[0042] Il quitte ensuite le mode programmation pour passer sur un mode fonctionnement.
[0043] Ainsi décrit, dans ses aspects matériel et logiciel, le système équipé du dispositif
d'adressage selon l'invention est très simple à programmer. La procédure de programmation
est la suivante :
L'opérateur, connaissant l'ensemble des relations fonctionnelles qui doivent lier
les organes utilisateurs branchés sur les diverses sorties des modules du système
aux informations arrivant sur les diverses entrées desdits modules, programme successivement
chacune de ces relations fonctionnelles.
[0044] On supposera que la première relation fonctionnelle à programmer soit : toute information
apparaissant sur l'entrée 36 du module 27 doit activer la sortie 50 du module 31.
[0045] Dans ce cas, après avoir mis l'installation sous tension, l'opérateur sélectionne
l'entrée 36 repérée par son voyant à l'aide du poussoir de sélection 43 sur le module
27, puis il manoeuvre le poussoir de programmation 44. Le module 27 est alors en attente
d'une adresse. L'opérateur agit ensuite sur le poussoir de sélection 60 du module
31 jusqu'à ce que le voyant correspondant à la sortie 50 soit allumé. Il manoeuvre
ensuite le poussoir de programmation 61. A ce moment, le processeur 45 du module 31
envoie sur la ligne l'adresse dudit module, suivi du numéro de la sortie 50 ; le processeur
34 voit cette adresse et ce numéro sur sa sortie 38, il les met en mémoire 39 et les
ré-émet sur la ligne bus 33 suivie de l'adresse du module 27 et du numéro de l'entrée
36 sélectionnée. Le processeur 45 du module 31 voit réapparaître l'adresse qu'il
vient d'émettre, il met en mémoire 53 l'adresse et le numéro qui suivent ; enfin les
deux modules passent en mode fonctionnement.
[0046] L'opérateur fera de même pour toutes les relations fonctionnelles à programmer.
[0047] Si l'on veut éviter que les poussoirs de sélection soient actifs en permanence pour
qu'ils ne puissent agir sur les voyants par inadvertance, afin que ceux-ci, en mode
fonctionnement, soient réservés à la matérialisation des évènements se produisant
sur les entrées ou les sorties, il est possible, en adaptant les logiciels des processeurs
des modules, de n'activer lesdits poussoirs de sélection que par une première manoeuvre
du poussoir ou du commutateur de programmation de chaque module.
[0048] Cette manoeuvre sera alors suivie de la sélection d'une entrée ou d'une sortie par
pression sur le poussoir de sélection, puis du passage en mode programmation par une
seconde manoeuvre du poussoir de programmation.
[0049] Il serait également possible d'activer les poussoirs de sélection de tous les modules
par la manoeuvre du poussoir ou commutateur de programmation d'un seul module, quelconque,
ou déterminé à l'avance, et ceci en faisant en sorte que ledit module envoie, lors
de ladite première manoeuvre, un code particulier sur la ligne bus 33.
[0050] A partir de ce mode opératoire des poussoirs, des voyants et des mémoires RAM non
volatiles, de nombreuses autres combinaisons sont encore possibles pour améliorer
la souplesse d'emploi et augmenter la sécurité du système.
1. Dispositif d'adressage sur bus pour installation du type comportant au moins deux
modules reliés entre eux par au moins une ligne du genre bus, chaque module comprenant
:
- au moins un moyen de liaison, de préférence un processeur, entre la ligne bus et
une entrée ou une sortie,
- au moins une entrée ou une sortie reliée à une source d'information ou à un organe
utilisateur,
- des moyens d'adressage programmables, l'installation étant agencée de sorte qu'il
existe des relations fonctionnelles entre les entrées et les sorties des divers modules
et qu'au moins l'une de ces relations fonctionnelles soit programmable par l'utilisateur
à l'aide des moyens d'adressage,
caractérisé en ce que les moyens d'adressage programmables comprennent au moins une
mémoire RAM, de préférence non volatile du type E2PROM, au moins un moyen de sélection
des entrées et des sorties, au moins un moyen de programmation et au moins un moyen
de visualisation d'au moins l'une des entrées ou sorties sélectionnées.
2. Dispositif d'adressage sur bus selon la revendication 1,
caractérisé en ce que chaque module (27) comprend :
- un processeur (34),
- des entrées (35 et 36) et des sorties (37),
- des voyants (40, 41 et 42) en nombre égal au total des entrées (35 et 36) et des
sorties (37) dudit module, chaque voyant étant affecté à l'une desdites entrées ou
sorties,
- un poussoir de sélection (43) des entrées et des sorties,
- un poussoir de programmation (44) dont la manoeuvre fait passer le module en mode
programmation,
- une mémoire RAM (39), de préférence non volatile du type E2PROM dont la capacité
en nombre de mots soit aussi grande que nécessaire et au moins égale au total des
entrées et sorties dudit module, chaque mot ayant un nombre de bits tel qu'il corresponde
à un nombre de combinaisons suffisant pour assurer la protection recherchée.
3. Procédé pour la mise en oeuvre du dispositif selon l'une des revendications 1 ou
2,
caractérisé en ce qu'il comporte les programmations successives par l'opérateur d'une
pluralité de relations fonctionnelles, chaque programmation d'une relation fonctionnelle
comportant la sélection sur chacun des modules intéressés par ladite relation, des
entrées et des sorties qu'elle affecte, la mise en service de chacun des modules intéressés
en un mode de programmation au cours duquel il est, soit en attente de l'apparition
sur le bus d'adresses d'entrées et de sorties affectées, soit en train d'émettre sur
le bus l'adresse du ou des modules intéressés ainsi que celle des entrées et des sorties
affectées, et au cours duquel, dès que l'un des modules intéressés a reçu une réponse,
il met en mémoire les adresses concernées avant de passer en un mode de fonctionnement
où la relation fonctionnelle va s'établir.
4. Procédé selon la revendication 3,
caractérisé en ce que, à chaque mise sous tension de l'installation et dans chaque
module, l'opérateur lance un balayage d'adresses et provoque un arrêt aléatoire sur
une adresse déterminée, en effectuant une interrogation de tous les modules pour s'assurer
que l'adresse qu'il vient de déterminer aléatoirement ne soit pas déjà affectée à
un autre module.