Форум: "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.015 c