Forum Sveta kompjutera  

Nazad   Forum Sveta kompjutera > Test Drive > SK LABS

SK LABS Raspberry Pi i drugi SBC (Single-Board Computer), Arduino, hardver, softver, projekti, diskusije...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 21.1.2019, 16:46   #1
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom IoT termostat (Arduino + ESP-01)

Nedavno sam ugradio u sobu jedan panelni (u narodu poznat kao norveški) radijator. I ideja je da ga nekako automatizujem da se uključi kada mi odgovara. (pre buđenja, pre dolaska kući i slično)
Za ovaj konkretan model postoji da se kupi već gotov modul sa termostatom i ugrađenim WiFi-om koji radi baš to ali košta ~60e.

Korišćeni hardver:
Arduino Uno/Nano ~ $3.25/$1.8
ESP-01 ~ $1.7
SG90 ~ $1.1
TS1117b, par otpornika, jedan keramički i jedan elektrolitski kondenzator ~ 100 din

Ideja je da se podigne http server na arduino koji komunicira sa ruterom preko WiFi modula i da se na websajtu zadaje pozicija, tj temperatura na koju će servo da odvrne potenciometar temperature termostata na radijatoru.

Izgled termostata:


Za komunikaciju arduina sa esp korišćena je biblioteka AltSoftSerial koja koristi pin 8 za tx i pin 9 za rx.

Za rad sa servom je korišćen ServoTimer2 da ne bi došlo do konflikta sa AltSoftSerial kao što bi bilo da je korišćena obična Servo biblioteka.
Jedino je potrebna mala modifikacija unutar ServoTimer2.h. Iz nekog razloga su min i max pozicije takve da servo koji inače ide do 180 stepeni ograničen na oko 140 stepeni. Zato sam min i max konstante promenio na 544 i 2400.

Povezivanje je jednostavno. Za esp sam već naveo a servo je dovoljno ubosti u bilo koji pwm digitalni pin.
Ni servo ni esp ne treba napajati preko arduina, zato što mogu da povuku više struje nego što arduino može da da. Servo napajati direktno na 5v, a esp preko stabilizatora napona tc1117b na 3.3v.

Bilo bi ispravno da se za vezu arduino -> esp koristi otpornički razdelnik napona sa 5v na 3.3v, ali ja nisam imao problema sa direktnom vezom.

U sledećoj poruci ću da ubacim kod i da iskomentarišem bitnije delove.
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Luka Filipovic na korisnoj poruci:
Dekip (22.1.2019)
Stara 22.1.2019, 1:02   #2
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: peugeot 607
Poruke: 3.066
Zahvalnice: 691
Zahvaljeno 943 puta na 515 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Nano $1,8 + esp01 $1,7 > nodemcu $2,5


Baš me interesuje šta si napravio. I drago mi je da se neko setio da postavi ovde svoj projekat. Forum Sveta Kompjutera ispade najgori što se tiče ove tematike, od sve dece. Neki noname forumi kod nas imaju višestruko više postova o mikrokontrolerima i SBC od foruma naj-naj časopisa u zemlji.


Daj da vidimo šta si napravio.
Dekip je offline   Odgovor sa citatom ove poruke
Stara 22.1.2019, 3:46   #3
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Za nodemcu sam kasno shvatio da sam mogao dosta lakse, a i jeftinije sa njim da odradim ovo.
Isto tako sam mogao da koristim biblioteku <ESP8266WiFi.h> i da olaksam sebi zivot, ali sam vec poceo ovako i morao sam da ga izguram do kraja.



Kod:
#include <string.h>
#include <EEPROM.h>
#include <AltSoftSerial.h>
#include <avr/pgmspace.h>
#include <ServoTimer2.h>
EEPROM.h je tu da bih poziciju serva mogao da sacuvam u stalnu memoriju. U slucaju neocekivanog restarta, servo se vraca na prethodnu poziciju.
avr/pgmspace.h omogucava snimanje nekih promenljivih u flash memoriju arduina sto oslobadja prostor za radnu memoriju prilikom koriscenja brda teksa. u ovom slucaju html.

Kod:
const char html_0[]  PROGMEM = "Content-Type: text/html\r\nConnection: keep-alive\r\n\r\n";
const char html_1[]  PROGMEM = "<!DOCTYPE html>\r\n<html><head><link rel=\"icon\" href=\"data:,\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">";
const char html_2[]  PROGMEM = "<link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css\" integrity=\"sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm\"";
const char html_3[]  PROGMEM = "crossorigin=\"anonymous\"></head><body><div class=\"container\"><form method=\"post\"><div class=\"form-group\"><label for=\"poz\">Pozicija: <output id =\"pozout\" name=\"points\">";
const char html_4[]  PROGMEM = "</output></label><input type=\"range\" id=\"poz\" class=\"form-control px-0\" name=\"points\" min=\"5\" max=\"28\" oninput=\"pozout.value = poz.value\" value=\"";
const char html_5[]  PROGMEM = "\"></div><div class=\"form-group\"><label for=\"pass\"";
const char html_6[]  PROGMEM = "</label><input type=\"password\" class=\"form-control\" name=\"psw\" id=\"pass\" placeholder=\"Password\"></div>";
const char html_7[]  PROGMEM = "<div class=\"form-check\"><button type=\"submit\" class=\"btn btn-primary\">Podesi</button></div></form></div></body></html>";
const char html_8[]  PROGMEM = " class=\"text-danger\">Bad password, please try again";
const char html_9[]  PROGMEM = " class=\"text-success\">Password good, all set!";
const char html_10[] PROGMEM = ">Enter password";


const char* const string_table[] PROGMEM = {html_0, html_1, html_2, html_3, html_4, html_5, html_6, html_7, html_8, html_9, html_10};
To je veb stranica koja se salje, podeljena u vise stringova.

Kod:
AltSoftSerial espSerial;
char buffer[200];
ServoTimer2 servo;
int address = 0; // za eeprom
int pos;
int temppos;
const char line[] = "-----\r";
const char pass[] = "password";
const int timeconst = 1000;
char reply[20];
char ipAddress [20] = "0.0.0.0";
char mcAddress [20];
char temp[5];
bool havePass;
bool goodPass;
Ovde nema nista konkretno da se napiste, neke promenljive koje su koriscene dalje u kodu.

Kod:
void setup() {
  pos = EEPROM.read(address); // cita se pozicija iz eeprom memorije
  servo.attach(11);
  servo.write(544+80.6956521739*(28-pos)); // linearna transformacija pozicije serva na temperaturu potenciometra

  Serial.begin(38400); //prethodno je esp podesen da radi sa baudrate 38400
  espSerial.begin(38400); //softserial ne dozvoljava baudrate veci od 38400, podrazumevano za esp je 115200
  
  espSerial.print("AT+RST\r\n");
  getReply( 2*timeconst );
  espSerial.print("AT+CWMODE=1\r\n");
  getReply( 3*timeconst );
  espSerial.print("AT+CWJAP=\"SSID\",\"PASSWORD\"\r\n");
  getReply( 10*timeconst );
  espSerial.print("AT+CIFSR\r\n");
  getAdr(ipAddress);
  Serial.println(ipAddress);
  getAdr(mcAddress);
  Serial.println(mcAddress);
  getReply( 1*timeconst );
  espSerial.print("AT+CIPMUX=1\r\n");
  getReply( 1*timeconst );
  espSerial.print("AT+CIPSERVER=1,80\r\n");
  getReply( 1.5*timeconst );
  if (strcmp(ipAddress, "0.0.0.0") ==0) reset();
}
Esp se povezuje na kucnu wifi mrezu kao klijent, ukoliko je ip ostao 0.0.0.0 znaci da konekcija iz nekog razloga nije uspela i poziva se funkcija reset koja pocinje ponovno izvrsavanje celog koda.

Kod:
void loop() {
  if (espSerial.available())
    if (haveText("IPD")) sendHtml();
  delay (100);
}
Jednostavni glavni loop koji samo proverava ima li icega na serijskoj vezi sa ESPom i ako ima da li pronalazi tekst "IPD" koji oznacava da je neki klijent poslao zahtev serveru.
Ako jeste, pokrece se funkcija sendHtml().
memorije.

Poslednja ispravka: Luka Filipovic (22.1.2019 u 4:24)
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 22.1.2019, 3:48   #4
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Kod:
  void sendHtml() {   
  havePass = goodPass = false;  
    if (haveText("points=")) {
      havePass = true;
      haveText("&");
      temppos  = atoi(reply);
      haveText("psw=");
      getReply(20);
      if (strcmp(reply, pass) == 0) {
        goodPass = true;
        pos = temppos; 
        EEPROM.write(address, pos);
        servo.write(544+80.6956521739*(28-pos));
      }
      espSend("HTTP/1.1 201 Created\r\n");
    }
    else espSend("HTTP/1.1 200 OK\r\n");
    getString(0); if (espSend(buffer) == -1) return;
    delay(50);
    getString(1); if (espSend(buffer) == -1) return;
    getString(2); if (espSend(buffer) == -1) return;
    getString(3); if (espSend(buffer) == -1) return;
    itoa( pos, temp, 10); strcpy(buffer, temp); if (espSend(buffer) == -1) return;
    getString(4); if (espSend(buffer) == -1) return;
    itoa( pos, temp, 10); strcpy(buffer, temp); if (espSend(buffer) == -1) return;
    getString(5); if (espSend(buffer) == -1) return;
    if (havePass && !goodPass) { getString(8) ; if (espSend(buffer) == -1) return; }
    if (havePass && goodPass)  { getString(9) ; if (espSend(buffer) == -1) return; }
    if (!havePass)             { getString(10); if (espSend(buffer) == -1) return; }
    getString(6); if (espSend(buffer) == -1) return;
    getString(7); if (espSend(buffer) == -1) return;
    espSerial.print( "AT+CIPCLOSE=0\r\n" );
    getReply( timeconst );
  }
Prvo se proverava da li je klijent uz request poslao i podatke POST metodom.
Za sad postoje samo dva podatka - pozicija i password.
Ukoliko nalazi da je poslata pozicija, smesta je u temppos sve dok ne potvrdi autenticnost passworda. Ukoliko je ispravan, temppos se smesta u pos, pos u eeprom i servo dobija novu poziciju. Ukoliko nije ispravan password, pomocu dve bool promenljive ce se ispisati greska na web stranici.
Posle toga se samo salju paketi htmla uz poneko ubacivanje vrednosti pozicije koja mora da se konveruje u string da bi mogla da se posalje kao html.

Kod:
  void getAdr(char *adr) {
    char c;
    int i = 0;
    haveText("\"");
    long int time = millis();
    while ( ((time + 1000) > millis()))
    {
      while (espSerial.available()) {
        c = espSerial.read();
        if (c == '\"') return;
        adr[i++] = c;
      }
    }
  }
Funkcija za vadjenje IP i mac adrese iz odgovora ESPa prilikom povezivanja na mrezu. Nije neophodno, moglo je i sa getReply ali bez provere ispravnosti ip adrese.
Kod:
 bool haveText(const char *text) {
    char c;
    int i = 0;
    int j = 0;
    long int time = millis();
    while ( ((time + 1000) > millis())) {
      while (espSerial.available()) {
        c = espSerial.read();
        reply[j % 20] = c;
        j++;
        Serial.print(c);
        if (text[i] == c) i++;
        else {
          if (c == text[1]) i = 1;
          else i = 0;
        }
        if (i == strlen(text)) {
          reply[(j - 1) % 20] = 0;
          return true;
        }
      }
    }
    reply[i % 20] = 0;
    return false;
  }
Funkcija koja pronalazi odredjeni string u porukama ESPa, cim ga pronadje vraca true, ako ga nema vraca false. U medjuvremenu cuva poslednjih 20 karaktera poruke u reply stringu.
Kod:
  int getReply(int wait) {
    bool isEnd = false;
    int i = 0;
    long int time = millis();
    while ( ((time + wait) > millis()) && !isEnd)
    {
      while (espSerial.available()) {
        char c = espSerial.read();
        Serial.print(c);
        reply[i % 20] = c; i++;
        if (reply[(i - 5) % 20] == 'E' && reply[(i - 4) % 20] == 'R' && reply[(i - 3) % 20] == 'R' && reply[(i - 2) % 20] == 'O' && reply[(i - 1) % 20] == 'R') return -1;
        if (reply[(i - 4) % 20] == 'F' && reply[(i - 3) % 20] == 'A' && reply[(i - 2) % 20] == 'I' && reply[(i - 1) % 20] == 'L') return -1;
        if (reply[(i - 2) % 20] == 'O' && reply[(i - 1) % 20] == 'K') {
          isEnd = true;
          break;
        }
      }
      reply[i % 20] = 0;
    }
    Serial.println();
    Serial.println(line);
  }
Prima odredjeno vreme za koje iscitava odgovor ESPa, u medjuvremenu cuva poslednjih 20 karaktera u stringu reply i proverava da li je doslo do greske (fail ili error), ili je doslo do kraja odgovora (OK).
Ako je doslo do greske vraca -1.

Kod:
  int espSend(const char *html) {
    int lenHtml;
    char command[20];
    char temp[5];
 
    lenHtml = strlen( html );
    strcpy(command, "AT+CIPSEND=0,");
    itoa( lenHtml, temp, 10);
    strcat(command, temp);
    strcat(command, "\r\n");
    espSerial.print(command);
    if (getReply( timeconst * 10 ) == -1) return -1;
    espSerial.print(html);
    if (getReply( timeconst * 10 ) == -1) return -1;
  }
Salje html klijentu. Prvo mora da utvrdi duzinu paketa, da je konevrtuje u string i nalepi uz komandu za slanje. Potom sledi string htmla.

Kod:
  void getString(int i) {
    strcpy_P(buffer, (char*)pgm_read_word(&(string_table[i])));
  }
Izvlaci html string iz flash memorije i cuva ga u string buffer
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 22.1.2019, 4:00   #5
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Snimak kako to izgleda u praksi https://drive.google.com/open?id=1jo...85k1qVLZorHh2t

Izgled web stranice
Spoiler za pocetna:

Spoiler za los pass:

Spoiler za dobar pass:


Spoiler za kolo:

Spoiler za servo:

Poslednja ispravka: Luka Filipovic (22.1.2019 u 4:49)
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 22.1.2019, 4:23   #6
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Sledeci korak je da napravim plocicu na koju ce da idu esp, senzor, neke led diodice, arduino nano i adapter na 5v. Treba da stigne i senzor za temperaturu i onda da sve to spakujem u kutijicu koja ce da stoji iza radijatora.

Kod nije savrsen, mislim da je bezbednost najveci problem, ali ako primetim da se neko igrao sa temperaturom, najmanji mi je problem da ga iscupam odatle .
Planiram da ubacim i tajmer pomocu koga cu moci da zadam nakon kojeg vremena da odradi nesto sa pozicijom, ali to tek kada budem imao vremena.

Desava se da nece da se konektuje iz prve na sajt vec moram da refreshujem stranicu i onda uvek proradi.

Sajtu mogu da pristupim i van lokalne mreze tako sto kucam ipadresa: port.
Ovo sam omogucio pomocu opcije Port Range Forwarding na modemu. Obavezno stavite neki nestandardni port, jer sa defaulth portom (80) mi se nakacio neki kinez koji ne non stop spamovao sajt nekim requestovima.

Nemam staticku ip adresu ali sbb drzi jednu istu duze vreme tako da to nije problem
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 23.1.2019, 21:03   #7
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: peugeot 607
Poruke: 3.066
Zahvalnice: 691
Zahvaljeno 943 puta na 515 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Ja bih ovo rešio sa NodeMCU + Blynk app


Imaš oblake i baš te zabole za web. A možeš i da izvučeš widget na telefonu samo za to.


U svakom slučaju ako treba pomoć...
Dekip je offline   Odgovor sa citatom ove poruke
Stara 31.1.2019, 11:44   #8
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Citat:
Dekip kaže: Pregled poruke
Ja bih ovo rešio sa NodeMCU + Blynk app


Imaš oblake i baš te zabole za web. A možeš i da izvučeš widget na telefonu samo za to.


U svakom slučaju ako treba pomoć...
Palo mi je na pamet da koristim Blynk, ali sam hteo nesto nezavisno da probam da ostvarim. Nece mi biti problem da vec postojecu konfiguraciju prebacim na takav model, u slucaju da pocnu kinezi da se igraju sa temperaturom.
Ovo trenutno mi daje mogucnost da pristupim sa bilo kakvog uredjaja, dok me blynk ogranicava na aplikaciju.
Mozda ako budem realizovao jos nesto po kuci na slican nacin pa bih onda presao na blynk gde bih sve to objedinio.

Spoiler za slika:

Stigli su kutijica od $2 i nano. Kutijica je jako kvalitetna i super za slicne projekte.
Ostalo mi je samo da napravim plocicu na kojoj ce da bude ESP sa stabilizatorom napona i otpornicima za diode, ali to ce morati da saceka da prodje ispitni rok.
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 31.1.2019, 20:03   #9
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: peugeot 607
Poruke: 3.066
Zahvalnice: 691
Zahvaljeno 943 puta na 515 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

He-he


Razmišljamo na isti način.


Dekip je offline   Odgovor sa citatom ove poruke
Stara 31.1.2019, 23:21   #10
igor7
Član
 
Član od: 24.9.2012.
Poruke: 376
Zahvalnice: 81
Zahvaljeno 199 puta na 114 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Svaka cast, Luka, samo napred!


Jeste da je kod, koliko vidim, malo nezgrapan i da se to moglo elegantnije napisati ali to ce da nadodje sa vremenom. Mozes li postaviti link na ovo plasticno kuciste? Nisam imao priliku da vidim model sa prekidacem.
igor7 je offline   Odgovor sa citatom ove poruke
Stara 31.1.2019, 23:56   #11
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Ista kao dekipova samo sto sam prekidac i diode ja ugradio.
Kod jeste veoma ruzan i nabudzen samo da radi. Da sam se opredelio na biblioteku esp8266wifi ovo bi bilo daleko jednostavnije. Ali zasto jednostavno kad moze komplikovano?
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 1.2.2019, 11:49   #12
igor7
Član
 
