a po co Ci dwie zmienne ? if(!(PIND & _BV(4))) { _delay_ms(250); if(++set_h >= 10){ set_hh++; set_h = 0; } } if((set_hh>=6)&&(set_... 68 to wyzeruj set_hh i set_h { set_h=0; set_hh=0; } tak to raczej winno wyglądać
Uruchom przerwanie od Countera (najlepiej od porównania wartości zliczonej z ustawioną) i zmień stan portu w podprogramie obsługi przerwania lub prościej, ale mało elegancko zmień [syntax=basic4gl]If Counter1 = 100 Then ...[/syntax] na [syntax=basic4gl]If Counter1 >= 100 Then ...[/syntax] Nie tak jest to, że w chwili zliczenia setki nasz if może się...
jak mogę zliczyć ile impulsów dostaję na dany pin mikrokontrolera AVR? Podać ten sygnał na wejście zegarowe timera i po prostu odczytywać wartość rejestru CNT. W nowszych AVR można to zrobić z użyciem np. event system, co daje pełną swobodę wyboru pinu IO.
We wzorze distance = (2*pi*R)/N nie uwzględniasz zliczonych impulsów Pos.
"Tą" liczbę masz zapisaną w zmiennej Liczba_przerwan_tim0 a nie w ośmiobitowym (czego się chyba obawiałeś) rejestrze timera0 - więc nie ma problemu.
Dlaczego pytałem o to czy się kręci? Jeżeli kręci się za szybko bo no w płaszczu uszkodzony jest dławik to programator nie zliczy impulsów z niego bardzo często. Tak samo jeżeli nie kręci się w cale. Przykręć zawór wody na minimum i sprawdź.
To trzeba zrobić nie na timerze a na liczniku, przynajmniej ja bym tak to wykonał. Wciskasz przycisk start, włącza się generator sygnału (powiedzmy z interwałem 10ms) podpinasz to do licznika i liczy. Zamiast czasu ustawiasz ile ma zliczyć impulsów i tyle (jest to odpowiednik czasu) Wtedy gdy sygnał jest to zliczasz, gdy sygnału nie ma to licznik stoi...
Dzisiaj przemyślałem sprawę i jednak licznik ten MUSI mieć wyświetlacz pokazujący aktualną ilość obrotów - tak będzie o wiele wygodniej. Czy chodzi o wartość zadaną czy wskazującą ilość już zliczonych impulsów? Rozumiem, że preferujesz gotowe rozwiązanie, ale gdyby chodziło o wyświetlanie wartości zadanej, to miałbyś ją na zadajnikach.
Banalne zadanie. A więc włączasz licznik(lepiej TIMER1-większa pojemność), tak, aby odliczał ci te 10sekund. Dajesz zmienną którą zwiększasz np co 1sekunde (zmienna o nazwie sekundy). W czasie odliczania do 10s w pętli głównej zliczasz impulsy przycisku i zwiększasz je w innej zmiennej (np. impulsy). Po 10 sekundach w zmiennej sekundy będzie10s a w...
Ja bym proponował użycie pinu o nazwie TIMx_CHx_ETR. pin ten w timerze służy jako zewnętrzny clock. Ustawiasz go na jakie zbocze ma reagować i po wykryciu takiego zbocza licznik sam się inkrementuje ; ] W tym momencie jedynym twoim zadaniem to odczytanie liczby zliczonych impulsów a następnie jego wyzerowanie aby od początku zliczał (bo inaczej on se...
dziwnie mi to wygląda jak na asm, nie znam tego kompilatora. Błąd mówi coś o nie dopasowaniu. Najprawdopoodbniej masz te zmienne źle zdeklarowane. Ten program nie ma Helpa, nie ma tam przykładu jak to poprawnie napisać? sprubuj tak: JEDN EQU 25h DZIE EQU 26h w tedy przypiszez nazwy do konkretnych adresów
zasada jest prosta dowolny licznik o pojemności zliczania zależnej od własnych potrzeb , liczący impulsy z generatora zatrzymanie generatora powoduje wyświetlenie zliczonych impulsów , częstotliwość generatora powinna być na tyle duża aby w czasie zliczanie nie były widoczne zmiany kombinacji , dla Twoich potrzeb można dodać jeszcze generator o określonym...
Informacja o czasie cyklu w diagnostyce jest bardzo zgrubna. W przerwaniu można ustawiać wyjście bezpośrednio (używając odpowiedniego obszaru wyjść -> PQ a nie Q) nie czekając na zakończenie cyklu (czyli zniknie opóźnienie związana z przetwarzaniem). Tyle tylko, że wtedy trzeba by zmodyfikować Twój program tak, żeby każde przełączenie wyjścia było wykonywane...
OK, rozumiem. LK sumuje zużycie na podstawie zliczonych impulsów i przesyła gotową informację o zużytej energii na pvmonitor, a nie jest to liczone po stronie pvmonitor. Ale moc chwilową poboru na wykresie można by pokazywać?
robisz sobie zmienna 1bajtową i na przerwaniu od timera (kiedy sie przepełni) inkrementujesz ją( zwiekszasz o 1). Wtedy łaczna ilosc zliczonych impulsów wyniesie zmienna1*256+timer. Piszesz sobie najpierw procedurke ktora wyswietli pojedyncza cyfre, nastepnie piszesz procedurke ktora wyswietli całą cztero cyfrową liczbe. Wyswietlanie robisz w petli...
Wygląda na to że pinout ten sam a kroki można policzyć. Patrząc na kable to chyba jest sygnał index(1 impuls na obrót) na pinie 2. Jeśli jest to wystarczy zliczyć impulsy między wystąpieniami sygnału index. Ilość impulsów jest zakodowana w tym 10 cyfrowym numerze ale nie mogę znaleźć rozpiski
No to obydwa kontaktrony podepnij do pinów INTx, a później rób takie coś: 1)wyzeruj zmienną x i y odpowiedzialną za aktualny stan zliczonych impulsów z wejśc INT0 i INT1 (obydwa kontaktrony), wyzeruj timer0 2)załącz timer 0 aby odmierzał czas 10 sekund 3)poczekaj aż timer odmierzy czas, w międzyczasie są zliczane impulsy z wejść INTx 4)po odmierzeniu...
Odnoszę się do kodu z postu #24. Zmienne 'wyslij' oraz 'ilosc' powinny mieć kwalifikator volatile ponieważ są używane w programie oraz w procedurze obsługi przerwania. [syntax=c] volatile int ilosc; volatile bool wyslij; [/syntax] Wywołanie funkcji serial() w pętli loop() może być wielokrotnie "przerwane" przez obsługę przerwania ENKODER_ISR() jeżeli...
W trybie serwisowym pokazuje 0 na zielono. Ale gdy chce włączyć mlynek to po chwili zmienia się na czerwono. Brak reakcji młynka a młynek na 100% sprawny. Jednak coś z modułem.... "0" to BRAK zliczonych impulsów. W trybie testowym trzymając przycisk silnik zatrzymuje się po zliczeniu 40 impulsów. BRAK impulsów oznacza problem: 1) okablowania silnika...
Chodzi o to, że po pierwszym przerwaniu TCNT1 będzie miał wartość 0, czyli zliczy potem 65536 impulsów. Zaś do generowania, jak Ty chcesz, przerwań co określony odcinek czasu służy tryb CTC. Wtedy w rejestrze OCR ustawiasz ilość impulsów, które chcesz zliczyć, i wygenerować odpowiednie przerwanie.
Wypełnienie PWM nie ma znaczenia; Nośną PWM określa się w ustawieniach projektu. Problemem w Crouzet jest to, że wejścia cyfrowe mają wbudowany filtr i nie zliczą impulsów pojawiających się częściej niż 10 ms (max 100 Hz) i dodatkowo jest to zależne od wielkości programu... Ten program próbowałem na nastawie 11 Hz - działał; na 50 Hz - nie działał !....
Przyczyną mogą być wspomniane w moim poprzednim poście drgania styków. Rozwiązanie kolega znajdzie [url=http://mirekk36.blogspot.com/2012/1... W przypadku kontaktronu mogą być znaczne - drgania te powodują zliczenie kilku impulsów zamiast jednego.
Tak mogą to być ma swa rezystory po 10K Co do nóżki 12 to pojawia tam się stan niski gdy licznik zliczy 5 impulsów. Zresztą zobacz tu(str 4): http://alfa.iele.polsl.gliwice.pl/elenot... co do schematu tej bramki to może być.
Witam, potrzebuję pomocy przy budowie licznika impulsów z mikrokontrolerem, który można zaprogramować za pomocą arduino. Urządzenie ma zliczyć impulsy np. z czujnika zbliżeniowego, lub z przycisku ręcznego. Po uzyskaniu zadanej wcześniej liczby impulsów ma uruchomić przekaźnik.(podać napięcie na cewkę) Po kolejnym impulsie ma się zresetować do zera...
W skrócie : ustawiasz co który impuls zegarowy ma byc zliczany, potem ładujesz do rejestru OCR2 wartosc z którą bedzie porównywał i w momencie zliczenia tylu impulsów ile jest w OCR2 następuje zmiana stanu na wyjsciu OCn... najprzyjemniejszą informacją jest to, że procesor robi to niezależnie od wykonywanego programu ;) wiec nie ma mowy o jakichkolwiek...
Nie używaj digitalRead, te podejście jest złe, nieprecyzyjne oraz blokuje wykonanie programu. Zdecydowanie jest lepiej użyć przerwania. Zobacz tutaj: https://github.com/MacWyznawca/HLW8012_B... Zrób tak, na razie bez wprowadzania SEL: 1. ustaw raz przerwanie GPIO na CF i CF1 2. w przerwaniach tylko zwiększaj o 1 ilość...
Resolver to jest przetwornik położenia kątowego, jest to jakby maszyna elektryczna dwufazowa z uzwojeniem wzbdzenia na wirniku. Uzwojenie to zasila się sygnałem o dużej częstotliwości. W uzwojeniach stojana indukuje się sygnał zmodulowany, po przepuszczeniu go przed odpowiedni układ otrzymujesz informację o kącie położenia wirnika. Enkoder działa na...
Mierzyłem się z tym zagadnieniem kilka razy; najpierw na ESP8266. Po wgraniu firmware NodeMCU mamy kilka trybów pracy. Poza NORMAL i DEEP_SLEEP są jeszcze np. LIGHT_SLEEP. Do tego wyłączenie radia daje dużą oszczędność. Zastosowanie uC np ATmega168PV. Pracuje od 1,8V (w rzeczywistości od 1,5 albo i niżej) i ma znikomy pobór pracując jak licznik wybudzany...
Witam, Schemat układu jest niekompletny, brakuje kwarcu taktującego. Z programu wywnioskowałem, że jest to Xtal 12MHz. Długość trwania procedury obsługi przerwania od Timer0 wraz z preambułą nie musi być dokładnie równa 10 cyklom maszynowym (#3CBA). To wniesie pewien błąd pomiarowy odmierzania czasu, przeciętnie około 10 mikrosekund. I na koniec sprawa...
Wszystko zależy od układu. Jeżeli cewka jest z jednej strony podłączona do masy to nie ma problemu. Gorzej jest jeżeli cewka jest "zawieszona" nad masą z obu stron. Wtedy można próbować podłączyć częstotliwościomierz przez małą pojemność do układu LC od strony wyjścia generatora. Można też próbować sprzężenia indukcyjnego przez dołączenie cewki pomiarowej...
Dziękuję bardzo za podpowiedzi. Jeszcze jedno, czy można określić na podstawie Kodów jaka jest w danej chwili moc odbierana? - pozwoliłoby to w przybliżeniu określić jakie urządzenie jeszcze pracuje. Po zliczeniu mignięć w określonym czasie a następnie przeliczeniu na moc (kW) wg wzoru: https://obrazki.elektroda.pl/2327326800_... gdzie:...
Latch - zatrzaskuje wynik przy rozpoczęciu zliczania (wcześniej nie widze takiej potrzeby, bo przy disable = 1 i tak zliczanie nie występuje, więc na wyjściu mamy zachowany stan zliczonych impulsów - chyba Very Happy). Tak, tylko to ma pewne konsekwencje gdzie możesz zresetować, a gdzie nie. Reset - z tym mam ciągle problem... na przebiegu *RST narysowałem...
Konwersja jest ok, to co dzielisz to wynikową liczbę zliczonych impulsów. Czyli enc_delta dodajesz to jakiejś zmiennej, przechowującej różnicę pomiędzy ostatnio odczytaną, a bieżącą pozycją enkodera i tak zliczoną liczbę impulsów dzielisz przez dwa. Reagujesz tylko na wartości parzyste lub nieparzyste.
Witam, Chciałbym zamontować licznik dwukierunkowy energii elektrycznej 1 fazy. Czy jest jakiś licznik który pozwala na zliczenie impulsów na pobór i odprowadzanie energii. Z góry dziękuje za podpowiedź.
void KrokWPrawo(void) { IloscImpulsow++; //Zwiększenie wartości zliczonych impulsów } void KrokWLewo(void) { IloscImpulsow++; //Zmniejszenie wartosci zliczonych impulsów } Te funkcje robią tosamo, napewno są dobrze?
Ja zawsze wpisuję Timer1 = var i to jest wartość początkowa licznika , a wpisując instrukcję load , podajesz ilość impulsów do zliczenia , a nie wartość początkową timera, kompilator sam wylicza wartość początkową.( chyba ). Timery zliczają w górę.
Tak chodzi mi o zliczenie impulsów, mogę jakiś schemat modułu o którym mówisz i program ?
Operacja modulo n to reszta z dzielenia. W przypadku licznika modulo 12, po resecie: - podamy 5 impulsów na CLK - licznik zliczy do 5 - podamy 17 impulsów, licznik zliczy też do 5 bo 17 mod 12 tyle wynosi - 25 impulsów to będzie 1 Trzeba pamiętać, że po resecie wyjście licznika jest ustawione na zero.
Potwierdzam tą super energooszczędność tego licznik. U mnie przy zastosowaniu kwarcu 500kHz i dużo gorszego stabilizatora LM2931Z-5V pobór jest na poziomie 3,5mA. Próbowałem też z obniżeniem napięcia stabilizatorem LP2950CZ 3.0V. Układ działa, głośniczek sygnalizuje zliczenie impulsów ale LCD nie działa...
Jesteś pewien że dla 50000Hz ilość zliczonych impulsów to 32000? Z czego taktujesz procesor?
Hmm.. to prawda, przyznaję, że dokładniej będzie zliczyć impulsy w ciągu pewnego czasu. Bez dodatkowej elektroniki proponowałbym zrobić tak: kiedy pojawi się impuls (zmiana z 0 na 1), to następny przyjmiemy najwcześniej po czasie powiedzmy 4ms. Jeśli przyjdzie wcześniej, to uznajemy go za zakłócenie i odrzucamy. Impulsy wejściowe mają przychodzić najczęściej...
Ciekawe jest to widać w twoim profilu (Pomógł: 79927) :P ale do rzeczy. Według mnie coś takiego można zrealizować w następujący sposób: - konfigurujesz przerwanie zewnętrzne żeby było wyzwalane przerwanie zboczem opadającym, rosnącym etc. - w tym przerwaniu uruchamiasz timer który zlicza sobie impulsy - jeżeli zliczy określoną ilość impulsów to wykonujesz...
Tak to są sprawy połączone. Tak dokładnie chodzi o taką rampę. Czujnik (urządzenie) jest czymś w rodzaju generatora(tyle wiem). Częstotliwość drgań jest zależna od napięcia sterowania czyli mojego DAC. Algorytm polega na tym DAC podanie napięcia. Pomiar dwóch wyjść i obliczenia. Następnie wybranie najlepszego sterowania i pomiar na 3 wyjściu czujnika....
Witam. Aby zliczyć impulsy należy przez mechaniczny styk podawać napięcie 24V na wejście 3 licznika (Input A). Według opisu czas zadziałania przekaźnika wyjściowego ustawiony jest na 9s. Aby licznik czekał na sygnał Reset, należałoby w podmenu Out 1 ustawić _ _ I-- Pozdrawiam
Stary timer na ne555 częstotliwość była specjalnie tak ustawiona aby uzyskać 8 sekund potem jak licznik zliczył te 8 impulsów to przekazał impuls na tranzystor który był podłączony pod przekaźnik co spowodowało otwarcie i zamknięcie obwodu ( a to zależy od przekaźnika wiadomo że jak coś z jednej strony łączy to z drugiej rozłącza) To miał być timer...
Kosmo Timer1=34285 wyszło z prostej kalkulacj. przy zegarze 8000000 i preskalerze 256, timer uP'a zliczy 8000000/256= 31250 "impulsów". Czyli aby licznik sie przepelnil nalezy zaczasc zliczanie od 65535-31250=34285.
Zacznijmy od tego Skopiowałem program do zliczania impulsów w języku Baskom $regfile = "m8def.dat" $crystal = 8000000 Dim Count As Integer Config Lcd = 16 * 2 Config Lcdbus = 4 Config Lcdmode = Port Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 On Int0 Int0_int Do Enable Interrupts...
Jeśli dobrze rozumiem, otrzymujesz przerwanie co 1 sekundę i w jego obsłudze odczytujesz ile licznik zliczył impulsów? Nie ma się co dziwić że tak się dzieje licznik po prostu zliczy wartość całkowitą impulsów. Lepszym rozwiązaniem będzie pomiar czasu pomiędzy impulsami (okresu) i z niego przeliczenie częstotliwości.
A jakiego układu użyć do załączenia diody (silnika docelowo) po zliczeniu impulsów? Czy ma być to przekaźnik, czy przerzutnik?
To co potrzebujesz to zwykłe zliczanie impulsów w czasie. 1. Start timera. 2. Jeśli timer nie odliczył zadanego czasu to zliczasz impulsy. 3. Jeśli timer odliczył to przepisujesz zliczone impulsy to rejestru wyświetlanego na panelu( z jednoczesnym przeskalowaniem na np. godzinę), zerujesz wartość rejestru w którym zliczałeś i restartujesz timer. Czas...
W= ((2*pi)/N)*(Mp/Tp) W - prędkość N- liczba impulsów na obrót Tp - okres próbkowania Mp - liczba zliczonych impulsów w okresie próbkowania Tp
dlaczego resetuje mi zmienną L do zera po zliczeniu 256 impulsów przez taimer0 L = L + counter0 Chciałbym zliczyć wszystkie impulsy prosze o pomoc jakim kodem zliczyć np 10000 impulsów z timer0 = counter
Witam Mógłbyś mi wyjaśnić na jakiej zasadzie ma działać Twój układ? Jitter to generalnie odstępstwo w położeniu narastającego i opadającego zbocza fali prostokątnej.Generalnie jedną z metod pomiaru jest metoda oparta na liczniku taktowany bardzo szybkim zegarem który jest uruchamiany i zatrzymywany w momencie detekcji określonego poziomu napięcia dajmy...
Który po nastawieniu, przyciskami nad okienkiem, określonej ilości zliczonych impulsów, wyłączy albo włączy coś, co jest podłączone od styków https://obrazki.elektroda.pl/3705330900_... W tym przypadku włączy.
Po co koledze ten CTC? Prescaler ustaw na 128 i wykorzystaj przerwanie przepełnienia licznika. Fint = Fosc / preskaler / 2^ilość_bitów_licznika = 32768Hz / 128 / 256 = 1Hz Przy CTC trzeba pamiętać, że występuje taki jeden mały szczegół jak 1+OCRn , gdyż licznik musi przynajmniej zliczyć jeden impuls. A ty go nie uwzględniłeś: Fint = Fosc / (preskaler...
Witam serdecznie potrzebuje zrobić licznik impulsów tzn. ustawiam żądaną wartość np. 2 i po naciśnięciu przycisku 2 razy załącza mi się przekaźnik w impulsów ,naciskam przycisk znów dwa razy i znów załącza się przekaźnik także w impulsów i tak w kółko dodam iż chciałbym to zrobić na wyświetlaczu LED znalazłem w sieci avt1824 lecz niestety avt nie udostępnia...
Funkcja pomiaru częstotliwości powinna być dostępna w wybranym systemie sterowania, warunkiem jest to, że musi posiadać szybkie wejścia. Jeśli masz już wybranego producenta to musisz zapoznać się z instrukcją. W praktyce pomiar częstotliwości impulsów enkodera polega na zliczeniu liczby impulsów w jakimś odcinku czasu (np. 100ms). Jeśli przez 100 ms...
W takim przypadku troszkę się komplikuje teoretycznie, musisz zmienić poziom napięć , pozostaje też kwestia czy procek ,,zdąży'' wykryć taki impuls szpilkowy, czy nie będzie zachodziła potrzeba zwiększenia czasu impulsu, przy układach TTL czy CMOS liczników nie zachodziła taka potrzeba (TTL prauje do 40MHz CMOS niżej i nawet tak krótki impuls powodował...
AVE... Jakiego PICa konkretnie chcesz użyć? Zasada pomiaru jest dość prosta: najpierw ustawia się któryś z timerów, by odmierzał 40 sekund i po odmierzeniu wywołał przerwanie. Potem tworzy się pętlę, która w nieskończoność sprawdza stan wybranego przez Ciebie pinu. Gdy jest tam logiczna jedynka, to dodajesz 1 do zmiennej. Gdy timer skończy zliczać czas,...
w jaki sposób automatycznie zblokować generator po zliczeniu impulsów? na chwilę obecną stworzyłem coś takiego jak na rysunku. i1 włączam generator, wyjście podane na licznik impulsów który mi je kolejno zlicza, i2 kasuje licznik
(at)marco47 Nie rozumiem twojego pytania. (at)janbernat Timer1 służy do odmierzania 1 sek. Po tym czasie następuje przerwanie, w którym liczba zliczonych impulsów (przez timer0) przepisywana jest do zmiennej wynik.
Nie lepiej podpiąć się pod wejście INT i zliczać impulsy? Timerem zrób sobie podstawę czasu a później wylicz z tego częstotliwość na podstawie liczby zliczonych impulsów w czasie.
Musisz poczynić założenia i określić zakres pomiarowy miernika pełną skalę FS oraz rozdzielczość z jaka będziesz odczytywał na wyświetlaczu zmierzoną pojemność. Zakładając FS - 1uF, z rozdzielczością 1nF to dla FS musi być zliczonych 1000 impulsów. Tu również należy przyjąć , iż będą to tw=1us fw=1/tw=1MHz oraz próg napięciowy komparatora Ur=5V. Pozostał...
Czego oczekuje NAZE Ci niestety nie powiem. Poszukaj informacji w manualu. Po wyłączeniu nadajnika dioda przy attiny powinna zgasnąć, bo brak PWM to brak PCINT, a tam jest załączana. Możesz dopisać symulację dodatkowych kanałów i sprawdzić, czy coś to pomoże. Dodaj sobie np. drugi output compare do tego licznika, który już masz. Jak zliczysz 6 wyłączeń...
Odtwarzacz MP3 nada się o tyle, o ile ma oddzielne guziki do funkcji, które chcesz użyć. Arduino da się zaprogramować dość dowolnie, więc pewnie będzie do tego użyte. Później wypada zrobić płytkę tylko do odtwarzacza i zamknąć ją w obudowie telefonu. Tarcza daje tyle impulsów, ile naciągniesz cyfr. 3 daje 3 impulsy, 9 dzięwięć, 0 daje dziesięć impulsów....
Czy chodzi Ci o coś podobnego ? http://jaglarz.com/ja/elektronika/opisli... Gdy będziesz chciał dać wynik dasz aby zliczyło impuls a wyświetlacz pokaże 0001 Pozdrawiam
Mam problem z obliczeniem poniższego zadania. Na rysunku przedstawiono przebieg sygnału wyjściowego z enkodera fotooptycznego o rozdzielczości i=1000 impulsów na obrót określić odpowiadająca mu prędkość obrotową i dodany jest wykres w załączniku. Myślałem żeby to zrobić tak, zeby z wykresu zliczyc liczbę impulsów na określonym przedziale czasowym i...
Przyznaję rację, że liczenie i zastosowanie metody Freddiego działa rewelacyjnie! Dzięki :) W zasadzie wszystko działa tak jak zostało założone, ale... Chciałbym Was zapytać o jeden mały problem - z którym sobie poradziłem - ale może można łatwiej... Otóż, przy każdym przepełnieniu (to akurat rozumiem) oraz przy pierwszym zliczonym impulsie LPTIM wskakuje...
Witam w jaki sposób odczytać prędkość podłączając enkoder impulsuwy do wejścia licznika HSC w S7 1200. chodzimi o program. Udało mi się uzyskać odczyt ale pracuje jako miernik częstotliwości. Chodzi mi o to, aby w przerwaniach np. co 10 ms dawał mi wartość zliczoną impulsów.
To nie będzie działać. Zacznij od określenia maksymalnej częstotliwości impulsów i minimalnego czasu trwania impulsu. Zaprogramuj timer na zgłaszanie przerwań z okresem nieco krótszym niż minimalna szerokość impulsu. W przerwaniu timer sprawdzaj stan wejścia i porównuj z poprzednim stanem. Przy wykryciu zmiany z 1 na 0 zlicz impuls. Nie używaj przerwań...
Napisz coś więcej o tym liczniku - nie wiemy ile prądu potrzeba aby zliczył, impuls napięciowy OK, ale jaki prąd? Jaki długi impuls? Jaka częstotliwość tych impulsów? Może wystarczy nieśmiertelny NE555, a może trzeba do niego dołożyć jakiś tranzystor? Może CD4047? Więcej szczegółów proszę...
Po drugie w miernikach częstotliwości dużych tak się dobiera czas bramkowania, by liczba zliczonych impulsów bezpośrednio pokazywała częstotliwość chyba kolega nie zrozumiał... Mam na myśli częstotliwości powyżej 1Hz o których autor tematu nie wspomniał...
A w czym problem żeby dać licznik (np. / 4 lub / 8 - 2 lub 3 przerzutniki D) i potem zlioczną liczbę programowo wymnożyć przez te 4 czy 8? Ilość zliczonych impulsów będzie bez zmian, tyle że częściowo wykona to sprzęt poza uC.
Witam, czy są cyfrowe układy liczące impulsy, tak żeby robić to poza arduino i wysyłać w formie cyfrowej np. ISP? Chodzi mi o zliczenie impulsów w liczników kWh (1000 imp/kWh), przy obciążeniu 80A na fazę i 5 licznikach wykorzystanie przerwań raczej nie wchodzi w grę. Arduino ma wysyłać stany liczników przez Ethernet. Pozdrawiam
Może nie do końca zrozumiałem Twoją ideę. Założenia: mierzony sygnał 49.9 Hz czyli okres =0.02004008s sygnał wzorcowy 1khz (okres 1ms) Jeżeli 1khz/1000 mamy 1Hz bramkujemy nim sygnał mierzony i mamy zliczonych 49 impulsów. Jeżeli chcesz dzielić 1khz/10000 i zliczać dalej (499 impulsów) to dostajesz 0.1Hz czyli bramkowanie 10s. Natomiast jeżeli chciałbyś...
Ktoś pisze bzdury. Ta metoda da kilka procent fcpu. Lepiej zliczyć impulsy w określonym czasie za pomocą timera w trybie licznika. Drugim timerem mierzysz ten czas. Dla niskich częstotliwości lepiej mierzyć okres impulsu za pomocą ICP.
podaj sygnał z wiatromierza do pinu INT0 lub INT1. Po odblokowaniu przerwań, będziesz miał idealne rozwiązanie do zliczania tych impulsów.
Widzisz on ma z tyłu wiele ustawień. Oprócz zmiany zakresów. od 100-800 Musiałbym zrobić zdjęcie. Ale to może jutro . Próbowałem dziś. Położony pod okapem, gdzie woda spadała z dachu. Wykazuje jak by nieznacznie więcej zliczonych impulsów. Ale to za słaba zabawka . O w okolicy Fukuszimy pewnie spełniałaby swoją rolę. Wygląda na to że naprawdę liczy...
Program kończy się na 00. Fuse low byte=0x62; Fuse high byte=0xDF; Extended fuse byte=0xFF;Lock byt byte=0xFF. Rozumiem, że mam zaprogramować Tiny85 tym migaczem w układzie jaki podałeś do schematu ? Tzn +/- zasilania i reset ? Jest tak , że rzeczywiście na wyjściach jest sygnał 1:10 ale niestety, moja nędza, oscyloskop PM3206 ostatni raz kalibrowana...
A ile maksymalnie ma być zliczonych impulsów, 1 obrót (180) ? Bo jeśli tak to trzeba zbudować licznik, np. z dwóch układów 74HC193 i mamy pojemność 256 impulsów, każdy następny licznik mnoży pojemność licznika przez 16. Do tego te liczniki mogą liczyć w przód i w tył oraz można programować ich stan początkowy.
Tylko że ja chciałbym to zrobić na 90s2313. Pwm jest proste ale jak już pisałem nie będę w stanie zliczyć impulsów wyjściowych z silnika!!! Więc potrzebuje mieć sterowanie napięciem stałym lub ewentualnie wieloma poziomami napięcia (cos jak wielopozycyjny przełącznik z drabinką rezystorową).
Krańcówki też są także ze skrajnym położeniem nie ma problemu, natomiast pozycje pośrednie to już problem. Zastanawiałem się na prockiem ale wiadomo sprawa nie jest łatwa bo tak jak mówisz trzeba impulsy przerzucić na napięcie i w dodatku jeżeli siłownik pójdzie np. do połowy i będzie chciał wrócić to jak gdyby ilość zliczonych impulsów trzeba odjąć...
Witka! Wpadł mi w rece licznik impulsów telefonicznych 16kHz. Posiada wyświetlacz ciekłokrystaliczny,oraz gniazdo na kluczyk. Po włączeniu w linie tel.wskazuje stary stan zliczonych impulsów. Może pokazywać naliczenie kwotowe i impulsowe. Czy ktoś ma jakieś doświadczenia z takimi urządzeniami? Produkt niemiecki VorsGbAnz 86 z 1989 roku. Hej.
Podpowiem Ci: - pierwszy układ jest do odróżniania impulsów trwających dłużej, niz 1 sekunda. To prosty układ z opóźnieniem i przerzutnikiem Schmitta na CD4093. Jeśli czas trwania impulsu jest dłuższy, niż 1 sekunda, to na wyjściu tego CD4093 pojawia sie impuls, który zostaje zliczony przez licznik 4017. Jednocześnie uruchamia się nastepne odliczanie...
Rozumiem, że luzy mechaniczne są całkowicie wyeliminowane?! Przeanalizuj czy ruch nie kończy się w połowie zliczenia impulsu; po zmianie kierunku ten "pół-impuls" może być odjęty jako cały. Najlepiej byłoby na jednym skraju zastosować dodatkowy czujnik HOME zerujący licznik.
Witam, Mam sterownik Compactlogix oraz moduł 1769-hsc. Licznik skonfigurowany jest w trybie zliczania impulsów. Wykorzystuję jeden kanał. W programie odczytuję aktualną liczbę zliczonych impulsów. Dzisiaj chciałem skasować licznik oraz przeskalować aktualną wartość impulsów na prędkość taśmy ale bez skutecznie. Moje pytanie: jak wykonać przeliczanie...
Musisz zliczoną ilość impulsów podzielić przez 100 :>
tzn uklad z ledami jest tylko przykładowy zamiast przycisku będzie sygnał prostokątny , atmega będzie sterować cewkami zapłonowymi , mogłem zrobić to na np liczniku , zależnie od zliczonych impulsów ustawiać odpowiedni port , lecz chodzi tu o duża szybkość , wydaje mi sie ze oczekiwanie petli na przycisk będzie najszybszym rozwiązaniem
Wystarczy zwykły impulsator - kontaktron (jeśli małe obroty), lub transoptor szczelinowy jeśli obroty są wyższe. To podłączasz pod wejście zewnętrzne licznika, włączasz pomiar i czekasz x czasu. Potem ilość zliczonych impulsów dzielisz na jednostke czasu x - przeliczasz do obr/min.
Witam, niestety do mojego zastosowania to nie wystarcza. W moim programie interfejsem SPI steruję rejestrem przesuwającym, który steruje diodami led w matrycy 8x8. Chodzi mi o przesuwanie danych co jeden bit. Moim zdaniem najwydajniejsze będzie zliczenie impulsów i włączanie sygnału CLK z opóźnieniem (coraz większym). Dzięki temu napis na matrycy będzie...
Właśnie o to chodzi... wartość musi być mierzona możliwie często i dokładnie niestety bez przetestowania układu nikt z nas nie będzie w stanie ocenić jaki sposób będzie dobry. A jeśli chodzi o moje wyliczenia to: przykład1. t=100ms=0.1s - czas pomiaru 25 imp na obrót 1000 RPM -> 1000*0.1*25=41.7 impulsów w ciągu 0.1 sec. rozwarzamy dwa możliwe przypadki:...
Lepiej zliczaj same impulsy w zmiennej typu uint32_t, a dopiero przy ekspozycji wyniku przeliczaj na faktyczną odległość. Tak, jak kolega (at)FreelancerPL napisał, operacje na typach float wykonują się stosunkowo wolno w AVR, więc nie ma sensu ich wykonywać w przerwaniu. Rozumiem, że w przerwaniu zliczasz co drugi impuls, ponieważ w attachInterrupt()...
Najprostszym rozwiązaniem będzie zliczenie impulsów przez dodatkowy układ na mikrokontrolerze i wygenerowanie impulsów z mnożnikiem 5/6. Układ przykładowo zlicza impulsy przez sekundę. Mając zliczoną wartość (trzeba ją odpowiednio przeskalować) zapisuje do rejestru timera, który dalej będzie generował sygnał przerwania (powiedzmy przy porównaniu), czyli...
Może założyć na oprawkę okularów coś w rodzaju transoptora refleksyjnego. Bo przecież gałka oczna odbija promieniowanie lepiej niż powieka. I wtedy przy mrugnięciu następowałoby przerwanie strumienia i zliczenie impulsu. Oczywiście wszystko zrealizowane w podczerwieni, modulowane i o znikomej mocy.
Mam pytanie: Czy na wszystkich czujnikach, czy grupach czujników mogą wystąpić jednocześnie sygnały zdarzeń do zliczenia?
Jednak kod do AVR jest nieco inny (więcej rozkazów, których nie ma w '51). Wszystko ok, tylko jak przechować i wyświetlić na 6 wyświetlaczach liczbę zliczonych impulsów wynosząca na przykład 500000 (pięćset tysięcy) Przechować mogę w trzech rejestrach 8-bitowych, tylko jak pomnożę wszystkie to gdzie zapisać wynik tak duży? Idealnie byłoby rozłożyć na...
Myślę, że należałoby zrobić jakiś lepszy układ wejściowy, który nie zaliczy podskoczenia piłki w bramce za kilka bramek - może z wykorzystaniem jakiegoś przerzutnika monostabilnego (z TTL mógłby być 74*123, jest jakiś odpowiednik CMOS, ale nie pamiętam oznaczenia) - przy okazji, to by mogło służyć do ograniczenia czasu (a nie cykli) migania LED-a. Można...
Uwy=-Uwe *\frac{t}{RC} Jeżeli ustalimy ujemne napięcie progowe komparatora to czas ładowania (do osiągnięcia Uwe=-Up) będzie dany wzorem: tład= R*C*Up/Uwe czyli częstotliwość wyraża się wzorem f=\frac{1}{R*C*\frac{Up}{Uwe}+troz} jeżeli troz<<tład to wzór upraszcza się do postaci f=\frac{Uwe}{R*C*Up} 2.Od czego zale|y czas otwarcia bramki &...
Tylko to by skomplikowało budowę, musiałbym zrobić jakąś przekładnię aby przełożyć obroty kolumny nastawnika na obroty enkodera, co wymagałoby dużej precyzji wykonania. Musiałbym też dla każdej pozycji policzyć osobno ilość zliczonych impulsów enkodera, bo pozycje nie są rozmieszczone regularnie. Wtedy to już sensowniejszy byłby chyba potencjometr zamiast...
No to motoreduktor wykorzystujący i tak wyłączniki krańcowe albo czujniki położenia wału, ostatecznie liczniki impulsów z wału silnika, które po zliczeniu będą odpowiednio sterować silnikiem.
arduino zliczenie impulsów zliczenie jedynek licznik impulsów ilość impulsów
głośność buzera zasilacz warsztatowy stabilizować chrysler voyager alarm zamykaniu
PSP 1004 Street nie uruchamia płyt UMD - co robić? Mrugające LED DRL w Kia Rio - przyczyny i rozwiązania