Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

AtTiny13 - Wentylator i zmiana programu

Bulionik 27 Mar 2016 23:32 744 5
  • #1 27 Mar 2016 23:32
    Bulionik
    Poziom 12  

    Witam szanowne grono..

    Posiadam wentylator z timerem, który bardzo mocno mnie irytuje w trakcie działania, a mienowicie jak tylko zapalę światło to warcy:/ a regulować mogę czas warcenia po zgaszeniu światła.

    Chciałem wywalić ten sterownik i wstawić jakiegoś HomeMade'a na arduino ale po wydłubaniu okazało się ze siedzi tam AtTiny13. i jest złącze do programowania więc po co wyważać otwarte drzwi??


    Problem polega na tym iż dopiero zaczynam zabawę z Arduino od totalnego ZERA, więc taki kontroler jest mi obcy :(

    Czy jest ktoś chętny do pomocy w w/w sprawie ?? Potrzebuję programu, ale nie na zasadzie gotowego HEXa, ( masz wgraj i nie pytaj) tylko program z objaśnieniem jak to nalaży ugryźć pisząc program.

    założenia są proste ( mam nadzieję)

    HARD
    - Attiny zasilane z sieci 230V przez 2 rezystory
    - na wyjściu jest chyba triac czy thyrystor ( nie przyglądałem się dokładnie)
    - jedno wejście to sygnał zapalonego światła również przez rezystor z sieci 230V
    - drugie wejście potencjometr regulujący czas działania po zgaszeniu światła

    SOFT
    - Program ma działać tak że po zapaleniu światła ma odliczać 5minut.
    - Jeśli stan zapalonego światła będzie krótszy niż 5min, nic się nie dzieję i oczekuje kolejnego stanu zapalonego światła
    - Jeśli światło paliło się dłużej niż 5min, to uruchamia wentylator na np.20sek, po czym znów odczekuje 5min ( i tak ciągle dopóki światło jest zapalone)
    - Jeśli światło zostało zgaszone po czasie dłuższym niż 5min uruchamia wentylator na czas np.3min

    Można by dopisać że potencjometrem regulujemy czas przewiewu w trakcie i po ?? ( przewiew w trakcie jako A, a przewiew po jako 8xA)

    Próbowałem ogarniać program w C++ ale brak mi chyba jeszcze dostatecznej wiedzy o możliwościach i funkcjach języka, oraz od czego zacząć:-) bo zwykłe delaye nie wystarczą :D

    0 5
  • #2 28 Mar 2016 12:18
    tmf
    Moderator Mikrokontrolery Projektowanie

    Skoro chcesz użyć ATTiny13 to raczej ogarnij asembler, bo w C++ i Arduino nic na tym procku nie zrobisz.

    0
  • #3 28 Mar 2016 13:50
    BlueDraco
    Specjalista - Mikrokontrolery

    W C jak najbardziej da się to zrobić - przynajmniej 80 średnio gęstych linii.

    Jak to zrobić?

    Programujesz timer na zgłaszanie przerwań ze stałą częstotliwością rzędu 50..100 Hz. W przerwaniu timera sprawdzasz stane wejść, odliczasz czasy na zmiennych i sterujesz stanem wyjścia. Podejrzewam, że całość zamknie się w max. 30 liniach kodu w C.

    Wcześniej musisz rozrysować schemat. Być może w oprogramowaniu jest też (i powinno być) wykrywanie przejścia przez 0 i załączanie triaka w zerze.

    0
  • #4 28 Mar 2016 22:12
    Bulionik
    Poziom 12  

    AtTiny13 - Wentylator i zmiana programu AtTiny13 - Wentylator i zmiana programu

    Więc fotki powinny być widoczne, schemat rozrysowany i po mojemu nie widzę tam wykrywania ZERA sieci, chyba że załatwia to od razu wejście PB2, ale obawiam się że elektrolit by troszkę fałszował. Po drugie chyba wykrywanie nie jest tu potrzebne bo nie regulujemy obrotami tylko stan 0 i 1 :-)

    Dzięki za jakiś blokowy opis jak zacząć pisać program, więc musze się doszkolić z timerami i przerwaniami, bo tego nie bardzo potrafię ale będę waleczny :-) chyba że jakieś przykłady podsuniesz :p

    Mam kolegę który pisze programy ale jest zawalony troszkę robotą, napisał mi niby gotowy wsad, ale niestety coś nie działa, podobno testował na prototypie i było OK, ale zasilał z zasilacza i sterował przyciskami. U mnie jest efekt taki że po włączeniu zasilania na L i N went startuje i po około 5minutach wyłącza się na około 1minutę więc coś nie tak chyba z kodem.

    Mam pliki AVR Studio bo w nim pisane ale nie mam samego programu więc nie moge podejrzeć co i jak :( dlatego nie pozostaje mi nic innego jak pisać od początku.

    Najpierw najprościej będzie mi napisać KOD dla arduino, aew. później zajmę się przepisaniem dla attiny :D

    0
  • #5 28 Mar 2016 22:36
    BlueDraco
    Specjalista - Mikrokontrolery

    Kodu dla Arduino raczej w ATtiny13 nie wpakujesz.

    0
  • #6 28 Mar 2016 23:56
    Bulionik
    Poziom 12  

    To przypuszczam ale schemat i zasade kodu rozgryze. W arduino czyli c++wiem ciut wiecej

    0