Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-485

Обсуждаем Arduino, Raspberry Pi и другие электронные компоненты и проекты DIY
Ответить
Тима
Сообщения: 131
Зарегистрирован: 16 ноя 2012, 21:03

Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-485

Сообщение Тима »

Теперь хочу попробовать записать с ардуины в ПЛК ДЕЛЬТА DVP-SS2 по RS-485.
Хочу управлять шаговым двигателем через ПЛК. Сейчас практикуюсь. Под рукой есть ПЛК DVP-SS2 от ДЕЛЬТА, драйвер шагового двигателя(управление step/dir), шаговый двигатель, дуина, экран OLED + куча всего, что может пригодится. В придачу прямые на глаз руки... :roll:
Итак, Хочу с дуины задавать скорость и расстояние, а точнее частоту и количество импульсов на выходе ПЛК.
Вижу это так.
Рисунок1.jpg
Рисунок1.jpg (28.3 КБ) 18981 просмотр
Хочу использовать дуину в качестве панели оператора, т.к. заводская панель очень дорогая.
Сейчас работаю над правой частью схемы, т.е. над связкой "ДЕЛЬТА+драйвер ШД+ШД"
Теперь от железа перейдем к программной части....
Данные нужно записать в регистры, к примеру D0 и D1. У них адреса 4096 и 4097 соответственно.
Как это грамотно прописать в скетче дуины?
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1018
Зарегистрирован: 22 окт 2010, 23:57

Re: Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-

Сообщение Mr.Kubikus »

Привет! Перенес обсуждение в отдельную тему.

Какой артикул у ПЛК и драйвера ШД?
С уважением, Григорий
GitHub FB ВК
Тима
Сообщения: 131
Зарегистрирован: 16 ноя 2012, 21:03

Re: Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-

Сообщение Тима »

А что за артикул(стесняюсь спросить :oops: )?

ПЛК вот такой: http://kipservis.ru/delta/logicheskie_k ... dvp_ss.htm
Драйвер такой: http://www.ebay.com/itm/CNC-Router-Sing ... 3aab4c9040
Тима
Сообщения: 131
Зарегистрирован: 16 ноя 2012, 21:03

Re: Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-

Сообщение Тима »

Вот тут на быструю руку накидал простенькую программку для получения импульсов на выходе Y1...
Рисунок1.jpg
Рисунок1.jpg (56.26 КБ) 18968 просмотров
Все проверил, все работает.
При логической "1" на Y0, команда PLSY выдает с частотой 20 Гц(К20), 40 импульсов(К40) на Y1.
Сейчас частота и количество импульсов фиксированы и задаются константами. Вместо К20 и К40 надо вставить D0 и D1, ячейки памяти, которые Мы будем менять при помощи дуины.

Хотя в конечном итоге вместо Y0 надо будет использовать внутреннее реле, а вместо ячеек D0 и D1 надо использовать энергонезависимые ячейки (D408 и D409 к примеру).
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1018
Зарегистрирован: 22 окт 2010, 23:57

Re: Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-

Сообщение Mr.Kubikus »

А что за артикул(стесняюсь спросить :oops: )?
Я имел ввиду - какой код модели у твоего контроллера - DVP14SS211T или DVP14SS211R?

С контроллерами DELTA никогда не работал. Поэтому использовал для ознакомления документ "DVP-ES2/EX2/SS2/SA2/SX2/SE&TP Operation Manual Programming".

Как я понял: ты хочешь записывать через последовательный интерфейс RS485 по протоколу MODBUS RTU в ПЛК в ячейки памяти D0 и D1 данные, которые потом будут использоваться в программе в ПЛК для формирования последовательности импульсов STEP и DIR для управления ШД.

Для этого тебе понадобится выполнить следующие шаги:
1. В программу ПЛК добавить секцию для настройки порта COM2 на требуемый режим работы (см. Operation Manual Programming на стр. 2-62 и 4-2)
2. Написать программу для Arduino. В качестве основы можно взять код из темы "Интерфейс RS-485 протокол MODBUS RTU". Здесь для записи в память ПЛК тебе понадобится функция MODBUS 06 (06h) "Set content of single register" или функция с кодом 16 (10h) "Set content of multiple registers". Через эти функции ПЛК предоставляет доступ к областям памяти T, C, D. При формировании пакета MODBUS надо учитывать, что ячейкам памяти ПЛК D000~255 соответствуют адреса регистров MODBUS 1000h~10FFh (см. Operation Manual Programming на стр. 4-12). Поэтому в качестве адреса регистра надо указать значения 1000h или 1001h.
3. Ну и еще надо собрать схему.

Вроде все. Буду рад ответить на вопросы.

PS. ПЛК вроде норм. Недорогой и документация подробная. Как он в работе? Не глючит?
С уважением, Григорий
GitHub FB ВК
Тима
Сообщения: 131
Зарегистрирован: 16 ноя 2012, 21:03

Re: Связь между Arduino и ПЛК ДЕЛЬТА по MODBUS RTU через RS-

Сообщение Тима »

С программкой на ПЛК разобрался. Только к драйверу ШД еще не подключал. Нету его под рукой, как и дуины с экраном.
Сейчас на вахте нахожусь. Взял с собой по-тренероваться только ПЛК с блоком питания. Не думал что так быстро разберусь.


ПЛК хороший. Запускал на нем пару объектов. Работают пока без сбоев. Еще использовал несколько раз их пид-регуляторы в связке с сенсорной панелью. Года три работает без нареканий. Ставил несколько частотных преобразователей от ДЕЛЬТА, от 0.75 до 37 кВт.
Линейка их продукции впечатляет. Как посмотришь на это все, аж руки чешутся....
Что еще радует помимо цены, так это полнота документации(в том числе и на русском) и бесплатное ПО. Качай и пользуйся.
Ответить