1. (pomiar > temp+histereza) -> wyłącz 2. (pomiar < temp-histereza) -> włącz Albert
0.0049 to wynik z dzielenia 5V(napięcie odniesienia ADC) / 1024 (rozdzielczość pomiaru przetwornika ADC w AtMega) Skoro rozjazdy u Ciebie są takie dziwne to przypuszczam, że zastosowałeś kolbę z inną termoparą niż autor projektu na którym się wzorowałeś. A tak na marginesie o po co te waitms 100 za pomiarem ADC?
:D Choćby z jednego powodu, moim zdaniem pomiar rezystancji za pomocą ADC jest dokładniejszy od pomiaru dokonywanego w układzie RC. Rozumiałbym poza tym wykorzystanie RC w małych kostkach bez ADC (np. tiny2313), ale w mega8 masz 10-bit konwerter, a jak poznasz dosłownie 4 funkcje w BASCOM to przetwornik ADC masz w małym palcu.
' Na początku kodu Index_tab=0 ...... ...... If Licznik = 1200 Then IF Index_tab=3 Then ' przesuniecie w tył jeżeli pozyskano co najmniej 3 pomiary Pomiar(1)=Pomiar(2) Pomiar(2)=Pomiar(3) Else ' Fragment kodu wykonywany dla Index_tab=0,1 i 2 Incr Index_tab IF Index_tab>3 Then Index_tab=3 End If Pomiar(index_tab)...
Już se poradziłem w inny sposób. Przechowuje wartość temp max i min w zmiennej sramowej, która codziennie o północy jest resetowana. Uzyskałem w ten sposób pomiar dobowy, który mi wystarcza. Temat uważam za zamknięty.
Czyli CRC jest prawidłowe, a pomiar nie? Jaka jest różnica w pomiarze w stosunku do tych według Ciebie prawidłowych?
Sprawdź miernikiem napięcie podawane z LM35 na ADC. Przepisałem ten kod tak by był przejrzystszy. Przy okazji zaoszczędziłem 8% pamięci. To nieistotne. Istotne natomiast jest to, że teraz widać, że układ wyłączy się jeśli odczyt na ADC będzie w zakresie 250-300. Powyżej lub poniżej tego zakresu krążek będzie świecił. [syntax=vbnet]'Program "elektronicznej...
Co do dokładności pomiaru to w zupełności wystarcza rozdzielczość 1 stopień C a czujniki mają byc umieszczone w pokoju na zewnątrz i w piecu (pomiar temp. wody)
Niestety nie ruszyło, zbudowałem inny układ ,Lcd sterowany z innego portu i ruszył aktualnie testuję pomiar temp. na ds18b20 i działa.Wszystkim dziękuję za zainteresowanie.
Żeby być pewnym na 100% to jak odczytać temperaturę z 2 czujników DS18B20? pierwszy czujnik: 1wreset 1wwrite &H55 1wverify ID pierwszego układu 1wwrite &HBE odczekać czas na pomiar temperatura1 = 1wread(2) drugi czujnik 1wreset 1wwrite &H55 1wverify ID drugiego układu 1wwrite &HBE odczekać czas na pomiar temperatura2 = 1wread(2) Czy coś jeszcze trzeba?...
Jak zwykle czasu nie ma, ale nie mogłem się powstrzymać. Nakręciłem pierwszy klip - ahahahaha :D No musiałem się pobawić edytorem. Efekt to półtora minuty magii :D Ahahaha miałem kupę zabawy z tym :D Przy okazji możesz zobaczyć jak się używa wbudowanego symulatora by zadawać wartości ADC ;) Twój pomniejszony kodzik też poniżej, tylko używając poza symulatorem...
PTC - z taką charakterystyką użyto w zabezpieczeniu uzwojeń w silniku... i myślę ze jest niemożliwy pomiar temperatury przy takiej charakterystyce za małe zmiany przy temp poniżej - krytycznej termistora
A spróbuj tak: [syntax=basic4gl] ' Fuse bity ustawione fabrycznie $regfile = "m8def.dat" $crystal = 1000000 Config Portb = Output 'sterowanie segmentów LED Config Portd = Output 'sterowanie segmentów LED Config 1wire = Portc.5 Anoda1 Alias Portc.1 ' Lewy wyświetlacz Anoda2 Alias Portc.2 Anoda3 Alias Portc.3 Dim Nr_wysw As Byte Dim Liczba As Long Dim...
czy ktoś z Was otworzył i przejrzał ten plik napisany w ASM? czy to możliwe, że tak krótki kod ma w sobie i zegar i pomiar temp., napięcia i prądu? Jak by to było z przełożeniem tego na Bascom? trzeba pisać od nowa czy da się to w prosty sposób "przełożyć"? Potrzebuje w tym programie zmienić 2 lub 3 funkcje - nie znam w ogóle asemblera... Ok po przejrzeniu...
Myślę, że najodpowiedniejszym wyborem na początek będzie jakiś mikrokontroler z rodziny AVR z tego względu, że nie są to bardzo skomplikowane układy i pozwolą ci poznać podstawy .Do tego polecam dobrą książkę i tutaj mogę zaproponować: "AVR i ARM7. Programowanie mikrokontrolerów dla każdego" autorstwa Pana Pawła Borkowskiego .Według mnie dla zupełnie...
Przerwanie masz co 0.256ms a nie co 4ms. A w przerwaniu dzieje się sporo- spróbuj dać prescale 64. Będziesz miał co 2ms. Z round jest coś niezgodnego z helpem podobno. Pisał o tym Atom tu: http://www.elektroda.pl/rtvforum/topic16... Może- ale to są tylko niesprawdzone przypuszczena- daj na początku Dim t_1 as long A w pętli rzutowanie: t_1= T1...
Biblioteka której użyłeś nie ma możliwości dowolnej konfiguracji pinów. W załączniku masz bibliotekę prosto z Rosji :D Chiński wyświetlacz sam mi się uszkodził ale coś tam wyświetla :D http://obrazki.elektroda.pl/6257086800_1... Kod którego użyłem do zrobienia tego zdjęcia [syntax=vbnet] $regfile = "m8def.dat" ' specify the used micro...
To jest moja procedura odczytu temperatury: dodaj zdjęcie masz liting kodu, rozwiń syntax i wybierz bascom
Zrobiłem tak że raz odczytuje temp i czekam te 20s i ponownie odczytuje temperaturę i dopiero potem skacze do podprogramu zapisu wartości max i min ale problem nadal występuje. Wiec chyba nie tylko w tym problem, ze avr wykonuje pierwszy bledny pomiar.
Witam mam problem. Mam program do pomiaru temp 2xDS18B20 podłączone do PB0 (1wire). Po uruchomieniu uK z prawej strony LCD wchodzi pewnien napis potem znika i wyświetla się temp. Na 8535 działa wszystko Ok napis ladnie i płynnie wjeżdża a na 32L wchodzi ale wooolno co 4 sekundy jedna literka a pomiar temperatury w ogóle nie działa. Program jest napisany...
bart_projects: wprowadzasz w błąd. Pomyśl, jak się robi histerezę. Moim zdaniem tak: if temp < zimno grzej else if temp > ciepło nie_grzej Ty, o ile rozumiem, uważasz to za błąd i upierasz się, by po stwierdzeniu, że jest za zimno, koniecznie sprawdzić, czy przypadkiem nie jest za ciepło. Justyniunia: to nie zmierza w dobrym kierunku. Moim skromnym...
Witam. Skompilowałem i wgrałem program pomiar temperatury z DS18B20 do mikrokontrolerów Attiny 2313 i Atmega 8. Przy Attiny 2313 temp. jest wyświetlana prawidłowo natomiast przy Atmedze mruga. Zmienałem częstotliwość oscylatora wewnętrznego na 8 MHz, nic to nie pomogło. Program jest ze strony portalu naukowego, wyswietlacz LCD 2 *16. Co może być przyczyną...
Cześć Jak zrobić pomiar temperatury ujemnej na LM75A według dokumentacji może mierzyć od - 55 do +125 C. Mój kod na temp 0 - 125 C $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 Config Scl = Portb.0 Config Sda = Portb.1...
Hejka Podświetlanie już działa na zadany czas ;-) faktycznie znalazłem błąd w kodzie. Jednak teraz gdy załącze podświetlanie i program ma się wykonywać przez dany czas, to nie działa mi pomiar temp z DS18B20. Jak usunę pomiar, to program działa normalnie, wykonuje wszystkie podprogramy. Doszedłem do tego, że przerwanie powoduje, że komenda 1Wreset nie...
Program napisany w BASCOM AVR i wyskakujące 3 błędy , mogę wiedzieć dlaczego one wyskakują podczas kompilacji , poniżej zamieszczam kodzik. 'podwójny woltomierz i amperomierz (dwa kanały pomiaru napięcia i dwa kanały pomiaru prądu 'UWAGA _ PONOWNE WGRANIE PROGRAMU SKASUJE WARTOŚCI WSP KOREKCJI Z PAMIECI EPROM '---------------------------------------...
Jeśli podajesz w programie do której końcówki jest podłączony czujnik to nie przejmuj się tym co podaje bascom ale dla świętego spokoju tam też to zmień. Obowiązkowo zmień rezystor na 4,7kΩ. Po za tym masz jakiś dziwny ten programik. Spróbuj na tym(wczesniej zmien rezystor): $regfile = "m32def.dat" $crystal = 8000000 Config Lcdbus = 4...
Witam, składam termometr na czujniku LM35 narazie w symulatorze bo nie mogę dojść do ładu z przeliczeniem odczytu i proszę o pomoc. Przekopałem google i z kilku różnych programów skleiłem kawałek mojego ale niestety nie działa jak powinien. Przy temperaturze 100*C lm35 powinien dawać 1000mV więc ADC atmegi8 odbierze wartość 401 i teraz to mnożę razy...
W zasadzie to ta testowa dioda jest nie istotna tak czy siak wyleci niedługo a rezystor (który mi wyliczył ów kalkulator) sprawia ze LCD prawie gaśnie gdy dioda testowa się załącza. Przeglądałem rożne projekty związane z ds1820 (niestety najwięcej jest na bascom a dla mnie to gorsza magia niż asembler) Niestety nie wiem jak się za to zabrać tak samo...
witam mam nastepujacy problem w bascom moze banalny ale nie moge go przesskoczyc:(brak logicznego myslenia) chodzi o pomiar temperatury na ds 18b20 przed wyswietleniem temperatury formatuje liczbe za pomoca polecenia: Str_temp = Fusing(temp , "#.&") wiec z liczby np: 22.6255 zostaje mi 22.6 i moge to wyswietlic jest ok tylko liczba jest zapisana jako...
No korzystałem z kodów w sieci i wiem jak odbywa sie pomiar temp przez DS18b20. Tylko najwiekszy problem mam z tym wyświelaczem. Nie wiem czy on musi być podłączony pod 1wire czy pod SPI. Dodam ze chciałbym zrobić coś podobnego do tego projektu: [url=http://www.ivica-novakovic.from.hr/... Ten kod do wrzuciłem do załacznika...
witam Twój problem polega najprawdopodobniej na tym, że ds 18s20 potrzebuje o połowę czasu wiecej na przetworzenie temp niz ds 1820. nie znam bascoma ale w c miałem troche podobny problem. Ty każesz mu zmierzyc temp, a on jeszcze tego niei zdążył zrobić i juz go czytasz to zwraca warość domyślną. Tak jest oczywiście przy zasilaniu z lini danych. Jeśli...
W trakcie tworzenia programu ile razy wkładałeś 2051 do podstawki? Kilka razy. No nie chciało zadziałać za pierwszym razem :) Bascom nie był taki zły jak go malują. Tutaj przykład termometru na ATTiny2313 z DS18B20. http://mirley.net/minitermometr_uniwersa... Ten projekt jest też na elektrodzie o ile pamiętam. Hmm, ja jednak zrobiłem obsługę błędów,...
I wszystko jasne! DS18S20 - nie ma siły uzyskać 0.1 rozdzielczości DS18B20 - tryb "niepełny parasite" (bez tranzystora pullup) - nie daje rady przetworzyć na 12 bit i mamy 0.5°C rozdzielczość Dopiero DS18B20 - tryb parasite z tranzystorem pullup lub z zewnętrznym zasilaniem jest w stanie przerobić temperaturę na 12 bit. ...Poza tym rozbijanie Waitms...
W skrócie do zadań programu należało by: 1. Wyświetlanie komunikatów na wyświetlaczu LCD 2x8 (około 7 zakładek z informacjami, przełączanych jednym przyciskiem) w tym sterowanie podświetleniem przez BC557B. *1 powitanie *2 pierwszy pomiar temperatury (DS18B20 po 1wire) + alarm przy pewnej temp. niezależnie która zakładka jest włączona. *3 drugi pomiar...
Dziękuje :). Taki był cel bo żeby było prosto bo miałem na to tylko 2 kB pamięci . I ładnie. Chciałem zobaczyć bo wiem, że nie jest łatwo w języku wysokiego poziomu wetknąć w attiny2313 obsługę wyświetlacza, komunikaty i coś co jeszcze coś robi. Swoją droga musiałem wyprostować twój kod żeby ogarnąć ... Ech te wcięcia ... [syntax=vbnet] '***************************************...
Odchudziłem trochę program. Wykasowałem MENU ustawiania temperatury. W zasadzie mogę w tym wypadku zrezygnować z LCD dla LED. 'termostat do chłodzenia $regfile = "m16def.DAT" $crystal = 8000000 Config Portb = Output Config Lcdpin = Pin , Rs = Portb.2 , E = Portb.3 , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 Config Lcd =...
Jeszcze nie jest do końca dobrze, bo tutaj porównujesz temperaturę, ale nie masz jej w "temp" tylko w "t": If Temp <= A1 Then Portb.1 = 1 Waitms 50 End If If Temp >= A2 Then Waitms 50 Portb.1 = 0 End If w tym kodzie co zacytowałem, to wyrzuciłbym te opóźnienia, bo nie są potrzebne. A tak ogólnie to w Twoim programie nie da się w ogóle ustawić...
na końcu nie musisz na nic czekać ! , tak się składa że też piszę prog. do zasilacza i też z pomiarem temp. , ja zrobiłem tak Temperaturka: 1wreset 1wwrite &HCC 1wwrite &H44 Do Incr Opozniacz_przerwania Gosub Przyciski Gosub Pomiar Gosub Wyswietlacz1 If Opozniacz_przerwania = 50 Then Opozniacz_przerwania = 0 Exit Do End If Loop 1wreset 1wwrite &HCC...
Mam tutaj na Atmedze162 taki problem. Zrobiłem odczyt z DS18B20, wykorzystując taką funkcję : Function Ds_read(byref Sensor As Byte) As Integer 1wreset 1wwrite &H55 1wwrite Sensor , 8 1wwrite &HBE Ds_val = 1wread(2) Ds_val = Ds_val * 10 Ds_val = Ds_val / 16 Ds_read = Ds_val End Function i wszystko jest ok, o ile wykonuję pomiar wywołując...
No dobra pal licho dokładność odmierzania czasu. Tu nie jest aż tak ważna. Ale timer1 nie jest skonfigurowany . Pomiar nie ma prawa się odbywać, bo przerwanie od timera1 nie jest wywoływane, a co za tym idzie cała procedura "co1s" , a także ten podprogram "Odczytaj" również nie. Nawiasem mówiąc po co on jest ? Nie lepiej zamiast gosub po prostu przenieść...
Proszę bardzo (szkoda kolejnych kilkunastu postów na omawiany wielokrotnie temat), kod zmodyfikuj wedle własnych potrzeb: $regfile = "m32def.dat" $crystal = 8000000 Config Lcdbus = 4 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Pb.4 , Db5 = Pb.5 , Db6 = Pb.6 , Db7 = Pb.7 , E = Pb.3 , Rs = Pb.2 Config 1wire = Portb.0 ' termometr ds18b20...
Utrudniasz sobie zycie niesamowicie tym twoim programem. Niepotrzebnie pakujesz się w przerwania. Tutaj masz chyba najprostsza wersje kodu: $regfile = "m32def.dat" $crystal = 16000000 Config Lcdbus = 4 Config Lcd = 24 * 2 Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2 Config...
spróbowałem zmienić procesor na Atmega32 i błąd ciągle ten sam. Kod w którym się pojawia to: $regfile = "m16def.dat" $crystal = 16000000 $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 'default use 10 for the SW stack $framesize = 40 'default use 40 for the frame space ' use the alternative library 'Podłączenie pinów LCD...
No to jedziemy dalej :) Problem polega na tym, że nie bardzo chcą działać przyciski P_tryb, start, stop. O ile opóźnione działanie P_tryb jest chyba związane z trzema komendami WAITMS 330 w pętli głównej, to nei rozumiem dlaczego dwa pozostałe przyciski niezbyt chcą być obsługiwane. To jest tak, że jak przytrzymam dłużej, to czasami zaskoczy, a czasami...
Poradziłem sobie już wystarczyło zadeklarować A jako Long i wtedy moglem użyć funkcji Round. Mam jeszcze pytanie bo nie chcę zakładać kolejnego tematu . Jak ustawić timer aby w poniższym programie aby robił pomiar ciśnienia co minutę ? [syntax=basic4gl] $regfile = "m644pdef.dat" $crystal = 16000000 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3...
Dzisiaj sprawdzę i dam znać co i jak..... Dodano po 5 Witam Wpisałem kod w program i to ma coś takiego być.... działa, temp. nie skacze... na razie jest zrobiony na płytce stykowej i zasilanie biorę z zasilacza komp. a tak to ma być na płytce finalnie i temp. sprawdzona w komorze temperaturowej (mam dojście :-))) jeszcze raz wyniki porobione.. póki...
na poczatku przepraszam za pomylke zamiast czestotliwosc ma byc okres A czemu nie wykorzystasz jednak przerwań?przerwania to duże udogodnienie w uC chce je wykorzystac, ale nie za bardzo potrafie sobie poukladac ten program w glowie :( w zasadzie nie mam koncepcji na strukture programu.... :( myslalem zeby zrobic w petli glownej wyswietlanie: do wyswietl...
Mam Pytanie odnośnie kalibracji i charakterystyki. Muszę napisać program (znam tylko bascom'a :-() do miernika temperatury i niby to proste ale... Wykonałem pomiary i na ich podstawie mam charakterystykę ( termopary typu J),która wygląda na liniową, ale po wyznaczeniu równania w excelu (muszę mieć sporą dokładność - 1°C przy zakresie od temp otoczenia...
Witam, chciałbym skorzystać z projektu z linku http://diy.elektroda.eu/interaktywna-pod... na użytek mojego modelu samochodu RC do mierzenia temperatury silnika szczotkowego żeby go nie przegrzać powyżej 80 stopni i mam pytanie: 1) Co trzeba zmienić w programie jeśli mam ATtiny13 20Mhz (twórca projektu użył ATTiny13V 10MHz) żeby dobrze...
Witam mam zamiar zrobić termostat na ATMEGA8 + LCD 2x16 (testowo mam 2x24) i DS18B20. Napisałem program, wgrałem go dla sprawdzenia do mojego zegarka z budzikiem i zamiast przekaźnika załącza mi buzzer. Jedyne 2 problemy jakie napotkałem to problem ze zrobieniem histerezy, tak aby nie włączało mi co chwilę przekaźnika. Chcę aby histereza wynosiła 0,5°C....
bascom tempo pomiar tempo pomiar wysoka tempo
budowa koło przyczep parkside ładowarka schemat uzwojenie żarzenia dzielone
instrukcja kalibracja hitachi firmware
Koszyczek odpływowy Sharp – gdzie kupić, kompatybilność, zamienniki, montaż Bezpiecznik kierunkowskazów Opel Astra K - lokalizacja i diagnostyka