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

sâmbătă, 19 octombrie 2019

Miliohmetru cu arduino

Fiind nevoit să verific și să sortez niște rezistențe sub 1 Ohm, am realizat un miliohmetru  bazat pe arduino ca afișare și LM317 ca generator de curent constant. Sursa de inspirație este aici: cu schema de mai jos:
Eu am alimentat cu 5V în loc de 9V .
Cea mai mare provocare a fost reglarea curentului fix la 100mA, pentru că nu am gasit disponibil un multitură de 50-100Ohm.
Pentru afișare am folosit informațiile din articolul anterior.
Reglajul curentului la 100mA:

Valoarea rezistenței este afișată în mOhm.
U2 este tensiunea de la intrarea lui LM317.

Codul este pe github.

sâmbătă, 28 septembrie 2019

Voltmetru dual cu AD7705 pe OLED I2C

Am testat funcționarea pe arduino nano a unui modul convertor analog digital  pe 16 biți cu AD7705 cu interfață SPI ca cel din poza de mai jos:


Modul de conectare la arduino se găsește aici, către finalul fișierului: https://github.com/kerrydwong/AD770X/blob/master/AD770X.h  :

pinMOSI = 11; //MOSI
MISO = 12; //MISO
SPIClock = 13; //SCK
CS = 10; //CS
RST=RST arduino

După ce am verificat (pe serial monitor) exemplul din lib, am conectat un OLED I2C 128x32, am pus V- (de la modulul CAN) la GND și am aplicat tensiune pe ambele V+ dintr-o sursă dublă cu reglaj independent, a ieșit ca mai jos:
 Aici se poate vedea valoarea sursei de semnal ce am aplicat-o pe cele două intrări V+:
Precizia si liniaritatea (pe o plajă de 0-1,5V) par să fie destul de bune, cel puțin comparativ cu aparatul de măsură folosit.
Codul testat este pe github.

Update 25-apr-2022

L-am adaptat pentru afișare tensiune și curent.
Tensiunea măsurată

Și curentul măsurat:




marți, 25 decembrie 2018

DDS cu Attiny85

Zilele trecute, cautind un generator sinusoidal la 50Hz cit mai simplu si stabil, am dat de articolul de aici cu update aici. Parea sa fie ceea ce cautam si i-am facut un test rapid. Omul prezinta un generator de functii in gama 1Hz- 5KHz cu reglajul frecventei din encoder. Formele de unda se aleg printr-o apasare scurta.
Schema preluata mai jos este foarte simpla:
Atentie la pinii lui Attiny85:

La iesire eu am folosit rezistente de 3K3 in locul celor de 4K7, si condensatori de 1nF in locul celor de 4,7nF
Terminalele encoderul traduse pentru encoderul meu arata astfel:

x = GND
Y = SW
C = +5V
A = DT
B = CLK (inversarea lui A cu B afecteaza doar sensul)

Codul pentru varianta finala in care exista si semnalul sinusoidal este aici. Eu nu am facut decit sa dau copy/paste si apoi sa incarc codul in ATTINY85. Initial am pus pe pe Attiny85 bootloaderul cu clock intern 8MHz.

A iesit ca mai jos:
Frecventa si forma de unda implicita se seteaza ca mai jos:
void setup() {
  Wire.begin();
  // Is it a power-on reset?
  if (MCUSR & 1) {
    Wave = 0; Freq = 100;     // Start with 100Hz Sine

Eu am ales sa porneasca cu 50Hz pentru ca voi renunta la encoder si oled. Urmeaza sa fie adaptat intr-un invertor sinusoidal caruia i-a explodat circuitul original. Partea de defazare este pe placa invertorului si este functionala, fiind anterior testata cu semnal de pe un generatorul de mai jos:

Update 28-IUL-2019
Semnale in antifaza obtinute cu ajutorul a trei inversoare (3/4 MMC4011)



duminică, 7 ianuarie 2018

Modificare sursa ATX pentru incarcare acumulatori auto

Am modificat o sursa ATX ceva mai serioasa ce foloseste la comanda circuitul 2005B, cu scopul de a o transforma in incarcator auto. Google m-a ajutat sa gasesc data sheet-ul circuitului si de aici a fost relativ simplu.
Initial am masurat tensiunile de pe pinii 3, 4 si 5.
Am folosit o placuta de test pe care am lipit 2 potentiometri multitur la care capetele le-am legat intre masa si +5V de pe firul violet (aceasta tensiune este permanenta pe sursa), dupa care am reglat 3,3V si respectiv 4V.
Pe cablajul sursei am sectionat traseele de la pinii 3, 4, 5 si am legat +5V de la firul violet la pinul4, apoi 3,3V la pinul 3 si 4V la pinul 5, in felul acesta am pacalit sursa ca are toate tensiunile corespunzatoare.
Am scos condensatorul de 2200/16 de pe bara de 12V fir galben si l-am pus in locul celui de pe bara de 5V fir rosu, iar pe bara de 12V am pus un condensator de 2200/25V. In rest nu am modificat nimic.
Pinul 2 al lui 2005B este responsabil cu reglajul tensiunilor de iesire. Dupa ce am identificat rezistoarele de placa  corespunzatoare divizorului de pe pinul 2 am constatat ca suma rezistentelor este de cca 10K, asa ca am luat un potentiometru de 50K la care mijlocul l-am dus la pin 2 un capat la masa si un capat la firul rosu +5V, Am inceput sa testez sa vad intre ce limite se poate regla tensiunea de iesire, si a rezultat o variatie stabila intre 9 si 19V. Astfel pe capatul legat la 5V am inseriat un rezistor de 5,6K, iar pe capatul de la masa 2,2K. Rezistentele din divizorul original nu au fost scoate afara, potentiometrul venind suprapus peste acestea.
Protectia la scurtcircuit o face pinul 6,  caz in care la disparitia tensiunilor blocheaza oscilatiile de pe tranzistorii de putere.
Initial am testat incarcarea unei baterii auto cu un indicator tensiune/curent cu 7 segmente chinezesc, care a cedat foarte repede. Asa ca am facut indicatorul cu arduino si un oled I2C cu rezolutia de 128/32, caruia ulterior i-am adaugat si functia de deconectare automata .
In paralel cu contactul NO al releului am mai pus un push buton care apasat porneste sursa si se regleaza tensiunea de iesire/incarcare la 13,9V, la eliberarea butonului sursa intra pe standby., insa arduino ramine alimentat.
Acum se poate cupla bateria, arduino va detecta tensiunea acesteia, si daca este mai mica de 13,8V va cupla releul care de fapt pune la masa firul verde, si astfel poneste sursa. Cind bateria va fi incarcata tensiune la ajunge la 13,8V si va decupla releul, situatie in care arduino monitorizeaza bateria.
Teste am facut deocamdata cu un acumulator mai mic ca sa pot vedea repede cum se comporta.

Aici se poate vedea placuta cu semireglabilii ccu care am pacalit-o.
Asta este sursa ce am modificat-o
Tensiunea minima rezultata:
Tensiunea maxima:
Legaturile cu arduino:
Iar acum la lucru:


duminică, 15 octombrie 2017

LM317/338 controlat cu 3 butoane cu arduino afisare pe OLED

Am revenit la proiectul anterior nefiind multumit de functionare. Tranzistorul de comanda al lui LM317 si semireglabilul se incalzeau exagerat iar tensiunea de iesire o lua pe cimpii. Senzorul cu MAX471 a cedat. Cu amabilitatea lui Google am ajuns la un articol documentat destul de bine, dar neterminat.
Am renuntat la tranzistorul de comanda pentru LM317 , am pastrat si al doilea AO caci aveam o experienta anterioara cind am observat ca bucla de reactie negativa facea necazuri.
Dupa mai multe teste schema a devenitca mai jos. Este foarte importanta stabilitatea tensiunii de 24V. In cazul meu la cca 4,5 A debitati pe iesire tensiunea de dupa puntea redresoare cade cu 2,4V.

Pentru masurarea tensiunii am renuntat la MAX471 care a decedat, si am luat informatia de tensiune de iesire de pe mijlocul semireglabilului de 100K, acesta se ajusteaza initial fara ca mijlocul lui sa fie legat la A0. Eu am aplicat 10V pe capatul de sus si am ajustat mijlocul la 0,1V.
Pentru masurarea curentului am inseriat cu masa o rezistenta de 0,22Ohm (asta am gasit in sertar).
Pentru comanda digitala am folosit 3 butoane + - si  fast, astfel la apasarea lui + sau - pasul de reglare este de 20mV/pas la intrarea in primul AO, respectiv daca se apasa butonul fast impreuna cu + sau - pasul este de 200mV/pas. Am ales aceasta varianta ca pot parcurge cit mai repede plaja Umin-Umax.
Din semireglabilul de 4K7 se regleaza amplificarea astfel incit la pasul 127 sa obtinem la iesire 12V+ tensiunea minima a lui LM317 (nu toate LM-urile au aceasi tensiune, trebuie masurata initial).
Tensiunea de iesire maxima va fi 24V+tensiunea minima.
La testele actuale am folosit untransformator 220/24/63Wsi un LM338 este similar cu LM317 numai ca are limita de curent la 5A
Testat timp de 2 saptamini s-a comportat OK.
Dupa reglaj se poate scoate din cod informatia de PWM, cea din dreapta sus (101 in cazul de fata).
O imagine din faza de testare (am folosit un arduino nano)
Si o varianta de afisare pe display Nokia, inspirata de aici
Si o alta varianta unde afiseaza tensiunea de intrare si valoarea PWM


17-OCT-2017 Am reusit sa-l adun un pic. Nu am mai avut 7824 si am pus temporar un step-up alimentat din 12V.





Si afisare pe TFT 2"


Update 5-mai-2018
la ultima varianta am inlocuit step-up-ul cu un 7824, am alimentat dintr-un transformator toroidal 220/22V, si am facut mici ajustari la cod. Viteza de reactie  ( se poate vedea in clip) este relativ mica datorata tft-ul cu ILI9225 care este foarte lent. Cit de curind trebuie sa soseasca alte modele ci ILI9341 si voi reveni cu rezultate.
Si un mic filmulet.

sâmbătă, 23 septembrie 2017

Sursa 0-20V/3A comandata de arduino cu afisare pe OLED 128x32

Am refacut sursa din articolul anterior adaugind un al doilea AO, pentru ca in varianta initila reactia negativa nu functiona corespunzator, producind mici variatii ale tensiunii de iesire functie de consum. 
Asa ca primul AO se ocupa de furnizarea referintei, iar al doilea AO de stabilizare si reglaj tensiune.
Am gasit prin sertar un display OLEd cu rezolutie de 128/32 si am adaptat codul pentru a afisa pe acesta. 
Deocamdata am pastrat afisarea pasilor ca sa pot regla amplificarea primului AO. (La final voi afisa cind este scurt pe iesire, mai este A2 liber si voi monitoriza starea colectorului lui BC107 care se ocupa de preotectia la scurt.)
Reglajul porneste din 0V pina la 20V, iar pina la 3A tensiunea de iesire este constanta, dupa care BC107 blocheaza comanda.
Reglajul curentului de iesire nu m-a interesat in acest moment. (mai sint necesare inca 2 AO, si e posibil sa nu-mi incapa cablajul in cutia ce urmeaza sa soseasca).
Schema a devenit:
Mai jos sint citeva imagini de la teste:

 Temperatura radiatorului fara ventilatie nu a depasit 40 grade la 2,5A, si 3,2V cu 28V pe intrarea in colectorul lui 2N3055 (IPRS Baneasa).


In curind si cablajul imprimat, dar astept carcasa ca sa-l pot adapta la gaurile de fixare ale cutiei.

Amplificator ultra simplu cu MOS 40W/8Ohm la 2x30V

 Am început construcția unui amplificator cu tranzistori MOS după o schemă proiectată de Ionel Epure , care se împacă foarte bine cu boxele ...