Strona 1 z 2
Sterowanie SSR'ów za pomocą RS232
: 24 cze 2010, 20:11
autor: ambrosius
Witam.
mam 2 pytania:
1) Pisze pewien program w Delphi, i chciałem załączać przekaźniki SSR 40A (ster 3 - 32 DC) za pomocą portu rs232. (port lpt mam zajęty do innego celu) czy jest możliwe podanie na konkretne linie stanu wysokiego???
Jakimi funkcjami/komponentami to się realizuje w delphi??? jakieś wskazówki??
2) Czy jest możliwe odczytanie stanu, tzn, podpinam przycisk pod 2 linie rs232 i czy jest możliwość odczytania stanu, czy te linie są zwarte czy też nie??? np. gdy nacisnę przycisk to w programie się coś dzieje
Z góry dziękuje za naprowadzenie. szukałem na temat ale głownie widzę wszędzie rs232 do transmisji...
: 25 cze 2010, 08:13
autor: Leoo
Kolega poszuka książki "RS232 - praktyczne programowanie" wydawnictwa Helion.
Port nie nadaje się do przekazywania informacji równoległych, za to niewielkim nakładem środków można uzyskać dużą ilość pinów ON/OFF tzn. MAX232+dowolny procesor z UART, począwszy od zacnego 8051.
: 25 cze 2010, 09:51
autor: ambrosius
dziękuję za odpowiedz.
Co do sterowania włącz wyłącz używam także karty na usb takiej ( instaluje się jak port com, wystarczy wpisać "1" i przekaźnik się załącza.
Jednak najbardziej potrzebuje 3 przycisków.
Do lpt mam płytkę ssk-mb2 ( będe używał tylko 2 silników sterowanych z delphi) a jakby użyć jako przycisków krańcówek HOME??? Jak to zaprogramować przez pytkę ssk-mb2 , czy po prostu z gniazda LPT "zabrać" nie używane piny i na nich zrobić przyciski??? Uda się tak?
: 25 cze 2010, 10:14
autor: Inf-el
Bez potrzeby programowania procesorków 8051 lub AVR można wysterować piny portu szeregowego DTR i RTS a odczytać CTS i DSR z poziomu Delphi używając darmowej biblioteki ComPort.
Aby sygnały dawały napięcie 5 i 0 V potrzebny jeszcze będzie max232 i kilka kondensatorów.
Oczywiście możliwości wzrastają gdy zastosujemy dodatkowo procesor.
ComPort do Delphi 2010
lib_comm.zip do starszych
: 25 cze 2010, 13:20
autor: ambrosius
Kod: Zaznacz cały
Dana:= TestLPT.DLPortIO.Port[DataPort];
Dana := Dana shl 1; // przesuwamy w lewo o jeden
if Dana=0 then Dana:=$10; // warunek przekroczenia zakresu
TestLPT.DLPortIO.Port[DataPort] := Dana; // wpisujemy nową wartość
TestLPT.Caption := IntToStr(Dana);
Sleep(2000);
zrobiłem coś takiego i teraz na pinach co 2s zmienia się i pojawia się napięcie (około 5V) pomiędzy pinem 6,7,8,9 do masy.
Teraz chciałbym aby działało to odwrotnie, czyli przyciski zwierają/rozwierają dwa piny i program sprawdza jaki jest stan. Ma ktoś pomysł jak to zrealizować???
A może łatwiej będzie odczytać stany z płytki ssk-mb2??? ( krańcówka e-stop i home)?
Kod: Zaznacz cały
procedure TTestLPT.Timer2Timer(Sender: TObject);
begin
DataPort:=$378+1;
Dana := TestLPT.DLPortIO.Port[DataPort];
If (( Dana = 255 ) or ( Dana = 63 )) then
begin
TestLPT.Color := clRed;
end
else TestLPT.Color := clBlack;
//działaja 10,11,12,13,15 - przy nich zmienia sie wartość Dana
TestLPT.Caption := IntToStr(Dana);
end;
Ten kod jak zwieram piny 10,11,12,13,15 do masy powoduje zmianę wartości będącej w zmiennej "Dana". Czy ta wartość ( bo rożne te wartości były: 255, 63 i inne) będą zawsze takie same ze będę mógł je wpisać na stałe i za każdym uruchomieniem komputera będą takie same????
: 27 cze 2010, 02:26
autor: blue_17
Kolego jaką masz wersję delphi ?
Z tego co mi wiadomo w jednej z zakładek jest odpowiedni komponent
A na forum jest coś takiego jak praktyczne programowanie RS232 w C chyba i w C++builder borlanda jeszcze to powinno Ci się wiele rzeczy wyjaśnić jak nie znajdziesz na forum to skontaktuj się na PW ze mną to Ci wyślę ma gdzieś na dysku

: 06 lip 2010, 19:01
autor: Inf-el
Ja mam Delphi 2010 Pro i nie widzę komponentu do com'a.
: 06 lip 2010, 21:49
autor: blue_17
blue_17 pisze:
Z tego co mi wiadomo w jednej z zakładek jest odpowiedni komponent
Fakt są ale jeśli się je wcześniej zainstaluje są Darmowe komponent do Com-a więc problemu niema
Na marginesie czy koledzy robili coś w Lazarusie to jest też Delphi ale darmowy program i wieloplatformowy jedna aplikacja może działać na Windzie, Linuxie i Macu. Można instalować dodatkowe komponenty.
Bardzo ciekawe środowisko tylko nie wiem czy można za darmo wykorzystywać w celach komercyjnych.
Bo program jest standardowo w repozytoriach ( ja mam akurat kubuntu )
Próbował ktoś tego bo na razie bawię się w Delphi 2009 z programikiem bazodanowym i mam pewne problemy

: 06 lip 2010, 22:55
autor: Inf-el
A z jakimi bazami kolega pracuje ?
Jeśli PostgreSQL to służę pomocą.
: 06 lip 2010, 23:47
autor: blue_17
Baza jest Mysql-owa i jako tak "ujażmiłem" już ją tylko zostały mi jeszcze 4 rzeczy ale to są operacje związane z DBGridem i formowaniem zapytania SQL-owego, ponieważ program ma obsługiwać dowolną tabele a nie konkretnie zdefiniowaną tabele.
Szczegóły mogę przesłać na PW lub ewentualnie prosił bym o podanie e-maila na PW
Z góry dzięki
