Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 11 maggio 17, 19:03   #1 (permalink)  Top
User
 
L'avatar di andore
 
Data registr.: 20-04-2009
Residenza: Potenza
Messaggi: 934
Arduino Uno: chi ci gioca?

Ciao raga

Avevo già da un po' di tempo un arduino originale con bluetooth ma, non avendo vari moduli e per mancanza di tempo e soldi non mi ci sono mai applicato sopra

Ora finalmente sono riuscito a prendermi in buona offerta un full kit "elegoo R3" che accoppiato all'originale funzionano alla grande!

Preso da amazon a questo link: https://www.amazon.it/Elegoo-Progett...ywords=arduino
preso in super offertissima limitata a 37.90 euro


Ora, c'è qualcuno che ci smanetta sopra con progetti simpatici da presentarmi e condividere le esperienze di programmazione e elettronica tutti assieme?

Mi sono divertito a provare TUTTI i sensori e i moduli e funzionano TUTTI a meraviglia, l'unico problema che ho avuto è stato sul motore DC che non riesco a capire come farlo partire (vabè sorvoliamo su questo che poi sicuramente risolvo).

La mia idea era di provare a fare una serra "automatizzata" con: display 16x2; modulo temperatura/umidità; Modulo Real time Clock e due ventole per pc a 12v; un modulo bluetooh

Alla fin della fiera arduino mi dovrebbe leggere la temperatura e l'umidità con ora e data tutto sul display (da inviare anche sul cellulare) e impostando i vari parametri e superata una certa soglia di temperatura e umidità mi dovrebbe ventilare la serra con i motori posti sul tettino di plastica della serra, raggiunta la temperatura desiderata si deve fermare tutto, ovviamente con comando in "loop". Magari quando avrò tempo ci aggiungerò un vaporizzatore che stabilizzi anche l'umidità nella serra con una pompetta collegata all'acqua. Sarebbe gradito poter pilotare le ventole anche da cellulare.

Qualcosa in giro per il web l'ho trovata ma, mi ha confuso un po' le idee sul cablaggio e sopratutto sul codice da scrivere e caricare su arduino.

Spero di radunare tutti gli arduinisti per fare un bel thread con tutte le proprie esperienze, idee e progetti

Saluti a tutti
__________________
FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA
andore non è collegato   Rispondi citando
Vecchio 11 maggio 17, 21:29   #2 (permalink)  Top
User
 
L'avatar di ElNonino
 
Data registr.: 06-05-2007
Residenza: Tre Ville (Preore)
Messaggi: 3.605
Invia un messaggio via MSN a ElNonino
Citazione:
Originalmente inviato da andore Visualizza messaggio
Ciao raga

Avevo già da un po' di tempo un arduino originale con bluetooth ma, non avendo vari moduli e per mancanza di tempo e soldi non mi ci sono mai applicato sopra

Ora finalmente sono riuscito a prendermi in buona offerta un full kit "elegoo R3" che accoppiato all'originale funzionano alla grande!

Preso da amazon a questo link: https://www.amazon.it/Elegoo-Progett...ywords=arduino
preso in super offertissima limitata a 37.90 euro


Ora, c'è qualcuno che ci smanetta sopra con progetti simpatici da presentarmi e condividere le esperienze di programmazione e elettronica tutti assieme?

Mi sono divertito a provare TUTTI i sensori e i moduli e funzionano TUTTI a meraviglia, l'unico problema che ho avuto è stato sul motore DC che non riesco a capire come farlo partire (vabè sorvoliamo su questo che poi sicuramente risolvo).

La mia idea era di provare a fare una serra "automatizzata" con: display 16x2; modulo temperatura/umidità; Modulo Real time Clock e due ventole per pc a 12v; un modulo bluetooh

Alla fin della fiera arduino mi dovrebbe leggere la temperatura e l'umidità con ora e data tutto sul display (da inviare anche sul cellulare) e impostando i vari parametri e superata una certa soglia di temperatura e umidità mi dovrebbe ventilare la serra con i motori posti sul tettino di plastica della serra, raggiunta la temperatura desiderata si deve fermare tutto, ovviamente con comando in "loop". Magari quando avrò tempo ci aggiungerò un vaporizzatore che stabilizzi anche l'umidità nella serra con una pompetta collegata all'acqua. Sarebbe gradito poter pilotare le ventole anche da cellulare.

Qualcosa in giro per il web l'ho trovata ma, mi ha confuso un po' le idee sul cablaggio e sopratutto sul codice da scrivere e caricare su arduino.

Spero di radunare tutti gli arduinisti per fare un bel thread con tutte le proprie esperienze, idee e progetti

Saluti a tutti
Tutto sto casino per coltivare un po di Maria ?????

__________________
Peace & Love
Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein)
ElNonino non è collegato   Rispondi citando
Vecchio 11 maggio 17, 22:16   #3 (permalink)  Top
User
 
L'avatar di andore
 
Data registr.: 20-04-2009
Residenza: Potenza
Messaggi: 934
Citazione:
Originalmente inviato da ElNonino Visualizza messaggio
Tutto sto casino per coltivare un po di Maria ?????

Eh beh scusa, poi la spesa mi ritorna

Comunque gli schemi e i progetti singoli diciamo che li ho trovati (orologio, display, termometro e ventole) ora sta solo cercare di capire come unire il tutto e ovviamente cercare di unire anche tutti i codici da caricare su arduino, magari anche facendo una specie di menù pilotato da un pulsante che, premendolo scorre: data e ora >temperatura/umidità e magari, ci metto pure il sensore di livello acqua così da capire quando devo reintegrare l'acqua distillata alle mie piante carnivore

11. Temperatura e Umidità DHT-11 - PROGETTI ARDUINO

13. Arduino RTC Ora e Data Display - PROGETTI ARDUINO

15. Arduino Motore Ponte-H L293D SN754410 - PROGETTI ARDUINO (in quest'ultimo però al posto del motore DC dovrei metterci due ventole da pc)
__________________
FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA

Ultima modifica di andore : 11 maggio 17 alle ore 22:19
andore non è collegato   Rispondi citando
Vecchio 11 maggio 17, 22:57   #4 (permalink)  Top
User
 
L'avatar di aero330
 
Data registr.: 03-09-2012
Residenza: Gubbio-Ravenna
Messaggi: 1.771
Mi sembra un progetto neanche troppo complicato, direi fattibilissimo anche per uno che non ci "smanetta"...tutto sta nel partire dagli esempi più semplici e stupidi per poi progredire in qualcosa di sempre più complesso.
Quindi prima leggere il sensore di temperatura, poi scrivere sul display, unire le cose e realizzare un termometro ecc ecc....
__________________
Divertirsi insieme e con poco? Prova il combat! Curtman Squadron Combat
Sito Web: https://sites.google.com/site/curtmansquadroncombat/
aero330 non è collegato   Rispondi citando
Vecchio 12 maggio 17, 12:49   #5 (permalink)  Top
User
 
L'avatar di andore
 
Data registr.: 20-04-2009
Residenza: Potenza
Messaggi: 934
Citazione:
Originalmente inviato da aero330 Visualizza messaggio
Mi sembra un progetto neanche troppo complicato, direi fattibilissimo anche per uno che non ci "smanetta"...tutto sta nel partire dagli esempi più semplici e stupidi per poi progredire in qualcosa di sempre più complesso.
Quindi prima leggere il sensore di temperatura, poi scrivere sul display, unire le cose e realizzare un termometro ecc ecc....
Per il cablaggio ci sono quasi, il problema rimane i codici separati da unire tutti in un solo codice e poi caricarlo su arduino. Non penso che sia possibile incollare i codici di orologio, termometro e ventole ad cazzum sul programma no?!
__________________
FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA
andore non è collegato   Rispondi citando
Vecchio 12 maggio 17, 13:38   #6 (permalink)  Top
User
 
L'avatar di aero330
 
Data registr.: 03-09-2012
Residenza: Gubbio-Ravenna
Messaggi: 1.771
Citazione:
Originalmente inviato da andore Visualizza messaggio
Per il cablaggio ci sono quasi, il problema rimane i codici separati da unire tutti in un solo codice e poi caricarlo su arduino. Non penso che sia possibile incollare i codici di orologio, termometro e ventole ad cazzum sul programma no?!
Basterebbe anche il semplice copia/incolla, ma bisogna farlo nei punti giusti e adattando in maniera opportuna il vecchio codice a quello nuovo perchè, tanto per fare un esempio, magari alcuni pin di INPUT/OUTPUT sono in comune ai singoli codici di termometro, orologio, ventole...
__________________
Divertirsi insieme e con poco? Prova il combat! Curtman Squadron Combat
Sito Web: https://sites.google.com/site/curtmansquadroncombat/
aero330 non è collegato   Rispondi citando
Vecchio 13 maggio 17, 10:27   #7 (permalink)  Top
User
 
L'avatar di andore
 
Data registr.: 20-04-2009
Residenza: Potenza
Messaggi: 934
Citazione:
Originalmente inviato da aero330 Visualizza messaggio
Basterebbe anche il semplice copia/incolla, ma bisogna farlo nei punti giusti e adattando in maniera opportuna il vecchio codice a quello nuovo perchè, tanto per fare un esempio, magari alcuni pin di INPUT/OUTPUT sono in comune ai singoli codici di termometro, orologio, ventole...
Infatti era proprio quello che intendevo dire.

Comunque ora mi dedico un attimo a studiare bene il circuito e poi passo alla parte codice

Appena finisco posto uno sketch così magari mi correggete se ho sbagliato qualcosa
__________________
FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA
andore non è collegato   Rispondi citando
Vecchio 13 maggio 17, 15:14   #8 (permalink)  Top
User
 
L'avatar di andore
 
Data registr.: 20-04-2009
Residenza: Potenza
Messaggi: 934
Ok tutto funziona a meraviglia; orologio e temperatura

ora viene il bello!

Come faccio ad unire i due codici?

Codice:
#include <DHT.h>
#include <Wire.h>
#include <RTClib.h>
#include <LiquidCrystal.h>
#include "DHT.h"
#define DHTPIN 8
// 8 è il pin di Arduino a cui collego il sensore di temperatura
#define DHTTYPE DHT11
// dht11 è il tipo di sensore che uso
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// connessione display (pin)
char buffer1[20];
char buffer2[20];
RTC_DS1307 RTC;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int setpin = 6;
boolean statepin = 0;
 
void setup() {
lcd.begin(16, 2);
// imposto il tipo di display (colonne, righe)
lcd.setCursor(0,0);
lcd.print("Temperatura");
lcd.setCursor(0,1);
lcd.print("Umidita'");
lcd.setCursor(15,0);
lcd.print("C");
lcd.setCursor(15,1);
lcd.print("%");

pinMode (6, INPUT);
  digitalWrite (6, HIGH);
  Wire.begin();
  RTC.begin();
  lcd.begin(16, 2);
  if (! RTC.isrunning()) {
    RTC.adjust(DateTime(__DATE__, __TIME__));

}
void loop() {
int t = dht.readTemperature();
int h = dht.readHumidity();
// posiziono il cursore alla colonna 12 e riga 0
lcd.setCursor(12, 0);
lcd.print(t);
lcd.setCursor(12, 1);
lcd.print(h);

 statepin = digitalRead (setpin);
  if (statepin == LOW)
  {
    RTC.adjust(DateTime(__DATE__, __TIME__));
  }
  DateTime now = RTC.now();
  sprintf(buffer1,  "%02d:%02d:%02d", now.hour(), now.minute(), now.second());
  lcd.setCursor(0,0);
  lcd.print( buffer1 );
  sprintf(buffer2,  "%02d/%02d/%d", now.day(), now.month(), now.year());
  lcd.setCursor(0,1);
  lcd.print( buffer2 );
  delay(1000);

}


void setup () {
  
  }
}
In questo modo e dannatamente e ignorantissimamente SBAGLIATO
__________________
FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA
andore non è collegato   Rispondi citando
Vecchio 13 maggio 17, 15:51   #9 (permalink)  Top
User
 
L'avatar di aero330
 
Data registr.: 03-09-2012
Residenza: Gubbio-Ravenna
Messaggi: 1.771
Prova questo...nel tuo originale c'erano alcune cose che non andavano: doppia definizione della funzione LiquidCrystal lcd, doppio lcd.begin(16,2) e la doppia definizione di void setup() alla fine che non c'entra nulla)

Codice:
#include <DHT.h>
#include <Wire.h>
#include <RTClib.h>
#include <LiquidCrystal.h>
#include "DHT.h"

#define DHTPIN 8   // 8 è il pin di Arduino a cui collego il sensore di temperatura
#define DHTTYPE DHT11  // dht11 è il tipo di sensore che uso

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // connessione display (pin)

char buffer1[20];
char buffer2[20];

RTC_DS1307 RTC;

const int setpin = 6;
boolean statepin = 0;
int t;
int h;

void setup() {
	lcd.begin(16, 2); // imposto il tipo di display (colonne, righe)
	lcd.setCursor(0,0);
	lcd.print("Temperatura");
	lcd.setCursor(0,1);
	lcd.print("Umidita'");
	lcd.setCursor(15,0);
	lcd.print("C");
	lcd.setCursor(15,1);
	lcd.print("%");

	pinMode (6, INPUT);
	digitalWrite (6, HIGH);

	Wire.begin();
	RTC.begin();

	if (! RTC.isrunning()) {
	RTC.adjust(DateTime(__DATE__, __TIME__));
	}
}

void loop() {
	
	t = dht.readTemperature();
	h = dht.readHumidity();  // posiziono il cursore alla colonna 12 e riga 0
	lcd.setCursor(12, 0);
	lcd.print(t);
	lcd.setCursor(12, 1);
	lcd.print(h);

	statepin = digitalRead (setpin);
	
	if (statepin == LOW)
	{
		RTC.adjust(DateTime(__DATE__, __TIME__));
	}
	
	DateTime now = RTC.now();
	sprintf(buffer1,  "%02d:%02d:%02d", now.hour(), now.minute(), now.second());
	lcd.setCursor(0,0);
	lcd.print( buffer1 );
	sprintf(buffer2,  "%02d/%02d/%d", now.day(), now.month(), now.year());
	lcd.setCursor(0,1);
	lcd.print( buffer2 );
	delay(1000);
}
__________________
Divertirsi insieme e con poco? Prova il combat! Curtman Squadron Combat
Sito Web: https://sites.google.com/site/curtmansquadroncombat/
aero330 non è collegato   Rispondi citando
Vecchio 13 maggio 17, 17:15   #10 (permalink)  Top
User
 
L'avatar di andore
 
Data registr.: 20-04-2009
Residenza: Potenza
Messaggi: 934
Citazione:
Originalmente inviato da aero330 Visualizza messaggio
Prova questo...nel tuo originale c'erano alcune cose che non andavano: doppia definizione della funzione LiquidCrystal lcd, doppio lcd.begin(16,2) e la doppia definizione di void setup() alla fine che non c'entra nulla)

Codice:
#include <DHT.h>
#include <Wire.h>
#include <RTClib.h>
#include <LiquidCrystal.h>
#include "DHT.h"

#define DHTPIN 8   // 8 è il pin di Arduino a cui collego il sensore di temperatura
#define DHTTYPE DHT11  // dht11 è il tipo di sensore che uso

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // connessione display (pin)

char buffer1[20];
char buffer2[20];

RTC_DS1307 RTC;

const int setpin = 6;
boolean statepin = 0;
int t;
int h;

void setup() {
	lcd.begin(16, 2); // imposto il tipo di display (colonne, righe)
	lcd.setCursor(0,0);
	lcd.print("Temperatura");
	lcd.setCursor(0,1);
	lcd.print("Umidita'");
	lcd.setCursor(15,0);
	lcd.print("C");
	lcd.setCursor(15,1);
	lcd.print("%");

	pinMode (6, INPUT);
	digitalWrite (6, HIGH);

	Wire.begin();
	RTC.begin();

	if (! RTC.isrunning()) {
	RTC.adjust(DateTime(__DATE__, __TIME__));
	}
}

void loop() {
	
	t = dht.readTemperature();
	h = dht.readHumidity();  // posiziono il cursore alla colonna 12 e riga 0
	lcd.setCursor(12, 0);
	lcd.print(t);
	lcd.setCursor(12, 1);
	lcd.print(h);

	statepin = digitalRead (setpin);
	
	if (statepin == LOW)
	{
		RTC.adjust(DateTime(__DATE__, __TIME__));
	}
	
	DateTime now = RTC.now();
	sprintf(buffer1,  "%02d:%02d:%02d", now.hour(), now.minute(), now.second());
	lcd.setCursor(0,0);
	lcd.print( buffer1 );
	sprintf(buffer2,  "%02d/%02d/%d", now.day(), now.month(), now.year());
	lcd.setCursor(0,1);
	lcd.print( buffer2 );
	delay(1000);
}
OK ti ringrazio e sto cominciando a capirci qualcosa, di fatti avevo notato degli errori grossolani ma, il problema rimane sul fatto che ora, sul display però e tutto accavallato come da foto come faccio a intervallare ora e temperatura in maniera ciclica?


Imgur: The most awesome images on the Internet

Altra domanda: per azionare il motore DC ho a disposizione due tipi di transistor NPN ovvero (PN2222 e S8050) quale dovrei usare?
__________________
FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA
andore non è collegato   Rispondi citando
Rispondi

Bookmarks



Strumenti discussione
Visualizzazione

Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
arduino uno e ..... FLYTS Circuiti Elettronici 3 23 settembre 14 15:50



Tutti gli orari sono GMT +2. Adesso sono le 22:12.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002