Se afișează postările cu eticheta W5100. Afișați toate postările
Se afișează postările cu eticheta W5100. Afișați toate postările

luni, 11 decembrie 2017

Prezentare, stocare date si executare comenzi de pe pagina Cayenne (2)

Nota: sunt schimbari in protocolul de transmitere (acum serverulul Cayenne foloseste MQTT) asa ca vedeti si noul articol !

   In articolul anterior, am folosit o placa NodeMCU, prin conectare Wi-Fi la retea, acum o sa folosesc o placa Arduino Uno conectata la reteaua locala prin shield W5100.
   Pentru asta trebuie sa ma conectez de pe calculator la pagina Cayenne, cu user si parola.
Aleg o noua placa de dezvoltare Uno cu placa de retea clasica (Ethernet W5100):
   Daca apas pe butonul SKETCH mi se deschide o fereastra cu datele necesare de incarcat in Arduino pentru a comunic ape canalul nou creat.
   Copiez textul in programul Arduino IDE
incarc programul 0.inosi urmaresc pe ecranul de monitorizare seriala daca e totul in regula
 
   Pentru a identifica usor canalul, deoarece sunt si unele inactive, ii schimb numele, in ce am de gand sa fac:
si voi vedea deja canalul cu numele schimbat
   Deoarece nu-s foarte familiarizat cu acest site, am facut cum mi s-a parut mie ca e ok, alegand o cale mai lunga, dar care stiu c afunctioneaza.
   Aleg sa fac o feastra de indicare (WIDGET) si cum nu am gasit pentru senzorul DHT22 (AM2302), am ales unul senzor general, dupa care o sa modific parametrii sa fie in regula.
si apas ADD SENSOR, aparand pe canal o zona de indicare
care are urmatorii parametrii acum
   Dupa ce mi-am dat seama ca nu e la fel cu ce prezentasem in articolul anterior la placa NodeMCU, am adaugat un senzor inclus de server, pentru a vedea cum se pun informatii, asa ca ma ales sa pun un senzor analog de temperatura TMP36
Am ales sa vad sketch-ul
si am completat in sketch-ul meu ce nu era. si am vazut ce imi trebuie sa folosesc informatiile pentru senzor DHT22 (AM2302), asa ca am incarcat sketch-ul modificat 1a.ino, care e cel de baza cu datele senzorului meu.
   Am apasat butonul sa apara fereastra de indicare
Apoi am adaugat si un alt senzor,
pe pagina punand si indicatia de la umiditate:
   Intru la ferestra in setari pentru a schimba numele lor:
si sterg fereastra de la TMP36
si astfel, am un canal curat
   Deoarece pentru a realiza un termostat am nevoie de un releu, adaug asa ceva
si pun si partea de buton in sketch, acesta devenind 1b.ino
  Pe acran am acum am indicatiile de temperatura si umiditate plus butonul de comanda releu (led).
   Partea de comanda a releului (ledului) este configurata asa
   Acum pod da comenzi de aprindere si stingere led
   Am facut si un filmulet in care se prezinta canalaul si cum pot fi modificate indicatiile daca se incarca programul (sketch-ul) Cayenne_Uno_W5100_DHT22_button.ino.
   Senzorul de umiditate is tenmeoratura AM2302 (DHT22) este conectat la pinul A0 (D14), iar ledul la D2.
   Pe telefon, functie de sistemul de operare, putem avea indicatii de genul:
- Android

- iOS (pe IPhone, iPad)

Nota: Reactiile (actualizarea datelor) pot fi mult mai lente pe telefoane... uneori trebuind inchisa si redeschisa aplicatia...

PS: am facut si 2 filmulete cu mici comentarii:
- Arduino Uno cu Ethernet shield trimite date pe canal Cayenne si controleaza un led
- Arduino Uno & Ethernet shield send data to Cayenne channel and control external led

luni, 4 decembrie 2017

