Skocz do zawartości
IGNOROWANY

Sterownik Z Czujnikiem Temp. Spalin Do Kotła Z Buforem


tomtomek

Rekomendowane odpowiedzi

Nie wiem już co mam zrobić :(

Próbowałem wszystkie powyższe biblioteki. Próbowałem przez dodaj bibliotekę z programu, jak i ręcznie wkleiłem do folderu C:\Users\Tom\Documents\Arduino\libraries

 

Nie wiem co dalej :(

Ciągle jakiś błąd.

 

Arduino:1.6.13 (Windows 7), Płytka:"Arduino/Genuino Uno"

C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Tom\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10613 -build-path C:\Users\Tom\AppData\Local\Temp\arduino_build_843880 -warnings=none -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose D:\Moje dokumenty\Tomek\Miarkownik elektroniczny\stove\stove.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Tom\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10613 -build-path C:\Users\Tom\AppData\Local\Temp\arduino_build_843880 -warnings=none -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose D:\Moje dokumenty\Tomek\Miarkownik elektroniczny\stove\stove.ino
Using board 'uno' from platform in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr
Detecting libraries used...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.ino.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\TlcdInterface.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\TlcdInterface.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\TlcdInterface.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM\src" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM\src" "-IC:\Program Files (x86)\Arduino\libraries\Servo\src" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM\src" "-IC:\Program Files (x86)\Arduino\libraries\Servo\src" "-IC:\Users\Tom\Documents\Arduino\libraries\MAX6675-library-master" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM\src" "-IC:\Program Files (x86)\Arduino\libraries\Servo\src" "-IC:\Users\Tom\Documents\Arduino\libraries\MAX6675-library-master" "-IC:\Users\Tom\Documents\Arduino\libraries\SimpleTimer-master" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10613 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "-IC:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM\src" "-IC:\Program Files (x86)\Arduino\libraries\Servo\src" "-IC:\Users\Tom\Documents\Arduino\libraries\MAX6675-library-master" "-IC:\Users\Tom\Documents\Arduino\libraries\SimpleTimer-master" "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp" -o "C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\preproc\ctags_target_for_gcc_minus_e.cpp"
In file included from C:\Users\Tom\AppData\Local\Temp\arduino_build_843880\sketch\stove.cpp:29:0:

C:\Users\Tom\Documents\Arduino\libraries\SimpleTimer-master/SimpleTimer.h:37:22: fatal error: functional: No such file or directory

 #include <functional>

                      ^

compilation terminated.

Użycie biblioteki LiquidCrystal_I2C z folderu C:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C (legacy)
Użycie biblioteki Wire w wersji 1.0 z folderu: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire
Użycie biblioteki EEPROM w wersji 2.0 z folderu: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM
Użycie biblioteki Servo w wersji 1.1.2 z folderu: C:\Program Files (x86)\Arduino\libraries\Servo
Użycie biblioteki MAX6675-library-master w wersji 1.0.0 z folderu: C:\Users\Tom\Documents\Arduino\libraries\MAX6675-library-master
Użycie biblioteki SimpleTimer-master z folderu C:\Users\Tom\Documents\Arduino\libraries\SimpleTimer-master (legacy)
exit status 1
Błąd kompilacji dla płytki Arduino/Genuino Uno.

Odnośnik do komentarza
Udostępnij na innych stronach

Dodałem do repozytorium kod tego SimpleTimer, który jest używany przez stove.ino:

https://bitbucket.org/SeeLook/stove/raw/e811b95b5f616e434804840df671d92b25d9715e/SimpleTimer/SimpleTimer.h

https://bitbucket.org/SeeLook/stove/raw/e811b95b5f616e434804840df671d92b25d9715e/SimpleTimer/SimpleTimer.cpp

 

 

Trzeba je ściągnąć i podmienić w Arduino/libraries/SimpleTimer

Odnośnik do komentarza
Udostępnij na innych stronach

Edytowałem te dwa pliki w Notepad++ podmieniłem zawartość i nic. (Próbowałem też w notatniku jeśli ma to jakiekolwiek znaczenie).

Dalej nie działa tylko co innego na końcu jest napisane:

 

"C:\Users\Tom\AppData\Local\Temp\arduino_build_872947\sketch\stove.ino.cpp" -o "C:\Users\Tom\AppData\Local\Temp\arduino_build_872947\sketch\stove.ino.cpp.o"

stove:1: error: 'stove' does not name a type

 

 stove.cpp

 

 ^

 

Użycie biblioteki LiquidCrystal_I2C-master z folderu C:\Users\Tom\Documents\Arduino\libraries\LiquidCrystal_I2C-master (legacy)

Użycie biblioteki Wire w wersji 1.0 z folderu: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire

Użycie biblioteki EEPROM w wersji 2.0 z folderu: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM

Użycie biblioteki Servo w wersji 1.1.2 z folderu: C:\Program Files (x86)\Arduino\libraries\Servo

Użycie biblioteki MAX6675-library-master w wersji 1.0.0 z folderu: C:\Users\Tom\Documents\Arduino\libraries\MAX6675-library-master

Użycie biblioteki SimpleTimer-master z folderu C:\Users\Tom\Documents\Arduino\libraries\SimpleTimer-master (legacy)

exit status 1

'stove' does not name a type

Odnośnik do komentarza
Udostępnij na innych stronach

Usunąłem i dalej błąd.

wrzuciłem do pliku tekstowego żeby wątek nie robił się nieczytelny.

Arduino_Uno.txt

Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem jak to działa i czy ma to jakieś znaczenie, ale gdy odpiłem płytkę od USB i włączyłem program Arduino to wyszło to samo. Tak to ma działać, czyli bez względu, czy usb jest podpięte czy nie to program weryfikuje kod?

Odnośnik do komentarza
Udostępnij na innych stronach

Tak, skompilować można bez podłączania płytki z Arduino.

 

Tym razem nie mam pomysłu dlaczego się nie kompiluje.

Spróbowałbym zamknąć Arduino (program), wyczyścić katalog build, to znaczy w Twoim przypadku:

C:\Users\Tom\AppData\Local\Temp\arduino_build_843880

i ponownie włączyć kompilację.

Odnośnik do komentarza
Udostępnij na innych stronach

Wyrzuciłem wszystko z TEMP-a i dalej to samo.

Jutro będę z tym dalej walczył.

Odnośnik do komentarza
Udostępnij na innych stronach

Miałem 1.6.5...

 

Ale zaktualizowałem do 1.6.12 i natrafiłem na podobne problemy....

stove.cpp gryzł się ze stove.ino

I nie wystarczyło usunąć stove.cpp, potrzebny był jeszcze restart Arduino IDE.

 

Na stronie z kodem:

https://bitbucket.org/SeeLook/stove

poprawiłem linki do zewnętrznych bibliotek (tomtomek już ma te właściwe)

no i parę usprawnień w kodzie (nigdy więcej stove.cpp)

Odnośnik do komentarza
Udostępnij na innych stronach

Teraz się wgrało :)

Wielkie dzięki.

Teraz muszę to wszystko wmontować do puszki no i zamocować w piwnicy.

Odnośnik do komentarza
Udostępnij na innych stronach

Funkcje:

T sp min  Minimalna temperatura spalin

T sp max  Maksymalna temperatura spalin

T CO Temperatura kotła

A Dl cykl jak często serwo zmienia pozycje, można wybrać ot 1 do 100 sekund, u siebie mam 5 sekund.

B Histereza CO  W przedziale jakiej temperatury CO, temp. spalin zmienia się od maks do min. Na przykład histereza 5, temperatura CO 70, to od 65° do 70° temperatura spalin będzie płynnie zmniejszała się od maksymalnej do minimalnej.

Max T CO Temperatura CO przy której serwo PG będzie bezwarunkowo zamknięte.

D Otw S1->S2 Poniżej jakiej wartości PG zacznie otwierać PW. U mnie brakowało PW, tylko jak Klapa PG była prawie całkiem zamknięta, wtedy zaczynało otwierać PW.

Mnożnik S2 Wylicza stopień otwarcia PW. Im większa temperatura spalin, tym większe jest otwarcie. Wylicza po formule: ((T spalin - T spalin min) / 10.0) * mnoznikS2. Im większy mnożnik, tym bardziej otwiera PW.

Najnizsz T sp Najniższa temperatura spalin przy której sterownik uznaje, że opał się skończył i zamknie PG.

Czas najniz temp W ciągu jakiego czasu temperatura spalin musi być mniejsza  od najniższej temp spalin, żeby sterownik zakończył pracę kotła. Dodatkowo sprawdza się czy t spalin nie wyrosła w ciągu tego czasu, żeby nie wyłączyć kocioł podczas rozpalania.

Min poz serwa Można ustawić stałą szczelinę PG podczas normalniej pracy. 

C mnoznik serwa Pozycja serwo PG wylicza się tak : do wartości dodaje się  różnica między aktualnej i potrzebnej temperaturami spalin podzielona na mnożnik serwa C, program sprawdza czy temp spalin  zmieniła się i jak nie, to znowu dodaje. Więc im większy mnożnik C, tym mniejsze będzie otwarcie PG w jednym cyklu. Należało by nazwać go dzielnikiem lub zrobić funkcje jak z mnożnikiem S2, ale jakoś tak wyszło.

Czas przestoju Po osiągnięciu zadanej temperatury CO, kocioł przechodzi w stan uśpienia na zadany tym parametrem czas. Sterownik wygasza kocioł, utrzymując minimalną temperaturę żaru, żeby dało się rozpalić. U mnie to działa super fajnie, już po kilkunastu minutach brak dymu i żar prawie ciemny, ale musi być bardzo szczelna klapa PG i drzwiczki. Na razie jest na minusie na dworze, to ustawiłem ten czas na 3 godziny, jak pociepleje, to zwiększę i zobaczę jak będzie działać.

 

T sp przestoju Temperatura spalin podczas przestoju, żeby kocioł nie wygasł całkiem. Ja mierzę temperaturę spalin przed wymiennikiem, to u mnie ten parametr jest ustawiony na 90°, w czopuchu podczas uśpienia mam temperature podobną do temperatury CO. Również jak używa się tej funkcji najniższa temp spalin ma być mniejsza od temp spalin przestoju. Jak ta funkcja nie jest potrzebna to czas przestoju ustawić na "0", a T sp przestoju identyczną z T sp min.

 

Dmuchawa się włącza jak serwo PG jest na maksa, a t spalin nie rośnie. Wtedy sterownik włącza ją co 10 sekund na 2 sekundy, jak temp spalin nie rośnie, to czas pomiędzy włączeniami płynnie zmniejsza się do 7 sekund. Miałem zrobione, że schodziło do zera, ale przy spiekającym się węgle, to się nie opłaca. Bo czasem sytuacja jest taka, że w palenisku jest za dużo wolnej przestrzeni, a dmuchawa zaczyna coraz mocniej dmuchać i t spalin spada, a temperatura na wyjściu z komina dwukrotnie wzrasta. Dodatkowo mam dmuchawę podłączona przez autotransformator na 110 V, co obniża jej moc.

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki za opis.

Poskładałem :) Na razie próba z czujnikiem na kuchence gazowej.

