Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > ПЛК и микроконтроллеры
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Связь DL06 и ВКТ-5

 Ответить Ответить
Автор
Сообщение
FPavel Смотреть выпадающим
Новичок
Новичок


Присоединился: 22 Июнь 2009
Категория: Russian Federation
Online Status: Offline
Публикации: 19
Свойства публикации Свойства публикации   Ответить, цитируя автора - FPavel Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Связь DL06 и ВКТ-5
    Опубликовано: 28 Май 2013 16:23
Уважаемые специалисты,
передо мной встала задача связать по RS485 контроллер DirectLogic DL06 и тепловычислитель ВКТ-5 - прочитать массовый расход.
По мере изучения вопроса всё больше крепнет уверенность, что DL могут обмениваться только между собой. И вот почему:
1) запрос к ВКТ-5 выглядит так
- Slave address - 2
- Function      - 3
- Start Addr h - 0
-            l - 32
- No of Points h- 0
-              l- 8
- Error Check l - x1
-             h - x2
Итого, массив 2, 3, 0, 32, 0, 8, x1, x2
2) ответ ожидается такой
- Slave address - 2
- Function      - 3
- Byte count    - 20
- M по ТВ       - m:4
- W по ТВ       - w:4
- W1 по ТВ      - w1:4
- W2 по ТВ      - w2:4
- tнорм раб     - t:4
- Error Check l - x1
-             h - x2
3) в DL06 есть оператор MRX, но в его форме не получается поставить Start Slave Memory Address не из диапазона k4001-4999. А здесь нужен адрес 0020h=32. Т.е. приходится "забыть" о MRX.
4) следующий оператор RX тоже специфичен - требуется указать область памяти ведомого устройства в терминах DL06 (V, X, Y, GY и т.д.)

Подскажите, возможно ли всё-таки организовать считывание и как это реализуется?

Если есть работающий пример (не обязательно с ВКТ) или ссылка на пояснения - приведите их.
Наверх
Astilya Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 18 Декабрь 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 275
Свойства публикации Свойства публикации   Ответить, цитируя автора - Astilya Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 29 Май 2013 18:14

Добрый день

в MRX в поле Start Slave Memory Address для Вашего случае нужно указать k40032. т.к Function 3 в Модбасе предназначена для доступа к т.н. Holding registers, а они, как известно, имеют формат адреса 4хххх.
Наверх
FPavel Смотреть выпадающим
Новичок
Новичок


Присоединился: 22 Июнь 2009
Категория: Russian Federation
Online Status: Offline
Публикации: 19
Свойства публикации Свойства публикации   Ответить, цитируя автора - FPavel Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 07 Июнь 2013 13:35
Спасибо!
Действительно так. Добавлю, что для целых чисел (дата, время) данные принимаются в корректном для DL06 формате, а вот для типа float (показания расхода и т.д.) необходимо поменять местами слова (не байты, а именно слова).

Ещё раз спасибо!
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz