Arduino kyndige

Jeg vet det er noen her på forumet som har god greie på Arduino og koding, men jeg sender en generell forespørsel så kan de som gidder og har lyst kanskje hjelpe eller komme med forslag.

Jeg har to gjæringsrom i bryggeriet mitt som jeg kontrollerer temperaturen med hver sin stc-1000+. På disse rommene vil jeg montere arduino med temp sensor, wifi og gsm/gprs shield.

Det jeg ønsker er å få lagt kontinuerlig oppdatering av temperaturen ut på min hjemmeside, og i tillegg få tilsendt en sms på mobilen dersom temperaturen skulle bli høyere eller lavere enn en gitt temperatur.

Problemet mitt er at jeg ikke har kunnskap nok til å få til dette. Jeg får en temp sensor til å måle tempen, koble til en LCD skjerm og sånn nybegynner greier, men mer avansert er ikke noe jeg kan.

Så dersom noen har anledning og kunnskap, mottas all hjelp med stor takk.
 
Hei,
SMS-sendingen kan løses med et gsm-shield som du skrives, og en fin tutorial på programmering av den finner her:
http://arduino.cc/en/Guide/ArduinoGSMShield

Oppdatering av temperatur kan løses på flere måter, alt avhengig av hvilken webtjenester du har.
- For min del skrev jeg et enkelt script i php som tar imot temperaturen og lagrer den som en fil på serveren,
og websiden hentet ut temperaturen fra den filen og viste den på skjerm.
Fordelen er at du kan bruke en enkel http-kall fra arduinoene, http://arduino.cc/en/Tutorial/HttpClient , og klistre på temperaturen som en parameter til slutt.
- Filopplasting er en annen muliget, kontiuerlig laste oppdateringer opp på serveren.
Filen kan da enten lastes inn på websiden, eller åpnes direkte som en egen link.

Det er absolutt mulig å få til, men krever litt programmering.
 
Jeg ville droppet SMS-sending i arduino og heller sørget for den type varsling fra serveren som tar imot temperaturavlesningene. Jeg synes jobben tll en microcontroller bør være simplest mulig, f.eks. en loop a.la. "les av temperatur, last opp måling, sov i 1 min".
 
Jeg har en ferdig logger med Arduino (UNO eller Nano), 3 stk 18B20 sensorer (uendelig mange kan seriekobles), LCD, WiFi kort som sender til en gratis skytjeneste thingspeak.com
Denne blir forhåpentligvis postet på DIY i løpet av helgen.
 
Jeg har en ferdig logger med Arduino (UNO eller Nano), 3 stk 18B20 sensorer (uendelig mange kan seriekobles), LCD, WiFi kort som sender til en gratis skytjeneste thingspeak.com
Denne blir forhåpentligvis postet på DIY i løpet av helgen.
thingspeak.com var jeg ikke klar over, morsomt prosjekt. Takker for den :)
 
DA er koden ferdig. Har i tillegg nå laget en kobling mellom STC-1000 og loggeren, slik at jeg kan logge temp på to gjæringskar, temp i gjæringsskap, og hvorvidt STC'n er av eller sender varme / kulde. Det blir for sent i kveld for å legge den på DIY, men her er ihvertfall oppsettet.Arduino Nano - esp8266 - TempLog 3.png
 
Fett. Kjøpte biter etter din oppskrift men bare wifi shielden som addon. Blir det pes å ikke ha en skjerm på arduinoen?
 
WiFi shield og ikke ESP8266? Shieldene koster vanligvis mye i forhold. Jeg har derfor droppet dem, og har i stedet kjøpt flere ESP'er til flere prosjekter. Shield fungerer trolig minst like bra, og du slipper en del feilsøking. Jeg har brukt mye tid på å skjønne hvordan WiFi fungerer...
LCD. Nei du trenger det ikke, men jeg synes det er kjekt å se når jeg er nedom kjelleren. Siden jeg hadde en 1602 (16 tegn ganger to linjer), var valget enkelt.

Jo den biten som kom i posten ser faktisk ut som ESP8266, må sette meg mer inn i dette..
 
Hvor nøyaktig er ds18b20 sensorene? Jeg har to stk koblet til min arduino uno og de viser over 1 grad forskjell.
 
Nøyaktigheten ligger på +/- 0,5 grader, så optimalt burde du få maks 1.0 grad i differanse.
Det som ofte gir størst utslag i feilmålinger er hvor og hvordan sensorene er festet.


Redigert:
Obs: dette gjelder da om du har brukt standard oppsett med 12 bit oppløsning. Om du går ned til 9 bit oppløsning vil du teoretisk kunne få +/- 1.0 grad.

Jeg fant ikke noe i databladet på hvor rask den skal være. Erfaring fra TO-92 innkapslingene (formen på sensoren) på analoge sensorer er alt fra 1 til 3 minutter. Altså, har du tatt på en av sensorene innenfor den tiden vil sensoren kunne vise feil.
 
Sist redigert:
Jeg sliter med å få esp8266 til å funke, får bare opp "wifi shield not present". Noen som kan hjelpe meg? Jeg bruker en Arduino UNO.
 
Hvor nøyaktig er ds18b20 sensorene? Jeg har to stk koblet til min arduino uno og de viser over 1 grad forskjell.

Jeg har brukt et betydelig antall DS18S20 og ingen har hatt tempavvik fra hverandre (når de står i samme miljø) de er altså innenfor 1/100 grader, respnstiden på tempforandring når du tar direkte på føleren er microskopiek og vanskelig og måle.
De fleste programmer har 750 ms delay, vet ikke hvorfor sicen det ser ut som få ms. er nok.

_redigert_
 
Hvor nøyaktig er ds18b20 sensorene? Jeg har to stk koblet til min arduino uno og de viser over 1 grad forskjell.
Jeg har 8 stk ds18b20 sensorer koblet opp i bryggeriet mitt. De er alle kontrollert mot en Thermapen jeg har. De fleste er innenfor en grad i det meste av temperaturområdet. En av sensorene (nr 7) ble skadet under for høy temperatur under lodding. Den viser derfor en betydelig større feil, men er likevel som de andre, helt repeterbar. Jeg har laget individuell kalibrering for alle følerne, og mener nå at alle temperaturene rapporteres med en nøyaktighet på en tiendel eller to.
Kalibreringen gjøres ved at jeg for hver føler kan spesifisere temperaturkorreksjon på så mange temperaturer jeg ønsker. Deretter kjøres alle målingene gjennom en kalibreringsrutine som interpolerer i korreksjonsdataene. Her er dataene (som også viser nøyaktighet på følerne):
void Tscale()
{
T[0][2]= 10.; dTa[0][2]= -0.4;
T[0][3]= 50.; dTa[0][3]= 0.9;
T[0][4]= 65.; dTa[0][4]= 0.9;
T[0][5]= 101.; dTa[0][5]= 1.1;

T[1][2]= 10.; dTa[1][2]= -0.0;
T[1][3]= 50.; dTa[1][3]= 0.5;
T[1][4]= 65.; dTa[1][4]= 0.;
T[1][5]= 101.; dTa[1][5]= 1.1;

T[2][2]= 10.; dTa[2][2]= 0.;
T[2][3]= 50.; dTa[2][3]= 0.2;
T[2][4]= 70.; dTa[2][4]= 0.0;
T[2][5]= 101.; dTa[2][5]= 1.3;

T[3][2]= 10.; dTa[3][2]= 0.;
T[3][3]= 57.; dTa[3][3]= 0.;
T[3][4]= 101.; dTa[3][4]= 0.;

T[4][2]= 10.; dTa[4][2]= 0.;
T[4][3]= 57.; dTa[4][3]= 0.;
T[4][4]= 101.; dTa[4][4]= 0.;

T[5][2]= 10.; dTa[5][2]= -0.1;
T[5][3]= 70.; dTa[5][3]= 0.3;
T[5][4]= 101.; dTa[5][4]= 1.5;

T[6][2]= 10.; dTa[6][2]= 0.;
T[6][3]= 57.; dTa[6][3]= 0.;
T[6][4]= 101.; dTa[6][4]= 0.;

T[7][2]= 10.; dTa[7][2]= -2.;
T[7][3]= 50.; dTa[7][3]= 4.;
T[7][4]= 65.; dTa[7][4]= 5.5;
T[7][5]= 101.; dTa[7][5]= 5.5;

T[8][2]= 14.; dTa[8][2]= -0.2;
T[8][3]= 65.; dTa[8][3]= 1.2;
T[8][4]= 101.; dTa[8][4]= 3.;
}
 
Jeg sliter med å få displayet til å virke. Får lastet opp målinger til thingspeak. Ser nå at det finnes tre forskjellige varianter av i2c display. Jeg har fått en type som heter YWrobot.
 
Noen som har anledning til å hjelpe meg med en Arduino sketch? Jeg har et GSM/GPRS shield, esp8266, ds18b20 og en eller to LCD i2c og selvsagt arduino uno. Jeg har to gjæringsrom som jeg vil ha muligheten til å sjekke temperaturen på, enten via thingspeak og/ eller egen side på min hjemmeside der temperaturen justeres umiddelbart ved endring av temp. Derfor esp8266 og ds18b20. Dersom temperaturen skulle avvike for mye ønsker jeg å bli varslet om dette med en sms. Lcd er strengt tatt ikke nødvendig, men det er greit å kunne se hva temperaturen ligger på når jeg er i rommene.

En samlet sketch hadde vert supert, men hver for seg funker kanskje også, jeg klarer muligens å sette de sammen selv.

Jeg har fått til å gjøre det meste, men da med ethernet shield i stedet for esp8266, og uten gsm/gprs shield. Så det er i bunn og grunn å få disse til å funke som jeg vil.
 
Tilbake
Topp