Jest tylko jeden problem - źle wskazuje temperaturę z czujnika CO tzn. w temperaturze pokojowej temperatura ciągle skacze miedzy 72 a 86*C, gdy się go trochę podgrzeje to rośnie - czyli działa.

Co może być problemem?

Czy jest możliwe, że jest zły czujnik tzn. kupiłem równocześnie 2 czujniki DS18B20. Wszystkie w obudowie, z wyglądu takie same, tylko jeden był zaznaczony czerwonym markerem, więc stwierdziłem, że to ten do arduino, bo kupiłem jeden. Jednak może zostało pomylone przy wysyłce, bo np. zamiast wyświetlacza dostałem czujnik temp i wilgotności ;)

Tak to u mnie wygląda:

post-65254-0-67760800-1480545115_thumb.jpgpost-65254-0-79182800-1480545116_thumb.jpg

Odnośnik do komentarza
Udostępnij na innych stronach

Przeczytałem już, że ten drugi czujnik jest cyfrowy, wiec pewnie by nie działał. Po przemyśleniu doszedłem do wniosku że to może być problem z zasilaniem.

Odnośnik do komentarza
Udostępnij na innych stronach

To znaczy jak cyfrowy ?

Czujniki DS18B20 są cyfrowe mam nadzieje że to uwzględniłeś w szkicu i korzystasz z odpowiednich bibliotek.

Genab w swoim projekcie zastosował analogowe (LM35) mam nadzieje że to uwzględniłeś w swoim projekcie.

Nie piszesz nic o tym co dokładnie zastosowałeś. Jeżeli DS18B20 to nie widać rezystorów podciągających chyba że je gdzieś ukryłeś.

Sam zbudowałem coś podobnego i nie mam problemów z odczytem temp s DS18B20 więc gdzieś masz błąd w połączeniach lub programie.

Odnośnik do komentarza
Udostępnij na innych stronach

sono2020 źle mnie zrozumiałeś. Mam czujnik LM35, ale równocześnie kupowałem do innego termometru DS18B20 i myślałem, że może zostały pomylone, ale to już wykluczyłem.

Wydaje mi się, że problemem jest napięcie. Podłączyłem z ładowarki która ma 5,26V (na pin 5V) i takie idzie też na czujnik i stąd myślę, że jest problem. Spróbuje podłączyć  to do USB - może Arduino ustabilizuje i obniży napięcie do 5V. Jeśli nie to zmienię zasilacz i podłącze normalnie przez gniazdo zasilania w opisie znalazłem, że napięcie zasilania ma być 7-12V.

Odnośnik do komentarza
Udostępnij na innych stronach

Apropo napięcia to widzę że nie odrobiłeś lekcji z arduino, na płycie UNO jak i innych jest pin VIN do którego powinieneś podłączyć napięcie 7-12v dzięki temu stabilizator w arduino dostosuje je do wymaganego ale trzeba pamiętać że wydajność pinów na arduino jest niewielka. W przypadku podłączenia nie do USB nie do VIN i nie do złącza zasilacza arduino dostaje napięcie takie jak generuje zasilacz.

A co do niezrozumienia to niestety piszesz nie jasno sam swoje skróty myślowe rozumiesz ale my już nie koniecznie.

A tu masz PINOUT

post-38116-0-23236000-1480580556_thumb.png

Odnośnik do komentarza
Udostępnij na innych stronach

Podłączyłem tak sugerując się postem #42

Skoro może być zasilane z USB, to jeśli podłącze tam ładowarkę (USB od tabletu), która ma 5,26V to będzie działać, czy muszę zmienić zasilacz na wyższe napięcie tj. 7-12V?

Odnośnik do komentarza
Udostępnij na innych stronach

Złącze USB potrzebuje poprawnego napięcia i ustabilizowanego jak masz inny zasilacz to go podmień na jakiś z zakresu 7-12V i podłącz do VIN lub jakąś ładowarkę USB do USB, napięcie 5,26 jest za małe żeby go puścić przez stabilizator 5V, choć układ powinien chodzić na takim zasilaczu, choć tak jak piszesz pewnie problemem będzie napięcie z zasilacza impulsowego gdyż LM35 mierzy temperaturę na zasadzie pomiaru napięcia. Jak możesz to podłącz nawet przez USB bez zasilacza do komputera i zobacz czy też Ci odczyty wariują. Osobiście LM35 nie używałem do pomiaru temperatur więc innej koncepcji nie mam.

