FR2918227A1 - Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal. - Google Patents

Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal. Download PDF

Info

Publication number
FR2918227A1
FR2918227A1 FR0756080A FR0756080A FR2918227A1 FR 2918227 A1 FR2918227 A1 FR 2918227A1 FR 0756080 A FR0756080 A FR 0756080A FR 0756080 A FR0756080 A FR 0756080A FR 2918227 A1 FR2918227 A1 FR 2918227A1
Authority
FR
France
Prior art keywords
generating
analog signal
values
variation
value
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
FR0756080A
Other languages
English (en)
Inventor
Philippe Mace
Xavier Guitton
Philippe Benezeth
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to FR0756080A priority Critical patent/FR2918227A1/fr
Priority to TW097122011A priority patent/TWI426368B/zh
Priority to JP2008159935A priority patent/JP4980989B2/ja
Priority to US12/214,939 priority patent/US7760120B2/en
Priority to EP08159004.4A priority patent/EP2009798B1/fr
Priority to CN200810110292.9A priority patent/CN101335511B/zh
Publication of FR2918227A1 publication Critical patent/FR2918227A1/fr
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/06Continuously compensating for, or preventing, undesired influence of physical parameters
    • H03M1/08Continuously compensating for, or preventing, undesired influence of physical parameters of noise
    • H03M1/0863Continuously compensating for, or preventing, undesired influence of physical parameters of noise of switching transients, e.g. glitches
    • H03M1/0881Continuously compensating for, or preventing, undesired influence of physical parameters of noise of switching transients, e.g. glitches by forcing a gradual change from one output level to the next, e.g. soft-start
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/66Digital/analogue converters
    • H03M1/82Digital/analogue converters with intermediate conversion to time interval
    • H03M1/822Digital/analogue converters with intermediate conversion to time interval using pulse width modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Feedback Control In General (AREA)
  • Analogue/Digital Conversion (AREA)
  • Amplifiers (AREA)

Abstract

La présente invention concerne un procédé de génération d'une forme de variation d'un signal analogique généré par un signal PWM dont le rapport cyclique et la période sont paramétrables. On peut ainsi générer un signal dont l'évolution est linéaire dans le temps. Une succession d'étapes de génération d'un signal PWM au cours desquelles des valeurs différentes de période et de rapport cyclique sont appliquées, permettant ainsi de faire varier le signal analogique. Selon un perfectionnement, chaque étape de génération d'un nouveau signal PWM avec des valeurs différentes de période et de rapport cyclique est appliquée au cours d'intervalles de temps de durée égale.La présente invention concerne également un système de génération d'un signal analogique variable mettant en oeuvre le procédé.

Description

