Show Posts
|
|
Pages: [1] 2 3
|
|
3
|
International / Software / Re: Scrittura codice per impianto birra cerco collaboratori Monza/Milano
|
on: October 22, 2012, 02:38:39 am
|
Il codice è questo #include <OneWire.h> // DS18S20 Temperature chip i/o OneWire ds(10); // on pin 10 void setup(void) { // initialize inputs/outputs // start serial port Serial.begin(9600); } void loop(void) { byte i; byte present = 0; byte data[12]; byte addr[8]; if ( !ds.search(addr)) { Serial.print("No more addresses.\n"); ds.reset_search(); return; } Serial.print("R="); for( i = 0; i < 8; i++) { Serial.print(addr , HEX); Serial.print(" "); }
if ( OneWire::crc8( addr, 7) != addr[7]) { Serial.print("CRC is not valid!\n"); return; }
if ( addr[0] == 0x10) { Serial.print("Device is a DS18S20 family device.\n"); } else if ( addr[0] == 0x28) { Serial.print("Device is a DS18B20 family device.\n"); } else { Serial.print("Device family is not recognized: 0x"); Serial.println(addr[0],HEX); return; }
ds.reset(); ds.select(addr); ds.write(0x44,1); // start conversion, with parasite power on at the end
delay(1000); // maybe 750ms is enough, maybe not // we might do a ds.depower() here, but the reset will take care of it.
present = ds.reset(); ds.select(addr); ds.write(0xBE); // Read Scratchpad
Serial.print("P="); Serial.print(present,HEX); Serial.print(" "); for ( i = 0; i < 9; i++) { // we need 9 bytes data = ds.read(); Serial.print(data, HEX); Serial.print(" "); } Serial.print(" CRC="); Serial.print( OneWire::crc8( data, , HEX); Serial.println(); }
|
|
|
|
|
4
|
International / Software / Re: Scrittura codice per impianto birra cerco collaboratori Monza/Milano
|
on: October 22, 2012, 02:34:46 am
|
|
Ho caricato quella libreria, ma il risultato è che legge una temperatura maggiore di circa 3°C rispetto ad un termometro a mercurio che ritengo affidabile. Provando poi a collegare la sonda in parasite mode, la situazione peggiora ancora di più. Poi, siccome dovrò visualizzare la temperatura su un display, cosa si può togliere dal codice, in maniera di visualizzare soltanto "temperatura = 26,5" (es.)?
|
|
|
|
|
10
|
International / Software / Re: Scrittura codice per impianto birra cerco collaboratori Monza/Milano
|
on: October 16, 2012, 10:03:55 am
|
|
Si effettivamente era una domanda stupida la mia, mi scuso nuovamente per l'ignoranza. Mi pare di capire cmq che in questo codice, non si parli ancora, ne di sonde di temperatura, ne di display, ma solo del famigerato PID, giusto? Un'altra domanda delle mie: per la compilazione del codice, o meglio, per avere uno sketch funzionante con tutto quello che necessita per funzionare ovvero, sonda e display per visualizzare temperatura, bisogna già preoccuparsi della parte elettromeccanica, o si può ancora aspettare? Perchè se si, avendo in mano le specifiche degli RSS piuttosto che delle resistenze, potrei già portarmi avanti.
|
|
|
|
|
15
|
International / Software / Re: Scrittura codice per impianto birra cerco collaboratori Monza/Milano
|
on: October 14, 2012, 08:06:31 am
|
Concordo con astro, non si può pensare di pescare una libreria da internet che si chiama PID e pensare di aver fatto un controllo di temperatura PID. Le variabili in gioco su questo specifico caso sono tante, oltre quelle dette da astro mi permetto di aggiungere la densitá della massa da scaldare(non è solo acqua o altro liquido ma ci sono vari tipi di grani macinati all'interno) e la dissipazione termica della caldaia. Sicuramente l'utilizzo di un controllo PID è la soluzione più adeguata, ma calcolare le tre costanti che lo controllano non sará uno scherzo, e temo che non saranno nemmeno parametri legati solo all'impianto ma che andranno adeguati in base alla quantitá di mosto da preparare e dalla composizione e densitá dello stesso. Massima disponibilitá anche da parte mia comunque visto che sono molto interessato.
Anche se penso che tu sappia già di cosa stiamo parlando........
|
|
|
|
|