46
Département de Recherche en Électromagnétisme (DRÉ) de Supélec et du L2S (UMR 8506/CNRS–Supélec–UPS) Supélec, Plateau du Moulon, F-91192 Gif-Sur-Yvette Cedex, France Tel : +33 (0)1 69 85 12 12 – Fax : +33 (0)1 69 85 17 65 Rapport de Stage Luc Yin Responsable de stage : Christophe Conessa Responsable IUT : Antoine Diet Stage du 7 avril au 27 juin 2008 – DUT génie électrique et informatique industrielle Étude et Réalisation d’une commande moteur pas-à-pas Réalisation de la carte de commande et programmation de la carte PCI4400

Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Embed Size (px)

Citation preview

Page 1: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Département de Recherche en Électromagnétisme (DRÉ)

de Supélec et du L2S (UMR 8506/CNRS–Supélec–UPS) Supélec, Plateau du Moulon, F-91192 Gif-Sur-Yvette Cedex, France

Tel : +33 (0)1 69 85 12 12 – Fax : +33 (0)1 69 85 17 65

Rapport de Stage

Luc Yin

Responsable de stage : Christophe Conessa Responsable IUT : Antoine Diet

Stage du 7 avril au 27 juin 2008 – DUT génie électrique et informatique industrielle

Étude et Réalisation d’une commande moteur pas-à-pas

Réalisation de la carte de commande et programmation de la carte PCI4400

Page 2: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

2 Commande moteur pas-à-pas Luc Yin

Page 3: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 3

Je tiens tout d’abord à remercier tous les membres du Département Recherche Électromagnétique du Laboratoire des Signaux et Systèmes (L2S) pour leurs accueils chaleureux. Je tiens également à remercier mon tuteur de stage Christophe Conessa (assistant ingénieur) pour ses précieuses aides au cours de mon stage et à mon tuteur IUT Antoine Diet (enseignant chercheur à l’IUT de Cachan) pour m’avoir présenté et introduit au Département de Recherche Électromagnétisme (DRÉ), ainsi qu’Alain Joisel (chercheur CNRS bénévole au DRE) et Tommy Gunnarsson (thésard travaillant sur la détection de tumeurs à partir de données multivue acquise par l’intermédiaire d’une caméra micro-onde) pour leurs soutiens. Je finirai par un grand remerciement à tous les membres du DRÉ pour leur gentillesse et leur bonne humeur.

Page 4: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

4 Commande moteur pas-à-pas Luc Yin

Résumé Le Département de Recherche en Électromagnétisme (DRÉ) a une activité consacrée à l’imagerie micro-onde. Au sein du DRÉ, les chercheurs ont développé utilise une caméra micro-onde pour étudier et caractériser les propriétés des matériaux. Cette caméra étant en constante évolution, les chercheurs essayent de l’optimiser et d’améliorer ces performances dans le cadre d’une reconstruction quantitative. Jusqu’à présent, la caméra n’était utilisée que pour des acquisitions en temps réel. On pouvait ainsi estimer la permittivité des objets étudiés grâce à une comparaison du champ incident avec le champ totale. Mais cela devient plus délicat pour des applications médicales. Pour la visualisation et l’analyse de cellules cancéreuses ou tuméfiées, il faudra dans un premier temps filmer le corps sain, puis filmer une deuxième fois avec le corps malade, ce qui est impossible. Ainsi, dans le cadre de la thèse de Tommy Gunnarsson [1], les chercheurs veulent donc mettre en place un algorithme capable à l’aide des prises multivues, de reconstituer les tissus humains et localiser les cellules malades. C’est pour cela, que les chercheurs privilégieront donc l’aspect quantitatif de l’acquisition. Dans cette perspective, un système automatisé s’impose, il a pour but d’automatiser l’acquisition de chaque mesure. Mots Clés : Caméra micro-onde à 2,454GHz, Commande numérique moteur pas-à-pas, Carte PCI4400, Programmation en C, Electromagnétisme, Onde, Liaison carte de contrôle/ordinateur, Moteur pas-à-pas, Réalisation et Programmation, Détection tumeur.

Page 5: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 5

Glossaire Diffraction des ondes: Phénomène de déviation des ondes (électromagnétiques, lumineuses, acoustiques...) lorsqu'elles passent au voisinage d'un obstacle Micro-onde : sont des ondes électromagnétiques de longueur d'onde intermédiaire entre l'infrarouge et les ondes de radiodiffusion. Le terme de micro-onde provient du fait que ces ondes ont une longueur d'onde plus courte que celles de la bande VHF, utilisée par les radars pendant la Seconde Guerre mondiale. Les micro-ondes ont des longueurs d'onde approximativement dans la gamme de 30 centimètres (1 GHz) à 1 millimètre (300 GHz) Invasif : Un examen invasif est un examen médical requierrant une effraction de la peau plus importante qu'une simple ponction veineuse. Il peut être désagréable (pas obligatoirement), et nécessite parfois une anesthésie locale ou générale. Il peut nécessiter une hospitalisation et comporte un certain nombre d'effets secondaires, voire, de risque d'accident. Propagation des ondes : En physique, la propagation des ondes est un phénomène qui est décrit par l'évolution d'une onde, ou du mouvement d'une particule dans le temps et l'espace, par rapport à un milieu. Réflexion : La réflexion est le brusque changement de direction d'une onde à l'interface de deux milieux. Après réflexion l'onde reste dans son milieu de propagation initial. Réfraction : En physique des ondes, le phénomène de réfraction est la déviation d'une onde lorsque la vitesse de celle-ci change entre deux milieux. Typiquement, cela se produit à l'interface entre deux milieux, ou lors d'un changement d'impédance du milieu. Tomographie : Méthode d'exploration radiologique qui permet d'obtenir des radiographies par plans d'un organe, à une profondeur déterminée. Diélectriques (Corps) dans lequel la déperdition d'énergie est faible quand ce corps est soumis à un champ électrique. Un matériau est diélectrique s'il ne contient pas de charges électriques susceptibles de se déplacer de façon macroscopique. Autrement dit, c'est un milieu qui ne peut pas conduire le courant électrique. À ce titre, on l'appelle parfois isolant électrique. Permittivité : La permittivité, ou permittivité diélectrique, est une propriété physique qui décrit la réponse d'un milieu donné à un champ électrique. C'est une grandeur essentielle de l'électrostatique, ainsi que de l'électrodynamique des milieux continus. Elle intervient dans de nombreux domaines, notamment dans l'étude de la propagation des ondes électromagnétiques, et en particulier la lumière visible. On la retrouve donc en optique, via l'indice de réfraction. Les lois gérant la réfraction et la réflexion de la lumière y font appel. Fantômes : Dans le domaine des mesures électromagnétique, ces sont des corps ou objets expérimentaux qui simule les propriétés diélectrique du corps.

Page 6: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

6 Commande moteur pas-à-pas Luc Yin

Diagramme de Gantt

Le planning au sein de DRÉ s’est passé de la manière suivante : Durant les deux premières semaines, mon activité se porte sur la documentation du sujet du stage qui est la commande motrice d’un moteur pas-à-pas, ceci comprend la lecture des précédents rapports sur la caméra micro-onde et sur la commande numérique du moteur, ainsi que la recherche et le développement d’un nouveau système de commande motrice. Puis dans la période de vacance de Supélec, où les stagiaires n’étaient pas autorisés à venir travailler au DRÉ, j’ai réalisé une petite présentation sur le sujet de mon stage. Après discussion et débat sur la connectique de commande, mes tuteurs et moi sommes tombés d’accord sur un planning d’avancement du travail, ainsi que sur le cahier des charges à respecter. Dans les semaines qui ont suivies, j’ai commencé la réalisation de la carte de commande, et effectué les tests et mesures. Puis je suis passé sur la partie software de mon stage, c'est-à-dire, la partie programmation des commandes du moteur. Enfin, après des semaines de travail, nous avons intégré notre système à la caméra micro-onde.

Semaine 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Prise en main de l'ensemble

Préparation présentation

Réalisation maquette de commande et de l'interface

Programmation de fonctions de commande simples

Intégration du programme dans TOMOWIN

Préparation de la soutenance et du rapport

Dernières mises au point du système

Page 7: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 7

Résumé ....................................................................................................................................... 4

Mots Clés : ................................................................................................................................. 4

Glossaire ..................................................................................................................................... 5

Diagramme de Gantt .................................................................................................................. 6

Partie 1 Présentation de l’environnement du stage ................................................................ 8

1.1 Présentation et organisation de Supélec ................................................................ 9

1.2 Le DRE au L2S .................................................................................................... 10

Partie 2 La caméra micro-onde, la mesure quantitative multivue ....................................... 12

2.1 L’étude théorique ................................................................................................. 13 2.1.1 Les différentes gammes de fréquence des ondes.................................. 13

2.1.2 Principe basé sur la diffraction des ondes ............................................ 16

2.2 L’étude expérimentale .......................................................................................... 17 2.2.1 Présentation de la caméra micro-onde.................................................. 17

2.2.2 Schéma d’ensemble et synoptique de la caméra .................................. 18

2.2.3 La modulation de la rétine .................................................................... 19

2.2.4 Principe de la mesure multivue ............................................................ 20

Partie 3 Mise en œuvre d’un système automatisé ................................................................ 21

3.1 Introduction aux moteurs pas à pas ...................................................................... 22

3.1.1 Commande d’un moteur pas à pas ....................................................... 22

3.1.2 Les travaux antécédents de la commande motrice ............................... 23

3.2 Etude d’un système automatisé ............................................................................ 24 3.2.1 Caractéristiques du moteur pas à pas ................................................... 24

3.2.2 Commande moteur : L297 et L298 ...................................................... 25

3.2.3 Interfaçage PC/moteur .......................................................................... 28

3.3 Les aspects concrets ............................................................................................. 29 3.3.1 Réalisation de la carte de commande ................................................... 29

3.3.2 Programmation de la carte PCI4400 .................................................... 30

3.3.3 Tests et Mesures ................................................................................... 32

3.3.3.1 L’oscilloscope LeCroy .......................................................... 33

3.3.3.2 Mesure du couple moteur ...................................................... 34

Synthèse et bilan personnel ...................................................................................................... 35

Bibliographie ............................................................................................................................ 36

Partie 4 Annexes .................................................................................................................. 37

Page 8: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

8 Commande moteur pas-à-pas Luc Yin

Partie 1Partie 1Partie 1Partie 1 Présentation de l’environnement du stagePrésentation de l’environnement du stagePrésentation de l’environnement du stagePrésentation de l’environnement du stage

Page 9: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 9

1.1 Présentation et organisation de Supélec L'École Supérieure d'Électricité est une grande école d'ingénieurs au cœur des sciences de l'information, de l'énergie et des systèmes. Supélec est une référence dans le domaine des sciences de l’information et de l’énergie. Elle constitue une voie d’accès privilégiée vers le monde professionnel. Au niveau international, Supélec peut se comparer aux plus prestigieux «Electrical Engineering and Computer Science Departments» des grandes universités européennes et américaines. La qualité des ingénieurs diplômés chaque année est mondialement reconnue. Le recrutement est fait à partir d’un concours à l’issue des Classes Préparatoires, complété par un recrutement sur titres universitaires, d’étudiants français ou d’étrangers. La formation d’ingénieur constitue la mission principale de l’École, qui a une durée de trois ans. Les formations proposées sont :

Le diplôme d’ingénieur Le diplôme de Master Recherche Le diplôme de spécialisation en un an Les mastères spécialisés

On compte 3 campus en France :

en Ile-de-France à Gif-sur-Yvette (depuis 1975) en Lorraine à Metz (depuis 1985) en Bretagne à Rennes (depuis 1972)

Supélec en chiffres

1850 étudiants

440 diplômes d'ingénieurs

150 programmes de formation continue

6 mastères spécialisés

150 enseignants-chercheurs

580 enseignants vacataires

140 personnels techniques et administratifs

13 laboratoires et unités de recherche

210 doctorants

Fig.2 Source : Supélec

Fig.1 Vu aérienne de Supélec Source : Supélec

Page 10: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

10 Commande moteur pas-à-pas Luc Yin

DRE

L2S

Division

Systèmes

Division

Ondes

Division

Signaux

Dept.

EMG

Supélec

Gif-sur-Yvette

1.2 Le DRE au L2S

Organigramme du Laboratoire de Signaux et Systèmes (L2S)

Fig.3 organigramme du L2S Les divisions scientifiques :

Division Signaux Division Systèmes Département de la Recherche en Electromagnétisme (DRE)

La division Signaux développe des travaux sur le traitement des signaux et des images considérés comme des véhicules de l’information. La division Systèmes étudie la modélisation des systèmes, l’analyse des propriétés des modèles obtenus et leur utilisation pour la commande, la compréhension ou le diagnostic. L’activité du DRE s’organise autour de trois domaines : - L’étude des systèmes rayonnants complexes, tels que les téléphones portables ou les stations de base. - L’étude de la compatibilité électromagnétisme (CEM), visant à étudier puis à réduire l’influence d’un environnement perturbateur sur un système électronique ou, inversement, les perturbations de l’environnement par ce système. - L’étude des problèmes inverses dans le domaine des ondes dont le but est soit de caractériser les sources à l’origine d’un rayonnement mesuré, soit de cartographier les paramètres physiques d’une structure inconnue à partir de la mesure du champ résultant de son interaction avec une onde. Un exemple concret : la caméra micro-onde.

Page 11: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 11

Le sujet du stage portant sur la caméra micro-ondes, le stage s’effectue donc dans le Département de Recherche Électromagnétisme (DRE).

La division ondes dont le responsable est Mr Bernard Duchêne, s'intéresse au problème du rayonnement, de la propagation et de la diffraction des ondes électromagnétiques, et, à un moindre degré, acoustiques, avec une insistance particulière sur les modélisations de configurations complexes et les simulations numériques, sans négliger pour autant les validations expérimentales. On peut voir ci-dessus (Fig 1.2.1), la grande chambre anéchoïde avec ses cônes en mousses absorbant les ondes électromagnétiques. La division ondes est fédérée avec le service Électromagnétisme de Supélec au sein du Département de Recherche en Électromagnétisme (DRÉ).

Nous allons nous intéresser maintenant à la présentation généralement de la caméra micro-onde et de la problématique liée à la conception d’un système d’acquisition automatisé. Ensuite, nous traiterons plus en détails le sujet du stage au sein du DRE : la réalisation d’une commande de moteur pas-à-pas.

La grande chambre anéchoïde permet les mesures de champs électromagnétiques dans l'environnement sans réflexion d’onde électromagnétique. Fig.4 Source : © CNRS-SUPELEC-UPS

Simulation et test des effets des ondes téléphoniques sur un fantôme d’une tête humaine. Fig.5 Source : © CNRS-SUPELEC-UPS

Page 12: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

12 Commande moteur pas-à-pas Luc Yin

Partie 2Partie 2Partie 2Partie 2 La caméra microLa caméra microLa caméra microLa caméra micro----onde, la mesure onde, la mesure onde, la mesure onde, la mesure quantitative multivuequantitative multivuequantitative multivuequantitative multivue

Page 13: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 13

2.1 L’étude théorique

2.1.1 Les différentes gammes de fréquence des ondes Une onde, c'est une perturbation qui se propage par exemple soit à la surface de l'eau, soit le long d’une corde, ou bien dans l'air. Cette perturbation se déplace sans se déformer dans l’air, et sans emporter de matière avec elle. Elle est donc idéale pour transporter l'information. Ainsi, nous utilisons nos yeux pour recevoir la lumière et nos oreilles pour recevoir le son. Ces ondes nous apportent des informations à distance. Elles sont à la base de notre perception du monde, d'où leur extrême importance. Les phénomènes sont nombreux et nécessitent la connaissance des propriétés des ondes pour être expliqués. Dans le domaine des ondes visibles, cela permet d'expliquer tout ce qui se voit : de la couleur des objets, aux lampes qui brillent. Dans le domaine des ondes acoustiques, cela permet de comprendre ce qu'est la hauteur d'une note ou le timbre d'un instrument. Il existe donc plusieurs types d’ondes :

- les ondes électromagnétiques - les ondes sonores

Fig.6 Ondes de surface Dans le cas de nôtre caméra micro-onde, nous allons nous intéresser aux ondes électromagnétiques. Ces ondes, comme leur nom l'indique, sont une combinaison de deux perturbations, l'une magnétique, l'autre électrique.

Fig.7 Caractéristique d’une onde électromagnétique dans l’air

Page 14: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

14 Commande moteur pas-à-pas Luc Yin

Les différentes gammes de fréquences des ondes électromagnétiques sont : Les ondes radio sont des ondes électromagnétiques avec de grandes longueurs d'onde qui peuvent atteindre des kilomètres. Par exemple, les émissions de radio sur grandes ondes entre 150 et 260 kHz (kilohertz). Les micro-ondes sont plus courtes que les ondes radio. Elles sont utilisées dans de nombreuses applications telles que la détection radar ou les fours à micro-ondes . Les rayonnements infrarouges peuvent transférer leur énergie sous forme de chaleur. Ces rayonnements sont émis par les objets chauds tels que les radiateurs, les fers à repasser... et même les corps humains. Les ondes visibles : appelée aussi spectre visible ou spectre optique est la partie du spectre électromagnétique qui est visible pour l'œil humain. Ces extrêmes correspondent respectivement aux couleurs violet et rouge. Cependant, l'œil peut avoir une certaine réponse visuelle dans des gammes de longueurs d'onde encore plus larges. Les ultraviolets sont nocifs pour la santé humaine et provoquent le bronzage. Ils peuvent provoquer des cancers cutanés tel que le mélanome, provoquer un vieillissement prématuré de la peau (rides), des brûlures (coup de soleil), des cataractes ... Les rayons X, C'est un rayonnement ionisant utilisé dans de nombreuses applications dont l'imagerie médicale et la cristallographie. Ces sont des radiations ionisantes. Une exposition prolongée aux rayons X peut provoquer des brûlures (radiomes) mais aussi des cancers. Les rayons gamma, sont émis par des atomes radioactifs dont on tire profit en médecine nucléaire. Les rayons cosmiques venant de l'univers, rayonnements de très courtes longueurs d'onde, transportent une très grande énergie et pénètrent facilement dans la matière. La caméra micro-onde est l’un des procédés utilisant les ondes électromagnétique comme un principe d’imagerie, tel que les rayons X. La longueur des ondes utilisées est fonction de la taille des corps observés. L’imagerie micro-ondes ne vient pas remplacer les rayons X, mais pour les compléter. Les micro-ondes possèdent néanmoins un avantage non négligeable, elles sont non invasives*, c’est-à-dire, qu’elles ne sont pas dangereuses pour le corps humain. La taille des corps ou objets qu’on voudrait observer étant de l’ordre de la longueur d’onde, on a :

où: λ est la longueur d'onde de l'onde c est la vitesse de la lumière (3×10*8 m/s) ν est la fréquence de l'onde

La vitesse de propagation d'une onde électromagnétique (notée c, du latin celeritas) dans le vide est de 2.997 924 58·10*8 m·s-1. La célérité étant constante, les longueurs d'onde sont inversement proportionnelles aux fréquences.

Page 15: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 15

Ainsi on peut dresser les tableaux suivants :

Fig.8 Gamme des fréquences des ondes électromagnétiques source : intellego.fr

Page 16: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

16 Commande moteur pas-à-pas Luc Yin

2.1.2 Principe basé sur la diffraction des ondes

La longueur d’onde des micro-ondes étant de l’ordre des objets analysés, c’est-à-dire de l’ordre du centimètre. Le principe de l’imagerie micro-onde est donc basé sur la diffraction des ondes* émises. On peut illustrer cela par des simulations informatiques, et observer l’interaction des ondes avec un corps ou un objet. D’après la première simulation avec une onde de rayon X (Fig.9) avec un objet métallique, l’onde n’est pas diffractée*.

Fig.9 Interaction d’une onde de rayon X avec objet métallique

Dans la gamme de fréquence des micro-ondes, au contact d’un objet métallique (Fig.10), l’onde s’y réfléchi*, elle n’y pénètre pas. Mais avec un objet non-métallique (Fig.11) tel que le bois par exemple l’interaction va être différente, le bois étant perméable aux micro-ondes, l’onde traverse celui-ci. Le champ diffracté résultant est perturbé en amplitude et en phase. Ainsi on peut conclure que tout objet soumis à un champ électromagnétique créée un champ diffracté qui lui est caractéristique, dépendant de sa dimension et de ses propriétés diélectriques*.

Fig.10 Interaction d’une onde micro-onde Fig.11 Interaction d’une onde micro-onde avec un objet métallique avec du bois

Le problème essentiel pour obtenir une image micro-onde est la mise au point d’une caméra capable d’analyser les variations des fronts d’onde. L’innovation était la suivante, récolter l’onde diffractée grâce à une rétine à base de diodes.

Page 17: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 17

2.2 L’étude expérimentale

2.2.1 Présentation de la caméra micro-onde

La caméra micro-onde (Fig.12) utilise la propriété d’une onde électromagnétique dont on calibre les caractéristiques de départ, tel que l’amplitude, la fréquence, la direction et la polarisation. Cette onde est diffractée par un objet (une tumeur par exemple), elle n’est alors plus plane et présente des modifications significatives liées et des caractéristiques de l’objet. Il faut donc récupérer l’onde diffractée pour reconstituer les informations sur l’objet diffractant.

Fig.12 La caméra micro-onde Il est donc possible, à l’aide d’algorithme et d’une instrumentation adaptée (Fig.13) de déterminer et de reconstituer le chemin parcouru par l’onde diffractée. Il s’agit de la tomographie*. La caméra micro-onde représente une méthode non-invasive pour la détection de cancers ou tumeurs. La technique des micro-ondes comparée aux méthodes utilisées actuellement tels que les rayons X, est moins dangereuse pour les cellules humaines, elle est aussi moins coûteuse à mettre en œuvre comparé à l’IRM (imagerie par résonance électromagnétique). De plus, les micro-ondes sont plus homogènes dans différent milieux, à la rencontre des poumons (tissu vers air puis air vers tissu) et d’autres environnements propres à certains organes, ce qui permet de rendre la caméra micro-onde plus fiable que d’autres méthodes. L’imagerie micro-onde sera peut-être un procédé qu’on utilisera dans la médecine de demain. Fig.13 Instrumentation de la caméra micro-onde

Page 18: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

18 Commande moteur pas-à-pas Luc Yin

2.2.2 Schéma d’ensemble et synoptique de la caméra La caméra, comme le montre la figure 14 est composée de deux antennes directionnelles en forme de cornet (émetteur et une de récepteur). Entre ces deux antennes, on y trouve une cuve d’eau chauffé et maintenu à 37°, grâce à un système régulant la température. Cette température s’apparente et simule la température du corps humain. En effet, si dans des applications médicales, tel que la détection de tissus cancéreux, les mesures et analyses doivent se faire dans des milieux dont les propriétés diélectriques doivent se rapprocher le plus de celui du corps humain, et ainsi obtenir des visuels contrastés entre le tissus sain et la tumeur. C’est dans cette cuve que les fantômes* sont placés pour être analysés. Le rayonnement micro-onde à 2.45GHz traverse le fantôme placé dans la cuve et produit une onde diffractée qui est analysée par le réseau de mesure du champ ou rétine. A partir des informations reçues on retrouve l'amplitude et la phase du champ.

Fig.14 Schéma d’ensemble de la caméra micro-onde

Page 19: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 19

2.2.3 La modulation de la rétine Grâce au champ micro-onde diffracté par le fantôme, la caméra micro-onde va mesurer l’amplitude et la phase en un point pour déterminer les propriétés diélectriques de l’objet. Cet objet est placé dans une cuve remplie d’eau à 37°C entre le cornet émetteur et celui du récepteur. Il est placé dans l’eau pour la raison suivante, l’eau s’apparente plus aux propriétés diélectriques du corps humain à l’inverse de l’air. Donc on réduit le contraste entre le milieu et l’objet observé. La rétine de dipôles (Fig.15) permet de moduler le signal d’émission. Il se base sur un principe physique de l’électromagnétisme. Après que l’onde de départ à 2,454 GHz soit diffractée, le signal est récupéré au moyen d’un réseau de diodes (32x32), chacune des diodes va être modulée à son tour à une fréquence de 200kHz. Ainsi, d’un point de vue fréquentiel (Fig.16), nous aurons l’information l’onde micro-onde émise à 2,454GHz plus ou moins 200kHz. Les informations récupérées sont la phase et l’amplitude. Les informations portées par les raies sont à +/-200kHz autour de la porteuse à 2,454GHz.

Fig.16 Etalement fréquentiel des informations reçues par le champ de diode Le 1er prototype imageur micro-onde comporte un système d’émission. L’émetteur rayonne d’une manière aussi homogène que possible. La longueur dépend de l’objet à étudier, elle est de l’ordre du centimètre. L’onde ainsi émise par une antenne, de type cornet, se propage à l’intérieur de l’objet. La propagation des micro-ondes n’est pas rectiligne comme les rayons X.

2.454 GHz

2.4542 2.4538

Fp

Fp-0.2 Fp+0.2

Fig.15 Rétine de la caméra 2,45 GHz. Réseau de 1024 dipôles chargés par des diodes PIN. 32 lignes x 32 colonnes.

Page 20: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

20 Commande moteur pas-à-pas Luc Yin

La rétine est l’une des parties clés de la caméra, c’est elle qui va recueillir les informations du corps analysé. Comme on le voit sur la figure 12, l’onde incidente atteint la main, puis elle est diffractée, puis recueillie sur le champ de diodes modulés, on peut ainsi reconstituer l’image de la main et ces propriétés diélectriques à l’aide d’un algorithme de rétropropagation. Fig.12 Une main devant la rétine

Après réception des informations, les données sont traitées et subissent différentes opérations mathématiques (Fig. 13) pour donner une meilleure résolution de l’image.

Fig.13 Traitement de l’image

2.2.4 Principe de la mesure multivue L’application actuelle de la caméra micro-onde se limite à l’observation en temps réel. Le principe de multivue est venu à l’idée aux chercheurs de DRÉ dès lors qu’ils ont voulus détecter des cellules cancéreuses ou tuméfiées. Cette tâche difficile est actuellement attribuée au thésard suédois Tommy Gunnarson, dont le sujet est l’étude de la faisabilité de la détection de tumeur cancéreuse dans le sein.

Pour cela, il effectue des successions de rotation du fantôme à analyser, et lance pour chacune de ces rotations, une mesure quantitative. Actuellement, la rotation du fantôme se fait de façon manuelle, à l’aide d’un disque rapporteur gradué sur 360° (Fig.14), on vient tourner le fantôme à tous les intervalles de rotations où l’on voudrait faire une mesure. De plus le temps mesure entre chaque rotation est extrêmement lent. Il est donc devenu impératif, de mettre en place un système automatisé capable de faire tourner le fantôme à analyser. C’est à partir de cette nécessité qu’est né le sujet du stage : la commande moteur d’un moteur pas-à-pas.

Fig.14 Mode opératoire actuel de rotation

Page 21: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 21

Partie 3Partie 3Partie 3Partie 3 Mise en œuvMise en œuvMise en œuvMise en œuvre d’un système automatisére d’un système automatisére d’un système automatisére d’un système automatisé

Page 22: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

22 Commande moteur pas-à-pas Luc Yin

3.1 Introduction aux moteurs pas à pas

3.1.1 Commande d’un moteur pas à pas Un moteur (du latin mōtor: "celui qui remue") est un dispositif transformant une énergie non-mécanique (éolienne, chimique, électrique, thermique par exemple) en une énergie mécanique. Les moteurs pas-à-pas (Fig.14) diffèrent de beaucoup des moteurs classiques. Au lieu de leur fournir une tension continue, on doit alimenter des bobines dans une séquence précise. Elle permet de transformer une impulsion électrique en un mouvement angulaire. De plus en alimentant une ou plusieurs bobines du moteur, on peut maintenir le moteur figé.

Fig.14 Moteur pas-à-pas

Ce type de moteur est très courant dans tous les dispositifs où l'on souhaite faire du contrôle de vitesse ou de position. L'usage le plus connu du grand public se trouve dans les imprimantes reliées à un ordinateur On trouve trois types de moteurs pas à pas :

- le moteur à aimants permanents - le moteur à réluctance variable - le moteur hybride

Le moteur à aimant permanent : Il s’agit du type de moteur le plus utilisé dans les applications autres qu’industriel. Car il s’agit d’un moteur bon marché, à couple faible, et de basse vitesse, il est donc idéal pour des applications comme les périphériques d'ordinateur. Malgré sa construction qui engendre des pas relativement grands, il est compensé par sa simplicité qui lui donne un économique lorsqu’il s’agit d’une production à grande échelle et à faible coût. Son utilisation est toutefois limitée à des applications comportant peu d'inertie, comme positionner la roue d'impression d'une imprimante marguerite. Le moteur à réluctance variable : Il n'y a pas d'aimant permanent dans un moteur à réluctance variable. Ainsi, le rotor tourne librement sans couple résiduel. Ce type de moteur est souvent utilisé dans des applications de petite taille, comme pour des tables de micro-positionnement. Ils ne sont pas sensibles à la polarité du courant et requièrent un contrôle différent des autres types de moteurs. Le moteur hybride : Le moteur hybride est de loin le plus répandu des moteurs dans le domaine industriel. Son nom provient du fait qu'il combine les principes d'opération des deux autres types de moteur (aimant permanent et réluctance variable).

Page 23: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 23

3.1.2 Les travaux antécédents de la commande motrice

Des travaux ont déjà été menés par des anciens étudiants de l’IUT de Cachan sur la commande motrice d’un moteur pas-à-pas, le but étant d’automatiser le système d’acquisition. Ils ont été effectués par les étudiants Christophe Laurioux et Christophe Mang, qui était en période de stage au DRÉ. Leur système (Fig.15) comprenait deux modes de contrôles, le premier était une commande logicielle par ordinateur et le deuxième était une commande manuelle. Le pilotage manuel se faisait grâce à un montage de roues codeuses et de boutons poussoirs sur la carte de commande. La carte elle-même était commandée via une connexion série 8 broches.

Fig.15 Carte moteur automatique/Manuel La carte de commande motrice était composée de plusieurs parties :

- d’une partie circuit de commande : L297 et L298 (qu’on traitera dans les parties suivantes),

- d’une partie microcontrôleur, - d’une partie adaptation de tension à l’aide du circuit MAX232.

Le cœur de ce montage est contrôlé par le microcontrôleur µC80C52, il analyse les paramètres afin d’exécuter la rotation dans de meilleures conditions (rapidité, précision) en mode Manuel/Automatique. Dialogue avec le PC via la liaison RS232 en mode automatique. Sans ce dernier circuit, les fréquences de commande de la carte changeront de fréquence en fonction des tâches lancées sous Windows. Ils ont donc utilisé un microcontrôleur pour avoir un système qui génère les fréquences de commandes indépendant du PC. Pour que le dialogue entre le PC et le microcontrôleur se fasse, il faut tout d’abords s’occuper des niveaux en sorties et en entrées du PC et du microcontrôleur. C’est là qu’entre en jeu, le MAX232, il régule et transforme les niveaux en sortis du PC en niveau adapté pour le microcontrôleur. Le MAX232 permet de réaliser des liaisons RS232 et des interfaces de communications, il amplifie et met en forme deux entrées et deux sorties TTL/MOS vers deux entrées et deux sorties RS232. Le système était certes très astucieux, mais il n’a pas pu être intégré à la caméra micro-onde, faute de reproductivité. C'est-à-dire que lorsque l’on demandait au moteur de tourner de 180° dans le sens trigonométrique, ensuite de lui redemander de revenir à sa position initiale, donc de tourner de 180° dans le sens anti trigonométrique, le moteur ne revenait pas à sa place initiale, il avait un degré d’écart. A cause de la difficulté d’intégration des commandes dans le nouveau programme de mesure, le programme de 1994 n’a pas retenu.

Page 24: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

24 Commande moteur pas-à-pas Luc Yin

3.2 Etude d’un système automatisé

3.2.1 Caractéristiques du moteur pas à pas Le moteur utilisé est de chez Crouzet Servo, n°82 972 003 (Fig.16):

Fig.16 Notre moteur pas-à-pas

D’après le rapport des stagiaires du projet commande numérique d’un moteur pas-à-pas, il s’agit d’un moteur unipolaire à 4 phases (voir documentation technique du rapport). Le pas du moteur est de 1,8°, il est ramené à 1° grâce à un système de courroies et de poulies. Cela à l’aide d’un rapport des diamètres des poulies de 1,8°. Les Caractéristiques principales sont : - électriques : 12V – 0,6A – 20Ω par enroulement - mécaniques : pas : 1,8° Couple statique : 0,35 Nm Vitesse maximale : 700pas/s Inertie du rotor : 105g.cm² Le moteur possède un stator à deux enroulements à point milieu reliés à la masse (Fig.17) et d’un rotor à une paire de pôles (N-S). Fig.17 Configuration interne Cette configuration permet une alimentation indépendante des 4 bobinages. De ce fait, il est considéré comme ayant 4 enroulements. Ce type d’alimentation est dites unipolaire, du fait que l’alimentation de chaque bobine se fait toujours dans le même sens. Ainsi, chaque alimentation des enroulements crée un mouvement angulaire. Il faut donc alimenter chacun des enroulements de manière successive pour faire tourner le moteur, la fréquence d’alimentation de chaque enroulement déterminera la vitesse de rotation du moteur.

Page 25: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 25

3.2.2 Commande moteur : L297 et L298 Les circuits intégrés L297 et L298 (voir documentation technique en annexes) ont été conçus de manière à fonctionner ensemble, mais ils peuvent aussi bien l’être séparément. Le circuit L297 est appelé translateur, il génère les séquences d'alimentation des différentes phases ou enroulements du moteur, en demi-pas, en pas entier une phase et en pas entier deux phases. Le circuit L298, elle est une étage de puissance ou appelé couramment driver. Le schéma suivant représente une configuration typique du circuit de commande de moteur pas à pas L297 et le double pont L298 pour former une interface avec microprocesseur. Fig.18 Schéma d’ensemble de la carte de commande Le translateur L297 est commandé par les principales entrées logiques suivantes:

- Clock : commande de la vitesse de rotation et de l’avancement d’un pas - CW/CCW : commande du sens de rotation - Half / Full : commande du type de pas : entier ou demi-pas

Les autres entrées (voir doc technique) facultatives à notre étude sont : - En : entrée de validation - Rst : remise à zéro du système

- Sync : synchronisation si plusieurs circuit L297 Le translateur contient en interne un compteur ou automate (Fig.18) qui permet de générer une séquence de huit pas, comme représentée sur la figure 18.

Fig.18 Compteur du circuit L297

Page 26: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

26 Commande moteur pas-à-pas Luc Yin

Ces séquences sont en faite les alimentations successives des enroulements du moteur. Par exemple si les sorties de commande du circuit L297 valent 0101, le premier et le troisième enroulement seront alimentés, tandis que le deuxième et le quatrième enroulement ne seront pas alimentés. On souhaitera faire fonctionner notre système en pas entier, pas=1°. En effet, on cherche à faire tourner un fantôme pour des acquisitions tout les dizaines de degré. En mettant l’entré de commande Half/Full à 0, les séquences de notre automate devient alors :

Fig.19 Compteur en mode pas entier Source : datasheet L297

Les différentes séquences des alimentations du moteur à la sortie du circuit L298, alimenterons respectivement les différentes phases ou bobines du moteur, ce qui générera le mouvement du rotor. Donc la rotation du moteur (voir schéma suivant).

Fig.20 Principe d’un moteur 4 phases alimenté par des séquences d’alimentation en mode pas entier

Page 27: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 27

Le circuit intégré L297 possédant quatre sorties de commande des étages de puissance, ainsi que deux sorties supplémentaires d'inhibition de ces étages (lorsqu'il est utilisé avec le L298). Le circuit intégré L298 (Fig.21) contient deux étages de puissance configurés en pont, chacun commandé par deux entrées logiques (A, B et C, D) ainsi que deux entrées de validation (INH1 et INH2).

Fig.21 Le circuit L298

Celui-ci permet de fournir d'un courant maximal de 2,5A sous une tension maximale de 46V. La puissance obtenue peut ainsi atteindre environ 200W, ce qui permet l'alimentation de moteurs puissants présentant des résistances de bobinage faibles. Il est donc conseillé dans notre cas, de fixer le circuit sur un dissipateur thermique de dimension adapté.

Page 28: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

28 Commande moteur pas-à-pas Luc Yin

3.2.3 Interfaçage PC/moteur L’un des problèmes majeurs de la conception de notre carte de commande moteur est le choix de la technologie de la connectique qu’on utilisera. En effet, la carte PCI4400 est très ancienne, le jour où le système tombera en panne. Il sera très difficilement remplaçable. PCI4400 : la carte est ancienne, on a besoin de changer le système pour pouvoir l’intégrer dans les ordinateurs récent. Or on pourrait programmer avec la PCI4400, mais on cherche à améliorer le système. USB (Universal Serial Bus) : Après quelques recherches de connectique possible, nous avons comparés les avantages et inconvénients de chacune. Voici un tableau récapitulatif des recherches.

Fig.22 Tableau récapitulatif des technologies

Certes, la première technologie qui nous est venu à l’idée est bien sûr le port USB, mais son protocole reste relativement complexe malgré les avantages qu’il peut nous offrir. A cause du manque de temps pour ces réalisations, tel que l’USB, le parallèle ou le série où il était nécessaire de mettre en œuvre un microcontrôleur, nous sommes restés sur la technologie PCI. Après un débat très acharné sur la technologie qu’on y utilisera. Nous avons gardé la solution de commande à l’aide de la carte PCI4400, dont nous utilisons les sorties disponibles non utilisées par la caméra micro-onde. Nous avons donc utilisé les entrées/sorties suivantes de la carte PCI4400 : - TC OUT 2 : patte 62 - P1.7/Dig Table7 : patte 32 - DGND : patte 68 Nous allons traiter et faire un descriptif de la carte PCI4400 dans la partie 3.3.2 : Programmation de la carte PCI4400.

Page 29: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 29

3.3 Les aspects concrets

3.3.1 Réalisation de la carte de commande Le schéma électrique de la carte de commande est fourni avec la documentation technique du circuit L297. La documentation donne un exemple de câblage d’une commande moteur à base de circuit L297 et L298.

Fig.23 Schéma électrique de la carte de commande

Source : Datasheet L297

Listing des composants utilisés :

- L297 - L298 - Résistances : - 0.5Ω x 2

- 22kΩ - Capacités : - 3.3nF

- 100nF x 2 - 470µF

- Diodes 1N4148 x8 - Dissipateur - Résistance réglable 1kΩ

Le L298 possède deux broches d'alimentation : L'une pour le moteur 12V L'autre pour la logique interne, +5V Le L298 ne contient pas les diodes de protections des transistors internes. Il est donc indispensable d’inclure des diodes dans le schéma électrique Ces diodes devront présenter des temps de commutation faible et devront être capable de laisser passer un courant important.

Page 30: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

30 Commande moteur pas-à-pas Luc Yin

3.3.2 Programmation de la carte PCI4400 Avant de comprendre le programme de commande moteur, il est nécessaire d’assimiler certaines notions du système de la carte d’acquisition PCI4400. La carte PCI400 a été développée par RTD USA BME Laboratories [3]. Il s’agit d’une carte à bus PCI offrant les fonctionnalités dont la camera a besoin. On y trouve des Timers permettant la génération des horloges, des entrées/sorties numériques… Il s’agit d’un model de carte très ancienne, donc difficile de trouver des documents s’y rapportant. Ci-dessous, quelques lignes du programme d’initialisation des timers et ports entrées/sorties: Initialisation des timers: SetUtc0Clock4400(DEVICE, 0x0); //implémentation interne de l'entrée de l'horloge UTC0 à la sortie de l'horloge interne de 8MHz SetUtc1Clock4400(DEVICE, 0x4); //implémentation interne de l'entrée de l'horloge UTC1 à la sortie de l'horloge UTC0 SetUtc2Clock4400(DEVICE, 0x3); //implémentation interne de l'entrée de l'horlog e UTC2 à la sortie de l'horloge Pacer clock, Initialisation des ports entrées/sorties: SetDIO0Direction4400 (DEVICE, 255); //programmation de la direction du port0 en sortie SetDIO1Direction4400 (DEVICE, 255); //programmation de la direction du port1 en sortie

L’idée principale de commande moteur est de pouvoir contrôler la vitesse du moteur, l’angle de rotation et son sens de rotation. Nous avons donc développé en langage C et sous DOS, ces différentes fonctions nécessaires à la commande motrice. Les différentes fonctions développées essentielles à la rotation du moteur sont:

- le choix du nombre de rotation (1 à 255) - le choix du degré de rotation (de -180° à 180°) - le sens de rotation (sens trigonométrique ou anti-trigonométrique) - le choix de la vitesse de rotation (vitesse 1, 2 ou 3)

Nous avons fait un programme donc le dégrée de rotation maximal est limité à ±180°, cela évite le moteur de perdre des pas. Car après des rotations successives de plus de 180°, nous avons remarqué que le moteur perdait ou gagnait quelques degrée à chaque rotation. La maitrise du langage C de programmation a été indispensable pour la partie software de mon stage, le fascicule informatique : Le langage C d’Agnès Priou [2] a été très utile.

Page 31: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 31

Pour générer notre fréquence de commande moteur, nous avons utilisé le timer3(UTC2) qui était encore libre sur la carte PCI4400. Voici un oscillogramme des signaux des timer1(UTC0) et timer2(UTC1), dont les fréquences respectives sont 200kHz et 10kHz. La première fréquence est utilisé pour modulés notre fréquence porteuse de 2,454GHz à ±200kHz et la seconde fréquence est celui du rafraichissement de l’affichage ou de l’acquisition.

Fig.24 Fréquences des timers UTC0 et UTC1

Page 32: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

32 Commande moteur pas-à-pas Luc Yin

3.3.3 Tests et Mesures Pour les tests de la carte de commande, une multitude d’instrumentation (Fig.25) a été mise en place, aussi bien pour l’observation des signaux à la sortie de l’étage de puissance du L298 que la mesure du couple du moteur ou bien la génération de signaux. Fig.25 La table de manipulation Les instruments utilisés sont :

- L’oscilloscope wavepro 7300A de LeCroy - Le générateur d’impulsion PM5571 de Philips - L’alimentation triple sortie CPS250 de Tektronix - Un système poulie nacelle pour la mesure du couple moteur - Une balance de Roberval (Voir photos en annexes)

Ainsi Lors des tests de la carte, nous relevons à l’oscilloscope (Fig.26) les mêmes formes de signaux qu’en théorie, pour un fonctionnement du moteur en mode pas entier. L’alimentation des phases A et B est en opposition de phase et ainsi que pour les phases C et D. Fig.26 Oscillogramme des phases A, B, C et D. Le moteur tourne bien lorsque ces signaux sont injectés sur les différentes phases du moteur, la fréquence des signaux augmente ou diminue en fonction de la fréquence de commande en entré du circuit L297. C’est elle qui contrôle la vitesse de rotation du moteur pas-à-pas.

Page 33: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 33

3.3.3.1 L’oscilloscope LeCroy L’oscilloscope utilisé pour la visualisation et l’acquisition des signaux de commande du moteur est un oscilloscope très performant. Avec une interface ordinateur tactile, une carte mère proposant des ports USB, série, parallèle, souris, micros, enceinte… Fig.27 L’oscilloscope Lecroy 7000A Le WavePro 7300A est le plus performant de dans gamme des Wavepro 7000A, avec une bande passante de 3 GHz : - 4 canaux - Vitesse d'échantillonnage de 10 Géch/s sur chaque canal, 20 Géch/s si l'on utilise deux canaux seulement - Profondeur d'acquisition : de 2 à 24 Mpoints pour 4 voies et 48 Mpoints en mode double canal

- Ecran tactile SVGA de 10,4"

- Tension maximale d'entrée : 5 Vrms avec une impédance d'entrée de 50 W, 100 Vmax pour 1 MW - Livré avec 4 sondes passives standard 10 MW PP005A - Fonctionne avec un processeur Pentium 2,54 GHz, avec Windows XP Pro - Interfaces : port Ethernet 10/100Base-T, ports USB 2.0, port parallèle, GPIB en

option

- Fonctionne de +5 à +40 °C

- Dimensions : 264 x 397 x 491 mm, pour 18 kg

Page 34: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

34 Commande moteur pas-à-pas Luc Yin

