Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 13

Тема: как связать плк100 с тэм-104

  1. #1
    Пользователь
    Регистрация
    18.12.2009
    Адрес
    Подольск
    Сообщений
    8

    По умолчанию как связать плк100 с тэм-104

    Здравствуйте уважаемые. Я начинающий пользователь ПЛК 100 и Codesis. И вот какая проблемка...
    Мне нужно связать ПЛК100 по интерфейсу RS-485 с прибором, не поддерживающим протокол Modbus. Этот прибор - вычислитель счетчика тепла ТЭМ104. Он поддерживает свой собственный протокол, который описан на сайте "tem-pribor.com". Я так понимаю, что для этого нужно уметь осуществлять посылку сообщений в порты ПЛК из управляющей программы написанной в Codesis. Возможно это сделать таким или может другим способом?

  2. #2

    По умолчанию

    1. Лучше писать CoDeSys.
    2. Для работы по нестандартным протоколам есть библиотека SisLibCom. Ну и описание работы с данной библиотекой на русском языке. Выложена на диске с ПЛК и на нашем сайте в разделе CoDeSys

  3. #3
    Пользователь
    Регистрация
    18.12.2009
    Адрес
    Подольск
    Сообщений
    8

    По умолчанию

    Здравствуйте Андрей. Спасибо за ответ. Я пытаюсь воспоьзоваться примером программы приведенной на диске. Если можно поясните как это сделать ? Если я правильно понял то SysLibCom Позволяет работать с COM портом ПЛК. Устройство с которым мне нужно связаться работает по RS-485. Могу ли я воспользоваться преобразователем интерфейса и если да то каким?

  4. #4

    По умолчанию

    в данном случае под Com портом подразумевается любой последовательный порт, в том числе и 485. адреса портов указаны в русскоязычном описании библиотеки, в самом начале.

  5. #5
    Пользователь
    Регистрация
    18.12.2009
    Адрес
    Подольск
    Сообщений
    8

    По умолчанию

    Вот еще проблемка: судя по описанию сом порты в библиотеке Sislibcom определяются в переменной setings.port типа перечисление. В перечислении содержатся порты от com1 и дальше. RS485 определяется как соm0. Однако при попытке задать переменную setings.port:=0 переменной присваевается значение *** INVALID:0 *** . В то же время при присвоении значений 1 или 2 или 3... переменной присваевается значение Сom1 или Com2 ... Если проигнорировать это и оставить последствия присвоения 0-ля, то при открытии и запуске порта связь ПЛК и МДВВ пропадает, а при закрытии порта связь тем ни менее не восстанавливается. Настроики я делал такие:setings.Port:=0;
    setings.dwBaudRate:=9600;
    setings.byParity:=0;
    setings.byStopBits:=0;
    setings.dwBufferSize:=0;
    setings.dwScan:=0;
    setings.dwTimeout:=0;
    При этом и MДВВ то же настроен на такие параметры, и до начала работы с портом хорошо общается с ПЛК... ЧТО ДЕЛАТЬ?

  6. #6

    Lightbulb пример открытия и инициализации порта.

    Пример открытия и инициализации порта.
    Пример выложен в двух аналогичных вариантах на языках ST и CFC.
    Данные примеры можно использовать, как начальные заготовки в программах,
    где требуется работа с портами на прямую.

    Программы написаны для ПЛК 100.Р-М c таргетом версии 2.10.

    Если используется контроллер другой модели и другим таргетом,
    то необходимо проделать следующие действия:
    1) Открыть пример
    2) Открыть вкладку ресурсы (слева внизу)
    3) Выбрать элемент Настройки целевой платформы (слева)
    4) В открывшемся меню выбрать ваш контроллер и нажать OK
    5) Открыть элемент Конфигурация ПЛК (слева)
    6) Открыть меню Дополнения (наверху) и выбрать пункт стандартная конфигурация
    7) Открыть меню Проект (наверху) и выбрать пункт Очистить все
    8) Открыть меню Проект (наверху) и выбрать пункт Компилировать все

    В данном проекте используется надстройка над библиотекой SysLibCom.lib библиотека ComService.lib,
    в которой реализовано открытие, инициализация, перенастройка на новые параметры и закрытие порта.
    В проекте должны присутствовать обе библиотеки.
    Инициализация порта.rar
    Последний раз редактировалось Александр Приходько; 24.12.2009 в 13:40.

  7. #7
    Пользователь
    Регистрация
    18.12.2009
    Адрес
    Подольск
    Сообщений
    8

    По умолчанию

    Честно говоря ни чего не понял из этих примеров.
    в моем случае я имею подключенные к ПЛК100 по RS485МДВВ и ТЭМ104. Перед началом работы с портом МДВВ замечательно контактирует с ПЛК. Затем начинается работа с портом:
    1-Порт открывается SysComOpen(Setings.Port)=0;
    2-При запуске порта SysComSetSettings(Setings.Port,ADR(Setings))=INVAL ID:16#FF;
    3-Производится запись SysComWrite(Setings.Port,%MB0,7,0)=7;
    4-Производится попытка чтения SysComRead(Setings.Port,%MB10,14,0)=0;
    5-Порт закрывается SysComClose(Setings.Port)=FALSE;
    И при этом настройки порта теряются? потятся или еще что? но ПЛК не имеет связи с МДВВ.
    Даже если чтение и запись в порт производятся неправильно, то почему страдает процедура закрытия порта?
    Еще интересно-в какую область памяти сохраняются данные о предыдущих настройках порта при использовании SysComSetSettings? Потаму, что в ходе работы я использую %BM0..%BM24.

  8. #8

    По умолчанию

    не нужно подключать к одному порту устройства работающие по модбасу и приборы с нестандартными протоколами, возможна куча всяких накладок. лучше взять ас-3м и подключится к сом-1.

  9. #9
    Пользователь
    Регистрация
    18.12.2009
    Адрес
    Подольск
    Сообщений
    8

    По умолчанию

    спасибо за совет. я вобщем то же к такому решению склоняюсь. но остаются вопросы...
    1-почему после закрытия порта управление портом не возвращается "операционной системе плк". может нужно еще что то сделать для этого ?
    2-может можно непосредственно просто посылать данные в какойто регистр памяти плк для обращения к порту без сложных процедур открывания и закрывания порта?
    3-где в памяти плк хронятся данные о настройке порта?
    уважаемые специалисты овен!!! для меня это важные вопросы. наша компания спроектировала более 50 итп подразумевая что перед началом строительства мы успеем разобраться с этой проблемкой ))) если вы то же считаете, что лучше использовать разные порты, то пожалуйста скажите про это.
    с уважением
    анзаур - исп. дир.
    ооо"радуга хит"

  10. #10

    По умолчанию

    все ваши вопросы были реализованы в примере который выложен выше.
    в данном примере был реализован алгоритм открытия, закрытия и инициализация порта новыми настройками - стандартная заготовка.

    при использовании в системе устройств с различными протоколами желательно разносить устройства на разные интерфейсы.

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •