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
17
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.
Tour dell'Arco Alpino: da ovest a est
Tour dell'Arco Alpino: da ovest a est
Finlandia in camper: il piccolo sentiero
Finlandia in camper: il piccolo sentiero
Finlandia in camper: Soiva Metsa
Finlandia in camper: Soiva Metsa
Camper Calimero alla Duna di Pilat
Camper Calimero alla Duna di Pilat
Il paradiso può attendere, la Sardegna
Il paradiso può attendere, la Sardegna
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?
17
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
Altro non sui camper
Consigli sulla vendita
Buongiorno a tutti, è molto che non scrivo in questo forum per varie vicissitudini. Io e m...
Pierucci
Oggi alle 10:25
Accessori
Intermittenza frecce
Su un Laika X675 del 2006 ho eliminato l'impianto delle luci a incandescenza del portamoto...
Gian52
Oggi alle 07:29
Viaggi in Italia
Elnagh magnum 582 2026
Salve ho appena comprato questo camper con consegna fine mese, vorrei sapere le impression...
mobil0
Oggi alle 07:13
Meccanica
Retrovisore dx
Frequento poco questa sezione, magari è stato spiegato mille volte. Questo è l'effetto de...
dani1967
Ieri alle: 22:58
Cellula abitativa
I camper di oggi... Abbastanza deludenti..
Sono andato in ferie in camper con mio fratello, io con il mio Adria Matrix 2011, lui con ...
iw5ci
Ieri alle: 21:58
Aree di sosta e campeggi
Prossima Apertura sulla Roma-L’Aquila
Prossima apertura rimessaggio scoperto uscita Magliano de marsi sulla Roma L Aquila apert...
Ad&mpim&nto
Ieri alle: 20:51
Altro non sui camper
Abbandono graduale motori 3 cilindri
Rumors nel mondo auto dicono che alcune case automobilistiche intendono abbandonare il mot...
Rascal
Ieri alle: 19:09
Aree di sosta e campeggi
Ampezzo (UD) lavanderia a gettoni
Buongiorno a tutti, siamo alla prima esperienza in camper: sapete indicarmi una lavanderia...
pizzamobile
Ieri alle: 15:39
Cellula abitativa
Black-out misterioso centralina cellula
Buongiorno a tutti, avrei bisogno di un parere tecnico. Ho un Mobilvetta Luna del 2000 e i...
Andrea44
Ieri alle: 12:22
Meccanica
Sprinter 316 del 2002 aria calda in cabina
Ciao a tutti, sono possessore di un camper marostica con meccanica 316. D'estate, nonostan...
maci71
Ieri alle: 11:28
Cellula abitativa
Mizar 140 con FV - batterie scariche
Buon giorno a tutti ho un CI Mizar 140 che mi fa dannare Ereditato dal suocero che anni fa...
pieri70
Ieri alle: 09:45
Meccanica
Mancato avviamento
Saluti a tutti. Ducato 2.300 160 cv del 2021. Ad agosto 2025 rimango con la batteria motor...
aledelpi
Ieri alle: 00:42
169k 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