Projet IMA3 P5, 2015/2016, TD2 : Différence entre versions
(→Partie électronique) |
(→Partie électronique) |
||
Ligne 83 : | Ligne 83 : | ||
On double clique U1 et change la valeur de frequence à 4352Hz (pour obtenir PWM 17Hz) | On double clique U1 et change la valeur de frequence à 4352Hz (pour obtenir PWM 17Hz) | ||
et on double clique U3 et change la valeur de x: (0000 1010) =10 | et on double clique U3 et change la valeur de x: (0000 1010) =10 | ||
+ | |||
+ | Voyant le figure sur l'osciloscope, on a bien le signal PWM pour le broche TrigInput. | ||
+ | Donc notre partie TrigInput (l'émesion) est le schema suivant: | ||
+ | |||
+ | [[Fichier:notresonar4.png]] | ||
=== Partie informatique === | === Partie informatique === |
Version du 31 mai 2016 à 20:30
Sommaire
Projet IMA3-SC 2015/2016 : Maison connectée
Cahier des charges
Notre projet Système Communicant aura pour objectif de simuler une pièce d'une maison connectée. Nous allons simuler via une LED la lumière de la pièce, via un servo-moteur le volet de la pièce et via une autre LED la lumière du soleil. Un sonar ultra-sons sera utiliser pour détecter l'entrée ou la sortie d'une personne. Ainsi, à l'entrée d'une personne dans la pièce la lumière s'allume si les volets sont fermés ou si les volets sont ouverts et la LED "Soleil" est éteinte. Un phototransistor permettra de détecter la luminosité dans la pièce et de modifier l'état de la LED "lampe" en fonction des résultats obtenus. Enfin, via l'interface web, l'utilisateur pourra décider manuellement d'allumer/d'éteindre la lampe et d'ouvrir/fermer les volets.
note: par soucis de simplification, nous supposerons qu'une seule personne au maximum pourra être dans la pièce. Cela simplifiera la distinction entré/sortie d'une personne dans la pièce.
Matériel
- Une nanoboard
- Une raspberry pi
- Deux LED
- Un phototransistor
- Un sonar ultra-sons
- Un servo-moteur
Note: la partie encadrée en rouge sera placée sur la Nanoboard. Le reste du montage sera conservé sous son format Arduino (ce choix a été fait pour pouvoir respecter la limite temporelle du projet).
Séance 1
Partie électronique
On a trouvé la propriété de le composant sonar suivant:
on a trouvé sur l'internet que il y a 4 broches sur notre composant sonar:
- Vcc: +5v
- Ground: la masse
- TrigInput: il faut qu'on envoye le signal PWM(10us l'état haut,60ms l'état bas) par FPGA.
- Echo: notre FPGA peut recevoir le signal sur ce broche après envoye par liaison série.
Donc pour le signal commandé de TrigInput et echo, c'est comme l'image suivant:
Partie informatique
Configuration, via connexion série, de la raspberry désormais accessible via ssh (pi@172.26.79.8).
Installation de la bibliothèque libwebsockets.
Installation d'apache2 por avoir un serveur web.
Partie Arduino
Test du matériels fournis avec des fonctions simple sous le logiciels Arduino
Travail en dehors des heures de projet :
Programme permettant d'allumer une lampe en fonction d'une personne détecté dans la pièce. (L'allumage de la lampe peut ce faire seulement si elle est autorisé via la connexion série, cela peut éviter un allumage nocturne lors d'une détection erronée)
Séance 2
Partie électronique
Pour émettre le signal à trigInput de notre sonar, il faut qu'on fait un signal PWM avec alpha=, et la fréquence f= = 17Hz. On a tracer le graph dans altium designer pour faire le signal PWM:
Dans ce image, on a mit 16 broches pour le composant PWM, car on a trouvé c'est mieux pour fabriquer alpha:
alpha= on obtient -> x=10 (environs)
on liai avec FPGA:
On double clique U1 et change la valeur de frequence à 4352Hz (pour obtenir PWM 17Hz) et on double clique U3 et change la valeur de x: (0000 1010) =10
Voyant le figure sur l'osciloscope, on a bien le signal PWM pour le broche TrigInput. Donc notre partie TrigInput (l'émesion) est le schema suivant:
Partie informatique
Partie Arduino
Lors de cette séance nous avons terminé le programme Arduino de la première carte.
Montage arduino de la première carte. Programme de cette carte : Fichier:Carte 1 Projet SC S6 IMA3.txt
Sur cette première carte arduino est connecté les LEDS, phototransistor et moteur. Le programme permet d'allumer la lampe si une personne est dans la pièce et que la luminosité est inférieur à une valeur lu par le phototransistor (fixé à 200). Le programme permet l'ouverture et la fermeture du volet si il reçoit O ou F sur la liaison série. La carte reçoit également la présence ou non d'une personne via la liaison série. (0 ou 1)
Montage arduino de la seconde carte.
Programme de cette carte : Fichier:Carte 2 Projet SC S6 IMA3.txt
Ce montage à était fait sur une seconde carte car par la suite cette partie sera remplacé par la partie sur la nanoboard. Cette carte permet de gérer la présence ou non dans la pièce. Si une personne est détecté à moins de 8cm du capteur alors une variable prend ça valeur opposé pour gérer la sortie ou l'entré d'une personne dans la pièce. Ensuite on émet l'état de la variable sur la liaison série (0 ou 1) pour si il y a une personne ou non dans la pièce.