Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];

Вниз

RS-485   Найти похожие ветки 

 
Vitaly123   (2005-08-09 22:50) [0]

Доброго времени суток. Может кто занимался программированием приборов с интерфейсом RS-485? Схема такая: PC<->RS-232<->Конвертор (RS-232-RS-485)<->RS-435. По идее, данные отправляются на Com-порт, но отклика от прибора нет.


 
Германн ©   (2005-08-10 02:31) [1]

Идею документируй, пожалуйста. Тогда может быть поговорим.


 
miek ©   (2005-08-10 09:11) [2]

RS-485 никак программно не отличается от RS-232. Что-то у тебя с COM-портом неверно выходит. Или порт уже подгорел:)


 
Adder ©   (2005-08-10 09:33) [3]


> miek ©   (10.08.05 09:11) [2]

Некоторые отличия все же могут "случиться" т.к.  между  адаптерами RS-485 есть различия - для управления приемом-передачей в режиме Full-Duplex в различных моделях адаптеров могут использоваться либо сигналы RTS/CTS, либо DTR/DSR.
Опять же, некоторые адаптеры, но не все поддерживают режим автоматического определения направления передачи.
Vitaly123   (09.08.05 22:50) "по идее" - это как???


 
WondeRu ©   (2005-08-10 09:38) [4]

Vitaly123   (09.08.05 22:50)
данные отправляются на Com-порт, но отклика от прибора нет.

скорее всего неправильно скорость передачи выставил + помни, что электроника - наука о плохих контактах


 
Sphinx ©   (2005-08-10 10:03) [5]

Еще иногда встречаются "уникальные" переходники интерфейсов.
К примеру этим грешит SIEMENS.
Убили пару дней чтобы на основе ADAMовского переходника подключить сименс к компьютеру, проверили всё и схему и сигналы, ну не видит программа контроллер и всё тут.
Пришлось заказывать фирменный провод (с переходником) за 300 евро, заработал сразу...


 
Vitaly123   (2005-08-10 20:14) [6]

Прибор и канал работают (есть родная программа на которой тестировал). Переходник и правда оригинальный - самодельный.
Проблема в том, что я не могу начать работу с прибором. Там надо отправить номер прибора, причём выставить бит чётности в 1.
Может проблема в этом. Использую такой код:

var
 DCB: _DCB;
begin
 GetCommState(CommHandle, DCB);
 DCB.Parity:=1;
 SetCommState(CommHandle, DCB);
end;

Может здесь ошибка?
И ещё такой вопрос. При отправке данных есть ли разница между числовыми и текстовыми данными и между десятичным и шестнадцатеричным представлением чисел?


 
KilkennyCat ©   (2005-08-10 20:48) [7]


> есть ли разница между числовыми и текстовыми данными и между
> десятичным и шестнадцатеричным представлением чисел


1000011100011010011100...


 
Starcom   (2005-08-10 23:15) [8]

Sphinx ©   (10.08.05 10:03) [5]

Еще иногда встречаются "уникальные" переходники интерфейсов.
К примеру этим грешит SIEMENS.

Во-во! И я о том же. Особенно MPI > DP.


 
Defunct ©   (2005-08-11 02:52) [9]

WondeRu ©   (10.08.05 09:38) [4]
> скорее всего неправильно скорость передачи выставил
исключено, если девайс принимает.

> Sphinx ©   (10.08.05 10:03) [5]
> Еще иногда встречаются "уникальные" переходники интерфейсов.
..
> Пришлось заказывать фирменный провод (с переходником) за 300 евро, заработал сразу...

Что там уникального?
232 <> 485 на одной микрушке 561ЛН1 делается
если надо надежно тогда связку ADM485 + ADM232.
если дуплекс - ADM485 + ATM162 (2051) + ADM232 (это тот что типа фирменный от сименса за 300 евро, деталей там на $7). Кинул вас сименс на 293 евро ;>

> Vitaly123   (09.08.05 22:50)  
> И ещё такой вопрос. При отправке данных есть ли разница между числовыми и текстовыми данными и между десятичным и шестнадцатеричным представлением чисел?

Разумеется - есть, как для девайса!
И, разумеется - нет, как для интерфейса.

Требуйте документацию к прибору. Там все должно быть описано - что, как и где. В нормальной документации должны быть описаны простейшие функции, обеспечивающие работу с устройством.

PS: что за прибор? ;>


 
Vitaly123   (2005-08-11 09:03) [10]


> Требуйте документацию к прибору. Там все должно быть описано
> - что, как и где.

Функции есть, но они мне никчему пока.
А вот ещё такой вопрос. Я электронику не знаю, но на стандартной розетке COM 9 контактов. У меня же только четырёхжильный провод, то есть 5 контактов вообще нет (хотя я не разбирал - может там перемычки стоят). Может дело в этом?


 
wal ©   (2005-08-11 09:45) [11]


> ... на стандартной розетке COM 9 контактов. У меня же только
> четырёхжильный провод ...

