CamperOnLine
  • Camper
    • Camper usati
    • Camper nuovi
    • Produttori
    • Listino
    • Cataloghi
    • Concessionari e rete vendita
    • Noleggio
    • Van
    • Caravan
    • Fiere
    • Rimessaggi
    • Le prove di CamperOnLine
    • Provati da voi
    • Primo acquisto
    • Area professionisti
  • Accessori
    • Accessori e Prodotti
    • Camping Sport Magenta accessori
    • Produttori
    • Antenne TV
    • Ammortizzatori
    • GPS
    • Pneumatici
    • Rimorchi
    • Provati da Voi
    • Fai da te
  • Viaggi
    • Diari di viaggi in camper
    • Eventi
    • Foto
    • Check list
    • Traghetti
    • Trasporti
  • Sosta
    • Cerca Strutture
    • Sosta
    • Aree sosta camper
    • Campeggi
    • Agriturismi con sosta camper
    • App Camperonline App
    • 10 Consigli utili per la sosta
    • Area strutture
  • Forum
    • Tutti i Forum
    • Sosta
    • Gruppi
    • Compagni
    • Italia
    • Estero
    • Marchi
    • Meccanica
    • Cellula
    • Accessori
    • Eventi
    • Leggi
    • Comportamenti
    • Disabili
    • In camper per
    • Altro Camper
    • Altro
    • Extra
    • FAQ
    • Regolamento
    • Topic attivi
    • Preferiti
    • Cerca
  • Community
    • COL
    • CamperOnFest
    • Convenzioni Convenzioni
    • Amici
    • Furti
    • Informativa Privacy
    • Lavoro
  • COL
    • News
    • Newsletter
    • Pubblicità
    • Contatto
    • Ora
    • RSS RSS
    • Video
    • Facebook
    • Instagram
  • Magazine
  • Italiano
    • Welcome
  • Accedi
CamperOnLine
Camping Sport Magenta
  1. Forum
  2. Tecnica
  3. Accessori
Galleria

Arduino come Livella e Controllo servizi

Nuovo
Cerca
Berger Camping
SostaGruppiCompagniItaliaEsteroMarchiMeccanicaCellulaAccessoriEventiLeggiComportamentiDisabiliIn camper perAltro CamperAltroExtra Attivi
1 20 10
15
gelax
gelax
28/11/2010 267
Inserito il 26/04/2014 alle: 13:49:57
Ciao a tutti, incuriosito da alcuni post inseriti, ho deciso di cimentarmi con Arduino per creare una livella elettronica da utilizzare quando parcheggio il camper. In sostanza utilizzo il monitor della radio (ho diversi ingressi video) per presentare a video le inclinazioni del mezzo. Visto che Arduino ha molteplici ingressi/uscite, ho aggiunto anche le funzioni per accendere una luce in prossimità dello scarico acque nere (ho già la telecamere ma quando è buio non vedo nulla e devo comunque scendere), comandare la valvola di scarico (devo ancora instalarla), monitorare le tensioni delle batterie e visualizzare le temperature interne ed esterne con la relativa umidità. Sono ancora in fase di test a banco... sto solo aspettando il sensore di inclinazione per completare il progettino e poi passerò all'installazione sul camper. Vi posto alcune immagini del monitor: Visto che sul sito ci sono utenti mooolto più esperti di me, posto lo sketch che ho realizzato, piacerebbe avere consigli e suggerimenti per migliorare il progetto... #include <TVout.h> #include <fontALL.h> #include <DHT.h> #include <I2Cdev.h> #include <MPU6050.h> //include <Wire.h> #define DHTPINI 10 //Sonda Interna #define DHTPINE 8 // Sonda Esterna #define DHTTYPE DHT11 #define BUTTONLUCE 2 #define BUTTONVALVOLA 3 #define BM A4 #define BS A5 #define RelayLuceScarico 4 #define RelayValvolaScarico 5 MPU6050 accelgyro; int16_t ax, ay, az; int16_t gx, gy, gz; int ButtonLuceScarico = 0; int StatoLuceScarico = 0; int ButtonValvolaScarico = 0; int StatoValvolaScarico = 0; TVout TV; DHT dhti(DHTPINI, DHTTYPE); DHT dhte(DHTPINE, DHTTYPE); void setup() { dhti.begin(); dhti.begin(); //Wire.begin(); pinMode(BUTTONLUCE, INPUT); pinMode(BUTTONVALVOLA, INPUT); pinMode(RelayLuceScarico, OUTPUT); pinMode(RelayValvolaScarico, OUTPUT); TV.begin(PAL, 120, 96); TV.select_font(font6x8); TV.print(10, 30, "Welcome to Pegaso"); TV.print(47, 40, "off"); TV.print(18, 50, "Gelati Family"); TV.delay(4000); TV.clear_screen(); // accelgyro.initialize(); // TV.print(2, 60, "Testing MPU6050.."); // TV.print(2, 70, (accelgyro.testConnection() ? "MPU6050 OK" : "MPU6050 Failed")); } void loop() { inizio: //accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz); int ti = dhti.readTemperature(); float hi = dhti.readHumidity(); int te = dhte.readTemperature(); float he = dhte.readHumidity(); TV.draw_line(0, 0, 120, 0, 1); TV.draw_line(0, 0, 0, 25, 1); TV.draw_line(119, 0, 119, 25, 1); TV.draw_line(0, 25, 120, 25, 1); TV.print(2, 5, "T.Cellula:"); TV.print(60, 5, ti); TV.print(72, 5, "c"); TV.print(80, 5, hi); TV.print(112, 5, "%"); TV.print(2, 15, "T.Esterna:"); TV.print(60, 15, te); TV.print(72, 15, "c"); TV.print(80, 15, he); TV.print(112, 15, "%"); TV.draw_line(0, 30, 120, 30, 1); TV.draw_line(0, 30, 0, 45, 1); TV.draw_line(119, 30, 119, 45, 1); TV.draw_line(0, 45, 120, 45, 1); int bm = analogRead(BM); float vbm = bm * (5.0 / 1023.0); TV.print(2, 35, "BM:"); TV.print(25, 35, vbm); TV.print(50, 35, "V"); int bs = analogRead(BS); float vbs = bs * (5.0 / 1023.0); TV.print(60, 35, "BS:"); TV.print(85, 35, vbs); TV.print(110, 35, "V"); StatoLuceScarico = digitalRead(RelayLuceScarico); StatoValvolaScarico = digitalRead(RelayValvolaScarico); if (StatoLuceScarico == HIGH) { TV.print(2, 50, "Luce Scarico: [ ON]"); } else { TV.print(2, 50, "Luce Scarico: [OFF]"); } if (StatoValvolaScarico == HIGH) { TV.print(2, 60, "Valv Scarico: [ ON]"); } else { TV.print(2, 60, "Valv Scarico: [OFF]"); } ButtonLuceScarico = digitalRead(BUTTONLUCE); ButtonValvolaScarico = digitalRead(BUTTONVALVOLA); if (ButtonLuceScarico == HIGH && ButtonValvolaScarico == LOW ) { goto LuceScarico; } else if (ButtonValvolaScarico == HIGH && ButtonLuceScarico == LOW ) { goto ValvolaScarico; } else if (ButtonValvolaScarico == HIGH && ButtonLuceScarico == HIGH ) { goto Bolla; } else { goto inizio; } LuceScarico: StatoLuceScarico = digitalRead(RelayLuceScarico); if (StatoLuceScarico == HIGH) { digitalWrite(RelayLuceScarico, LOW); delay(1500); goto inizio; } else { digitalWrite(RelayLuceScarico, HIGH); delay(1500); goto inizio; } ValvolaScarico: StatoValvolaScarico = digitalRead(RelayValvolaScarico); if (StatoValvolaScarico == HIGH) { digitalWrite(RelayValvolaScarico, LOW); delay(1500); goto inizio; } else { digitalWrite(RelayValvolaScarico, HIGH); delay(1500); goto inizio; } Bolla: //TV.print(2, 70, ("a/g:\t")); //TV.print(20, 80, (ax)); //TV.print(40, 80, (ay)); //TV.print(60, 80, (az)); //TV.print(20, 90, (gx)); //TV.print(40, 90, (gy)); //TV.print(60, 90, (gz)); TV.clear_screen(); TV.print(2, 10, "Level"); TV.print(2, 20, "Park"); //TV.print(2, 30, ""); TV.draw_line(81, 9, 113, 9, 1); //riga in alto TV.draw_line(81, 91, 113, 91, 1); // riga in basso TV.draw_line(80, 10, 80, 90, 1); // colonna sx TV.draw_line(113, 10, 113, 90, 1); // colonna dx TV.draw_line(79, 20, 79, 30, 1); //ruota ant. sx TV.draw_line(114, 20, 114, 30, 1); //ruota ant. sx TV.draw_line(79, 75, 79, 85, 1); //ruota post.sx TV.draw_line(114, 75, 114, 85, 1); //ruota post. dx delay(40000); TV.clear_screen(); goto inizio; } Marco

Modificato da gelax il 26/04/2014 alle 13:51:06
19
camperos
camperos
29/12/2006 4709
Inserito il 26/04/2014 alle: 16:47:08
ciao Marco i mie complimenti[:)] qui di esperti non se ne sono visti, ci sono amatori di Arduino [;)] utilizzi il "goto" anziché funzioni,per chi usa Arduino lo sketch diventa poco leggibile, quindi difficile aiutarti ad apportare eventuali modifiche. vedo che per i volt a monitor ci sono valori 4.8 e 5V, perchè non fai visualizzire la tensione reale? Arduino accetta max 5V, presumo utilizzi un partitore di tensione resistivo, comunque devi inserire il valore corrispondente ai 5V max che corrisponde alla tensione max calcolata. ad esempio se hai calcolato che 5V corrispondono a 20V reali: 20.0/1023.0 ciao

Modificato da camperos il 26/04/2014 alle 16:48:10
18
errepi
errepi
23/01/2008 1332
Inserito il 26/04/2014 alle: 20:34:11
ciao a te ed a tutti coloro che "ruotano"intorno ad arduino premesso che mastico un pò di elettricità e discreta manualità ma pochissima informatica sarei interessato a conoscere arduiNO Quali sono i requisiti minimi necessari per trafficare con arduino e quali i costi da mettere in conto in caso di fallimento? grazie a quelli che risponderanno slt roberto
quote:Risposta al messaggio di gelax inserito in data 26/04/2014  13:49:57 (Visualizza messaggio in nuova finestra)>
>
15
gelax
gelax
28/11/2010 267
Inserito il 26/04/2014 alle: 22:37:42
Grazie Camperos per i complimenti!! In effetti non uso un partitore di tensione, lo devo ancora realizzare, per ora ho solo fatto dei test con i 5v. Mi sapresti indicare i valori delle resistenze da utilizzare per il partitore? Per quanto riguarda la bolla sono in attesa del sensore e poi proverò a smanettare. Mi sto leggendo la guida di Arduino e sono ancora alle prime armi, visto che mi consigli le funzioni cercherò applicarle allo sketch ... se capisco come funzionano!! Per quanto riguarda i costi, ho speso 56 euro per un kit che comprende anche Arduino uno v3. Mi è scappato pure un corto e l'ho mezzo fritto, ora lo uso per i test ma sul camper ne metterò uno nuovo. Marco
18
feynman
feynman
28/09/2008 1328
Inserito il 26/04/2014 alle: 22:59:59
quote:Risposta al messaggio di gelax inserito in data 26/04/2014  22:37:42 (Visualizza messaggio in nuova finestra)>
> Puoi usare 1Kohm 3 3,9Kohm.
Germania del  Nord e Isola di Rugen
Germania del Nord e Isola di Rugen
Normandia e Bretagna in camper
Normandia e Bretagna in camper
Paesi Bassi on the road
Paesi Bassi on the road
Dalmazia 2026
Dalmazia 2026
Calimero in Danimarca
Calimero in Danimarca
Previous Next
15
gelax
gelax
28/11/2010 267
Inserito il 26/04/2014 alle: 23:47:37
quote:Risposta al messaggio di feynman inserito in data 26/04/2014  22:59:59 (Visualizza messaggio in nuova finestra)>
> Ok e quindi considero una tensione max di 25v, giusto?
18
feynman
feynman
28/09/2008 1328
Inserito il 27/04/2014 alle: 07:27:01
quote:Risposta al messaggio di gelax inserito in data 26/04/2014  23:47:37 (Visualizza messaggio in nuova finestra)>
> Per tensione la puoi leggere in questo modo: loat vbm = bm * ((3,9 + 1) / 1.0)* 5.0 / 1023.0;

Modificato da feynman il 27/04/2014 alle 07:34:55
19
camperos
camperos
29/12/2006 4709
Inserito il 27/04/2014 alle: 11:57:59
per fare le prove che in qualche modo rispecchiano la reatà procurati una batteria a 12V tipo quelle degli allarmi. consiglio durante le prove di alimentare Arduino con alimentazione esterna e non da usb PC. potrebbe essere che dal pc escano 4.8V anziché 5V sempre come alimentazione (non come ingressi misure) Arduino ha un regolatore di tensione interno che converte in 5V , e comunque poi dovrai utilizzare questo quando monti Arduino sul camper

Modificato da camperos il 27/04/2014 alle 12:00:40
15
gelax
gelax
28/11/2010 267
Inserito il 27/04/2014 alle: 22:09:48
quote:Risposta al messaggio di camperos inserito in data 27/04/2014  11:57:59 (Visualizza messaggio in nuova finestra)>
> Per avere il risultato corretto ho dovuto inserire il codice nel seguente modo: float vbm = bm * 4.96 * 5 /1023; dove 4,96 è il calcolo del partitore resistivo e comunque il risultato non era identico alla misura effettuata con il tester. Grazie alla dritta di camperos ho modificato il valore 5 in 4,8 ( alimento la scheda tramite USB) ed il risultato ora è corretto, quando l'alimenterò direttamente tramite la batteria del camper con un riduttore di tensione a 9V il problema dovrebbe rientrare...

Modificato da gelax il 27/04/2014 alle 22:10:47
19
camperos
camperos
29/12/2006 4709
Inserito il 27/04/2014 alle: 23:35:30
anche se il datasheet di arduino dice che può essere alimentato max 20V, i 9 volt come farai tu è l'ideale, alimentandolo gia a 12-14V il regolatore di Arduino per portare la tensione a 5V scalda non poco
19
camperos
camperos
29/12/2006 4709
Inserito il 13/05/2014 alle: 21:36:19
hai gia visto questo?

https://www.youtube.com/watch?v...

SostaGruppiCompagniItaliaEsteroMarchiMeccanicaCellulaAccessoriEventiLeggiComportamentiDisabiliIn camper perAltro CamperAltroExtra Attivi
Argomenti recenti
Normative
I 5 stalli contesi a Siracusa? Ricordate?
Vi ricordate i 5 stalli di sosta camper a Siracusa? Sapete com’è finita quella che sembrav...
Anto1957
6 minuti fa
Compagni di viaggio
Asia cenrale
Ciao siamo una coppia di settant'anni con un camper di 5 40 che stanno organizzando un via...
gichiube
38 minuti fa
Normative
Vi ricordate GROSIO? Cassazione? Com'è finita?
Grosio: una vittoria giudiziaria di Pirro, ma non la fine delle limitazioni. La vicenda d...
Anto1957
Oggi alle 11:59
Meccanica
Nuovo problema su Ducato 2026 ?
Come ho già scritto in altro post, ho un nuovo Ducato 2200 cc 140 cv cambio manuale immatr...
maxime
Ieri alle: 22:06
Altro non sui camper
hanno inventato un'altra tassa
durante l'inverno non ho mai usato il camper, causa lavoro prima e impegno, dopo, con i ni...
alberto21
Ieri alle: 21:09
Meccanica
Rumore avantreno lato passeggero ducato 2800jtd
Salve e da un po' che sento su lato passeggero tipo ta,,,ta,,ta, su strada un po' sconne...
giuvanella
Ieri alle: 15:32
Cellula abitativa
Consiglio elettrauto su Firenze e limitrofi
Ho appena preso un Ducato Van del 1998 . Vorrei cambiare l'impianto attuale per montare ba...
Rambaldo1
Ieri alle: 13:33
Meccanica
A quando i camper super ibridi EREV ?
Ne vedremo delle belle il prossimo anno e lo aspetto per cambiare. Poco peso (batteria non...
franco49tn
Ieri alle: 11:01
Viaggi all'estero
Buon clima per novembre e dintorni
Ho zero esperienza in merito di svernate al caldo. Di solito vado in suditalia nelle mezze...
Frank Blue
Ieri alle: 09:09
Aree di sosta e campeggi
Area di sosta a Livorno
Ho anche cercato con la funzione specifica, ma ho raccolto solo suggerimenti di sosta pre-...
Paolo62
Ieri alle: 08:30
Accessori
LED G4 dimmabili non-gel?
Ciao a tutti, come tanti ho il camper pieno di lampadine G4, inizialmente alogene, ho mont...
Frank Blue
Ieri alle: 07:10
Meccanica
Relè frecce Ducato vecchia serie
Buongiorno, ho un ducato diesel 2500 vecchia serie (1982). Le frecce funzionano bene ma le...
Fara Fra55
01/10/26 - 23:05
170k Facebook
342k Instagram
42,6k TikTok
74K Youtube
CamperOnLine - Copyright © 1998-2026 - P.Iva 06953990014
Informativa Privacy Sitemap
Caricamento...

Accedi

Recupera Password
Nuovo utente

Vuoi eliminare il messaggio?

Sottoscrizione

Anteprima

Preferenza

Il messaggio è in fase di inserimento.

loading

CamperOnLine

Buongiorno gentile utente,

da oltre 20 anni Camperonline offre gratuitamente tutti i suoi servizi
grazie agli inserzionisti che ci hanno dato la loro fiducia, permettici di continuare il nostro lavoro disattivando il blocco delle pubblicità.

Grazie della collaborazione.

Azione eseguita con successo

Azione fallita

Condividi

Condividi questa pagina:

O copia il link