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

Sterownik mikrokontrelerowy oświetlenia.

07 Lis 2004 00:10 4716 28
  • Poziom 15  
    Witam !

    Ostatni postanowiłem pójść z duchem czasu i zbudować system służący do sterowania włączaniem oświetlenia ogrodowego...

    Chodzi mi o stworzenie mikrokontrolera, który przy pomocy wyświetlacza LCD będzie komunikował się z użytkownikiem (przewijanie opcji, włączy, wyłącz) i wysyłał sygnał do elementów wykonawczych (np. przekaźniki), a jednocześnie umożliwiał wymianę informacji z komputerem (włączanie, wyłączanie, sprawdzanie stani)...
    całość powinna obsługiwać min. 32 wyjścia...

    czy ktoś z Was mogłby mi wytłumaczyć w miare przystępnym językiem, jak takie coś zrobić ?

    Pozdrawiam
    Patryk
  • OptexOptex
  • Poziom 28  
    Ale co zrobic ?
    Przekazniki najlepiej podlaczyc do jakis 4 rejestrow przesuwnych poprzez tranzystory sterujace. Wtedy zostaje Ci cala masa nozek w uC do podlaczenia wyswietlacza i klawiszy oraz RS do komputera. A potem pisanie programiku.
    Pozdro
    Dexter
  • Poziom 16  
    Widzę że chcesz coś zaprogramować !!! na początek radzę Ci zacząć od czegoś naprawdę prostego BASCOM-AVR !!!. Ściągnij sobie darmową wersję helpa PL i do dzieła. Jak sobie i z hepem nie poradzisz to zajć do sklepu elektronicznego na pewno maja w nim kącik z gazetkami elektronicznymi i kup sobie proponowaną przez AVT gazetkę o baskomie. Tam jest wyjaśnione wszystko ja dla 11 latka.
    Pozdrawiam
  • Poziom 15  
    Witam !

    Hmm.. a jaki kontroler byłoby najlepiej zastosować ?
    do tego szukam jakiegoś kompatybilnego wyswietlacza i jesli ktos moglby mi opisać lub podać adres, gdzie jest opisane (narysowane), jak to podlaczyc wszystko w miare prosto, to bylbym bardzo wdzieczny...

    Mikolaj_pl: z kąd można ściągnąć helpa do BASECOM'a i BASECOM'a AVR ?

    Dexter77 napisał:
    Przekazniki najlepiej podlaczyc do jakis 4 rejestrow przesuwnych poprzez tranzystory sterujace. Wtedy zostaje Ci cala masa nozek w uC do podlaczenia wyswietlacza i klawiszy oraz RS do komputera


    czy do ich podłączenia można użyć czegoś takiego: ?
  • VIP Zasłużony dla elektroda
    Good idea... :) kontroler to np. ATiny26 albo AT89C1051, osobiście wolałbym ATiny(rodzina mikroprocesorów AVR RISC), bo jest szybszy przy podobnej cenie, a programator nie jest zbyt skomplikowany. Oczywiście polecam przeczytanie dokumentacji na stronie producenta, również układów z rodziny '51. Help Bascoma to np. google
  • Poziom 28  
    xPatryk dokladnie tak. Mozesz wtedy ile chcesz podlaczyc przekaznikow.Kazdy wyswietlacz oparty na HD44870 lub odpowiedniku bedzie dobry, jest duzo przykladow i gotowych procedur. Procesor mysle ze jakis z wew. flashem np. 89S52,ATmega16. Latwe w programowaniu i nie wymagaja drogiego programatora. Program mozna pisac w bascomie chyba dla Ciebie bedzie to najlepsze rozwiazanie.
    Pozdro
    Dexter
  • Poziom 15  
    Witam !

    czy może być to np. taki wyświetlacz ?

    jaki najlepiej programator zastosować i jaki byłby mniej więcej jego koszt ? najlepiej jak najtańszy :(
  • VIP Zasłużony dla elektroda
    Wyświetlacz ładny, dużo się na nim zmieści, Bascom obsługuje. Pisałem wyżej o programatorze do AVR i niektórych '51, 1 scalaczek( 1PLN) + wtyczki(do 5 PLN) to nie jest duzy koszt... :) A w tworzonym projekcie robisz gniazdko do programowania z rezystorkami separującymi i finito...
  • OptexOptex
  • Poziom 15  
    Ten programator jest strasznie skomplikowany :(
    a czy nie moze to byc mniej/więcej taki programatorek ?
    na liscie sa wymienione układy AVR...
    jesli tak, to czy ktośma może jego schemat ?

    Pozdrawiam
    Patryk
  • Poziom 15  
    Hmm..
    znalazłem na jakiejś ruskiej stronie układ 89S52.
    czy to o takie coś chodziło ?
    a jeśli tak, to jak to przecież tamten przedstawiony programator nie ma takiego gniazdka, na az tyle wyprowadzen ?
  • VIP Zasłużony dla elektroda
    Liczą się wyprowadzenia opisane MOSI, MISO, SCK, RESET, podłączony kwarc, no i oczywiście zasilanie, to wystarczy do zaprogramowania. ;)
  • Poziom 15  
    Czyli poza programatorem potrzebuję:

    Wyświetlacz tekstowy LCD 2x40
    Chipset: HD44780 lub odpowiednik
    Procesor: AT89S52
    4 rejestry przesówne (MC14094)
    przekaźniki, tranzystory (BC337), diody (BYP401-50), rezystory (22k)
    4 mikroprzełączniki
    płytkę

    i czy coś jeszcze ?
  • VIP Zasłużony dla elektroda
    kwarc, kondensatory ?
  • Poziom 15  
    a jak kwarc i jakie kondensatory powinnem uzyć?
  • Poziom 18  
    Potrzebny bedzie Ci procek z wieksza iloscia RAM, standardowo jest 256b i moze Ci nie starczyc. Wiec polecam Ci AT89C51RC2/RB2 (30-40zl), do tego ULN2003A (1-1.5zl) (zwiekszaja obciazalnosc prodowa portow), za tym jakis uklad rozrzerzen portow np. 8255 (5zl), LCD (2x16 35zl), kilka swiczy do obslugi menu, przekazniczki np. TS24 (I=1A, U=18V 1sz 3zl), do tego mozesz dorzucic max232 lub max485 zeby moc przez COM z PC sterowac oswietleniem np. przez protokól ModBus.
    Kwarc 11.0592mhz, zupelnie wystarczy kondensatory - zalezy do czego.
    Oprogramowanie bascom lub w C.Jesli chodzi o C kopmpilator SDCC-darmowy lub Keil - komercyjny.
  • Poziom 15  
    Witam !

    a czy zamiennie mozna zastosowac w/wspomniany wyswietlacz 2x40 (jest tanszy i wiekszy)...

    tzn. jak jest z tymi kondensatorami ?
    nie wiem do czego one maja być ?
    czy może one są niepotrzebne ?

    i czy to juz beda wszystkie elementy ?
    a gdzie mozna kupic to wszystko ? chodzi mi o adres sklepu internetowego
    bo w tym http://www.nikomp.com.pl/ nie ma takiego procka :(

    Pozdrawiam
    Patryk
  • Poziom 29  
    Widziałeś scalaczki w obudowach TQFP? Maleńkie, nóżki bliziutko jedna obok drugiej, brak podstawek, a przy pierwszych eksperymentach coś MUSI pójść z dymem, radziłbym raczej coś w obudowie DIP lub PLCC. Dwa kondensatory potrzebne są do budowy kwarcowego oscylatora, maleńkie, powiedzmy 22pF. Popatrzyłeś na płytkę którą poleciłem, wydaje się być bardzo fajna do eksperymentów i nie tylko. Można wlutować tylko niezbędne części, np. procesor, kwarc, kondensatory o których mówiłem i już mamy działający sterownik, jeszcze nie, potrzebny może być układ RESETowania, ale jaki to już zależy od tego jaki procesor wybierzesz, zwykle wystarczy oporek i kondziorek, a jeszcze lepiej jakiś scalony układ bo przy okazji będzie pilnował napięcia zasilającego. Dodajemy jedną kość TTL parę oporków, gniazdo DSUB i mamy programator, jeszcze MAX232, 4 kondensatory, gniazdko i mamy szeregowe łącze RS232 żeby pogadać z PC. Płytka zaprojektowana dla mniejszego wyświetlacza, ale to nie problem. Wymiary wyświetlacza to mniejszy problem, ważniejsze jest jaki zamontowany jest na nim sterownik, dobrze jeśli jest to kość dobrze znana bo nie trzeba będzie wymyślać sposobów obłaskawienia ustrojstwa. Jest też miejsce na parę guzików, LEDów i kilka układów scalonych. Wszystko to łączysz pajęczyną kabelków, ale i tak masz porządnie zrobioną płytkę, a to trudne do uzyskania w domu. Pewne gotowe rzeczy ułatwią ci start. Procesor już wybrałeś, ’51 straaaaaszny staroć ;) ale bardzo udany i wiecznie młody.
  • Poziom 28  
    rtom kolega xPatryk nie robi komputera sterujacego rakieta kosmiczna tylko prosty sterownik oswietlenia. Ramu mu starczy nawet polowa. Do przechowywania stanu przekaznikow 4 bajty, do obslugi menu pewnie z 1 bajt na rozne flagi statusu programu, jakies 2 bajty na klawiature,ze dwa bajty na zmienne pomocnicze/tymczasowe, kilka bajtow do obslugi zegara/kalendarza. Jak zuzyje 20 bajtow to bedzie gora. Jeden procesor + 4 rejestry przesuwne zalatwia wszystko nie potrzeba rozszarzac zadnych portow. Do wyswietlacza 11 pinow, klawiatura 8 pinow,do obslugi rejestrow 3 piny, RS 2 piny. To jest 24 piny 3 porty. Zostaje jeszcze jeden port. Kwarc faktycznie moze byc w zasadzie dowolny oby tylko dalo sie uzyskac jakies rozsadne predkosci transmisji RS (jezeli bedzie opcja podlaczenia do komputera)
    Do pisania zdecydowanie BASCOM. Jest w miare prosty i ma gotowe procedury np. obslugi wyswietlacza. Zadne C, to dopiero po napisaniu pierwszego programu i poznaniu troche terminologii procesorowej.
    Pozdro
    Dexter
  • Poziom 18  
    Klawiaturke mozna sobie podarowac, wystarcza 2-3 swicze i mozna zbudowac wielopoziomowe menu na LCD i zaoszczedzi sie piny. Co do rozszerzen portow, to podalem jedyny sposob jaki znam i jaki uzywalem i wydal mi sie banalny (samo podalczenie i oprogramowanie).
    A z pamiecia moze rzeczywiscie troche presadzilem. Chyba mam zle doswiadczenia z AT89S8252, kiedy to w pewnym momencie zabraklo RAMU. Co do sklepu to np. sqero, cyfronika, ms elekrtronik, jak mieszkasz w jakims wiekszym miescie to mozna dostac w normalnej sprzedazy. Choc nie jest to regula.
  • Poziom 15  
    uff... to dobrze, że '51 wystarczy :)
    jest przynajmniej 4 x tańszy ;P

    Właśnie wybieram się do sklepu po:

    Wyświetlacz tekstowy LCD 2x40
    Chipset: HD44780 lub odpowiednik
    Procesor: AT89S52 (lub ?51) (DIP lub PLAC)
    4 rejestry przesuwne (MC14094)
    przekaźniki, tranzystory (BC337), diody (BYP401-50), rezystory (22k)
    4 mikroprzełączniki
    płytka
    kwarc
    kondensatory
    ULN2003A



    czy coś jeszcze zapomniałem ?
  • Poziom 29  
    A nóżka RESET? Jeśli będzie "wisieć" w powietrzu nie będzie dobrze. Sprawdź w karcie katalogowej µC (wystarczy kondensator 10µF/16V)
  • Poziom 27  
    xPatryk napisał:
    uff... to dobrze, że '51 wystarczy :)
    jest przynajmniej 4 x tańszy ;P

    Właśnie wybieram się do sklepu po:

    Wyświetlacz tekstowy LCD 2x40
    Chipset: HD44780 lub odpowiednik
    Procesor: AT89S52 (lub ?51) (DIP lub PLAC)
    4 rejestry przesuwne (MC14094)
    przekaźniki, tranzystory (BC337), diody (BYP401-50), rezystory (22k)
    4 mikroprzełączniki
    płytka
    kwarc
    kondensatory
    ULN2003A



    czy coś jeszcze zapomniałem ?


    Witam..
    Tak dla scilosci, wyswietlacz jest oparty na sterowniku (chipsecie) HD47780, to nie sa dwa oddzielne elementy, chipset jest wbudowany w wyswietlacz... Chodzi o to zeby ten LCD byl wlasnie na tym chipsecie zeby go mozna bylo latwo wysterowac.
    Jesli chcesz ustawiac godzine o ktorej ma sie wlaczac i wylaczac oswietlenie czy tez daty to kup takrze jakis RTC (zegar czasu rzeczywistego) np. PCF8583 na szyne i2c.

    Pozdrawiam...
  • Poziom 18  
    A maja byc tam jakies czujniki? Bo wtedy przydalyby sie jeszcze schmitty.
  • Poziom 15  
    Jezeli sie da, to bardzo chętnie :)
    np. czujnik zmierzchowy, czujnik ruchu, wyprowadzenie systemu alarmowego, itd...

    a ile moze byc maksymalnie wejsc na czujniki ?
  • Poziom 27  
    Wejsc tyle ile ma mikrokontroler wejsc/wyjsc Jesli ma np 3 porty to ma 3x8 czyli 24 wejscia lub wyjscia, to mozna konfigurowac indywidualnie
    Np taki at89c2051 ma 2 porty (w jednym porcie jedno we/wy nie jest dostepne z zewnatrz czyli -1) i masz 16-1 czyli 15 we/wy jedno mozesz wykorzystac do podlaczenia przekaznika do wlaczenia oswietlenia pod pozostale podpiac czujniki albo zrobic np 4 sektory oswietlenia i wowczas masz 11 wejsc na czujki, musisz odjac we/wy na klawiaturke czy LCD, jak za malo portow to zawsze mozna dac jakis expander

    Pozdrawiam
  • Poziom 18  
    Jasne ze sie da ile chcesz, jak brakuje portow to tez nie problem, lae musisz dac np.rezystory+transoptor pc817+schmitt i dopiero do wejsc do procka.
  • Poziom 27  
    Jesli lubisz stukanie przekaznikow to starczy uln2803 i przekaznik, do tego uln 2803 mozesz dac bezposrednio 8 przekaznikow i sterowac nimi z procka bez dodatkowych elementow, tu masz standardowy uklad wykonawczy do sterowania 230V przez procka https://www.elektroda.pl/rtvforum/topic191440.html

    Pozdrawiam
  • Poziom 15  
    Udało mi się już zgromadzić wszystkie części...

    teraz tylko jeszcze kolejna prośba o pomoc...

    czy ktoś z Was mogłby mi pomóc i wytłumaczyć, jak to wszystko połączyć ?

    czy klawiature matrycowa (4x4) mozna podlaczyc po tak po prostu do jednego z portow ?
    np od P0.0 do P0.7, podobnie wejście danych strobujące i zegarowe pierwszego rejestru przesównego do P1.0 - P1.2,
    wyświetlacza (pin 7-14) do P2.0 do P2.7 ?

    jeśli tak, to jak podłączyć wejścia i komunikację z PC ?

    co z pozostałymi pinami ?