Pages: 1 2 [3] 4 5   Go Down
Author Topic: Cercasi Volontari Per Automazione Camera Fermentazione "Birra" Con Arduino  (Read 4375 times)
0 Members and 1 Guest are viewing this topic.
Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 102
Posts: 6541
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il codice originale è di Bachna (http://forum.arduino.cc//index.php?action=profile;u=26423); io l'ho modificato per eliminare i goto e il richiamo al setup();

Quel codice gestisce, a parte il sensore di corrente, l'LCD e 3 pulsanti, un solo sensore di temperatura di tipo analogico.
Portarlo in digitale, esempio DS18B20, è semplice.

In uscita da 3 segnali, uno PWM proporzionale allo scarto delle temperature (tramite la funzione fscale), 2 uscite digitali di tipo ON/OFF. Una per attivare l'elemento riscaldante e una per l'elemento che raffredda.
Se vuoi aggiungere altri controlli (ventola, differenza massima cella Peltier) si può fare.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quel codice gestisce, a parte il sensore di corrente, l'LCD e 3 pulsanti, un solo sensore di temperatura di tipo analogico.
Portarlo in digitale, esempio DS18B20, è semplice.

Bene ottima notizia smiley-grin

In uscita da 3 segnali, uno PWM proporzionale allo scarto delle temperature (tramite la funzione fscale), 2 uscite digitali di tipo ON/OFF. Una per attivare l'elemento riscaldante e una per l'elemento che raffredda.
Se vuoi aggiungere altri controlli (ventola, differenza massima cella Peltier) si può fare.

Bene Grazie del Aiuto Paolo si come detto vogliamo andare a STEP

Quindi la prima sarebbe integrare e testare questo codice per fare un termoregolatore caldo freddo con celle peltier
gestito in PWM PID compresa la ventola di dissipazione in PWM e la differenza max delle facce della cella per salvaguardarla

Se risuciamo gia ad integrare la tastiera che ho postato e LCD in I2C sarebbe Ottimo

Per Ambiente vorrei usare questo Sensore Umidita Temenratura DHT11

Se serve un altro spunto lo possiamo prendere qui alla fine dobbiamo fare una cosa simile
Ma un po piu potente e completa smiley-grin

http://thebobrowe.com/?p=840
Codice http://thebobrowe.com/wp-content/uploads/2012/08/KeypadTempControl_rev7.txt

Grazie
« Last Edit: October 18, 2013, 02:45:11 am by saviothecnic » Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 102
Posts: 6541
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il DHT11, costa 2€ ma ne vale mezzo: non ha il punto decimale e il datasheet (http://itead-europe.com/pm/elecronic%20Components/sensor/humidity%20temperature%20sensor%20dht11/DS_IM120628005_DHT11.PDF) riporta un accuratezza di +o- 2°C e +o- il 4% di umidità relativa.
Se dovessi inserire il valore a mano, probabilmente saresti più preciso del sensore.  smiley-mr-green
Il DHT22 (https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf), costo intorno ai 10€ va un po' meglio: <+o- 0.5°C e +o- 2%RH
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hai ragione butto i due DH11 che ho credevo che per una semplice misura ambiente si potevano usare
ma se accuratezza è questa sono buoni per il secchio della spazzatura smiley-razz

Allora vado con questi ? DHT22/AM2302 Digital Temperature and Humidity Sensor Replace SHT11 SHT15
http://www.ebay.it/itm/1PCS-DHT22-AM2302-Digital-Temperature-and-Humidity-Sensor-Replace-SHT11-SHT15-/261070585099?pt=LH_DefaultDomain_0&hash=item3cc904fd0b
Comunque io gli userei solo per ambiente e per lo più umidità per il Log
Perche per la lettura della temepratura che è infunsione della gestione del termoregolatore mi vorrei affidare solo hai Dallas DS18B20
Logged

Ivrea
Offline Offline
Newbie
*
Karma: 0
Posts: 31
I Maker sono personaggi interessanti: non sono nerd, anzi sono dei tipi piuttosto fighi che si interessano di tecnologia, design, arte, sostenibilità, modelli di business alternativi. (Massimo Banzi)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Code:
[quote author=PaoloP link=topic=192189.msg1432385#msg1432385 date=1382027781]
Ho dato uno sguardo a quel codice... mi sono messo ad urlare e a stapparmi i capelli, soprattutto quando richiama setup();  :smiley-eek-blue: :smiley-eek:
Per non parlare dei goto...

EDIT:
Tolto l'obbrobrio

  // ________________________Controller________________________


  float E = Tmeas - float(Tref);

  if ( E > T_delta)   // cooling at max  - positive voltage
  {
    //positive voltage
    digitalWrite(6, HIGH);
    digitalWrite(7, LOW);

    analogWrite(5, Imax_dutyCycle);
    lcd.setCursor(9, 1);
    lcd.print("Max-C");
    lcd.setCursor(9, 0);
    lcd.print("D:");
    lcd.print(Imax_dutyCycle * 100 / 255);
    lcd.print("%   ");
  }

  if ( E < -T_delta)
  {
    //negative voltage
    digitalWrite(6, LOW);
    digitalWrite(7, HIGH);
    analogWrite(5, Imax_dutyCycle);
    lcd.setCursor(9, 1);
    lcd.print("Max-H");
    lcd.setCursor(9, 0);
    lcd.print("D:");
    lcd.print(Imax_dutyCycle * 100 / 255);
    lcd.print("%   ");
  }

  if ( (E > - T_delta)  &&  (E < T_delta))
  {
    // PID or other control

    if ( E >= 0   ) // cooling
    {
      digitalWrite(6, HIGH);
      digitalWrite(7, LOW);

      int d =  fscale( 0, T_delta, 0, Imax_dutyCycle, E, 0);
      constrain(d, 0, Imax_dutyCycle);
      analogWrite(5, d);

      lcd.setCursor(9, 1);
      lcd.print("PID-C");
      lcd.setCursor(0, 1);
      lcd.print("Tm:");
      lcd.print(Tmeas);
      lcd.setCursor(9, 0);
      lcd.print("D:");
      lcd.print(d * 100 / 255);
      lcd.print("%   ");
    }

    else if (E < 0)
    { // heating
      digitalWrite(6, LOW);
      digitalWrite(7, HIGH);

      int d =  fscale( (-1 * T_delta), 0, Imax_dutyCycle, 0, E, 0);
      constrain(d, 0, Imax_dutyCycle);
      analogWrite(5, d);

      lcd.setCursor(9, 1);
      lcd.print("PID-H");
      lcd.setCursor(0, 1);
      lcd.print("Tm:");
      lcd.print(Tmeas);
      lcd.setCursor(9, 0);
      lcd.print("D:");
      lcd.print(d * 100 / 255);
      lcd.print("%   ");
    }

  }

  delay(50);

  Serial.print("Error ");
  Serial.print(E);
  Serial.print("   T : ");
  Serial.println(Tmeas);

  delay(500);
}



}

Alla fine calcola il delta all'uscita del pid: se maggiore della temperatura riscalda se minore raffredda.
Un banale IF.
Se la differenza supera i 2° in positivo o in negativo, riscalda o raffredda alla massima potenza, se all'interno dell'intervallo lavora di fino (PID).

Grazie Paolo per aver aggiustato il codice...in effetti ora e' molto piu' leggibile... smiley smiley
Posso provare a testarlo con il mio set up (anche se ho un problema con la motor shield che eroga solo 4A e quando la cella assorbe il max mi fa impallare la lettura della temperatura sull'ingresso analogico)

In effetti il "banale IF" del controllo come si vede sopra e' una soluzione semplice e immagino efficace (avendo cura di tarare bene isteresi).
Una cosa che vorrei pero' modificare  e' algoritmo di controllo di fino. Ora viene invocata una funzione interna  fscale() che non mi e' chiarissimo come funziona...vorrei sostituirla con la libreria PID standard e usarla ne due loop  if ( E >= 0   ) // cooling e   else if (E < 0)  // heating

partiamo da questo nocciolo e se risulta stabile e funzionante iniziamo a aggiungere il resto !

Davide
« Last Edit: October 18, 2013, 06:17:46 am by arzaman » Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bene Davide io finche non ho qualche PCB per fare prove sono fermo smiley-sad
Ma sto facendo qualcosa dal lato meccanico ho realizzato il sistema pompa e serbatoio e sono in attesa che arirvi qualche altro pezzo ordinato tipo il radiatore con ventola.

Come vanno i tuoi test con questo codice che ci hanno passato ?

Grazie
Logged

Ivrea
Offline Offline
Newbie
*
Karma: 0
Posts: 31
I Maker sono personaggi interessanti: non sono nerd, anzi sono dei tipi piuttosto fighi che si interessano di tecnologia, design, arte, sostenibilità, modelli di business alternativi. (Massimo Banzi)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset



Come vanno i tuoi test con questo codice che ci hanno passato ?

Grazie


sorry ma sono fermo anche io.... smiley-cry 
un po' perche' preso dal nuovo progetto della malteria  smiley-red...ma non puo' essere una scusa...e un po' perche' non ho risolto problema instabilità' del mio set up per cui la scheda arduino motor shield non riesce a reggere mettendo i due canali in parallelo la richiesta di corrente della cella da 60w (5A contro 4A erogati) e questo ...non so perche'...impalla anche il sensore di temperatura LM35 che comincia a sparare numeri a caso. Quindi quando provo a controllare il tutto PID inizia a convergere ma dopo un po' "esplode" tutto ..
O trovo un H-Bridge che eroga qualche ampere in piu' o cerco una cella un po' meno assetata...

Davide
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

O trovo un H-Bridge che eroga qualche ampere in piu' o cerco una cella un po' meno assetata...Davide
Allora anche a te farebbe comodo un PCB almeno per la parte di potenza smiley-grin

Di già fatto ci stanno questi

http://www.ebay.it/itm/171065203806?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649

http://www.ebay.it/itm/230965079712?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649
Logged

Ivrea
Offline Offline
Newbie
*
Karma: 0
Posts: 31
I Maker sono personaggi interessanti: non sono nerd, anzi sono dei tipi piuttosto fighi che si interessano di tecnologia, design, arte, sostenibilità, modelli di business alternativi. (Massimo Banzi)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset


e che ci devi fare con 60A  ?????????  una saldatrice PWM  smiley-grin smiley-grin smiley-grin smiley-grin smiley-grin   
non esageriamo...
si sto cercando qualcosa di "fatto" adatto allo scopo che pompi una decina di ampere...e lo cerco nella cara buona vecchia europa...non per questioni di razzismo ma perche' aspettare una spedizione dal sol levante e avere a che fare con la dogana e' estenuante
ovviamente in attesa del layout e PCB finale con il nostro super controller  smiley-lol

Davide

PS provo a mettere aletta raffreddamento a L298 e vedere se regge tirandogli il collo

Davide
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e che ci devi fare con 60A  ?????????  una saldatrice PWM  smiley-grin smiley-grin smiley-grin smiley-grin smiley-grin  
non esageriamo...
Be io che voglio lagerizzare non so se usero "se ce la fa" una cella o piu di una ma credo almeno due celle servono quindi diciamo 12 15A
Attualmente ne ho comprato uno stock da 6 pezzi
E mi sono fatto il conto 6A per cella per 6 sono 36A ma spero di poter fare tutto con una max due celle  smiley-wink
Poi non so perche si passa da controller da 2A subbito a drivers 30 40 e passa A e il costo è quasi simile smiley-grin

si sto cercando qualcosa di "fatto" adatto allo scopo che pompi una decina di ampere...e lo cerco nella cara buona vecchia europa...
non per questioni di razzismo ma perche' aspettare una spedizione dal sol levante e avere a che fare con la dogana e' estenuante
Si ti capisco a me oggi stanno arrivando componenti ordinati uno due mesi fa smiley-grin

Vedi se uno di questi che vendono in europa consegna stimata entro finemese ti va bene

http://www.ebay.it/itm/Pont-en-H-5A-30V-Commande-moteur-H-Bridge-Arduino-Raspberry-Pi-Motor-/271221450299?pt=LH_DefaultDomain_23&hash=item3f260ee63b

http://www.ebay.it/itm/MODULO-PID-50A-SINGLE-BRIDGE-PONTE-SINGOLO-PER-ARDUINO-AUTO-INTELLIGENTI-NUOVO-/141043351527?pt=Componenti_elettronici_attivi&hash=item20d6d6bfe7

http://www.ebay.it/itm/Double-pont-en-H-30A-15V-Arduino-H-bridge-motor-power-driver-/271299991537?pt=LH_DefaultDomain_23&hash=item3f2abd57f1

ovviamente in attesa del layout e PCB finale con il nostro super controller  smiley-lol
Certo anche io sono fremo ho gia i compo dentro appena ho una straccio di PCB almeno quello di potenza incido e provo
Intanto vado avanti con assemblaggio meccanico mi mancano solo gli scambiatori e il radiatore che sono in arrivo da oltreoceano
ed ho finito la parte peltier che ho modificato da aria h20 a h20 radiatore a  h20 serpentina per maggiore efficienza

PS provo a mettere aletta raffreddamento a L298 e vedere se regge tirandogli il collo

Umm puoi tirarci 500ma max 1A inpiu ma non credo farai miracoli dissipandolo meglio ma sicuramente male non fa smiley-grin
Prova con un overvolt della cella se ne hai una da sacrificare x i test forse ti rende dipiu

Ieri sera ho fatto qualche altro test allego foto e credo che con una cella non ce la si fa
Credo ne seriveranno tra due e 4 celle e due scambiatori in parallelo come quello che ho postato qualche topic dietro
Ma non è detto adesso sto dissipando ad aria magari quando dissipo h20 con radiatore riesco a tirarci dipiu



* ProvePeltier.jpg (118.31 KB, 566x754 - viewed 48 times.)

* PeltierFreddoOK.jpg (32.66 KB, 640x347 - viewed 49 times.)
« Last Edit: October 24, 2013, 07:53:29 am by saviothecnic » Logged

Ivrea
Offline Offline
Newbie
*
Karma: 0
Posts: 31
I Maker sono personaggi interessanti: non sono nerd, anzi sono dei tipi piuttosto fighi che si interessano di tecnologia, design, arte, sostenibilità, modelli di business alternativi. (Massimo Banzi)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset


Qui il thread langue e i birraioli sono tutti impegnati a fare altro ...io per primo ..

Chiuse un po' di cose che avevo in pista torno sul tema della parte "core" del controller..ho appena ordinato un H-bridge basato su BTS7960B. Dovrebbe tirare 43 A e posso gestire ampiamente il mio ambiente di test e debug senza i problemi che ho con L298 che va in protezione !

http://www.ebay.it/itm/NEW-Double-BTS7960B-43A-Motor-Driver-High-power-Module-For-Smart-Car-Arduino-/200981688440?pt=UK_BOI_Industrial_Automation_Control_ET&hash=item2ecb713078&_uhb=1

spediscono da UK per cui in breve tempo dovrei averla in mano e proviamo a fare girare i codice di cui sopra e vedere se stabile

stay tuned

Davide

Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

E si anche io sono preso dato che ho quasi terminato il clone del MastroBirraio automatico
anche lui comandato da Arduino nel trend BirraDuino ma dato che ho quasi finito nel fratempo che qualche amico di forum
ci butta su qualche pcb monofaccia per giocherellare ti seguo a ruota ed ho appena ordinato anche io lo stesso tuo modulo 12,50€ spedito ma ovviamente a me arrivera qualche mese dopo ma dato che ho prima il mastro birraio da finire
la fretta non è un mio problema smiley-razz Se qualcunaltro non ha fretta e vuole provare posto il link sotto

http://www.ebay.it/itm/170949755496?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649

Ma ovviamente un PCB sopratutto per la parte Madre Arduino Mega farebbe comodo  smiley-draw smiley-wink

Grazie
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora Davide gli inglesi sono stati veloci nella spedizione ?
Ti è arrivato il modulo per testare il codice che gentilmente qui in formum ci hanno adattato ?

Nelfrattempo che spuntano fuori volontari per la Parte PCB ma sopratutto aggiustamenti al codice
Oggi mi è arrivato uno degli scambiatori mini radiatori in alluminio che avevo rodinato da oltreoceano
quindi vado avanti con il cablaggio della parte meccanica del sistema doppio scambiatore Cella H20
Posto una foto dello scambiatore arrivato sono due pezzi che collegerò in serie idrauilica oguno con su uan cella da 4x4cm



* RadiatoreH20.jpg (45.59 KB, 640x1098 - viewed 33 times.)
« Last Edit: November 07, 2013, 04:18:10 am by saviothecnic » Logged

Ivrea
Offline Offline
Newbie
*
Karma: 0
Posts: 31
I Maker sono personaggi interessanti: non sono nerd, anzi sono dei tipi piuttosto fighi che si interessano di tecnologia, design, arte, sostenibilità, modelli di business alternativi. (Massimo Banzi)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset


Arrivato il modulo h-bridge da 43 A !!



spero prossima settimana di assemblare il tutto e dedicare un po' di tempo a testare il codice

stay tuned

Davide
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 281
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ottimo credevo facessero prima dal' UK
Ovviamente il mio da oltreoceano è ancora in viaggio oggi ho anche ordinato due celle TEC1-12715
Cosi ve vedo che non ce la faccio con quelle da 6A usero queste da 15A dato che sto modulo regge fino a 43A
e comunque Alimentatore che ho al max arriva a 12V 30A sono limite limite con queste due celle ordinate
anche se spero di fare tutto con quelle da 6A che ho gia dentro ora smiley-grin
Bene attendiamo sett prossima x i tuoi test smiley-grin
Logged

Pages: 1 2 [3] 4 5   Go Up
Jump to: