FR 2482740 A1 19811120 FR 8106879 A 19810406 2X8274o T'invention part d'un dispositif pour l'or=ima lisation de données et/ou de programmes pour des appareils de commande programmés, notamment pour la commande de l'allumage, de l'injection de carourant ou bien les processus de changementsde c vitesse sur des véhicules automobiles, avec au moins une mémoire de programmes et une mémoire de données avec un contenu suscep- tible d'être modifié, et qui est susceptible de recevoir le programme et les données de l'appareil de commande, le disposi- tif d'optimalisation contenant cette mémoire étant relié à l'ap- pareil de commande. Pour le développement, la correction et la pour- suite du développement de données et de programmes d'appareils de commande programmés, notamment d'appareils de commande program- més avec des micro-calculateurs, il est connu d'utiliser, soit les systèmes de développement offerts par les fabricants de micro- calculateurs, soit un calculateur plus important comme calcula- teur principal. Un tel système de développement peut par exemple 8tre obtenu dans le commerce sous la désignation M68 SDS3M de la firme Motorola. les systèmes connus comportent un grand nom- bre de moyens auxiliaires et de possibilités de variations, mais du fait du grand nombre de leurs groupes constitutifs, ils ne conviennent que pour une mise en oeuvre en laboratoire. Il est toutefois apparu que souvent le besoin se faisait sentir d'un appareil plus simple qui permette de modifier le programme ou les données d'un appareil de commande équipé d'un micro- calculateur à l'emplacement de mise en oeuvre de cet appareil. Ceci est plus particulièrement le cas pour l'allumage, l'inJec- tion ou bien la commande des vitesses,commandés par micro- calculateur dans un véhicule automobile. L'invention a pour but de répondre à ce besoin particulier et concerne à cet effet, un dispositif d'optimalisa- tion caractérisé en ce qu'il est prévu un dispositif de commuta- tion de codage pour modifier pas à pas le programme et/ou pour modifier pas à pas les données pendant le fonctionnement de l'appareil de commande. Le dispositif conforme à l'invention défini ci- dessus présente par rapport aux solutions connues l'avantage qu'en tant qu'appareil portatif, il permet d'effectuer à l'em- placement de mise en oeuvre de l'appareil de commande commandé par microcalculateur, des modifications simples du programme 2.,- - 24827'O ou bien des données de ce micro-calculateur pendant le fonction- nement de celui-ci. De ce fait, une optimalisation de paramè- tres, de courbes caractéristiques, de champs caractéristiques d'un tel appareil de commande pendant le fonctionnement est facilement possible, car les répercussions sont immédiatement perceptibles. Grâce aux modifications de programmes par l'inter- médiaire d'installations de commutation de codage, on peut, par des modifications pr-eprogrammées du programme de ces ins- tallations, obtenir un maniement plus simple même par des per- sonnes qui ne sont pas familiarisées avec la programmation. D'autres caractéristiques de l'invention per- mettent d'envisager d'autres formes avantageuses et des amélio- rations du dispositif défini ci-dessus, de sorte que sous la forme de systèmes de développement portables, des modifications ou bien plus profondes, ou bien présentant plus de variations, peuvent être effectuées dans le programme et dans les données. Du fait qu'il s'agit d'un appareil indépendant, ceci est égale- ment possible pendant le fonctionnement de l'appareil de com- mande, et de plus il subsiste la possibilité du fonctionnement en laboratoire pendant lequel des appareils périphériques oné- reux peuvent 9tre raccordés en supplément, sans qu'il soit toutefois possible de leur assureèr un fonctionnement suffisant. A c8té des possibilités qu'elles ouvrent pour l'évolution et l'amélioration de l'objet de l'invention défini ci-dessus, ces autres caractéristiques permettant de constituer un système de développement portable, ont leur importance inventive pro- pre. D'autres caractéristiques de l'invention per- mettent d'envisager d'autres formes avantageuses et des améliora- tions du dispositif précédemment défini, ainsi que des combinai- sons avantageuses avec le système de développement précédemment mentionné. Il est particulièrement avantageux d'associer à la mémoire de programmes et de données qui revêt la forme d'une mémoire de travail non volatile, une seconde mémoire en parallèle, l'une de ces mémoires assurant le programme et les données pour l'appareil de commande, tandis que l'autre mémoire est disponible pour la reprogrammation. la possibilité d'un échange de données entre ces mémoires, est également particulièrement avantageuse. L'invention va être expliquée plus en détail en se référant à deux exemples de réalisation représentés sur les 3.- dessins ci-joints, dans lesquels g - la figure 1 représente un premier exemple de réalisation de l'invention avec la possibilité de modification de programmes par l'intermédiaire d'installation de commutation de codage, - la figure 2 représente un second exemple de réalisation de l'invention dans une réalisation élargie saus la forme de système de développement. Le premier exemple de réalisation représenté sur la figure 1, se compose de deux parties: l'unité de mémoire , qui remplace totalement ou partiellement la mémoire de pro- grammes et de données du microprocesseur dans l'appareil de com- mande 11, le microprocesseur non représenté plus en détail dans l'appareil de commande, coopérant directement avec l'unité de mémoire 10 et l'unité de contr8le 12 qui permet de charger, de lire ou de modifier le contenu de l'unité de mémoire 10 et qui est reliée à celle-ci par l'intermédiaire d'un emplacement de coupure sériel 13. Cet emplacement de coupure est de préfé- rence un emplacement de coupure normalisé W24 ou bien RS 232, comme cela est connu à partir de l'état de la technique initia- lement indiqué. Les deux parties 10, 11 se trouvent à l'emplace- ment de mise en oeuvre de l'appareil de commande 11 et sont susceptibles d'être utilisées pendant son fonctionnement. Si l'appareil de commande 11 est par exemple un appareil de comman- de électronique avec un micro-calculateur dans le véhicule auto- mobile, les deux parties 10, 12 du dispositif d'optimalisation peuvent être logées de préférence dans deux bottiers, l'unité de mémoire 10 étant logée dans le bottier de commande 11 et l'unité de contr8le 12 au voisinage de l'opérateur, c'est-à-dire par exemple auprès du siège du conducteur. La dépense correspondant au câble de liaison relativement long nécessaire à cet effet, se trouve sensiblement réduite du fait de l'emplacement de cou- pure sériel 13, et la sécurité contre les pannes est augmentée. L'unité de contr8le 12 contient un micro-calcula- teur 14 auquel sont raccordés une installation de commutation de codage 18 constituée de trois commutateurs d'échelons rotatifs , 16, 17, un clavier 19, un codeur PROM 20, un dispositif d'af- fichage (Display) 27, ainsi qu'une mémoire (PROM) 21 pour emmaga- siner des informations pour l'affectation des adresses et des données. 24827 0 Dans l'unité de mémoire 10 se trouve un autre micro-calculateur 22 auquel sont raccordées trois mémoires RAM 23 à 25. Ces mémoires doivent être statiques et non volatiles, ou bien munies de batteries tampon, afin de ne pas perdre leur contenu lors des chutes de tension ou bien lors de la coupure de la tension d'alimentation, Les deux mémoires 24, 25 sont re- liées à l'appareil de commande 11 par l'intermédiaire d-tun dis- positif de commutation 26. La commutation du dispositif de com- mutation 26 s'effectue par l'intermédiaire du micro-calculateur 22. le mode de fonctionnement du dispositif qui vient d'être décrit réside en ce que, au début d'une optimali- sation, c'est-à-dire d'une modification de données ou de pro- grammes, le programme à optimaliser est introduit parallèlement dans les mémoires 24, 25 à l'aide-du codeur PROM. Les deux micro-calculateurs 14, 22 assurent alors le trafic des données entre l'unité de contr8le 12 et l'unité de mémoire 10. Par l'intermédiaire du commutateur 26 l'une des deux mémoires 24, -25, selon la figure 1, la mémoire 24, est alors reliée à l'ap- pareil de commande Il et délivre le programme ou les données pour le microprocesseur travaillant dans cet appareil, Par l'intermédiaire du dispositif de commutation de codage 18, des modifications de programmes ou bien de données, peuvent être effectuées dans la mémoire 25, non reliée à l'appareil de comman- de. Par chaque position d'un commutateur à échelons rotatif 15 à 17 dans le dispositif de commutation de codage 18, une modifi- cation de programme déjà précédemment établi est codée, c'est- à-dire que chaque position de ce commutateur à étage rotatif est associée à un domaine d'adresses fixe dans PROM 21, cette association s'effectuant par l'intermédiaire du microprocesseur 14. Ce microprocesseur 14 transmet alors les données déposées sous ces adresses à la mémoire 25 et modifie en conséquence, le programme de celles-ci. Dans ce cas, à une position du commuta- teur, peut être associée, aussi bien dans le cas le plus simple, la modification d'une valeur unique que la modification d'une courbe caractéristique ou la modification d'un champ de courbes caractéristiques. Dans le cas d'une courbe caractéristique. par exemple, cette courbe caractéristique peut être modifiée échelon par échelon par l'intermédiaire du commutateur d'échelons rota- tif ou du commutateur d'échelons associé. Ceci s'effectue notam- - 4 8 2 1O ment en ce que dans le domaine d1adresses intéressé par.N-e codage du commutateur à échelons rotatif dans PROM 21. sous quelles adresses dans la mémoire 25 doivent être exer- cées des modifications, sous quelles adresses de mémoire les données à modifier pourront être trouvées, et combien de données devront être modifiées pour cette position du commutateur. Alors, un ordre est manuellement donné au micro-calculateur 14 ou bien 22, par l'intermédiaire du clavier 19, de commuter le commuta- teur 26e le microprocesseur reçoit maintenant dans l'appareil de commande Il son information à partir de la mémoire 25 avec un programme modifié ou bien avec des données modifiées, Comme cela a lieu pendant le fonctionnement, une répercussion posi- tive ou négative peut être immédiatement constatée, dans le cas d'un véhicule automobile par exemple par une accélération ou un ralentissement, ou bien encore par une marche du moteur meilleure ou moins bonne, Les valeurs, les courbes caractéris- tiques ou bien les champs caractéristiques peuvent être ainsi modifiés échelon par échelons une commutation sur le programme modifié s'effectuant après chaque modification pas à pas. La réalisation en double de la mémoire 24, 25 est nécessaire, enfin qu'en cas d'un reéultat plus mauvais provoqué par une modification de programme, on puisse revenir à la programmation mise en place précédemment. Dans ce cas, le commutateur 26 est actionné sans qu'une nouvelle programmation ait eu lieu.-Au lieu d'une commutation manuelle du commutateur 26, cette commutation peut bien entendu, s'effectuer également de façon automatique - grâce au micro-calculateur 22, par exemple après chaque modifica- tion de programmes. Dans ce cas, la commutation doit être, de préférence prévue en synchronisme avec le micro-processeur dans l'appareil de commande 119 de façon qu'un programme en cours ne soit pas interrompu à un endroit défavorable pour l'appareil à commander. La troisième méboire 23 sert à mémoriser des modifications de programme accomplies, pour pouvoir rendre iden- tiques l'un à l'autre, les contenus des mémoires 24, 25 après qu'une programmation positive ait été effectuée. Cette troisième mémoire ouvre en outre la possibilité de charger dans la méloire 24, 25, des programmes différents et de modifier ces programmes individuellement. Une troisième possibilité réside dans l'exploi- tation ultérieure en laboratoire des modifications effectuées. 6.-. 24827 -0 Si une programmation optimale est trguvée, ce programme optimalisé en provenance de l'une des mémoires 24, 25 est à nouveau chargé dans un nouveau E.NO0M par le codeur PROM 20, pour être maintenu pendant la période. Le mode d'action d'un tel codeur PROM 20 est également connu à partir de l'état de la tech- nique initialement indiqué. Il est par exemple commercialisé en tant qu'accessoire sous la désignation MEX68 PP3 "X". Pour facilitez la manoeuvre vu bien pour per- mettre la manoeuvre également dans la programmation d'opérateurs non compétents, de préférence à chaque valeur caractéristique du moteur (par exemple l'angle d'allumage enmarche à vide, l'en- richissembnt du mélange en pleine charge et au démarrage à froid, le champ caractéristique d'allumage) est associé en propre, un commutateur à échelons rotatif 15 à 17, et chaque position de ce commutateur est associée à la valeur physique souhaitée (par exemple degrés d'arbre de vilebrequin, ms). Grâce à cette mani- pulation, des erreurs de maniement grossières peuvent être ex- clues. Dans le second exemple de réalisation indiqué sur la figure 2, une extension sous la forme de système de dé- veloppement pour des programmes, est représentée et décrite. Tandis que les systèmes de développement connus sont constitués d'un grand nombre de composants individuels et sont conçus pour le fonctionnement en laboratoire, le présent système de dévelop- pement est en premier lieu prévu pour fonctionner à l'emplacement de mise en oeuvre de l'appareil de commande 11, donc par exem- ple pour l'utilisation et la mise en oeuvre dans un véhicule automobile. A cet effet, l'ensemble de l'appareil doit être réalisé de façon portable, de préférence dans un bottier, et comporter des raccordements pour l'alimentation en tension cor- respondant aux nécessités et à l'emplacement de mise en oeuvre, par exemple,dans un véhiculera une tension continue de 12 Volts. Dans le système de développement, un programme de systèmes est contenu dans une mémoire(PROM) 31 pour le micro- calculateur principal 30. Un codeur PROM 20, un clavier 19, un affichage 27 et un dispositif de commutation de codage 18, sont raccordés à cette mémoire. Les parties constitutives 18, 19, 20, 27 constituent alors le système d'introduction et d'émission 33, qui peut, de préférence, être logé avec la partie calculateur 34 W dans un bottier, mais également, conformément à la figure 1, 48'W F0 être disposé près de l'opérateur, tandis que la partie calcula- teur 34 est logée au voisinage de l'appareil de commande, dans un bottier distinct, Par l'intermédiaire de 4 dispositions de bornes 35 à 38, des appareillages périphériques supplémentai- res peuvent 8tre raccordés pour le fonctionnement en laboratoire au microcalculateur principal 30. De tels appareillages sont par exemple un analyseur logique, un appareillage de visualisa- tion, un disque souple, une imprimante, et un traceur de cour- bes. Le micro-calculateur principal 30 est relié par l'intermé- diaire de la mémoire de code de la machine prévue en double 24, 25 et du commutateur 26 avec un micro-calculateur secondaire sur lequel se déroulent les fonctions pour l'appareil de commande 11 au lieu de se dérouler dans le micro-calculateur prévu dans cet appareil. Au calculateur principal 30, est rac- cordée, à c8té des mémoires 24, 25 selon la figure 1, la mém- moire 23. La mémoire de code de machine permet la translation des ordres introduits dans le code machine. A cet effet, peu- vent être prévues, dans le micro-calculateur principal 30, des programmes de systèmes de langages plus élevées, ou de langages assembleurs. le micro-calculateur secondaire 40 est relié par l'intermédiaire d'un câble émulateur 41 avec l'appareil de commande 11. Une telle liaison est connue à partir de l'état de la technique initialement indiqué, ou bien par exemple à par- tir de "Electronics",, 13 Mars 1980, pages 168, 169. Une mémoire de code initial (revêtant la forme d'une RAM) 42 est également raccordée au micro-calculateur principal 30. Le mode d'action du système de développement qui vient d'être décrit, à l'emplacement de l'appareil de com- mande, notamment dans le véhicule automobiles est possible du fait qu'il est portable, susceptible d'être raccordé directe- ment à la tension disponible à cet emplacement, et en ce qu'il offre sans appareillages auxiliaires supplémentaires, toutes les fonctions nécessaires. L'indépendance d'un appareillage à disque souple, notamment inadmissible dans un véhicule automo- bile, est particulièrement importante. Cela est permis par des programmes de systèmes résidant dans le PROM 31 ainsi que par des programmes d'utilisateurs résidant dans la RAM 42 avec batteries tampons. Les programmes d'utilisateurs sont déjà précédemment introduits en laboratoire et restent maintenus sans raccordement au réseau, jusqu'à ce que l'appareil soit -----t, 8.B 24827 iO par exemple dans un véhicule automobile, raccordé à la batterie. Par l'intermédiaire du codeur PROM 20, les programmes sont lus conformément à la figure 1 et/ou codés. Vis-à-vis de la possi- bilité en outre offerte, d'effectuer des modifications de pro- grammes par l'intermédiaire de l'installation de commutation de codage 18, déjà mentionnée précédemment, il s'offre désormais la possibilité supplémentaire d'effectuer par l'intermédiaire du clavier 19, d'autres modifications de programmes quelcon- ques. Dans ce cas, des programmes peuvent également recevoir une configuration nouvelle dans la mémoire de code initial 42 et dans les mémoires de code machine 24, 25, ou bien des zones de mémoires déterminées peuvent être soumises à des opérations mathématiques. Ceci s'effectue principalement d'après les procé- dés connus en fonction des prescriptions respectives et des manuels d'utilisation des fabricants de microprocesseurs. Sur l'affichage 27 l'introduction et fa modification peuvent être surveillées. Conformément à la figure 1, ces modifications peu- vent désormais également lors des modifications de programmes, être introduites par l'intermédiaire du clavier 19 dans l'une des RAM 24, 25 tandis que l'autre RAM tient entre temps disponibles les données pour le fonctionnement de l'appareil de commande 11. Après la reprogrammation, la commutation peut être prévue com- me dans la figure 1. Lors de la mise en oeuvre en laboratoire, le système peut être complété par des appareils périphériques plus confortables par l'intermédiaire des dispositifs de bornes 35 à 38 qui, de préférence, sont réalisés sous la forme d'emplace- ments de coupure V24. Un calculateur plus impcrtant peut aussi bien être raccordé. Les programmes modifiés à l'emplacement de mise en oeuvre peuvent alors être lus pour archivation- sur une mémoire externe, 'par exemple dans des appareils à disques sou- ples. De la même façon la lecture des programmes peut s'effec- tuer avant la mise en oeuvre sur l'appareil de commande. D'au- tres affinages et améliorations du programme, pour lesquels une mise en oeuvre sur l'appareillage de commande n'est pas absolument nécessaire, peuvent être ici prévus avec le mSme ap- pareil, toutefois, avec des possibilités multiples. Dans une forme non représentee plus en détail, le système de d6veloppement comportesuivant les besoins, des programmes de systèmes pour l'introduction et la orrection des programmes de sysemes pour l'introduction et la correction des 4 827 té programmes dans le langage assembleur, des programmes assembleurs ou bien des programmes pour des langages de programmes plus éle- vés, des programmes de systèmes pour la recherche des erreurs (DEBUG), des programmes d'utilisateurs pour lecture et écriture de supports de données des programmes de manipulation de mé- moires pour affichage, mise en place, remplissage et décalage de contenus de mémoires sur la totalité du domaine de mémoires de système, des programmes de systèmes pour raccordements à des installations de calculs externes et entre autres, des installa- tions connues pour l'amélioration du confort, Naturellement, il est également possible de prévoir la réalisation sous forme de systèmes de développement, dans une version plus simple sans installations de commutation de codage 18. 10.- 24827 '0O R E V E N D I C A T I 0 N S 1.- Dispositif pour l'optimalisation de données et/ou de programmes pour des appareils de commande programmés, notamment pour la commande de l'allumage, l'injection de carbu- rant ou bien les processus de changement de vitesse sur des véhicules automobiles, avec au moins une mémoire de programmes et une mémoire de données avec un contenu susceptible d'être modifié, et qui est susceptible de recevoir le programme et les données de l'appareil de commande, le dispositif d'optima- lisation contenant cette mémoire étant relié à l'appareil de commande, dispositif d'optimalisation caractérisé en ce qu'il est prévu un dispositif de commutation de codage (18) pour mo- difier pas à pas le programme et/ou pour modifier pas à pas les données pendant le fonctionnement de l'appareil de commande (11). 2.- Dispositif selon la revendication 1, carac- térisé en ce que le dispositif de commutation de codage (18) contient au moins un commutateur à échelons (15 à 17). 3.- Dispositif selon la revendication 2, carac- térisé en ce que le dispositif de commutation de codage est associé à une zone d'adresses fixe d'une mémoire d'ordre (21), grace à laquelle la modification souhaitée dans la mémoire de programmes et de données (24, 25) est susceptible d'être donnée à l'avance en fonction de la position de commutation du disposi- tif de commutation de codage. 4.- Dispositif selon l'une quelconque des re- vendications 1 à 3, caractérisé en ce qu'il est prévu un cla- vier d'ordre (19). 5.- Dispositif selon l'une quelconque des re- vendications 1 à 4, caractérisé en ce qu'il est prévu une autre mémoire (25 ou bien 24) avec un contenu susceptible d'être mo- difié, l'une des mémoires (24 ou bien 25) étant respectivement susceptible d'Vtre reliée à l'appareil de commande (11) par l'intermédiaire d'un dispositif de commutation, tandis que l'autre mémoire est disponible pour le changement de programme. 6.- Dispositif selon la revendication 5, carac- térisé en ce que les contenus de la mémoire sont réciproquement transmissibles. 7.- Dispositif selon l'une quelconque des re- vendications 5 et 6, caractérisé en ce que la commutation est il susceptiole d'être commandée maiuel!emenxo Dispositif selon lPune quelconque des revn- dications 5 et 6. caractérisé en ce que la commutation est suEs ceptible d'%tre commandée automatiquement notamment après cha- que modification de la mémoireo 9.- Dispositif selon l'une quelconque des reven- dications 1 à 8, caractérisé en ce qu'il est prévu une autre mémoire (23) pour la mémorisation des modifications de programmes ou bien de données. 10.- Dispositif selon l'une quelconque des re- vendications 1 à 9, caractérisé en ce qu'au moins les mémoires (24, 25) sont constituées par des RAM, notamment par des RAM non volatiles. 11.- Dispositif selon l'une quelconque des reven- dications 1 à 10, caractérisé en ce qu'il est disposé dans deux bottiers, le premier de ces bottiers contenant l'uûité de mémoire (10) étant disposé à proximité de l'appareil de commande (11) tandis que le bottier contenant l'unité de commande est disposé à proximité de l'opérateur. 12.- Dispositif selon la revendication 1 9 ca- ractérisé en ce qu'entre les deux bottiers, subsiste un empla- cement de coupure en série (13). 13.- Dispositif selon l'une quelconque des reven- dications 1 à 12, caractérisé en ce qu'un codeur PROM (20) est prévu. 14.- Dispositif selon l'une quelconque des re- vendications 1 à 13, caractérisé en ce qu'il est réalisé sous forme de système de développement portable avec des programmes de systèmes emmagasinés dans au moins un PROM (31) et des program- mes d'utilisateurs emmagasinés dans des mémoires RAN (24, 25); non volatiles, notamment avec batteries tampon, avec un clavier I"or- dres(19) et un dispositif d'affichage (32) qui lui est asse- cié, ainsi qu'avec une liaison vers l'appareil de commande (ti) par l'intermédiaire d'un câble émulateur.(41). 15.- Dispositif selon la revendication 14, carac- térisé en ce que le PRON (31) est raccordé à un calculateur principal (30) tandis que les RAM (24, 25) sont raccordées à un calculateur secondaire (40). 16o- Dispositif selon l'une quelconque des re- vendications 14 et 15, caractérisé en ce que pour les applica-- 1 2.- 24827;'0 cations de laboratoire, il est prévu des raccordements supplé- mentaires (35 à 38) pour des appareils périphériques, notamment des mémoires périphériques, des appareils de visualisation, et des imprimantes. 17.- Dispositif selon la revendication 16, ca- ractérisé en ce qu'il est prévu au moins un raccordement supplé- mentaire pour un calculateur périphérique.