Odnośnik do komentarza
Udostępnij na innych stronach

Może pomyliłeś wejścia CO CWU? Jak nie, to trzeba dać rezystor 4,7 kOm między zasilaniem i wyjściem czujnika. U mnie jeden czujnik działa bez rezystora, a drugi pokazywał byle co, jak dałem rezystor, to stało dobrze. Na płytce Arduino zasilanie z USB jest połączone z wyjściem wbudowanego stabilizatora i idzie na pin 5V. U siebie podaję na ten pin napięcie z zewnętrznego zasilacza. Na to nie używane wejście CWU trzeba dać "zero". I dobrze jeszcze dać uziemienie na całość, u mnie bez uziemienia to temperatura z termopary skakała +- 10°.

Tam są dwie liczby TS na wyświetlaczu, pierwsza, to z termopary, a druga, to ta którą sterownik wyliczył. Jak program działa między nimi strzałka, a jak stoi to krzyżyk.

Odnośnik do komentarza
Udostępnij na innych stronach

Czujnik rzeczywiście był podpięty pod cwu - nie wiem dlaczego, ale temperatura CO rosłą gdy podgrzewałem czujnik, cwu może też rosła, ale nie zwróciłem na to uwagi.

Zrobiłem więc tak:

czujnik CO pod A1. Opornik 15K (z takim u mnie działa najlepiej, sprawdziłem kilka od 3k6 do 30k) połączony z "-" i A1 - temperatura stabilna i chyba poprawna, czujnik na podłodze przy oknie wskazywał 20*C, a termometr na ścianie 22*C.

A0 połączyłem z "-" - cwu wskazuje 00

Zasilanie - pozostał zasilacz 5V - wziąłem na próbę ze sklepu zasilacz 12V i nie było żadnej różnicy, bez opornika czujnik tak samo źle wskazywał, więc oddałem - po co przepłacać ;)

Na razie to tyle, jak zamontuję do kotła (może w sobotę) to napiszę.

Jeszcze raz dziękuję bardzo za pomoc.

 

PS

Dam uziemienie jak zamontuje, na razie termopara wskazuje stabilnie, ale "kopie" jak się jej dotknie i uziemienia ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Dziś 3 dzień paliłem z tym miarkownikiem i się coś *** :angry:

Pierwsze 2 razy paliło się dobrze - stabilnie.

Termopary używam na razie tej krótkiej (długą kupiłem, ale jeszcze nie dotarła) - pokazuje o jakieś 40*C mniej niż termometr, ale dość stabilnie.

Czujnik temp. CO również zaniża trochę temperaturę - wskazuje 68*C, gdy ciepłomierz pokazuje 73*C.

Ustawiłem więc temp. spalin na 170 (mierzona termometrem pokazuje tak 200 - 210*C) - paliło się stabilnie.

A Dl cykl C -3

mnożnik serwa - 6

 

Dziś przez 2 godziny paliło się dobrze, później wyszedłem z piwnicy i wróciłem  po 30 min. Usłyszałem, że serwo co chwila zamyka i otwiera PG

Na wyświetlaczu temp. spalin była stabilna natomiast temp CO skakała od 40 - 150*C, temperatura obok tej z termopary, która była ustawiona na 170 również się zmieniała na 120, 140, 170 i tak w koło.

Wyłączyłem na chwilę zasilanie. Po ponownym włączeniu zaczęło pracować stabilnie, ale tylko przez chwilę. Po chwili znów temperatura zaczęła skakać i to samo co wcześniej - musiałem przełączyć na stary miarkownik.

Co może być przyczyną?

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Używając tej strony zgadzasz się na Polityka prywatności.