[syntax=c]x = 0; for (p = bufor; *p >= '0' && *p <= '9'; p ++) x = x * 10 + *p - '0';[/syntax]
Nie wystarczy itoa? http://pl.wikibooks.org/wiki/C/itoa Ja wiem, wiem - biblioteki zwiększają zajętość flash... , ale myślę (w tym przypadku), że jeżeli projekt jest mały i masz jeszcze trochę flash'a i RAM oszczędzanie - poprzez pisanie własnych funkcji konwertujących int na string nie ma sensu. Ale wracając do twojego kodu: W twoim przykładzie brak...
wilk125: jeszcze mam takie pytanie, jeśli kwarc zew. mam 8MHz i preskaler ustawiony jest na 8, to jeden takt timera1 w tym przypadku będzie odpowiadał 1us ? Tak Tak powinno być TCCR1B, moja pomyłka Przy odczycie wartości z TCNT1, sróbuj najpierw odczytac TCNT1L(młodszy bajt TCNT1), i następnie TCNT1H (starszy bajt). Chociaż odczyt jak wyżej tez powinien...
Wspomniana przez CH.M. metoda (opisana przez Atmela) nadaje się wyłacznie do sygnałów wolnozmiennych, takich jak z czujnika ciśnienia czy mostków. Z precyzyjnym źródłem napięcia nie byłoby duzo kłopotów - maxim robi gotowce o dokładności kilku ppm niemniej precyzyjne źródło napięcia przy metodzie oversamplingu nie jest konieczne. Założenie tej metody...
Czy dasz rezystory 2W, czy 5W to będą się nagrzewać tak samo (pomijam ew. wzrost masy i co za tym idzie powierzchni rozpraszającej energię). W końcu na obu wydzieli się taka sama moc...
Ponieważ tzw. casting w BASCOMie jest nieco zbyt prosto zrobiony to proponuję zrezygnować z: Dim Xl As Word Dim Xh As Word A w przerwaniu pobierać zawartość z rejestru ICR za pomocą specjalnie generowanej dla tego celu zmiennej typu Word: Capture1 . Pętlę Do..Loop zamieniłbm na sprzętowe porównywanie i kasowanie licznika przez CTC. Niech takimi rzeczami...
Zastosować dzielnik
Połączyć wejście ADC z mierzonym potencjałem. Jeśli ten potencjł jest odłączany, to np. z masą przy użyciu jakiegoś opornika o dużej wartości. Generalnie, między tym wejściem a jakimś ustalonym potencjalem w układzie (masa, zasilanie, wartość mierzona - cokolwiek, co dopuszcza nota katalogowa ATmegi8) musi istnieć galwaniczne połączenie, aby nie gromadziły...
Pomysł właściwy, ale zrób to, co doradził kol: Dodaj rezystor stały szeregowo z potencjometrem R6.
Jeśli nie robisz przetwornicy sterowanej z uC, to natężenie prądu diod musisz przyzwoicie ustabilizować układem stabilizatora. Nie da się tego zrobić przez PWM - PWM może regulować jasność kluczując prąd o znanym, stałym natężeniu, odpowiednim dla konkretnego typu diody. Proponuję, żebyś najpierw zapoznał się z zasadami i typowymi układami sterowania...
Gdybym opisał program wszystko stałoby się oczywiste :D Użycie IF ELSE bez END IF zawsze warte jest omówienia bo potem nikt nie może się doliczyć END IF :D Chodzi o to że jeśli tylko jedna instrukcja jest od jakiegoś warunku zależna to można ją zapisać w jednej linii. Jeśli z powodu jakiegoś warunku musza juz być zmienione dwie zmienne lub wykonać się...
Pomyśl nad zastosowaniem rejestru przesuwnego. Np 74HC595. Można te układy łączyć. Potrzebne będą trzy linie procesora. Jedna do ustawienia wprowadzanego bitu druga to zegar rejestru przesuwnego a trzecia służy do przeniesienia danych z rejestru na wyjścia. Układ ma 8-io bitowe wyjście czyli do podwójnego wyświetlacza będą potrzebne dwie takie kostki....
Twój LM75 jest na I2C, zakładam więc że umiesz odczytać z niego te dwa bajty z wartością temperatury. Sprawdzasz najstarszy bit, starszego bajtu w odczytanym z czujnika wyniku. jeśli jest równy 0, to znaczy że temperatura jest dodatnia i wynik liczysz poprzez: 1. przesunięcie otrzymanego z czujnika wyniku o 5 bitów w prawo 2. pomnożenie rezultatu tej...
To nie teoria a często stosowane rozwiązanie. Dlatego przydałby się sygnał który by informował o stanie zasilania. Jest to ważne z jeszcze jednego powodu. Kiedy LCD nie ma zasilania to potrafi je wyciągać przez piny mikrokontrolera. Dlatego kiedy pin informuje że nie ma zasilania sieciowego ustawiasz porty na których jest sterowany wyświetlacz w stan...
Ustawiasz napięcie odniesienia na Vcc, ale ... w funkcji pomiaru z powrotem ustawiasz napięcie odniesienia z pinu AREF, czyli zewnętrzne, bo nadpisujesz wartość ADMUX. Wzór OK. [syntax=c]return ADCW;[/syntax] zmień na [syntax=c]return ADC;[/syntax] Przykłady ADC: http://mikrokontrolery.blogspot.com/2011...
kamil1cos7 --->, tak, czujniki mam w trybie pasożytniczym, po pracy podmienię rezystor na 2k; snnaap ----> tak, powyżej 10st. Celsjusza wyświetla prawidłowo, wg termometru, w pokoju mam 22st, więc raczej nie przekłamuje. Pierwsze co to wyświetl na ekranie co masz w zmiennej Ss po odczycie wprost z czujnika przy tem poniżej 8 stczyli : Ss = Str(i1)...
Ad 1. Jeżeli zmienisz program to tak. Ad 2. Nie będziesz mógł. Temat wałkowany wielokrotnie na forum.
Po pierwsze to kup nowego DS a tego wyrzuć- bo gdzieś go schowasz, zapomnisz że zepsuty- a za jakiś czas będziesz się znowu użerał. Ale zanim go wyrzucisz zmień us na ms na końcu programu. Zresztą powinno być 900ms a nie 200.
jack63 to wcale nie jest liniowa charakterystyka! Oczywiście, tylko ta nieliniowość jest niewielka. Dla 200oC wynosi mniej niż 6oC. Czyli 3% ,jeśli dobrze policzyłem :D. Przetwornik ADC jest 10 bitowy z dokładnością do 2 LSB czyli 0,4%. Można przeprowadzić ew. linearyzację po ADC programowo. (at)PiotrPitucha próbujesz "wymusić" stosowanie rozwiązań...
Jeśli chodzi o prąd to mirzy się napięcie na rezystorze bocznikowym. Pamiętaj jednak że jeśli rezystor bocznikowy jest w gałęzi masy to napięcie na nim względem masy będzie ujemne.
W dalszym ciągu nie poprawiłeś WGM12. Jak wspominałem bit ten znajduje się w TCCR1B a nie w TCCR1A.
donats zadal proste pytanie, a tak naprawde nikt mu nie odpowiedzial, piszecie same bzdury zamiast mu jakos pomoc. Nono... Piszecie :) podlanczasz do przetwornicy analogowo cyfrowej fototranzystor jeden koniec do masy a drugi do przetwornicy Ahhh... Czemu wszyscy idą na łatwiznę i czekają na gotowca. Podejrzewam że kolega donats wcale nie zajrzał w...
Zgadza się, procesory mają możliwośc pracy w konfiguracji z wejściami różnicowymi - i znów człowiek dowaiduje się czegoś oczywistego ;)
Mam pytanie odnośnie pomiaru częstotliwości, lecz nie wiem jak zrealizować pomiar z zastosowaniem układu preskalera (SAA1059). Nie wiem w jaki sposób należy podłączyć układ, abym mógł mierzyć częstotliwość do 120MHz. Chciałbym wykorzystać ten układ do radia, które nie posiada skali cyfrowej. Analizowałem inne powiązane tematy np. http://www.elektroda.pl/rtvforum/topic73...
Ja bym zrobił na przerwaniu + timer.
I mam pytanie czy to: while (!ADIF ); jest dobrze a zastanawiałeś się kiedyś co oznacza zapis np (1 << ADSC) ? to co napisałeś to jakaś stała będąca numerem bitu. Jaki to numer to można sprawdzić w dokumentacji albo w pliku nagłówkowym. Jak napisałem wyżej taki kod kompiluje się do while(0) więc nigdy ta pętla się nie wykona. Pływanie może brać...
W twoim przypadku jeśli dasz szeregowo rezystor (mając już użyty kondensator) utworzysz filtr dolnoprzepustowy który wyfiltruje ci zakłócenia a co za tym idzie ustabilizuje ci napięcie mierzone i będą stabilniejsze odczyty przetwornika - więcej na ten temat powie Wikipedia albo google.
Najpierw próbowałem z przetwornikiem a/c ale nie dawało to żadnych odczytów i teraz spróbowałem z komparatorem a/c i timerem. Do atmegi podłączyłem nadajnik ultradźwiękowy przeciwsobnie. Jeśli przetwornik podłączyłeś bezpośrednio do pinów mikro-kontrolera to nic dziwnego. Po pierwsze nadajnik ma wtedy bardzo małą sprawność, jak budowałem swój miernik...
Tylko jak się zdecydujesz to musisz oprogramować I2C w trybie Slave. A to juz nie wiem czy w Bascomie takie proste. Nie znam Bascoma ale z tego co się orientuje standardowe komendy dotyczą I2C w trybie Master. W sumie I2C będzie łatwiejsze z technicznego punktu widzenia, no i bardziej przyszłościowe np jak zrobisz kolejny moduł. Tylko musisz pamiętać...
zerknij na ten projekt http://www.mcselec.com/index.php?option=... cała idea pomiaru jest zawarta w procedurze obsługi przerwania Interrupt Service Routine , jest to w Bascomie ale myślę że bez problemu przeniesiesz to na asembler
TCCR1B &=~(_BV(CS12)) | ~(_BV(CS11)) Ww. zapis oznacza tyle co TCCR1B &= ~(1 << 2) | ~(1 << 1), to znowuż jest równoważne TCCR1B &= ~4 | ~2. W zapisie zerojedynkowym będzie TCCR1B &= 1111 1011 | 1111 1101, przy czym po wykonaniu operacji OR na tych ślicznych liczbach postanie z nich 1111 1111...
Witam Sprawa właściwie dość prosta. Dodajesz dwa rezystorki robiąc na nich sumator. Do jednego wejścia takiego sumatora dajesz napięcie 2.5V a drugie wejście to będzie Twoje wejście pomiarowe. Pamiętać trzeba, że wtedy zakres pomiarowy wynosi +/- 2.5V. Zauważ, że jeżeli do wejścia podasz zero na wyjściu sumatora będzie 2.5V dla -2.5V na wyjściu będzie...
Witam! Buduję woltomierz mierzący napięcie w danym momencie na baterii akumulatorowej. Prosiłbym o wyliczenie dzielnika napięciowego który będzie podłączony do Atmegi - max. 5V! :D
wstaw w pętlę jakieś opóźnienie bo po co odczytywać przetwornik setki lub tysiące razy na sekundę. najlepiej zrób też ze 3-4 pomiary i oblicz z nich średnią arytmetyczną.
Komparator analogowy wyzwalający pomiar ADC.
Czyli liczy 10x za wolno. A czy dobrze ustawiłeś w programatorze fusebit odpowiedzialny za to z jakiego generatora ma korzystać? Bo wygląda że korzysta z wewnętrznego 1MHz
Będziesz musiał zjechać częstotliwością PWM na tyle aby łapać czas między impulsami z wentylatora, gdy PWM jest na H.
Łatwiej by było jakby ten rezystor był od strony masy a nie plusa. Poza tym Atmega8 nie ma pomiaru różnicowego z tego co pamiętam. Dodatkowo jakiś filtr by się przydał na wejściu przetwornika. Dodano po 7 Dodatkowo pytanie gdzie tu jest zasilanie do AVCC podpięte? ja jakoś nie widze.
No, tak dobrze to nie jest. AVR-y (a w nich timery) nie mogą poprawnie zliczać impulsów o częstotliwości większej niż połowa częstotliwości zegara zakladając na wejsciu wypełnienie przebiegu 50%. Niezbędne będzie zatem zastosowanie preskalera. Proponowałbym ATMEGA8 z kwarcem 16MHz i z prescalerem /4 zbudowanym np z cyfrówki 74F74. Mamy zatem poniżej...
Problem masz ewidentnie z programowaniem Flash, a nie z kompilacją. Może spróbuj z innym programatorem.
No niestety nie te linie . te zmienia wszsytkie wyniki Szukaj symbolul LMxxx Dodano po 8 adc_conversion: rcall channel_0;włšcz kanał 0 clr zh ldi zl,adr0 channel_set: clr licz clr bin_bl clr bin_bh adc_loop: push licz push bin_bl push bin_bh clr licz clr bin_bl clr bin_bh clr bin_al clr bin_ah adc_sum_loop: clr temp out adch,temp out...
Dzielnik tak, wartości - raczej nie. Zasymuluj sobie ten układ np. w http://www.falstad.com/circuit/ lub dokonaj obliczeń. Zauważ, że źródło prądowe 3mA w przypadku 100°C będzie miało do pokonania dwa połączone równolegle rezystory zwierające do GND: - pierwszy to KTY-81 o wartości 3392Ω - drugi to rezystor wypadkowy z dzielnika, czyli 5,4kΩ...
Daj mostek _przed_ rezystorem obciążającym przekładnik. Pamiętaj o tym, że nie wolno używać nieobciążonego przekładnika.
Do AREF zbliżonego do Vcc stosujemy odpowiedni tryb w ADMUX. Takie podłączenie jakie zastosowałeś jest nie wskazane.
Oprócz obowiązkowego RC, a zwłaszcza kondensatora na wejściu ADC, ja bym jeszcze dorobił filtr dolnoprzepustowy w oprogramowaniu. Regulacja czegokolwiek na podstawie pojedynczego, nieuśrednionego pomiaru jest dość ryzykowna.
W funkcji pomiart1() nie czekasz na koniec pomiaru. Dlaczego?
tyle co wymęczyłem aparatem... zrobiłem chyba z 30 fotek... cały artykuł podzielony... [url=http://members.lycos.co.uk/mishot/e...
No i bardzo dobrze podaje, jak sądzę podajesz 5,1V przez ten dzielnik z rezystorów 4k7 i 15k? To napięcie po tym dzielniku (to które widzi ADC) to właśnie 1,21V, czyli masz idealnie. Jerdyne co trzeba zrobić to uwzględnić wartość dzielnika w finalnych obliczeniach.
Funkcje OneWireReset_1, OneWireReset_2, OneWireWriteByte_1, OneWireWriteByte_2, OneWireReadByte_1 i OneWireReadByte_2 obuduj tak: unsigned char OneWireReset_1() { cli(); ... ... ... sei(); return(0); } A jeszcze lepiej to obuduj makrem ATOMIC_BLOCK.
Podłączyłeś równolegle dwa uzwojenia wtórne transformatora, a tak sie nie powinno robić. Jak już to daj dwa mostki prostownicze i połącz dopiero wyprostowane napięcia. Do tego masz jakiś kondensator równolegle do uzwojeń wtórnych. Po co? Kondensatory C17 i C18 jak już chcesz łączyć równolegle do przycisków, to szeregowo przez rezystory np. 100...330R....
Witam. Próbuję napisać program odpowiedzialny za pomiar odcinków czasowych pomiędzy impulsami sygnału S1 i S2 (zgodnie z załącznikiem). Proszę o prześledzenie kodu, wszelkie uwagi i sugestie mile widziane. Nie mam pewności co do poprawności pobierania wartości licznika TIMER1 za pomocą TCNT1. 'program do pomiaru okresu sygnałów podpiętych do PD.2(INT0)...
100 MΩ i pojemność 220 nF ma stałą czasową 22 sekundy. Większa rezystancja to jeszcze większa stała czasowa. Wzmacniacz moim zdaniem trochę przekombinowany, ale powinien działać dobrze po wywaleniu, albo radykalnym zmniejszeniu tej pojemności. Przypuszczam że dało by się na jednym wzmacniaczu pełniącym jednocześnie rolę filtra, wzmacniacza i układu...
Lubię upraszczać Smile Niestety żeby prąd układu sterującego nie wpływał na pomiar nie może on dochodzić do tych samych tranzystorów, dlatego trzeba dać o dwa wiecej, układ z postu #16 prawie by sie nadawał, ale wymagał by wyższego napiecia sterującego na bazach i ograniczenia Ugs. Ograniczenie prądowe można zespolić z tranzystorami mostka, tyle że...
Witaj. Ustawiasz wyrównywanie wyniku do lewej a wysyłasz następująco. [syntax=c]wyslijZnak(ADC);[/syntax] Zastanów się ile bitów ma rejestr UDR, a ile ADC i jak to się ma do wyrównania wyników do lewej.
Dziękuję janbernat za fantastyczną i rzeczową pomoc oraz wkład pracy w rozwiązanie mojego problemu. Konrad Nie sadze aby ta metoda pomiarowa i sposob realizacji daly oczekiwany rezultat. Przeciez w aparatach fotograficznych czas otwarcia migawki nie jest zalezny od czasu 'wcisniecia przycisku', za wyjatkiem powiedzmy pracy w trybie "na czas" (B), a...
Chce wykonać pomiar prądu pobieranego przez atmege i diode. Do Atmegi podłaczyłem rezystor 1ohm na wejściu , wartość mierzona woltomierzem okolo 30mV, gdy naciskam button zapala sie dioda i wartość spada do 24mV. Vcc=5V. Dodakowo mam jeszcze uklad Max232 podłączony. http://obrazki.elektroda.pl/7791968300_1... Sprawdzałem w dokumuntacji...
Co prawda w temacie kolega umieścił wątek o termometrze wykorzystującym jako czujnik LM35, ale może "malutka sugestia": Brałeś pod uwagę scalony cyfrowy czujnik typu np DS18B20 ? Ja np w aucie zbudowałem termometr (na ATMEGA8) przy użyciu dwóch czujników DS18B20 (temperatura silnika i w kabinie) oraz DHT22 (zamiennik to AM2302) w nawiewie, który oprócz...
Jest parę błędów które widzę już teraz. Pozwoliłem sobie wstawić to w syntax bo nie dało się czytać :) unsigned char ilosc_imp=0; powinno zostać opatrzone jeszcze etykietką volatile. Czyli: [syntax=c] volatile unsigned char ilosc_imp=0; [/syntax] Volatile wyłącza dla tej konkretne zmiennej optymalizację. Jest to konieczne jeżeli korzystasz ze zmiennej...
Nie musisz pchać się dokładnie w jeden okres. Po prostu zapuść pomiary na stałe. I co ileśtam (dużo) pomiarów licz wartość skuteczną. Synchronizacja z okresem sieci nie jest konieczna (pod warunkiem że na jedno obliczenie wartości skutecznej wejdzie co najmniej kilka okresów sieci).
Układ używany przeze mnie. http://obrazki.elektroda.net/88_12532178... Działa bardzo dobrze. Jeszcze lepiej, jeżeli zastosujesz tranzystor P-MOSFET tak jak na dole strony 26 ("Current Monitor") noty [url=http://www.national.com/an/AN/AN-31... Nationala. Ja dałem IRF7416 bo jest mały i miałem go pod ręką. W Twoim przypadku operacyjny może być...
Musze cie zmartwic. Timer 2 jest tylko 8 bitowy i przy maksymalnym czasie 5 sek dokladnosci 1ms nie uzyskasz. Maksimum 19 ms z chakiem. Jedynym rozwiazaniem to musisz ten licznik wydluzyc o jeden bajt zatrudniajac do tego przerwanie od Timet2, wtedy jest ta dokladnosc mozliwa do uzyskania.
Przetwornik jest jeden ma jedynie multipleksowane wejście za pomocą kluczy analogowych , jeśli więc uszkodzi się klucz przetwornik będzie działał na innym wyprowadzeniu , jednak przy podaniu na wyprowadzenie napięcia typu 12V raczej mała szansa żeby port, pin , i przetwornik zachował pełną sprawność . Dla świętego spokoju lepiej taki układ wymienić...
Po generacji fali wystaw na oba wejścia nadajnika stan niski, co wytłumi drgania. Potem dopiero zabierz się za pomiar echa. I owszem - w momencie wysłania paczki startujesz 'sekundnik' na timerku i zliczasz czas do nadejścia echa. A dalej to już proste równania matematyczne.
Może ta stronka Ci pomoże: http://www.tkdami.net/%7Evoytek/programy... ->przetwornika AC
A czy mierzyłeś ten prąd jakimś miernikiem i czy na nim pomiar prądu nie pływa?
Ja bym się nie bawił w analogówke ... Sam zrobiłem stację meteo podłączoną do serwera , dane zbierane były do bazy danych mysql a stronka z odpowiednimi skryptami wyświetlała wyniki w postaci wykresów ( gnuplot ) oraz wskaźniki we flaszu bieżącą pogode. Zastosowałem mikrokontroler atmega8 pomiary temp czujnik DS18B20 pomiar wilgotności czujnik analogowy...
Widziałem w sieci schemat gdzie do wejść komparatora w atmedze podłączony był bezpośrednio opornik 0,1Ω. Czy możliwe jest by w taki sposób wykonać pomiar prądu?
Witam ponownie! Ostatnio zamknięto mi temat i nie zdążyłem podpytać o kilka spraw. Muszę nadmienić że na jednym uC mierzę dwa napięcia -25 do 0 i od 0 do 25 (2 podłączone ADC nr 4 i 5) na wejściu napięcia dodatniego mam dzielnik 7,5k/100k na wejściu napięcia ujemnego mam LM358 działający jako układ odwracający z rezystorami po 10k i wzmocnieniu=-1....
Nie chciał bym za Ciebie pisać tego programu, bo jest to naprawdę proste zadanie i dlatego spróbuj sam napisać go jeszcze raz od początku wg np. takiego algorytmu: Ustaw timer powiedzmy na 10khz aby każde przerwanie wykonywało się co 100 mikrosekund. Możesz też gęściej od tego zależy dokładność - tu 100us czyli 0,1ms Zdefiniuj sobie zmienną licznikową...
Żeby otrzymać wynik w ms mnożę wartość licznika przez 1,024. Żeby otrzymać wynik w ms dzielisz wartość licznika przez 1000
A tutaj piszą jak uruchomić adc na atmedze http://mikrokontrolery.blogspot.com/2011...
Jeśli masz detekcję otwarcia/zamknięcia migawki to nie ma najmniejszego problemu z pomiarem. Nawet ATMega8 ma timer z możliwością pomiaru czasu - tryb capture. Podajesz sygnał na wjście timera i potem odczytujesz rejestr zawierający timestamp zdarzenia. Parę linii kodu. Ale jak wykryć otwarcie/zamknięcie migawki? Laserek i mierzenie odbicia od migawki?
Jednak źle mi się wydawało. Opis znaczenia bitu ADSC jest jednoznaczny: "The first conversion afterADSC has been written after the ADC has been enabled, or if ADSC is written at the same time as the ADC is enabled, will take 25 ADC clock cycles instead of the normal 13. This first conversion performs initialization of the ADC." Czyli nie ma bata, pierwszy...
przelicznik zależy od zastosowanego napięcia odniesienia przy 2,56v z grubsza jest 1/2 książkowej wartości. Jak dasz napięcie odniesienia internal a przelicznik weźmiesz z vcc wyjdzie ci około 2x więcej (vcc to 0,0049 internal 0.0027). Co do przeliczania na stopnie celsjusza to nic nie trzeba robić. Wersja lm35 dz jest już kalibrowana w stopniach celsjusza,...
Co do wyłączenie światła po 30 sek. Dodaj dodatkową zmienną bit która będzie ustawiana np: na 1 po wyłączenia światła przez timer po 30 sekundach a dzięki niej nie będzie ponownie włączane światło przez wciąż otwarte drzwi (stan niski na wejściu uC). Dopiero zamkniecie drzwi ( stan wysoki na wejściu uC) spowoduje zmianę tej zmiennej na 0 dim 30SEK as...
Procesor ma multiplexowany przetwornik A/C więc po prostu wybieraj na zmianę jako źródło sygnału napięcie na ADC0 i ADC1 i będziesz miał pomiar dwóch różnych napięć.
A dlaczego nie robisz pomiaru prędkości na moment przed zderzeniem . Umieść dwa czujniki A i B np. co 10cm. przed zderzeniem . Chyba pomiar czasu jaki pokona fotel na drodze od A do B nie będzie dla ciebie problemem . A błąd pomiaru prędkości w ostatniej fazie będzie minimalny ,i powtarzalny w kilometrach na godzinę .
A co pisze w nocie katalogowej np atmegi8, przy rejestrze ADC Data Register ADCL and ADCH
Zobacz zasadę działania transformatora. Dla przypomnienia z podstawówki - prąd przepływając przez przewodnik indukuje pole elektryczne i magnetyczne. Jeśli te pola się zmieniają to indukują też prąd w przewodniku, który w tych polach się znajduje.
U mnie na stronie 193 jest komparator analogowy. Rozumiem to tak jak napisałem: napięcie wejściowe może być z zakresu 0...VCC, ale napięciu 0V odpowiada wartość 0, a napięciu Vref (któro może być niższe niż VCC) wartość 1023. Powyżej Vref a poniżej VCC będzie już ciągle 1023. Czyli tak jak napisałem: napięcie może być z zakresu 0..VCC, ale napięcie...
Choćby LMV321. Niewiele lepszy od LM358, ale poza tym ma chociaż wyjście typu Rail-to-Rail. EDIT. Wykonałem pomiary czujników SYH-1 oraz HCH-1000. Wstawię jak się filmiki dodadzą do serwera. Jeszcze tylko prośba do albertb : przedstaw jakieś argumenty a tym że czujnik SYH-1 jest pojemnościowy. Albo nie wiem, że jest tego samego typu co HCH-1000, albo...
Można użyć PLC i spokojnie zrobi to co chcesz, ale jest to drogie rozwiązanie. Dane o dokładności wejść analogowych itp. szukaj w notach katalogowych sterowników. To co chcesz zrobić można też załatwić z pomocą małego mikrokontrolera za 5zł typu atmega8.
Podłącze się pod temat: Postanowiłem pobawić się trochę dalmierzem opartym na SRF05 i korzystając z innego rozwiązania przekodowałem (ze zrozumieniem) program, który ma za zadanie pokazywać odległość od przedmiotu. Istotą mojego problemu jest to, że atmega32 idzie w maliny i nie bardzo wiem dlaczego... pomiary wykonują się, ale czasami procek wiesza...
Wciąż czekam na podpowiedź jaką zmienną pomieścić tekst i volty. Rany boskie, co ty kombinujesz? Nie ma żadnego PROSTEGO rozwiązania, które by takie rzeczy robiło. Tekst to tekst, a wartości liczbowe, to wartości liczbowe. Strasznie upierdliwy jesteś, ale spróbuj coś takiego: Cls Lcd "R=" ; If Zao1 >240 Lcd "ALARM" else Lcd Zao1;...
DS podłączony prawidłowo ? Rezystor do plusa jest ?
Zmieniłem zgodnie z sugestią ale nadal mam same zera na LCD. [syntax=c] pm=ADC; wynik=pm*VREF_VCC/1024.0; [/syntax] Co jeszcze musiałbym zmienić aby otrzymać prawidłowy pomiar? Proszę o dalsze pomysły.
Wystarczy zmienić linie Dim Wynik as byte na Dim Wynik as word Poza tym nie rozumiem po co wykorzystujesz dwie zmienne ? Wystarczy jedna typu word
Heh temperatura też ;] po drugie da się to skompensować, głównie chodzi o pomiar prądu Pozdrawiam
Przetwornik ma 1024 kroki. Przy 5,1V zasilania daje to rozdzielczość 4,98...mV. Zwiększając zakres np. do 100V rozdzielczosć wyniesie ok. 99,6mV. Zwróć uwagę na prawidłowe połączenia mas. Atmega ma wyprowadzoną masę ADC i do niej powinien docierać badany sygnał! Ważne są też prawidłowo podłączone kondensatory do ADC oraz stałość napięcia zasilania gdy...
Zrobiłem coś takiego i nadal nic $regfile = "m8def.dat" $crystal = 1000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Rs = Portb.1 , E = Portd.0 , Db7 = Portd.1 , Db6 = Portc.4 , Db5 = Portd.7 , Db4 = Portb.0 Cursor Off Dim Wynik As Single Config Timer1 = Timer Enable Interrupts Enable Timer1 Do If Pind.5 = 1 Then Timer1 = 0 Start Timer1 Do...
No i trzeba sie liczyc z tym, ze ADC ATMegi (wlasnie, jaka to jest, czy nie czasem 8?) nie jest za super i te 10 bitow to bardziej teoria. Troche moze pomoc wylaczanie czesci cyfrowej na czas przetwarzania ADC i usypianie procesora. Jak samplujesz? Nie wlaczasz/wylaczasz czasem ciagle przetwornika? Robilem na LM35 i na ATMega8 bez zadnych cudow, acz...
Może ten [url=http://www.elektroda.pl/rtvforum/to... trochę cię nakieruje.
http://www.elektroda.pl/rtvforum/topic73...
Witam Napisałem program, który dekoduje sygnał DCF77 ( ustawia flagę ), następnie zapisuje ( przy pierwszym uruchomieniu ) wartości zmiennych do PCF8563 i cztery razy na dobę wysyła przez RS485. do tego dwa razy na dobę koryguje czas w PCF8563. I to działa bez problemu. Do celów testowych mam podłączony LCD. Chciałem dołączyć możliwość pomiaru i wysyłania...
Odpowiedź znajduje się w zamkniętym temacie tego testera, który podałeś powyżej. Bodajże Freddy podał tam powód tych błędów na ostatniej stronie tego tematu, atmega8a i atmega8 potrzebują wpisania do programu innych wartości , które są tam podane... Pozdrawiam
Na razie filtry są dość biedne bo tylko można by powiedzieć że "zamarkowane", myslę że w obrębie takiego przetwornika coś zmienię. Nie zaznaczyłem na schemacie pomiaru prądu ale wezmę go z wyjścia wzmacniacza operacyjnego w torze pomiaru prądu. Jak ewentualnie zmieniać filtru do przetwornika PWM/A?
Masz źle skonstruowany makefile. Korzystasz z AVRStudio? Jeśli tak, to czy wszystkie pliki są obecne w drzewie projektu?
Przykład na ATmega8: http://mikrokontrolery.blogspot.com/2011...
Ostatnio zrobiłem miernik do mojego zasilacza na atmega8 (pomiar napięcia i prądu przez spadek na rezystorze pomiarowym) na wejściu dałem potencjometr wielo obrotowy, a sam wynik z przetwornika przemnożyłem odpowiednią ilość razy programowo. Kalibracja w moim przypadku sprowadzała się do zrównania wyników multimetru fabrycznego z moim (kręcąc potencjometrem)....
A komendy toggle będą działały tak szybko, że zmiany będziesz wstanie zaobserwować jedynie oscyloskopem/analizatorem stanów logicznych/multimetrem z funkcją pomiaru częstotliwości.
pomiar atmega8 atmega8 pomiar napiec atmega8 pomiar częstotliwości
modernizacja linii napowietrznej klimatyzacja zasilanie pomiar prędkości indukcyjnym
top256 dioda zgrzewarka transformatorowa
Texalarm 3059 – zmiana kodu PIN, instrukcja krok po kroku, kody użytkowników Żarówka tylnej lampy – brak światła pozycyjnego, diagnostyka i naprawa VW, Opel, Ford