La présente invention concerne un procédé de génération d'un signal
analogique variable généré à partir d'un signal PWM et, un système générant un tel signal.
Il est connu des générateurs de tension continue à partir d'un convertisseur numérique analogique, DAC en abrégé. Une unité centrale commande le convertisseur en introduisant dans un registre d'entrée une valeur numérique d'une précision déterminée. Si la valeur s'exprime sur 8 bits, 256 valeurs sont possibles et de ce fait, la précision sera de 1/256, c'est-à-dire 0.4 %. Si par exemple, la tension varie de 0 volts à 10 volts, la différence de tension d'une valeur à une autre est de 0.04 volt. On trouve couramment dans le commerce des DAC avec des registres 16 bits, l'unité centrale peut introduire 65536 valeurs différentes et la précision passe à 0.0015 %. En reprenant le même exemple que précédemment avec une tension variant de 0 volts à 10 volts, deux valeurs consécutives présentent un écart de 0,15 millivolt. Les DAC sont d'autant plus onéreux que la précision est grande et que le temps de conversion est rapide. Si on n'a pas besoin d'un temps de conversion très rapide, les signaux PWM (en Anglais Pulse Width Modulator ) permettent de fournir une tension analogique à partir d'une grandeur numérique. Un signal PWM est un signal numérique périodique dont la durée à 1 du signal est variable au sein de la période totale. La durée du signal à 1 est appelée le rapport cyclique. Une horloge de base fournit la période de base. Prenons par exemple un générateur de signal PWM ayant un registre de programmation de 8 bits dans lequel la valeur 1 est programmée, le signal numérique obtenu est à 1 pendant une seule impulsion de base et à 0 pendant les 255 impulsions de base suivante. La sortie numérique du signal PWM est connectée à un réseau intégrateur RC qui va lisser les variations. On obtient alors une valeur continue qui peut être amplifiée pour commander un moteur par exemple. Ce type de montage se trouve couramment dans des systèmes de régulation, pour moduler l'éclairage d'une lampe ou encore pour commander la vitesse d'un ventilateur. On trouve ce dernier exemple notamment dans les décodeurs de télévision. En effet, ces appareils électroniques consomment une importante énergie en fonctionnement normal. Cette énergie se transforme en chaleur qui se concentre dans les appareils habituellement fermés. Si elle n'est pas évacuée cette chaleur provoque un vieillissement accéléré des composants électroniques finissant par une détérioration irréversible. Pour éviter cela, un ventilateur est disposé à proximité d'ouïes pratiquées dans la coque du décodeur pour accélérer les échanges avec l'extérieur et améliorer le refroidissement. Mais l'utilisation à pleine vitesse d'un ventilateur est bruyante. Si l'appareil est placé dans une chambre, le niveau sonore peut être gênant.
L'expérimentation a montré que ce n'est pas tant la vitesse qui est audible mais la variation de vitesse. Un ventilateur a besoin d'une tension minimale pour démarrer, par exemple 5 volts pour une tension admissible maximale de 10 volts. Si, un tel ventilateur est commandé par un signal PWM, seules les valeurs numériques permettant de générer une tension comprises entre 5 et 10 volts sont utilisables. Pour un générateur de PWM à 8 bits, ces valeurs sont comprises entre 128 et 255, ce qui aboutit à 128 valeurs possibles. De ce fait, la précision avec un tel équipement est de 1 :128, donc 0.8 % sur la gamme des tensions utilisables. Lorsque les valeurs sont introduites dans le générateur de PWM et qu'une tension continue est ainsi produite, le passage d'une valeur à une valeur suivante est audible, surtout lorsque cette variation intervient régulièrement comme c'est le cas si un système de régulation est utilisé. De plus, différents modèles de ventilateurs sont possibles pour un même appareil. Si un asservissement est utilisé, les ventilateurs n'ont pas besoin d'avoir les mêmes caractéristiques, de ce fait le système de commande propre à l'appareil doit posséder une plage de commande étendu et donc une bonne précision sur l'ensemble de cette plage. Une solution consiste à augmenter le nombre de bits pour programmer le rapport cyclique du PWM, par exemple 12 bits, la précision est alors de 0,025%. En considérant les mêmes conditions que précédemment, on aboutit à une précision de 0,05% ce qui convient parfaitement pour réduire l'audibilité des variations. Mais, un générateur de PWM à 12 bits est plus onéreux et est plus long à programmer qu'un générateur PWM utilisant des valeurs sur 8 bits.
La présente invention permet de générer une tension continue à partir d'un signal PWM plus précis sans pour autant augmenter le nombre de bits de programmation du rapport cyclique. Un des objets de la présente invention est un procédé de génération d'une forme de variation d'un signal analogique telle qu'une ligne droite, produit par une succession d'étapes de génération d'un signal PWM ayant une période et un rapport cyclique donnés, ledit signal PWM étant intégré pour produire le signal analogique ; caractérisé en ce qu'à chaque étape de génération, des valeurs différentes de période et de rapport cyclique sont successivement appliquées au signal PWM pour générer la forme de variation. De cette façon, en choisissant une succession de couples formés d'un certain rapport cyclique et d'une certaine valeur de période, on peut générer un signal analogique dont les variations sont moins grandes que si la variation consiste à faire varier uniquement le rapport cyclique. On peut ainsi générer un signal dont l'évolution est linéaire dans le temps Selon un premier perfectionnement, chaque étape de génération comporte une étape d'extraction d'une table enregistrée d'un couple de valeurs de période et de rapport cyclique, l'adresse des couples extraits étant la valeur de commande pour générer le signal analogique. De cette façon, la recherche d'un couple de valeurs au sein d'une table s'effectue rapidement. Selon un autre perfectionnement, chaque étape de génération comporte une étape d'extraction d'une table enregistrée d'un couple de valeurs de période et de rapport cyclique, chaque couple de valeurs étant associé à une valeur numérique. Le couple extrait de la table est celui dont la valeur numérique associée est la plus proche de celle du signal analogique à générer. De cette façon, la table ne contient que des valeurs numériques différentes, évitant ainsi que la table contienne des doublons de valeurs. Selon un autre perfectionnement, les étapes de génération d'un signal PWM sont appliquées au cours de durée égale. De cette façon, la chronologie des étapes s'effectue avec une grande simplicité. Selon une variante, les étapes de génération d'un signal PWM sont appliquées au cours d'intervalles de temps dont la durée est le résultat d'une formule mathématique. De cette façon, il est possible de faire varier la forme de variation ainsi générée à l'aide du temps. Selon une autre variante, les étapes de génération d'un signal PWM sont appliquées au cours de durées variant en fonction de la différence entre la valeur numérique associée extraite de la table et la valeur numérique suivante dans l'ordre de la table. De cette façon, il est possible de compenser l'imprécision de certaines valeurs. Selon un autre perfectionnement, si plusieurs couples de rapport cyclique et de période offrent un résultat identique, le couple ayant la plus grande valeur de période est sélectionné. De cette façon, il est possible d'appliquer des couples de valeurs de période et de rapport cyclique ayant des valeurs de périodes proches, ce qui réduit l'amplitude de certains artefacts. Selon un autre perfectionnement, la grandeur analogique est un signal de commande contrôlant la vitesse d'un ventilateur. Un autre objet de la présente invention est un dispositif de génération d'une forme de variation d'un signal analogique telle qu'une ligne droite, comportant un générateur de signaux PWM dont la période et le rapport cyclique sont programmables et un moyen d'intégration dudit signal PWM pour produire le signal analogique ; caractérisé en ce qu'une pluralité de programmations sont appliquées sur le générateur pour produire la forme de variation, des valeurs différentes de période et de rapport cyclique sont successivement introduites lors de chaque programmation.
D'autres caractéristiques et avantages de la présente invention ressortiront de la description des exemples de réalisation qui vont suivre, pris à titre d'exemples non limitatifs, en référence aux figures annexées dans lesquelles : - la figure 1 représente une coupe d'un appareil électronique selon un exemple de réalisation de l'invention, - la figure 2 illustre un système de génération d'un signal analogique variable selon un exemple préféré de réalisation, - la figure 3 présente un exemple de table de correspondance permettant d'extraire des couples de période et de rapport cyclique afin de générer un signal analogique variable, - la figure 4 présente un autre exemple de table de correspondance contenant des associations entre une valeur décimale et un couple de période et de rapport cyclique, - la figure 5 est une figure représentant une succession d'application de 5 signaux PWM de paramètres différents afin de générer un signal analogique variable. - la figure 6 montre un extrait d'une table de correspondance contenant des associations entre une valeur décimale et une couple de période et de rapport cyclique, dans une zone de faible linéarité, 10 La figure 1 décrit en coupe un appareil électronique, un décodeur de télévision par exemple. L'appareil comporte un circuit imprimé 1 sur lequel des circuits électroniques 2 sont disposés. Un disque dur 3 permet de mémoriser des données, notamment des oeuvres audiovisuelles de longue durée. Les 15 circuits 2 et le disque dur 3 consomment beaucoup d'énergie et dégagent de la chaleur. Par exemple, l'unité centrale du décodeur 2 libère typiquement une énergie d'environ 6 watts. De ce fait, certaines zones du décodeur, marquées en gris sur la figure 1, sont plus chaudes que d'autres. Un ventilateur 4 extrait l'air chaud de la cavité du décodeur. Deux ouïes de ventilation 5 découpées 20 dans la coque du décodeur permettent deux entrées d'air frais. Des flèches courbes montrent le passage des flux d'air. Le nombre, la position et la taille des ouïes sont des éléments importants d'une bonne ventilation, ces paramètres étant bien connus de l'homme du métier. La figure 2 illustre un dispositif de génération D d'un signal analogique 25 permettant de contrôler la vitesse d'un ventilateur V selon un exemple préféré de réalisation. Cette figure est applicable à tout système de génération d'un signal analogique qui reçoit en entrée une valeur numérique et fournit en sortie un signal PWM (acronyme de Pulse Width Modulator . Dans l'exemple de réalisation décrit, l'unité de gestion M est un des circuits 2 de la carte ou une 30 partie d'un circuit 2, sa fonction est de maintenir la vitesse du ventilateur la plus proche possible d'une vitesse de consigne. L'unité de gestion M dispose d'une entrée numérique pour la réception des signaux représentatifs de la vitesse du ventilateur (ces signaux sont généralement appelés Tachy ) et d'une sortie de commande pour le contrôle du ventilateur 4 ou V sur la figure 2. Le signal Tachy est impulsionnel, le nombre d'impulsions par unité de temps détermine la vitesse réelle du ventilateur. En fonction de la valeur du signal Tachy, l'unité de gestion 6 calcule la vitesse du ventilateur V et effectue d'éventuelles corrections pour maintenir la vitesse le plus proche possible de la valeur de consigne. De cette façon, la vitesse du ventilateur est asservie. Dans d'autres systèmes, c'est le signal analogique lui-même qui est asservi, c'est le cas par exemple lorsque l'appareil est un générateur de tension continue réglable.
Un signal PWM est un signal numérique périodique que l'on peut convertir en un signal analogique en utilisant moyen d'intégration, typiquement un filtre passe bas constitué d'une résistance R et d'un condensateur C. Dans l'exemple de réalisation, le signal analogique dont la puissance est amplifiée par un amplificateur A contrôle un ventilateur V. De façon connue en soi, la période est fixe et l'amplitude du signal analogique varie en fonction du rapport cyclique. Selon un exemple de réalisation, le rapport cyclique du PWM est codé sur 8 bits. La tension analogique appliquée peut théoriquement varier entre 0 et 12 Volts, mais généralement le ventilateur ne tourne pas pour une tension inférieure à 5 volts environ, et il devient trop bruyant si on dépasse 9 volts. De ce fait, la plage utile de valeurs de commande du moteur varie pour un signal PWM défini par des valeurs 8 bits entre environ 120 à 180, ce qui constitue une soixantaine de valeurs utiles. Une variation d'une unité entraîne une variation d'amplitude importante, qui devient facilement audible. Il est évident que d'autres valeurs codées par plus ou moins de 8 bits sont possibles, le nombre de bits n'est donné ici qu'à titre d'exemple de réalisation. Le circuit de génération du signal PWM génère un signal numérique périodique dont le rapport cyclique et la période est variable. Une horloge de base fournit un signal carré d'une fréquence de 27 Mhz, puis ce signal est divisé selon un certain rapport pour obtenir la période du signal PWM.
Typiquement, le générateur du signal PWM dispose de deux registres de 8 bits de programmation, l'un pour introduire la valeur PER représentant le nombre d'unités de temps de la période du signal PWM et l'autre pour introduire le rapport cyclique, c'est-à-dire la valeur T_ON représentant le nombre d'unités de temps au cours duquel le signal PWM est à 1 . Donc, pour obtenir un signal PWM ayant au moins une période de temps à 0 , il faut que T_ON soit inférieur strictement à PER. Par exemple, si le registre de période contient la valeur PER = 100 et le registre du rapport cyclique contient la valeur T_ON = 64, alors le signal généré a une fréquence cent fois inférieure à la fréquence de base et la durée au cours de laquelle la valeur numérique est à 1 est trois fois moins longue que celle au cours de laquelle la valeur numérique est à 0 . Si l'on ne modifie pas la valeur de période, le nombre de valeurs possibles pour générer un signal est de 256, mais pratiquement les valeurs utilisables vont de 120 à 180, ce qui ne permet qu'une précision de l'ordre de 1.5% pour régler la vitesse du ventilateur. Selon la présente invention, en modifiant à la fois les valeurs PER et T_ON, on obtient beaucoup plus de 256 valeurs possibles, et donc, on dispose d'un très grand nombre de couples permettant au final de générer autant de valeurs de tension différentes. En respectant la règle : T_ON PER, on obtient : Si PER = 255, alors 256 valeurs sont possible pour T_ON. Si PER = 254, alors 255 valeurs sont possible pour T_ON. Si PER = 253, alors 254 valeurs sont possible pour T_ON.
Si PER = 2, alors 3 valeurs sont possible pour T_ON (0, 1 ou 2). Si PER = 1, alors deux valeurs sont possible pour T_ON (0 ou 1) : le signal est alors continuellement à 0 ou 1 . La valeur nulle pour PER n'a pas de sens.
Le nombre possible de couples est le résultat d'une suite arithmétique, dont la formule est 1 = 255 x ((1 + 255) / 2) = 32640 couples (T_ON / PER) différents. Selon un premier mode simple de réalisation, le système de génération du signal analogique calcule des valeurs sur 16 bits pour commander le ventilateur, sachant que la valeur décimale maximale est 32640. Le système de génération crée une table de correspondance fournissant un couple (T_ON / PER) à appliquer, pour une valeur de commande donnée. Cette table de 32640 valeurs est une liste ordonnées de couples de données (T_ON / PER) de 8 bits. Avantageusement, il est possible de réduire la table pour qu'elle contienne un nombre égal à une puissance de 2, par exemple 2 puissance 14 ou 2 puissance 12. Certains couples (T_ON / PER) disparaissent car leurs valeurs décimales est très proches d'autres valeurs maintenues dans la table. La zone mémoire occupée par la table est ainsi optimisée. Quel que soit la taille de la table, la façon de rechercher un couple (T ON / PER) s'effectue en appliquant à l'adresse la valeur de commande sur 16 bits, 14 bits ou 12 bits, le couple adressé est alors lu et utilisé pour programmer les deux registres du générateur de PWM. Voici comment les valeurs de la table sont écrites : dans un premier temps, toutes les valeurs décimales entre 0 et 1 obtenues par toutes les combinaisons du rapport (T ON) sur (PER) sont calculées avec une précision très importante (typiquement 10 décimales). Les valeurs décimales sont ordonnées de la plus petite (0.00000) à la plus grande (1.000000) et les couples (T_ON / PER) correspondants sont rangés dans le même ordre. Puis une précision de table est donné, par exemple 16 bits = N. Les 2" valeurs théoriques i / 2" sont calculées où i varie de 1 à 2" = 65536. On obtient donc 65536 valeurs variant de 0 à 1. On associe alors chaque valeur théorique avec la valeur décimale la plus proche calculée à partir du couple (T_ON / PER) et on rempli la table de cette façon. Un extrait d'un exemple d'une telle table est donné à la figure 3. La figure 3 montre quatre colonnes, seule la colonne 3 est réellement enregistrée en mémoire. La première et la seconde colonne contiennent les valeurs sur 16 bits, en décimal et en hexadécimale de l'index de chaque ligne de la table, sachant que la valeur théorique précédemment citée est l'inverse de cette valeur sur 16 bits. La colonne 3 spécifie le couple (PER / T_ON) permettant de programmer les deux registres PER et T_ON du générateur de signaux PWM M. La dernière colonne montre la valeur décimale obtenue en calculant le couple (T_ON / PER), cette valeur décimale est le paramètre d'entrée de l'amplificateur qui commande le ventilateur. Cette dernière colonne permet de se rendre compte de la précision obtenue en faisant varier différents couples (T_ON / PER) consécutifs dans la table. Il est ainsi facile de voir que la programmation conjointe de deux registres 8 bits contrôlant la période et le rapport cyclique, permet d'obtenir une valeur analogique d'une précision d'environ 15 bits. On remarque que dans certains cas, il n'existe qu'une seule valeur décimale, et donc un seul couple pour plusieurs valeurs théoriques. Lorsque le système de génération du signal analogique produit une valeur de commande sur 16 bits, il pointe la table avec cette valeur et lit immédiatement le couple (T_ON / PER) pour programmer les registres. Pour générer une variation continue du signal analogique, il est possible de partir d'une valeur DEBUT de 16 bits pour atteindre une valeur FIN, en lisant de la table tous les couples (T_ON / PER) compris entre DEBUT et FIN, et en les appliquant à des intervalles de temps réguliers. On constate que les valeurs décimales générées par certains couples sont identiques, par exemple : 1 / 2 = 2 / 4 = 4 / 8 = 8 / 16 = 16 / 32 = 32 / 64 = 64 / 128. Le calcul démontre qu'il existe 19947 couples T_ON / PER produisant des valeurs décimales différentes.
Il apparaît d'emblée intéressants de ne mémoriser que des couples (T ON / PER) produisant des valeurs du signal analogiques différentes. Il est donc possible de réduire la taille de la table. Selon une variante de réalisation, la table en mémoire est modifiée de façon à ne contenir que des valeurs décimales différentes. On vient de voir que l'ensemble des couples (T_ON / PER) produisant des valeurs décimales différentes est de 19947, il est donc inutile de garder les doublons dans la table. Selon la variante, le système de génération du signal analogique calcule des valeurs décimales variant entre 0 et 1, avec par exemple 6 décimales après la virgule. L'utilisation de six décimales offre un bon compromis, elle dépend du nombre de bits des registres. La table en mémoire contient les 19947 résultats possibles en les ordonnant de la valeur la plus faible (0) à la plus importante (1) avec une précision de six décimales. Selon la variante, la table de correspondance associe des valeurs décimales à un couple donné. Afin d'optimiser la taille de la table, on prend soin de ne garder que des valeurs décimales différentes. Si, comme on l'a vu précédemment, plusieurs couples produisent le même résultat, seul le couple possédant la plus grande valeur de période est conservé pour être mémorisé dans la table. De cette façon, les différents couples qui vont se succéder pour générer la forme de variation du signal analogique, auront des valeurs de période proches (ces valeurs ont toutes des valeurs de périodes comprises entre 128 et 255), ce qui évite d'éventuels artefacts produits par des changements entre des signaux PWM ayant des périodes très courtes, et très longues.
La figure 4 présente un extrait d'une telle table selon un exemple de réalisation. L'extrait porte sur une fenêtre de valeurs décimales comprises entre 0.501960 et 0.502512. Entre ces deux valeurs, on trouve 25 couples différents, définis par une valeur T_ON (colonne 2) et une période PER (colonne 3). La colonne 4 donne une valeur sur 16 bits, en hexadécimale équivalente à la valeur décimale de la première colonne en considérant que la valeur H10000 est égale à 1 . Cette dernière valeur montre le niveau d'imprécision du signal variable exprimé par une valeur sur 16bits. On voit ainsi que presque toutes les valeurs sur 16 bits sont représentées sauf quelques unes : H808C, H8091, H8095, H8099, H809C, H809F, H80A2, H80A4. En effet, pour ces valeurs, il n'existe pas de couples approchants, il faut donc utiliser une autre valeur sur 16 bits. Selon cette variante, l'unité de gestion M calcule des valeurs décimale pour commander le ventilateur, ces valeurs sont comprises entre 0 et 1 et ont une précision d'au moins cinq décimales. Pour chaque nouvelle valeur décimale de consigne, le système de gestion recherche le couple (T ON / PER) dont la valeur décimale associée est la plus proche de la valeur de consigne. La recherche dans la table illustrée par la figure 4 s'effectue de façon très classique, elle peut s'inspirer des algorithmes de tris permettant de ranger une certaine valeur parmi une suite ordonnée de valeurs. Une méthode consiste par exemple à viser d'abord la valeur de milieu de table, à déterminer si la valeur donnée est inférieure ou supérieure, et selon la réponse à viser le milieu de la moitié inférieure ou la supérieure de la table. Et ainsi de suite, jusqu'à trouver la valeur en table dont l'écart avec la valeur de consigne est le plus petit. Une fois que cette valeur est trouvée, le couple (T_ON / PER) correspondant est lu et les valeurs sur 8 bits sont inscrites dans les deux registres. De cette façon, le signal analogique généré est d'une grande précision. Par exemple, supposons une valeur de consigne égale à 0.502 volts, la valeur décimale la plus proche présente dans la table de correspondance est 0.502008, ce qui correspond au couple (T_ON / PER) = 125/249, la flèche en gras dans la figure 4 indique la valeur la plus proche trouvée. Le circuit de génération va inscrire 125 dans le registre du rapport cyclique et 249 pour celui de la période.
La figure 5 représente un chronogramme des signaux PWM et du signal analogique de variation linéaire obtenu par le procédé qui vient d'être décrit. Le chronogramme montre les signaux produit par le générateur PWM et le filtre passe-bas pour des couples (T_ON / PER) dont les valeurs décimales sont comprises entre 0.0177541 et 0.017964. On trouve cinq couples différents dans cette fourchette, mais certains couples sont représentés plusieurs fois dans la table de la figure 3. Ainsi, le premier couple (003, 168) présent trois fois dans la table, est appliqué pendant 3 unités de temps, le second (004,224) est appliqué pendant 3 unités de temps, le troisième (004,223) est appliqué pendant 6 unités de temps, le quatrième (004,222) est appliqué pendant 3 unités de temps, et le dernier (003,166) est appliqué pendant 3 unités de temps. La figure 5 présente également à l'échelle les niveaux des valeurs décimales correspondant aux couples (T_ON / PER) générés, ces valeurs varient de 0.0177514 à 0.0179640. La ligne droite théorique a été représentée.
La ligne en pointillé montre l'évolution du signal analogique après l'amplificateur A, on voit que cette ligne suit globalement l'évolution d'une droite. Selon un mode de réalisation simple, le système de génération du signal analogique extrait des valeurs T_ONi et PERi de la table de correspondance lors d'intervalles de temps déterminés et les inscrit dans les deux registres de contrôle du PWM. De cette façon, le signal analogique généré est progressivement égal à la valeur voulue en passant par de nombreuses valeurs discrètes différentes, le grand nombre de ces valeurs permettant des variations très faibles et ainsi une grande précision et dans le cas de la commande d'un ventilateur, une diminution notable du bruit. L'intervalle de temps entre deux applications de couple (T_ONi / PERi) dépend notamment de la durée au cours de laquelle on veut atteindre la nouvelle valeur. Soit AT le temps pour atteindre la nouvelle valeur nominale, soit Vin; la valeur initiale et Vcible la valeur décimale à atteindre, le système divise AT par le nombre de valeurs permettant d'atteindre cette valeur décimale cible afin de déterminer la valeur de temps au cours de laquelle chaque couple (T_ONi / PERi) extrait de la table est appliqué. Comme le montre la figure 5, en appliquant au cours d'un laps de temps identique, chaque couple (T_ONi / PERi) lu dans la table illustrée par la figure 3, on obtient un signal analogique variant à peu près linéairement. Supposons que le système de génération du signal analogique doit produire un signal analogique variant linéairement de 6.024 volts à 6,030 volts pour commander le ventilateur V. Le circuit délivrant une tension maximale de 12 volts, la valeur décimale à fournir aux circuits analogiques varie de 0,502 à 0.5025. La table de correspondance illustrée par la figure 3 fournit un premier couple de valeur de 125 / 249 et un dernier couple de 100 / 199 qui fournit la valeur cible. Entre ces deux valeurs, on trouve 32 valeurs définissant ainsi 33 intervalles de temps. Par hypothèse de départ, le temps pour passer de la tension de 6.00 volts à 6.10 volts est d'une seconde, donc chaque couple est appliqué pendant 1/33 de secondes, le dernier couple de (100 / 199) étant appliqué continuellement. On voit sur la figure 5 un exemple de forme de variation du signal analogique, typiquement une ligne droite. Cette forme de variation est produite en programmant successivement 5 couples (T_ONi / PERi) au générateur PWM. Si la programmation des paramètres extrait de la table représentée à la figure 3 s'effectue à des intervalles de temps constant, chaque valeur analogique ainsi générée est appliquée au cours d'intervalles de temps multiple d'un intervalle de temps élémentaire. Selon un perfectionnement, il est possible d'obtenir une variation non linéaire en faisant varier la durée d'application de chaque nouvelle valeur. Par exemple, la valeur de temps d'application d'un couple peut être l'image d'une fonction affine d'équation générale ATi = A x i + B, où i est le numéro d'ordre du couple (T ONi / PERi) extraits de la table de correspondance. En utilisant cette formule, les valeurs vont se succéder rapidement au début puis être appliquée de plus en plus lentement à la fin. De cette façon, le signal analogique généré présente une grande variation au début et de faiblevariation à l'approche de la valeur décimale cible. Ce qui permet d'accélérer les variations au début et d'atteindre la valeur cible plus doucement. D'autres modes de réalisation sont possibles, où la valeur de temps d'application d'un couple est obtenue par une équation plus complexe, 5 notamment de degré 2. On note que les écarts temporel entre l'application de deux couple (T_ONi / PERi) différents pour générer une forme de variation ne sont pas les mêmes, ceci est dû à la production de valeurs décimale discrètes qui n'offrent pas un même écart entre elles. La figure 5 illustre bien ce phénomène : 10 certains couples sont appliqués, 1 fois, trois fois, cinq fois. Le nombre d'application de chaque couple est calculé en fonction de la proximité des valeurs décimales calculées par rapport à une valeur théorique i / 2" où i varie de 1 à N. Il est possible d'améliorer la précision en faisant varier la durée d'application de chaque nouvelle valeur en fonction de son écart par rapport à 15 la valeur suivante. La figure 6 montre un extrait de la table de correspondance du même type que celle de la figure 4 dans un secteur où l'on observe très ponctuellement de grandes variations d'une valeur décimale à une autre. Pour des valeurs inférieures à 0.498039, les variations se situent entre 16.10-6 et 18.10-6 , alors qu'autour de la valeur décimale 0.5, les écarts augmentent 20 considérablement : 1961.10-6. Puis, pour des valeurs supérieures à 0.501960, les variations se situent de nouveau entre 16.10-6 entre 18.10-6. Si, pour produire un signal variant linéairement, le système de génération applique des couples (T_ONi / PERi) extraits successivement de la table au cours des mêmes intervalles de temps, ces écarts entraînent une non-linéarité par 25 rapport à la ligne droite théorique, surtout autour de la valeur décimale 0.5. Pour diminuer ces écarts, la durée au cours de laquelle un couple donné (T_ON / PER) génère un signal analogique dépend de son écart avec le couple suivant. Soit Ttotal le temps pour atteindre la nouvelle valeur nominale et Etotal l'écart entre la valeur actuelle et cette valeur nominale, le rapport (Etotal / 30 Ttotal) représente la valeur dérivée de la rampe de signal à générer pour atteindre de façon linéaire la nouvelle valeur nominale. Soit Vi, Vi-F1 deux valeurs décimales consécutives extraites de la table, AV est la différence entre Vi et Vi+1 : AV = Vi+1 û Vi La valeur dérivée de la variation AV doit être la même que le rapport (Etotal / Ttotal), et d'autres termes : AVi / ATi = Etotal / Ttotal La valeur Etotal / Ttotal est connue et est constante, AV qui est égal à Vi-F1 û Vi se déduit de la table, l'inconnue ATi se calcule par la formule : ATi = AVi / (Etotal / Ttotal). De ce fait, la durée d'application du couple (T_ONi / PERi) générant une valeur Vi, dépend de la différence entre cette valeur et sa suivante dans la table. Si, par exemple le système de gestion M produit un signal analogique sous la forme d'une rampe variant linéairement entre les valeurs décimales 0.4980 et 0,5020 au cours d'une seconde, alors les rapports suivants vont être appliqués au cours des durées suivantes : - (TON / PER) = 125 / 250 appliqués pendant : 4 ms, - (TON / PER) = 126 / 252 appliqués pendant : 4 ms, - (TON / PER) = 127 / 254 appliqués pendant : 492 ms, - (TON / PER) = 128 / 255 appliqués pendant : 492 ms, - (TON / PER) = 127 / 252 appliqués pendant : 4 ms, -(TON / PER) = 126 / 250 appliqués pendant : 4 ms, - (TON / PER) = 125 / 248 est appliqué continuellement. Cette solution permet de compenser le défaut de non-linéarité dans les écarts entre des valeurs successives extraites de la table de la figure 6.
Des personnes versées dans l'art pourront adapter la présente invention sous de nombreuses autres formes spécifiques sans l'éloigner du domaine d'application de l'invention comme revendiqué. En particulier, le système de génération peut s'adapter pour la génération de signaux de toute grandeur physique utilisée dans un appareil électronique. Par conséquent, les présents modes de réalisation doivent être considérés à titre d'illustration mais peuvent être modifiés dans le domaine défini par la portée des revendications jointes.

