Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 11 по 20 из 36

Тема: протокол Modbus

  1. #11
    Пользователь Аватар для Flomaster
    Регистрация
    03.05.2007
    Адрес
    Khabarovsk
    Сообщений
    278

    По умолчанию

    Согласен, изобретать велосипед не к чему:-)

  2. #12
    Пользователь Аватар для Flomaster
    Регистрация
    03.05.2007
    Адрес
    Khabarovsk
    Сообщений
    278

    По умолчанию

    Ну вот, сегодня, значится, былf попытка соединения ПЛК-150-I.M. с частотником от ВЕСПЕРа. Попытка успехом не увенчалась.
    Для соединения использовался интерфейс RS-232 и кабель (Rx,Tx,GND).
    В конфигураторе был добавлен Modbus master с интерфейсом связи RS-232. А дальше начались чудеса. При попытке логина из Codesys вылетае непонятное сообщение об ошибке.

    Причем так и не удалось выяснить закономерность появления этого сообщения. Иногда после ресета ПЛК оно не выдается. Прошивка ПЛК и таргеты версии 2.
    Затем в Modbus Master был добавлен Universal Modbus Device (NetMode = Serial). Проводилось считывание Last Error. При этом, в некоторых случаях она равнялась 0 (т.е. соединение установлено), а в некоторых 81 (таймаут ожидания - например, не подключен кабель к частотнику). Иногда после повторного логина выдается указанное выше сообщение и ПЛК словно подвисает - Last Error равен 0 или 81 и на ее значение не влияет, подключен ли кабель к частотнику или нет. Вывести его ступора иногда получается, выполнив ресет. Но какой-либо точной взаимосвязи тоже установить не удалось.
    Что это может быть? Как решить проблему?
    Изображения Изображения

  3. #13

    По умолчанию

    Данная проблема заключатся в том что если верхний (DBGU ) порт используется в программе необходимо выставить его режим как не CoDeSys. Это возможно двумя путями 1) Исп кабель без перемычки 2) Установить на верхней плате джампик и исп. стандартный кабель. А теперь главное - после указанной ранее установки нужно перезагрузить контроллер resetом. Т.к. режим использования порта определяется ТОЛЬКО при загрузке контроллера. Проверить режим DBGU можно просмотрев лог загрузки гипертерминалом. Строк в конце:
    Special cable detected...
    Switch top RS to CoDeSys mode...
    не должно быть

  4. #14
    Пользователь
    Регистрация
    05.05.2007
    Адрес
    Барнаул->Москва
    Сообщений
    139

    По умолчанию

    С ПЧ я бы все же соединялся через RS-485... помехи еще никому жить не помогали, это ж частотник....

  5. #15
    Пользователь Аватар для Flomaster
    Регистрация
    03.05.2007
    Адрес
    Khabarovsk
    Сообщений
    278

    По умолчанию

    Да, по поводу кабеля уже прочел соседний топик. вот еще теперь вопрос: например, есть у частотника, с которым я соединяюсь, регистр 0123H, в котором хранится текщее значение выдаваемой частоты. Судя по всему, значение real, т.к. на дисплее отображается чило с плавающей точкой. Мне нужно получить это значение в программу ПЛК.
    1. Какой именно подэлемент Universal modbus device нужно добавить? (Я так понимаю, что это должен быть input)
    2. Какое значение указывать у параметра Command?

  6. #16
    Пользователь
    Регистрация
    05.05.2007
    Адрес
    Барнаул->Москва
    Сообщений
    139

    По умолчанию

    там не число с плавающей точкой, а обычное uint
    Поэтому смело берете register input module, далее делите на 100 иприсваиваете real переменной, получаете значение частоты с точность 0.01 Гц

    Command - 0x03

    если сумбурно рассказал, то вот так:
    real_out:=int_register/100;
    Где int_register - это Register input module (word)
    real_out - Частота на ПЧ в формате Real с двумя знаками после запятой.
    Последний раз редактировалось Василий Куц; 22.08.2007 в 10:06.

  7. #17

    По умолчанию

    Было бы чудесно, если бы Вы выложили примеры для ваших частотников (достаточно описания PLC Configuration) в форуме ПЛК-Примеры - народ бы смотрел и пользовал.

  8. #18
    Пользователь
    Регистрация
    05.05.2007
    Адрес
    Барнаул->Москва
    Сообщений
    139

    По умолчанию

    Да, кстати, забыл сказать.... в регистре 0123H хранится не значение выдаваемой частоты, а задание на частоту, это немного разные вещи.
    Задание - это то, что вы видите в простейшем случае на дисплее, даже в режиме стоп.
    Частота на выходе (она хранится в 0124Н) это.... частота на выходе Т.е. в режиме СТОП/ПАУЗА там будет 0, после подачи СТАРТ значение будет увеличиваться до значения задания.

  9. #19
    Пользователь Аватар для Flomaster
    Регистрация
    03.05.2007
    Адрес
    Khabarovsk
    Сообщений
    278

    По умолчанию

    Цитата Сообщение от Василий Куц Посмотреть сообщение
    Да, кстати, забыл сказать.... в регистре 0123H хранится не значение выдаваемой частоты, а задание на частоту, это немного разные вещи.
    Задание - это то, что вы видите в простейшем случае на дисплее, даже в режиме стоп.
    Частота на выходе (она хранится в 0124Н) это.... частота на выходе Т.е. в режиме СТОП/ПАУЗА там будет 0, после подачи СТАРТ значение будет увеличиваться до значения задания.
    Ой, , прошу прощения! Действительно, выходная частота хранится по адресу 124H. А задание частоты производится в регистр по адресу 123H.

    А задание значенией регистрам, если я правильно понял, производится командой 0x06H?

  10. #20
    Пользователь
    Регистрация
    05.05.2007
    Адрес
    Барнаул->Москва
    Сообщений
    139

    По умолчанию

    Советую ознакомиться с данной документацией.
    03 - чтение
    06 - запись
    Протокол Modbus E2-8300 .rar

Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Ваши права

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