Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 4 maja 2025, o 17:02


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 
    Autor Wiadomość
    PostNapisane: 7 mar 2014, o 10:48 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Witam
    Mam problem a raczej nie wiem jak zrobić możliwość włączenia na dany czes i wyłączenia na dany czas jednego pinu w atmedze.Dodam ze w układzie mam PCF8583,ale nie mam bladego pojęcia jak zrobić takie ustawianie.Czy wykorzystać do tego PCF8583 czy Timer z atmegi ?
    Chodzi o takie coś
    Włącz na 10 minut wyłącz na 3 godziny i ponownie włącz na 10minu i wyłącz na 3 godziny i tak w kolko.
    Oczywiście ustawiane w menu czas i częstotliwość włączeń
    USTAW CZAS PRACY = 15min -tu nastawianie co minuty
    USTAW CZAS PRZERWY = 3godz -tu nastawianie co godziny
    Dopisałem obsługę timer1 do programu z przerwaniem co 1s
    Cykle pracy (włącz na 10 min i wyłącz na 3 godz) nie mają nic wspólnego z porą dnia (określona godzina ) lub kalendarzem i nie są mi potrzebne chyba do porównania z PCF.Myślałem raczej o zastosowaniu Timera1 który będzie odpalał przerwanie co 1s.
    Przerwania będą zliczane i wrzucane do wora co 60 impulsów przerwan czyli 60s=minuta
    następnie minuty na godziny 60min=1hour
    idea była taka jeśli teraz ustawimy w menu na to ze włącz na 3minuty wyłącz na 5godzin to to się stanie nie ważne co jest czy to jest niedziela czy wojna czy 12 w nocy lub 4rano tak jak ustawimy tak będzie się działo cyklicznie wkoło do tego próbuje doprowadzić swój kod prosił bym o jakieś wskazówki jak mam zastosować ten Timer1 do zliczania minut i porównania ich z ustawionymi w menu wartościami zmiennych
    Prosił bym bardziej doświadczonych kolegów o pomoc lub jakieś sugestie jak to ugryźć


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 mar 2014, o 22:11 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    masz zegarek wiec reszta jest juz prosta.Np: jeżeli będzie godzina 19.22 porta.1 =0 i teraz daj sobie zmienne, które będą zwiększane co jedna minute i dajesz if a= 10 then porta.1 =1. Później robisz drugi licznik ,który zlicz co godzinę ewentualnie tez minuty i jak minie określony czas zerujesz porta.1. Mniej więcej taki jest zarys.W sumie proste.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2014, o 18:27 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Myślałem o tym ze by użyć RTC ale tam by trzeba było przekształcać chyba każdą jedna sekundę minute i godzinę z BCD na DEC
    ze by porównać ze zmienna nastawiona w menu do włączenia lub wyłączenia a to już dużo zabawy a ja początkujący jestem i jeszcze takich kodów to nie napisze
    Wymyśliłem ze użyje Timer1 do odliczania sekund potem minut i na końcu godzin
    if sekundy =60 then
    incr minuty
    if minuty =60 then
    incr godziny
    coś w tym stylu
    zrobiłem dwie zmienne co by czas z sekund i minut tam przechowywać
    następnie zrobiłem dwie następne zmienne co by można było ustawić czas ON i OFF w menu
    jeśli jedna z druga się zgadza to port się wyłączy jeśli następna się zgadza z następna to port się włączy i zostają wyzerowane zmienne pobierające czas z pcf
    sprawa wygląda tak ze urządzenie będzie włączane na minuty ale przerwy będzie miało godzinne
    no program jakoś działa ale wymaga korekty

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 mar 2014, o 19:52 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    Jeżeli już chcesz tak robić to zrób programowy zegarek na Timer2. Potrzebujesz tylko dodatkowy kwarc zegarkowy.Prawie gotowy kod znajdziesz w helpie Bascom.jak będą problemy to pisz coś sie pokombinuje. Ten sposób ,który zastosowałeś będzie bardzo nie dokładny.No chyba ze nie potrzebujesz dokładnie odliczonego czasu.Przekształcenie z Bcd jest bardzo proste.Zresztą gotowe kody sa w necie .I ponownie jak będziesz z tym potrzebował pomocy to pisz.Najlepiej załącz to co masz.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 mar 2014, o 03:28 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Witam
    Dziekuje za zainteresowanie sie moim problemem.
    Timer2 jest uzywany przez inne przerwania mam wolny tylko Timer1
    Wiem ze najlepiej bylo by to zrobic na PCF ale konwersja BCD na DEC przeraza mnie

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 mar 2014, o 13:14 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Witam
    Moze wyślę ci cały projekt programu w którym brakuje tylko właśnie POMPY i LAMPY
    Nie wiem jak to zrobić ze by było dobrze wiem ze najdokładniej było by to zrobić na PCF8583 ale nie wiem za bardzo jak
    Wymyśliłem coś takiego jak widzisz na Timer1 ale mówisz ze nie będzie to dokładne
    Moze byś był w stanie mi pomoc?co by to zrobić nie na Timer1 tylko na zasadzie porównywania godziny z PCF8583
    Ale jak by to miało wyglądać w menu to pojęcia nie mam
    To co robię to jest sterownik hydrophonic do uprawy roślin
    Podlewanie roślin przy takiej uprawie nie wykonuje się raz czy dwa razy na dobę tylko kilkanaście razy na dobę gdzie czas podlewania może trwać np 20minut potem przerwa np 3 godziny i znów podlewanie przez 20minut i przerwa 3godziny i tak w kolko
    Co do lampy to lampa zastępuje słońce czyli tu już będzie czas pracy w godzinach i przerwy tez w godzinach np włącz na 12godzin i wyłącz na 12 godzin i znów włącz na 12 godzin i wyłącz na 12godzin i tak w kolko
    Wszystkie czasy chce mieć ustawiane w menu
    Menu jako takie już mam
    mam napisaną i dodana tez obsługę DS18B20 co by przy odpowiedniej temperaturze włączył się wywiew ciepłego powietrza z grow boxa po to aby rośliny nie miały za gorąco bo po prostu się spala mam tez napisany i dodany program do czujnika wilgotności powietrza co bym wiedział jaka jest wilgotność w grow boxie
    Dodaje cały projekt może coś wymyślisz


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 mar 2014, o 17:45 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Nie sam tego nie napisałem ja dodałem tylko DS18B20 i DTH11
    Cale menu i obsługę PCF dostałem od kolegi

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 mar 2014, o 21:25 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    prawdę mówiąc nie chce mi sie czytać tego kodu bo trochę tego jest.Z tego co tam widziałem to masz juz PCF.Godziny i minuty sobie odczytujesz.I teraz piszesz tak: If godziny =godziny_ust and minuty = minuty_ust then out =1.
    To tylko przykładowo. Te 10 minut spokojnie możesz sobie timerem odmierzać,albo jeżeli będziesz podlewał o pełnych godzinach to możesz zrobić tak: If out = 1 and minuty =20 then out=0.
    Tak samo możesz sterować światłem.Uważaj żeby Ci CBSie tej plantacji nie zlikwidowali :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 mar 2014, o 17:26 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Kolego grzeniu 73
    Cytuj:
    prawdę mówiąc nie chce mi sie czytać tego kodu bo trochę tego jest

    No jest przecież to konkretny sterownik a nie włącznik do lampki nocnej.
    Cytuj:
    Godziny i minuty sobie odczytujesz.I teraz piszesz tak: If godziny =godziny_ust and minuty = minuty_ust then out =1.
    To tylko przykładowo.

    Kolego jak by to było takie proste to bym tematu na forach nie zakładał tylko sobie sam z tym poradził.
    Cytuj:
    Uważaj żeby Ci CBSie tej plantacji nie zlikwidowali

    http://www.youtube.com/watch?v=FxVHS9o5yDA
    Bazylia,rozmaryn i inne herbs-y

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 mar 2014, o 14:06 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    No właśnie to jest w miarę prosty sterownik,tylko trochę skomplikowanie napisany.Napisz ,czy wogóle coś działa w tym co tam masz.To co Ci napisałem to prawie gotowiec.I masz tam podobnie w sterowaniu Fan.
    Składnia: [ Pobierz ] [ Ukryj ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Podałem Ci przykład z mojego programu.Zadeklaruj sobie zmienne dim flaga_out as Bit.
    Potrzebujesz tez zmienne godz_ust i min_ust. W pętli głównej wklejasz to co Ci podałem wcześniej i gotowe.Program będzie porównywał zmienna z Pcf i godzina i minuta podana w godz_ust i min_ust.Takich zmiennych możesz sobie zrobić tyle ile potrzebujesz.Lub jeżeli może sie to włączać w pełnych godzinach to piszesz tak: if hour = 3 or 5 or 7 or 10 and minute<1 then flaga_out =1
    a żeby wyłączyć if minute=20 then flaga_out=0.Nie wiem jak jeszcze moge pomoc.Najpierw po testuj co Ci podałem.Mozna to napisać na wiele innych sposobów.Niestety ,ale całego programu ot tak Ci nie napisze.Musisz sobie to testować co masz i dopisywacz po kolei dodatkowe funkcje.Z Cbs to byl żart.Mialem nadzieje ,ze będzie zrozumiany.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 29 mar 2014, o 09:57 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Program działa wyśmienicie ale brakuje mi ustawień do lampy i pompy
    Właśnie z plikami PCF8583.bas i Config_PCF8583.bas to ja za bardzo nie wiem co i jak bo tak jak już mówiłem wcześniej program mam w spadku ja tylko dopisałem do tego DTH11 i DS18B20 i pozmieniałem napisy w menu
    Na temat Bascom coś tam wiem ale nie za dużo

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 mar 2014, o 02:16 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Witam jako że jestem w pracy to nie sprawdzętego teraz.
    a na jakie zasadzie jest mierzony czas?
    na porównaniu z PCF8583 czy z timer?
    Jestem w domu i wgrałem już ten soft ale nie wiem jak ustawić czas przerwy.

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 31 mar 2014, o 04:04 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Witam
    czy możesz przerobić tak ten program ze by działał w 100%
    bo za bardzo ja nie wiem co i jak
    bardzo cie proszę o pomoc bo chyba sam sobie z tym nie poradzę.

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 31 mar 2014, o 14:18 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 mar 2014
    Posty: 85
    Lokalizacja: Greystones-Irlandia
    Pomógł: 1

    Wszystkie czasy maja być ustawiane w menu nie zależnie (nie na stale)
    tz
    czas włączenia-lampy godzinowo
    czas wyłączenia-lampy godzinowo
    czas włączenia-wody minutowo(wody nie włącza się na 2-4-6 godzin tylko np na 20minut czy 40minut)
    czas wyłączenia-wody godzinowo

    temperatura od 0 do 40
    lampa od 0 do 24 godziny
    a woda nie wiem jak to rozwiążesz ze ON na minuty a OFF na godziny
    jak byś umiał takie coś zrobić ze startuje na minutach i w momencie 60 minuty wskakuje na 1 godziny nie wiem czy rozumiesz mnie.
    kręcisz ekoderem masz 0:59min i teraz wskakuje na 1:00 godzinę myślę że powinieneś mnie teraz zrozumieć
    Lampę w sumie możesz machać na PCF
    np włącz o 22:00 wyłącz o 6:00 na tej zasadzie bo lampa będzie uruchomiona na długo min12godz
    Menu jakie zrobisz takie będzie czy to EN czy PL można zmienić w bascomie chyba ze planujesz w ogóle na innym kodzie źródłowym mi to zrobić
    Program cały niech startuje dopiero po ustawieniu czasów w menu
    ustawiasz czasy wychodzisz i jest start zaczyna liczyć.
    Dziękuje bardzo za pomoc i zainteresowanie się tematem.

    _________________
    Faber Est Quisque Suae Fortunae



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO