« SE3Groupe2024-2 » : différence entre les versions
(32 versions intermédiaires par 4 utilisateurs non affichées) | |||
Ligne 2 : | Ligne 2 : | ||
=== Objectif === | === Objectif === | ||
L'objectif de ce projet est de concevoir une station domotique capable de collecter et d'afficher des mesures provenant de capteurs environnementaux. Elle devra également être capable d'activer des actionneurs, tels que des LEDs, des cadenas ou tout autre dispositif, en fonction des besoins. | |||
=== Cahier des charges === | === Cahier des charges === | ||
La station domotique devra permettre l'affichage des informations suivantes concernant une pièce : | |||
* | * Température ambiante ; | ||
* | * Taux d'humidité ; | ||
* Présence humaine (via capteur de mouvement) ; | |||
* D'autres paramètres pourront être ajoutés en fonction de l'avancement du projet. | |||
Elle devra aussi permettre de contrôler différents actionneurs dans la pièce, tels que : | |||
* L'éclairage, en fonction de la présence d'une personne (via un capteur de mouvement) ; | |||
* D'autres dispositifs pourront être intégrés en fonction des besoins. | |||
Des capteurs et actionneurs supplémentaires pourront être ajoutés si le projet atteint ses objectifs initiaux. | |||
=== Spécification techniques === | === Spécification techniques === | ||
'''Microcontrôleur''' | |||
Le projet nécessite un microcontrôleur, qui contiendra le programme, et qui communiquera avec les autres composants via les ''GPIOs'' du microcontrôleur. | |||
Nous avons le choix entre <u>3 modèles de microcontrôleur</u> imposés : '''ATmega16u4, AT90USB1286, AT90USB1287.''' | |||
Voici un tableau comparatif afin de sélectionner le plus adapté pour notre usage : | |||
{| class="wikitable" | |||
|Caractéristiques | |||
|ATmega16U4 | |||
|AT90USB1286 | |||
|AT90USB1287 | |||
|- | |||
|Architecture | |||
|AVR 8 bits | |||
|AVR 8 bits | |||
|AVR 8 bits | |||
|- | |||
|Mémoire Flash | |||
|16 KB | |||
|128 KB | |||
|128 KB | |||
|- | |||
|RAM (SRAM) | |||
|1.25 KB | |||
|4 KB | |||
|4 KB | |||
|- | |||
|EEPROM | |||
|512 Bytes | |||
|4 KB | |||
|4 KB | |||
|- | |||
|Fréquence d'horloge max. | |||
|16 MHz | |||
|16 MHz | |||
|16 MHz | |||
|- | |||
|Nombre de broches GPIO | |||
|26 | |||
|48 | |||
|48 | |||
|- | |||
|Interfaces de communication | |||
|UART, SPI, I²C, USB 2.0 | |||
|UART, SPI, I²C, USB 2.0 | |||
|UART, SPI, I²C, USB 2.0 | |||
|- | |||
|Contrôleur USB intégré | |||
|Oui (USB 2.0) | |||
|Oui (USB 2.0) | |||
|Oui (USB 2.0) | |||
|- | |||
|Taille des registres | |||
|8 bits | |||
|8 bits | |||
|8 bits | |||
|- | |||
|Nombre de broches | |||
|32 | |||
|64 | |||
|64 | |||
|- | |||
|Différences principales | |||
|Conçu pour des applications compactes avec | |||
moins de mémoire et d'E/S | |||
|Plus de mémoire, adapté à des projets complexes nécessitant de nombreuses E/S et de la mémoire | |||
|Similaire au AT90USB1286 mais avec des fonctionnalités spécifiques | |||
pour certaines configurations USB (e.g., modes host/OTG). | |||
|- | |||
|Lien documentation | |||
|https://www.microchip.com/en-us/product/atmega16u4 | |||
|https://www.microchip.com/en-us/product/at90usb1286 | |||
|https://www.microchip.com/en-us/product/at90usb1287 | |||
|} | |||
Avec ce tableau, on constate que l'ATmega16U4 ne parviendra pas à assurer l'affichage LCD que nous souhaiterions mettre en place plus tard. | |||
Nous allons donc garder l'AT90USB1286 et nous ne prendrons pas son homologue l'AT90USB1287 car son cadre d'usage dépasse le notre (utilisation mode USB spécifique HOST/OTG, etc... ). | |||
==== Communication ==== | ==== Communication ==== | ||
La station utilisera des puces '''NRF24L01''' pour la communication sans fil entre les différents composants. | |||
==== Énergie ==== | ==== Énergie ==== | ||
La station sera alimentée de manière hybride, selon les scénarios suivants : | |||
* '''Par un port USB''', pour la programmation, les tests et la configuration avec affichage sur moniteur PC ; | |||
* '''Par une batterie Lithium''', en mode autonome pour une utilisation prolongée (avec affichage écran LCD dans un second temps). | |||
Les capteurs/actionneurs seront alimentées de manière hybride, selon les scénarios suivants : | |||
* '''Par un port USB''', pour la programmation, les tests et la configuration ; | |||
* '''Par une batterie Lithium''', en mode autonome pour son usage définitif. | |||
<u>Modèles de batterie à notre disposition :</u> | |||
* | * Batterie 3.7V 100 mAh, connecteur molex mâle ; | ||
* | * Batterie 3.7V 300 mAh, connecteur molex mâle. | ||
==== Affichage ==== | ==== Affichage ==== | ||
Dans un premier temps, les informations seront remontées via la connexion USB à un programme sur PC (selon les exigences du cahier des charges). | |||
Dans un second temps, un écran LCD sera utilisé pour afficher les données directement sur la station, offrant ainsi une solution autonome, sous réserve du temps disponible pour cette implémentation. | |||
'''Diverses''' | |||
La carte comportera également des LEDs commandés par le microcontrôleur afin d'indiquer son état d'alimentation. | |||
(<u>''Commentaire :''</u> Eventuellement ajouter des LEDS pour afficher si on a une communication qui se fait comme sur les arduinos) | |||
== Lien GIT == | == Lien GIT == | ||
https://gitea.plil.fr/ahouduss/ | https://gitea.plil.fr/ahouduss/se3_2024_B2.git | ||
== Station == | == Station == | ||
Ligne 36 : | Ligne 144 : | ||
=== Routage === | === Routage === | ||
=== Brasure === | === Brasure === | ||
Ligne 44 : | Ligne 151 : | ||
=== Capteur de mouvement === | === Capteur de mouvement === | ||
== Actionneur == | |||
=== Détecteur de mouvement === | |||
== Programmation == | == Programmation == | ||
== Tests == | == Tests == | ||
== Ressources == | |||
* Utilisation de puces à distance [https://passionelectronique.fr/tutorial-nrf24l01 NRF24L01] | |||
# '''<u>Programmateur AVR :</u>''' | |||
* '''Datasheet du microcontrôleur :'''[[Fichier:Datasheet ATMEGA8U2.pdf|centré|vignette|Datasheet ATMEGA8U2]] | |||
* '''Conception schéma :''' | |||
[[Fichier:SE3_2024_G2_prog_schema.pdf|center|thumb|Schéma original]] | |||
[[Fichier:SE3_2024_G2_prog_schema-rex.pdf|center|thumb|Schéma ReX]] | |||
* '''Compréhension schéma :''' | |||
[[Fichier:Comprendre le schéma.pdf|vignette|centré|Document expliquant point par point le schéma réalisé sur KICAD]] | |||
<u>'''(Commentaire''' : Il manque 2 points à revoir. Si vous avez lexplication n'hesitez pas à me le signaler :) )</u> | |||
* '''Conception CAO :''' | |||
[[Fichier:SE3_2024_G2_prog_PCB1.png|left|thumb|MODELE 3D : Face ARRIERE originale]] | |||
[[Fichier:SE3_2024_G2_prog_PCB2.png|right|thumb|MODELE 3D : Face AVANT originale]] | |||
[[Fichier:SE3_2024_G2_prog_PCB-rex.png|center|thumb|Vue de la carte ReX]] | |||
Projet KiCAd programmateur AVR : [[Fichier:2024-PSE-G2-Prog.zip]] | |||
<p style="clear: both;" /> |
Version actuelle datée du 25 février 2025 à 13:14
Description
Objectif
L'objectif de ce projet est de concevoir une station domotique capable de collecter et d'afficher des mesures provenant de capteurs environnementaux. Elle devra également être capable d'activer des actionneurs, tels que des LEDs, des cadenas ou tout autre dispositif, en fonction des besoins.
Cahier des charges
La station domotique devra permettre l'affichage des informations suivantes concernant une pièce :
- Température ambiante ;
- Taux d'humidité ;
- Présence humaine (via capteur de mouvement) ;
- D'autres paramètres pourront être ajoutés en fonction de l'avancement du projet.
Elle devra aussi permettre de contrôler différents actionneurs dans la pièce, tels que :
- L'éclairage, en fonction de la présence d'une personne (via un capteur de mouvement) ;
- D'autres dispositifs pourront être intégrés en fonction des besoins.
Des capteurs et actionneurs supplémentaires pourront être ajoutés si le projet atteint ses objectifs initiaux.
Spécification techniques
Microcontrôleur
Le projet nécessite un microcontrôleur, qui contiendra le programme, et qui communiquera avec les autres composants via les GPIOs du microcontrôleur.
Nous avons le choix entre 3 modèles de microcontrôleur imposés : ATmega16u4, AT90USB1286, AT90USB1287.
Voici un tableau comparatif afin de sélectionner le plus adapté pour notre usage :
Caractéristiques | ATmega16U4 | AT90USB1286 | AT90USB1287 |
Architecture | AVR 8 bits | AVR 8 bits | AVR 8 bits |
Mémoire Flash | 16 KB | 128 KB | 128 KB |
RAM (SRAM) | 1.25 KB | 4 KB | 4 KB |
EEPROM | 512 Bytes | 4 KB | 4 KB |
Fréquence d'horloge max. | 16 MHz | 16 MHz | 16 MHz |
Nombre de broches GPIO | 26 | 48 | 48 |
Interfaces de communication | UART, SPI, I²C, USB 2.0 | UART, SPI, I²C, USB 2.0 | UART, SPI, I²C, USB 2.0 |
Contrôleur USB intégré | Oui (USB 2.0) | Oui (USB 2.0) | Oui (USB 2.0) |
Taille des registres | 8 bits | 8 bits | 8 bits |
Nombre de broches | 32 | 64 | 64 |
Différences principales | Conçu pour des applications compactes avec
moins de mémoire et d'E/S |
Plus de mémoire, adapté à des projets complexes nécessitant de nombreuses E/S et de la mémoire | Similaire au AT90USB1286 mais avec des fonctionnalités spécifiques
pour certaines configurations USB (e.g., modes host/OTG). |
Lien documentation | https://www.microchip.com/en-us/product/atmega16u4 | https://www.microchip.com/en-us/product/at90usb1286 | https://www.microchip.com/en-us/product/at90usb1287 |
Avec ce tableau, on constate que l'ATmega16U4 ne parviendra pas à assurer l'affichage LCD que nous souhaiterions mettre en place plus tard.
Nous allons donc garder l'AT90USB1286 et nous ne prendrons pas son homologue l'AT90USB1287 car son cadre d'usage dépasse le notre (utilisation mode USB spécifique HOST/OTG, etc... ).
Communication
La station utilisera des puces NRF24L01 pour la communication sans fil entre les différents composants.
Énergie
La station sera alimentée de manière hybride, selon les scénarios suivants :
- Par un port USB, pour la programmation, les tests et la configuration avec affichage sur moniteur PC ;
- Par une batterie Lithium, en mode autonome pour une utilisation prolongée (avec affichage écran LCD dans un second temps).
Les capteurs/actionneurs seront alimentées de manière hybride, selon les scénarios suivants :
- Par un port USB, pour la programmation, les tests et la configuration ;
- Par une batterie Lithium, en mode autonome pour son usage définitif.
Modèles de batterie à notre disposition :
- Batterie 3.7V 100 mAh, connecteur molex mâle ;
- Batterie 3.7V 300 mAh, connecteur molex mâle.
Affichage
Dans un premier temps, les informations seront remontées via la connexion USB à un programme sur PC (selon les exigences du cahier des charges).
Dans un second temps, un écran LCD sera utilisé pour afficher les données directement sur la station, offrant ainsi une solution autonome, sous réserve du temps disponible pour cette implémentation.
Diverses
La carte comportera également des LEDs commandés par le microcontrôleur afin d'indiquer son état d'alimentation.
(Commentaire : Eventuellement ajouter des LEDS pour afficher si on a une communication qui se fait comme sur les arduinos)
Lien GIT
https://gitea.plil.fr/ahouduss/se3_2024_B2.git
Station
Schématique
Routage
Brasure
Capteurs
Capteur de température
Capteur de mouvement
Actionneur
Détecteur de mouvement
Programmation
Tests
Ressources
- Utilisation de puces à distance NRF24L01
- Programmateur AVR :
- Datasheet du microcontrôleur :
- Conception schéma :
- Compréhension schéma :
(Commentaire : Il manque 2 points à revoir. Si vous avez lexplication n'hesitez pas à me le signaler :) )
- Conception CAO :
Projet KiCAd programmateur AVR : Fichier:2024-PSE-G2-Prog.zip