(9 głosujących) Prezentowany układ jest miernikiem prędkości obrotowej silników elektrycznych, a główną jego zaletą jest bezinwazyjny pomiar polegający na oświetleniu wirującego obiektu diodą LED dużej mocy. Pomiar polega na ustawieniu częstotliwości błysków zgodnej z częstotliwością obrotów (ustawieniu nieruchomego obrazu po oświetleniu światłem stroboskopowym z diody LED) za pomocą impulsatora. Pomiar można dokonywać bez zatrzymania badanego urządzenia. Układ został zbudowany w oparciu o mikrokontroler ATMEGA8, a ustawione obroty prezentowane są na wyświetlaczu LCD. Dodatkowo układ pokazuje również błąd wynikający z zaokrąglenia wyliczonych w programie wartości dla podzielnika timera, natomiast pomiary częstotliwości generowanych błysków pozwoliły zrobić z układu miernik, a nie tylko wskaźnik obrotów. Sterowanie odbywa się za pomocą enkodera obrotowego i sześcioprzyciskowej klawiatury. Całe urządzenie może być zasilane z baterii, gdyż ze względu na impulsowy charakter pracy diody całość nie pobiera dużo prądu. Układ z powodzeniem zmieści się w popularnej obudowie KM35, w której znajdzie się też miejsce na baterię 9V.
Działanie:Schemat ideowy układu znajduje się na rysunku poniżej: Sercem układu i jego najważniejszą częścią jest mikrokontroler U1 (ATMEGA8-16AU), który pracuje na taktowaniu z rezonatora kwarcowego X1 (16MHz). Dodatkowe kondensatory C1 (22pF) i C2 (22pF) są konieczne do poprawnej pracy rezonatora. Jako interfejs programujący wykorzystane jest złącze Prog, które zawiera zestaw sygnałów potrzebnych podczas programowania szeregowego. Złącze to jest konieczne gdyż mikrokontroler jest w obudowie SMD co uniemożliwia zaprogramowanie w układzie zewnętrznym. Kondensator C5 (100nF) filtruje zasilanie mikrokontrolera. Kondensatory C6 (100nF) i C7 (100nF) łagodzą zbocza sygnału wygenerowanego przez impulsator IMP, co ułatwia jego bezproblemową obsługę w programie. Przyciski S1 - S6 (uSwitch) stanowią dodatkową klawiaturę urządzenia. Elementem generującym błyski świetlne jest dioda LED o mocy 0.5W, jej prad ograniczony jest przez rezystor R4 (30R/2W), a sterowana jest za pomocą tranzystora T2 (BC337) i rezystora R3 (330R). Dioda podłączona jest bezpośrednio do zasilania, z pominięciem stabilizatora, aby zminimalizować wpływ impulsów prądowych na działanie mikrokontrolera i odciążyć stabilizator napięcia U2 (78L05). Kondensatory C3 (220uF) i C4 (47uF) są konieczne do poprawnej pracy stabilizatora. Prezentacja wyników pomiaru odbywa się na wyświetlaczu W1 (LCD 16x2). Jego kontrast ustawiany jest za pomocą P1 (10k) a podświetlanie jest możliwe do włączenia programowo za pośrednictwem T1 (BC556), R1 (47R) i R2 (3,3k). Budowa:Układ z powodzeniem można zbudować w oparciu o płytkę drukowaną dostępną tutaj. Rysunek w odbiciu lustrzanym dostępny jest tutaj. Układ jest prosty w montażu, lecz zawiera elementy SMD których przylutowanie może sprawić problemy początkującym. Pracę należy rozpocząć od wlutowania dwóch zworek. Następne w kolejności powinny być kondensatory i rezystory SMD, mają to być elementy w popularnych obudowach 0805 (2x1.2mm). Następny w kolejności powinien być mikrokontroler U1, przy którym należy zwrócić uwagę na numery wyprowadzeń (przyda się tutaj rysunek montażowy w odbiciu lustrzanym). Przyciski powinny mieć długość ośki 15mm i należy je tak wlutować aby minimalnie wystawały nad wyświetlacz LCD włożony w złącze szufladkowe, będzie to ważne przy montowaniu płytki w obudowie. Podobnie sprawa wygląda z impulsatorem. Potencjometr P1 musi być w obudowie stojącej aby z boku można było poregulować kontrastem przy włożonym LCD. Płytka została tak zaprojektowana, że z łatwością pasuje do popularnej obudowy KM35. Wszystko jest na płytce aby nie było konieczności łączenia przycisków przewodami. Przy wycinaniu dziur w obudowie można posłużyć się rysunkiem z rozkładem dziur, specjalnie przygotowanym w tym celu. Należy go wkleić w środku obudowy za pomocą taśmy i wiercić przez rysunek. Ułatwi to znacznie wykonanie obudowy. Układ został przewidziany do zasilania 9V z baterii, jednak nic nie stoi na przeszkodzie aby wykorzystać zasilacz o napięciu 7-12V. Pomocą w konstrukcji może okazać się schemat montażowy dostępny tutaj. Dla montażu SMD pomocny będzie także rysunek montażowy w odbiciu lustrzanym, dostępny tutaj Wykaz Elementów:1x Złącze Śrubowe ARK2(podwójne) 1x 3,3k 2x 22pF 1x Rezonator Kwarcowy 16MHz Programowanie:Kod Źródłowy do miernika został napisany w BASCOM AVR firmy MCS Electronics (http://www.mcselec.com/). Program przedstawiony jest poniżej: '************* Konfiguracja uC ***************** '*********************************************** $regfile = "m8def.dat" $crystal = 16000000 Config Portb = &B00000000 : Portb = &B11111111 Config Portc = &B11111111 : Portc = &B11111111 Config Portd = &B00111111 : Portd = &B11111011 'Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0 'mirley UPT M162 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0 Config Lcd = 16 * 2 Deflcdchar 0 , 3 , 2 , 2 , 2 , 2 , 2 , 2 , 3 Deflcdchar 1 , 24 , 8 , 8 , 8 , 8 , 8 , 8 , 24 Deflcdchar 2 , 4 , 4 , 31 , 4 , 4 , 32 , 31 , 32 Cls Cursor Off Noblink I1 Alias Pinb.1 I2 Alias Pinb.0 X01 Alias Pinb.5 X10 Alias Pinb.4 X100 Alias Pinb.3 X1000 Alias Pinb.2 Sw1 Alias Pind.6 Sw2 Alias Pind.7 Led Alias Portd.3 Light Alias Portd.2 Config Timer0 = Timer , Prescale = 256 Enable Timer0 : On Timer0 Prztimer0 Config Timer1 = Timer , Prescale = 1 Enable Timer1 : On Timer1 Prztimer1 Enable Interrupts '********** Konfiguracja uC Koniec ************ '****************** Zmienne ******************* '*********************************************** Dim D As Word , A As Word , X As Long , Dim Obr As Long Dim T As Single , T2 As Single Dim Autowysw As Byte Dim In1 As Bit , In2 As Bit Dim Tryb As Byte Dim Rezultat As Integer Dim F4ms As Bit Dim Div As Word Dim Div_licz As Word , Div_pulse As Byte Dim Licz_sw(2) As Byte '************* Zmienne Koniec **************** '************ Warunki Poczatkowe *************** '*********************************************** Obr = 10000 Gosub Przelicz Lcd "Obrotomierz v1.0" Lowerline Lcd " by mirley" Wait 1 Cls Gosub Wyswlcd '******* Warunki Poczatkowe Koniec *********** '************** Petla glowna ****************** '*********************************************** Do In1 = I1 In2 = I2 Rezultat = 0 Select Case Tryb Case 0: If In1 = 1 And In2 = 1 Then Incr Tryb 'jezeli dwa rozwarte Case 1: If In1 = 1 And In2 = 0 Then Tryb = 2 If In1 = 0 And In2 = 1 Then Tryb = 3 Case 2: If In1 = 0 And In2 = 1 Then Rezultat = 1 Tryb = 0 End If Case 3: If In1 = 1 And In2 = 0 Then Rezultat = -1 Tryb = 0 End If End Select If Rezultat <> 0 Then Autowysw = 11 '10x4ms A = 10 If X01 = 0 Then A = 1 If X10 = 0 Then A = 100 If X100 = 0 Then A = 1000 If X1000 = 0 Then A = 10000 If Rezultat = 1 Then Obr = Obr + A If Obr > 420000 Then Obr = 420000 Else Obr = Obr - A If Obr < 600 Then Obr = 600 End If Gosub Przelicz End If If F4ms = 1 Then F4ms = 0 '*********************************************** If Sw1 = 0 Then Incr Licz_sw(1) If Licz_sw(1) = 20 Then Obr = Obr * 2 If Obr > 420000 Then Obr = 420000 Gosub Przelicz Gosub Wyswlcd End If Else Licz_sw(1) = 0 End If If Sw2 = 0 Then Incr Licz_sw(2) If Licz_sw(2) = 20 Then Obr = Obr / 2 If Obr < 600 Then Obr = 600 Gosub Przelicz Gosub Wyswlcd End If Else Licz_sw(2) = 0 End If If Autowysw > 1 Then Decr Autowysw Else If Autowysw = 1 Then Gosub Wyswlcd Autowysw = 0 End If End If '*********************************************** End If Loop End '************ Petla glowna Koniec ************** '************ Przerwanie timer 0 *************** '*********************************************** Prztimer0: Timer0 = 5 Set F4ms Return '******** Przerwanie timer 0 Koniec ************ '************ Przerwanie timer 1 *************** '*********************************************** Prztimer1: Timer1 = D 'max 65535 Incr Div If Div >= Div_licz Then Div = 0 If Div < Div_pulse Then Led = 1 Else Led = 0 Return '******** Przerwanie timer 1 Koniec ************ '*********************************************** Przelicz: If Obr >= 4800 Then Div_licz = 32 Div_pulse = 1 'wynika z parametryzacji po dokonaniu pomiarów T = 0.000000258 * Obr ' hi T = T * Obr T2 = 0.995658 * Obr T = T + T2 T = T + 85.3782 T = 300000000 / T Else Div_licz = 256 Div_pulse = 8 'wynika z parametryzacji po dokonaniu pomiarów T = 0.0000018863 * Obr 'low T = T * Obr T2 = 0.999905 * Obr T = T + T2 T = T + 0.1899438 T = 37500000 / T End If X = T 'rzutowanie D = 65536 - X T2 = T - X T = T2 / T 'błąd procentowy wynikający z zaokrąglenia T = T * Obr 'blad w obr/min Return '*********************************************** Wyswlcd: Locate 1 , 2 If Obr < 100000 Then Lcd " " If Obr < 10000 Then Lcd " " If Obr < 1000 Then Lcd " " X = Obr / 10 Lcd X ; "." X = Obr Mod 10 Lcd X Locate 1 , 10 Lcd Chr(0) ; "n/min" ; Chr(1) Locate 2 , 2 T = T * 100 X = T If X < 10000 Then Lcd " " If X < 1000 Then Lcd " " X = X / 100 Lcd Chr(2) Lcd X ; "." X = T X = X Mod 100 If X < 10 Then Lcd "0" Lcd X Locate 2 , 10 Lcd Chr(0) ; "n/min" ; Chr(1) Return '*********************************************** Kalibracja i pomiary:Po zaprogramowaniu układu wstępną wersją programu i wyliczeniu podzielnika timera, pomiary wykazały odchyłki generowanej częstotliwości w stosunku do teoretycznie spodziewanej. Jest to spowodowane pracą z podzielnikiem timera równym 1, czasem jaki jest potrzebny na obsługę przerwania i czasem przeładowania wartości w rejestrze timera. W tabeli niżej zostały zawarte pomiary częstotliwości generowanej na wyjściu (f_p) w stosunku do częstotliwości jaka powinna być teoretycznie (f_i) oraz odpowiadające im wartości obrotów (obroty pomnożone są przez 10 aby uzyskać dokładność nastaw 0.1 obr/min). Dane z tabelki zostały podzielone na dwie części, od 60 do 480 obr/min i drugi przedział od 480-42000 obr/min. Podział ten wynika z działania programu, w którym działają dwa zakresy pomiarowe. Na wykresach poniżej widać punkty pomiarowe (zależność obrotów teoretycznych od obrotów zmierzonych, przeliczonych z pomiaru częstotliwości) wraz z dopasowanymi krzywymi kalibracyjnymi: Jako krzywą kalibracyjną została przyjęta zależność kwadratowa postaci: [tex]y = a \cdot x^2 + b \cdot x +c[/tex] gdzie y - obroty teoretyczne, x - obroty zmierzone, a,b,c - współczynniki wynikające z regresji. Dopasowanie krzywej zostało wykonane w programie gnuplot, a stałe współczynniki dopasowania dla dwóch zakresów pracy układu przedstawione zostały poniżej: zakres 60-480 obrotów: a= 1.88622104239405e-006 b= 0.999905059864626 c= 0.189869882714651 zakres 480-42000 obrotów: a= 2.54573967680295e-007 b= 0.996905226980814 c= 1.00037985789872 Po wstawieniu parametrów do programu układ staje się miernikiem a nie tylko wskaźnikiem obrotów. W tabelce poniżej zostały zawarte wyniki pomiarów częstotliwości generowanej przez układ w zależności od ustawionej na wyświetlaczu. Błąd generowanej częstotliwości jest ułamkiem procenta wartości żądanej: Zdjęcia Projektu:
|
|||||||||||||||||||||||||||
obrotomierz
Projekt ciekawy, powiedz tylko czy przy średnio nasłonecznionym pomieszczeniu da się zrobić pomiar ew. na dworze? Czy taka dioda wystarcza? Rozumiem że kalibracja polega na wprowadzeniu tych stałych?Bo nie napisałeś wyraźnie jak należy go skalibrować.Jak byś dał radę pokaż jakiś film z przykładowym pomiarem.
Ciekawi mnie to i bym sobie z chęcią wykonał.
pozdrawiam.
Co cie nie zabije to cie wzmocni.
(Nie dotyczy kondensatora 230V)
Re: Obrotomierz
Da się zrobić pomiar, w dzień.... testowałem na swoim biurku w dzień. Filmiku nie pokażę bo już nie mam układu przy sobie. Pomiar polega na ustawieniu nieruchomego obrazu znaku szczególnego na obracającej się osi silnika, lub innym wirującym elemencie. Na wyświetlaczu będzie wtedy można odczytać wartość prędkości obrotowej.
kalibracja została wykonana przeze mnie i wydaje mi się że powinna być dobra dla innym mikrokontrolerów Mega8, wkońcu to układ cyfrowy i powinien się zachowywać tak samo. Przedstawiłem metodę kalibracji żeby było jasne jak to jest wyznaczone. Jedyne co można sprawdzić to czy częstotliwość dla kilku wybranych prędkości zgadza się z teorią (wskazaniem na wyświetlaczu, wskazanie/60 daje częstotliwość). Trzeba mieć do tego dobry miernik bo przebieg wyjściowy ma wypełnienie 1/32
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
obrotomierz
W takim razie ok.Na czym polega samo mierzenie to wiem miałem kiedyś styczność z tego typu urządzeniem stąd moje zaciekawienie nim.Jak nie wypali projekt zegarka TXT z twojej stronki(koncepcje mam dobrą ale trochę ciężko uzyskać zadowalający efekt) to sobie zrobię to.
pzdr
Co cie nie zabije to cie wzmocni.
(Nie dotyczy kondensatora 230V)
czy da rade przerobić program
czy da rade przerobić program aby liczył obroty w motocyklu??
Re: Obroty
jak liczył obroty w motocyklu? jadącego motoru?
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
ja myślałem żeby podpiąć się
ja myślałem żeby podpiąć się pod przerywacz zapłonu i liczyć impulsy
obrotomierz
To całkiem inna metoda pomiaru. To jest układ w którym kierujesz światło z diody na ruchomą wirującą część sprawdzasz kiedy wizualnie obiekt przestanie wirować następnie odczytujesz wynik z wyświetlacza co masz napisane w opisie.Nie nadaje się do pomiaru obrotów w motocyklu.
Co cie nie zabije to cie wzmocni.
(Nie dotyczy kondensatora 230V)
przyciski
A ja bym poprosił jeszcze króciutko o przyciskach jeżeli można.
Re: Przyciski
Impulsatorem ustawiasz obroty +/-1 obrót, jak trzymiesz do tego przycisk 0,1x to kręcisz co 0.1 obrotu. Jak trzymasz przycisk x100 to imulsator zwiększa stan obrotów co właśnie tyle. Przyciski x2 i /2 mnożą i dziela wskazane obroty przez 2
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
impulsator
czy impulsator musi być z przyciskiem? tam gdzie zawsze wszystko zamawiam w TME jest tylko bez przycisku.
ED16112O Enkoder do PCB, pionowy, plastikowa ośka
Typ czujnika enkodery mechaniczne
Właściwości wyjście z 2 bitowym kodem Graya, ośka 6 mm
Temperatura pracy -20...70°C
Rozdzielczość 24 imp/obrót
Prąd pracy maks. 500 ?A
Napięcie pracy maks. 50 V AC
Wymiary zewnętrzne 6,5 x 17,6 x 16 mm
Re: Miernik obr
Impulsator nie musi być z przyciskiem, gdyż nie jest on wykorzystywany w projekcie
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
obrotomierz
Swietny obrotomierz działa bez problemu po niedzieli potestują go w pracy na u silnikowców i pokażę
jak działa w praktyce.
pomiar obrotów komputerowego wiatraczka
Witam
Jestem kompletnym amatorem jeśli chodzi o takie rzeczy, dlatego pytam czy da się tym urządzeniem zmierzyć obroty wiatraczka kompuerowego?
Jest to wkońcu obracająca się część :D
Jeśli się da to jak? zaznaczyć np. na biało jedną z krawędzi łopatki wiatraczka ? Co oznacza że przed wykonaniem pomiaru trzeba zatrzymać dany obiekt ?
mam nadzieję że wyraziłem się w miarę jasno
Re: Wiatraczek
W przypadku wiatraczka nawet nie będziesz musiał nic znaczyć, bo prawdopodobnie zobaczysz stojące łopaty wirnika jak dostroisz częstotliwość. Ogólnie jest to do pomiaru silników w różnego typu maszynach ale wentylator też zmierzysz
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
A jeszcze jedno pytanie - czujnik ?
W tym układzie rolą "czujnika" jest oko ludzkie jeśli dobrze rozumiem?
Jak bardzo jest taki pomiar precyzyjny ? Nie dałoby się tego przerobić i dołożyć jakiś fotodetektor ? Który by wspomógł człowieka?
Re: Pomiar
Czujnikiem można powiedzieć że jest ludzkie oko... niczym tego dokładniej nie zmierzysz wykorzystując ta metodę. Nie bardzo mam pomysł jak chciałbyś wykryć czy obraz się porusza czy nie za pomocą fotodetektora, ta właściwość wynika z bezwładności ludzkiego oka.
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
kompilacja
Mam problem z wsadem otóż jak go skopiuje do Bascom'a i jak dam kompilację to wyskakują mi dwa błędy.Czym to może być spowodowane??Za informacje wielkie dzięki Pozdrawiam
Re: kompilacja
a jakie te błędy Ci wyskakują?
Moja strona w powijakach
Witam Już mam po problemie bo
Witam Już mam po problemie bo zablokował mi się uC i muszę kupić nowy hehe przez moją nie uwagę i przypadek dałem zły oscylator w Fuse Bita-ch muszę teraz kupić nowy ,bo ten nie nawiązuje komunikacji.A błędy miałem gdy skopiowałem wsad i zrobiłem kompilację.;pozdrawiam
Re: kompilacja i błędy
jeśli chodzi o błędy to trzeba było trochę dokładniej, a jeśli chodzi o złe fusy to nie musisz kupować nowego procka. na jakimś innym napisz program:
i teraz:
- umieść zablokowany kontroler w programatorze
- zaprogramowany wyżej podanym softem procesor zasil w innym układzie
- podpinając się pod port.b zaprogramowanego proca, podaj sygnał na XTAL1 tego zablokowanego
- nie odłączając taktowania otwórz zablokowany procek w programatorze i przestaw mu fuse bits.
ja odblokowałem sobie tak dwie atmegi8.
tylko nim zaprogramujesz inny procek powiedz jaki będziesz programował, to Ci podpowiemy jakie ustawić fusy. ja korzystam z bascoma więc tylko na tej platwormie mogę Ci pomóc.
Moja strona w powijakach
Chodzi mo to że jak
Chodzi mo to że jak skompiluje wsad do bascoma to wyrzuca 2 błędy że plik jest za duży że wynosi 4096bytes i nie wiem co z tym zrobić.A procka jutro spróbuje wskrzesić jak się nie uda to bee musiał kupić.Do wskrzeszenia myślę użyć uC 89C51.Dzięki za pomoc tylko co z tym wsadem zrobić.pozdrawiam
Re: co z tym zrobić?
spróbuj w bascomie zaznaczyć opcję OPTIMIZE CODE.
Moja strona w powijakach
Witam panowie i mam tylko
Witam panowie i mam tylko jedno pytanie odnośnie kompilacji a mianowicie czemu mu za każdym razem wyskakuje 2błędy że plik jest za duży.Opiszę jak robię kompilacje a więc otwieram Bascom'a i w nim otwieram plik z wsadem i kompiluje i lipa.Mam prośbę jak ktoś by mi mógł pomóc z tym to był bym bardzo wdzięczny,albo jak ktoś by mi mógł przesłać plik bin tego wsadu.Dzięki za wszelką pomoc
Pozdrawiam
re: błędy
co kolega opowiada? ja przed chwilą skompilowałem i jest gites. 0 błędów. a pamięci jeszcze masa została bo wykorzystane tylko 53%. zaznacz OPTIMIZE CODE.
Moja strona w powijakach
Ale naprawdę ja tak mam i nie
Ale naprawdę ja tak mam i nie wiem co zrobić Jka byś mógł mi wysłać format bin był bym bardzo wdzięczny a i gdzie się wyłącza Jtag w Duse Bita-ch.Dzięki za pomoc
pozdrawiam
Re: plik BIN
Miernik strobo.BIN - zip
Moja strona w powijakach
Dzięki wielkie Ale nie wiem
Dzięki wielkie Ale nie wiem czemu u mnie się tak dzieje ściągam jeszcze raz Bascom'a demo do Avr jutro muszę po walczyć z tymi Fuse Bit'ami.Mam jeszcze do Ciebie czy może masz gdzieś screen jak mają być ustawione w Bascom-ie??Lub jak możesz mi wytłumaczyć jakie mają mieć wartości i gdzie się wyłącza tego JTAG-a.Naprawdę jeszcze raz dzięki Pozdrawiam
http://img709.imageshack.us/i
http://img709.imageshack.us/i/bdbascom.png/ tutaj jest to o mi się pokazuje po kompilacji nie wiem czemu.
Re: Fusy
ustaw taktowanie na 16MHz na zewnętrzny kwarc. co do JTAG'a to nie mam pojęcia. nigdy tego nie ustawiałem.
Moja strona w powijakach
I dalej to samo nie mam
I dalej to samo nie mam pojęcia czym to może być spowodowane.Jak by ktoś miał jakiś pomysł to proszę o poradę.Dziękuje za pomoc
Pozdrawiam
Re: Miernik obrotów
W bascomie AVR DEMO nie skompilujesz tego programu bo bascom demo ma ograniczenie do 4kB kodu a skompilowany program ma więcej niż 4kB. Potrzebna jest pełna wersja bascoma.
Taktowanie ma być ustawione na zewnętrzny kwarc (External crystal [CKSEL=1111]) a SUT ma być na 11. Interfejs JTAG ma być bezwzględnie wyłączony (disable) bo wyswietlacz LCD nie będzie działał. JTAG wykorzystuje piny na których aktualnie tutaj jest LCD
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
programtor ??
witaj oglądałem twoje projekty całkiem niezłe :]
pytanko do ciebie jakim programatorem wgrywasz programy do scalakow
Re: Programowanie
Używam USBASPA, tego opisanego na swojej stronie
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
odczyty
Czy ktoś testował to urządzene, ja zauważyłem że przy odczycie obrotów np jest 2000 i wygląda że obraz jest nieruchomy podobny efekt jest przy 4000 tyś i 1000.Tak jakby pomnożyć i podzielić rzeczywiste obroty i conajmniej dwa wyniki są łudząco podobne i nie znając rzeczywistych obrotów trudno jest zdecydować się który zatrzymany obraz jest prawdziwy dla prawidłowych obrotów.
I badzo trudno było mi przekonać kolegów ,że odczyt jest prawidłowy.
Witam. Mam pytanie .Rozmyślam
Witam. Mam pytanie .Rozmyślam nad budową symulatora czujnika położenia wału korbowego w samochodzie. Czujnik tak podczas kręcenia się wału wytwarza przebieg sinusoidy ( może byś prostokątny) z tym że :powiedzmy na 60 impulsów ,2 impulsy koło siebie są "puste"- czyli powiedzmy 58 impulsów prostokątnych i przerwa 2 impulsów po czym kolejne powtórzenie . chodzi mi o sposób realizacji tego "przerwania". Twój projekt wytwarza regulowana częstotliwość wyjścia na diodę LED . Myślałem nad podłączeniem do tego wyjścia bramki 4011 -czyli jedna noga na to wyjście a druga na wyjście które co 58 impulsów będzie blokować bramkę na czas 2 impulsów.Czy mógłbyś przedstawić modyfikacje kodu dla takiego :przerwania". Wiem że pytanie może nie w tym temacie ale nie ukrywam że szukałem informacji na temat jakiegoś kodu generatora i trafiłem na Twoją stronę.
Pozdrawiam
Re: Obrotomierz
Nie trzeba tu żadnych bramek logicznych ja bym poprostu w programie zbramkował sygnał idący na diodę. Zmień procedurę obsługi timera aby wyglądała tak:
W zmiennych zadeklaruj jeszcze zmienna impuls jako byte, oraz Led_en jako bit
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
odp.
Oki program działa tak jak powinien ale impulsy są nie proporcjonalne (szpilki). Co zrobić by sygnał generowany miał przebieg prostokąta 50%/50%.??
Re: Stroboskopowy miernik
Miały być szpilki bo to stroboskop wkońcu...... Zmień parametry w procedurze przelicz:
Chodzi o zmianę w dwóch linijkach gdzie jest Div_pulse, zamiast 1 i 8 powinno być 16 i 128
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
nie działa mi :( dekoder obrotu
Witam !
Napisałem sobie menu na wyświetlacz i zastosowałem dekoder obrotu z przyciskiem tyle że mi to nie chce działać. Wzorowałem się na Twoim programie. Co powinienem zrobić / dopisać by mi to chodziło sensownie?
Chodzi o to że chcę dodawać/odejmować po przez obrót wartości K , H1 i H2.
Dzięki za odpowiedź.
Re: Impulsator
Tak to nie będzie działać.... w programie masz pełno poleceń, które wstrzymują działanie programu a tak nie może być. W do loop musi cały czas być odświerzana procedura impulsatora jak chcesz aby on działał. Reszta programu musi być taktowana timerem i wykonywana w do loop wtedy kiedy flaga się ustawi.
Zadeklaruj timer tak samo jak ja mam w programie, wrzuć do do loop obsługę impulsatora i co 1s w do loop wyświetlaj na LCD wartość zmiennej rezultat
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
No ale jakby zastosować w
No ale jakby zastosować w pętli Do-Loop dla H1 H2 i K by odczytywał poprzez Timer to by chyba się udało ? Bez Timer-a to jedynie na mikrostykach jak w temacie na elektrodzie . To menu mi wyszło jak chciałem. Nie za bardzo mi się uśmiecha myśleć nad nowym Menu. Może by się i dało ale i tak masę czasu spędzam przy lutownicy i kompie. Pozdrawiam.
Skoro musi być stale
Skoro musi być stale odczytywany w pętli do-loop to jedynie wstawienie tej części Twojego programu odpowiadającej za odczyt w KAŻDE podmenu (Menu1_h , Menu2_h i Menu1) może być sensowne. Bo te pętle się "obracają" dopóki nie nacisnę klawisza PinC.0 . Dobrze rozumuję? Zapewne i Start Timer też musi być (jak i Stop Timer) w takiej pętli. Dobrą drogą idę?
Re: Enkoder
Według mnie idziesz złą drogą..... po co ci te pętle do loop until.... wstrzymuje to cały program. Napisałem już dużo programów ale takich konstrukcji nie potrzebowałem. Timer ma działac cały czas jeśli zajmuje się taktowaniem programu. Powinna być jedna pętla Do loop główna i tyle. Bezpośrednio w niej sprawdzany jest enkoder a co jakiś czas wykonywane są inne rzeczy np co 4ms obsługa pozostałych klawiszy,a co 100ms np wyświetlanie itd. Zanim zaczniesz pisac to od nowa to poczytaj moje programy do różnych układów. Spróbuj zrozumieć o co chodzi
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
dot. miernika obrotów
Witam, na wstępie zdradzę ze jest to mój pierwszy uklad ktory udalo mi sie zlozyc i dzialal super. Musiałem się widocznie nieumiejętnie z nim obchodzić, bo teraaz mam taki objaw.
Chciałbym zapytać ,co może byc powodem iż pomimo widocznej reakcji na ruch potencjometra oraz przełączników /2 lub x2 (dioda miga i zwiększa / zminiejsza częstotliwosc świecenia) to na całej długości wyświetlacza widnieją "kwadraty" (tak jakby kontrolnie zaświeciły się wszystkie pola wyświetlacza).
Czy to może oznaczać ,że konieczne jest ponowne zaprogramowanie mikroporcesora ?
Jak to zrobić ?
Za odpowiedź oraz wszzelkie wskazówki z góry dziękuję.
Pozdrawiam
straszne rzeczy
Jeśli litery/napisy są też na tle kwadratów wyreguluj kontrast.
"Cierpliwym być musisz, by wiedzę zgłębiać tajemną, gdyż ciemna strona mocy niszczącą i silną jest.".
Nie, niestety ani litery ani
Nie, niestety ani litery ani cyfry nie są wyświetlane.
Re: LCD
Popatrz dokłądnie na płytkę, i poszukaj zwarć bądź przerw w liniach sterowanie wyswietlaczem. Czy napewno RW wyświetlacza jest podłączony do masy?
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Wyłączanie stroboskopu.
Witaj. Bardzo fajny projekt.
Czy jest jakiś sposób na wyłączanie urządzenia, czy tylko odłączenie baterii?
Po co jest to wycięcie w pcb?
Pozdrawiam
Odp.Wyłączanie stroboskopu
Po małej przeróbce kodu mógłbyś przełaczać go do trybu POWERDOWN. Potrzebujesz jednak wolne wejście zewnętrznego przerwania INT0 albo INT1 bo tylko to może go wybudzić albo WatchDog.
Napisałem taki gotowiec TUTAJ Włącza coś, albo wyłącza jednym przyciskiem.
BARTek
Moja strona
Re: Płytka
Wycięcie umożliwia skręcenie obudowy :)
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.