3.3.3.2 Mesure du couple moteur N’ayant pas trouvé la fiche technique exacte de notre moteur Crouzet Servo, n°82 972 003, nous avons essayé de trouver le couple moteur de ce dernier. Monsieur Alain Joisel a eu une idée ingénieuse, mesurer le couple moteur avec un système poulie et nacelle (Fig.28). En alimentant la carte moteur, les phases du moteur exerce sur ce dernier un couple résistant. Puis on met des poids dans la nacelle jusqu’à que le moteur ne maintient plus la nacelle. Ainsi on pourra mesurer la masse maximale que peut maintenir le moteur grâce à une balance de Roverbal. Nous avons ainsi effectué plusieurs mesures pour différentes distance de l’axe moteur: La masse de la nacelle étant de 160g 1ère mesure : Rayon1 : 20.2cm Masse max1 : 470g 2ème mesure : Rayon2 : 30.4cm Masse max2 : 250g Or le couple moteur est égale à : Couple = Force x Rayon Couple = (masse x cst_gravité) Rayon Donc :

Fig.28 Système pour mesurer le couple résistant du moteur Couple moteur = (masse nacelle + masse max) x 9.81 x rayon C1 = (0.160+0.470) x 9.81 x 0.202 = 1.248N/m C2 = (0.160+0.250) x 9.81 x 0.304 = 1.222N/m Les résultats de la valeur du couple moteur étant très similaire, nous pouvons conclure que le couple de maintient du moteur est d’environ égale à : C = 1.23N/m.

Page 35: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 35

Synthèse et bilan personnel La carte de commande est réalisée et testé, l’ordinateur communique avec la carte de commande via la carte PCI4400, le programme de commande moteur est aujourd’hui utilisable sous DOS, l’utilisateur peut choisir :

- le nombre de rotation, - le dégrée de rotation, - le sens de rotation, - et la vitesse de rotation.

De plus, contrairement au système de 1994, le moteur est reproductible. C'est-à-dire, que lorsqu’on demande au moteur de tourner de 180° dans un sens, puis de tourner de 180° dans l’autre sens, le moteur revient à sa place d’origine. Actuellement, le programme n’est pas encore intégré sur la caméra micro-onde, on pense l’intégrer pendant la période de fin du stage. Mais il reste encore le problème de la technologie de la carte PCI4400. Il pourra être le sujet d’un stage des années suivantes. L'électromagnétisme est une branche de la physique qui fournit un cadre très général d'étude des phénomènes électriques et magnétiques dans leur synthèse du champ électromagnétique. Le stage m’a permis d’approfondir mes connaissances en électromagnétisme, caractéristique des ondes, compréhension de l’utilisation des micro-ondes en imagerie médicale. L’électromagnétisme englobe le domaine de la télécommunication, dont ce dernier est un des enseignements qu’on nous propose à l’IUT de Cachan en GEII. Etant un passionné de la science, ce stage m’a permis d’apprécier d’un œil plus réaliste ce qu’est réellement le monde de la science et plus particulièrement la recherche scientifique. Il s’agit d’un milieu où il ya des problèmes liés au financement. Etre chercheur, c’est d’abords être un passionné. Etre toujours au courant de l’actualité et être à la pointe de ce qui se fait, être innovant, trouver se qui n’a pas encore été fait. J’ai appris l’utilisation du logiciel Visual C++, manipulé avec une multitude d’instrumentation telle que l’oscilloscope extrêmement performant (LeCroy). Je conclurai sur le fait que ce stage m’a été très bénéfique sur le plan professionnel et personnel, j’ai pu découvrir ce qu’est le monde du travail, tout particulièrement celui de la recherche.

Page 36: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

36 Commande moteur pas-à-pas Luc Yin

Bibliographie [1] Tommy Gunnarson : Thèse, Microwave Imaging of Biological Tissues : Applied Toward Breast Tumor Detection, avril 2007 [2] Agnès Priou : Fascicule étudiant de L’institut Universitaire de Cachan, Le Langage C, Septembre 2004 [3] Real Time Devices USA, Inc. PCI 4400 Data Acquisition Driver For Windows, User Manual, Publication No.PCI4400D.9900

Rapport de stage Programmation sous Visual C d’une carte d’interface PCI4400, Cyrile Delestre IUT Cahan, Juin 2007 Commande numérique d’un moteur pas-à-pas, Laurioux Christophe, Mang Christophe IUT Cachan, Juin 1994

Datasheet L297 L297 PCI4400

Page 37: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 37

Partie 4Partie 4Partie 4Partie 4 AnnexesAnnexesAnnexesAnnexes

Page 38: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

38 Commande moteur pas-à-pas Luc Yin

La carte PCI4400 avec la carte de commande moteur

Balance de Roverbal

Page 39: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 39

Carte commande des stagiaire de 1994

Moteur pas-à-pas avec un rapport de diamètre de 1.8

Page 40: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

40 Commande moteur pas-à-pas Luc Yin

Les gammes de fréquence des ondes électromagnétique

Source : http://eurserveur.insa-lyon.fr Le domaine du micro-onde

Source : http://blake.lsmc.u-bordeaux.fr © CNRS-SUPELEC-UPS UMR 8506 Laboratoire des signaux et systèmes (L2S), GIF-SUR-YVETTE

Page 41: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 41

Progrmma commande moteur /************************************************** ********************************** Luc Yin -- Supélec -- 02/06/2008 Programme de commande de la carte moteur avec les c ircuits L297 et L298 On utilise les entrées CLOCK et CW/CCW pour command er le moteur On peut ainsi rentrer les paramètres : - nombre de rotation - degrée de rotation - sens de rotation - vitesse de rotation *************************************************** **********************************/ //****************************** Programme main *** **********************************/ /************************************************** **********************************/ # include "stdafx.h" # include "pci4400.h" # include <windows.h> # include <stdlib.h> # include <conio.h> # include <stdio.h> # include <dos.h> # include <string.h> # include <math.h> # include "prototype.h" # include "corps.cpp" int vit, div_freq=0, mult; short degree; short nb_rotation; unsigned long rotation; int main ( int argc, char * argv[]) initCom(); //initialisation de la carte PCI4400 initports(); //initialisation des ports de la carte PCI inittimers(); //initialisation des horloges de la carte PCI nb_rotation = choix_nb_rotation(); //choix du nombre de rotation printf ( "\n" ); degree = choix_degree(); //choix du degrée de rotation printf ( "\n" ); vit = choix_vit_rotation(); //choix de la vitesse de rotation div_freq = param_div_freq(vit); //reglage de la division de la fréquence de UTC1 mult = param_mult(vit); //reglage du multiplicateur pour convetitir une rotation en temps rotation = calcul_tps_rotation(degree, mult); //conversion rotation en temps rot_moteur(nb_rotation, div_freq, rotation); //rotation du moteur arret (); //arrete du programme et de la carte PCI4400

Page 42: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

42 Commande moteur pas-à-pas Luc Yin

