Rita’s Dolls House – una casa delle bambole controllata via Bluetooth dal tablet o dal cellulare

Ciao ragazzi, sono sempre io… Gianni. E’ da molto tempo che non scrivo più qui sul mio blog. Le vicende della vita putroppo portano spesso ad assentarsi dai propri hobby o quantomeno a lasciar loro uno spazio minore. Quando si hanno dei bambini le cose cominciano a diventare ancora più complicate… poi mettici anche un lavoro che ti toglie sia la salute sia il tempo libero…

Ma bando alle ciance. Volevo presentarvi un mio piccolo progetto che ho realizzato per la mia bambina di 7 anni, Rita.

A Natale appena passato scrisse una letterina per Babbo Natale chiedendo una casa di Barbie™. Ho cercato un po’ in giro, anche su Amazon, dove sono solito comprare i giocattoli per loro e i prezzi mi sono sembrati davvero non proporzionati alla qualità della manifattura dei giocattoli stessi: cifre che sfioravano anche i 300 euro. Un operaio purtroppo non tira fuori a cuor leggero queste cifre, anche di poco inferiori. Siamo in Italia: il denaro ci serve per pagare le tasse e far ingrassare quei 3 balordi che ogni tanto vediamo in tv a fare le rappresentazioni teatrali, specialmente sui canali tv che nessuno vuole ma che tutti siamo costretti a pagare altrimenti ci staccano la corrente.

(come vedete la vena polemica non mi è passata! Ma suvvia questo è il mio blog, lasciatemi sfogare!).

Ho pensato così di fare un’altra cosa: costruirla noi tutti insieme! Ma più grande, più bella e con un tocco tecnologico. Il Babbo Natale del 2015 ha quindi risposto alla mia piccola Rita in maniera forse un po’ triste se ci si sofferma alla superficie: “La casa è troppo grande non riesco a portarla. Perché non ne costruisci una tu insieme a papà e il tuo fratellino? Qui c’è tutto il materiale” (la mamma è stata esclusa perchè già devono farla Santa per tutto quello che fa in casa e per quanto ci sopporta!).

Si. Babbo Natale le ha portato una scatola con pannelli di legno, viti bronzate, pennelli, colla vinilica, vernici. All’inizio non è stata molto entusiasta ma poi…. Giudicate voi stessi.

Se volete, qui c’è anche la galleria completa delle immagini, da cui potete vedere meglio anche alcune soluzioni adottate.

Overview struttura

La “Rita’s Dolls House” è realizzata interamente in legno. E’ alta 120cm e ha 5 stanze e un terrazzo. Ogni stanza è un cubo di circa 40cm di lato, tranne la mansarda che è piu bassa per via del tetto e per via dei listelli di legno che ho trovato in commercio dalle mie parti, lunghi massimo 120cm. Lo scheletro della casa è realizzato con i listelli di faggio che misurano 1,5 cm di lato (questa scelta si è rivelata abbastanza buona, ma se li prendevo più grandi sarebbe stato molto meglio, anche se avrei pagato molto di più data la grande quantità di listelli utilizzati).

rita_dolls_house_frame

La base è realizzata con un pezzo di multistrato e i piani sono fatti a “sandwitch” con pannellini di compensato sotto (che diventa il soffitto per la stanza sottostante) e MDF sopra (non c’è un motivo preciso per questa scelta: erano materiali che avevo già a terra). Anche il tetto è fatto con un pannello in MDF. La ringhiera presente sul terrazzino è invece realizzata con listelli di faggio da 1cm (le sbarre verticali) e gli avanzi dei listelli da 1,5cm (la parte orizzontale).

Particolare della ringhiera sul terrazzino

Particolare della ringhiera sul terrazzino

La parte frontale della casa ha una scanalatura che serve ad accogliere l’ascensore, che vi entra all’interno ad incastro. Avrei dovuto predisporre dei cuscinetti in tutto l’accrocco perchè ho avuto dei problemi di scorrimento e incastramenti vari che ho risolto in maniera molto grezza avvitando dei cuscinetti a sfera vicino ai montanti dell’ascensore… ma è la prima volta che faccio un lavoro del genere e mi servirà da esperienza per le prossime realizzazioni.

Veniamo quindi alla parte interessante: l’elettronica.

Overview elettronica

Il cuore del sistema è un Picmicro della MicrochipPIC16F722, scelto perchè uno dei più economici (in fondo per questa applicazione non avevo bisogno di nessuna feature in particolare se non della UART che è presente su tutti i modelli). Il firmware è scritto in XC 8 sotto MPLAB X Ide. Ogni stanza ha la propria illuminazione, garantita da 4 led bianchi ad alta luminosità inseriti nella controsoffittatura. Sul terrazzo invece i led li ho infilati sul pavimento e ce ne sono 8 (4+4) e sono di colore viola.

Essendo il tutto alimentato a 12V, i led che hanno una Vf di 3 volt, li ho messi semplicemente in serie senza resistenze. La corrente ai led viene inviata da mosfet a canale N, BS170, anche questi scelti perchè ne avevo un bel po’ e sono piccolini (sono in formato TO-92).

L’ascensore viene semplicemente trascinato, tramite una fune, da un motoriduttore 200rpm 12V (mi era avanzato da un vecchio robot che ho sfasciato) al quale ho collegato un tondino di ferro (ricavato dal meccanismo di trascinamento della lampada di un vecchio scanner), tagliato e sul quale ho praticato un buchino per annodarvi la corda. Il tondino da un lato è collegato direttamente al motoriduttore tramite un giunto flessibile e dall’altro scorre in un cuscinetto a sfera dotato di supporto.

Argano ascensore

Argano ascensore

Come viene fermato l’ascensore ai piani? Su ogni piano, ad altezza opportuna, ho piazzato un fotoaccoppiatore ben noto: CNY70. Diciamoci la verità: questo fotoaccoppiatore fa decisamente schifo: il segnale in uscita varia con il variare della distanza e non è adatto per pilotare direttamente un I/O del picmicro… Ma ne avevo una bustina piena e mi sono arrangiato: l’uscita di ogni fotoaccoppiatore pilota direttamente l’ingresso non invertente di un comparatore contenuto in un LM339. La tensione di riferimento del comparatore è impostata a 0.9V tramite un partitore di tensione. Dato che l’uscita di questi comparatori è a collettore aperto, è necessario anche mettere una resistenza di pull-up su ogni uscita in modo da pilotare correttamente gli IO del picmicro.

In questo modo ho ottenuto un sistema molto affidabile utilizzando componenti economici e di facile reperibilità (è tutta roba che avevo nei cassetti!). In pratica si imposta un piano, sapendo l’ascensore a quale piano si trova (rilevato dal fotoaccoppiatore) viene deciso se il motore deve girare in un verso o nell’altro. Nel momento in cui viene rilevata la presenza dell’ascensore al piano corretto, viene tolta alimentazione al motore e… Qui c’è una nota dolente!

Ponte H e modalità Brake

Per poter pilotare il motore in avanti/indietro con due I/O del picmicro, è necessario un ponte H. Lo si può realizzare con 4 transistor oppure prenderne uno integrato.

Se non sapete cos’è un ponte H, come funziona, cos’è il PWM e tutte le cose annesse al controllo dei motori DC, rimando sempre a questo vecchio tutorial che è scritto molto bene: PWM Tutorial by Giovanni Giannetti.

Anche qui la scelta è ricaduta su componenti che avevo nel cassetto: un buon vecchio SN754410NE. E’ un buon ponte, per carità, ma ha un problema che mi sono reso subito conto che in questa applicazione non è affatto trascurabile: non ha la modalità brake.

Oh no! Non c'è la modalità brake!

Oh no! Non c’è la modalità brake!

La modalità brake permette di mettere i terminali del motore in cortocircuito tra loro consentendo così di eseguire una frenata vera e propria.

Il motore quando non è alimentato può funzionare da dinamo: mettendo i terminali in cortocircuito c’è una resistenza alla rotazione derivante dal fatto che se proviamo a girare l’asse, il motore genera energia che viene scaricata sul motore stesso, tramite il cortocircuito, facendolo ruotare in senso inverso. Il risultato è che il motore rimane bloccato.

Quando l’ascensore rimaneva ferma al piano centrale, infatti, tendeva a scendere perchè il peso la trascinava verso il basso (al piano superiore non accadeva perchè la corda in quel punto è più corta). Anche disabilitare il ponte tramite il pin di enable o mettere entrambi gli ingressi allo stesso stato logico non serviva assolutamente a nulla: questi ponti piccoli ed economici purtroppo il freno non ce l’hanno.

