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.

[ATMEGA-16A] Pierwszy projekt. Wyświetlacz cen.

daniio2 23 Kwi 2017 17:58 903 3
  • #1 23 Kwi 2017 17:58
    daniio2
    Poziom 9  

    Cześć,

    Zaczynam się wgryzać w temat programowania mikrokontrolerów ponieważ zrodziła się potrzeba wykonania konkretnego projektu. Przy okazji uważam, że zdobyta wiedza może mi się przydać w przyszłości. Otóż chciałbym zbudować wyświetlacz cen dla stacji paliw. Miałbym w związku z tym kilka pytań jednak najpierw dwa bardzo ogólne założenia:

    - 2x 7 segmentowy wyświetlacz(3 cyfry, własnej roboty) z podświetleniem LED
    - sterowanie z komputera oddalonego 15/20 m od wyświetlacza

    Jako, że jest to mój pierwszy projekt(no oprócz migania diodą) myślę jak to wszystko ogarnąć, żeby w połowie nie okazało się, że czegoś nie da się zrobić, albo że dokonałem gdzieś złego doboru komponentów. Całość podzieliłbym na trzy etapy:

    - komunikacja z PC
    - budowa wyświetlacza LED
    - obsługa wyświetlacza

    Myślałem, żeby zacząć od czegoś co wydaje mi się prostsze czyli od komunikacji kontrolera z PC i tutaj będę miał pierwsze moje pytanie. Jednak proszę bardziej doświadczonych o rady czy przy moim kontrolerze da się ten cały projekt zrealizować. Żeby nie zaśmiecać forum myślę, że w tym jednym wątku będę ciągnął cały projekt i zadawał wszelkie pytania.

    Pierwsza myśl to wykorzystać USB w komputerze. Dlaczego?
    - bo już jeden port USART zgodny ze standardem RS232 mam w PC zajęty i musiałbym dokupić jakiś moduł rozszerzający(słyszałem, że można obsłużyć więcej urządzeń przy wykorzystaniu jednego portu, ale to wymaga odpowiedniej obsługi/adresacji urządzeń, a jako, że jest to mój pierwszy większy projekt to raczej nie będę się rzucał na głęboką wodę).
    - gdybym chciał taki wyświetlacz wykonać dla kogoś to zapewne z wolnym portem USB nikt nie miałby problemu.

    Pracuję na mikrokontrolerze ATMEGA16A i wiem, że nie ma wbudowanej obsługi interfejsu USB. Jest natomiast USART. Widziałem na forum, że zalecane są w tym przypadku różne opcje:
    - wybrać mikrokontroler z obsługą interfejsu USB
    - wykorzystać takie układy jak FT232RL

    Druga myśl to pozostać przy standardzie RS232 i wykorzystać specjalny przewód-emulator(DE-9 > USB). Czyli podpinam przewód USB do PC a ten widzi to jako port COM. Za tym rozwiązaniem przemawia do mnie argument, że po pierwsze podobno okodowanie komunikacji po USB jest trudniejsze, a po drugie może warto zacząć od RS232 żeby się tego nauczyć w końcu jest to nadal powszechnie wykorzystywany rodzaj komunikacji.

    Pytanie, które podejście byście mi radzili na początek. Wziąć jednak należy pod uwagę, że odległość urządzenia od komputera może wynosić ok 20m. Nie znam dokładnie specyfikacji wszystkich standardów, ale wydaje mi się, że chyba będę skazany przez to na standard RS. USB raczej na takie odległości nie pozwoli? Wydaje mi się, że mam trzy opcje do wyboru:
    -urządzenie -> konwersja sygnałów UART na standard RS232(MAX232) -> przy komputerze wykorzystuję emulator portu RS232(DE-9 > USB)
    -urządzenie -> konwersja sygnałów UART na standard RS232(MAX232) -> przy komputerze dodać jakąś kartę rozszerzeń z dodatkowym portem RS232
    -urządzenie -> konwersja sygnałów UART na standard RS232(MAX232) -> przy komputerze wykorzystać konwerter USB -> UART RS232(widzę na allegro po 4zł)

    A może RS232 będzie niewystarczający, żeby zaprogramować cenę z takiej odległości i muszę użyć RS485? Słyszałem, że stacje paliw korzystają z tego standardu przy systemach sterowania dystrybutorami. Proszę o ogólne porady jak odnosicie się do tego problemu. Na jakie rozwiązanie i dlaczego byście się zdecydowali.

    0 3
  • #2 23 Kwi 2017 18:02
    BlueDraco
    Specjalista - Mikrokontrolery

    Para modułów Bluetooth będzie znacznie tańsza od przewodu. W PC wkładasz moduł USB-Bluetooth, a w urządzenie jakiś SPP-C czy HC-05 i masz komunikację za 40 zł.

    0
  • #3 23 Kwi 2017 18:05
    2675900
    Użytkownik usunął konto  
  • #4 24 Kwi 2017 10:23
    daniio2
    Poziom 9  

    Cytat:
    Para modułów Bluetooth będzie znacznie tańsza od przewodu. W PC wkładasz moduł USB-Bluetooth, a w urządzenie jakiś SPP-C czy HC-05 i masz komunikację za 40 zł.

    Ok, to faktycznie byłoby wygodne rozwiązanie tylko widzę, że odległość na jaką te moduły pozwolą zależą od klasy mocy. I z wikipedii wynika, że do 20m musi być to klasa 1. SPP-C w datasheet ma napisane klasa 2(do 10m) także mam obawy czy wystarczy. Komputer znajduje się w budynku także po drodze jest jedna ściana(blacha + styropian w środku). W specyfikacji HC-05 nie widzę coś klasy mocy.

    Cytat:
    Nie chcę być złośliwy ale na tym forum (jak byś był łaskaw oczywiście przejrzeć), odpowiedziano na wszystkie Twoje problemy. Niektóre tematy były nawet wielokrotne.

    Tak wiem. Zanim napisałem ten post poświęciłem 2h na przejrzenie forum jednak chciałem to pytanie zadać w kontekście tego konkretnego projektu bo być może osoby, które robiły coś podobnego będą wiedziały jaka jest najlepsza praktyka. Stąd też moje nawiązanie do FT232RL bo widziałem, że w innych wątkach coś takiego się pojawia. Pewnie wszystkiego nie znalazłem.

    0