FR 2549735 A1 19850201 FR 8312399 A 19830727 La présente invention concerne la commande informatisee de dispositifs a partir d'informations recueillies par le système. L'application concernant la commande d'unS reseau de chemin de fer miniature sera présentée plus particulièrement,mais d'autres utilisations sont possibles (reseau routier,estion d'une centrale d'alarme avec actions à declencher...). La présente invention apporte un grand nombre d'avantages par rapport aux systèmes existants.Le plus couramment,les systèmes existants font appel à des relais électromagnétiques ou au mieux à des circuits logiques.Ces systèmes sont encombrants,délicats à mettre en oeuvre, chers,inadaptés à une évolution du réseau,tout changement entrainant le plus souvent la nécessité de recabler tout le système.De plus,leur complexité empeche de réaliser des fonctions complexes notamment pour les mécanismes de sécurité,sous peine de rendre le système inextricable et peu fiable.La solution proposée est d'utilisation simple,fiable,peu encombrante,beaucoup plus économique et surtout elle 'adapte facilement aux évolutions du réseau : le changement de tracé entraine quelques modifications des bases données dans les memoires,voire quelques changements dans les programmes,sans commune mesure avec le racablage complet qu'antrainaient les autres systèmes.Le modéliste n'est plus condamné à un circuit statique.De plus,l'utilisation des capacités de l'ordinateur permet une maitrise du reseau inégalable,par la quantité de paramètres que l'utilisateur peut faire prendre en compte pour élaborer des décisions d'action. L'invention consiste en une interface entre ltordinateur,pris au sens large d'organe traitant l'information, et le réseau (ou tout autre dispositif à commander).On distingue deux fonctions : la commande des différents dispositifs et la saisie de l'information nécessaire.0n ne représentera que les éléments necessaires,en particulier les alimentations ne seront pas représentées. On peut organiser le système selon la figure 1. L'ordinateur est relié au système par l'interface ordinateur/système,. L'adaptation aug différents ordinateurs se fait par différentes interfaces ou par des interfaces disposant d'options,par straps par exemple. On peut se brancher selon n'importe quel standard,voire directement sur le bus interne à l'ordinateur.Le système dispose d'une architecture en bus,cela permet une grande facilité d'extension ainsi qu'une conception modulaire.Le bus se partage en trois fonctions:adressage des modules,circulation de l'information,fonctions de contrôle. Les modules se branchent sur le bus.Sur la figure 2,on a représenté un module particulier:le tampon/isolateur et son bus. Nous allons maintenant décrire plus avant le système. Module d'alimentation (figure 3): Ce module se branche d'une part sur le bus,d'autre part sur une section du réseau (figure 3b).Il fonctionne en tout ou rien :si on lui envoie 0 à l'entrée,la section n'est pas alimentée;si on lui envoie 1, on alimente la section au maximum.L'entrée est maintenue pendant un temps tau grâce à un latch ou un trigger par exemple,avant de retourner éventuellement à zéro et ainsi l'ordinateur n' est pas monopolisé. Pour obtenir l'allure maximale,il suffit que l'ordinateur applique un niveau 1 toutes les gausecondes au moins.Une autre possibilité consiste à maintenir les niveaux d'entrée (par un latch par exemple)jusqu'à toute nouvelle écriture validée sur le module.Pour obtenir des vitesses variables,il suffit de faire des séquences adéquates de O et de 1. La figure 4 donne des exemples pour obtenir une vitesse moitié environ de la vitesse maximale.L'avantage d'une telle solution est que la voie est toujours alimentée sous la tension maximale,ce qui permet des ralentis et des démarrages d'excellente qualité. Module de détection (figure 5): Ce module détecte la présence d'un convoi sur une section dans un sens donné ou dans n'importe quel sens suivant l'option choisie.En présence d'un convoi,la sortie est à 1,à0 sinon.Pour réaliser cette fonction,on peut utiliser tous les moyens de détection connus.Nous donnons ici la détection obtenue avec une diode,selon un procédé classique connu des modélistes,utilisant la chute de tensions aux bornes de la diode au passage d'un courant.Ce module se branche entre l'alimentation et la voie. Module de commande d'aiguillage (figure 6a): Module de commande d'accessoire (figure 6b): Ces modules servent à commander les accessoires tels que les aiguillages,les décrochages automatiques à distance, tout relai,self,bobinage, feu de toute sorte en particulier lampe à incandescence,néon,et diodes électroluminescentes... On dispose du nombre d'entrée nécessaires au codage des différents t t.'t états possibles de l'appareil commandé et du nombre nécessaire de sorties pour relier l'appareil à la commande.Dans les systèmes actuels,ces accessoires étaient mis en marche grâce à des interrupteurs ou des relais. Ces modules s'y substituent .Nous détaillons davantage le cas ou l'acces soire est un aiguillage. On convient de désigner les deux positions possibles de l'aiguille par 0 et 1.0n branche alors le module de manière à ce que la position de l'aiguille corresponde au signal d'entrée.0n peut construire la commande de telle sorte qu'elle ne réagisse qu'aux signaux de commande que si ceuxci doivent changer la position de l'aiguille.Quelle que soit la durée du signal,l'aiguillage est alimenté suffisamment longtemps pour prendre la nouvelle position mais trop peu pour etre endommagé. On peut aussi introduire des modules complélentaires dont le rôle est de soulager l'ordinateur de taches simples,pour que ce dernier puisse s'occuper de tâches plus complexes. Module distributeur: Son rôle est d'élaborer des signaux d'alimentation sur un certain nombre de sections à partir de consignes de vitesse rangées dans des mé itires.Dans la consigne se trouvent codés le sens de marche et la vitesse sur la section.Tout codage est possible;on peut prendre en particulier le codage en complément à deux, le plus utilisé sur les micro-ordinateurs. Dans ce cas,le bit de signe peut être directement utilise pour indiquer le sens de marche sur la section au module d'alimentation de la figure3a. On dispose pour élaborer les signaux d'une horloge qui donne le temps t module T (où T=1/f avec f fréquence de l'alimentation choisie).Tant que le temps t est plus petit que la valeur tot correspondant à la consigne de vitesse de la section i,on envoie un 1 sur le module d'alimentation de la section i,ensuite on n' envoie que des niveaux 0 (signal comme sur la figure 4a).Pour remplir cette fonction,on peut aussi trier les valeurs des consignes et les prendre les unes apres les autres,en fonction du temps,et alors envoyer lerniveau voulu;;on peut aussi comparer toutes les consignes en temps durant l'intervalle séparant deux incrémentations successives de I'horloge.0n peut par exemple utiliser le bit " On peut brancher d'autres modules que des modules d'alimentation;on peut ainsi brancher des feux que l'on peut faire clignoter. Module tampon/isolateur: Ce module a pour but d'introduire des mémoires et un bus (2) tels que la mémoire soit vue des deux bus comme une simple mémoire adressable et que les deux bus soient indépendants (figure 2 pour la référence bus (2)).En effet,pour le module distributeur on veut que l'utilisateur puisse écrire et lire dans la mémoire des consignes indépendamment du module qui lit sans arrêt les consignes.Si le bus n'était pas indépendant,le module distributeur pourrait monopoliser le bus,empêchant l'utilisateur d'intervenir sur le réseau. Pour réaliser la fonction,on peut disposer de deux mémoires qui sont alternativement branchées sur l'un ou l'autre des bus (figure 7),aux tops d'une horloge par exemple.0n peut aussi procéder comme indiqué figure 8; M1 et M2 sont deux mémoires à entrées et sorties séparées.quand le busl ne demande pas d'accès à la mémoire des consignes,les deux mémoires sont branchées sur le même bus d'adresse (2),M1 en lecture et M2 en-écri- ture;;on prendra pour M2 une mémoire qui sort sur ses broches de sortie, ce qu'il y a en entrée,pendant ltécriture,comme par exemple la mémoire SN 7489.Si on écrit (ou lit) à partir du bus 1,M2 reste branchée de la même manière,en lecture et M1 se branche sur le bus 1,en écriture ou en lecture suivant la demande du bus.I)onc sauf quand le bus 1 demande l'ae- cès à la mémoire,il sort sur le bus 2 le contenu de la mémoire M1 demandé parle bus 2,contenu qui est dupliqué au passage dans M2 et qui sera la valeur par défaut si le bus 1 occupe M1. On peut brancher sur ce module,côté bus 2,tout module qui a besoin souvent d'une ressource mémoire et qui risquerait de monopoliser le bus 1. Module vitesse: Son rôle consiste à élaborer des vitesses à partir de données telles que la vitesse(signée),l'accélération GU décélératiooulue,pour un secteur donné,pour une série de secteurs,ou pour des convois dont on connait les secteurs qu'ils occupent.Periodiquement,ee module envoie sur les mémoires voulues les nouvelles consignes de vitesse calculées. Module de commande individuel; Ce module permet de commander un convoi indépendamment des autres en lui imposant sa vitesse et son sens de marche.Pour cela, il suffit d'utiliser un convertisseur analogique-digital ou tout autre moyen pour obtenir un nombre représentant la vitesse souhaitée et d'élaborer les consignes de vitesse pour tous les secteurs occupés par le train. Ces secteurs sont fournis par l'ordinateur par exemple. Ces deux modules entrent en concurrence entre eux ou avec l'utili sateur pour l' accès au bus:il faut un système qui assure l'exclusion mutuelle.Tout moyen connu est possible.0n peut par exemple introduire une ligne "busy" qui indique l'occupation du bus.0n peut aussi utiliser un système à l'image des courses de relais.Pour qu'un dispositif fonc tionne,il doit avoir reçu le "relai" et quand il a fini sa tâche,il pas se le relai au suivant éventuel.Ainsi,un seul dispositif est sur le bus. La chaine ainsi constituée peut être fermée ou ouverte.Le "relai" peut aussi être gére par un organe adapte,par exemple une horloge qui alloue des temps déterminés aux dispositifs;on peut tenir compte de la priori té de dispositifs par rapport à d'autres et en particulier de la priorité de l'utilisateur. On peut concevoir toute combinaison entre ces modules et ce en nombres quelconques. On peut introduire un module multifonction équipé d'un micro processeur et d'un programme pour réaliser les fonctions précédentes ou des fonctions plus complexes.Cela revient à introduire plusieurs ordinateurs et cela est possible,à condition qu'il n'y ait pas de conflit, par exemple lorsque deux personnes veulent utiliser le réseau ou que l'on veut décharger le premier ordinateur sur d'autres pour des taches de sécurité du réseau ou de gestion du parc des véhicules,ou d'autres choses tels les départs et arrivées... La figure 1 donne l'aspect général de l'invention: on distingue un ordinateur (A) relie à un berceau (B2) recevant des modules (B1) qui sont reliés au berceau et au réseau (C),où l'on voit des aiguillages(D), décrochage à distance (F),section (E) et feux (G). Le module d'alimentation peut être réalisé selon la figure 9;le bit de sens,amplifié,actionne le relai inverseur de polarité (dans le-cas continu);le bit marche/arrêt arrive sur le photocoupleur.Le phototransistor du photocoupleur,par l'intermédiaire d'un transistor,autorise le passage du courant dans la section,plus précisément à l'entrée "travail" du relai inverseur.Le signal select indique que ce module est sélectionne et les entrées sens et marche/arrêt validées. La figure 10 donne une réalisation possible du module de détection. En présence d'un convoi,du courant traverse la diode,qui est alors sous une d.d.p qui rend T1 passant puis T2 passantet la sortie passe à 1. En l'absence de convoi,T1 et T2 sont bloqués : la sortie est à 0. Les figures 11a et 11b donnent une réalisation possible du module de commande d'aiguillage.Quand on détecte un changement dans l'état du bistable ,par dérivation des signaux Q et Q par exemple,on envoie une impulsion d'environ 0,5 s grâce au monostable,pour autoriser le passage du courant pour changer l'aiguille de position.Le signaenable-select indique que le module a été sélectionné et que la commande est validée. La figure 13 donne une réalisation du module distributeur.Tant que le module n'a pas reçu le signal de relai du prédécesseur,rien ne se passe.Ouand il le reçoit,et tant que les bus ne sont pas occupés par ltutilisateur (i.e. busy = O),l'horloge,ou un signal du bus de contrôle pris pour horloge,attaque des diviseurs (par exemple TTL 74'93).D2 donne le temps et entre deux incrémentations successives du temps de D2, Dl envoie sur le bus d'adresse,les adresses pour obtenir toutes les consignes de vitesse.On obtient sur le bus de données les consignes signées; si on utilise un codage des nombres négatifs en complémentaire à 2,le bit de poids fort est envoyé directement sur 11 entrée "sens de marche" du module d'alimentation,dont l'adresse est envoyée à partir de Dl;le module de la vitesse est comparé au temps de D2:le résultat de la comparaison est envoyé sur l'entrée marche/arrêt du module sélectionné.Quand tous les temps ont été envisagés,on envoie un signal de relai au successeur et on met la bascule à O.Si busy passe au niveau 1,le fonctionnement du module est suspendu jusqu'au retour de busy à 0. La figure 14 montre une réalisation du module vitesse.0n dispose de trois mémoires:"train" (Ml),"vol'l (M2)et inc (M3),qui contiennent dans leur ième case respectivement le numéro du canton où se situe le train numéro i,la valeur de la vitesse à atteindre et ine l'accélération désirée.0n dispose d'une horloge ou d'un signal périodique.Le système d'exclusion d'accès simultané au bus est le même que pour le module exposé plus haut.Le diviseur décrit tous les numéros de train possibles; ils sont envoyés sur une partie du bus d'adresse et sur les mémoires. Le complément du bus d'adresse est constant,fixé par straps par exemple et permet de désigner un distributeur parmi tous ceux qui sont sur le bus.Au premier top d'horloge,la consigne de vitesse actuelle sur le canton occupé par le train i est entrée sur le registre,og y additionne inc (i) et la valeur obtenue est composée à vol:suivant le résultat de la comparaison,cette somme ou vol est envoyée,lors du second top,comme consigne de vitesse,en même temps que le registre est débranché du bus, pour éviter de boucler. Revendications 1)Système caractérisé par l'utilisation de ltordinateur,au sens large du dispositif traitant de l'information,pour la saisie et le traitement de l'information, et pour la commande d'un réseau miniature,notamment un réseau ferroviaire miniature ou un réseau routier,ou un réseau de taille normale à condition d'adapter les interfaces en puissance ,d'une centra le d'alarme. 2)Caractérisé en ce qu'il nécessite l'utilisation d'un programme situé dans l'ordinateur,dans le système ou dans les deux. 3)Caractérisé par son architecture en bus et parce qu'il se branche à l'ordinateur grâce à des interfaces adaptées à l'ordinateur,éventuellement grâce à des straps ou toute autre forme de commutateur,selon ntim- porte quel standard. 4)Caractérisé en ce qu'il existe des modules qui se branchent sur les bus,en nombre quelconque et qui peuvent être adresss,séparément ou non, car disposant d'une entrée "select" servant à sélectionner le module. Module d'alimentation: 5)Caractérisé en ce qu'il se branche sur le bus et sur la voie(fig.3) qu'il fonctionne en tout ou rien,c'est à dire que la voie est alimentée à l'entrée et à I,non alimentée dans le cas contraire (les niveaux I et 0 sont symboliques;leur signification peut varier d'un module à l'autre; le niveau 1 peut être à une tension nulle et le niveau 0 à une tension non nulle;ils représentent simplement les deux états d'un dispositifs admettant deux états. 6)Caractérisé en ce que son entrée est maintenue pendant un certain temps tau (avant de retomber éventuellement à O),ou jusqu'à toute nouvelle écriture validée sur le module. 7)Caractérisé en ce qu'on obtient la vitesse déSirée en envoyant sur le module une séquence adaptée de 1 et de 0. 8)Caractérisé en ce quelea voie est toujours alimentée sous la tension maximale,lorsqutelle est alimentée. Module de détection: 9)Caracterisé en ce qu'il détecte la présence d'un convoi sur une section de réseau:en présence d'un convoi,la sortie est à 1;à 0 sinon (même remarque sur les niveaux que dans l'exposé du module précédent). Module de commande d'accessoires: 10)caractérisé en ce qu'ils servent à commander les accessoires tels que les aiguillages,les décrochages automatiques à distance,tout relai self,bobinage,feu de toute sorte,en particulier lampe à incandescence, néon et diode électroluminescente. 11)Caractérisé en ce qu'il dispose au moins du nombre d'entréejnécessai- res Qu codage des différents états possibles et au moins du nombre de sorties nécessaires à la commande de l'accessoire. 12)Caractérisé en ce qu'il remplace les interrupteurs et relais des anciens systèmes. Dans le cas particulier où l'accessoire est un aiguillage à 2 positions: Module de commande d'un aiguillage à deux positions: 13)Caractérisé en ce qu'il réalise la connection de l'aiguillage au système de commande. 14)Caractérisé en ce qu'il ne réagit aux signaux de commande que lorsque ceux-ci tentent de changer l'état de l'aiguillage,c'est à dire la position de l'aiguille. 15)Caractérisé en ce que l'aiguillage n'est alimenté que pendant un temps déterminé,suffisant pour changer l'état de l'aiguillage mais insuffisant pour endommager ce dernier,et ce quelque soit la durée du signal de commande. Module distributeur: 16)Caractérisé en ce qu'il élabore des signaux (séquences de 1 et de 0) vers les modules,d'alimentation en particulier,pour un certain nombre de sections à partir de consignes de vitesse rangées dans des mémoires, selon n'importe quel codage ,en ce qu'il peut adresser les autres modules, en particulier les modules d'alimentation. Module tampon/ isolateur: 17)Caractérisé en ce qu'il introduit des mémoires et un bus (2 sur la figure 8)tels que la mémoire soit vue des deux bus comme une --simple mémoire adressable et que les deux bus soient indépendants. 18)Caractérisé par l'existence de deux mémoires Ml et M2 et d'un multiplexeur MUX disposé selon la figure 8 et par le fonctionnement suivant: le bus 1 peut utiliser M1 comme n importe quelle mémoire,en écriture ou en lecture,et le bus 2 peut utiliser M2 en lecture;une donnée est dupliquée de M1 dans M2 quand le bus 1 n'utilise pas Ml et que le bus 2 fait une lecture de M2,avec la même adresse partielle et que la mémoire M2 est sélectionnée. Module vitesse: Module vitesse: 19)Caractérise en ce qu'il élabore des consignes de vitesse à partie des données telles que la vitesse (signée ou non),l'accélération (signée ou non) voulue,pour une secteur donné,ou des secteurs,ou pour des convois dont on connait les adresses où déposer'les consignes de vitesse calcu lées par des opérations arithmétiques,logiqueset/ou des comparaisons Module de commande individuel: 20)Caractérisé en ce qu'il utilise la donnée des sections occupées par un convoi et une consigne de vitessenfournie par l'utilisateur,pour elaborer les consignes de vitesse sur les secteurs désignés plus haut. 21)Le système est encore caractérisé par l'utilisation possible d'un mécanisme d'exclusion d'accès simultané au bus,à l'image des courses de relai:les modules en concurrencedisposent d'une entrée et d'une sortie particulière;quand un signal arrive sur l'entree,le relai,le module sait qu'il peut utiliser le bus;quand il a fini sa tâche,il envoie un signal sur la sortie pour démarrer 1 eventuel module suivant qui est relié à sa sortie-relai;on a donc constitué une chaine qui peut être ouverte ou fermée. 22)Une variante est caractérisée par l'utilisation complémentaire d'une ligne de commande "busy" indiquant si le bus n'est pas utilisé par un dispositif plus prioritaire,comme liordinateur de l'utilisateur par exemple,dans ce cas,les modules voient leur fonctionnement suspendu jusqu'au retour de busy à 0.