Brevet FR2525002A1 — publié le 19831014

La présente invention a pour objet un guide topographique destiné en particulier, mais non exclusivement, à déterminer un parcours de durée minimale entre deux points. L'exemple le plus connu de ce type de guide est celui des plans lumineux du métro qui, à partir d'une station donnée, sont susceptibles de visualiser sur W plan le trajet que l'utilisateur doit suivre pour se rendre à une autre station, détermine par appui sur la touche correspondante. Pratiquement, l'appui sur ladite touche ferme un certain nombre de contacts électriques, ce qui provoque l'allumage d'autant d'ampoules électriques qui, par leur disposition sur le plan, tracent un parcours. Bien entendu, ce système est limité à des affichages de grandes dimensions, et l'affectation du plan lumineux à une station de départ déterminée nécessite un câblage compliqué et pratiquement figé une fois pour toutes. Or par suite des développements récents de l'électronique et de l'informatique, il est maintenant possible de câbler ces circuits à l'aide de mémoires de manière à donner plus de souplesse au système. 'In circuit de ce type est décrit dans le Brevet Français N0 73 05795, qui propose de faire circuler un fluide pour matérialiser le trajet. Dans ce dispositif, toutefois, le lieu de départ et le moyen de transport sont connus et fixes, le seul paramètre à choisir et introduire par l'utilisateur pour obtenir la configuration du trajet étant l'adresse du point d'arrivée. Tous les trajets possibles sont inscrits dans l'appareil, soit par câblage, soit par firmware ou mémoire câblée du type ROM (seulement lisible). La présente. invention a pour objet un guide topographique qui s'apparente au type précédent par le fait qu'il permet la lecture d'informations visualisées sur une carte, mais qui est réalisée sous une forme por table dans lequel il est possible de faire varier l'adresse du point de départ, et éventuellement d'autres paramètres, comme le mode de locomotion ou le type de parcours. Dans ces conditions, chaque trajet ne peut être mémorisé, ce qui demanderait des moyens de stockage considérables. Le trajet est alors calculé à la demande à l'aide d'un microprocesseur qui détermine, à partir des données introduites, le trajet optimal. Un clavier ou tout autre moyen d'entrée de données est connecté à l'entrée du Microprocesseur, alors qu'un panneau d'affichage est connecté à la sortie de celui-ci, qui est par ailleurs en liaison avec un ensemble de mémoires. Ces mémoires contiennent, entre autres, toutes les informations nécessaires à l'identification géographique des diff!- rentes adresses, celles des points de départ, des points d'arrivée, et des autres points caractéristiques de la carte considérée. Elle peuvent contenir aussi, par exemple, des informations relatives a des moyens de transport parmi lesquels une sélection peut être opérée par l'utilisateur, ou automatiquement par le guide. Il est également possible de faire intervenir un temps de parcours différencié suivant que le transport s'effectue u pied, en métro, autobus, train, ou en voiture particulière. Selon la présente invention, le guide topographique comprenant un panneau d'affichage permettant de représenter une carte et des moyens de sélection d'une adresse est caractérisé en ce que lesdits moyens de sélection permettent l'introduction d'une second adresse, au moins une mémoire contenant les informations topographiques relatives à la région couverte par le guide et notamment les carrefours ou points de bifurcation, des premiers moyens permettant le calcul d'un vecteur boussole ou de direction et le balayage successif de chacun des carrefours les plus proches du vecteur direction pour calculer le trajet en ne conservant que la composante la plus grande de la projection du sous-vecteur reliant un point du trajet au carrefour suivant sur des axes perpendiculaires de coordonnées cartésiennes. C'est à dire que dans un premier temps le guide détermine une direction principale ou boussole en calculant les différences de coordonnées entre les points de départ et d'arrivée, puis, par approximations successives, il détermine des sous-vecteurs dont la somme vectorielle constitue le vecteur boussole, pour chaque carrefour, embranchement, bifurcation etc..., soit chaque fois qu'un choix de direction doit être effectué. Dans le cas du métro, par exemple il s'agit des stations présentant des possibilités de changement. Dans ce dernier cas toutefois, la durée des changements doit être prise en compte, le chemin le plus court (en distance), n'étant pas forcément le moins long (en temps). La possibilité d'introduire une seconde adresse qui est en fait l'adresse du point de départ donne beaucoup de souplesse au système. Bien entendu, lorsque le guide est fixe, dans une ville par exemple, le point de départ est fixé une fois pour toutes, mais le guide selon l'invention conserve toutefois de nombreux avantages par rapport aux guides connus, tels que les plans par exemple, sur lesquels il est bien souvent difficile de se repérer. D'autres caractéristiques et avantages de l'invention apparattront au cours de la description qui va suivre d'un mode particulier de réalisation, donné uniquement à titre d'exemple non limitatif, en regard des figures qui représentent la figure 1, un schéma de principe du fonctionnement du guide ; la figure 2, un bloc diagramme de l'Unité Centrale ; la figure 3, un organigramme du sous programme de codage d'adresses ; la figure 4, l'organigramme du sous programme "Orientation" ; les figures 5 à 7 des schémas du dispositif d'affichage. Sur la figure 1, l'utilisateur se propose d'aller d'un point A où il se trouve a un point B. L'introduction de ces données fait apparaitre sur l'écran la zone dans laquelle se trouvent les points A et B ainsi que les alentours de ces points. En fait, l'échelle est déterminée au moment de l'introduction de la "géographie" en mémoire. Sur le plan qui est affiché apparaissent un certain nombre de rues dont seules R1, R2 et R3 seront à considérer dans cet exemple qui est, à dessein, extr#- mement schématique. Le point de départ A est dans Ri alors que le point d'arrive B est dans R3. Le système commence dans un premier temps à calculer le vecteur de direction VB à partir des coordonnes cartésiennes des points A et B.Selon l'invention, le système détermine ensuite par balayage le carrefour le plus proche, ici Cl, dans la rue Ri et dont la direction est la plus proche de celle du vecteur VB. A partir du carrefour Cl, le système calcule un sous-vecteur SVB qui relie le joint Cl au point d'arrivée B, comme précédemment en supposant que l'utilisateur est arrivé en Cl. Malheureusement la direction du sous-vecteur SVB ne peut habituellement pas être empruntée par l'utilisateur car il est hautement improbable qu'elle corresponde exactement à une rue. Le système effectue donc un balayage destiné à déterminer le carrefour le plus proche de Cl et dont la direction soit la plus proche du sousvecteur SVB. Dans l'exemple représenté, il trouve ainsi le carrefour C2 qui est à l'embranchement de R2 et R3. A partir de C2, il détermine un autre sous-vecteur qui relie C2 à B. A ce point le trajet est direct et le balayage effectué indique la direction de B directement. Le cas qui vient d'être décrit ne justifie pas l'emploi d'un guide selon l'invention, mais on comprendra que les opérations qui viennent d'être indiquées peuvent être répétées jusqu'a ce que l'utilisateur soit arri vé au point B quel que soit le nombre de carrefours rencontrés. Ces calculs sont avantageusement réalisés en logique électronique programmée qui s'adapte parfaitement à la domarche itérative d'établissement d'un trajet. La figure 2 rt.présente l'architecture du système utilisé pour réaliser un guide topographique. Il se compose d'une unité centrale 1 qui est avantageusement constituée par un micro#rocesseur du type "S.C.M.P.II" ou"INS 8060" com mercialisé par la firme NATIONAL SEMICONDUCTORS mais tout autre microprocesseur assurant les mêmes fonctions peut convenir. Ce microprocesseur est en liaison avec une memoire de programmes 2 et avec une mémoire de données 3, la mémoire 2 étant de type ROM et la mémoire 3 de type RAM (Random Access Memory) et ROM (lecture seulement). L'unité centrale 1 est par ailleurs reliée à un clavier 4 et à un écran d'affichage 5 par un bus d'adresse 6, par un bus de données 7 et par un bus de commandes 8. On peut également brancher sur les mêmes bus une imprimante si nécessaire et tout autre système d'introduction de données. La mémoire de données est de préférence une mémoire de masse permettant d'emmagasiner un grand nombre de données géographiques, celles-ci n'étant toutefois rentrées que sous une forme symbolique analogue à celle utilisée pour les cartes routières. La capacité de la mémoire 3 détermine en fait l'étendue de la région qu'il est possible de faire apparaître sur l'écran, pour une échelle donnée. Il est par ailleurs évident que cette échelle sera fonction du mode de transport choisi, un trajet piétonnier justifiant une échelle plus grande que celle d'un trajet automobile. Cette mémoire 3 peut d'ailleurs être composte de bottiers amovibles afin que l'utilisateur puisse changer le périmètre à l'intérieur duquel l'appareil peut le guider. Le programme de gestion est écrit dans une ROM où le microprocesseur vient prélever Ues instructions de commande une par une. Les informations géographiques telles que cartes routières, principaux monuments, plan des villes etc... peuvent être effacées et reprogrammées rapidement afin que ces informations soient toujours actualisées. Le microprocesseur peut ainsi, sous le contrôle du programme de gestion, prendre en compte les données introduites par l'utilisateur, les traiter et présenter les résultats en clair sur des cartes symbolisées représentant le trajet à suivre par l'utilisateur. Tous les composants utilisés sont disponibles dans le commerce sous la forme de "chips" et peuvent être intégrés dans des circuits hybrides pour des fabrications en grande série. Pour mettre en oeuvre le guide, l'utilisateur doit introduire, par le clavier 4, un certain nombre de données qui sont, par exemple : Adresse de départ ou nom d'un monument particulier (par exemple Tour Eiffel) l'adresse d'arrivée ou le nom d'un monument (par exemple Arc de triomphe) ; le moyen de locomotion choisi ; le type d'itinéraire choisi (par voie rapide, mais plus longue, ou par voie directe, qui risque toutefois d'être encombrée). A partir de ces données le système détermine l'itinéraire. Le programme mis en oeuvre comprend trois parties. La première partie concerne les échanges conversationnels utilisateur/guide et fait appel à un sousprogramme de gestion des informations du clavier qui délivre au programme principal les données codées issues du clavier. Le clavier, du type "non encodé" par exemple nta pas été représenté. Il permet le choix d'un code adapté à l'application particulière à un guide. Il se compose essentiellement d'un ensemble de 48 touches réparties en une matrice 8X6 qui est décodé par "balayage de rangées", avec blocage sur "n" touches.Le clavier est abonné aux bus, comme les autres périphériques, ce. qui lui donne accès au bus de donnée par émission par le microprocesseur du code adresse du clavier. Pour délivrer au programme principal les données codées issues du clavier, le clavier utilise des sous programmes dénommés : sous-programme de gestion du clavier et sous-programme visual de gestion de l'afficneur. La seconde partie du programme principal fait appel aux mémoires de stockage des informations géographiques. Le programme cherche alors dans sa carte géographique mémorisée les coordonnées cartésiennes des points de départ et d'arrivée par l'intermédiaire du sous-programme de recherche du code adresse intitulé sous-programme "code AD" dont l'organigramme est représenté sur la Fig.3. L'utilisateur doit répondre aux questions (adresse de départ et adresse d'arrivée) dans le format suivant 128xxRUExxDExxCOURCELLES ou encore ARCx xDExxTRIOMPHE Les séparations symbolisées par des x sont nécessaires pour découper les parties d'adresse d'une façon correcte. Elles sont éliminées par le programme pour ne conserver qu'une suite de lettres dont il cherche les coordonnées en mémoire. Les adresses sont d'abord classées par catégories suivant les emplacements. A l'intérieur de ces sous-ensembles, les adresses sont classées par ordre alphabétique puis par numéros croissants. A la suite de chaque adresse, le code mémorisé contient les informations suivantes : coordonnées cartésiennes de 11 adresse dans le plan; rapidité de la rue selon son importance; renseignements complémentaires. Les lieux géographiques particuliers sont classés par ordre alphabétique et à la suite de chaque adresse figurent les coordonnées cartésiennes (X et Y) et diverses informations complémentaires. En ce qui concerne les transports en commun, les noms des stations sont classés par catégorie ( Autobus, R.E.R., S.N.C.F., Métro. etc .....) ; à l'intérieur de ces catégories, les noms des stations sont classés par ordre alphabétique et, à la suite de chaque nom, sont inscrits: les coordonnées (X,Y) de la station, un coefficient de rapidité de la ligne , le numéro de la ligne à laquerle appartient la station considérée etc On voit, sur la Fig.3 que la détermination d'un trajet faisant appel aux transports en commun est beaucoup plus simple que celle d'un trajet de pièton ou d'automobiliste.Après exécution du sous-programme "code AD" les coordonnées cartésiennes des points de départ et d'arrivée sont disponibles. Le microprocesseur fait alors la différence arithmétique entre les codes de position des adresses d'arrivée et de départ, coordonnées par coordonnées, (direction X puis direction Y) afin de déterminer la position du vecteur directeur VB et la priorité de chaque direction par rapport à l'autre. Si, par exemple l'adresse de départ est : Y6,X3 et l'adresse d'arrivée : Y2 X6, les coordonnées du vecteur direction VB seront : AD.Départ - AD Arrivée = Y (2-6),X(6-3) soit Y -4 et X 3 . La direction +X, plus faible en valeur absolue sera moins prioritaire que la direction -Y. C'est ce vecteur VB qui vient d'être déterminé que le microsystème prendra comme valeur de consigne tout au long de sa recherche d'itinéraire. La troisième partie du programme principal détermine l'itinéraire à suivre par étapes successives et au fur et à mesure que les buts provisoires sont atteints (carrefours Ci et C2 sur la Fig.1). Le découpage de l'itinéraire déterminé est fonction de la taille de l'affichage de l'appareil. Ce découpage est symbolisé par un sousprogramme ORIENT dont l'organigramme est représenté sur la Fig.4. On notera que lorsqu'il existe deux possibilités de route à suivre, l'indétermination est levée par la recherche du carrefour suivant sur chacun des deux itinéraires,à la suite de quoi, le système choisit la route qui est la plus proche du vecteur directeur sur l'ensemble des deux parcours, d'après le vecteur correspondant sur chaque route à la somme vectorielle des sous-vecteurs reliant les deux carrefours. L'utilisateur peut, à tout moment, demander l'affichage en clair (par exemple "rue de l'étang) de la dénomination du prochain élément de l'itinéraire. Le programme principal s'arrête dès que l'adresse d'arrivée est atteinte. L'appareil se place alors dans un état d'attente vis-à-vis de l'utilisateur, qui peut demander un autre itinéraire ou un autre moyen de locomotion. Avant la fin du programme principal, les informations requises sont affichées à l'aide d'un sousprogramme VISUAL qui dépend, bien entendu du mode de visualisation des informations. De préférence, le dispositif d'affichage utilisé est un dispositif de moyenne dimension à faible encombrement faisant appel à une matrice de diodes électroluminescentes, dont un exemple de réalisation est donné ci-après en regard de la Fig.5, qui est un schéma de principe. La matrice d'affichage 51 est constituée, par exemple de 512diodes ou points lumineux répartis en 16 lignes de 32 points. Le montage de cette matrice avec le microprocesseur 1 (Fig.2) est possible; la liaison entre les deux éléments s'effectuant d'une part grâce au bus de données 7 et, d'autre part, gr e aux six fils de poids faible du bus d'adresses 6 et enfin, par quelques signaux de service tels que LOAD et INTIS . La synchronisation des transferts est assurée par une horloge 52.Les bus sont connectés à l'affichage 51 à travers une mémoire tampon 53 et un interface 54 sous la dépendance d'une logique de multiplexage 55 qui permet de réduire le nombre des boitiers logiques ainsi que la consommation des diodes composant la matrice 51. Le microprocesseur 1 génère l'ordre R/W qui, combiné avec l'ordre issu du décodage des adresses hautes du bus d'adresse (binon 6 à binon 15) forme l'ordre LOAD dans le comparateur 56 et la porte ET 57. Durant cette période, l'information codée sous forme d'un octet est envoyée sur le bus 7. Les compteurs de l'étage 55 se positionnent alors à l'adresse décrite sur les six fils d' adresses basses du bus 7 et la mémoire 53 stocke le contenu du bus de données. Le système redevient autonome dès la redescente du signal LOAD. Les impulsions provenant de l'horloge incrémentent les compteurs de l'étage 55 et les informations qui en sont issues sont décodées et transmises à la mémoire de génération de caractères. On obtient ainsi une description totale de la matrice,en pas à pas, à une fréquence fixée pour éviter les perturbations optiques. La Fig.6, représente une évolution du schéma de principe de la Fig.5 vers une solution pratique et est constituée par le schéma-bloc du système d'affichage. On y retrouve des éléments précédemment mentionnés et notamment l'écran 51, la logique de multiplexage 55 et la mémoire de génération des informations 53, le bus de données 7 et le bus d'adresse 6. La mémoire 53 est reliée à la matrice par un interface 541 de puissance à 8 entrées-sorties qui avec les conducteurs constitue un "bus de commandes horizontales 59. Le bus de commandes verticales 60 comprend 64 conducteurs dont chacun est connecté à un interface de puissance 542. L'interface de puissance est composé de "drivers sources" ou transistors de puissances qui ont pour but de délivrer les courants nécessaires à l'allumage des diodes.Ces courants peuvent atteindre jusqu'à 500 mA par voie et sont limités par des résistances (non représentées) De même l'interface 541 est constitué par des drivers de puissance. Le bloc de multiplexage 55 reçoit les informations du bus d'adresses S, les gère et les transmet d'une part au décodeur"vertical" 58 et d'autre part à la mémoire de génération de caractères 53. Les ordres HORLO et d'écriture R/W proviennent d'une part de l'horloge 52 et, d'autre part du microprocesseur 1. Le bloc de décodage 58 permet de décoder les six fils codés en binaire 61 et de les transmettre sous la forme de 64 ordres différents à l'interface 542 correspondant. L'ordre INHIB provient du microprocesseur par une liaison spécialisée et il permet, par action sur le décodeur d'éteindre complètement les diodes. Le bloc mémoire 53 stocke les données provenant du bus de données 7 aux adresses définies par les informations provenant du bloc 55 par la liaison 52. La logique de multiplexage est représentée plus en détail sur la Fig.7. Le bloc 55 est avantageusement réalisé à partir de circuits intégrés du commerce utilisant les technologies MOS ou T.T.L. Les six binons d'adresse de poids faibles sont délivrées sur le bus d'adresse 6. Les six fils correspondants attaquent deux compteurs 63 et 64 prépositionnables. dont les sorties sont reliées d'une part à la mémoire 53 et d'autre part à des décodeurs 65 à 69, les sorties des décodeurs 66 à 69 étant connectées au bus 60. Le cycle d'écriture dans la matrice est le suivant : le microprocesseur donne l'ordre R/W qui combiné avec les adresses hautes du bus d'adresse forment l'ordre LOAD qui est acheminé par le conducteur 70 sur les compteurs 63 et 64 et sur la mémoire 53. Pendant ce temps, un octet est transféré sur le bus de données 7. Les compteurs 63 et 64 se positionnent à l'adresse décrite par les six fils d'adresses basses (bus 6) et le circuit mémoire 53 stocke l'octet à l'adresse indiquée. Après redescente du signal load, le système redevient autonome. Les impulsions d'horloge HORLO incrémentent les compteurs 63 et 64. Les informations disponibles en sortie sont décodées en 65 d'une part et dans les décodeurs 66 à 69 .Après amplification des signaux comme expliqué précédemment, les signaux sont appliqués sur la matrice à raison de soixante quatre pour le balayage vertical et de huit pour le balayage horizontal. La temporisation ainsi introduite évite les phénomènes optiques parasites résultant du multiplexage. Le guide topographique qui viert d'être décrit permet donc de déterminer très rapidement et sans effort particulier de l'utilisateur un trajet quelconque dans la région couverte par le guide. Il présente l'avantage d'être portable parce que de dimensions réduites et à alimentation autonome. Il va de soi que de nombreuses variantes peuvent être introduites, notamment par substitution de moyens techniques équivalents, sans sortir pour celà du cadre de l'invention. C'est ainsi qu'il est possible de prendre en compte le problème des vitesses de déplacement, notamment dans le cas d'un déplacement à pied ou de l'utilisation de transports en comrnun à trajet spécialisé tels que le train ou le métro dont les vitesses sont exactement déterminées. Pour lts piètons, la longueur du trajet étant connue par l'assembla3e des sous vecteurs, le temps nécessaire peut être déterminé par la multiplication de la distance par une vitesse moyenne. Il est possible, pour les parcours routiers d'ajouter une mémoire vive susceptible de recevoir des informations sur l'état du réseau et de faire calculer par le microprocesseur le trajet le moins long en temps. On remarquera enfin que l'affichage par diodes, avec son système de commande, devient réalisable pour la figuration graphique analogique, d'une carte, d'un dessin, ou d'une représentation géographique, dans le guide selon l'invention. A cette fin, on peut utiliser des afficheurs constitués de réseaux plans de diodes, dont les pattes de connexion sont rassemblées sur l'une des faces du réseau et orientées perpendiculairement à son plan. REVENDICATIONS 1. Guide topographique, caractérisé en ce qu'il comporte des moyens (3) de mémorisation d'informations relatives à une région couverte par le guide et comprenant au moins les positions et points de bifurcation possible, un clavier (4) d'introduction de commandes de demandes d'itinéraires comprenant au moins un point de départ et un point d'arrivée, des moyens (1) pour déterminer automatiquement un itinéraire demandé à partir de commandes introduites audit clavier et d'informations contenues dans lesdits moyens de mémorisation, et un tableau (5) d'affichage de l'itinéraire ainsi déterminé sur une carte de ladite région, lesdits moyens (l) pour déterminer l'itinéraire demandé comprenant au moins des moyens de sélection entre les points de bifurcation possible autour du point de départ, en fonction de l'orientation relative de vecteurs joignant entre eux les points de bifurcation, le point de départ et le point d'arrivée. 2. Guide selon la revendication 1, caractérisé en ce que les coordonnées cartésiennes des points de bifurcation sont inscrites en mémoire, les moyens de détermination d'itinéraire consistant en un microprocesseur (1) qui procède à partir du point de départ à un balayage de la région environnante pour déterminer le premier carrefour le plus proche, dans la direction la plus proche de celle du vecteur boussole reliant le point de départ au point d'arrivée. 3. Guide selon l'une des revendications 1 ou 2, caractérisé en ce qu'en cas d'indétermination entre deux carrefours, le microprocesseur est programmé pour scruter dans les deux voies possibles le carrefour suivant et pour choisir sur chacun des deux trajets celui dont le vecteur somme vectorielle des deux sous-vecteurs reliant les deux carrefours, est le plus proche en direction du vecteur boussole. 4. Guide selon l'une des revendications précédentes, caractérisé en ce que lors de la détermination d'un sous-vecteur reliant deux carrefours, on ne prend en compte que la composante en X ou en Y la plus élevée en valeur absolue, qui indique le sens du déplacement, la direction de celui-ci étant donnée par celle de la voie empruntée par le trajet. 5. Guide selon l'une quelconque des revendications précédentes, caractérisé en ce que le clavier est du type "non encodé" et que son exploration est effectuée par "balayage de rangées". 6. Guide selon l'une quelconque des revendications précédentes, caractérisé en ce que la mémoire de données (3) est chargée avec les coordonnées cartésiennes des éléments géographiques fixes tels que rues, monuments, stations, dans un ordre déterminé, qui figurent à la suite de chaque adresse, des informations complémentaires étant inscrites à la suite des coordonnées. 7. Guide selon l'une quelconque des revendications précédentes, caractérisé en ce que le dispositif d'affichage (5) est constitué par une matrice de diodes électroluminescentes de moyenne dimension et à faible encombrement. 8. Procédé pour tracer un trajet entre deux points sur une carte ou plan contenu en mémoire, dont une partie au moins peut être affichée sur un écran, caractérisé en ce qu'il consiste à introduire dans la mémoire d'un microsystème informatique les adresses du point de départ et du point d'arrivée, à déterminer dans le système le vecteur directeur ou vecteur boussole reliant le point de départ au point d'arrivée, à réaliser, à partir du point de départ, un balayage des carrefours environnants et à sélectionner le sous-vecteur reliant le point de départ au premier carrefour du trajet qui est le plus proche en direction du vecteur boussole, ce premier carrefour étant ainsi sélectionné, à réaliser à partir de celui-ci un balayage pour déterminer le second sous-vecteur reliant le premier carrefour au carrefour suivant dans la direction la plus proche du vecteur boussole, à recommencer la même opération jusqu'à ce que le point d'arrivée soit atteint, le vecteur boussole étant la somme géométrique des srus- vecteurs qui constituent la décomposition de celui-ci sur les voies existantes.