Cui-cui : Différence entre versions

Ligne 1 : Ligne 1 :
 
{{ {{tntn|Tuto Details}}
 
{{ {{tntn|Tuto Details}}
 +
|SourceLanguage=none
 +
|Language=en
 +
|IsTranslation=0
 
|Main_Picture=Cui-cui_20190704_171511-.jpg
 
|Main_Picture=Cui-cui_20190704_171511-.jpg
 
|Licences=Attribution (CC BY)
 
|Licences=Attribution (CC BY)
|Description=cui~cui est un réveil dont la sonnerie change en fonction de la météo
+
|Description=cui~cui est prévu pour être un réveil dont la sonnerie change en fonction de la météo.
 +
Pour le moment, c'est un afficheur de données météo, un anneau de leds multicolores, et un générateur de musique diffusée sur  4 hauts-parleurs, le tout commandé par une télécommande infra-rouge.
 
|Area=Art, Electronics, House, Music and Sound
 
|Area=Art, Electronics, House, Music and Sound
 
|Type=Technique
 
|Type=Technique
Ligne 10 : Ligne 14 :
 
|Cost=100
 
|Cost=100
 
|Currency=EUR (€)
 
|Currency=EUR (€)
|SourceLanguage=none
+
|Tags=Musique, Télécommande, Génération, Séquenceur
|Language=en
 
|IsTranslation=0
 
 
}}
 
}}
 
{{ {{tntn|Introduction}}
 
{{ {{tntn|Introduction}}
|Introduction=Avec ses capteurs de température, pression et hygrométrie, cui~cui capte les variations de la météo. Son petit écran permet de visualiser ces données météo [et de programmer le réveil]. Avec ses quatre haut-parleurs, cui~cui joue une sonnerie différente tous les matins en fonctions du temps qu'il fait.
+
|Introduction=Avec ses capteurs de température, pression et hygrométrie, cui~cui capte les variations de la météo. Son petit écran permet de visualiser ces données météo. Avec ses quatre haut-parleurs, cui~cui joue une sonnerie différente tous les matins en fonctions du temps qu'il fait. Le code de la partie musique comprend un séquenceur basique pour faire jouer les notes aux temps précis.
 
 
 
 
Description du projet:
 
  
 +
==Détail du projet:==
 
- un capteur (BME 280 température humidité pression) donne 3 valeur qui sont affichées sur un petit écran.
 
- un capteur (BME 280 température humidité pression) donne 3 valeur qui sont affichées sur un petit écran.
  
Ligne 26 : Ligne 26 :
 
- 4Hauts-Parleurs jouent une musique générée en fonction des données météo (3 paramètres) : température, pression, hygrométrie.
 
- 4Hauts-Parleurs jouent une musique générée en fonction des données météo (3 paramètres) : température, pression, hygrométrie.
  
[- une fonction réveil permet de programmer la musique et l’allumage de la LED à une heure précise]
+
==Génération de la musique==
 +
- 3 paramètres en entrée : température - humidité - pression
  
 +
- ces trois paramètres modulent le tempo et la granularité de la musique générée
  
Génération de la musique
+
- une grille d’accords (Come Rain or Come Shine, ou une autre chanson) sert de réservoir d’harmonie pour la génération. Les différentes notes envoyées aux hauts-parleurs sont choisies aléatoirement dans ces accords.
  
- 3 paramètres en entrée : température - humidité - pression
+
<br />
 +
 
 +
==Notes sur le code:==
 +
 
 +
 
 +
Les timers de l'Arduino :
 +
 
 +
Le timer0 : 8 bits, utilisé par les fonctions delay(), millis() et micros(). Il commande également des PWM (Pulse Width Modulation ou Modulat ion par Largeur d’Impulsion) sur les broches 5 et 6.
 +
 
 +
Le timer1 : 16 bits, qui compte de 0 à 65535 (0 à FFFF en hexadécimal) et qui est utilisé par la bibliothèque Servo ou bien pour de la PWM sur les broches 9 et 10.
 +
 
 +
Le timer2 : 8 bits, qui est utilisé par la fonction Tone() ou bien pour de la PWM sur les broches 3 et 11.
 +
 
 +
Pour utiliser les deux sorties PWM du timer 2 :
  
- ces trois paramètres modulent [l’axiome du l-system et la grammaire de génération] le tempo et la granularité de la musique générée
+
*activer le bit WGM20 du registre TCCR2A pour configurer le compteur en mode « PWM, Phase Correct » :
  
[- le résultat doit avoir une durée fixe (d’environ une minute ? sonnerie de réveil)]
+
  TCCR2A {{|}}= _BV(WGM20);
  
- une grille d’accords (Come Rain or Come Shine, ou une autre chanson) sert de réservoir d’harmonie pour la génération. Les différentes notes envoyées aux hauts-parleurs sont choisies aléatoirement dans ces accords.
+
*activer les bits COM2A1 et COM2B1 pour activer les sorties 3 et 11. Dans ce mode les sorties sont hautes quand le compteur passe à zéro et basses quand le compteur atteint OC2A et OC2B respectivement.
 
}}
 
}}
 