Это 4 провода на 485 или 232?
Для 485 это в самый раз (два на передачу, два на прием, кстати, часто их "объединяют", и получается всего два провода).
Для 232 в принципе достаточно 3-х проводов - прием, передача и общий (на DB-9 контакты 2, 3, 5). Для переходников на 485 обычно используют так же еще один сигнальный провод, DTR или RTS (на DB-9 контакт 4 или 7). Он используется дла того, чтобы указать преобразователю направление потока данных (передача или прием), управлять состоянием этих сигналов можно с помощью функции EscapeCommFunction. Ну и, естественно, все параметры связи (скорость передачи, количество информационных бит, наличие(отсутствие) бита четности и его состояние, количество стоповых бит) нужно настроить в том виде, в каком их ожидает прибор (или преобразователь).

С уважением.


 
Defunct ©   (2005-08-11 10:55) [12]

Vitaly123   (11.08.05 09:03) [10]
> но на стандартной розетке COM 9 контактов. У меня же только четырёхжильный провод

485-й работает по двухпроводке, 232-й по трехпроводке. Сигналы КОМ порта DTR/DSR/CTS/RTS/RI/DSE никакого отношения к RS232/485 не и имеют. Просто считайте в вашем случае они как доп трофей или обуза.

Четырехжильный провод хм.. очень возможно один из сигналов используется для питания преобразователя, либо для переключения приема/передачи как сказал wal ©. Посмотрите в документации к преобразователю (если есть). Если нет тогда
> (хотя я не разбирал - может там перемычки стоят).
разберите розетку посмотрите какие контакты используются. должны быть задействованы 2,3,5 и один из тех что привел wal ©. Вот этот "один из тех" и есть тот что вам нужен.
БП у преобразователя отдельный или вообще нет БП?

> wal ©   (11.08.05 09:45) [11]
> Для 485 это в самый раз (два на передачу, два на прием, кстати, часто их "объединяют", и получается всего два провода).

Что-то путаете. см. спецификацию интерфейса (двухпроводный симметричный интерфейс). Когда 4 провода, то это уже не 485-й, а 2 485-х. ;>


 
wal ©   (2005-08-11 11:36) [13]


> 232-й по трехпроводке. Сигналы КОМ порта DTR/DSR/CTS/RTS/RI/DSE
> никакого отношения ... RS232
Разве? RS232, вообще-то, имеет 23 линии, и DTR/DSR/CTS/RTS/RI/DSE туда входят, только под другими именами, это в компьютерном СОМ-порте, которой "отдаленно напоминает" RS232, используется только 9.

> Что-то путаете. см. спецификацию интерфейса (двухпроводный
> симметричный интерфейс).
С этим спорить не буду, возможно попутал с 422-м.

С уважением.


 
Swetlana   (2005-08-11 13:43) [14]

Столкнулась с проблемой - мне нужно собрать на коленке переходник на RS485-232. У кого-нить есть ссылочки на схемы?


 
KilkennyCat ©   (2005-08-11 19:47) [15]


> [14] Swetlana   (11.08.05 13:43)


http://acutp.by.ru/shem/adapter.htm


 
Sphinx ©   (2005-08-11 21:29) [16]

2 Defunct ©

>Что там уникального?
>232 <> 485 на одной микрушке 561ЛН1 делается

Ну так не извращался ;)

>если надо надежно тогда связку ADM485 + ADM232.
Вот именно так и делал, ни фига...не хочет STEP7 видеть контроллер

>если дуплекс - ADM485 + ATM162 (2051) + ADM232
>(это тот что типа фирменный от сименса за 300 евро,
>деталей там на $7). Кинул вас сименс на 293 евро ;>
Деньги не мои были, а заказчику на них было....вобщем безразлично почти, просто я лопухнулся сперва, не заказал этот кабель, думал легко переделаем ADAM....угу...чичаЗЗ...


 
Defunct ©   (2005-08-11 21:40) [17]

wal ©   (11.08.05 11:36) [13]
> Разве? RS232, вообще-то, имеет 23 линии

вообще-то не имеет.
RS232 - асимметричный 3-х проводный интерфейс, с уровнями сигналов (+12~+3)=1, (-12~-3)=0

RS232 - трехповодка, см. документацию по RS232 трансиверам (например MAX232). Там впомине нет никаких дополнительных сигналов управления (тем более 23-х линий). COM-порт обеспечивает RS232 интерфейс по линиям (2,3, 5 для 9 контактного) или (2,3, 7 для 25 контактного разъема) выводам, все остальное фантазия дискретных упр. сигналов.


 
tesseract ©   (2005-08-11 21:45) [18]

>Что там уникального?
>232 <> 485 на одной микрушке 561ЛН1 делается

Делается и на 2 транзисторах. Но на фига он без оптронной развязки? Такая штука стоит $10 с развязкой $80-150
>>Разве? RS232, вообще-то, имеет 23 линии, и DTR/DSR/CTS/RTS/RI/DSE туда входят, только под другими именами, это в компьютерном СОМ-порте, которой "отдаленно напоминает" RS232, используется только 9.
У RS232 подстандарты - A/B/C/D
RS422 - в общем плане RS232 + усилитель



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.014 c
3-1124878393
Ярослав
2005-08-24 14:13
2005.10.09
как вставить id текущего соеденения в таблицу


2-1125520480
tamara
2005-09-01 00:34
2005.10.09
align left ,align right


14-1126951227
Piter
2005-09-17 14:00
2005.10.09
Быстродействие потоков


4-1123407155
Sphinx
2005-08-07 13:32
2005.10.09
Код создания окна не работает в dll


2-1125079596
Ed
2005-08-26 22:06
2005.10.09
excel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский