• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Wyłączenie zasilania po osiągnięciu określonej temp
#1
Wi tam wszystkich bardzo gorąco jako nowy użytkownik tej społeczności.

Od jakiegoś czasu bawię się z arduino a w zasadzie z czymś pokrewnym- Nodemcu.
Do tej pory bawiłem się termometrami przez blynka itp jednak teraz chciałbym na zwykłym arduino podłączyć sondę DS18b20 przekaźnik SSR i tak napisać program aby po oosiągnięciu odpowiedniej temp wyłączył się zasilanie. Czy ktoś robił coś podobnego i może mi pomóc lub nakierować na dobrą ścieżkę? Urządzenie które chce wyłączyć zasilanie jest z gniazdka 220-230V.
 
Odpowiedź
#2
Jakie obciążenie ma mieć układ? Po co angażować Arduino ,to prosty układ wystarczy zwykły termostat NC na żądaną temperature +przekažnik i masz gotowy układ.

Wysłane z mojego Redmi Note 4 przy użyciu Tapatalka
 
Odpowiedź
#3
Po to, że po prostu robi to dla zabawy i nauki. Ścieżkę znajdziesz na kursie, jak dojdziesz do millis to powtórz wszystkie zadania bez delay: https://forbot.pl/blog/kurs-arduino-pods...rsu-id5290 . Ilość oczywistych nie/wiadomych i "głupich" pytań zmniejszy się o kilkadziesiąt procent. A forach jest pełno kodów termostatów, bo sam takie wrzucałem. Taka ikonka lupki na górze forum...
 
Odpowiedź
#4
W sumie masz rację, jeśli dla zabawy i/lub nauki to czemu nie. Podrzuciłem temat bo sam robiłem taki układ do sterowania zaworem kulowym z siłownikiem do włączania dodatkowego obiegu grzewczego w układzie CO, i działa od ok 3 lat

Wysłane z mojego Redmi Note 4 przy użyciu Tapatalka
 
Odpowiedź
#5
Ja zbudowałem zgrzewarkę do folii na Arduino z termoparą i SSR.
Termostat jest na PID, automatyczne zamykanie i otwieranie szczęk zgrzewających. Jest licznik serii produkcyjnej oraz dzienny. Przebieg ogólny urządzenia zapisywany w EEPROM. Tryb automatyczny zależny od grubości materiału, lub sterowanie ręczne dla temperatury i czasu zgrzewania.
Jak autor tematu jest zainteresowany, to mogę tego PID'a udostępnić.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
#6
(19-07-2018, 17:21)Robson Kerman napisał(a): Jest licznik serii produkcyjnej oraz dzienny. Przebieg ogólny urządzenia zapisywany w EEPROM.
Jak rozwiązany jest zapis do eeprom? Gwarantowna liczba cykli zapisu to 100.000. 100.000 zgrzewów to nie dużo.
Kod z Delay i/lub bez WDT to nie kod, to DEMO!
Kod wymaga komentarzy!
Nie pomagam leniwym analfabetom.

Zaawansowana Sonda Logiczna


 
Odpowiedź
#7
Pierwsze pięć komórek, zapisuje 99999 zgrzewów i przesuwane jest adresowanie.
Zrobiłem to najprościej jak się dało, gdy total przekracza 99999, zmienna x zwiększana jest o 5, gdy przekracza1 99999, znowu dodaję 5 i tak dalej, aż dojdzie do 506.
Gdy x jest inkrementowane, to wiem że muszę dodać 99999 do odczytu EEPROM, co zapisuję do komórki 0.
Dla pierwszej cyfry wygląda to tak:
EEPROM.write(1+x, pierwsza cyfra);
W każdej komórce zapisuję pojedynczą cyfrę z łańcucha.
ITD.
Odczyt polega na przeczytaniu i ustawieniu wartości x z komórki 0 i dodaniu odpowiedniej liczby do wyniku.
Wiem, że to nie jest najlepsze rozwiązanie bo wykorzystuję tylko połowę każdego bajtu pamięci, ale więcej i tak ta zgrzewarka nie pociągnie (można zapisać 50 000 000 zgrzewów) .
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
#8
(19-07-2018, 22:47)Robson Kerman napisał(a): Pierwsze pięć komórek, zapisuje 99999 zgrzewów i przesuwane jest adresowanie.

Coś w rodzaju emulowanej EEPROM w FLASH.
Ostatnio do dużej liczby zapisów używam FRAM. Przy niedużych pojemnościach nie sa drogie. Problemem jest, że małe pojemności, najłatwiej kupic dla 4,5...5,5V :-( Na szczęście dotyczy too pamięci I2C, z FLASH jest lepiej (większy wybór), niestety aż 4 druty zamiast 2.
Alternatywą są EERPOM o pojemnościach 64KB (512kbit) i więcej. Nie z powodu pojemności a dużego bufora (64Bajty a nie 8 jak dla np 24LC02 - 256bajtów).
Dzięki temu, zapis do EEPROM jest "natychmiastowy" i mogę zrealizować go przez przerwania czy DMA.
Czasem używam DataFLASH. Tam bufor ma 512bajtów a pojemność 4 czy 16MB (32..128kbit) czyni ją praktycznie wieczną. Data flach mają unikalny identyfikator. W połączeniu z ID uC można dobrze zabezpieczyć licencjonowanie softu. Szybkość też czasem ma znaczenie (25mb/s) ale to raczej jako nośnik danych.
To czy duża EEPROM, FLASH, FRAM zależy od aplikacji. Mam taka, gdzie zapisuje co 10 sekund a danych nie jest dużo (podwójna kopia to łącznie niewiele ponad 100bajtów). Użyłem FRAM.
Kod z Delay i/lub bez WDT to nie kod, to DEMO!
Kod wymaga komentarzy!
Nie pomagam leniwym analfabetom.

Zaawansowana Sonda Logiczna


 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości