La lavatrice connessa “fai da te”. Ecco come si può fare in poche mosse

Modificare una normale lavatrice per poterla controllare da remoto (avvio/arresto, temperatura e magari impostare i vari programmi), non è propriamente un “gioco da ragazzi”. È necessario mettere insieme diverse operazioni e avere un minimo di competenze elettroniche. Per rendere l’idea riportiamo qui un esempio. [...]
domotica
  1. Home
  2. Intelligenza Artificiale
  3. La lavatrice connessa “fai da te”. Ecco come si può fare in poche mosse

Si può rendere smart una qualsiasi lavatrice tradizionale? La risposta è: dipende. Secondo il “pensiero debole” della domotica, è possibile. Ad esempio, dotandola di una presa intelligente. In tal caso la lavatrice non sarà propriamente intelligente, perché non avrà alcuna intelligenza nel lavaggio, ma obbedirà a regole e comandi impartibili in automatico dallo smartphone. Potremo accenderla, sapere se ha terminato, se ha iniziato e se sta funzionando, e spegnerla. Null’altro. Pur tuttavia, su queste tre semplici metodiche potremmo “montare” un sistema di regole prese da Internet, decidendo che se saremo a casa tra un’ora, grazie al nostro smartphone il sistema ci georefenzierà e farà scattare l’interruttore che azionerà la partenza del ciclo preimpostato. Oppure potremmo decidere che se sono già accesi il condizionatore d’aria, il forno a microonde e la lavastoviglie, allora prima dovrà essere disattivato il condizionatore e che solo quando anche la lavastoviglie avrà terminato il suo lavoro potremo attivare la lavatrice a distanza. Questo fornirà una “intelligenza energetica” alla nostra domotica, impedendo dei picchi di assorbimento e la disattivazione automatica della rete elettrica da parte dell’interruttore generale. Ma null’altro. Niente sensori, nessuna rilevazione, zero apprendimento. Il minimo indispensabile, insomma.

Secondo il “pensiero forte” della domotica, invece, la risposta è no. Nella maggior parte degli elettrodomestici coesistono due elementi contrastanti: la corrente elettrica e l’acqua, che notoriamente non vanno molto d’accordo fra loro. Se poi consideriamo le moderne caldaie di riscaldamento ambienti e acqua sanitaria, dobbiamo aggiungere un altro elemento: il gas. Se aggiungiamo la velocità (o meglio le, velocità) con cui tutti questi oggetti si muovono e si attivano e disattivano, il rischio di modificarli andando a mettere le mani dove non dovremmo o di mescolare cose che andrebbero tenute ben separate (mani+ingranaggi+cestello+elettricità+acqua…etc.etc.) diventa molto concreto.

Aggiungiamo che è noto che la maggior parte degli incidenti si verifica tra le pareti domestiche, anche per incuria oppure per mancato rispetto delle più elementari regole di sicurezza (bloccare le scale, assicurarsi con corde e presidii, indossare un casco o degli occhiali di protezione o delle scarpe anti infortunistiche). Purtroppo, molti incidenti occorrono per la manomissione di impianti elettrici, gas, acqua, e/o di tutti e tre contemporaneamente, in modo consapevole e intenzionale.

Ciò premesso, in quest’articolo abbiamo voluto dare un esempio di come si può modificare una lavatrice tradizionale per renderla smart. Ovviamente si tratta di una operazione non alla portata di tutti, nel senso che occorre possedere alcune competenze e conoscenze sia in campo software, sia in campo hardware.

Ad esempio, occorre saper programmare, conoscere cioè uno o più linguaggi per preparare una parte software che si deve adattare a tantissimi modelli differenti. Inoltre, si devono conoscere le schede elettroniche interne della lavatrice, che vengono create in fabbrica, anonimizzate contro la manomissione dei brevetti e codificate in modo che possano corrispondere ai pezzi di ricambio in caso di rottura o riparate in caso di manutenzione ordinaria. Se si riesce a interpretare il valore di componenti passivi come resistenze e condensatori, sarà molto facile immaginare lo scopo di utilizzo di componenti attivi come diodi e transistor ma molto difficile indovinarne i parametri di funzionamento, a meno di una misurazione puntuale di ciascuno, che comprende il punto successivo.

Ovviamente non potremo avere a disposizione soltanto “un cacciavite e un paio di pinze”. Sempre per motivi di brevetto tutto è scatolato e chiuso, soprattutto per evitare contaminazioni tra acqua e corrente o sapone e panni. Serviranno estrattori, attrezzi specifici, anche dal prezzo non economico.

Aggiungiamo: strumentazione di misura, tester, anche capacitivi, e occasionalmente strumentazioni più complesse come frequenzimetri.

Reverse engineering

Partendo dalle schede come quelle che possiamo trovare negli elettrodomestici il metodo è quello di “non toccare nulla” ma sostituirci all’attivazione automatica di certi sensori ingannandoli con l’emissione di un segnale che potrebbe venire da sistemi Open comunemente reperibili sul mercato a prezzi molto accessibili. Come la scheda “Arduino”, da inserire tramite i vari connettori che collegano la scheda posta nel pannello di controllo della lavatrice. Occorrerà ovviamente smontare alcune parti, compreso il frontalino con la scheda che controlla il motore, le pompe ecc… e mettere in funzione la lavatrice. Dopo di che monitorare la comunicazione tra queste due schede con il tester e magari registrare un video dei comportamenti durante il ciclo di lavaggio, da far scorrere poi accelerato per carpirne la sequenza di processo.

Il primo problema è che mentre la comunicazione dei comandi va in una direzione, la rilevazione degli stati di funzionamento va nella direzione inversa. Facciamo il caso, per esempio, che ci sia un microcontrollore con il suo firmware. Per capire il comportamento di questo controllore potremmo considerare il tutto come una “black box” e analizzare il rapporto tra gli input e gli output, anche se resta da capire fin dove l’analisi è attendibile. Quindi potremo, ad esempio, riuscire a ottenere informazioni su quale pompa è in funzione o sugli stati dei sensori, ma difficilmente potremmo richiamare un programma interno all’elettronica della lavatrice e far sì che sul display venga visualizzata la selezione di tale programma.

Sostituzione della centralina

Questo altro metodo prevede di eliminare la “centralina” della lavatrice e sostituirla con una scheda tipo Arduino o Raspberry. Ovviamente così si perderebbero i programmi della lavatrice ma si potrebbe avere il controllo sia dell’interfaccia utente (schermo Lcd, pulsanti e manopole) che della meccanica (motore del cestello, pompe, sensori, ecc…). Nel caso in cui utilizzassimo schede come Arduino o Raspberry, ricordiamoci che dovremo pilotare apparecchi con “grandi correnti”. Quindi non potremo asservire tutto a queste “schedine”, poiché verrebbero bruciate all’istante ma dovremmo usare controllori di potenza adatti (il motore di una lavatrice ha una potenza dell’ordine del kilowatt).

Connettersi ai Led preesistenti

Questo metodo consiste nel posizionarsi tra i circuiti di controllo di cui la lavatrice dispone già nella sua elettronica, programmi dei cicli di lavaggio compresi, inserendo i nostri sistemi tra la parte “digitale” e la parte di potenza del circuito. Si potrebbe, ad esempio, togliere un componente di segnalazione come un Led e sostituirlo con uno che ci consenta di capire se il Led è acceso o meno. Questo approccio cerca appunto di non entrare a contatto con la parte di potenza.

Perdite di sicurezza ed efficienza

Come predetto, una delle controindicazioni nell’interfacciare direttamente i Led del pannello è la sicurezza, perché le moderne lavatrici hanno sensori anti allagamento, anti ribaltamento ecc.. Bypassare tali sensori può essere pericoloso. Un altro è la perdita di efficienza. La composizione dell’elettrodomestico “lavatrice” è rimasta sostanzialmente simile nella sua evoluzione meccanica: un motore con un cestello, una resistenza per scaldare, una pompa di carico e una di scarico. Quella che si è evoluto molto è la parte elettronica, con sensori e algoritmi (anche complessi) che permettono un lavaggio più efficiente. Si può provare a controllare direttamente l’elettronica di potenza delle pompe non su una lavatrice nuova ma su un vecchio rottame, posizionato in un luogo sicuro, ad esempio un garage. Al massimo si rischia di danneggiare una scheda vecchia o di allagare il box…

WEBINAR
Industrial collaboration: quanti benefici per il settore manifatturiero?
IoT
Manifatturiero/Produzione

La soluzione migliore è quella di non interagire fisicamente direttamente sui meccanismi della lavatrice ma con i programmi. Cioè, far partire i programmi già presenti attivando elettronicamente i pulsanti della macchina. Con qualche optoisolatore si può simulare lo “schiacciare” i tasti della lavatrice (delegando un comando a una scheda Arduino) in modo abbastanza sicuro.

Un risultato “artigianale”

Una tale soluzione tornerà molto utile se la nostra lavatrice si trova al piano inferiore e non vogliamo fare le scale per controllare se ha terminato il ciclo di lavaggio. Per questa operazione è sufficiente una scheda Arduino equipaggiata con una porta di rete ethernet per risolvere la questione del collegamento. Quando infatti la lavatrice finisce il suo ciclo di lavaggio, il circuito che abbiamo creato è in grado di avvertire dell’evento tramite la rete domestica, permettendo di muoversi e raggiungere la lavatrice solo quando è necessario stendere i panni.

Componenti

Per realizzare questa modifica dovremo smontare parte della lavatrice, procurarci una scheda Arduino Uno, una scheda Ethernet per Arduino, un accoppiatore ottico CNY17, una scheda breadboard o millefori e una resistenza da 150 ohm.

Hack

Nel nostro caso specifico, per percepire il segnale giusto dalla lavatrice, che sarà semplicemente “Terminato”, dovremo individuare il relativo Led che si accende quando il ciclo è finito e la lavatrice torna in stato di stand-by, identificarlo sul pannello. Quindi aprire il frontalino della lavatrice, operazione non facile e con cui perderemo completamente ogni diritto alle riparazioni in garanzia e all’assistenza quando un tecnico dovesse rilevare una tale manomissione.

A questo punto occorrerà dissaldare il Led e rimpiazzare i suoi due pin con un filo elettrico di rame a due capi. La scheda interna, una volta prelevato il segnale ed effettuate tutte le saldature, apparirà ri-saldata come nell’immagine, dove è visibile chiaramente il Led dissaldato e il filo (arancione-bianco) che porteremo alla scheda Arduino Uno attraverso una semplice “scheda”, rappresentata nel seguente schema, che appronteremo saldando i componenti in modo identico mettendo insieme l’accoppiatore ottico CNY17, la resistenza da 150 ohm e la scheda millefori.

 

Nell’effettuare la saldatura non dovremo far altro che rispettare i collegamenti, come indicato in figura, considerando l’opportunità di posizionare un morsetto a due poli per avvitare il cavo proveniente dalla lavatrice in modo pulito.

Non ci resterà che inserire la scheda ethernet su Arduino e la millefori così preparata sui pin della scheda ethernet.

Funzionamento logico

Ora saremo in presenza di un segnale “basso” sul pin A2 (in modalità digitale) quando la lavatrice ha terminato e di un segnale “alto” mentre la lavatrice sarà in modalità “lavaggio” oppure “spenta”. Nel nostro software inseriremo un lasso di tempo di osservazione della durata di 0,1 sec tra un test e l’altro dello stato del segnale, perché non abbiamo un segnale stabile in uscita, (questo perché evidentemente le segnalazioni sul pannello vengono da un “multiplexer”). Se il segnale diventa “basso” almeno una volta in questo lasso di tempo potremo decidere che la lavatrice ha terminato e che il Led è stato acceso.

Se vogliamo completare il lavoro, possiamo pubblicare su una pagina Html generata da Arduino grazie al codice all’indirizzo mostrato più avanti. Nell’esempio l’ethernet di Arduino ha ricevuto indirizzo 192.168.1.177, dove possiamo testare lo stato del LED attraverso la lettura della pagina che apparirà così

Oppure

Il codice Arduino del progetto può essere reperito agevolmente postato su GitHub (GNU LICENSE – Michael Clemens).

Conclusioni

Come abbiamo avuto modo di riscontrare, realizzare un interfacciamento “autentico” con un sistema smart composto di sensoristica e servo-meccanismi non può essere limitato all’accensione e allo spegnimento di un Led su un pannello “hackerato”.

FORUM PA 6 - 11 LUGLIO
Città resilienti: infrastruttura tecnologica, governance dei dati, valore della comunità
IoT
Smart Mobility

 

FacebookTwitterLinkedIn