Zaczynasz dobrze. Wg protokołu inicjację "/?!\r\n" wysyłasz na prędkości 300 bd (ustawienie transmisji 7E1). Nie żadnej innej - 300, bo tak mówi norma. Licznik energii ma wówczas maksymalnie 2 sekundy na odpowiedź, a odpowiedzią jest wpierw ramka identyfikatora licznika, który ma postać "/XXXZD<CR><LF>", gdzie XXX jest identyfikatorem producenta,...
To teraz troszkę mi namieszałeś, ATmega 16 ma ICP1 przy nóżce Timera 1, ja odmierzam impulsy 2-ch sygnałów... Co do sposobu zliczania impulsów za pomocą T0/T1 to po co używać 3 timer do odmierzania okresu czasu. Przecież okres jest odmierzany na przemian. Gdy T1 zlicza impulsy obrotomierza to T0 odlicza okres, po tym okresie T0 zaczyna zliczać impulsy...
Możesz też zliczać czas między impulsami. Znasz czas i drogę (obwód koła) co daje Ci prędkość.
"można zrobić wyprowadzenie z licznika" nie znaczy "wygrzebać komunikaty" tylko podłączyć się do samego sterowania wskaźnikiem prędkości , chyba że prędkość jest podawana w postaci CYFROWEJ tzn. jako liczba to wtedy nie da się tak poprostu. Jeśli gość nie ma praktyki elektronika to nie zalecam grzebania w liczniku.
Witam Mimo, że większość proponowanych tutaj rozwiązań podłączenia RFM12 do Atmegi wykorzystuje SPI programowe, ja podłączyłem tradycyjnie, przez SPI sprzętowe - mimo, że nie miałem problemów z wgrywaniem kodu do Atmegi spiętej z RFM12, to uruchomienie ich razem jest problematyczne ( każde osobno działa bez problemu ) [syntax=basic4gl] $include "Config_AVR-DOS.BAS"...
Żeby nie zapomnieć na końcu to już tutaj napiszę, że liczy się to w programach bo one się rzadziej mylą, ale zrozumienie tematu jest oczywiście ważne. Jest kilka, a w pełni darmowych, kalkulatorów do tego. Timer jest urządzeniem sprzętowym wbudowanym w mikrokontroler. Najczęsciej taktowany jest w taki sposób, że sygnał zegarowy taktujący mikrokontroler...
Ja bym proponował na początek przerwanie zewnętrzne INT w którym liczysz impulsy, oraz przerwanie timera w trybie CTC co około 1s w której jak kolega (at)bochnio wspomniał będziesz zerować licznik. Kolejny krok to mniej więcej tak:[syntax=c]if(licznik > 6) POTRB |= (1<<PB0); // ustaw stan wysoki gdy przekroczy wartość else POTRB &= ~(1<<PB0);...
Teraz nie mam pod ręką niczego co jednostajnie i stabilnie może dawać sensowne impulsy zdatne do jakichkolwiek testów prędkości. Mam impulsator z rolki myszki, ale nie mam za specjalnie czym nim kręcić (w rozsądnych prędkościach). Nie wiem jak to jest rozwiązane w oryginalnych licznikach, ale zdaje się, że jest tam zwykły kontaktron i działa. Rozwiązań...
Program ma pobierać dane z tablic i ustawiać odpowiednie bity na PORTB. Timer0 ma co 0,5s pobrać z tabeli aktualną prędkość z jaką timer2 ma zmieniać stan na PORTB. Osobno timer'y działają, razem nie chcą . [syntax=vbnet] $regfile = "m2560def.dat" $crystal = 16000000 Config Portb.7 = Output Config Portb.6 = Output Config Portb.5 = Output Config Portb.4...
Pojawił się kolejny etap i niestety wiele problemów. Próbuję komunikować się z licznikiem właśnie w Modbus RTU, ale licznik milczy. Używałam terminala do sprawdzenia komunikacji i okazuje się, że ramka wysyła się dobrze, ale tylko raz na x razy. A nawet po wysłaniu dobrej ramki jest cisza. Oto moja funkcja wywołująca wysłanie (send to funkcja z USARTa...
mam koleejne pytanie czy atmega8 posiada jakąś pamięć stała ?? tzn jakbym chciał zrobić też licznik który bedzie zliczał przebieg samochodu. atmega musiała by zapamiętać przebieg nawet przy odłączonym zasilaniu
Nie, to MZ ETZ :) , prędkość nawet licznika ograniczyłem do 80km.h - po to tylko 16 diod , a ograniczenie ze względu na największą sprawność hamulców do takiej prędkości maksymalnej. Więc jeżeli się nieda no to zrobię tak jak mówisz, stracę całe 5 nóżek, 1 na klawiaturę i 3 na LCD (z yotube wiem jak to zrobić - przez właśnie rejestr przesuwny). A możesz...
W kalkulatorze włącz opcję Auto SCK speed bo na Twoim screenie jest ewidentnie niezaznaczona. Wtedy kalkulator przy starcie odczytu ustawia najnizszą prędkość SCK i odczytuje Fusebit`y. Jak zobaczy że masz juz wyłączony CKDIV8 to programuje szybciej i mógłby na przykład 1/4 prędkości 8MHz ale w praktyce najczęściej 1500 kHz. W opcjach programu włącz...
Głównym powodem wykonania takiego licznika była chęć rezygnacji z mechanicznego napędu klasyczną linką starego prędkościomierza/drogomierza. Linka ta niestety była dosyć zawodna - zrywała się, pękała osłona, poza tym była opornie prowadzona wzdłuż amortyzatora - naprężenia jakie powodowała urywały z czasem plastykowe obejmy. Postanowiłem wyeliminować...
Miejsce wpięcia u mnie to akurat komputer samochodowy (sterownik), dlatego że jest w dobrym miejscu (pod radyjkiem), a poza tym mam stamtąd dostęp do sygnałów wtrysków i licznika prędkości (cyfrowe). Chce zrobić komputer pokładowy, do liczenia spalania + tam dodatkowe info o światłach, drzwiach, temp. wew. i zew. Ogólnie projekcik na studia:)
Witam. Mam taki problem. Próbuję skomunikować ze sobą dwa uC. Docelowo będą one skomunikowane po RS485, ale teraz w fazie testów próbuję je połączyć normalnie po UARCie. Skrosowałem TXD i RXD dwóch Atmeg. Wysyłam z Atmega162 znak 0x3A, natomiast na Atmedze32 włącza się przerwanie od odebrania (dioda niezależna od znaku odebranego się zapala ) ale nie...
A moze by tak zastosowac AT89S8252, ma bardzo fajna funkcje do liczenia czasu pomiedzy impulsami, licznik T2 tego uC po sygnale na wejscie T2EX przepisuje wartosc licznika do specjalnych rejestrow i zeruje sie i tak do kolejnego impulsu. Ja to wykorzystuje do sprawdzania prędkości generatora SRG. pozdrawiam trikess
Szanowni Forumowicze, mam problem z regulacją prędkości obrotowej silnika DC wyposażonego w enkoder za pomocą przerwań INT. Enkoder to czujnik Halla i odbiera impulsy z magnesu neodymowego na wale silnika (magnes 8-polowy). Prędkość kontroluję za pomocą generowanego PWM na atmedze podawanego na mostek L293DNE. Atmega pracuje na 1MHz, a licznik to Timer/Counter0...
Witam Zaczynam zabawę z Arduino, próbuję opanować trochę teorii. Chodzi mi o to aby łopatologicznie ktoś wyjaśnił mi jakie "prawa" rządzą np takim wyliczeniem. ATmega 328p do niej dołączony dwukanałowy enkoder optyczny (np 1000 imp/obrót) na tej bazie robimy licznik góra/dół który po zliczeniu 1000 impulsów daje nam informacje że wykonano 1 obrót i...
Witam serdecznie. Piszę program, w którym muszę zliczać przychodzące impulsy z licznika energetycznego do procka. Aby nie zliczać impulsów pochodzących od drgań styków wymyśliłam takie rozwiązanie. Jeśli na INT0 przyjedzie zbocze opadające, włącz licznik T0. Gdy licznik przepełni się- minie 32ms i w tym miejscu będzie poziom niski na pinie, to atmega...
ilmenauer -> już mi się dużo rozjaśniło. Ale podłączenie tych czujników ma być takie jak na schemacie? Próbowałem podłączać ale nie było reakcji. Zasilanie czujnika 5V. Atmega reagowała na pojawienie się "0", tylko chyba miałem włączony pullup, nie pamiętam. Dla obu schematów konfiguracja ma być identyczna? Zbudowałem układzik, w jaki sposób obliczyć...
Wydaje się, że najlepiej zwiększać zmienną tak jak pojawiają się impulsy dzięki INT0, i po ustalonym czasie (Timer) ilość zliczonch impulsów dzielić przez określony czas i masz częstotliwość. A tu już łatwo do przekształcenia tego na prędkość. To jedna z prostszych metod pomiaru. Aktualnie ja sobie zrobiłem licznik impulsów by sprawdzić np. ile impulsów...
Witam, Pomysł dobry ale sypie się najprawdopodobniej z powodu zbyt dużej ilości przerwań. Proponuje projekt sterownika "równoległego", taki wykorzystałem w mojej pracy inżynierskiej. Wprawdzie korzystałem tylko z 8 serw ale 16 też obsłuży po drobnej modyfikacji. Program zabiera większość mocy procesora do obsługi przerwań ale tylko przez czas 2ms potem...
Zestawiłem układ testowy składający się z Atmegi8A z zewnętrznym osc. 8Mhz i drugi układ z ATtiny 2313 i zewnętrzny osc. 4MHz. Oba układy połączone RS232 z prędkością 9600. Odpowiednie programy załadowane do obu uC. ATmega wysyła po RS co sekundę wartość licznika. ATtiny odbiera ta wartość i zapala wyświetlacz 7 segmentowy (tylko wizualizacja odbioru...
Zrobiłem to co mi poleciłeś jednak brak poprawy. Teraz na sztywno jest ustawiona prędkość transmisji na 9600 bps. Problem z resetowaniem występuje tylko podczas odbierania kilkunastu znaków z rzędu. Gdy sa przesyłane pojedyncze znaki to działa to bez problemu. void uart_init(unsigned int baud) { UCSR0B|=_BV(RXCIE0)|_BV(RXEN...
To że nie wchodzi w przerwanie stwierdzam po tym ja procek wykonuje testowy program. Ustawiłem mu odpowiednią wartość TOP dla licznika co odpowiada jakiejś tam częstotliwości, to zaś się przekłada na prędkość mojego silnika krokowego. Przy uruchomionym przerwaniu od tego właśnie licznika zmienna "a" się inkrementuje co każde wejście w przerwanie, odpowiada...
Witam. Mam problem. Próbuje policzyć drogę ze wskazań akcelerometru, potrzebuje scałkować prędkość w języku c by otrzymać drogę. Być może jest to banalne ale skończyły mi się już pomysły. Scałkowałem przyspieszenie i teoretycznie otrzymałem prędkość, przedział czasowy to 10 ms wyzwalane z licznika. Będę wdzięczny za jakieś sugestie. Poniżej zamieszczam...
Jak nie radzisz sobie na razie z tym timerem to przynajmniej nie nadużywaj bezpodstawnie Wait. To co Ci zaproponuję nie zwalnia Cię od ogarnięcia timerów! Ustal sobie jakie dopuszczasz maksymalne opóźnienie pętli i użyj go tylko raz np. 10ms. Za rozwiązanie, może nie do końca eleganckie, zaraz zbiorę burę od fachowców ale w wielu przypadkach to naprawdę...
Nie musi to byc wielki magnes. Starczy nawet kawałeczek, byle by zadziałały styki. Co do tego co przedstawiłeś, jeśli będziesz mieć wibracje styków (nierówny spaw etc), to licznik zacznie Ci wariować i liczy co odczyta a nie ilość obrotów. Nie mówiąc o tym, że takie tarcie spawu o styki szybko je wykończą. Jak juz nie chcesz kontaktronu, to pomyśl nad...
Sporo tego ( obsługa SD, PCF8563 + menu do ustawiania daty, obsługa PCF8574 w przerwaniu INT1 )- ale nie ma problemu - zmieniła się tylko zawartość podprogramu Pomiar była taka, jak w pierwszym poście oraz wyłączyłem w wyświetlanie na LCD tych wartości wskazań z DS18B20, oczywiście dostosowałem pozycje wyświetlania do LCD 4*20 - załączniku spakowany...
timer zlicza czas w jakichś tam odstępach i dodaje do licznika +1. (wyeliminowano przepełnienia timera) . Jeśli jest impuls z halotronu (magnes kręci sie na łyżkach wiatromierza) to znaczy ze wykonano jeden obrót, i wtedy ten czas jaki zleciał do momentu przejechania magnesu, (np 1/50 sekundy) przeliczam na prędkość. Tylko do tego timera używam. Biblioteka...
Zdecydowanie lepiej zastosować gotowy mostek. Zrobić dobry mostek na mosfetach to sztuka. Większości się wydaje że wystarczy podpiąć fety do AVRka, ale niestety takie proste to nie jest. Przekaźnik równolegle służyłby do hamowania. Nie wiem czy to dobry pomysł - łatwo spalić mostek przypadkowym zwarciem. Te mostki też dobrze hamują, a na pewno same...
Funkcja DZIAŁA [syntax=cpp]//Data utworzenie: 20-09-2014 #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include <avr/pgmspace.h> #include "MYUART/myuart.h" #include "MK_TERMINAL/mk_term.h" #define REF_256 (1<<REFS1)|(1<<REFS0) #define REF_VCC (0<<REFS1)|(1<<REFS0) #define SR 8 typedef...
Czy zastosowanie transoptora szczelinowego będzie lepszym rozwiązaniem od wyżej wymienionego? Licznik obrotów będzie służył do obliczenia prędkości wiatru. Czujnik jest od stacji dyskietek, przeważnie w internecie spotykałem się z wersjami z 4 podłączeniami, mój ma 3, czy prawdopodobnie masy są podłączone razem?
Myślę ze jak już robić wskaźnik biegów to taki, który sam rozpoznaje biegi i wyświetla aktualny. Są takie urządzenia na alledrogo w cenie od 200zł w górę. Z tego co wiem to te urządzenia działają w motocyklach z elektronicznym wyświetlaczem prędkości i obrotów. Programowane w zależności od tych dwóch parametrów jak sądzę. Wyświetlacz na podstawie licznika...
Witam, Mam pytanie odnośnie liczników które są dostępne na allegro - obrotomierzy podłączanych do motocykla za pomocą nawinięcia kilku zwojów na przewód wysokiego napięcia ( ten od świecy ). Potrzebuje zrobić podobny licznik,zastanawiam się tylko jak najlepiej a zarazem najkrótsza linia oporu zliczać te impulsy ? Czy ktoś jest w stanie mi podać jakiś...
Właśnie siedzę nad modnym ostatnimi czasami komputerkiem do samochodu. Narazie korzystam z płytki edukacyjnej AVT3550, na której znajduje się ATMEGA 162. Pomiar drogi, prędkość i temperaturę mam już opanowane. Na timerze2 mam zrobione przerwanie co ok sekundę, w którym przeliczam trasę, impulsy podaję na INT2. Zostało spalanie, nad którym leżę. Czy...
1. Właśnie o PINy najbardziej mi chodzi... z tego powodu muszę użyć jakiś dodatkowy moduł. 2. Wysyłam sprzętowym SPI, ładuję 1 bajt, wysyłam, potem kolejny itd. (zależnie od ilości rejestrów) a na samym końcu zatrzaskuję. 3. PWM realizuję programowo poprzez timer, używam mojego licznika który w kolejnych przerwaniach się zwiększa. A następnie przyrównuję...
Próbowałem już wcześniej tak jak kolega hotdog powiedział i faktycznie poprawiło się przy wysyłaniu paczkami w odstępach czasowych. Ale gdybym miałstosować takie rozwiązanie to lepiej ustawić prędkość na 38400b/s i wysyłać ciągiem, bo z taką prędkościąnie mam problemów, a wyjdzie szybciej niż wysyłanie paczkami. A co do tego że wyzyłam 1000000B ciągiem,...
atmega 16 ma liczniki/timery na innych portach impp do Portb.0 to jest timer0 - impp(impulsy drogi) impw do Portb.1 to jest timer1 - impw(impulsy wtrysku) Porty są ustawione dobrze. Chciałbym zapytać czy ma może ktoś zamontowany komputer pfemka w aucie bo mam pewien problem z wyświetlaniem prędkości.Pokazuje mi prędkość co trzy kilometry tzn. 3,6,9,12...
Witam. Próbuję opanować USART w ATMega 8. Wewnętrzny oscylator 1MHz. Z komunikacją nie mam większych problemów. Jednak zastanawia mnie ustawianie prędkości transmisji. W moim programie ustawiłem prędkość transmisji na 9600bps. Rozumiem że 9600 bps oznacza wysłanie 9600 bitów w ciągu sekundy (jeżeli źle rozumuję to proszę o poprawienie mnie), a więc...
Wybrać cokolwiek współczesnego, a nie drogi, mało wydajny i kłopotliwy w programowaniu zabytek. Patrz tutaj: http://www.elektroda.pl/rtvforum/viewtop... Mam wrażenie, że porównujesz 8- i 32-bitowce mając świeżą wiedzę o 32-bitowcach i informacje tak sprzed 10 lat o 8-bitowcach. Z argumentów, które podałeś w tamtym wątku na dzień dzisiejszy...
Witam. Pisze program sterujący pracą silników krokowych. Pisałem cały czas tak program by mieć konktrolę nad prędkością każdego z silników osobno (chodzi o to że silniki mają różne przekładnie a chce by wszytskie elementy poruszały się z tą samą prędkością obrotową więc prędkość ustala się raz w programie i się jej później nie zmienia) Zastosowałem...
Jestem już przy końcu budowy mini komputera na ATMEGA 8535 wyśfietlacz niebieski 2x16 -pomiar temperatur w wielu punktach - pomiar prędkości - pomiar kilometrów - pomiar obrotów - sprawdzanie stanu zapięcia pasów - sprawdzenie zamkniecia drzwi itp Z zainteresowanymi podziele się informacjami Całość będzie w golfie mk1
Może prościej wybrać AVR'a który ma 16kB wewnętrznej pamięci? Z drugiej połowy tej 128-mki też można skorzystać, podpinając a16 pod pin IO i sterując nim programowo. Może prościej, ale przyzwyczaiłem się do swojego AVR'a, zresztą pamięć zewnętrzną nabyłem wcześniej. Co do programowego sterowania pamięcią... widziałem gdzieś próbę takiego rozwiązania,...
http://obrazki.elektroda.net/76_12533177... Jestem na etapie budowy dość skomplikowanego urządzenia do samochodu i trafiłem na barierę jakim był brak wystarczającej ilości portów do transmisji po RS232. Z atmela można uzyskać ich co najwyżej dwa a mi potrzeba ich trzy. Dość długo kombinowałem przy UART-ach tak równoległych jak i pracujących...
Sorry, że wam się wtrące ale też pracuje nad komputerkiem dla Vectry B Silnik na wtrysku paliwa więc wysarczy zmierzyć czas otwarcia wtryskiwacza i tu moje pytanko. Jak najlepiej odmierzyć czas otwarcia wtryskiwacza oraz ilość wtrysków na jednostke czasu? Wtryskiwacz jest sterowany masą wiec spoko można użyć przerwań z końcówki INT1 do wykrycia otwarcia...
Proponuje coś na zasadzie prostego SPI, z wykorzystaniem przerwania sprzętowego, niech linia z przerwaniem sprzętowym będzie linią zegara, dowolna linią danych, jeśli zmieni się stan na lini przerwania sprzętowego niech to przerwanie w programie odczytuje bit z lini danych i niech wraca do programu, a jeśli licznik bitów osiągnie odpowiedni stan, czyli...
Zawody na orientacje polegają na znajdowaniu oznaczonych w terenie punktów kontrolnych na podstawie mapy dostarczonej przez organizatora. Zabronione jest używanie urządzeń GPS, przez co podstawą do nawigacji jest kompas i licznik odległości. Nawigując odmierzamy krótkie odcinki między punktami w terenie (np. od mostu do skrzyżowania ze ścieżką w lesie),...
Generalnie zwierasz drugi koniec do masy, a do przewodu wpuszczasz impuls. I liczysz czas od momentu wpuszczenia. Jeśli nie wróci, to znaczy, że połączenie jest OK. Jeśli wróci, to znaczy, że przewód jest rozłączony. Znając prędkość rozchodzenia się impulsu w przewodzie i czas, po którym impuls wrócił możesz wyznaczyć odległość miejsca przerwania przewodu...
Tak sobie głośno myślę Właściwie to oglądając filmik przedstawiający współprace twojego tworu uderzyło mnie to ze te wskazania na cyferblacie są jakieś określę organoleptyczni e "przymulone " jeżeli moje xt włazi do setki w 7- 8 sekund to szybko twoja konstrukcja odbiła by się w postaci straconego papieru przy naszym nowoczesnym systemie egzekwowania...
No tak. Jakbyś zrobił sterowanie na demultiplekserze, to by się dało użyć PWM. Tak niestety nie. -------- Poprawka. Jaką masz prędkość taktowania timera 1? Bo myślę tak - mógłbyś, zamiast wpisywać stałą wartość do OCR, wpisywać nową wartość wyliczoną z bieżącej (bieżąca + delta modulo coś tam), a długość liczenia zostawić stałą (tryb fast-PWM lub ustaloną...
Witam kolegów mam taki problem potrzebuje programu do mierzenia prędkości obrotowej silnika. Idea pomiaru jest znana, wykorzystywany jest do tego transoptor obiciowy. Ale to nie jest celem mojego wywodu. Potrzebuje krótkiego pomiaru obrotów zbudowanego na licznikach. Oscylator zewnętrzny 8MHz. Układ już wykorzystuje globane przerwania pochądzące od...
Przejrzałem jeszcze raz ten wątek i jakby nie bardzo rozumiem problem. 1. Jeśli procesor ma czas na wykonywanie innych czynności poza przerwaniem, to dlaczego brakuje mu akurat tych dwóch cykli na powrót z przerwania? 2. Czy Twój procesor ma modyfikować dane w tablicy? Jeśli tak, musisz ograniczyć zakres poszukiwań do rodzin pozwalających na zapis w...
Widzę, że pojawiło się sie kilka znaków zapytania, a więc. Stanowisko, na jakim miałby być ten układ zamontowany składa sie z silnika 3 fazowego, przekładni mechanicznej połączonej z nim sprzęgłem elektromagnetycznym, hamownicy elektromagnetycznej na jednym z gniazd wyjściowych przekładni oraz mierzonego agregatu lotniczego. Założenie jest takie, aby...
mógłbym zastosować enkoder 5000 imp/obrót ale wtedy potrzebuje potężniejszego procka żeby ogarnął ten enkoder oraz LCD i sterowanie z PC. Przepraszam, że późno, ale jakbyś przepuścił przez prosty licznik (np. żeby zrobić 10 imp/obrót) i wtedy mierzyć i stabilizować czas pomiędzy imp. (czyli stabilizować prędkość obrotu).
Hej Przesyłam do atmegi8 za każdym razem 3bajty informacji. Prędkość układu to 38400. Atmega ma kwarc 16MHz. Powiedzcie mi, czy dobrze obliczyłem, że przesył 1 bajtu trwa około 208qs ?? Mam następujący problem. Wysyłam tych 3bajtowych ciągów dosyć dużo i do tej pory między odbieraniem bajtów w kodzie pisałem _delay_ms(1); . Było dobrze dopóki...
Nie wiem jakie wyjście mają wiatromierze, ale pewine będzie to albo jakiś sygnał analogowy (typu 0-5V oznaczające jakąś prędkość) albo prosty sygnał zmiany zbocza co obrót (tak jak licznik rowerowy, który ma magnes na kole). W takim przypadku wystarczy tobie dowolny mały mikrokontroler (np. popularna atmega8) która z jednej strony będzie miała sygnał...
Wszedzie szukam i nie moge znalezc, potrzebuje pojdzielic liczbe 16 bitowa przez 8 bitową w asemblerze Ostatecznie moze byc nawet 8 bit przez 8 bit, bez reszty, choc z reszta tez moze byc. Robie miernik prękości obrotej z enkodera (4096 na obrót). Licznik 16 bitowy zlicza impulsy, potem co 1sekunde wyzwala sie przerwanie ktore podzieli liczbe zliczonych...
Witam Ponieważ nie do końca odpowiadają mi podane rozwiązania, zacznę od tego co powinienem na początku podać - ossochosi :) Programuję w bascom. Buduję układ który ma zadziałać jak uproszczony ABS: 1. pomiar prędkości obrotowej każdego koła 2. porównanie tych prędkości 3. min. 10 razy na sekundę reakcja na utratę przyczepności Doszedłem do takiego...
Wzór na moment obrotowy: M = P/2*pi*f P-moc silnika(na wale, bez uwzględnienia sprawności-która może być od 0.2-0.98-zależnie od mocy silnika). Moc masz podaną na tabliczce silnika(zwykle moc dostarczoną-U*I) Zwykle U=const. A "I" mierzymy na oporniku<<mniejszym niż I-dopuszczalne silnika. To nam daje "prostokąt" I/U w którym mamy się "zmieścić"...
Ten program nie był jeszcze wtedy skończony, więc miał trochę błędów ;) Ogólnie chodziło mi o to żeby ktoś mnie upewnił w przekonaniu, że takie "skakanie" po kodzie jest normalne, a nie że np. mam jakąś złą wersję programu. No i tak też się stało ;). Dzięki za bardzo profesjonalne podejście to tego tematu ;). Tutaj wklejam już skończoną wersję programu,...
Panowie, w skrócie : Jest to model tylko laboratoryjny , nie zależy mi na super dokładności, chcę by pokazywał w przybliżeniu prędkość obrotową wiatraka. ze skalowaniem sobie dam radę. Wiatrak posiada jeden magnes neodymowy który kręci się wokoło i przy zbliżeniu się do hallotronu nabija impuls. Układ reaguje na ten impuls. W programie który napisałem...
Witam Chcę napisać program generujący na wyjściu przebieg, który odpowiadać będzie dwóm kołom zębatym umieszczonym na jednej osi w taki sposób, że zęby koła drugiego znajdują się między zębami koła pierwszego. Stosunek wzajemnego położenia kół zmienny. Prędkość (20-150rpm), ilość zębów koła(10-150). Myślę o wykorzystaniu w tym celu Licznika1 w trybie...
Witam ponownie. Chcę zrobić sterowanie silnikiem prądu stałego za pomocą mikrokontrolera Atmega16a. Sterowanie ma się odbyć za pomocą zmiennego sygnalu PWM - to dobrze rozumiem i zaprogramowałem. Prędkość obrotów będzie regulowana za pomocą przycisku. Pozostaje problem zliczania impulsów - na początku próbowałem programowo niestety bez oczekiwanego...
Witam Mam problem z programem odmierzającym czas. Mikrokontroler współpracuje z czujnikami ultradźwiękowymi. Ogólne założenie programu jest takie że generuje paczkę 8 impulsów prostokątnych o częstotliwości 40KHz następnie 4ms na wyciszenie układu. Generowanie paczki wykonywane jest za pomocą Timera2 w trybie CTC. Następnie za pomocą Timera1 powinien...
Mam projekt enkodera inkrementalnego który ma dwa pierścienie z polami generującymi sygnał 0 i 1. Między górnym i dolnym pierścieniem jest przesuniecie 90°. Więc tak wyglądają sygnały: http://obrazki.elektroda.pl/7174774200_1... Teraz tak, jedno pole na tarczy zajmuje 2°. Z racji tego że jest przesuniecie 90° mogę uzyskać rozdzielczość...
Spróbuj podłączyć to do pinu INT0, wg mnie pin ICP1 nie powinien ci dawać impulsów z "powietrza". Poniżej fragment dla przerwania od INT0 Też mnie to zastanawia, dlaczego pokazuje wogóle jakieś wartości. Ok tylko wiesz co ja chcę zmierzyć prędkość , a nie ilość obrotów i chcę to zrobić przy pomocy jednego licznika (timer1 16bitowy) bo pozostałe dwa...
Witam. Mam problem, podejrzewam z opóźnieniami w inicjacji LCD. Mam do zrobienia komunikacje szeregową pomiedzy ZL10AVR z ATmega32 a komputerem PC. Program działa tak, że jak nacisnę przycisk 1 (S12) to na komputerze uruchamia sie program notatnik (to zrobilem w programie LabView - ale to nie wazne). Chodzi mi o to - jak nacisnę ten przycisk to na wyświetlaczu...
Tak,zgadza się,po prostu z rozpędu wpisałem Timer3,bo pisałem wcześniej na Atmega128. Poprawiłem nieco kod,ale nadal mam problem z zatrzymaniem stopera. Czy może tryb CTC będzie tutaj lepiej współgrał? [syntax=c] #define F_CPU 16000000uL #include <AVR/io.h> //biblioteka we/wy #include <AVR/interrupt.h> //obsluga przerwan #include <util/delay.h>...
Bieżący program wygląda następująco: #include <avr/io.h> #include <avr/interrupt.h> unsigned char volatile p1[8] = {0x50,0x90,0x90,0x90,0x30,0x30,0x30... unsigned char volatile p2[8] = {0x90,0x90,0x90,0x90,0x30,0x30,0x30... unsigned char volatile p3[9] = {0x90,0x30,0x90,0x30,0x90,0x30,0x50...
Teraz mam kod tak: [syntax=c]#include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> #include "lcd.h" #define MASTER 1//jeżeli master to 1, jeżeli slave to 0 #if MASTER ==1 #define MOSI PB5 #define SCK PB7 #define CS1 PB4 #define CS2 PB3 #define CS1_0 PORTB &= ~(1<<CS1) #define...
Jak sygnał z "fotokomórki" wzmocnisz tak, że będzie pasował do RS-232, to możesz go podać na port RS-232 w PC (korzystając z faktu, że on ma kilka wejść, które przy zmianie stanu przynajmniej w jedną stronę generują przerwanie) - tylko musisz do tego: (1) umieć oprogramować ten port w systemie, jakiego używasz; i (2) umieć na komputerze precyzyjnie...
witam. zapytanie kieruje do osób które mają doświadczenie z w/w modułem i zwalczyły "dziwne" problemy problem: moduł nie daje się ping'ować konfiguracja: moduł iim7000a atmega 128 wyświetlacz LCD port rs232c kwarc 7372800Hz system operacyjny win xp, ubuntu płytka TCP/IP pro opis: po załadowaniu softu z bascom, ustawieniu ip w module na 192.168.0.8,...
Witam, w moim programie na atmegę 32 wykorzystałem timer0 oparty na zegarze procesora (8MHz) aby uruchamiać pewną funkcję ok. 100 razy na sekundę. Do programu postanowiłem dodać obsługę zewnętrznego kwarcu zegarkowego 32768Hz aby móc mierzyć w miarę dokładnie czas przy użyciu timera timer2. Po dopisaniu komend do obsługi kwarcu żaden timer nie działa....
Zanim przystąpiłem do prób z zaproponowaną procedurą do obsługi UARTu, przeprowadziłem testy siłowe za pomocą kodu: $regfile = "m16def.dat" $crystal = 16000000 $baud = 38400 Dim Licznik As Integer Dim Rozkaz As String * 2 Licznik = 0 Do Incr Licznik Print Licznik ; " : 1023:1023:1023:1023:1023...
Hej. Dzięki za pomoc. Działa trochę lepiej ale jednak dalej źle. Tym razem dane już się zmieniają w zależności od położenia drążka w nadajniku, ale druga zmienna zmienia się zawsze a jest zbyt mała żeby to była przerwa synchronizacyjna. No i nie wiem co to za dana na miejscu zerowym tablicy, w ogóle się nie zmienia. Jest niby ponad 8000 ale jak ustawie...
Chyba się nie zrozumieliśmy więc wyjaśnię dokładnie. Transmisję sprawdzałem na wszystkich prędkościach włączając w to 300 bodów, a cały czas testuję na "standardowym" 9600. Ale do rzeczy... Do tablicy wpycham np. 100 znaków i wszystie przechodzą przez transmisję którą inicjuję ustawieniem bitu UDRIE w rejestrze UCSRB. Wtedy pojawia się przerwanie SIG_UART_DATA...
Jeśli chodzi o uC to jestem raczej na poziomie początkującym(odczyt stanu przycisku, zapalanie diody, wyświetlacz LCD, termometr 1-Wire). Niestety jednak muszę zrobić projekt na uczelni, i prawdopodobnie będzie to licznik rowerowy. Dodam że jeszcze nie zacząłem robić, ale już mam kilka pytań(tak szukałem na forum i w internecie, ale nie znalazłem)....
To chyba nie kwestia wyważenia, tylko tego, że jest tak solidnie zamocowane, no i w końcu silnik od HDD jest dość mocny. Jest w tym sporo prawdy. Śmigło jest przykręcone w kilku miejscach a dodatkowo silnik ten ma tak zwartą konstrukcję, że mam wrażenie, że samochód mógłby po nim przejechać. Mimo to projektując płytkę starałem się rozmieścić elementy...
Pewnie że jest- ostatecznie program napisany w C jest zamieniany najpierw na asm. Nie znam asm- ale z tego co widzę wynika chyba że procesor jest sterowany impulsami zewnętrznymi i wystawia sygnały do sterowania silnikiem. Popraw mnie jeśli źle ten program zrozumiałem. Jeśli tak jest jak zrozumiałem to koncepcja jest błędna. No bo jak silnik ma zwalniać...
Usunąłem Wait 1 przy konwersji z DS18B20, działa, bez problemu ( na trzech przewodach ), tylko wyniki są opóźnione - tzn. wyświetlany wynik nie jest z aktualnego pomiaru, tylko z poprzedniego. Dodałem jeszcze dwa czujniki DS18B20. Ich zapis razem z godziną i datą na karcie jest jak najbardziej w porządku, tylko wyświetlanie trochę szwankuje - tzn. czasem...
Witam Próbuję wysłać, a następnie odebrać bajt danych z pamięci EEPROM 24C04. Niestety zamierzony efekt nie występuje, a brakuje mi już pomysłów co jeszcze można poprawić, dlatego bardzo proszę o przeanalizowanie poniższego programu i wskazanie gdzie są błędy. Po wgraniu programu nic się nie wyświetla ani na wyświetlaczu LCD, ani na terminalu PC. [syntax=c]...
Witam. Napisałem kod do PWM w trybie 14. Przy ustawieniu OCR1A = TOP dioda na nóżce D5 powinna się świecić. Przy ustawieniu OCR1A = 0 dioda na nóżce D5 powinna się nie świecić. Świeci w obydwu przypadkach co tu jest nie tak. #define F_CPU16000000UL//1MHz zegar procesora #include <avr/io.h> #include <util/delay.h> #include <string.h>...
Witam, próbowałem ostatnio przenieść mój program (wyłącznik czasowy) z Atmegi8 (działa idealnie) na Atmegę16 (gdyż ma więcej "nóżek"). Problem pojawił się przy pierwszym uruchomieniu - w miejscu, w którym uruchomione zostają przerwania program się resetuje. Zaznaczam od razu iż spędziłem wiele godzin szukając odpowiedzi w internecie, znalazłem nawet...
Wróciłem do rozgrzebanego projektu i aktualnie walczę z obsługą impulsatora. Użyty procesor to ATMEGA 16 z zewnętrznym taktowaniem 16MHz. PD2 (INT0), PD3(INT1) są skonfigurowane jako wejścia z podciągnięciem do 1 i do nich podłączone są piny impulsatora odpowiednio PD2 A i PD3 B (patrz załączony plik pdf). W przerwaniach chciałbym zliczać liczbę opadających...
Witam! W wykonywanym projekcie zapędziłem w pewien logiczny róg. Projekt jest wykonywany na rodzinie AVR, ale to ma mniejsze znaczenie. Problem jest następujący, muszę zliczać maksima dwóch niezależnych przebiegów sinusoidalnych (pochodzącego z enkoderów optycznych - elementy myszy komputerowej z lat 90) o częstotliwości maksymalnej 5kHz. Formowanie...
1. Bo mam - to nie jest powód - serwomechanizm kosztuje max 20zł 2. Ja szczerze mówiąc raczej nie spotykałem się z wykorzystaniem silnika krokowego do ustawiania wskazówki... 3 i 4 - jeśli ma to być projekt tylko naukowy, na którym chcesz się czegoś nauczyć, to ok, idź w tym kierunku, ale jeśli chcesz to umieścić w aucie to z silnikiem krokowym dałbym...
http://obrazki.elektroda.pl/2159092800_1... Witam, mój pierwszy projekt elektroniczny na Elektrodzie i w ogóle :) Licznik rowerowy widoczny na poniższym zdjęciu. Pomysł zrodził się w zeszłym roku, właściwie bez żadnego powodu. Zaczęło się od zabawy układami AVR - przez diody i przyciski, potem ekran z telefonu. W końcu padła bateria...
Co do samego prędkościomierza to sprawa nie jest skomplikowana. Podstawowe założenie zapewne będzie takie: jeden obrót koła = 1impuls. Procek natomiast niech zajmie się pomiarem czasu pomiędzy tymi impulsami (uruchamiasz sobie TIMER na czas pomiędzy kolejnymi imulsami). Mając te dane jesteś w stanie obliczyć prędkość oraz przejechane kilometry. Potrzebujesz...
To można na wał napędowy - o ile ten jest dostępny dać magnesik i zrobić a'la licznik rowerowy :) obwód koła, znamy, średnicę wału silnika to mamy później już samą matematykę i prędkość gotowa :) Pare wzorków przekształcić. Myślę że to będzie dokładniejsze niż pomiary laserami modelu jadącego z 70km/h (spalinowe podobno tyle wyciągają) to będzie trudno...
Witam. Potrzebuję zbudować licznik impulsów, który zliczałby impulsy z czujnika indukcyjnego. Nie wiem czy ktoś już robił coś takiego i ma jakieś materiały bo ja nie znalazłem nic konkretnego i interesującego. Interesowałby mnie jakiś projekt oparty na jakimś mikroprocesorze, najlepiej ATmega8 ponieważ mam z niż już trochę doświadczenia i parę sztuk...
Zrobiłem tak: [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 8000000 Config Lcdpin = Pin , Rs = Portc.5 , E = Portc.4 , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 Config Lcd = 16 * 2 Config Debounce = 1 Dim X As Word Declare Sub Impuls Config Pinb.0 = Output Config Pinb.1 = Input Config Pind.3 = Input Pind.3 = 1 Pinb.1 = 1 Cursor...
http://obrazki.elektroda.net/18_12232839... Witam wszystkich, Od niedawna jestem posiadaczem motocykla, no i jako elektronik założyłem od razu, że będzie on poddawany mniejszym bądź większym modyfikacjom. Na początek postanowiłem wykonać wskaźnik załączonego biegu. Myślałem, że może to zmniejszyć ilość sytuacji typu próba wrzucenia siódemki...
Dzięki jack63. Rzeczywiście chciałem przekładnik prądowy podłączyć do ADC Atmega8 lub Arduino według schematu: [url=https://openenergymonitor.org/forum... Do tego dorobić detekcję przejścia przez 0 napięcia (to jest bardzo proste). Atmega ma możliwość samplowania z prędkością ponad 10k sampli na sekundę, zatem pomiar prądu byłby...
Jestem początkujący w temacie AVR'ów, niedawno zakupiłem zestaw uruchomieniowy (od GoTronika) No i rozpocząłem naukę, język C szybko mnie do siebie zniechęcił (Nie oszukujmy się jest trudny dla osoby początkującej) więc tymczasowo postanowiłem zająć się bascomem (A potem do C planuję wrócić). No ale dosyć tego wstępu :> Posiadam procesor ATMEGA 32 i...
Mówisz masz. Ten kod jest prawidłowy dla AT45DB161 więc musisz pozmieniac niektore parametry jak by co. Nie wrzucęci tutaj całego kodu ale tylko niezbedne fragmenty. Zresztą całego nawet nie mogę umieścić :D. Właściwie to interesuje cie tylko zapis więc: unsigned char act_buffer=1; // zmienna globalna void write_to_flash(unsigned char flash_data) {...
Kawałek kodu : #include <avr/io.h> #include <avr/interrupt.h> // funkcje obsługujące przerwania #include "lcd.h" // funkcje obsługujące wyświetlacz LCD // #define DDR_Out DDRB // konfiguracja portu i pinu wyjścia #define PORT_Out PORTB #define Out PB0 #define clr_out bit_set(PORT_Out, bit(Out)) // operacje na pin-u...
Witam Mam układ, który mierzy dwie temperatury ( DS18B20 ), dwa napięcia ( PCF8591 ( pobiera czas ( PCF8563 ), a z powodu niedużego wyświetlacza ( 12 x 4 ) wskazania są zmieniane do 10 sekund po przepełnieniu Timer1. Układy PCF8563 i PCF8591 są podpięte z "zewnątrz" przewodami około 10 cm. Magistrala I2C ma obniżoną prędkość przez Config I2cdelay =...
http://obrazki.elektroda.pl/2954571700_1... Davide Gironi skonstruował automatyczną nawijarkę do przystawek gitarowych. Jeśli ktokolwiek z Was wykonywał kiedyś taki pick-up, to wie, jak trudne i jednocześnie, jak ważne jest dobre nawinięcie jego uzwojenia. Zaprezentowana nawijarka CNC pozwala istotnie uprościć ten proces. Układ sterowany...
atmega prędkość prędkość atmega licznik atmega
chrysler voyager zasilania dobry wzmacniacz 2x80w magnetofon kasetowy schematy
speakon łączenie drzwi rozsuwane
Schemat połączenia wiązki drzwi Nissan Patrol GU4 Lokalizacja elektrozaworu w lodówkach Samsung