Novità e trend

Costruisci una macchina del fumo automatica alla porta

Dominik Bärlocher
30.8.2017
Traduzione: tradotto automaticamente

Ci permettiamo una battuta. Ogni volta che si apre una porta, la persona che entra o che esce dovrebbe essere annebbiata da una macchina del fumo. Vuoi essere in grado di farlo anche tu? Oppure vuoi fare un'apparizione da film ogni volta che torni a casa? Ti mostriamo come fare.

La Touch Board di Bare Conductive è davvero cool. Soprattutto perché viene fornita con un sacco di accessori molto specifici. Tra le altre cose, c'è la vernice elettricamente conduttiva, che non sappiamo dove trovare. Probabilmente non è così difficile da trovare, ma è utile se riusciamo ad averla inclusa.

Cosa puoi farci? Un sacco di cose. Il produttore Bare Conductive non fornisce istruzioni per l'uso, ma ha pubblicato sul suo sito web alcuni progetti iniziali di costruzione che possono essere ricreati. Con i bambini
.
Beh...

Possiamo fare meglio di così.

"Yo, ho una macchina del fumo qui", dice il Product Manager Quentin Aellen, un appassionato hobbista nel tempo libero.

Meglio

Il piano:

  • Costruiamo una macchina per fumare automatizzata
  • Montiamo l'intero impianto su una porta dell'ufficio
  • I nostri dipendenti saranno annebbiati
  • ???
  • Profitto

La configurazione

Oltre alla lavagna touch, per questo progetto di costruzione utilizziamo i seguenti componenti.

Hyperion Relè a 5 V (Componente di potenza, Vari, Estensione, Estensione microprocessore)
Modulo elettronico

Hyperion Relè a 5 V

Componente di potenza, Vari, Estensione, Estensione microprocessore

Vorrei anche dire subito che né io né Quentin siamo esperti di ingegneria elettrica. Siamo degli hobbisti. Quindi, se ti viene in mente qualche importante consiglio di sicurezza o noti qualche errore importante, ti prego di farcelo sapere in un commento. Le conoscenze tecniche scarseggiano anche nel nostro laboratorio, che in realtà è un divano dove a volte pranzano gli altri.

La macchina della nebbia

La macchina della nebbia si attiva dalla scatola premendo un pulsante. Si tratta di un normale interruttore, paragonabile a un interruttore della luce o a un altro pulsante. Premendolo, si stabilisce il contatto tra la corrente e la macchina e il fumo esce dalla macchina
.

Un cavo qui è quello della messa a terra, che abbiamo chiuso con del nastro adesivo per precauzione in modo che non ci siano contatti aperti

Poiché il pulsante è troppo antiquato, lo svitiamo e colleghiamo i cavi a un relè. In poche parole, questo relè premerà il pulsante non appena verrà alimentato. La logica è la seguente

La porta si apre → L'alimentazione proviene dalla scheda a sfioramento → Il relè si attiva → Fumo

Per fare questo, dobbiamo cambiare l'intero meccanismo della macchina del fumo. Quindi pulsante spento, relè attivato.

Per fare questo, assicuriamoci che la macchina del fumo non sia collegata all'alimentazione e poi svitiamo il pulsante. Rimuoviamo i cavi collegati al meccanismo del pulsante. Tutto questo è molto semplice.

Siccome nel relè possono essere installati solo due cavi, ma il pulsante ne ha tre, dobbiamo scoprire quale cavo è la terra. Perché non è necessario per chiudere il circuito. Abbiamo mascherato la messa a terra con del nastro blindato. Ci sembra abbastanza sicuro.

Questo completa le modifiche alla macchina della nebbia. Se hai fatto attenzione al pulsante, puoi facilmente riportare la macchina della nebbia al suo stato originale.

La scheda touch

La scheda touch in sé ha un design molto semplice. Scegli un pin al quale vuoi collegare la clip che attiverà il relè e memorizzerà il numero. Non c'è nient'altro da fare.

Poi carichiamo il numero di telefono e il numero di telefono.

Carichiamo quindi il codice direttamente sulla scheda touch tramite il connettore USB e il gioco è fatto. Abbiamo scelto il pin 10. Qualsiasi pin va bene, ma il pin 10 è specificato nel codice ed è per questo che abbiamo pensato "Sì, va bene".

Abbiamo applicato la vernice conduttiva nera a un rotolo di nastro da pittore. Fortunatamente i pennelli sono inclusi nel set iniziale, ma abbiamo dovuto acquistare il nastro da pittore separatamente. Poi è bastata una clip sul nastro e l'oggetto è pronto per essere utilizzato.

Fino a questo punto, tutto è stato relativamente semplice. La parte difficile era il codice. Infatti, durante la costruzione dell'hardware, abbiamo dovuto semplicemente sostituire l'altoparlante della configurazione con la struttura del relè e il gioco è fatto.

Il codice

Siccome non siamo solo hobbisti ma anche pigri, abbiamo letto le istruzioni di costruzione sul sito web di Bare Conductives. C'è qualcosa che possiamo adattare facilmente? Certo, con un po' di tempo e di lavoro potremmo scrivere il codice da soli, ma se c'è già qualcosa che dobbiamo adattare, allora è meglio.

Vuoi? Trovato!

Il tutorial originale riproduce un file MP3 su un altoparlante quando il codice rileva la vicinanza di un oggetto. Nel video, questo oggetto è una mano. Nel nostro caso, si tratta della porta.

Il codice lo dimostra: Funziona.

Le schede touch di Bare Conductive sono essenzialmente dei minicomputer Arduino. Pertanto accettano codice nei linguaggi C e C++. Il codice che utilizziamo è scritto in C++, ma questo non significa che tu debba essere il più grande coder di sempre. Quentin e io siamo riusciti a farlo in un pomeriggio, poi siamo diventati ambiziosi e abbiamo investito un altro pomeriggio, ma non è servito a molto. Niente, a dire il vero.

In origine avevamo scelto un codice che reagisse al tocco. Ma è stato un errore, perché la porta non tocca la soglia. Ma dato che ci stavamo già lavorando, abbiamo continuato a lavorare con quel frammento di codice. Il problema principale era che volevamo creare un ciclo che avesse la seguente funzione: Porta aperta → Due secondi di fumo → Spento. Il motivo è che la porta rimane aperta per circa dieci secondi ogni volta che qualcuno entra nell'ufficio. Sarebbe un po' troppo fumo. Abbiamo paura di far scattare l'allarme fumo nel corridoio. In tal caso, l'ufficio dovrebbe essere evacuato e il capo ci prenderebbe a schiaffi.
Per ottenere questo risultato, abbiamo deciso di aprire la porta per una decina di secondi.
Per raggiungere questo obiettivo, abbiamo voluto creare un ciclo. Nella programmazione, un ciclo è un comando che viene eseguito più volte in successione. E può assomigliare a questo:

int prova () {
   // Dichiara la variabile. Conta per noi finché la variabile i non raggiunge il valore 20:
   int i = 10;

// Mentre il ciclo funziona while( i < 20 ) {

  cout << "i è attualmente a: " << i << endl;
  i++;

}

return 0; }


Il codice precedente produrrebbe dieci righe di testo: "i è attualmente a: " seguite da 10, 11, 12 e così via, dato che i++ aumenta il valore di i di 1 dopo ogni riga di testo. Questo ciclo continua fino a quando i = 20. A quel punto il ciclo termina e questo è tutto.

Per la macchina del fumo volevamo qualcosa di simile. Qualcosa del genere:

int prova () {
   // Dichiara la variabile. Conta per noi finché la variabile i non raggiunge il valore 20:
   int i = 10;

// Mentre il ciclo funziona while( i < 11 ) {

  digitalWrite(CH10, LOW);
  delay(2000);
  i++;

}

restituire 0; }


Non sappiamo ancora esattamente perché il nostro progetto di loop non funzionava. Lo snippet qui sopra non fa parte del codice che abbiamo provato, quindi è possibile che abbia appena risolto il problema. Ma probabilmente no, perché mi sembra di dover impostare nuovamente i a 10 da qualche parte. Ma questo farebbe scattare di nuovo il ciclo e rimarremmo intrappolati nel ciclo all'infinito.

Se riesci a fare in modo che possiamo fare due secondi di fumo attraverso il ciclo, scrivici il codice in un commento qui sotto.

La nostra soluzione è un po' più semplice. Funziona dal punto di vista del codice, ma l'implementazione presenta alcune stranezze.

// reading legge la distanza tra l'oggetto e il colore elettrico
int lettura = MPR121.getBaselineData(ELECTRODE)-MPR121.getFilteredData(ELECTRODE);

se (lettura < 20) {

digitalWrite(CH10, LOW); // LOW = macchina accesa
delay(2000);

}

se (lettura > 20) {

digitalWrite(CH10, HIGH); // HIGH = macchina del fumo spenta

} }


Puoi leggere l'intero codice nel nostro repository GitHub.

Le insidie della pratica

La configurazione funziona. Forse non è la configurazione più sicura in assoluto e il codice sembra un po' traballante. Funziona, ma in definitiva siamo sicuri che potrebbe essere risolto meglio. Ma quello che non ci aspettavamo era la realtà.

L'installazione sulla porta è stata semplice, così come il cablaggio con l'avvolgicavo. Poi entrano in gioco le condizioni di illuminazione. Ogni nuvola, ogni luce accesa o spenta, ogni persona che passa davanti alla porta cambia la luce e quindi il valore misurato della nostra configurazione. Il risultato: fumo casuale di tanto in tanto. Ma come compensazione: niente fumo quando dovrebbe esserci del fumo.

Questo potrebbe essere facilmente modificato nel codice. Nello snippet qui sopra, questo è il numero 20, quindi se vuoi implementare il progetto sulla tua porta, questo è il valore con cui dovresti giocare per trovare il miglior risultato possibile.

Piccola nota a margine: la maggior parte dei rilevatori di fumo non dovrebbe essere influenzata dal fumo della macchina del fumo. Dovrebbero.

Inoltre, caro lettore, ti conosco già un po'. Probabilmente ti starai chiedendo: "E qual è il senso di tutto questo?" Semplice.

Lo abbiamo fatto perché possiamo farlo.

Alla fine, abbiamo appannato i nostri dipendenti, abbiamo riso di cuore e ho scritto un testo. Non solo abbiamo ripassato le nostre abilità in C++ con questo armeggio, ma abbiamo anche reso la vita quotidiana dei nostri dipendenti - e speriamo anche la tua - un po' più divertente.

Ora, il nostro obiettivo è quello di creare un sistema di controllo e di gestione del traffico.

Ora tocca a te: fai qualcosa! Divertiti!

Potresti essere interessato anche a questo

  • Novità e trend

    Arduino per principianti: la mia prima volta con l’elettronica

    di Raphael Knecht

A 24 persone piace questo articolo


User Avatar
User Avatar

Giornalista. Autore. Hacker. Sono un contastorie e mi piace scovare segreti, tabù, limiti e documentare il mondo, scrivendo nero su bianco. Non perché sappia farlo, ma perché non so fare altro.

13 commenti

Avatar
later