DIY: WeMos D1 - esp8266 på steroider... og enkel Blynk integrasjon

Er det mulig å bruke denne til både logging og temperaturkontroll med ssr?
Jeg ser ingen grunn til at det ikke skal la seg gjøre. Den har alt som trengs, det er kun programmering det står på. Om noen her mestrer kunsten så stiller jeg gjerne opp som betatester :)

Sent from my SGP321 using Tapatalk
 
Koden som jeg har laget til min Templogger (http://templogg.no) kjører uten endring på denne enheten.
I post 29 testet jeg styring av SSR.
Har ikke testet dette samtidig, men det er ingen grunn til at det ikke skal la seg gjøre på en enkel måte.
 
Har kodet litt Arduino før, så skal vel få det til med litt knoting. Bestilte wemos, tempsensor, 4k7 resistorer og ssr i dag. Gleder meg til å teste.

Har en stc1000 der releet for heat henger seg opp, så jeg er klar for solid state. Hadde vært fint med en templogger i tillegg.

Har ikke sett på hvordan Blynk fungerer enda, men kanskje man kunne ha brukt det til å styre enheten fra mobilen. Og legge inn gjæringstemp-profiler?
 
Jeg laget meg en bryggekontroller til min BB60 for et par år siden, bruker den nå på min BB30. Den har fungert dønn stabilt gjennom mange brygg nå, men etter å ha fått litt inspirasjon fra denne tråden så ble jeg sittende i går kveld for å se på muligheten for ESP8266 integrasjon på den for å kunne kjøre online logging. Hvis min google-fu-copy-paste-koding er god nok så kanskje man kunne klart å laget et online brukerinterface også for å sette PID parametre og overvåke prosessen sanntid. Event. lage en Blynk interface.

Jeg laget en "How To" i sin tid for kontrollern så om noen kan ha glede av det så linker jeg den inn her: https://plus.google.com/+OddvarSNæss/posts/NYtDiXDsKn2
 
Har nå testa denne tempsensoren over en ukes tid, og den har vært dønn stabil og levert så det holder! Meget nice. MEN - hvordan legge til nye sensorer, hvis jeg f.eks. vil bruke to sensorer på samme Wemos-kort, f.eks. en i rommet og en på gjæringskaret?
 
Det er det jeg har gjort, men det dukker ikke opp noe ny graf på thingspeak...
 
De må sendes som to strenger i koden. Leste den forrige post litt fort, og tenkte kobling...
Uten å kjenne koden din, kan jeg ikke hjelpe
 
Kjører koden til Miles Burton og deg:
---
/*
Created by Miles Burton
Created by Morten G. Sevland - Bjørnheim Bryggeri - Website: sevland.no
External libraries: https://github.com/milesburton/Arduino-Temperature-Control-Library
*/
#include <ESP8266WiFi.h>
#include <OneWire.h>
#include <DallasTemperature.h>

// ****** WiFi settings / AP definitions
#define AP_SSID " - - - "
#define AP_PASSWORD " - - - "

// Cloud definitions / Thingspeak API key ******
String apiKey = " - - - "; // Insert your Write API Key from ThingSpeak.com

#define REPORT_INTERVAL 60 // in sec
#define ThingSpeak_CLOUD_PORT 80
const char* ThingSpeak_CLOUD_ADDRESS = "api.thingspeak.com";

// ****** DS18B20 and Temperature settings ******
#define ONE_WIRE_BUS 2 // DS18B20 pin to GPIO2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature DS18B20_Sensors(&oneWire);

void setup() {

Serial.begin(115200);
DS18B20_Sensors.begin(); // Start up the sensors library
wifiConnect();
}

void loop() {

WiFiClient client;
DS18B20_Sensors.requestTemperatures();
delay(100);
float temp;
temp = DS18B20_Sensors.getTempCByIndex(0);

// First check if connected, then send sensordata for the right number of devices
if (client.connect(ThingSpeak_CLOUD_ADDRESS,ThingSpeak_CLOUD_PORT)) {
String postStr = apiKey;
postStr +="&field1=";
postStr += String(temp);
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);

Serial.println("");
Serial.print("Temp: ");
Serial.println(temp);
Serial.print("Send to Thingspeak");
}

client.stop();

// *********** Countdown *************
int cnt = (REPORT_INTERVAL);
while(cnt--)
delay(100);
}

void wifiConnect()
{
Serial.print("Connecting to AP");
WiFi.begin(AP_SSID, AP_PASSWORD);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
}
---
(EDIT: fjerna SSID, passord og Thingspeak API-key, hehe)
 
Sist redigert:
Ah, er det det sånn som kalles Code Ninja?
Edit: her forsvant poenget etter endring av forrige melding
 
Sist redigert:
Hehe. Aner ikke hva det er kalt. I min erfaring med Arduino, så flyr kode fram og tilbake med copy/paste. Den originale koden jeg hadde tenkt å lage logger av er vel "Noel Portugal" sin tror jeg, og stammer herfra: http://www.instructables.com/id/ESP8266-Wifi-Temperature-Logger/. Begynte å titte på det for et års tid siden, eller noe, men kom liksom aldri lenger enn å bestille en masse shit fra eBay, hehe. Det krasjet med andre oppdateringer i bryggeriet osv. Så nå sitter jeg her med den koden jeg kopierte inn over her...
 
Første temp sensor er
DS18B20_Sensors.getTempCByIndex(0);
Andre er da
DS18B20_Sensors.getTempCByIndex(1);
 
Jeg måtte faktisk til med logic level shifter for å få noe brukbar temp fra min ds18b20.. Uten logic level shifter fikk jeg bare -127c som visstnok er en kode som tilsier at sensoren ikke er korrekt koplet til :/
Fikk du dette til uten en sånn shifter, @msevland? Lurer på om dette også er grunnen til at min WeMos ikke ville styre relèmodulen jeg har :p
 
Mange takk for denne tråden som har gjort meg oppmerksom på disse mulighetene.
Jeg har nå anskaffet Wemos, DS18B20 elementer og SSR releer for å lage temperaturlogging og kontroll for et par kjøleskap som jeg bruker til gjæringsskap. Jeg satte opplegget først sammen på stua og fikk alt opp å stå. Jeg lagde kommunikasjon mot Blynk og Thingsspeak, og alt så ut til å funke. Jeg koblet strømforsyningen til DS18B20 elementene til 3,3V på Wemos'en. Det fungerte flott med 3 temperaturfølere (jeg skal ha flere), og det er vel litt tryggere enn å koble den på 5V slik jeg ser Sevland har gjort på første side i denne tråden.
Led'en på SSR releene tente når de skulle, og alt så flott ut.
I kveld satte jeg sammen opplegget nede i bryggeriet mitt for å sette det i produksjon.
Alt så bra ut like til jeg oppdaget at kjøleskapene ikke startet selv om SSR'ene lyste rødt.
Det ser ut for at de 3,3 V som Wemos'en sender til SSR releene er nok til å få led'en til å lyse, men ikke nok til å få strøm gjennom releet. Er det andre som har samme erfaring?
 
Jeg har koblet til 3 SSR releer. To av dem er akkurat like releet Sevland tester på forrige side i denne tråden. Det siste er samme type, men 40 A. Alle tenner led'en nå de får strøm, men ser ikke ut til å gi kontakt.
I følge datasheet for ESP8266 har utgangene minimum 0.8xVIO når de er på. Dvs 0.8x3.3V=2.64V. Imax er 12mA pr utgang. SSRene skal ha minimum 2.4V/7.5mA for å gå på. Burde holde. Kan du måle?
 
Tilbake
Topp