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

Sterowanie przekaźnikami prądu elektrycznego przez RS232.

31 Sty 2009 23:28 4412 6
  • Poziom 10  
    Witam!
    Chciałbym się dowiedzieć jaki układ zastosować do sterowania przekaźnikami prądu elektrycznego z portu RS232. Jak można też taki układ zdeklarować w języku Turbo Pascal 7. Chodzi o stary komp, program ma być odpalany pod DOS, a w innych językach pod ten system operacyjny nie potrafię programować.
    Układ ten ma sterować zespołem od 5 do 10 takich przekaźników.
    Potrzebowałbym też wiedzieć jaki zastosować układ który by reagował na otwarcie lub zamknięcie przynajmniej czterech obwodów elektrycznych - również na RS232. Najlepiej by było, żeby to był układ wyjścia oraz wejścia informacji opisywanych wyżej.
    Może to także być port LPT. Może też być RS232 z LPT.
  • Relpol przekaźniki
  • VIP Zasłużony dla elektroda
    Jeśli chodzi o hardware, to najprościej wykorzystać LPT. Linie danych D0-D7 wykorzystujesz do sterowania przekaźnikami, linie statusu wykorzystujesz jako wejścia. Jak użyjesz wyszukiwarki to znajdziesz kilka schematów.

    O programowaniu tego w pascalu napisano już tyle razy, że szkoda gadać, więc zamiast pytać lepiej poszukaj.

    Zacząć możesz tutaj: http://www.beyondlogic.org/spp/parallel.htm (co prawda kod w C, ale opis ok).

    Pozdrawiam,
    Dr.Vee
  • Relpol przekaźniki
  • Poziom 10  
    Kod C jest mniej więcej zrozumiały dla mnie, ale jak zdeklarować to w TP7.0?
    Poza tym potrzebuję jeszcze układ który rozpoznawałby czy 4 różne obwody są otwarte lub zamknięte.
  • Poziom 33  
    Najprościej wykorzystać LPT. Masz 8 wyjść danych, 5 wejsć i 4 do wykorzystania jako wejscia lub wyjscia. Sprzętowo również bardzo łatwo to rozwiązać (najlepiej z optoizolacją).
    Co prawda nie bawiłem się z dwukierunkowymi, ale resztą steruje się banalnie prosto.
  • VIP Zasłużony dla elektroda
    remek1983 napisał:
    Kod C jest mniej więcej zrozumiały dla mnie, ale jak zdeklarować to w TP7.0?
    Poza tym potrzebuję jeszcze układ który rozpoznawałby czy 4 różne obwody są otwarte lub zamknięte.

    Co do układu to już pisałem - poszukaj/zapytaj w innych działach (DIY).
    Co do kodu w TP7.0 to było opisywane wielokrotnie, również wystarczy poszukać na forum/w googlach.
    Jeśli maszyna to min. 386, to możesz użyć DJGPP, czyli dosowego portu kompilatora gcc: http://www.delorie.com/djgpp/

    Pozdrawiam,
    Dr.Vee
  • Poziom 37  
    Zapis:
    Code:

     port[$378]:=liczba;

    Odczyt:
    Code:

    liczba:=port[$378]

    ustawienie bitu:
    Code:

    port[$378]:=port[$378] or 2^n //lub zapis bezpośredni 1,2,4,8,16,32,64,128

    wyzerowanie bitu:
    Code:

    port[$378]:=port[$378] and not( 2^n) //lub zapis bezpośredni /1,/2,/4,/8,/16,/32,/64,/128

    odczyt bitu
    Code:

    bit:= (port[$378] and (2^n))=1
  • Poziom 10  
    I nadal nie wiem jaki zastosować układ, aby dało się rozpoznawać czy obwód jest zamknięty. :/