Jump to content
ELFORUM - Forumul electronistilor

Numarator arduino cu releu


stefank

Recommended Posts

  Va salut , tin sa mentionez ca sunt incepator in zona arduino . Detin un Uno si un Nano cu care am avut cateva experimentari de proiecte simple cum ar fi afisare de text pe matrice de leduri , dar la care imformatiile le-am gasit pe net , nu eu le-am proiectat . 

  Am nevoie de ajutor pentru a realiza un numarator care sa primeasca impulsurile da la contactele unui push buton sau releu , numarul contactelor sa le afiseze eventual pe un afisaj led 7 x 4 sau 5  segmente , in ordine crescatoare sau descrescatoare , iar dupa un anumit numar de contacte care s-ar putea seta sa aclanseze un releu si sa se opreasca din numarat . Am cautat pe net si am gasit numaratoare arduino cu push buton , dar nu am gasit care sa comande un releu dupa un numar de contacte .

  Multumesc pentru orice informatie .

   

Link to comment

1.  In ordine crescatoare sau descrescatoare in functie de ce? Inteleg c-ai un singur contact...

2. Ce intelegi prin: "s-ar putea seta"?

Adica sa scrii undeva in cod un numar  si "ala e numarul"

SAU

sa ai un fel de meniu de setup (semnalizat cumva), sa setezi un numar din ceva butoane si asta sa fie memorat in EEPROM a.i. sa ramana chiar daca intrerupi alimentarea?

Elimina intai lacunele din specificatii.

Daca ai gasit deja un cod care face tot ce vrei doar ca nu aclanseaza un releu cand ajungi la nr. N, pune-l aici si eventual il completeaza cineva.

Link to comment

Nu conteaza daca crescator sau descrescator , sa se poata seta intr-un meniu numarul de impulsuri dupa care sa aclanseze un releu . De exemplu daca setez 1000 , dupa 1000 de impulsuri sa cupleze releul , aceasta setare sa se faca cu ajutorul a vreo 3 push butoane sau eventual un encoder rotativ , numarul de impulsuri nu este fix deci nu trebuie memorat . Am gasit doar coduri simple care doar numara 

https://youtu.be/1o_9ELJzqHg


#include <Arduino.h>
#include <TM1637Display.h>


#define CLK 2
#define DIO 3


#define TEST_DELAY   2000


TM1637Display display(CLK, DIO);

void setup()
{
  pinMode(4,INPUT);
  display.setBrightness(6); 
}

int numb=0;
int pres=0;
void loop()
{
   display.setBrightness(0x0f);
   display.showNumberDec(numb,false);
   if(digitalRead(4)==1)
   {
    if(pres==0)
   {
    numb++;
    pres=1;
   }
    }
  else
  {
    pres=0;
    }
}

Te rog sa folosesti butonul "<>" din editor pentru a posta coduri. Nico_2010

 

Edited by nico_2010
Link to comment

Deci ai nevoie de un contor de impulsuri cu afisare pe 4 sau 5 digiti, 7 segmente, cu LED-uri.

Device-ul sa aiba 3 taste cu ajutorul carora sa se poata seta un numar de impulsuri dupa primirea carora este aclansat un releu.

Banuiesc ca din aceleasi taste se poate reseta starea device-ului a.i. sa porneasca din nou numaratoarea.

Corect?

Bun, pana acum ce-ai facut ca sa vedem cum te putem ajuta?

Edited by informer
Link to comment

pana acum am cautat informatii dar nu am gasit , in functie de acestea urma sa procur cele necesare ca : tip de afisaj ( lcd sau led segmente ) , tip de buton ( encoder sau simple ) , modul cu releu sau releu simplu , etc

Link to comment

Daca ti-e tot aia cumpara LCD ca-i ceva mai simplu decat sa faci multiplexare pe afisaj cu segmente... chit ca o fi vreo librarie facuta  gata si pt. ala... da` oricum e mai simplu c-un 1602 :) 

Deasemenea daca ti-e indiferent, pune taste simple si ia-ti un modul cu releu sa nu mai trebuiasca sa pui tu tranzistor de comanda, dioda etc.

Dupa aia mai vedem... io te ajut daca incerci singur intai... personal nu fac proiecte/proiectele la comanda pe forumuri, din principiu... :) 

 

Link to comment

Practic acolo ai nevoie de 2 ori de aproximativ acelaşi cod plus un comparator, adică un numărător primeşte impulsuri de la traductor, celălalt de la butonul tău sau 2 butoane UP şi DOWN, din care selectezi o valoare care-ţi convine. Celălalt numărător (practic o variabilă unsigned integer) incrementează în ritm cu impulsurile releului, iar când cele 2 valori coincid se întâmplă 2 lucruri, primul numărătorul extern se resetează, al doilea o ieşire dă o tensiune spre ceva ce vrei tu.

În principiu ai avea nevoie de 2 afişaje LED separate sau unul LCD pe care pe fiecare rând afişezi câte unul din numărătoare. Codul e foarte simplu de scris.

Link to comment

Multumesc pentru raspuns , am comandat un afisaj LCD 1602 simplu , unul care are si vreo 5 butoane push si un modul cu releu , cand le primesc revin cu ce voi reusi sau nu

Link to comment
  • 2 weeks later...

cred ca ar trebui sa folosesti timerele pentru aplicatia asta. altfel va merge doar la pulsuri "bătrânești". 

Link to comment
La 12.03.2020 la 10:22, Gilbert Sparios a spus:

cred ca ar trebui sa folosesti timerele pentru aplicatia asta. altfel va merge doar la pulsuri "bătrânești". 

aparatul care va fi inlocuit de acest montaj fiind unul mecanic chiart acest lucru face fiind un contor de impulsuri

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines