Cui-cui : Différence entre versions

(update property name)
 
(14 révisions intermédiaires par un autre utilisateur non affichées)
Ligne 1 : Ligne 1 :
{{ {{tntn|Tuto Details}}
+
{{Tuto Details
 
|SourceLanguage=none
 
|SourceLanguage=none
 
|Language=en
 
|Language=en
Ligne 5 : Ligne 5 :
 
|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 13 : Ligne 14 :
 
|Cost=100
 
|Cost=100
 
|Currency=EUR (€)
 
|Currency=EUR (€)
 +
|Tags=Musique, Télécommande, Génération, Séquenceur
 
}}
 
}}
{{ {{tntn|Introduction}}
+
{{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]
+
- La télécommande permet de sélectionner alternativement : l'affichage de la météo (touche 0), l'allumage des leds (touche ST/REPT), et le déclenchement de la musique (touche play)
 +
 
 +
===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 :===
 +
<u>Les timers de l'Arduino :</u>
 +
 
 +
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)]
+
<code>TCCR2A [barre verticale]= _BV(WGM20)</code>
  
- 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}}
+
{{TutoVideo
 
|VideoType=Youtube
 
|VideoType=Youtube
 
|VideoURLYoutube=https://www.youtube.com/watch?v=lIEC3m8_Tj8
 
|VideoURLYoutube=https://www.youtube.com/watch?v=lIEC3m8_Tj8
 
}}
 
}}
{{ {{tntn|Materials}}
+
{{Materials
 
|Step_Picture_00=Cui-cui_20190707_212602.jpg
 
|Step_Picture_00=Cui-cui_20190707_212602.jpg
 
|Step_Picture_01=Cui-cui_20190626_145527.jpg
 
|Step_Picture_01=Cui-cui_20190626_145527.jpg
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 bouton pour le potentiomètre (imprimé en 3D)
 +
*1 télécommande + récepteur IR : DFR0107 >> [https://wiki.dfrobot.com/IR_Kit_SKU_DFR0107_ + d'infos]
 +
*4 hauts-parleurs
 
|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)
 +
|Tuto_Attachments={{Tuto Attachments
 +
|Attachment=Cui-cui presentation IMT.ino
 +
}}
 +
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks
 +
|ExternalAttachmentsLinks=https://wikifab.org/wiki/Fichier:Fichier_decoupe_etages_bois_BENTO.pdf
 +
}}{{ExternalAttachmentsLinks
 +
|ExternalAttachmentsLinks=https://wikifab.org/wiki/Fichier:EtageHP_v2.svg
 +
}}
 +
}}
 +
{{Separator}}
 +
{{Tuto Step
 +
|Step_Title=Découpage des éléments en bois et plexiglass
 +
|Step_Content=
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Collage des différents éléments de la boîte
 +
|Step_Content=
 
}}
 
}}
{{ {{tntn|Separator}}}}
+
{{Tuto Step
{{ {{tntn|Tuto Step}}
+
|Step_Title=Fixation des hauts-parleurs
|Step_Title=
 
 
|Step_Content=
 
|Step_Content=
 
}}
 
}}
{{ {{tntn|Notes}}
+
{{Tuto Step
 +
|Step_Title=Le montage
 +
|Step_Content=
 +
|Step_Picture_00=Cui-cui_montage.jpg
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Le code
 +
|Step_Content=Voir fichier cui-cui_presentation_IMT.ino
 +
}}
 +
{{Notes
 
|Notes=
 
|Notes=
 
}}
 
}}
{{ {{tntn|Tuto Status}}
+
{{Tuto Status
 
|Complete=Draft
 
|Complete=Draft
 
}}
 
}}

Version actuelle datée du 9 décembre 2019 à 11:30

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

Étape 4 - Le montage




Étape 5 - Le code

Voir fichier cui-cui_presentation_IMT.ino

Commentaires

Draft