Član od: 24.9.2012.
Poruke: 376
Zahvalnice: 81
Zahvaljeno 199 puta na 114 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

ma vidim da su mi nesto vrlo slicne ali rekoh, ko zna Kinezima...
igor7 je offline   Odgovor sa citatom ove poruke
Stara 1.2.2019, 19:11   #13
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: peugeot 607
Poruke: 3.066
Zahvalnice: 691
Zahvaljeno 943 puta na 515 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Zapravo, ove kutije nisu baš jeftine. Ti kod nas po radnjama možeš naći i veće OG dozne za iste prare. Bez providnog poklopca, doduše. I ne čekaš meec dana.
Dekip je offline   Odgovor sa citatom ove poruke
Stara 1.2.2019, 19:58   #14
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Pa dobro, ali nije vece uvek bolje .

U silkenu za slicne pare imaju vece plastice kutije ali dosta tanje i losijeg kvaliteta + nema providne strane.
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 14.2.2019, 16:08   #15
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)


Zavrsena je plocica
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Sledećih 2 korisnika se zahvaljuje korisniku Luka Filipovic na korisnoj poruci:
Dekip (14.2.2019), igor7 (14.2.2019)
Stara 14.2.2019, 16:50   #16
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: peugeot 607
Poruke: 3.066
Zahvalnice: 691
Zahvaljeno 943 puta na 515 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Flomaster i sona kiselina?
Dekip je offline   Odgovor sa citatom ove poruke
Stara 14.2.2019, 16:52   #17
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Laserski stampac, masni transfer papir i natrijum persulfat iz kelca jer hidrogen 30% ne mogu nigde da nadjem.

Ume to da ispadne dosta lepse nego na ovom sad, ovde sam ga malo zbrzao
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Stara 14.2.2019, 17:31   #18
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: peugeot 607
Poruke: 3.066
Zahvalnice: 691
Zahvaljeno 943 puta na 515 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Čekamo krajnji rezultat.
Dekip je offline   Odgovor sa citatom ove poruke
Stara 14.2.2019, 22:58   #19
igor7
Član
 
Član od: 24.9.2012.
Poruke: 376
Zahvalnice: 81
Zahvaljeno 199 puta na 114 poruka
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Citat:
Luka Filipovic kaže: Pregled poruke
Laserski stampac, masni transfer papir i natrijum persulfat iz kelca jer hidrogen 30% ne mogu nigde da nadjem.

Ume to da ispadne dosta lepse nego na ovom sad, ovde sam ga malo zbrzao

nesto ovako?
https://www.youtube.com/watch?v=cVhSCEPINpM
igor7 je offline   Odgovor sa citatom ove poruke
Stara 14.2.2019, 23:49   #20
Luka Filipovic
Starosedelac
 
Član od: 9.7.2010.
Lokacija: N/A
Poruke: 1.743
Zahvalnice: 726
Zahvaljeno 511 puta na 352 poruka
Slanje poruke preko Skypea korisniku Luka Filipovic
Određen forumom Re: IoT termostat (Arduino + ESP-01)

Citat:
igor7 kaže: Pregled poruke
Ja sam peglom preneo stampu na plocicu, ali sledeci put cu da probam ovako, deluje jednostavnije.
Sa peglom ne sme da se pretera, jer se papir zalepi za plocicu i tesko se skida a da se ne osteti stampa, a ako se prerano zavrsi onda se ne prenese lepo.
Imao sam i problem sa nekim pertinaks plocicama da ne podnesu toplotu pa dodje do nekih deformacija, dok sa vitroplast nikad nisam imao problem
Luka Filipovic je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi

Alatke vezane za temu
Vrste prikaza

Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Arduino mega 2560 i Win 7 64 bit miloš1968 SK LABS 31 27.1.2019 15:09
Arduino kontrola rotacije JUGA_v SK LABS 11 23.8.2017 10:54
DHT22, 1602 LCD i Arduino UNO Dekip SK LABS 23 11.8.2017 14:43
Arduino - Generalna diskusija Dekip SK LABS 19 28.6.2017 23:42
pomoc oko izbora: Raspberry pi ili ARDUINO Zmajodkaraburme Šta da kupim? 2 4.2.2017 10:30


Sva vremena su po Griniču +2 h. Sada je 16:38.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2019, vBulletin Solutions, Inc.
Hosted by Beograd.com