1. Dette nettstedet bruker informasjonskapsler (cookies). Ved å fortsette å bruke dette nettstedet, samtykker du til vår bruk av informasjonskapsler. Lær mer.
  2. Hei der Gjest, bli medlem ved å gå til medlemsregistreringen
    Fjern notisen

Wifi gjæringstemperatur

En tråd i 'DIY' startet av Amarillo, 6 Okt 2016.

  1. Tormod U

    Tormod U
    Expand Collapse
    Registrert bruker

    Hei, har allerede vært og raidet ebay etter deler, men ble sittende og prøve å forstå og lære meg programeringen av den..
    har du muligheten til å legge ut koden også så har jeg kanskje en mulighet til å forstå hvorfor og hvordan det fungerer :)
    Hilsen Tormod.
    Gammel hund som skal lære nye triks :)
     
  2. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Ja, skal legge ut programmering og bygging etterhvert.
    ESP-12 er litt sær, og det er mye mindre info om den på nettet enn ESP-01, men jeg skal nok finne en god løsning etterhvert.
     
  3. Tormod U

    Tormod U
    Expand Collapse
    Registrert bruker

    Jeg bestilte like godt 5stk esp-01 også så får vi se hva jeg får til der....
     
  4. TorfinnS

    TorfinnS
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Båtsfjord
    Programmeringer er lik på de to. 12 har noen flere io det er vel største forskjellen.
     
  5. msevland

    msevland
    Expand Collapse
    Fylkesleder Oslo
    Fylkesstyre

    Jepp. Jeg kjører mine v01 programmer uendret på v12
     
  6. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Stemmer det, men litt mer knotete med programmeringen. Litt flere ledninger og ingen pins. Fikk en NodeMCU i posten i dag og den er jo perfekt å teste kode på, har fått ryddet opp mye i koden. Fikk nettopp OTA-programmering til å funke. Det gjør jo saker og ting mye enklere, spesielt på ESP-12.
     
    Morten Abusland liker dette.
  7. msevland

    msevland
    Expand Collapse
    Fylkesleder Oslo
    Fylkesstyre

    Lag gjerne en DIY på OTA :)
     
  8. msevland

    msevland
    Expand Collapse
    Fylkesleder Oslo
    Fylkesstyre

    Har etterhvert flere :)[​IMG]
     
    Amarillo og Oberstbräu liker dette.
  9. Mc.

    Mc.
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Hitra
    En sånn duppeditt som ligger og koser seg i vørteren og logger gjæringstemperaturen til trådløsnettverket høres supert ut. Da blir det mindre synsing og mere fakta for den som er interessert i det. All cudos til dere som greier å utvikle slikt. En slik dings kan jo ha mange bruksområder.
     
    bardevjen liker dette.
  10. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Ja, det blir mindre synsing. Har lenge hatt mistanke om at det er temperaturforskjell i de to gjæringskarene i skapet mitt. Har kjørt en test med vann de siste dagene og det viser seg at temperaturen i det nederste karet er 0,7°C høyere enn det øverste. Det er såpass mye at det gjør en forskjell, så vifter er bestilt...
     
  11. msevland

    msevland
    Expand Collapse
    Fylkesleder Oslo
    Fylkesstyre

    Jeg har lenge kjørt logging med mine Temploggere, og ser at jeg får temp-variasjon også med vifte. Avhenger av kjøleskap og hvor kjøleelementet er. Hos med henger den fritt bakerst i øverste del...
     
  12. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Ok, får prøve meg fram, bruker varme i stedet for kjøling ettersom skapene står i utetemperatur.
    Det som var positivt var at temperaturen i vannet var ekstremt jevn over tid.
    Jeg trodde det var noe feil med målingen for den målte konstant 19,56°C hvert femte minutt i over et døgn.
    Måtte ta den ut for å sjekke til slutt, men da forandret det seg med en gang så målingene var reelle.
     
    Morten Abusland og msevland liker dette.
  13. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Det er egentlig nokså enkelt å bruke OTA.
    Første opplasting med OTA-kode må lastes opp via seriell kabel, men etter det kan wifi brukes på alle oppdateringer.
    Det ligger to OTA-filer i 'Examples' i Arduino IDE, 'BasicOTA.ino' og 'OTALeds.ino'.

    Før opplasting må du ha Python 2.7.x installert på maskinen. Sørg for å velge 'Add python.exe to Path' under innstallering hvis du har Windows.
    python.jpg

    Så er det bare å laste opp f.eks. BasicOTA via kabel. Steng IDE og start på nytt, da skal ESP'en dukke opp under 'Tools - Port' sammen med seriellportene. Velg den og last opp filen din trådløst, men husk at OTA-koden alltid må være med i din egen sketch. Du kan f.eks. kopiere din egen kode inn i BasicOTA-koden.

    Lykke til!
     
    #33 Amarillo, 28 Okt 2016
    Sist redigert: 28 Okt 2016
    msevland liker dette.
  14. msevland

    msevland
    Expand Collapse
    Fylkesleder Oslo
    Fylkesstyre

  15. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Programmering

    Er litt usikker på hvor detaljert jeg skal være, men må gå ut fra at de som går løs på dette har drevet litt med Arduino eller annen programmering. Men jeg svarer selvsagt på spørsmål hvis noen står fast. Å sette opp en Thingspeak-kanal er veldig enkelt og står forklart mange steder så det hopper jeg også over.

    ESP-12 har ingen pins, kun loddepunkter og er derfor litt vanskeligere å programmere enn ESP-01 jeg brukte i første utgave.
    Vanlige Dupont-kabler er litt for tykke til å passe i loddepunktene, men jeg fant noen som fulgte med et Arduino-sett jeg kjøpte for en stund siden. De har dårlig kvalitet, men de passer perfekt i loddepunktene. De som følger med i breadboard-settet i 'handlelisten' over er denne type kabler.
    dupont.jpg pro2.jpg

    8 kabler må kobles på ESP-12 for å programmere den.
    +3.3v
    VCC
    EN
    GPIO2


    Jord
    GND
    GPIO15
    GPIO0

    I tillegg kobles TX mot RX og RX mot TX mellom ESP og det du bruker til seriell kontakt mot pc (Arduino, USB to TTL etc). Husk felles jording av alt du kobler sammen.
    pro1.jpg pro3.jpg
    Jeg bruker en ekstra strømforsyning når jeg flasher, har sett at noen mener at USB-porten på en pc ikke klarer å gi nok strøm, uten at jeg har testet dette, og jeg
    bruker Arduino IDE til å sende over koden. Velg 'Generic ESP8266 Module' under 'Tools - Board' og riktig USB-port under 'Tools - Port'..

    Legg inn Write API-key fra din Thingspeak-kanal, navn på wifi-nettverk (ssid) og passord til nettverket i koden.
    Etter programmering fjernes kablene på TX, RX, GPIO0 og GPIO2 og ESP'en skal være klar til bruk.
    Den hvite kabelen på bildet kobler sammen RST og GPIO16, den må ikke være der under programmeringen, men må være på plass for at dvale-funksjonen skal fungere. Hvis ikke vil den gå i dvale, men ikke våkne igjen.

    Før man begynner å lodde på ledninger er det greit å teste at alt fungerer. Sensoren (DS18B20) har tre bein. Holder du den flate siden mot deg er jord beinet til venstre, signal i midten (til GPIO4) og +3.3v til høyre. Det må kobles en 4,7k motstand mellom signal og +. Hvis temperatur og spenning på strømforsyningen nå kommer inn på Thingspeak-kanalen din er alt ok.

    ds18b20.jpg thgspk1.jpg thgspk.jpg

    Kode

    Kode:
    #include <ESP8266WiFi.h>
    #include <OneWire.h>
    #include <DallasTemperature.h>
    #define ONE_WIRE_BUS 4    // tempsensor på GPIO4
    
    OneWire oneWire(ONE_WIRE_BUS);
    DallasTemperature DS18B20(&oneWire);
    
    const char* server = "api.thingspeak.com";
    String apiKey ="**********";
    const char* ssid = "**********";
    const char* passord = "**********";
    const float kalibrering = 0.0;  // kalibrering av tempsensor
    const int venteTid = 300;        // dvale i sekunder
    ADC_MODE(ADC_VCC);
    
    void setup() {
    
      // kobler til wifi, går videre etter 10 sekunder hvis mislykket
      WiFi.begin(ssid, passord);
      while ((millis() < 10000) && (WiFi.status() != WL_CONNECTED)) {
      delay(500);
      }
    
    // leser temperatur og spenning
      DS18B20.requestTemperatures();
      float temp = (DS18B20.getTempCByIndex(0)) + kalibrering;
      float volt = ESP.getVcc() / 1000.0;
    
    // sender data til Thingspeak
       WiFiClient client;
       if (client.connect(server, 80)) {
       String postStr = apiKey;
       postStr += "&field1=";
       postStr += String(temp);
       postStr +="&field2=";
       postStr += String(volt);
       postStr += "\r\n\r\n";
       client.print("POST /update HTTP/1.1\n");
       client.print("Host: api.thingspeak.com\n");
       client.print("Connection: close\n");
       client.print("X-THINGSPEAKAPIKEY: " + apiKey + "\n");
       client.print("Content-Type: application/x-www-form-urlencoded\n");
       client.print("Content-Length: ");
       client.print(postStr.length());
       client.print("\n\n");
       client.print(postStr);
       delay(100);
       client.stop();
       }
    
    // setter ESP i dvale
    ESP.deepSleep(venteTid * 1000000);
    delay(100);
      }
    
    void loop() {}
    
    Noen vil kanskje synes det er merkelig at det ikke er noe kode i 'void loop'. Det er på grunn av deepsleep-funksjonen, hver gang ESP'en våkner fra dvale, starter den med linje 1 i koden, kjører gjennom koden en gang og går i dvale igjen. Dermed har den ikke behov for kode som skal gjentas, den kjører all kode kun en gang.

    OTA-programmering (trådløs programmering) er diskutert lenger opp i tråden, jeg har ikke fått testet det så mye, så jeg går ikke inn på det her. Virker veldig enkelt og greit og er en stor fordel på ESP-12 fordi man slipper å koble til 4-5 ledninger hver gang man forandrer på noe småtteri i koden, dvaletid, thingspeak-kanal osv.

    Lykke til!
     
    #35 Amarillo, 28 Okt 2016
    Sist redigert: 20 Nov 2016
    kfladseth, FrankD, msevland og 2 andre liker dette.
  16. FrankD

    FrankD
    Expand Collapse
    Norbrygg-medlem

    Amarillo liker dette.
  17. Lystad

    Lystad
    Expand Collapse
    Registrert bruker

    Hoi... dette var interresant Er det noen av dere som kunne lagd slike på bestilling? Har absolutt null programeringsevner, så dette har jeg slått i fra meg, men kjøper gjerne et par om noen gidder å lage for salg! Spesielt interessant når man kan måle SG


    Sent from my iPhone using Tapatalk
     
  18. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    Jeg kan sikkert lage noen til deg , men må ha litt tid til testing for å se at det fungerer stabilt. Det er fortsatt noen løse tråder jeg må samle sammen (bokstavelig talt) for å få en god løsning.

    SG-måling har jeg ikke forsøkt, men har kjøpt inn noen gyroer og skal teste etterhvert. Er litt skeptisk til hvor nøyaktig det blir, men vi får se.
     
  19. Amarillo

    Amarillo
    Expand Collapse
    Norbrygg-medlem

    Bosted:
    Oppdal
    FrankD liker dette.
  20. Lystad

    Lystad
    Expand Collapse
    Registrert bruker

    Jeg setter meg gjerne på prøvekanin lista i allefall, og kan finansiere evt. byggekostnader og rapportere feil og mangler underveis Får du til en nogen lunde løsning med gyro, så tester jeg gjerne
    Hadde det vert mulig å få en annen ESP til å styre varme/kjøling vha. data fra den i karet?


    Sent from my iPhone using Tapatalk
     

Del denne siden