Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Pomoc przy pracy dyplomowej

Grafi 31 Jan 2004 12:20 1612 7
  • #1
    Grafi
    Level 11  
    Chciałbym prosić o pomoc w wykonaniu konwertera sygnałów pochodzących z cyfrowego miernika na postać standartu RS232. Sygnały od/do miernika wysyłane są równolegle po 48 liniach transmisyjnych. Najlepszym rozwiązaniem byłby układ mikroprocesorowy - z którym niestety nie mogę sobie poradzić :( Program do sterowania i czytania wyników wykonam sam - Delphi :) Jestem z Lublina, ofert proszę kierowąc na priv :)
  • #2
    Nemo
    Level 31  
    A może więcej szczegółów o tej transmisji? 48 linii, to niewiele mówi. Podaj jakiś opis, coś co umożliwi chociaż wyobrażenie sobie takiego konwertera. Poza tym jest to Forum, zwykle odpowiedzi są pod pytaniem.
    Pozdrawiam.
  • #3
    PiRoman2
    Level 20  
    Jeżeli nie chcesz na procku, to proponuję nastepujące rozwiązanie.
    Łączysz rejestry równoległo-szeregowe (np.74165). Wyjścia miernika podłączasz do kolejnych wejść (przedzielając je bitami startu i stopu).
    Program odczytuje kilka kolejnych bajtów z portu RS
  • #4
    Grafi
    Level 11  
    Koniecznie musi być na procku.

    Jesli chodzi o szczegoly to poziom wyjść miernika jest w standarcie TTL, wyniki pomiaru podawany jest w kodzie BCD - czyli 4 bity na każdą cyfrę. Dodatkowo miernik wystawia na odpowiednich pinach stan swojej pracy, zakres itp. Można nim również sterować poprzez podawanie 0 lub 1 na odpowiednie piny. W mierniku zastosowane jest niestandartowe gniazdo 50 pinowe. Niestety nie mam przy sobie instrukcji (jestem w pracy) ale w późniejszym czasie mogę przesłać więcej szczegułów 8O
  • #5
    Nemo
    Level 31  
    Ile jest cyfr na wyjściu? To znaczy jest 48 linii wyjściowych i jak są one podzielone, ile przypada na cyfry BCD, ile na stan miernika itd.
    Przypadkiem nie jest to polski miernik Vcośtam?
    Pozdrawiam.
  • #6
    Grafi
    Level 11  
    V553 Meratronik czy coś tam :)

    Wykopałem opis pinów w gnieździe, przytaczam:

    Sygnały informacyjne:
    1:4 - masa

    5:8 - najmniej znaczaca dekada LSB
    9:12 - kolejna dekada
    13:16 - kolejna dekada
    17:20 - kolejna dekada
    21:24 - najbardziej znacząca dekada MSB (wykozystywany tylko 1 bit)

    25 - informacja - dodatnia polaryzacja napięcia
    26 - informacja - ujemna polaryzacja napięcia

    27-28-29 - wybrana funkcja (napięcie, prąd, opór) kombinacja 3 bitów
    30-31-32 - wybrany zakres

    33 - sygnał przekroczonego zakresu
    34 - nie wykorzystanie zakresu

    41 - +5V
    48-49-50 - masa cyfrowa Gnd

    Sygnały sterujące:
    35-36-37 - zdalny wybór wielkości mierzonej
    38-39-40 - zdalny wybór zakresu
    43 - pomiar zakonczony - sygnaly nie nadaja sie do obróbki
    42 - zakaz zmiany inf na wejsciu pom
    44 - kasowanie licznika ?
    45 - zewnetrzny impuls srtartu
    46 - blokada zmiany wskazania

    Uf. Niby wygląda prosto - zwykłe przekształcenie sygnałów równoległych w szreg i układzik MAX232, ale obawiam się że sam się nie wyrobię z tym :( Słabo znam mikroprocesory i trochę assemblera :( Jeśli będzie prościej może być sam odczyt z miernika (zawsze to mniejsza liczba linii).

    Pozdrawiam
  • #7
    Nemo
    Level 31  
    Tak myślałem, że to polska konstrukcja :)
    Podsumujmy, 17 bitów to dane w formacie BCD, 6 bitów to dane mówiące o stanie przyrządu, dodajmy jeszcze 1 bit (przekroczenie zakresu). Bit niewykorzystania zakresu można pominąć, przez domysł z negacją bitu przekroczenia zakresu. W sumie 24 bity - 3 rejestry 8 bitowe.
    Jeśli byłyby potrzebne sygnały do zewnętrznego sterowania, to potrzeba 6 bitów (wielkość, zakres), pozostaje 5 sygnałów. Przyznam, że do wykorzystania widzę: pomiar zakończony (ERROR), zewnętrzny impuls startu, blokada zmiany wskazania no i jeszcze jeden do wyboru (w sumie 4 bity). Razem 10 bitów wyjściowych. Tak to widzę.
    Mikrokontroler - najprostszy AT89C2051 do tego MAX232 i 3 rejestry np. 74HCT165 kaskadowo. Dysponujemy 15 liniami I/O. (15 bitów)
    Transmisja tylko po RXD, TXD, bez kontroli przepływu - 2 bity. 10 bitów na wyjścia sterujące (można mniej), 3 bity na obsługę rejestrów szeregowych. Tyle na początek, zawsze można coś zmienić/poprawić/uprościć. W razie czego, jestem do dyspozycji.
    Pozdrawiam.
  • #8
    Grafi
    Level 11  
    Dzięki za pomoc :)

    Spróbuję coś sam pokombinować...
    A jak mi coś nie wyjdzie to będę pisał - DZIĘKI

    Pozdrawiam