Placa de retea cu W5100 cu probleme

   Am incercat zilele trecute sa conectez o placa Arduino Uno cu un shield de retea cu W5100 si nu se conecta in retea. Initial am banuit cablul de retea folosit, pentru ca stiam ca era functional, dar era in alta retea... asa ca mi-am adus aminte ca de problema asta se lovise si GeoMar, in reteaua lui nu mergea, la a mea mergea, fara probleme. Totul porneste de o retea de 4 rezistente SMD de 51 ohmi (inscriptionate 510), care a fost inlocuita cu una inscriptionata 511 (adica 510 ohmi), dupa cum se vede in articolul The W5100 bug(s) – and how to fix it (them).
   Problema mentionata acolo are solutia in sursa in https://forum.arduino.cc/index.php?topic=351477.30 prin montarea a 2 rezistente de 100 ohmi intre pinii 1-2, respectiv 3-6 ai mufei de retea:
   Am realizat si eu modificarea, cu 2 rezistente de 100 ohmi, cam mari pentru ce imi trebuia mie, dar am zis sa testez. A mers din prima...

miercuri, 4 noiembrie 2015

Termostat controlat de pe o pagina web (2)

   Fata de articolul anterior, in care am folosit o placa Arduino Mega si o placa de retea de tip shield cu W5100, care creeea pagina de fiecare data, acum folosesc stilul Ajax, adica pagina web este statica si se schimba periodic sau la cerere parti din pagina, astfel placa de retea este putin utilizata si apar cazuri de "blocare" mai rar sau.. deloc...
   Schema folosita este aceeasi:
doar ca pagina, respectiv fisierul index.html este memorat pe cardul micro SD, deci folosesc incriptorul de pe placa de retea, cum este prezentat in articolul SD Card Web Server I/O, care avea o interfata de genul:
  Eu am incercat sa folosesc stilul anterior:
iesindu-mi:
apoi, am mai lucrat la pagina, care reseteaza din ora in ora placa Arduino si placa de retea (prin legarea pinului D7 la pinul RESET); pagina este asa: 
   Schema cu legarea pinului D7 la RESET:
   Am pus pe canalul de github, cele 2 versiuni in directorul webthermostat_ajax...
   Am facut si un filmulet, numit web termostat cu Ajax si Arduino

marți, 6 octombrie 2015

Termostat controlat de pe o pagina web

   Fata de termostatele clasice, de data asta folosesc o placa Arduino Mega si o placa de retea cu W5100 tip "shield" pentru a avea un "webthermostat"... 
   Am incercat variante cu grafica frumoasa, dar am revenit la afisare clasica cu pagina html, in care am comandat un LED (care poate comanda o placa cu releu, care la randul lui comanda o centrala sau un calorifer, dar se poate adapta si la un sistem de racire).
   Cazurile sunt:
- led stins manual
- led aprins manual
- led aprind automat (cand temperatura e mai scazuta decat cea setata)
- led stins automat (cand temperatura e mare decat cea setata)
   Pentru a avea mica animatie, cand se trece cu mouse-le peste "butoane", am schimnat culoare textului.
   Schema de conectare este simpla:
   In teste, nu am pus rezistenta de 4k7, dar pentru functonare indelungata e bine sa fie montata.
   Am facut un filmulet, cu o versiune mai veche de sketch 
apoi cu ultima versiune de schech, am facut 2 filmulete:
   Eu am alocat IP-ul in reteaua mea ca 19.168.2.199, iar portul este 8081, pentru a-l putea "scoate in lume"...
  Am folosit un serviciu al providerului de net, unde mi-am alocat un nume de domeniu virtual (dns dinamic) si anume tehniq.go.ro,
asa ca in sketch am pus:
pentru reimprospatare pagina (refresh), respectiv pentru apasarea butoanele:
  Daca se foloseste doar intr-o retea locala se pune adresa alocata peste tot..