Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Roat v1.0 - Oscyloskop RS232

26 Dec 2015 17:25 6582 20
IGE-XAO
  • Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    User removed account
    User removed account  
    User removed account wrote 0 posts with rating 0, helped 0 times. Been with us since 1978 year.
  • IGE-XAO
  • #3
    wojtek_was
    Level 10  
    Witam

    Czy plik Help jest na pewno dobrze napisany??

    W dziale pomocy wyświetlają się 4 punkty lecz po kliknięciu w np. Program uC Bascom nic się nie wyswietla.
  • IGE-XAO
  • #4
    fotomh-s
    Level 23  
    Quote:
    Nie ma szału - wolny pomiar, ale za darmo!
    Płytkę testową z portem RS232 posiada chyba każdy elektronik - to wystarczy by stworzyć małe laboratorium pomiarowe.

    Może i każdy elektronik posiada taką płytkę. Chociaż tu nie chodzi o istnienie portu RS232 (bo każdy scalak AVR ma UART z którego można łatwo zrobić transmisję RS232 nawet na stykówce), chodzi o to że nie każdy scalak (i co za tym idzie nie każda płytka) ma ADC. Ale i to nie jest problemem bo i bez płytki można coś takiego zrobić. Wystarczy np. Mega 8 i masz teoretycznie aż 8 kanałów.

    Prawdziwe pytanie brzmi: Po co?
    Co z tego że każdy elektronik ma takową płytkę jeśli każdy komputer ma wejścia audio? Większość PCtów (może pomijając laptopy) ma ich kilka, a każde wejście jest stereo (czyli 2 kanały). Do tego rozdzielczość ADC na AVR ma chyba tylko 10 bitów, z tego co pamiętam karty dźwiękowe mają 24 bity oraz próbkowanie co najmniej 96kHz. Mogę się jednak mylić.
  • #5
    Urgon
    Editor
    AVE...

    Używanie UARTu do czegoś takiego w obecnych czasach jest troszkę słabym pomysłem. Równie dobrze można wziąć jakiś przetwornik ADC o wyjściu równoległym i podpiąć do portu LPT, co zresztą dałoby prędkość do 2Msps. Problemem, jak zawsze zresztą w takich układach jest prędkość łącza. Dlatego dla takiego układu najlepszym rozwiązaniem byłaby łączność przez USB bez żadnych przejściówek. Wiele mikrokontrolerów ma sprzętową obsługę tego protokołu. Niestety, jest on dla początkujących i średnio-zaawansowanych ciężki do wykorzystania zarówno od strony mikrokontrolera, jak i komputera.

    Uważam, że ten projekt ma potencjał, tylko wymaga rozbudowania. Choćby możliwość wykorzystania portu równoległego czy USB lub zmiany wielkości próbki (8 bitów każdemu powinno wystarczyć) by zwiększyła znacznie użyteczność programu.
  • #6
    fotomh-s
    Level 23  
    Ja się z Tobą nie zgodzę. Moim zdaniem projekt potencjału nie ma ponieważ zwykła karta dźwiękowa ma lepsze parametry i jest wiele gotowych programów do tego celu.

    Moim zdaniem to rozwiązanie jest trochę przerostem formy nad treścią.

    No i co do LPT to jest to teraz relikt lat 90tych i wczesnych lat 2000. Mało jaki komputer ma LPT w dzisiejszych czasach. USB jest lepszym rozwiązaniem, jednak wymaga większej wiedzy z zakresu programowania.
  • #7
    pawel1029384756
    Level 21  
    Niema w programie nic nadzwyczajnego, bo już sporo takich widziałem, ale podoba mi się chęć do działania. Jak już wcześniej wspominano ograniczeniem jest szybkość transmisji, czego się nie da obejść korzystając z RS232, USB na pewno by pomogło, ale jest bardziej skomplikowane. Ciekawym rozwiązaniem było by to LPT, bo przy prostych aplikacjach okazuje się szybsze i łatwiejsze w obsłudze. Problem jest w tym, że niewiele osób ma jeszcze LPT w komputerach. Ja akurat jestem posiadaczem tego portu w prawie każdym komputerze, nawet w tych nowych. A do laptopa mam stacje dokującą z LPT, więc myślę, że nie jest to aż taki problem zdobyć urządzenie z tą transmisją. Jeśli chodzi o mnie to na pewno bym w to poszedł.
  • #8
    User removed account
    User removed account  
  • #9
    User removed account
    User removed account  
  • #10
    Urgon
    Editor
    AVE...

    Zrobiono to tak, jak się robi w każdym oscyloskopie cyfrowym podłączanym do komputera: kolejne próbki są zapisywane w pamięci, a potem wysyłane przez wybrany port. Im większa pamięć, tym więcej próbek idzie zapisać. Proste rozwiązanie: układ ADC o wyjściu równoległym podłączasz do pamięci SRAM/DRAM i z pomocą szczypty logiki taktujesz wspólnym zegarem zwiększając adres o jeden. Im więcej pamięci, tym więcej próbek. Potem wstrzymujesz pracę przetwornika i odczytujesz zawartość pamięci z taką prędkością, na jaką pozwala połączenie z komputerem. Z pamięcią o czasie dostępu 10ns możesz mieć częstotliwość próbkowania 100MHz. Ale ja bym sugerował na początek częstotliwość o połowę mniejszą i dość próbek, by jednorazowo zebrać całą sekundę sygnału.
    Jedna uwaga co do próbkowania z pomocą mikrokontrolera: 8 bitów i lepsza część analogowa (jak w projekcie AVT527) da lepsze wyniki niż 10 bitów nic więcej. Jeszcze lepiej jest użyć zewnętrzny ADC, bo będzie dokładniejszy, szybszy i mniej zaszumiony...
  • #11
    pawel1029384756
    Level 21  
    goreckidiy wrote:
    Przypadkowo natknąłem się na ciekawy kit AVT
    https://sklep.avt.pl/avt527.html

    Jest to oscyloskop RS232. Zastanawia mnie tylko jedna rzecz....
    Jaki sposobem udało się uzyskać autorowi 500kHz ?
    Może na podstawie tego kitu można zrobić coś lepszego...

    Jest tylko jeden kanał i przetwornik ADC jest 8 bitowy, więc tych danych jest mniej. Ale zwróć uwagę na to, że pasmo to jest do 500kHz, ale częstotliwość próbkowania musi być minimum dwukrotnie większa i tak też jest tam podana 1M próbek/s. Dalej jest to dla mnie zagadką jak to wyciągnęli, bo żeby wysłać wszystkie te próbki, to trzeba by mieć transmisje 8Mb/s, co jak dla mnie przy RS232 jest mało osiągalne.
  • #12
    User removed account
    User removed account  
  • #13
    Visher
    Level 10  
    Gratulacje projektu :) Zastanawiam się tylko nad tym ograniczeniem do bauda 19200, przy chińskiej przejściówce z UARTa na USB byłem w stanie wyciągać baud 0.5 M albo 1 M na Atmega8.

    Ja wraz ze współlokatorem od jakiegoś czasu bierzemy się za zbudowanie przystawki oscyloskopowej na bazie ATxmega128A3U, który posiada m.in. ADC 12-bit 2 Msps, DMA i sprzętowe USB w wersji full-speed (ok 12 Mbps). Oczywiście nie da się przez USB full-speed przesłać tylu danych, więc ograniczymy się z transferem. Po stronie komputera program w Javie, którego zalążki już powstały - potrafi odbierać sygnał z UARTa przez przejściówkę na USB, wyświetla jeden wykres który można przesuwać i skalować w każdej osi, wygląda to mniej więcej tak:

    Roat v1.0 - Oscyloskop RS232

    Ogółem schemat ideowy był by na bazie tego:
    https://sklep.avt.pl/avt2999.html

    Po nowym roku prace ostro ruszą, mam nadzieję :) Przydało by się jakieś wsparcie merytoryczne jeżeli chodzi o część analogową jeżeli mieli byśmy coś zmieniać. Myślałem nad zaprzęgnięciem do tego jakiegoś modułu FTDI np FT232H, ale nie mam pojęcia jak się z tym komunikować i czy przy zegarze 32 MHz w atxmedze byłym w stanie wykorzystać potencjał tego konwertera.

    Życzę powodzenia w rozwijaniu swojego projektu :)
  • #14
    piotrd76
    Automation specialist
    A ja bym tak zupełnie nie skreślał projektu kolegi z powodu wykorzystania portu szeregowego. O ile jako "oscyloskop" jest to tylko sztuka dla sztuki, niewiele lepsza niż całkowicie bezużyteczne przystawki do karty dźwiękowej itp., o tyle może to być dobra baza dla taniego rejestratora np. temperatury, wilgotności, ciśnienia czy innych parametrów fizycznych. Dla większości typowych procesów taka prędkość pomiaru jest wystarczająca, a zaletą RSa jest spora dopuszczalna odległość, można by jeszcze zmienić transceivery na RS485 albo pętlę prądową a wtedy to już by miało naprawdę spory zasięg.
  • #15
    fotomh-s
    Level 23  
    Quote:
    karty dźwiękowe mają 24 bity oraz próbkowanie co najmniej 96kHz. Mogę się jednak mylić.
    Owszem mają 24 bity, aczkolwiek przeważnie (przynajmniej te chińskie) nie przekraczają próbkowania 20kHz.


    Ja mam kartę zintegrowaną firmy Realtek. Ponoć ma ona aż 192KHz.
  • #17
    Arni85
    Level 12  
    @fotomh-s
    Proponuję koledze już odpuścić temat kart dźwiękowych. Ten układ ma jedną, piękną możliwość, która nie została tutaj chyba wspomniana: możliwość izolacji galwanicznej od PC. Po dodaniu transoptora w otrze RS232 i osobnego (względem PC) zasilania przystawki nasz komputer jest bezpieczny, jeśli coś pójdzie źle w układzie pomiarowym.
    No i mamy cztery kanały, a ile kanałów wejściowych ma standardowo zwykła karta dźwiękowa montowana w większości komputerów PC i laptopów? :)
  • #18
    User removed account
    User removed account  
  • #19
    fotomh-s
    Level 23  
    Arni85 wrote:
    @fotomh-s
    Proponuję koledze już odpuścić temat kart dźwiękowych. Ten układ ma jedną, piękną możliwość, która nie została tutaj chyba wspomniana: możliwość izolacji galwanicznej od PC. Po dodaniu transoptora w otrze RS232 i osobnego (względem PC) zasilania przystawki nasz komputer jest bezpieczny, jeśli coś pójdzie źle w układzie pomiarowym.
    No i mamy cztery kanały, a ile kanałów wejściowych ma standardowo zwykła karta dźwiękowa montowana w większości komputerów PC i laptopów? :)


    W większości laptopów masz 2 kanały wejściowe oraz 0 portów RS232. Czyli i tak przewaga po stronie karty dźwiękowej w ilości kanałów ;-)
    Ja na moim PC mam 2 dedykowane wejścia mikrofonowe + co najmniej jedno liniowe. Czyli co najmniej 6 kanałów.

    Co do izolacji to można zastosować kartę dźwiękową pod USB i odizolować optycznie sygnał. No i do tego osobne zasilanie 5V i mamy izolację.

    Oczywiście obydwa rozwiązania mają swoje wady i nigdy nie będą perfekcyjnymi oscyloskopami.

    Quote:
    Moje rozwiązanie służy bardziej do pomiarów o niskiej częstotliwości i rysowania wykresów

    Jeśli do niskich częstotliwości to ma to jeszcze sens. Gorzej z wysokimi.
  • #20
    User removed account
    User removed account  
  • #21
    User removed account
    User removed account