Avant d’imprimer des objets, il faut les modéliser
Bienvenue dans cette 6ème semaine du MOOC "La Fabrication Numérique". Cette semaine marque le début du module 2 consacré aux machines à commandes numériques.
Avant de parler de ces machines et de leur fonctionnement, nous avons souhaité vous parler d’une phase importante de la création d’un objet : la modélisation ! En effet, pour réaliser une pièce avec une fraiseuse ou une imprimante 3D, la première étape est de modéliser cette pièce grâce à un logiciel dédié et ainsi produire un fichier informatique compréhensible pour la machine cible. Nous verrons donc cette semaine au travers de trois vidéos quel vocabulaire, quels outils et quelles techniques sont nécessaires pour produire des modèles 2D exploitables par les découpeuses laser.
En parallèle de ces vidéos introductives, nous continuons à vous proposer des cours sur les concepts de base du prototypage électronique et du développement Arduino.
Bonne semaine !
- Corrigé du TP 4
- Introduction à la modélisation 2D
- Les Diodes (suite)
- Arduinomètre : Thermomètre avec diode pour sonde
- Travaux pratiques
Corrigé du TP 4
Corrigé du TP 4 : Feu bicolore et barrière
Voici la correction du TP de la semaine dernière qui reprend des éléments du cours sur les librairies logicielles.
Code
Voici une des solutions possibles pour répondre au problème dans l’état actuel de nos connaissances :
// le code dans cette fonction est exécuté en boucle
// si le bouton est appuyé if (etatBouton == HIGH) { // alors on envoie un message sur le moniteur série Serial.print("Bouton appuye");
// puis on remonte la barrière de 90° for(pos = 0; pos <= 90; pos++) { servo.write(pos); delay(15); }
// puis on allume le feu vert durant 5 secondes digitalWrite(ledRouge, LOW); digitalWrite(ledVerte, HIGH); delay(5000);
// et on repasse au rouge digitalWrite(ledVerte, LOW); digitalWrite(ledRouge, HIGH);
// enfin, on redescend la barrière for(pos = 90; pos>=0; pos—) { servo.write(pos); delay(15); } } }
Code: Un exemple de correction du TP 4
Montage
Schéma
Pour réaliser ce montage, vous avez besoin de :
- Un Arduino
- Une platine de prototypage
- Un câble USB
- Une résistance de 10kΩ
- Deux résistances de 220Ω
- Des fils de prototypage
- Une photorésistance
- Un servomoteur
- Un bouton possoir
- Une LED rouge
- Une LED verte
- Du temps
Notre correction s’arrête là. Pour des éclaircissements, nous vous invitons à poser vos questions sur le forum et à reparcourir le cours.
On vous laisse avec un montage très sympa réalisé par albert (vidéo postée sur la communauté Google+) :
Introduction à la modélisation 2D
La modélisation 2D
Merci d’avoir regardé cette vidéo. Celle-ci constitue une brève introduction à la modélisation 2D. La suite consiste à l’installation d'Inkscape, un logiciel de dessin vectoriel qui va nous permettre de dessiner les formes qui seront ensuite transformées en instructions machine compréhensibles par une découpeuse laser, une fraiseuse numérique…
Pour utiliser Inkscape, nous vous invitons à regarder la vidéo ci-dessous. Vous pouvez télécharger le texte de la vidéo ici. Aussi, il est fortement recommandé de lire les références proposées ici :
Références
- Guide d’installation du logiciel Inkscape (en anglais)
- Guide du logiciel Inkscape par Tavmjong Bah (traduit en français par Loïc Guégant)
- Manuel complet consacré à Inkscape par l’équipe de FlossManuals
Merci à Laurent Mattlé pour ce cours !
Initiation Inkscape
Les Diodes (suite)
Les Diodes, suite
Nous avons déjà rencontré la diode, le plus simple des semi-conducteurs. Voici quelques éléments de plus à son sujet, et aussi quelques cousins plus ou moins éloignés.
Un petit rappel du symbole électrique :
Quand l’anode se trouve à +0,7v par rapport à la cathode, la diode se met en conduction. Il ne faut pas laisser passer trop de courant, pour les 1N4148 c’est de l’ordre de 200mA maximum, pour un 1N4001 c’est de l’ordre de 1A. Au delà, les diodes surchauffent et elles se détruisent.
Dans le sens inverse (c’est-à-dire la cathode positive par rapport à l’anode) le courant ne passe pas, ou pas beaucoup : quelques nanoampères au plus à des tensions assez élevées. Notons aussi que les diodes ne supportent pas des tensions inversées sans limites : les petites 1N4148, par exemple, ne supportent pas plus qu’une centaine de volts…
Les DEL ou LEDs
C’est le truc qui s’allumait dans le tout premier montage. Les DEL sont fabriquées dans toutes sortes de formes et toute une gamme de couleurs – même des couleurs 'invisibles’ par l’œil humain comme l’infra-rouge (pour les télécommandes et les détecteurs optiques), et l’ultra-violet.
Le symbole :
Comme pour les diodes classiques ; les DEL exhibent une chute de tension. Cette tension est plus élevée, de l’ordre de quelques volts, et dépend du type et de la couleur. Il faut se référer aux documents techniques, ou au moins aux infos données à titre d’indication sur les sites de vente de composants électroniques, afin de savoir quelle est la chute de tension pour une DEL particulière. Exemple, le site Gotronic :
- une DEL rouge : ;
- une DEL blanche :
Pourquoi c’est si important ?
Parce que, comme pour les diodes classiques, si on laisse passer trop de courant la DEL est détruite très rapidement. Et comment limiter ce courant ? Allez, réfléchissez bien…
Oui, avec une résistance, bien sûr ! (Sinon, pourquoi avoir fait tout ce chemin, hein ?)
Et pour calculer la résistance pour limiter l’intensité, il nous faut deux valeurs : l'intensité maximale, et la chute de tension.
Prenons des exemples :
Ex. 1. Pour calculer R (en se rappelent que ) :
- ;
- (intensité maximale) ;
- .
Calculer R :
Ce circuit est alimenté par une tension de . Allumée, la LED provoque une chute de tension de . Il faut calculer la résistance pour qu’elle fasse 'chuter' . On va appeler cette tension
Pour limiter l’intensité à , utilisant ;
Ex. 2.
- ;
- (intensité maximale) ;
- .
Calculer R :
La chute de tension aux bornes de R :
Pour limiter l’intensité à 20mA,
Ex. 3.
- .
Calculer R :
La chute de tension aux bornes de R :
Pour limiter l’intensité à 20mA,
Ex. 4
- ;
- (intensité maximale).
Le courant que traverse la 1ère DEL traverse aussi la 2ème, donc reste inchangé.
Calculer R :
La chute de tension aux bornes de R :
Pour limiter l’intensité à 20mA,
Ex. 5
Calculer R :
La chute de tension aux bornes de R :
Aïe ! Ça ne marche pas : 5v ce n’est pas suffisant pour allumer les deux DEL en série !
Comment contourner le problème ? On peut toujours mettre les 2 DEL en parallèle :
Maintenant le courant qui traverse R est la somme de l’intensité à travers chaque DEL.
Donc devient 40mA. La chute de tension est la même pour chaque DEL, donc
Et donc
Attention cependant : on fait passer deux fois plus de courant à travers la résistance. Tout courant électrique à travers une résistance génère de la chaleur. Les résistances standard les moins chères sont des résistances 0,25W. Il faut vérifier si on dépasse 0,25W.
Pour calculer la puissance perdue (chaleur) par les 40mA à travers la résistance il nous faut une autre formule – encore très simple :
avec :
- : Puissance en Watts (la chaleur)
- : Intensité (en Ampères)
- : Tension (en Volts)
Dans ce cas nous avons et donc . Ouf !
À noter que, si on veut allumer plusieurs LED/DEL ensembles, et que nous n’avons pas assez de tension pour les câbler en série, il vaut mieux donner une résistance en série pour chaque DEL .
Merci à Glenn Smith pour ce cours !
Arduinomètre : Thermomètre avec diode pour sonde
Première partie
Nous avons abordé le sujet des diodes du point de vue de leur rôle principal, c’est-à-dire de ne laisser passer le courant que dans un sens. Il existe plus de types de diodes qu’il y a de jours dans l’année : des diodes pour des tensions élevées, des diodes qui supportent les intensités élevées, des diodes rapides et j’en passe… Comme toujours il faut chercher la documentation technique pour 'sa' diode afin de savoir comment l’utiliser.
Et dans cette documentation on trouve parfois des informations intéressantes… Nous avons déjà parlé beaucoup de la chute de tension pour les LEDs – or une LED est quand-même une diode.
Cette chute de tension est de l’ordre de 0,5 à 0,7v pour la plupart des diodes. Mais si on creuse dans la documentation, les fabricants avouent parfois que tout n’est pas aussi simple.
Pour beaucoup de diodes, la chute de tension n’est pas fixe – et peut varier en fonction de plusieurs paramètres. Regardons cette courbe, tirée de la documentation 1N4148 de chez Fairchild Semiconductors :
Cette courbe nous renseigne sur deux phénomènes :
- la chute de tension varie en fonction de l’intensité (dans des limites bien précises) ;
- la chute de tension varie en fonction de la température de la diode.
La fonction Température/Intensité n’est pas très évidente avec cette courbe, mais si on prend quelques valeurs en suivant la ligne verticale qui correspond à une intensité de 500 uA, nous avons ceci :
C’est une fonction assez linéaire d’environ -2mV (-0,002v) par °C.
Donc, il devrait être possible de fabriquer un thermomètre Arduino avec une diode pour sonde. Comment faire ?
Pour les plus impatients d’entre vous on va tout de suite à l’essentiel :
Le schéma
C’est tout ? Eh oui !
D’après la courbe ci-dessous on voit qu’il faut une faible intensité pour 'voir' le phénomène.
Dans ce montage, l’intensité à travers la diode, c’est combien ? (réponse en bas)
À cette faible intensité la diode ne risque pas de se chauffer elle-même et on peut lire la chute de tension directement par l’Arduino.
Mais il reste un problème de taille : comment calibrer ce montage ?
Deux possibilités…
- Calibration avec au moins deux températures connues (et donc un autre thermomètre) ;
- Approximation et triche…
(Moi, j’adore la deuxième !)
On va les aborder dans le désordre, parce que l’option 2 est rapide et facile à mettre en œuvre.
Approximation et triche
Il nous faut au moins un point de repère – une valeur connue de chute de tension pour une température donnée. À partir d’un point il est possible de travailler en 'extrapolant' (on va faire comme si la variation de chute de tension est exactement -2mV/°C). C’est de l’approximation.
Si on regarde à nouveau la courbe de chute de tension, on voit que cette chute de tension est aussi fonction de l’intensité. Cela veut dire qu’on peut varier la valeur de tension 'lue' par l’Arduino simplement en variant l’intensité qui traverse la diode. Chouette ! On sait maintenant (car nous avons avalé la loi d’ohm en long et en travers) qu’on peut varier l’intensité en variant la résistance en série. Si on remplaçait la résistance de 10 kOhms par une résistance variable (potentiomètre) ? Comme ceci :
Encore une résistance fixe en série ! Pourquoi ?
Si on ne mettait qu’une résistance variable, et si on réglait cette résistance à bout de course cotée +5v notre pauvre diode se trouverait branchée directement entre le +5v et 0V/GND – sans rien pour limiter l’intensité. Elle ne durerait pas longtemps comme ça. J’ai mal juste en l’imaginant !
Donc la résistance de 4,7 kOhms est là pour protéger notre diode. L’intensité maximum sera de combien d’ampères ? (réponse en bas)
Maintenant il suffit de régler la résistance variable jusqu’à avoir une chute de tension bien précise.
Exemple : regardez la 1ère courbe : une valeur de chute de tension avec l’intensité d’environ 1mA et une température d’environ 20° c’est 600mV.
Voici notre montage sur une platine :
On va se mettre dans une pièce où on sait que la température est de 20°
(le salon), on va laisser notre Arduino et la platine d’expérimentation
s’acclimater pendant un quart d’heure (sur la table du salon : ça fait
réagir la famille et donne un sujet de discussion) et on va régler la résistance variable pour que la
valeur retournée par analogRead()
corresponde à 600mV.
Voici un bout de logiciel pour le réglage :
/*
Montage pour faire un thermomètre avec une diode pour sonde
Premier partie : réglage avec potentiomètre
La diode est montée en sens 'conduction' (cathode branche sur GND)
avec une résistance fixe de 4.7k et une résistance variable de
préférence de 10k en serie.
On cherche à régler le montage pour que le résultat de analogRead();
donne 558 (environ 600mV) a 20°C
Avril 2014 MOOC Fabrication Numérique
*/
// Définition des broches
#define Diode A0 // broche de la diode
#define LED 13 // broche de la led
// variables:
int DiodeValue = 0; // la valeur de la diode
float Result = 0.0; // pour les calculs
void setup() {
pinMode(LED, OUTPUT);
Serial.begin(9600);
// Réference maximum pour le convertisseur ADC = 1,1v
// au lieu des 5v par défaut.
analogReference(INTERNAL);
}
void loop() {
DiodeValue = analogRead(Diode); // Lire la valeur
Serial.print("Valeur : ");
Serial.print(DiodeValue);
// allumer la LED si la valeur est 558
if (DiodeValue == 558 ) {
digitalWrite(LED, HIGH); }
else {
digitalWrite(LED, LOW);
}
// conversion de la valeur en tension. 1,075 = 1,1v/1023
Result = DiodeValue * 1.075;
Serial.print("\t environ ");
Serial.print(Result);
Serial.println(" mV");
delay(2000);
}
Quelques détails sur ce code :
Les nouvelles instructions :
analogReference(INTERNAL)
: Configure la tension de référence utilisée avec les entrées analogiques.
Tension de référence
La chute de tension que nous voudrions mesurer est d’environ un demi-volt, et toujours inférieure à 1V (c’est le fabricant qui nous le dit). Par défaut, le Convertisseur Analogique -> Numérique (CAN ou ADC en anglais) de l’Arduino nous donne une valeur de 1023 pour une tension en entrée de 5v. Cela veut dire qu’une valeur de 1 dans cette échelle équivaut ( 5/1023 ) = 0,0049v ou presque 5mV. La chute de tension que nous allons mesurer varie de 2mV/°C et donc la résolution de lecture sera de presque +/- 3°C…
Mais l’Arduino possède des talents cachés… On peut lui demander, au
lieu des 5v par défaut, de se référer à une valeur de tension de 1,1v
avec la fonction
analogReference(INTERNAL)
Maintenant une valeur de 1023 retournée par
analogRead()
correspond à 1,1v. Ce qui nous donne une résolution de lecture de : moins de 2mV. C’est beaucoup mieux !
Suite(s)
Dans la deuxième partie on va fabriquer une sonde flexible et étanche afin de pouvoir mesurer la température dans des conditions contrôlées, mais aussi afin de faciliter l’étalonnage pour augmenter la fiabilité et la précision.
En attendant, réfléchir à comment convertir notre valeur de tension en valeur de température…
- Réponse 1 : (ou 500 uA si vous préférez…)
- Réponse 2 :
Merci à Glenn Smith pour ce cours !
Travaux pratiques
Tp à faire pour la semaine 7
Vous avez certainement entendu parler de la Useless Box.
Cette machine actionnée par un un interrupteur comporte un bras qui vient basculer l’interrupteur dans le sens opposé rendant cette machine totalement inutile (et donc indispensable ).
L’objectif de cette semaine est de dessiner avec Inkscape le bras de cette machine qui devra répondre aux impératifs fonctionnels décrits ici :
Ce bras sera ensuite utilisé dans la vidéo sur les découpeuses laser à venir dans 3 semaines !
À très bientôt,
L’équipe du MOOC