Claims (9)

REVENDICATIONS
1. Procédé de génération d'une forme de variation d'un signal analogique telle qu'une ligne droite, produit par une succession d'étapes de génération d'un signal PWM ayant une période et un rapport cyclique donnés, ledit signal PWM étant intégré pour produire le signal analogique ; caractérisé en ce qu'à chaque étape de génération, des valeurs différentes de période et de rapport cyclique sont successivement appliquées au signal PWM pour générer la forme de variation.
2. Procédé de génération d'une forme de variation d'un signal analogique selon la revendication 1, caractérisé en ce que chaque étape de génération comporte une étape d'extraction d'une table d'un couple de valeurs de période et de rapport cyclique, l'adresse des couples extraits étant la valeur de commande pour générer le signal analogique.
3. Procédé de génération d'une forme de variation d'un signal analogique selon la revendication 1, caractérisé en ce que chaque étape de génération comporte une étape d'extraction d'une table d'un couple de valeurs de période et de rapport cyclique, chaque couple de valeurs étant associé à une valeur numérique, le couple extrait de la table est celui dont la valeur numérique associée est la plus proche de celle du signal analogique à générer.
4. Procédé de génération d'une forme de variation d'un signal analogique selon l'une quelconque des revendications précédentes, caractérisé en ce que les étapes de génération d'un signal PWM sont appliquées au cours de durée égale.
5. Procédé de génération d'une forme de variation d'un signal analogique selon l'une quelconque des revendications 1 à 3, caractérisé en ce que les étapes de génération d'un signal PWM sont appliquées au cours d'intervalles de temps dont la durée est le résultat d'une formule mathématique.
6. Procédé de génération d'une forme de variation d'un signal analogique selon la revendication 3, caractérisé en ce que les étapes de génération d'un signal PWM sont appliquées au cours de durées variant en fonction de la différence entre la valeur numérique associé extraite de la table et la valeur numérique dans l'ordre suivant de la table.
7. Procédé de génération d'une forme de variation d'un signal analogique selon l'une quelconque des revendications précédentes, caractérisé en ce que si plusieurs couples de rapport cyclique et de période offrent un résultat identique, le couple ayant la plus grande valeur de période est choisi.
8. Procédé de génération d'une forme de variation d'un signal analogique selon l'une quelconque des revendications précédentes, caractérisé en ce que la grandeur analogique est un signal de commande contrôlant la vitesse d'un ventilateur.
9. Dispositif (1) de génération d'une forme de variation d'un signal analogique telle qu'une ligne droite, comportant un générateur de signaux PWM (M) dont la période et le rapport cyclique sont programmables et un moyen d'intégration dudit signal PWM pour produire le signal analogique ; caractérisé en ce qu'une pluralité de programmations sont appliquées sur le générateur (M) pour produire la forme de variation, des valeurs différentes de période et de rapport cyclique sont successivement introduites lors de chaque programmation.
FR0756080A 2007-06-27 2007-06-27 Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal. Pending FR2918227A1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR0756080A FR2918227A1 (fr) 2007-06-27 2007-06-27 Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal.
TW097122011A TWI426368B (zh) 2007-06-27 2008-06-13 利用pwm訊號的接續發生步驟從成對指定周期和循環比所產生類比訊號變化形式之發生方法及裝置
JP2008159935A JP4980989B2 (ja) 2007-06-27 2008-06-19 Pwm信号によって生成される可変アナログ信号の生成方法、及び該信号を生成するシステム
US12/214,939 US7760120B2 (en) 2007-06-27 2008-06-24 Generation method of a variable analogue signal generated by a PWM signal and system generating such a signal
EP08159004.4A EP2009798B1 (fr) 2007-06-27 2008-06-25 Procédé de génération d'un signal analogique variable généré par un signal pwm et système générant un tel signal
CN200810110292.9A CN101335511B (zh) 2007-06-27 2008-06-26 Pwm信号产生可变模拟信号的方法以及产生这种信号的系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0756080A FR2918227A1 (fr) 2007-06-27 2007-06-27 Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal.

