Просмотр полной версии : У ПЛК 63 можно использовать два com-порта?
Извиняюсь за ламерский вопрос: попала мне тут в руки прога для ПЛК 63. Так вот в программе функция ComService1 вызывается дважды с разными Settings в одном номер порта 3, в другом 4. Один, насколько я понимаю, используется для связи с ПК Оператора, другой для связи с МДВВ. Открываю я технические характеристики ПЛК 63 и вижу "Интерфейсы
RS-485, DEBUG RS-232 (RJ-11)". Debug RS-232 же использутеся только для связи с Codesys или я не прав?
и еще непонятно: разве можно в RS-485 указывать номер порта отличный от нуля?
Сам работаю с ПЛК73 - вот там точно нельзя. На ПЛК63 можно использовать оба порта.
и еще непонятно: разве можно в RS-485 указывать номер порта отличный от нуля?
Не понятен вопрос
Вот такой комментарий вижу в примерах:
com_num: PORTS:=0; (*0 - RS-485, 1 - RS-232*)
Вот такой комментарий вижу в примерах:
com_num: PORTS:=0; (*0 - RS-485, 1 - RS-232*)
Что смущает? Вот это "0 - RS-485"? Это хитрость от Овен - КДС кажет ошибку, но порт работает.
а на ПЛК-150 можно два порта использовать?
а на ПЛК-150 можно два порта использовать?
Да. (Здесь пишу всякую ерунду, так как меньше 10 символов нельзя)
Хорошо. Но непонятным остается вопрос откуда брать номера этих ком-портов?
Т.е. вот например есть у меня ПЛК-150, физически: первый ком-порт - это 2 провода RS-485, второй ком-порт - это разъем RS-232 Debug. А внутри ПЛК, как к ним обращаться, 485-му передавать адрес 0, а 232-му адрес 1?
Ход мысли правильный. На форуме полно тем с ответом на этот вопрос.
да, спасибо, нашел файл "Номера портов ПЛК" вопрос с номерами портов внутри ПЛК отпал.
Теперь другое не могу понять, у ПЛК-150 всего 3 интерфейса: Ethernet, RS-232 и RS-485. Однако в файле написано:"COM0 – RS485, COM1 – RS232, COM2 – Не исп., COM3 - Не исп., COM4 – RS232-Debug".
Так вот когда RS-232 работает как debug, а когда нет? это зависит от кабеля или от чего? у меня есть кабель КС-1 с ним RS-232 будет дебагом или нет?
Кажется понял. Если у меня кабель КС-1 (кабель программирования), то я должен использовать COM4 debug, если модемный кабель с выключенной перемычкой - то COM1. Теперь другой вопрос могу ли я использовать кабель КС-1 и, соответственно, RS-232 debug для связи плк с компом, но не Codesys, т.е. есть у меня например своя прога на компе которая что-то пишет в порт, смогу ли я прочитать это на ПЛК через порт debug? или мне нужно искать другой кабель?
Наверное ПЛК под рукой нет?
Просто на все вопросы ответ можно найти опытным путем. Если конечно документацию и форум штудировать лень
Был сегодня плк под рукой. Кодесисом подключался к плк и через КС-1 и по эзернету. А вот прочитать на на ПЛК то, что писала сторонняя программа в порт не смог. При этом порт COM4 открывался, но SysComRead всегда возвращала 0 прочитанных байт. Вот пытаюсь понять причину
Предлагаю подключить ПЛК к 232 порту компьютера. Кабель - КС2. На компе запустить терминал и пулять байты в ПЛК. Таким образом можно научиться их "ловить".
ЗЫ: Может SysComRead используется неправильно?
Кабель только КС-1 другого нет. Вычитал тут на форуме
данный порт может использоваться в 2-х режимах - как стандартный RS-232 и как порт Gateway (связь с CoDeSys).
При загрузке контроллер проверяет какой тип кабеля подключен к данному порту - т.е. определяет как работает порт. Если он увидит кабель для работы по стандартному 232 (без перемычки) - CoDeSys ничего не напишет.
Если кабеля нет (дополнительно проверяется перемычка на верхней плате), либо он с перемычкой - порт воспринимается как Debug - о чем он и сообщает ID 200.
Все нежелающие перепаивать кабель могут переставить на верхней плате перемычку в состояние замкнуто и порт автоматически будет восприниматься как стандартный RS-232.
так что завтра буду искать перемычку.
А чего в использовании SysComRead может быть неправильного?
byte_read:=SysComRead(Settings.Port, ADR(buf_otvet), 64, 0);
Как-то так....
tmp1:=SysComRead(Handle, ADR(buf_otvet), otvet_len, 0);
IF tmp1>0 THEN
FOR i:=0 TO tmp1-1 DO
otvet[l+i]:=buf_otvet[i];
END_FOR
l:=l+tmp1;
END_IF
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot