Groupe B4
Nom et Prénom: Emile WHEWELL Paul BELLENGER Lucien FIQUET Gabriel WERNAIN
Cursus: CMI-PHY-B
Séance 1
Pour notre Première séance du Projet FabLab consistait à nous faire découvrir les lieux, nous avons notamment visité les différentes salles. Il y avait la salle à imprimantes 3D, la salle à Menuiseries, la salle électronique et la salle à découpe. Notre professeur Vincent Dupuis nous a aussi expliqué l’origine du FabLab mais aussi le déroulement des séances lors de ce semestre.
Séance 2
Durant cette séance, on a appris à utiliser de nouveaux moyens de conceptions grâce à des logiciels de modélisation (Inkscape, OpenScad, Freecad,...) pour s'en servir afin de concevoir des objets avec l'aide d'imprimante 3D.
En effet, de la modélisation logicielle au fonctionnement de l'imprimante et de ses paramètres, Vincent Dupuis nous a tout passé en revue.
(Impression 3D d'un projet)
Séance 3
Lors de cette séance, nous avons eu un premier contact avec des technologies "emportées", à savoir des cartes Arduino. Nous avons dû apprendre à effectuer des programmes basiques sur celles-ci, comme les faire clignoter.
Dans ce cours nous avons vu dans un premier temps, comment marchait les cartes Arduino. Après nous avons vu le plus intéressant comment les programmées. Ce qui est fascinant car cela peut nous permettre de le faire cher nous et de nous faire nos propre projet tout seul, facilement. Moyennent tout de même en acheter une. De plus, comme pour les autres logiciels, celui pour programmé les Arduino est open source, donc pas besoin d’acheter le logiciel.
Pour finir, on a vu comment utilisé les impriment 3d dans le cadre du fablab a Sorbonne université. Et certain on profité de cela pour lancer leur propre impression de lors projet personnel. Objet qu’il avait réalisé, sur les logiciels qu’on avait vu au dernier cours. On a notamment eu le droit a l'impression d'une réplique d'une rame de RER
Séance 4
Durant cette séance, nous avons commencé à chercher pour notre projet. Nous avons opté pour un détecteur de force qui relâche quelque chose à partir d'une valeur seuil. Soit en d'autre mot une mine ! En effet, notre détecteur de force détecterai le poids qui est on le rappel une force (P=mg avec g=10 m/s^-2). On aurait donc un balance qui a partir d'un poids critique lâcherai des confettis, de l'eau ou bien de l'huile.
Nous avons fait un prototype, dont voici une photo
Pour ce system nous avons utilisé un capteur Grove - Round Force Sensor (FSR402), qui fonctionne grâce a deux plaque conductrice sépare par un espace d'une épaisseur h, et tout l'astuce tient en le faite que lorsque qu'on applique un force F sur ce capteur l'épaisseur h diminue, diminuant ainsi la résistance entre les deux plaque conductrice, c'est cela que le capteur capte et c'est aussi cela que renvoi le capteur.
Ceci entraine que les valeurs de sortie ne sont pas des newtons ou de kg, mais cela n'est pas grave car la valeur de sortie dépend quand même des newton. On a donc simplement a nous même calibre ce capteur.
Pour avoir le code qui fait fonctionne le Round Force Sensor, nous avons chercher sur internet. Nous l'avons trouve sur le site simple duino
/* How to use a Force sensitive resistor to fade an LED with Arduino
More info: http://www.ardumotive.com/how-to-use-a-force-sensitive-resistor-en.html
Dev: Michalis Vasilakis // Date: 22/9/2015 // www.ardumotive.com */
//Constants:
const int ledPin = 3; //pin 3 has PWM funtion
const int sensorPin = A0; //pin A0 to read analog input
//Variables:
int value; //save analog value
void setup(){
pinMode(ledPin, OUTPUT); //Set pin 3 as 'output'
Serial.begin(9600); //Begin serial communication
}
void loop(){
value = analogRead(sensorPin); //Read and save analog value from potentiometer
Serial.println(value); //Print value
value = map(value, 0, 1023, 0, 255); //Map value 0-1023 to 0-255 (PWM)
analogWrite(ledPin,255-value); //Send PWM value to led
delay(100); //Small delay
Séance 5
Durant cette séance, nous avons en quelque sorte finalisé (le) notre prototype (de plaque pour permettre de poser des objets et les mesurer) de notre balance. (Nous avons aussi commencé à conceptionner notre boite via l'imprimante 3D.)
On peut voir ci-dessous un schéma de la version finale. On remarquera que le capteur ce trouve en bas du cylindre. Ceci permet d'après nos expériences d'avoir une mesure plus précise. En effet, le pilier ayant un diamètre exactement égale au diamètre du capteur, il permet de mettre tout le poids de l'objet sur le capteur et donc de réellement capté tout le poids de l'objet.
Vu qu'on rappel que notre objet n'est pas une simple balance mais un mine ! Nous avons voulu rajouter a notre projet un moteur pour pouvoir éjecter a l'aide d'une hélice des confettis. Pour cela nous sommes aller dans un premier temps chercher des moteurs dans le fablab pour voir si il possédait des moteurs susceptible de nous intéressé.
Dans un premier temps nous avons trouvé ce moteur :
Malheureusement, le moteur s'avère être trop faible pour pouvoir propulser quoique ce soit même en le calibrant au maximum de sa puissance.
En cherchant sur internet, nous avons trouver le code relier au servomotor.
#include "Servo.h"
Servo servo; // création de l'objet "servo"
void setup() {
servo.attach(10); // attache le servo au pin spécifié
}
void loop() {
servo.write(1000); // demande au servo de se déplacer à cette position
delay(100);
}
Séance 6
Dans cette séance nous avons voulu découper dans un premier temps la boite. Cependant, nous avons rencontre plein de problème pour découper cette boite. En effet, pour la faire a la bonne taille on devait la découper en plusieurs fois. Sauf que problème quand on découpait en plusieurs fois c'est que la découpeuse ne faisait pas exactement la même taille ce qui nous empêchais d'assemble correctement la boite.
Pour faire le model de la boite, nous avons utilise ce logiciel en ligne : Make A Box: Generate Laser Cutter Templates for Enclosures! En effet, ce logiciel nous a été conseiller par le prof car il permet d'avoir rapidement un model de boite de n'importe quel taille.
Séance 7
Lors de cette séance, nous avons réussi des les premières minutes (et oui en seulement 10 minute !!) a faire cette boite dont nous avons eu tellement de mal a faire.
dont voici une photo :
Cependant le soucis avec cette boite c'est la taille. En effet, les est trop petit, pour un raison assez simple c'est que une boite de la taille qu'on avait prévu de découpe au départ est trop grande pour la découpeuse laser du fablab on a donc du crée une boite plus petite. On a donc du pour remédier a ce problème réimprimé notre pilier, pour un pilier plus petit (6,3 cm de haut contre X) et nous allons découper aussi une autre boite plus petit, pour y mettre les confettis et le moteur a propulsion des confettis.
De plus, lors de cette séance nous avons voulu calibre notre capteur de force. Pour cela nous avons pris une balance et deux bouteille d'eau ainsi que le système pilier plus capteur.
Cependant on c'est rendu compte d'un phénomène plutôt intéressant. Le capteur envoi un signale de plus en plus élevé si on laisse l'objet longtemps dessus. Soit la valeur renvoyé par le capteur dépend du temps. On a quand même fait quelque mesure, mais on a pas eu le temps de finir a cause de la durée des séances. Nous avons reproduit chaque mesure 3 fois pour une plus grande précisions et pour pouvoir mesure facilement une incertitude. Pour les valeurs de sortie nous avons pris la moyenne des valeurs.
Pour faires ces mesures nous n'avons pas utilisé notre création car celle si n'étais pas encore fini. Nous avons don utilise un système. Nous avons pris une bouteille d'eau car avec l'eau c'est simple de faire varie le poids ! Nous avons bien évidemment utilise un balance car pour pesé un objet ca reste le top. Ci-dessus une photo de notre système:
Séance 8
Pour cette séance nous voulions commencer par refaire le pilier. En effet, celui que nous avions fait la séance précédant a eu un défaut de fabrication. Ce qui a fait qu'il a cassé. Pour ne pas perdre de temps a réimprime en trois D un nouveau pilier, nous avons pris la décision de découper le pilier trop grand que nous avions pour qu'il soit a la bonne taille. Pour cela, nous avons utilise une simple scie a bois classique.
par la suite nous avons continue a chercher comment augmenter la puissance de notre Arduino pour correctement alimenter notre moteur. Pour cela nous avons décide de souder plusieurs pile entre elle. En effet, nous avions essaye avec 4 piles mais même la ce n'étais pas assez puissant ! On sait donc dit que vu la loi des nœuds si nous mettions plusieurs pile en séries alors la nous aurions assez de puissant vu que les puissances des piles allais s'additionnés. On les a donc souder ensemble a l'aide d'un fer a souder. Pour cela on a utilise un fil en mental spécialement fait pour la soudure. En effet, une membre d'un autre groupe nous a dit que la température de fusion des câbles électriques était plutôt élevé contenue de l'effet joules, il était donc plus simple d'utiliser un autre câble pour souder.
Sceance 9
Dans cette séance, il nous restait plus qu’a finalisé le projet. En effet, notre travail, qu’on avait rudement mené, avait payé et on entrevoyait enfin les derniers composant de notre création s’emboîter. Dans cette séance nous avions donc fait la To-do liste suivant:
- Faire un trou dans notre boîte pour laisser le fils de l'Arduino passer et pouvoir enfin relier nos deux boite
- résoudre notre problème avec qu’on avait avec notre moteur.
- faire une grille pour éviter que le polystyrène retourne en l’hélice
- ressayer d'étalonne notre capteur
Pour faire le trou, ça a été un chantier peu fastidieux. Moi (Gabriel) et mon vaillant camard (Émile) nous sommes partis en exil dans le coin menuiserie du fablab, pour à l’aide d’une perceuse percer sans merci ce magnifique bois qui composait le mur du fond de notre boîte. Hélas, aucun des nombreux forets que nous avions trouvés sur le chemin de notre exode ne possédait la taille du trou que nous voulions faire. Nous avons donc dû penser à une solution, percer beaucoup de petits trous avec un foret plus petit pour faire notre grand trou. Là, on pourrait se dire que notre périple arrive à son permis. Après tous, rien de plus simple que percer un trou avec une perceuse. Mais c’était sans compter notre bravoure inconsciente ! En effet, nous avions fait une des plus graves erreurs quand l’on veut se jouer menuisier, nous tenions la perceuse a une main ! L’autre servant à stabiliser la boîte. Entraînant un risque, un risque qui heureusement nous n’ai pas arrivé ! Un risque, pour lequel un enseignant est venu nous prévenir en courant ! On pouvait se percer la main. Pour éviter ce danger, il fallait utiliser la méthode s'salvatrice suivante: fixe a l'aide de clef la boite a l'établie et ensuite percer mais a deux mains ! de tel sorte que la machine puise plus nous déraper sur notre autres mains, ce qui nous aurait probablement fait ressemblé à notre bebe, notre boite.
Par la suite,
-
- on a essaye 12c Motor driver TB6612FNG
- on a essaye que arduino
- relai
Pour continuer, vers la fin du cours on a essayer d'étalonner capteur. Pour cela, on a refait le même système que plus haut ce qui nous a donnés ces valeur ( la valeur pour 50g à disparue du a un problème technique)
les barres d'erreurs ne ce vois pas du a leur taille, face a l'échelle du graphique et la taille du point
tout les graphique suivant sont les valeur du capteur pour un poids donné, en pensant que la balance est a une précision de 1g, les incertitudes des moyennes sont tous a 6 aussi
écart type de population de17, moyenne de 446,7,
ecart type de 0,8, valeur moyenne de 65
ecart type de 16.3, valeur moyenne 495
ecart type de 24.8, valeur moyenne de 455
ecart type de 12.2, valeur moyenne de 500
ecart type de 19.3 , valeur moyenne de 491,66
Projet personnel Paul Bellenger
Projet personnel Lucien Fiquet
Pour mon projet d'impression 3D, j'ai décidé de faire un objet assez commun mais pas trop facile non plus. Un avion m'a paru une bonne idée sur un coup de tête et j'ai commencé à écrire le programme sur OpenSCAD.
En commençant, je suis parti du plus facile vers le plus dur pour faire quelques ajustements à la fin.
$fn=50;
module base (){
rotate([0,90,0])cylinder(10,1,1);
translate([10,0,0])rotate([0,90,0])cylinder(3.5,1,0.6);
translate([13.5,0,0])rotate([0,90,0])cylinder(0.2,0.6,0.5);
translate([13.7,0,0])rotate([0,90,0])cylinder(0.1,0.5,0.1);
translate([-0.8,0,0])rotate([0,90,0])cylinder(0.8,0.7,1);
translate([5,1.7,0])rotate([0,90,0])cylinder(2,0.5,0.4);
translate([5,3.1,0])rotate([0,90,0])cylinder(2,0.5,0.36);
translate([5,-1.7,0])rotate([0,90,0])cylinder(2,0.5,0.4);
translate([5,-3.1,0])rotate([0,90,0])cylinder(2,0.5,0.36);
};
translate([0,0,0.5])polyhedron(
points=[[0.3,0,3], [0,0.5,0.3], [0,-0.5,0.3], [4,0,0.5]],
faces=[[0,2,1],[1,2,3],[3,0,1],[2,0,3]]
);
module wings (){
translate ([5.5,0,0.3])polyhedron(
points=[[-1,7,0], [-2,0.5,0.5], [-2,0.5,-0.3], [5,0,0]],
faces=[[0,1,2],[1,3,2],[3,1,0],[3,0,2]]
);
translate ([5.5,0,0.3])polyhedron(
points=[[-1,-7,0], [-2,-0.5,0.5], [-2,-0.5,-0.3], [5,0,0]],
faces=[[1,0,2],[1,2,3],[0,1,3],[0,3,2]]
);
};
module swings(){
translate ([0,0,0])polyhedron(
points=[[0,-2.5,0], [0,0.5,0.5], [0,0.5,-0.3], [4,0,0]],
faces=[[1,0,2],[1,2,3],[3,0,1],[3,2,0]]
);
translate ([0,0,0])polyhedron(
points=[[0,2.5,0], [0,0.5,0.5], [0,0.5,-0.3], [4,0,0]],
faces=[[0,1,2],[1,3,2],[1,0,3],[3,0,2]]
);
};
//translate ([30,0,0])polyhedron(
//points=[[1,0,4], [0,0.5,0.3], [0,-0.5,0.3], [4,0,1]],
// faces=[[0,1,2],[1,2,3],[3,0,1],[3,0,2]]
// );
//translate([30,0,0])cube([4,4,25],center=true);
//translate([30,7,0])cube([4,4,25],center=true);
base();
wings();
swings();
J'ai donc d'abord commencé par le module que j'ai appelé "base", pour simuler le corps de l'avion avec une succession de cylindre pour y donner forme, auxquels j'ai plus tard rajouté des moteurs se situant sous les ailes.
Ensuite est venue la partie compliquée, j'ai utilisé la fonction "polyhedron" pour les ailes ce qui s'est révélé être une torture. Pour l'utiliser il faut définir une combinaison de points formants les sommets de la figure, puis définir les faces en fonction des sommets auxquelles elles sont jointes. Mais après cela, il faut également vérifier que les sommets sont définis dans le sens horaire de la face, sans quoi on peut avoir un aperçu mais pas de rendu car c'est comme si la face était à l'envers.
Et je m'estime heureux car je n'ai fait que des formes à quatre sommets et quatre faces, simplifiant ainsi la chose pour les ailes. Celles-ci sont divisées en trois groupes : les deux principales définies dans le module "wings", les deux horizontales arrières définies dans le module "swings" pour "small wings" car j'ai oublié l'existence du mot aileron et la dernière définie hors module car je n'avais plus de nom.
Ce qui nous donne ce résultat :
Cela ne paye pas de mine et nécessitera un peu de support au niveau des ailes, mais je suis plutôt satisfait du résultat.
Voilà maintenant à quoi cela ressemble en vrai :
Le fil a eu un léger problème au niveau du dessous des ailes mais cela reste globalement une réussite.
Pour mon projet de découpe 2D, je suis parti d'une image d'une œuvre que j'aime beaucoup et je l'ai retouchée sur le logiciel Inkscape. J'ai modifié le grain pour obtenir un contraste moins flagrant sur la gravure, modifié légèrement l'ombrage, et rajouté un cadre de découpe pour avoir une pièce centrée.
Voilà le résultat :
Je suis entièrement satisfait du résultat. Il y a un petit défaut du bois mais ça n'a pas non plus déformé l'image.
Projet personnel Gabriel Wernain
Imaginez-vous un monde où vous découvrez une super application qui vous permet de transformer votre tablette en deuxième écran, mais hélas, vous n’avez pas de quoi maintenir votre tablette en position écran d’ordinateur. Ne serait-ce pas un monde frustrant, un monde où votre bonheur serait enchaîné par ce contre-temps? C’est pour cela que j’ai employé mon projet 3D à faire un support pour mon iPad de telle sorte que mon bonheur soit enfin complet. Pour cela, j’ai utilisé le logiciel Openscade. J’ai fait ce code (il est intéressant de noter que le code est à échelle 1=1cm. De plus, les mesures sont faites de telle sorte que ma tablette puisse tenir dans les deux sens.):
cube([13,2,1]);
translate([3,-5,0])rotate([0,0,90])cube([15,3,1]);
translate([13,-5,0])rotate([0,0,90])cube([15,3,1]);
rotate([270,0,0])cube([3,2,1]);
translate([0,2,0])rotate([270,0,0])cube([3,2,1]);
translate([10,0,0])rotate([270,0,0])cube([3,2,1]);
translate([10,2,0])rotate([270,0,0])cube([3,2,1]);
ce qui m’a donné ce résultat :
le résultat après impression a donné cela :
Projet personnel Emile Whewell