{{ {{tntn|TutoVideo}}
 
{{ {{tntn|TutoVideo}}
Ligne 55 : Ligne 70 :
 
*1 capteur barométrique BMP 280 >> [https://boutique.semageek.com/fr/830-capteur-barometrique-bmp280-grove.html + d’infos]
 
*1 capteur barométrique BMP 280 >> [https://boutique.semageek.com/fr/830-capteur-barometrique-bmp280-grove.html + d’infos]
 
*1 anneau de leds NEOPIXEL RING avec 12 LED RGB LED et driver intégré >> [https://boutique.semageek.com/fr/326-neopixel-ring-avec-12-led-rgb-led-et-driver-integre.html + d’infos]
 
*1 anneau de leds NEOPIXEL RING avec 12 LED RGB LED et driver intégré >> [https://boutique.semageek.com/fr/326-neopixel-ring-avec-12-led-rgb-led-et-driver-integre.html + d’infos]
 +
*3 ou 4 connecteurs à souder à cet anneau de leds
 
*1 écran OLED monochrome 1,3" 128 x 64 graphique >> [https://boutique.semageek.com/fr/874-ecran-oled-monochrome-13-128x64-graphique.html + d’infos]
 
*1 écran OLED monochrome 1,3" 128 x 64 graphique >> [https://boutique.semageek.com/fr/874-ecran-oled-monochrome-13-128x64-graphique.html + d’infos]
 
*1 potentiomètre
 
*1 potentiomètre
Ligne 62 : Ligne 78 :
 
|Tools=*1 découpeuse laser (pour découper les plaques de bois et de plexiglass) - en FabLab
 
|Tools=*1 découpeuse laser (pour découper les plaques de bois et de plexiglass) - en FabLab
 
*1 imprimante 3D (pour imprimer le cache écran)
 
*1 imprimante 3D (pour imprimer le cache écran)
*1 fer à souder (pour souder les connecteurs à la ring LED) - en FabLab
+
*1 fer à souder (pour souder les connecteurs à la ring LED)
 
*1 pince coupante
 
*1 pince coupante
*colle à bois, colle plastique, scotch double-face<br />
+
*colle à bois, colle plastique, scotch double-face...<br />
  
*Inkscape / Illustrator (pour tracer les découpes laser)
+
*Inkscape (pour les découpes laser)
*Tinkercad (pour réaliser le modèle en 3D du cache-écran)
+
*Tinkercad (pour les modèles en 3D)
 
*Cura (pour imprimer en 3D)
 
*Cura (pour imprimer en 3D)
*Arduino (pour écrire le code déversé sur les cartes Arduino)
+
*Arduino (pour le code)
 
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}
 
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}
 
|ExternalAttachmentsLinks=https://wikifab.org/wiki/Fichier:Fichier_decoupe_etages_bois_BENTO.pdf
 
|ExternalAttachmentsLinks=https://wikifab.org/wiki/Fichier:Fichier_decoupe_etages_bois_BENTO.pdf

Version du 16 juillet 2019 à 10:58

Auteur avatarRaphaël | Dernière modification 9/12/2019 par Clementflipo

Cui-cui 20190704 171511-.jpg
cui~cui est prévu pour être un réveil dont la sonnerie change en fonction de la météo. Pour le moment, c'est un afficheur de données météo, un anneau de leds multicolores, et un générateur de musique diffusée sur 4 hauts-parleurs, le tout commandé par une télécommande infra-rouge.
Difficulté
Moyen
Durée
5 jour(s)
Catégories
Art, Électronique, Maison, Musique & Sons
Coût
100 EUR (€)
Licence : Attribution (CC BY)

Introduction

Video d'introduction

Matériaux

  • 1 plaque de médium 3 mm
  • 1 plaque de Plexiglass 3mm
  • 1 carte Arduino Uno
  • 1 capteur barométrique BMP 280 >> + d’infos
  • 1 anneau de leds NEOPIXEL RING avec 12 LED RGB LED et driver intégré >> + d’infos
  • 3 ou 4 connecteurs à souder à cet anneau de leds
  • 1 écran OLED monochrome 1,3" 128 x 64 graphique >> + d’infos
  • 1 potentiomètre
  • 1 bouton pour le potentiomètre (imprimé en 3D)
  • 1 télécommande + récepteur IR : DFR0107 >> + d'infos
  • 4 hauts-parleurs

Outils

  • 1 découpeuse laser (pour découper les plaques de bois et de plexiglass) - en FabLab
  • 1 imprimante 3D (pour imprimer le cache écran)
  • 1 fer à souder (pour souder les connecteurs à la ring LED)
  • 1 pince coupante
  • colle à bois, colle plastique, scotch double-face...
  • Inkscape (pour les découpes laser)
  • Tinkercad (pour les modèles en 3D)
  • Cura (pour imprimer en 3D)
  • Arduino (pour le code)

Étape 1 - Découpage des éléments en bois et plexiglass

Étape 2 - Collage des différents éléments de la boîte

Étape 3 - Fixation des hauts-parleurs

Commentaires

Draft