Mx5Italia
[NA/NB] Abbassamento automatico finestrini all'apertura della portiera - Versione stampabile

+- Mx5Italia (https://www.mx5italia.com/forum)
+-- Forum: Tecnica (https://www.mx5italia.com/forum/forum-5.html)
+--- Forum: Elettronica (https://www.mx5italia.com/forum/forum-25.html)
+--- Discussione: [NA/NB] Abbassamento automatico finestrini all'apertura della portiera (/thread-36635.html)



Abbassamento automatico finestrini all'apertura della portiera - lsky - 07-10-2019

Non so se conoscevate già questo progetto, ma mi è sembrato interessante:



In particolare ho trovato interessante la parte a 0:46 dove mostra l'abbassamento automatico dei finestrini di qualche centimetro all'apertura dello sportello (e successivo rialzamento alla chiusura), che dovrebbe rimuovere la necessità di sbattere lo sportello con forza per contrastare la pressione interna dell'abitacolo (ovviamente con hard top installato)...

Qualcuno di voi ha fatto/installato qualcosa di simile? Dato che sto lavorando all'installazione della chiusura centralizzata ho già i pannelli portiera smontati e ci stavo facendo un pensierino...  Icon_think


RE: Abbassamento automatico finestrini all'apertura della portiera - lsky - 28-01-2021

Ispirato dal lavoro che sta facendo tHeo con altri progetti di elettronica, volevo condividere quello a cui sono arrivato per ora riguardo questo progetto. Purtroppo per il momento non ho il tempo di fare le prove pratiche necessarie, per cui per un po' rimarrà tutto sul teorico in attesa di tempi migliori, ma ho pensato comunque di condividere con voi in modo da avere spunti e pareri.

Amando le soluzioni reversibili, vorrei evitare di stravolgere l'impianto elettrico della mx-5 e ridurre al minimo la difficoltà di installazione. La mia idea sarebbe di aggiungere un "blocchetto" nel tunnel centrale, collegato ai fili che vanno agli interruttori dei finestrini (l'ideale sarebbe trovare i connettori in plastica uguali, in modo da averlo completamente plug and play). Oltre a quello, mi servirebbe il segnale di portiera aperta (si potrebbe prendere dall'interruttore della luce di servizio che si accende quando si apre la portiera, che è relativamente vicino al tunnel centrale e quindi non serve tirare fili per tutta la macchina) e un sensore di posizione finestrino (che purtroppo non ho modo di avere, e dovrei arrangiare qualcosa a riguardo. Più avanti spiego meglio quello che avrei in mente).
Il tutto sarebbe comandato da un Arduino (si potrebbe fare con con elettronica pura, ma essendo di lavoro programmatore mi è più facile scrivere due righe di codice). 


Riguardo l'alimentazione: odio abbastanza le soluzioni sempre accese, per quanto un Arduino consumi poco preferisco evitare il rischio di scaricare la batteria, per cui ho pensato che potrei controllare l'alimentazione all'Arduino tramite il sensore portiera: aprendo la portiera si va ad attivare un relé che accende l'Arduino. A questo punto l'Arduino dovrebbe poter controllare da solo il relé e decidere da solo quando spegnersi. Resterebbe da capire bene quanto tempo ci metterebbe tutto l'ambaradam ad accendersi, e eventuali modi per proteggere il circuito da sbalzi di corrente se necessario (e su questo sono una capra)

Per quanto riguarda il sensore apertura finestrino: questo sensore si occuperebbe solamente di informare l'Arduino se il finestrino è completamente alzato (e quindi deve avviare tutta la procedura abbassa, attendi che lo sportello si chiuda, rialza), oppure se è in un'altra posizione (e in questo caso non deve fare niente, mica vogliamo che in piena estate coi finestrini completamente abbassati questi si alzino ad ogni apertura della portiera  Tongue). Ho acquistato degli interruttori magnetici (alla fine sono solo degli switch reed, vengono usati anche negli impianti di allarme per capire se una finestra viene aperta), l'idea sarebbe di montare la parte calamitata al vetro e la parte con l'interruttore all'interno della portiera, allineati con una staffa in modo che quando il vetro è completamente alzato l'interruttore sarà chiuso.. ed ecco qui il nostro sensore apertura finestrino  Big Grin



Passando ora al codice, sarebbe abbastanza semplice:

all'avvio dell'Arduino:
avvia il controllo manuale dell'alimentazione (chiude il relé che da alimentazione all'Arduino stesso)

loop principale (ovviamente a grandi linee):
se [il sensore finestrino è chiuso (quindi finestrino alzato completamente)] e [il sensore portiera è chiuso (quindi portiera aperta)]:
   aziona il relé apertura finestrino per X secondi (purtroppo non ho trovato modi più intelligenti che usare un discorso a tempo)
   finestrino abbassato automaticamente = true
se [il sensore portiera è aperto (quindi portiera chiusa)] e [finestrino abbassato automaticamente]:
   aziona il relé chiusura finestrino per X secondi (oppure finchè il sensore del finestrino risulta chiuso)
   [attendi X secondi]
   apri il relé che alimenta l'Arduino (quindi spegniti)

questo porterebbe ai seguenti casi:
- All'apertura della portiera, se il finestrino è alzato, lo abbassa in automatico. Se il finestrino è in una posizione diversa, non fa nulla.
- Alla chiusura della portiera, se il finestrino era stato abbassato, lo rialza fino a chiuderlo

Spero di essere stato chiaro nei miei esempi!
Ho ancora diversi dubbi, soprattutto riguardo l'alimentazione e l'utilizzo dei relé (ad esempio: si potrebbero usare relé a stato solido per risparmiare spazio ed avere più affidabilità?), se volete dirmi la vostra siete i benvenuti


RE: Abbassamento automatico finestrini all'apertura della portiera - pierpower - 28-01-2021

Jaroobi e' un grande, lo conoscevo... hai fatto bene a condividere.

ci sono un sacco di cose che si possono fare con Arduino e sono molto interessato a discussioni cosi'.

Riguardo il codice:
io (se fosse il mio software) farei un SWITCH - CASE piuttosto che IF annidati.


RE: Abbassamento automatico finestrini all'apertura della portiera - lsky - 28-01-2021

Sì è un grande ma da quello che ho capito non mostra mai come ha fatto, è un peccato secondo me, la condivisione è importante quando c'è un gruppo di appassionati (malati? Cool) come noi..

Il codice ovviamente è molto basilare, era giusto per fare capire a chi non mastica la programmazione cosa succederebbe in quali casi


RE: Abbassamento automatico finestrini all'apertura della portiera - tHeo - 28-01-2021

Mi fa piacere che i miei voli mentali abbiano ispirato altri a sviluppare le loro idee  Big Grin

Potresti prendere l'alimentazione di Arduino direttamente dalle luci di cortesia, in modo che sia alimentato a portiera aperta; all'avvio, il microcontrollore chiude un relè che lo alimenta anche quando l'utente poi chiude la portiera.
Alla fine del suo lavoro (quando la portiera è chiusa e il finestrino su) stacca il relè autospegnendosi.

Tieni comunque conto che arduino in SLEEP credo consumi meno di un semplice orologio installato a bordo (o della memoria della radio...) quindi non complicherei ulteriormente le cose andando ad aggiungere componenti non necessari.

Al posto dei contatti Reed puoi usare anche un finecorsa con rotellina, tipo quello qui sotto, che rimane premuto dal finestrino in tutte le posizioni tranne quella tutta su.

[Immagine: microswitch-con-levetta-5-a-600x600.jpg]

Programmatore in che settore? Tongue Anche se la vita mi ha portato poi verso altre occupazioni, sono Ing. informatico, e l'elettronica e la programmazione son rimasti sempre tra i miei hobby...anche se Arduino lo conosco poco, con cresciuto con i PIC a 8 bit e tuttora per i circuitini semplici uso quelli


RE: Abbassamento automatico finestrini all'apertura della portiera - lsky - 28-01-2021

Sì l'idea era di usare le luci di cortesia per alimentarlo, per ridurre al minimo i cavi da tirare in giro per la macchina.. ma forse in effetti il consumo è talmente basso che potrei ignorare tutti quegli aspetti e farlo solo andare in deep sleep..

Geniale l'idea dei finecorsa con rotellina, non ci avevo pensato ma in effetti sono ancora più facili da installare!!

Per lavoro uso linguaggi più di alto livello, principalmente Java (sviluppo app Android), C# eccetera.. i linguaggi più di basso livello li ho studiati ma per il momento li uso solo come hobby