Se afișează postările sortate după relevanță pentru interogarea mihai. Sortați după dată Afișați toate postările
Se afișează postările sortate după relevanță pentru interogarea mihai. Sortați după dată Afișați toate postările

sâmbătă, 28 martie 2020

Termometru cu banda de leduri adresabile

   Un nou proiect l-am realizat astazi, impreuna cu Mihai Brindusoiu, dupa cum zice si titlul, este un termometru cu indicatie cu banda de leduri adresabile (WS2812).
   Mihai are o banda cu 31 leduri, asa ca am realizat un termometru de camera pentru temperaturi de la +10..+400C. Ulterior, vom face unu cu 60 leduri pentru temperaturi de -10..+500C sau -15..+450C.
   Senzorul de temperatura este un DS18B20 pus pe rezolutia de 9 biti pentru a reduce timpul de achizitie si a nu se observa intreruperea fluxului luminos.
   Am testat acum ceva timp partea cu Benzi de leduri multicolore cu control independent pentru fiecare led
    Deoarece sunt multe leduri, banda trebuie alimentata din sursa separata de 5V si minim 2A, nu din USB, cum prezentasem in articolul mentionat mai sus
   Schema de conectare este simpla, avem senzorul DS18B20 la pinul D4, iar banda la D5.
   In program (WS2812_thermometer0.ino), am ales ca banda sa se aprinda progresiv, cate un led pentru un grad Celsius, impunand culorile:
- albastru pana la +100C
- alb la +150C
- bleo la +200C
- verde la la +250C
- galben la +300C
- rosu la +350C
- mov de la +400C
intre aceste praguri, culoarea se calculeaza, fiind una intermediara intre cele 2 limite.
   Mihai mi-a trimis cateva poze la diferite temperaturi, din care am selectat cateva:
- la +230C
- la +260C
- la +280C
- la +390C
   Mihai a facut si un filmulet, cu o versiune ce avea un mic bug la culoarea ce depasea temperatura maxima, dar in mare se vede functionarea:

29.03.2020
   Mihai a dorit alte culori si fara trecere progresiva intre culori, asa ca am modificat programul, acesta devenind WS2812_thermometer1.ino avand culorile:
- alb pana la +200C
- albastru de la +200C pana la +250C
- verde de la +250C pana la +300C
- rosu peste +300C.
   Deoarece Mihai a testat mai mult timp, a constatat ca noaptea e deranjanta intensitatea luminoasa, asa ca am adaugat un divizor rezistiv format dintr-o fotorezistenta si o rezistenta de 10k.
    In mare, la program, am adaugat in parte de definire
si in programul principal
   
inante de comanda culorilor
   Programul pentru versiunea mea este WS2812_LDR_thermometer0.ino, iar pentru versiunea de culori aleasa de Mihai este WS2812_LDR_thermometer1.ino.

luni, 8 iulie 2019

Comunicatie radio (LoRa) intre 2 unitati si prezentare date pe server ThingSpeak (partea 1)

    Pornind de la o solicitarea a prietenului meu, Mihai Brindusoiu, de a transmite niste date de la distanta mare, unde nu exista internet, de exemplu, pe un server IoT, de exemplu ThingSpeak, am cautat impreuna informatii.
    Mihai a achizitionat module LoRa, care, in teorite, cel putin, pot comunica e distanta de kilometri sau zeci de kilometri.
    Pentru inceput am folosit informatiile din articolul Interfacing SX1278 (Ra-02) LoRa Module with Arduino deoarece aceste module au fost achizitionate (SX1278). Se foloseste libraria LoRa,
conectarea fiind foarte simpla pentru teste, fiind similara pentru emitator si receptor, desi nu pare:
- emitator, Arduino Uno si alimentare modul LoRa din el

- receptor, Arduino nano, cu alimentare separata a modulului LoRa:

   Incarcand progamioarele de test ale librarie, vom obtine
 
    Daca se obtin valori similare celor din ultima imagine a unei ferestre de monitorizare seriala, inseamna ca putem trece la pasul urmator, ce ne doream de fapt.
   Pentru a intelege mai bine, vizionati filmuletul comunicatie radio (LoRa) intre 2 unitati si prezentare date pe server ThingSpeak

   Schema sistemului de emisie, contine 3 senzori: unul de temperatura (DS18B20), unul de nivel si unul de vibratie:
    Partea de receptie contine un modul LoRa, o placa de dezvoltare Arduino Nano si  una Wemos D1 Mini pentru comunicare Wi-Fi catre serverul ThingSpeak.
     Cateva poze realizate de Mihai, din timpul testelor, pe circuit provizoriu

   Mihai a realizat cablajele pentru schemele prezentate mai sus
- emitator
- receptor
- ambele
    Le-a echipat pentru teste:
si le-a montat in cutii, pentru o folosire practica

    Continuarea, cu partea de programe si un mic rezumat, se gaseste in partea a 2-a !

miercuri, 25 septembrie 2019

Volmetru 0-5Vcc cu 16 canale

    Placa de dezvoltare Arduino Mega are 16 canale analogice A0..A15, aca sa ce poate face un volmetru de curent continuu pentru maxim 5V, fara  a introduce componente externe.
    Cel mai simplu este volmetru cu afisare date pe serial, care sa folosesca programul v16_Serial.ino, iar daca se pune un afisaj alfanumeric de tip LCD2004 (20 coloane si 4 randuri), se foloseste programul v16_LCD2004.ino., iar conectarea afisajului se face simplu, ca in articolul "Hello World!", doar c ala placa Arduino Mega.
    Mihai Brandusoiu, care a venit cu ideea acestui voltmetru, are un afisaj grafic de 3,2" de tip shiled cu rezolutia 340x320 pixeli ce are driver HX8357, ce se poate achizitiona de la Ardushop.
    Se poate folosi libraria lui Bodmer, TFT_HX8357 si programul scris de mine, care nu e bine aranjat, v16_HX8357.ino,
sau cel scris de Vlad Gheorghe, v16-2f-002.ino, ce s-a inspirat din filmuletul (si materialele din descrierea lui) numit 4CH Arduino Analog Voltmeter (Nokia 5110)
obtinand
care are afisarea prezentata in filmuletul facut de Mihai
30.9.2019
    Mihai mi-a trimis poze cu sistemul de incarcare a 16 baterii, ce au minusul comun:
   Deoarece prezinta interes, voi prezenta si un sistem de masura pentru baterii inseriate... curand, sper 😋