Chi è online

Abbiamo 36 visitatori e nessun utente online

ARDUICARILLON

 

 

ARDUICARILLON

 

 

AUTORI: Di Bella Alessia

 

FOTO: 

 

 

 

 

 

DESCRIZIONE: Arduicarillon è nato per le persone come me che amano la danza, quindi, se si ha la possibilità di unire passione e scuola, o meglio innovazione, perché non farlo. Ardui carillon è infatti un prototipo di carillon comandato da Arduino, da ciò deriva infatti il suo nome. Questo carillon è come tutti gli altri, ma con la particolarità di accendere i suoi led e tenere quindi nella sua vicinanza la luce, e in più non è un carillon se non suona, perciò la ballerina gira sulle note di “Per Elisa” di Beethoven. Alla fine della canzone i led si spengono e la ballerina non gira più. Dato il loop riprenderà il suo ciclo poco dopo, infine decideremo noi quando spegnerlo.  

 

INGOMBRO: 9 cmx12,5 cm x23 cm

 

PROBLEMA CHE RISOLVE: i led possono permettere la sostituzione di una lucina notturna prima di addormentarsi.

 

POSSIBILI UTILIZZI: il carillon è un alleato del sonno, viene infatti utilizzato per addormentarsi. A ciò aggiungiamo la possibilità di non rimanere al buio (in particolare per i più piccoli). Magari riuscire anche a personalizzarlo con una propria musica preferita e rendere più rilassante il momento prima di dormire.

 

MATERIALI USATI: 

 

  • HARDWARE :  Arduino UNO , motore passo-passo (per permettere il movimento della ballerina), buzzer (per dare musicalità al carillon), sei led (per permettere l’illuminazione).
  • SOFTWARE : IDE di Arduino  

 

 

 

COSTI: 

 

MATERIALE

N° PEZZI

COSTO UNITARIO

kit di arduino

1

19,99

motore passo-passo

1

3,95

bellerina

1

5,00

cestino + scatolina

1

5,00

     

TOTALE

33,94

 

 

 

PREREQUISITIconoscenze basi dell’IDE di Arduino e competenza logica

 

CONOSCENZE: matematica (per poter far girare la ballerina di tot), musica (saper comporre musica o avere una minima conoscenza delle note), codici di Arduino (saper costruire diversi codici e saperli unire).

 

COMPETENZE ACQUISITE: 

 

  • problem solving
  • creatività
  • pensiero analitico

 

FONTI: BIBLIOGRAFIA e SITOGRAFIA

 

Prima di utilizzare l’Arduino si ha bisogno di imparare le basi dell’IDE e quindi la mia prima fonte è il professore che armato di pazienza ci ha fatto muovere i primi passi, accendendo così i primi led a ciò si aggiunge la curiosità che ci ha permesso di “googleare” e di trovare perciò ciò che fosse necessario. Quindi alla prima fonte si aggiunge google. Il resto della fonte è il cervello di noi stessi, che caparbio non ci abbandona neanche la notte per poter raggiungere un obiettivo.

 

 

 

 

 

APPENDICE: Codice e Istruzioni di montaggio hardware

 

Codice

 

#include <Stepper.h>

 

int impulsi;

 

int speakerPin = 13;

 

int buzzer=3;

 

Stepper small_stepper(32, 8, 10, 9, 11);

 

char notes[] = "EDEDEbDCaceabegbCeEDEDEbDCaceabeCbaEDEDEbDCaceabegbCeEDEDEbDCaceabeCbabCDEgFEDfEDCeDCbeEeEDEDEDEDEDEDEbDCaceabegbCeEDEDEbDCaceabeCba";

 

 

 

//              E D E D E b D C a c e a b e g b C e E D|E D E b D C a c e a b e C b a E D E D E b D C|a c e a b e g b C e E D E D E b D C a c e a|b e C b a b C D E g F E D f E D C e D C|b e E e E D E D E D E D E D E D E b D C a c e a b e g b C e E D E D E b D C a c e a b e C b a

 

