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

Mierzenie napięcia USB (wejsciowego)

anashi 26 Lis 2009 10:07 2965 14
  • #1 26 Lis 2009 10:07
    anashi
    Poziom 9  

    Witam,
    chciałbym zrobić prosty chronograf/chronometr, który mierzyłby prędkość przedmiotu miotanego o nie dużych rozmiarach do 1cm.

    Ogólnie wiem jak się zabrać do tego:
    2 Diody IR
    2 fotodiody IR
    i mierzenie napięcia, i moje pytanie brzmi:
    jak zmierzyć napięcie w stosunku do czasu?
    czy gdybym podłączył fotodiody do USB to czy istnieje możliwość napisania programu, który zapisałby, w jakim odstępie czasowym były zmiany napięcia?(chronometr)

    wiem, że mogę zastosować przystawkę oscyloskopu, ale są to za duże koszta i zbędne wydatki, ponieważ nie potrzebuję oscyloskopu do niczego innego.

    czy takie mierzenie jest zbędne czy łatwiej było by zrobić to elektronicznie i wypisać na wyświetlaczu odstęp czasowy?

    0 14
  • Sklep HeluKabel
  • #2 26 Lis 2009 19:29
    michube
    Poziom 17  

    Zatrudnienie do tego USB to przerost formy nad treścią - bez jakiejś ATmegi128 po drugiej stronie nie da rady, a implementacja komunikacji po USB do najprostszych nie należy. Sugeruję prosty układzik oparty np. na ATmedze8. Żaden pomiar napięcia nie jest potrzebny - wystarczy pomiar czasu między przejściem obiektu przez pierwszą bramkę LED-fotodioda/fototranzystor a drugą na timerze mikrokontrolera. Znając odległość między bramkami można łatwo policzyć prędkość, a wynik pomiaru można wysłać na PC np. po RS-232 lub wyświetlić na wyświetlaczu.

    0
  • #3 27 Lis 2009 00:22
    anashi
    Poziom 9  

    Ok, dzięki za zarys ,coś rozumiem

    Na razie skupię się chyba do zrobienia tego na wyświetlaczu.
    Chciałem to przesyłać do komputera bo na komputerze można dokładnie analizować czas w jakim przedmiot przebywa drogę.



    Czy taki mikrokontroler wystarczy do chronografu?

    ATMEGA8-16PU DIP28 ATMEL

    Z tego co piszesz, to należy podłączyć go do wyświetlacza z jednej strony a z drugiej do diod

    i do tego zaprogramować, nie mylę się?


    Jeszcze pytanie
    Rs-232, to jest kabel tak? podłączam procesor pod piny przewodu?


    zmienić temat na coś z chronograf?

    0
  • #4 27 Lis 2009 02:54
    michube
    Poziom 17  

    Widzę, że Kolega jest naprawdę zielony w tej dziedzinie, więc komunikację z PC i inne udziwnienia sobie darujmy. ATmega8 w zupełności wystarczy w połączeniu z jakimś prostym w obsłudze wyświetlaczem - np. opartym na popularnym sterowniku HD44870. ATmega8 ma wbudowany oscylator do 8MHz, więc odpada teoretycznie problem kwarca, chociaż do precyzyjnego pomiaru czasu polecałbym jednak zewnętrzny oscylator 16MHz. Mikrokontroler ma bardzo prosty interface ISP (In System Programming) pozwalający na zaprogramowanie go kawałkiem kabla po LPT bez żadnej dodatkowej elektroniki.
    Program wykonywany przez mikrokontroler nie będzie zbyt złożony - zakłada jedynie uruchomienie timera w chwili przejścia przedmiotu przez pierwszą szczelinę LED-fototranzystor i zatrzymanie po przejściu przez drugą (zasada działania identyczna ze stoperem) oraz zwrócenie wyniku (w postaci surowej lub po przeliczeniu na odpowiednie jednostki) na wyświetlacz. Tyle. Całkiem miły projekt na rozpoczęcie przygód z AVRami :)

    PS
    Z racji przejścia z USB na temat mikrokontrolerów wątek pewnie siłą rzeczy zostanie przeniesiony do odpowiedniego działu i zasugerowana zostanie zmiana tematu.

    0
  • #5 27 Lis 2009 13:52
    anashi
    Poziom 9  

    Ok, dzięki

    Na razie zajmę się teorią poszukam jak podłączać ATmegę8(bo nawet pojęcia nie mam jak to podłączyć), pokombinuje w Eaglu, jeżeli uda mi się ułożyć jakiś schemat to pokażę go.

    Później zajmę się praktyką.

    Michube, Jeżeli wiesz o jakimś tutorialu lub książce która by opisywała jak łączyć mikrokontrolery to chętnie się o tym dowiem.

    Jeżeli zechciałbyś mi pomóc w sposób, odpowiadania na każde pytanie to proszę podaj gg: lub pisz gg:XXXXX

    Moderowany przez mat_ed:

    Pomagamy na forum. Kolejna próba wyprowadzenia dyskusji poza forum, zostanie nagrodzona ostrzeżeniem, a sam temat zostanie zamknięty.

    0
  • Sklep HeluKabel
  • #6 27 Lis 2009 15:34
    michube
    Poziom 17  

    Sporo praktycznych informacji na temat projektowania układów znajduje się załączonym przeze mnie e-booku. Miłej lektury :)

    Podłączenie ATmegi8 dla Kolegi aplikacji będzie polegało jedynie na podpięciu zasilania pod Vcc i AVcc (z uwzględnieniem odpowiednich kondensatorów filtrujących), masy pod GND oraz pinów SCK, MISO, SS oraz RESET pod odpowiednie piny na wtyku DB-25 (pod port LPT). Do tego dochodzi oczywiście interface wyświetlacza i fototranzystory.

    W razie jakiś konkretnych pytań służę chętnie pomocą.

    0
    Załączniki:
  • #7 28 Lis 2009 10:07
    anashi
    Poziom 9  

    Nie mogę znaleźć BD-25 w eaglu 5.6
    Z tego co szukałem do powinien być w con-subd.lbr ale pod jaką nazwą?
    Są tylko F,H,M

    Porty ADC będą łączone do sterownika wyświetlacza, Tak?

    0
  • #8 28 Lis 2009 14:03
    michube
    Poziom 17  

    A po co to złącze w Eaglu? Chcesz podpinać całą płytkę pod LPT na czas programowania? Nie praktyczniej wyprowadzić sobie na płytce pinheady albo wtyk wannowy, żeby podłączyć kabel z końcówką jak na zdjęciu po stronie płytki, a po stronie pc z męskim DB-25? Jeśli jednak nie, to złącze, które Cię interesuje to któryś z M25 (M-male (męski), 25 pinów) - w zależności od tego jaki dokładnie kupisz.

    Mierzenie napięcia USB (wejsciowego)

    Do sterowania wyświetlaczem w minimalistycznej konfiguracji (4-bitowa szyna danych, dane tylko wysyłane do wyświetlacza) wystarczy tylko 6 pinów. Chociaż na początek proponuję magistralę 8-bitową na jednym porcie i na którymś z pozostałych portów 3 bity sterujące. Twój projekt jest tak minimalistyczny, że nie musisz liczyć się z każdym pinem na porcie ;)

    0
  • #9 28 Lis 2009 14:36
    anashi
    Poziom 9  

    Czyli mogę na płytkę wstawić F25? i będzie dobrze?


    Łatwiej będzie użyć wyświetlacza ciekłokrystalicznego? czy diodowego?

    Szyna danych to BUS tak?
    jak ją w eaglu zaznaczyć? To jest ta niebieska?

    0
  • #10 28 Lis 2009 14:56
    michube
    Poziom 17  

    Cała rzecz z ISP (In System Programming) polega na podłączeniu odpowiednich pinów mikrokontrolera (RESET, SCK, MOSI, MISO) pod odpowiednie piny na porcie LPT w PC. W PC jest wtyk typu F (żeński), więc na kablu/płytce musi być M (męski), żeby wszystko pasowało. A czy po drodze będzie kawałek kabla czy też wtyk będzie bezpośrednio na płytce to już indywidualny wybór projektującego płytkę. Ja mimo wszystko zostaję przy kablu podpinanym pod wannę lub pinheady. Powód? Zajmuje to o wiele mniej miejsca na płytce, a układ podczas programowania może znajdować się w dowolnym miejscu na stole :) Co do kabla to polecam zwykłą skrętkę UTP-8. Nadaje się idealnie - 4 przewody sygnałowe i 4 skręcone z nimi masy dające sporą odporność na zakłócenia. Z kablem nie przesadzaj - nie dawaj więcej niż powiedzmy 75 cm.

    Samodzielne robienie wyświetlacza to strata czasu. Za kilkanaście złotych można kupić coś takiego jak WC1602A:
    Mierzenie napięcia USB (wejsciowego)
    Chociaż jak dla Kolegi to wystarczy tańszy jednoliniowy na 8 znaków.

    Żeby korzystać w Eaglu z szyny z funkcji BUS trzeba stworzyć kawałek takiej magistrali i nadać jej odpowiednią nazwę zawierającą nazwy transmitowanych sygnałów rozdzielone przecinkami. Np. "GND,PB0,PB1,PB2". Po przyłączeniu ścieżki poleceniem NET do magistrali będzie się mogło wybrać nazwę sygnału z wpisanych wcześniej w nazwie magistrali.

    0
  • #11 29 Lis 2009 15:39
    anashi
    Poziom 9  

    Wyświetlacz to:
    płytka i to na czym są wyświetlane napisy

    czy płytka jest sterownikiem?

    tzn, czy to co pokazałeś na zdjęciu wystarczy podłączyć do mikrokontrolera, czy sterownik jeszcze trzeba?

    Do ISP podłączam SS czy MOSI, czy obydwa?

    0
  • #12 29 Lis 2009 21:55
    michube
    Poziom 17  

    Przedstawiony na zdjęciu wyświetlacz to zintegrowany ze sterownikiem podświetlany ekran LCD 2 linie po 16 znaków z wyprowadzonymi 16 pinami na sterowanie i zasilanie. Niech Kolega poczyta na ten temat w załączonym przeze mnie powyżej e-booku.

    Do ISP podpinamy RESET, MOSI, MISO i SCK oraz masy - SS nie jest wykorzystywane.

    0
  • #13 02 Gru 2009 21:01
    anashi
    Poziom 9  

    Na razie zrobiłem tyle:
    Zdjęcia dodajemy za pomocą przycisku "Dodaj obrazek". mat_ed
    Mierzenie napięcia USB (wejsciowego)
    Elementy wolne czekają na podłączenie albo są zbędne

    Liczę się z tym, że błędów jest tu co nie miara, i wymaga to jeszcze sporego dopracowania, to jest na razie początek

    0
  • #14 04 Gru 2009 02:53
    michube
    Poziom 17  

    Błędów faktycznie tyle, że nie chce mi się ich wszystkich wymieniać. Część zaznaczyłem na rysunku. Naprawdę zapoznaj się proszę z załączonym kilka postów wyżej PDFem - tam jest wszystko o podłączeniu zasilania, wyświetlacza, tranzystorów na wejściu i wiele innych pożytecznych informacji.
    Mierzenie napięcia USB (wejsciowego)

    0
  • #15 04 Gru 2009 12:04
    anashi
    Poziom 9  

    Czytam tylko tego w kilka dni się nie da przeczytać i zrozumieć za jednym razem.

    Wielkie dzięki

    A to co napisałeś o R5 i R6, żeby usunąć?
    To czy to nie działałoby tak, że jeżeli prąd jest większy niż 5V to ten opornik przepuszcza większy prąd do uziemienia? a do diody płynie tylko 5V?

    0