Publications (1)

Publication Number Publication Date
FR2918227A1 true FR2918227A1 (fr) 2009-01-02

Family

ID=38983800

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0756080A Pending FR2918227A1 (fr) 2007-06-27 2007-06-27 Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal.

Country Status (6)

Country Link
US (1) US7760120B2 (fr)
EP (1) EP2009798B1 (fr)
JP (1) JP4980989B2 (fr)
CN (1) CN101335511B (fr)
FR (1) FR2918227A1 (fr)
TW (1) TWI426368B (fr)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7821439B2 (en) * 2008-04-22 2010-10-26 International Truck Intellectual Property Company, Llc Programmable CAN bus to analogue signal converter
US9200587B2 (en) * 2012-04-27 2015-12-01 Tula Technology, Inc. Look-up table based skip fire engine control
US20140009137A1 (en) * 2012-07-03 2014-01-09 Nvidia Corporation System, method, and computer program product for single wire voltage control of a voltage regulator
JP6437429B2 (ja) 2015-12-25 2018-12-12 株式会社日立製作所 加速度センサ、受振器および地震探査システム
CN105549489A (zh) * 2016-01-29 2016-05-04 天津天邦科技有限公司 变差值输入扩展装置
CN109932669B (zh) * 2019-03-27 2021-06-29 三峡大学 一种数字补偿式amr磁场测量装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487246B1 (en) * 1999-04-08 2002-11-26 National Semiconductor Corporation Method and apparatus for programmable pulse width modulated signal generation with period and duty cycle values updated with controlled relative timing
US7151349B1 (en) * 2004-04-08 2006-12-19 Analog Devices, Inc. Fan speed control
US20070098374A1 (en) * 2005-10-31 2007-05-03 Nobuto Fujiwara Information processing apparatus and fan control method

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3629710A (en) * 1970-12-16 1971-12-21 Beckman Instruments Inc Digitally controlled pulse generator
US4330751A (en) * 1979-12-03 1982-05-18 Norlin Industries, Inc. Programmable frequency and duty cycle tone signal generator
KR930000965B1 (ko) * 1989-08-17 1993-02-11 금성 일렉트론 주식회사 프로그래머블 구형파 발생기
JPH073952B2 (ja) * 1990-01-26 1995-01-18 株式会社島津製作所 デジタル・アナログ変換器
JP2001102925A (ja) * 1999-09-30 2001-04-13 Seiko Epson Corp デジタルアナログ変換装置
JP3991705B2 (ja) * 2002-02-22 2007-10-17 セイコーエプソン株式会社 ディジタル/アナログ変換回路
US6765422B1 (en) * 2003-06-05 2004-07-20 National Semiconductor Corporation High resolution fan control at high PWM frequency with a low clock frequency input
US20050030171A1 (en) * 2003-08-06 2005-02-10 Tse-Hung Liu Cooling system for computing device
US6995592B2 (en) * 2003-11-06 2006-02-07 Stmicroelectronics Pvt. Ltd. Method and system for generating variable frequency cyclic waveforms using pulse width modulation
US7288977B2 (en) * 2005-01-21 2007-10-30 Freescale Semiconductor, Inc. High resolution pulse width modulator
TWI309104B (en) * 2005-11-11 2009-04-21 Foxconn Tech Co Ltd Method and circuit for controlling fan speed

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487246B1 (en) * 1999-04-08 2002-11-26 National Semiconductor Corporation Method and apparatus for programmable pulse width modulated signal generation with period and duty cycle values updated with controlled relative timing
US7151349B1 (en) * 2004-04-08 2006-12-19 Analog Devices, Inc. Fan speed control
US20070098374A1 (en) * 2005-10-31 2007-05-03 Nobuto Fujiwara Information processing apparatus and fan control method