int beats[] = { 1,1,1,1,1,1,1,1,3,1,1,1,3,1,1,1,3,1,1,1,1,1,1,1,1,1,3,1,1,1,3,1,1,1,3,1,1,1,1,1,1,1,1,3,1,1,1,3,1,1,1,3,1,1,1,1,1,1,1,1,1,3,1,1,1,3,1,1,1,3,1,1,1,2,1,1,1,2,1,1,1,2,1,1,1,3,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,3,1,1,1,3,1,1,1,1,1,1,1,1,1,3,1,1,1,3,1,1,1,6};

 

int tempo = 175;

 

 

 

void playTone(int tone, int duration) {

 

  for (long i = 0; i < duration * 1000L; i += tone * 2) {

 

    digitalWrite(speakerPin, HIGH);

 

    delayMicroseconds(tone);

 

    digitalWrite(speakerPin, LOW);

 

    delayMicroseconds(tone);

 

  }

 

}

 

 

 

void playNote(char note, int duration) {

 

  char names[] = {'c','d','e','f','g','a','b','C', 'D', 'E', 'F', 'G', 'A', 'B', 'U'};

 

  int tones[] = {3822,3424,3033,2864,2551,2272,2024, 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956};

 

 

 

// play the tone corresponding to the note name

 

  for (int i = 0; i < sizeof(tones); i++) {

 

    if (names[i] == note) {

 

      playTone(tones[i], duration);

 

    }

 

  }

 

}

 

 

 

 

 

void setup()

 

{

 

   pinMode(7,OUTPUT);

 

   pinMode(6,OUTPUT);

 

   pinMode(5,OUTPUT);

 

   pinMode(4,OUTPUT);

 

   pinMode(3,OUTPUT);

 

   pinMode(2,OUTPUT);

 

   pinMode(1,OUTPUT);

 

   pinMode(0,OUTPUT);

 

   pinMode(buzzer,OUTPUT);

 

   pinMode(speakerPin, OUTPUT);

 

}

 

void loop(){

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(0,HIGH);

 

delay(1000);

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(1,HIGH);

 

delay(1000);

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(2,HIGH);

 

delay(1000);

 

impulsi = 256;

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(4,HIGH);

 

delay(1000);

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(5,HIGH);

 

delay(1000);

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(6,HIGH);

 

delay(1000);

 

impulsi = 256;

 

small_stepper.setSpeed(500);

 

small_stepper.step(impulsi);

 

tone(buzzer,3560,100);

 

delay(300);

 

tone(buzzer,4560,100);

 

digitalWrite(7,HIGH);

 

delay(1000);

 

impulsi = 256;

 

small_stepper.setSpeed(900);

 

small_stepper.step(impulsi);

 

delay(0);

 

for (int i = 0; i < sizeof(notes); i++){

 

    if (notes[i] == ' ') {

 

      delay(beats[i] * tempo); // rest

 

    } else {

 

      playNote(notes[i], beats[i] * tempo);

 

    }

 

    // pause between notes

 

    delay(tempo / 2);

 

   

 

impulsi = 256;

 

small_stepper.setSpeed(900);

 

small_stepper.step(impulsi);

 

delay(0);

 

}

 

impulsi= -256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(7,LOW);

 

delay(1000);

 

impulsi=-256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(6,LOW);

 

delay(1000);

 

impulsi=-256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(5,LOW);

 

delay(1000);

 

impulsi=-256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(4,LOW);

 

delay(1000);

 

impulsi=-256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(2,LOW);

 

delay(1000);

 

impulsi=-256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(1,LOW);

 

delay(1000);

 

impulsi=-256;

 

small_stepper.setSpeed(200);

 

small_stepper.setSpeed(impulsi);

 

digitalWrite(0,LOW);

 

delay(1000);

 

}

 

Istruzioni Hardware

 

Il carillon si accenderà e ad uno ad uno i suoi led (collegati ognuno ad no pin digitale) , partirà in seguito la base creata da un buzzer e le seguenti note musicali trasformate in note “arduine”, il movimento della ballerina creato dal motore passo passo.

 

 

Copyright © 2019 comakinglab. Tutti i diritti riservati.
Joomla! è un software libero rilasciato sotto licenza GNU/GPL.

NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Learn more

I understand
@Progetto di "officina didattica creativa" Liceo Scientifico "Vincenzo Lilla" di Oria(BR) Docente: Prof. Domenico APRILE

Please publish modules in offcanvas position.