eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › Arduino - zliczanie impulsów
Ilość wypowiedzi w tym wątku: 39

  • 31. Data: 2017-07-08 22:50:09
    Temat: Re: Arduino - zliczanie impulsów
    Od: Zenek Kapelinder <4...@g...com>

    Teraz dolozyles do pieca sa takie co maja 200 milionow zadzian. I to nie jest jakas
    super produkcja dla NASA.


  • 32. Data: 2017-07-08 23:07:28
    Temat: Re: Arduino - zliczanie impulsów
    Od: "Michal M. Lechanski" <m...@d...eu>

    W dniu 08/07/2017 o 20:59, Janusz pisze:

    > autor jeszcze nie wie co to są
    > przerwania i po co.

    O to, to! ważne spostrzeżenie.
    Ale się uczy i, miejmy nadzieję, wkrótce już będzie wiedział. :-)

    Bardzo dziękuję za wszystkie odpowiedzi - nie zdawałem sobie sprawy, że
    banalny licznik obrotów może w istocie być wcale nie taki banalny...

    Pozdrawiam

    --
    Michał


  • 33. Data: 2017-07-09 08:05:27
    Temat: Re: Arduino - zliczanie impulsów
    Od: slawek <f...@f...com>

    On Sat, 8 Jul 2017 21:59:56 +0200, Janusz <j...@o...pl> wrote:
    > Co do czasochłonności

    W sensie np. przesyłania 32 bajtów przy 9600 bodów - nie zależy od
    taktowania CPU i nie da się przyspieszyć. A jak jeszcze będzie
    czekanie na gotowość do transmisji... to czas może być dowolnie
    długi.


  • 34. Data: 2017-07-09 14:03:31
    Temat: Re: Arduino - zliczanie impulsów
    Od: slawek <f...@f...com>

    On Sat, 8 Jul 2017 13:50:09 -0700 (PDT), Zenek Kapelinder
    <4...@g...com> wrote:
    > Teraz dolozyles do pieca sa takie co maja 200 milionow zadzian. I
    to nie jest jakas super produkcja dla NASA.


    Policzmy. 1000 razy na sekundę w czasie jednej godziny to 3600 000.
    Te 200 milionów zadziałań podzielone przez 3.6 miliona daje około 60
    godzin, czyli nawet nie trzy dni.

    Czyli przy 1000 impulsach na sekundę po trzech dniach jest spora
    szansa na awarię (50%?). Przy 10 impulsach na sekundę układ może
    wytrzyma rok zanim padnie. Pomijam kwestię jaka jest moc mechaniczna
    pobierana z koła - te styki pracują, skąś biorą na to energię ;)

    Moim zdaniem są niezłe przy pracy raz na parę minut, zwłaszcza jeżeli
    służą jako przekaźniki. Ale jako czujniki (pole magnetyczne) to
    hallotrony chyba są lepsze.


  • 35. Data: 2017-07-09 16:06:48
    Temat: Re: Arduino - zliczanie impulsów
    Od: Zenek Kapelinder <4...@g...com>

    Szybko by musial pomykac na rowerze. Tak 3600 km/h, troche wiecej niz polowa
    pierwszej predkosci kosmicznej dla Ksiezyca.


  • 36. Data: 2017-07-09 17:42:59
    Temat: Re: Arduino - zliczanie impulsów
    Od: s...@g...com

    W dniu niedziela, 9 lipca 2017 14:03:33 UTC+2 użytkownik slawek napisał:
    > On Sat, 8 Jul 2017 13:50:09 -0700 (PDT), Zenek Kapelinder
    > <4...@g...com> wrote:
    > > Teraz dolozyles do pieca sa takie co maja 200 milionow zadzian. I
    > to nie jest jakas super produkcja dla NASA.
    >
    >
    > Policzmy. 1000 razy na sekundę w czasie jednej godziny to 3600 000.
    > Te 200 milionów zadziałań podzielone przez 3.6 miliona daje około 60
    > godzin, czyli nawet nie trzy dni.
    >
    > Czyli przy 1000 impulsach na sekundę po trzech dniach jest spora
    > szansa na awarię (50%?). Przy 10 impulsach na sekundę układ może
    > wytrzyma rok zanim padnie. Pomijam kwestię jaka jest moc mechaniczna
    > pobierana z koła - te styki pracują, skąś biorą na to energię ;)
    >
    > Moim zdaniem są niezłe przy pracy raz na parę minut, zwłaszcza jeżeli
    > służą jako przekaźniki. Ale jako czujniki (pole magnetyczne) to
    > hallotrony chyba są lepsze.

    Namęczyłes sie niepotrzebnie.
    Jedno zadziałanie jest na około 2m pokonanego dystansu.
    Nawet jak wytrzyma nędzne 1 000 000 razy to jest 20 mln metrów czyli 20 000km.
    I wtedy się może okazać że trzeba wylutować i załozyc nowy.

    Jak na prosty układ do nauki - imho starczy.

    Oczywiscie czujnik halla sporo lepszy ale troche utrudnia zadanie...


  • 37. Data: 2017-07-09 20:45:37
    Temat: Re: Arduino - zliczanie impulsów
    Od: "Michal M. Lechanski" <m...@d...eu>

    W dniu 07/07/2017 o 12:04, Nifhelm pisze:
    > A najlepiej zastosuj przerwania.

    Przy pomocy googla takie coś wyskrobałem i zdaje się to działać poprawnie:

    #include <LiquidCrystal.h>
    LiquidCrystal lcd(12, 11, 5, 4, 7, 6);

    int licznik;

    void setup()
    {
    lcd.begin(16, 2);
    pinMode(2, INPUT_PULLUP);
    attachInterrupt(0, zliczanie, FALLING);
    licznik=0;
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("licznik = ");
    }

    void loop()
    {
    lcd.setCursor(8, 0);
    lcd.print(licznik);
    }

    zliczanie(){
    static unsigned long lastTime;
    unsigned long timeNow = millis();
    if (timeNow - lastTime < 50)
    return;
    licznik++;
    lastTime = timeNow;
    }

    I teraz mam dwa kolejne pytania,

    1. a gdybym chciał zliczyć impulsy z innego koła, to co powinienem
    zrobić? Chodzi mi o to że może wystąpić sytuacja że przerwania będą
    wywołane w tym samym czasie?
    2. Powyższy kod działa mi z kontaktronem. Ani czujnik Halla ani
    podczerwieni nie dają odpowiednich poziomów napięcia na wyjściu. Czy
    trzeba zastosować jakiś zewnętrzny układ dopasowujący czy da się to
    zrealizować na samym Arduino?

    Jeszcze raz bardzo dziękuję za wszystkie odpowiedzi.

    --
    Michał


  • 38. Data: 2017-07-10 10:52:30
    Temat: Re: Arduino - zliczanie impulsów
    Od: Cezar <c...@B...pl.invalid>

    On 09/07/2017 19:45, Michal M. Lechanski wrote:

    > I teraz mam dwa kolejne pytania,
    >
    > 1. a gdybym chciał zliczyć impulsy z innego koła, to co powinienem
    > zrobić? Chodzi mi o to że może wystąpić sytuacja że przerwania będą
    > wywołane w tym samym czasie?
    Atmega 328 ma dwa przerwania INT0 i INT1 (piny 2 i 3)

    > 2. Powyższy kod działa mi z kontaktronem. Ani czujnik Halla ani
    > podczerwieni nie dają odpowiednich poziomów napięcia na wyjściu. Czy
    > trzeba zastosować jakiś zewnętrzny układ dopasowujący czy da się to
    > zrealizować na samym Arduino?
    >
    > Jeszcze raz bardzo dziękuję za wszystkie odpowiedzi.
    >

    Przytocze jeszcze raz... wyguglaj "Arduino Analog Comparator Interrupt"

    c.



  • 39. Data: 2017-07-10 16:14:35
    Temat: Re: Arduino - zliczanie impulsów
    Od: Nifhelm <pytaj@grupie>

    W dniu 09.07.2017 o 20:45, Michal M. Lechanski pisze:
    > W dniu 07/07/2017 o 12:04, Nifhelm pisze:
    >> A najlepiej zastosuj przerwania.
    >
    > Przy pomocy googla takie coś wyskrobałem i zdaje się to działać poprawnie:
    >
    > #include <LiquidCrystal.h>
    > LiquidCrystal lcd(12, 11, 5, 4, 7, 6);
    >
    > int licznik;

    Bezpieczniej użyć:

    volatile int licznik;

    W arduino zmienne modyfikowane w trakcie przerwań powinny być tak
    definiowane.

    [...]
    > I teraz mam dwa kolejne pytania,
    >
    > 1. a gdybym chciał zliczyć impulsy z innego koła, to co powinienem
    > zrobić? Chodzi mi o to że może wystąpić sytuacja że przerwania będą
    > wywołane w tym samym czasie?

    Wystarczy użyć drugiego przerwania.

    > 2. Powyższy kod działa mi z kontaktronem. Ani czujnik Halla ani
    > podczerwieni nie dają odpowiednich poziomów napięcia na wyjściu. Czy
    > trzeba zastosować jakiś zewnętrzny układ dopasowujący czy da się to
    > zrealizować na samym Arduino?
    >
    > Jeszcze raz bardzo dziękuję za wszystkie odpowiedzi.
    >
    Arduino na wejściach cyfrowych ma określone poziomy odpowiadające
    stanowi wysokiemu i niskiemu. Sygnały wejściowe muszą być więc
    dopasowane do tych poziomów, albo wejście nie będzie reagować/zacznie
    szaleć.
    Najprościej wstawić komparator. Można też kupić gotowe moduły z
    czujnikiem odbiciowym i komparatorem. Widywałem takie nawet po 2.50zł.
    Mają one od razu wyjście cyfrowe i potencjometr do regulacji czułości.
    Pozdrawiam.

strony : 1 ... 3 . [ 4 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: