USB->RS485, po co komplikować sobie życie

May 16, 2009 12 Replies

Witam!!



Ostatnio poszukiwałem jakiegoś interfejsu RS485 do kompa (najlepiej na USB) i wpadł mi w oko pewien patent z EP (nr 05/2008). I zdziwiła mnie jedna rzecz - do generowania sygnału sterującego kierunkiem transmisji wykorzystywali NE555 i "łapali" zera transmisji!! A tymczasem w nocie katalogowej zastosowanego tam FT232

formatting link
stronie 19, rysunek 11 widać wyraźnie,że sygnał sterujący kierunkiem można wyciągnąć wprost z układu FT232. Ja wiem, że ten schemat w nocie działa nieco inaczej (echo!!), ale to łatwo obejść ;).. Moje pytanie jest inne - jako że nigdy nie używałem tego układu (FT232) to czy są jakieś przeciwwskazania do stosowania układu z noty i zastępowaniu go układem z NE555?? Czy będą jakieś praktyczne różnice?? Dodam, że zależy mi, abym w komputerze widział zwykły port COM i mógł się z nim łączyć przez terminal i inne sprawdzone metody... oczywiście będzie to HALF-DUPLEX, ale poza tym - jak zwykły COM ;)...



Pozdrawiam Konop


Jak przeczytasz to na stronie 3 jest uwaga ze w poprzednich wersjach dzialalo zle :-)

USB to nie jest "zwykly COM". Ktory zreszta w pececie sprawia klopoty wlasnie w kwestii sterowania kierunkiem w RS485.

J.

no bo to jest tak... kiedy progam mowi do systemu (funkcje API) wyslij no mi te 7 bajtow to system odpowiada- ok mam te twoje 7 bajtow i je wysle - to znaczy mowi ze wysle co nie onacza ze je wlasnie TERAZ, wysle je, tylko ze wysle jak bedzie mail na to czas. Potem jednak zaraz program mowi - zmien staln linii (zstrzelcie mnie ale wlasnie zapomnialem jakiej - ale jest linia ktora w/g standardu rsa mowi ze dbiorca ma czekac na skompletowanie ramki a jest uzywana w 485 do okreslenia kierunku ) no i posluszny system zmienia stan lini - to znaczy hmmm, przyjmuje do wiadomosci ze mu zlecono takie zadanie i wykona je najszybciej jak tylko bedzie mogl. Problem polega na tym ze potrafi te dwa zlecenia czasem zrobic jednoczesie I nie jest to wina systemu ( nie jest on systemem RT) tylko wina progrmisty ktory nie rozumie pewnych drobnych, wydalo by sie zbednych w codziennej egzystencji niuansow :-)))

wojtek

formatting link
CMMS Maszyna Golem OEE Hall2007

Oprocz winy programisty jest tez wina 8250 i pozniejszych klonow - brak informacji ze wysylanie zostalo zakonczone. A kolejka w klonach potrafi byc dluga.

J.

Czyli rozumiem, że stosując odpowiednio nową wersję scalaka nie będzie z tym problemu?? :)...

No wiem, że nie jest to zwykły COM, ale chcę, żeby w systemie (przynajmniej windows) był ten FT232 widoczny jako port COM :)... naturalnie, będę stosował transmisję bez handshakingu i licze, że FT232 sam wystawi mi sygnał aktywny na TXDEN gdy będzie posyłał bajty po RS485 ;)....

Pozdrawiam Konop

Powitanko,

Jak go zaprogramujesz jako VCP, to bedzie widoczny jako COM... z numerem czasem dosyc "nieziemskim".

Pozdroofka, Pawel Chorzempa

Dobra, ja to rozumiem :). chodzi mi tylko o to, czy w tym trybie VCP będzie aktywny sygnał TXDEN?? Numer nieziemski można zmienić na inny, wolny ;)...

Pozdrawiam Konop

Pawel "O'Pajak" pisze:

Numer jest zmienialny z poziomu Menedżera urządzeń. A zresztą czy to komu przeszkadza, że masz w pececie COM1215? Pisząc własny program trzeba pamiętać o takich możliwościach. I nie używać przedpotopowych "wynalazków" znających tylko COM1-4.

Konop pisze:

A tak trudno sięgnąć po PDFa i doczytać o trybie RS485 w FT232R?

formatting link

Adam Dybkowski pisze:

A dla FT232R napisali coś więcej niż dla FT232B?? Bo jakbyś nie zauważył zacząłem ten wątek od podania linku do noty - i obiecuję Ci, że przeczytałem tam wszystko co dotyczyło RS485. Ponieważ jednak nigdy nie miałem styczności z tym układem chciałem się upewnić czy można go skonfigurować jako RS485 i wirtualny COM jednocześnie :). rozumiem, że tak, ale nie krytykuj kogoś za nieprzeczytanie czegoś, co ten ktoś przeczytał ;P... A tak na serio - zaraz zajrzę do wersji R :) jeśli tam jest więcej, to sorry, ale w sumie chciałem to zrobić na wersji B :)...

Pozdrawiam Konop

Poczekajmy na kolejna wersje, zobaczymy czy tez bedzie "fixed problem .." :-)

J.

dlatego warto przemyslec dlugosc ramki (nie pchac po 100 bajtow w jednej sesji) i o opoznienia choc to co proste w oprogramowaniu kontrolera bywa niestety loteria w oprogramowaniu pcta. Dlatego w moich wynalazkach stosuje 422 zamiast 485 - praca co prawda nie odbywa sie w fulldupleksie ale jak sa jakies "rozjazdy" to dzial tak jak by byl dupleksem.

wojtek

formatting link
CMMS Maszyna Golem OEE Hall2007

TXDEN sobie programujesz na wyjsciu CBUS w programie MPROG

Wg mnie rozwiazeni z FT232R jest optymalne - mi najbardziej podoba się szybkość wyłączania nadajnika po skończeniu wysyłania bajtu - robi to idealnie tuż za bitem stopu. Robiąc to z API czy kontrolki TComport Dejana nie da się tego zrobić tak szybko i zawsze tak samo - co dla układów half-duplex ma ogromne znaczenie

Niestety programy/urządzenia rezerwują sobie COMY w windowsie i nawet jak ich nie ma fizycznie rezerwacja zostaje, dlatego ustalam sobie zawsze po instalacji FT232R COM z najniższym numerem jaki mi pasuje ale taki, który wiem że nie bedzie kolidował z innym urządzeniem jakie używam.

Pozdrawiam AKel

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required