Also Published As

Publication number Publication date
US20090066551A1 (en) 2009-03-12
JP2009010949A (ja) 2009-01-15
JP4980989B2 (ja) 2012-07-18
EP2009798B1 (fr) 2017-03-01
TWI426368B (zh) 2014-02-11
EP2009798A1 (fr) 2008-12-31
CN101335511B (zh) 2013-08-28
TW200900892A (en) 2009-01-01
US7760120B2 (en) 2010-07-20
CN101335511A (zh) 2008-12-31

Similar Documents

Publication Publication Date Title
FR2918227A1 (fr) Procede de generation d'un signal analogique variable genere par un signal pwm et systeme generant un tel signal.
EP1080431B1 (fr) Systeme d'acquisition de donnees comprenant un circuit de conversion d'un signal d'entree analogique haute frequence en une pluralite de signaux numeriques
EP3140906B1 (fr) Dispositif haute dynamique pour l'integration d'un courant electrique
EP2846535B1 (fr) Dispositif et procédé d'acquisition compressive d'images
US10992893B2 (en) Method and system for generating a ramping signal
JP4452487B2 (ja) D級増幅器
EP0682828B1 (fr) Procede d'entrelacement et de desentrelacement en bloc et dispositif de mise en oeuvre
EP2997657B1 (fr) Systeme de generation d'un signal analogique
FR2661788A1 (fr) Dispositif de simulation pour moteur pas a pas.
FR2806857A1 (fr) Systeme de modulation de largeur d'impulsion de type lineaire
EP1752857B1 (fr) Générateur de signal de forme d'onde modifiable
FR2620283A1 (fr) Dispositif de commande de la puissance de sortie d'un amplificateur fonctionnant en classe c
US10573387B2 (en) Memory data randomizer
EP2269307B1 (fr) Procédé de génération d'un signal analogique généré par un signal pwm et système générant un tel signal
Hsu Who will control AI-created'digital twins'?
WO2018115139A2 (fr) Dispositif de génération d'un signal numérique modulé et système de génération d'un signal analogique modulé
TWI298869B (fr)
FR2979172A1 (fr) Procede et dispositif de controle de l'alimentation d'un circuit integre.
FR2886426A1 (fr) Generateur d'un flux numerique pseudoaleatoire
WO2024115370A1 (fr) Méthode et circuit de réalisation d'opérations de multiplication et d'accumulation en mémoire
EP3888248A1 (fr) Dispositif de generation de signaux analogiques
FR2635606A1 (fr) Procede de lecture d'un code temporel longitudinal et dispositif pour la mise en oeuvre d'un tel procede
WO2010072913A1 (fr) Dispositif de commande numérique pour un tableau de transistors pmos en parallèle
FR2493637A1 (fr) Codeur-decodeur delta a adaptation de quantification hybride a double etage