Corps du programme commande moteur /************************************************** ****************************************** Luc Yin -- Supélec -- 02/06/2008 Programme de commande de la carte moteur avec les c ircuits L297 et L298 On utilise les entrées CLOCK et CW/CCW pour command er le moteur On peut ainsi rentrer les paramètres : - nombre de rotation - degrée de rotation - sens de rotation - vitesse de rotation *************************************************** *****************************************/ //**************************** Corps des fonctions utilisées *******************************/ /************************************************** *******************************************************/ #include "prototype.h" BYTE DEVICE = 0; //définition de la carte PCI4400 char szBuf[512]; BoardConfig boardconfig; short nb_rot; short deg; int sens, v, div_f = 0, m, rot, i; /***************************** Initialisation de la communication ***************************/ void initCom( void ) printf( "Chargement du driver de la carte PCI4400...\n" ); if (!OpenBoard4400 (DEVICE,0,szBuf,&boardconfig)) printf( "Erreur d'ouverture\n" ); printf( "%s" , szBuf); else printf( "Openboard done\n" ); printf ( "Initialisation de la carte PCI4400.\n\n" ); InitBoard4400 (DEVICE); /********************************** Programmation d es ports *********************************/ void initports( void ) SetDIO0Direction4400 (DEVICE, 255); //programmation de la direction du port0 en sortie SetDIO1Direction4400 (DEVICE, 255); //programmation de la direction du port1 en sortie /******************************** initialisation de s timers *********************************/ void inittimers( void ) SetUtc0Clock4400(DEVICE, 0x0); //implémentation interne de l'entrée de l'horloge UTC0 à la sortie de l'horloge interne de 8MHz

Page 43: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 43

SetUtc1Clock4400(DEVICE, 0x4); //implémentation interne de l'entrée de l'horloge UTC1 à la sortie de l'horloge UTC0 SetUtc2Clock4400(DEVICE, 0x3); //implémentation interne de l'entrée de l'horloge UTC2 à la sortie de l'horloge Pacer clock, //pour être sûr de ne pas avoir de fréquence en sor tie de UTC2, //et donc de ne pas faire tourner le moteur // Mise en marche des timers, et division des fréqu ence SetupTimerCounter4400 (DEVICE, TC_UTC0, M8254_SQUA RE_WAVE, 40); //signal carré de fréquence 200kHz SetupTimerCounter4400 (DEVICE, TC_UTC1, M8254_SQUA RE_WAVE, 20); //fréquence UTC1 = 10kHz /********************************* Choix du nombre de rotation ******************************/ unsigned char choix_nb_rotation( void ) printf ( "choisir le nombre de rotation:" ); scanf( "%hu" , &nb_rot); //acquisition du nombre de rotation if (nb_rot<=0) //si le nombre de rotation est inférieur ou égale à 0 choix_nb_rotation(); //alors, on redemande la valeur du nombre de rotati on souhaité else //sinon return nb_rot; //on retourne la valeur du nombre de ratation /***************************** Choix du degrée de r otation **********************************/ short choix_degree() printf ( "choisir degree de rotation, de -180 à 180:" ); scanf( "%hu" , &deg); //acquisition du degrée de rotation if ( (deg>=1) && (deg<=180) ) //si le degrée de rotation est comprise entre 1° et 180° WriteDIO14400 (DEVICE, 0); //alors on met à 0 le 8eme bit du port0 if ( (deg<=-1) && (deg>=-180) ) //si le degrée de rotation est comprise entre -1° et -180° WriteDIO14400 (DEVICE, 128); //alors on met à 1 le 8eme bit du port0 deg = -deg; //on remet en nombre positif le degrée de rotation if ( (deg==0) || (deg<=-181) || (deg>=181) ) //si le degrée de rotation est égale à 0 ou supérieur à 180° ou inférieur à -180° choix_degree(); //alors on redemande la valeur du degrée de rotatti on return deg; //on retour la valeur du degrée de rotation /******************************* Choix de la vitess e de rotation ****************************/ int choix_vit_rotation ( void ) printf ( "choisir la vitesse de rotation\nv1=1, v2=2, v3=3:" ); scanf( "%hu" , &v); if ( (v>3)||(v<1) ) //si la vitesse est supérieur à 3 ou inférieur à 1 choix_vit_rotation(); //alors on redemande la valeur de la vitesse

Page 44: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

44 Commande moteur pas-à-pas Luc Yin

else //sinon return v; //on retourne la valeur de la vitesse de rotation /****************************** Paramètre du divise ur de fréquence **************************/ /***************************** pour transformer une fréquence en délai **********************/ int param_div_freq( int vit) if ( vit==1) //si la vitesse chosie est 1 div_f=200; //alors le diviseur est égale à 200 if ( vit==2) //si la vitesse choisie est 2 div_f=100; //alors le diviseur est égale à 100 if (vit==3) //si la vitesse choisie est 3 div_f=50; //alors le diviseur est égale à 50 return div_f; //retourne la valeur du diviseur /**************************** Paramètre du multipli eur nécessaire ***************************/ /************************ à la converssion en délai de la fréquence *************************/ int param_mult( int vit) if ( vit==1) //si la vitesse chosie est 1 m=20; //alors le multiplieur est égale à 20 if ( vit==2) //si la vitesse chosie est 2 m=10; //alors le multiplieur est égale à 10 if (vit==3) //si la vitesse chosie est 3 m=5; //alors le multiplieur est égale à 5 return m; //retourne la valeur du multiplieur /************************** Calcul du délai de rota tion du moteur ***************************/ /******************* en fonction du diviseur de fré quence et du multiplieur *****************/ unsigned calcul_tps_rotation( short degree, int mult) rot = (degree*mult); //calcul du délai de rotation return rot; //retourne la valeur du délai de rotation /******************************* Rotation du moteur *****************************************/ void rot_moteur ( unsigned char nb_rotation, int div_freq, unsigned long rotation) for (i=0; i<nb_rotation; i++ ) //compteur pour réaliser le nombre de rotation souhaité

Page 45: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

Luc Yin Commande moteur pas-à-pas 45

SetupTimerCounter4400 (DEVICE, TC_UTC2, M8254_SQ UARE_WAVE, div_freq); //divise la fréquence par div_freq SetUtc2Clock4400(DEVICE, 0x4); //implémentation interne de l'entrée de l'horloge UTC2 à la sortie de l'horloge UTC0 Sleep(rotation); //rotation SetUtc2Clock4400(DEVICE, 0x3); //implémentation interne de l'entrée de l'horloge UTC2 à la sortie de l'horloge Pacer clock SetupTimerCounter4400 (DEVICE, TC_UTC2, M8254_SQ UARE_WAVE, 0); //divise la fréquence par 0 Sleep(500); //temps d'acquisition /*************************** Arrêt du programme et de lacarte PCI4400 ***********************/ void arret ( void ) printf( "Arret de la carte PCI4400..." ); StopPacer4400 (DEVICE); if (!CloseBoard4400 (DEVICE, szBuf)) printf ( "Erreur lors de la fermeture\n" ); printf( "%s" , szBuf); Sleep(100); else printf( "OK\n" ); printf( "%s" , szBuf); Sleep(2000);

Page 46: Étude et Réalisation d’une commande moteur pas-à-pas ... · Luc Yin Commande moteur pas-à-pas 3 Je tiens tout d’abord à remercier tous les membres du Département Recherche

46 Commande moteur pas-à-pas Luc Yin

Protypes du programme commande moteur /************************************************** ********************************** Luc Yin -- Supélec -- 02/06/2008 Programme de commande de la carte moteur avec les c ircuits L297 et L298 On utilise les entrées CLOCK et CW/CCW pour command er le moteur On peut ainsi rentrer les paramètres : - nombre de rotation - degrée de rotation - sens de rotation - vitesse de rotation *************************************************** **********************************/ //**************************** Prototypes de foncti on *******************************/ /************************************************** **********************************/ /*Ces sonts les prototypes des fonctions utilisées dans la fonction principale*/ void initports( void ); void initCom( void ); void inittimers( void ); unsigned char choix_nb_rotation( void ); short choix_degree( void ); int choix_vit_rotation ( void ); int param_div_freq( int vit); int param_mult( int vit); unsigned calcul_tps_rotation( short degree, int mult); void rot_moteur ( unsigned char nb_rotation, int div_freq, unsigned long rotation); void arret ( void );