Dopo vari sbattimenti ho deciso di inserire un microrelè comandato, tramite un transistor, dalla stessa linea che controlla il pin di enable del ponte H. In pratica quando il ponte H viene disabilitato, il relè si sgancia (posizione di riposo) e manda in corto i due terminali del motore, frenandolo. Quando viene dato l’enable (il motore deve muoversi), il relè si aggancia e mette in contatto i terminali del motore con le uscite del ponte H. La soluzione è semplice ed efficace e ha permesso di ovviare ad una mancanza dell’integrato che in un’applicazione come questa era assolutamente essenziale.

Dal momento che il motore non viene controllato in PWM ma solo in ON/OFF e non ci sono repentini cambi di direzione, al posto dell’ SN754410NE è possibile sostituire un L293, che è pin-to-pin compatibile ma non ha i diodi di ricircolo (se poi avete un L293D va bene lo stesso: ha i diodi di ricircolo ma supporta una corrente inferiore).

Comunicazione remota

Come accendo/spengo le luci e controllo l’ascensore? Ma via wireless ovviamente! Sempre in tema di economicità massima ho scelto un modulo bluetooth piuttosto popolare: un modulino HC-05 già venduto montato su una breakout board che tira fuori tutti i collegamenti principali. Si trova per 3-4 euro in Cina sulla baia. Il modulo comunica con l’esterno tramite una semplicissima UART. Il modulo ha però una logica a 3.3V, poco male: con un partitore si adatta facilmente la tensione dal pin TX del picmicro al pin RX del modulo bluetooth, l’inverso non è necessario perchè i 3.3V vengono riconosciuti da pic come livello logico alto.

Il modulo non ha bisogno di essere configurato. Di default il mio comunicava a 9600 pippobaud (ma ho letto su alcuni datasheet che altri moduli, sempre HC-05, uscivano di fabbrica a 38400 baud) e aveva come password quella più inviolabile di tutte (dopo la 0000): 1234 . Se volete cambiare la password o il nome del modulo è possibile farlo tramite comandi AT, ma io questa parte, sinceramente, l’ho saltata e ve la vedete voi.

Ho realizzato quindi l’applicazione per comunicare via bluetooth con un cellulare o un tablet Android tramite Mit App Inventor 2, che è gratuito e molto semplice da utilizzare. Ero abbastanza nuovo alla modalità di programmazione simil-scratch e, devo dire la verità, mi sono sentito molto spaesato ma alla fine per realizzare piccole cose è davvero ottimo. Ho dovuto solo sbattere qualche giorno per impostare la logica di comunicazione seriale in maniera che avesse un minimo di controllo della correttezza del dato ricevuto (perchè mi piace fare le cose fatte bene per poi poterle riutilizzare in seguito)… ma alla fine ce l’ho fatta ed è venuta una bella cosa davvero

Una casa delle bambole controllata dal tablet!

Una casa delle bambole controllata dal tablet!

L’app io la uso su un vecchio e stravecchio tablet Samsung Galaxy Tab, che ha una delle prime versioni di Android e l’ho testata anche su un Galaxy S6 : funziona benone su qualsiasi versione. L’importante è sempre prima associare il dispositivo bluetooth, poi una volta avviata l’applicazione, premere sul pulsantino bluetooth in basso a sinistra, e quindi sul nome del modulo HC-05.

C’è dell’altro!

Per ora c’è anche un’altra cosa “tecnologica” all’interno della casa: una “TV” realizzata con un vecchio Arduino 2009 che mi giaceva in un cassetto, a cui ho collegato uno shield munito di display da 2.4 pollici e lettore di microsd. Ho trovato uno sketch in rete che permette di eseguire uno slideshow di foto. Anche se le foto devono essere “preparate”: si devono salvare in formato BMP alla risoluzione corretta. Ma questo magari sarà argomento di un prossimo articolo.

Metti su Cartoonito!

Metti su Cartoonito!

Come complementi d’arredo, alcune cose sono state realizzate a mano, come il letto con tutti gli annessi (materasso, cuscini, svariate lenzuola e coperte), altre sono “prese in prestito” da cose di tutti i giorni (come la lampada a led che si vede nella foto sopra, funzionante anch’essa, trovata da Tiger, l’armadio, ricavato da un appendichiavi, il bidone dell’immondizia trovato sempre da Tiger e venduto come portapenne), altre ancora comprate (ci sono un sacco di negozi cinesi sulla baia che vendono accessori per case delle bambole, l’unico problema è capirne le dimensioni!) e altre acquistate appositamente (come l’automobile o i pezzi del bagno) o trovate (la cucina, che è una originale di Barbie degli anni ’80).

Per facilitare il trasporto ho anche messo un’asse di legno orizzontale nella parte posteriore in basso, a cui ho fissato due ruote leggermente rialzate in modo tale che tocchino terra soltanto quando la casa viene inclinata all’indietro, consentendone così il trasporto.

Maker Faire

Ne approfitto per dirvi che il 14, 15 e 16 Ottobre di quest’anno a Roma, presso Roma Fiere, ci sarà la quarta edizione del Maker Faire. Alla quale NON POTETE mancare, anche perchè ci sarò io e proprio con questo progetto. ID: P307. Alcuni di voi hanno già potuto vedere la casa alla appena passata manifestazione Officine Robotiche.

Ringraziamenti e conclusioni

Ringrazio gli amicissimi Sergio Fiocco aka Fisertek per la “consulenza” amichevole sulla frenata dei motori DC e Marcello Pinna aka MarPin per l’aiuto su Mit App Inventor.

Chiaramente vi verrà da chiedere: ma alla fine quanto ti è costata? Ho fatto un calcolo abbastanza rapido mettendoci dentro tutto: comprando tutto verrebbe a costare circa €160. Chiaramente ho speso molto molto di meno dal momento che tutta l’elettronica l’ho realizzata con componenti di recupero e molto del legname e qualche vernice ce l’avevo già.

Downloads

Qui non c’è nessun download. Tutto il materiale relativo a questo progetto si trova nel mio spazio su Github, precisamente a questo indirizzo: https://github.com/Cyb3rn0id/rita-s_dolls_house. Nel repository Github c’è tutto: l’app Android in formato APK, il sorgente per il PIC, i disegni schifosi che ho fatto per lo schema e il disegno della casa a cui non dovete far caso se sono grezzi.

Sugli schemi manca la parte del relè che frena il motore, ma poco male è una cosa semplice da implementare, e in più sono disegnati dei pulsanti sul banco B che in realtà non ho implementato, dovevano servire per gestire la casa in modalità manuale senza tablet ma poi era tutto cosi bello che non li ho messi più.

Per ulteriori informazioni potete dare uno sguardo anche alla galleria di immagini.

Mi raccomando, ora non fate gli stronzi che mi ritrovo case delle bambole sparse su quei siti di elettronica che io odio. Piuttosto se fate qualcosa, contattatemi e la pubblichiamo qui, come fanno tutte le persone serie. Se no poi mi arrabbio, mi viene la gastrite e mi passa la voglia di pubblicare qualche altra cosuccia bella.

Ok? Vi voglio bene. Fate i bravi e ogni tanto costruite anche qualcosa per i vostri piccoli!

Parlano di questa casa



Questo articolo ti è stato utile? Ti ha permesso di risolvere un problema o di migliorare le tue applicazioni? Ci lavori? Ti ha permesso di scrivere la tua tesina? Ti ha semplicemente fatto spendere un po' del tuo tempo in maniera costruttiva? Allora clicca il banner qui sotto:


Settorezero.com è un blog personale di Giovanni Bernardo aperto dal 25 Ottobre 2007. Non è una testata giornalistica né un sito a carattere commerciale.
Settorezero.com, il logo Zroid™ e la tagline "Play embedded electronics™" sono copyright ©2007÷2018 Giovanni Bernardo.
La navigazione su settorezero.com e la fruizione dei contenuti ivi presenti sono soggette ai seguenti Termini di utilizzo - Informativa sulla privacy - Utilizzo dei Cookie.
Il tema di questo sito è basato sul tema Fusion per wordpress, realizzato originariamente da digitalnature e fa uso del plugin Wassup per il computo delle statistiche.
Per poter contattare il gestore del sito potete utilizzare la sezione contatti o inviare una email a gianni[at]settorezero[dot]com.
Per seguire gli aggiornamenti del blog Settorezero, oltre al feed RSS, puoi anche seguire la pagina Facebook o iscriverti al canale Telegram.
Su Twitter, invece, pubblico un po' di tutto e, quando mi va, uso anche Tumblr - Google+ - Blogspot - Youtube.