Почти вся логика управления находится в модуле PLC. Все сигналы от датчиков, кнопок и цепей безопасности подаются на правосторонние модули типа DVP16SP11R. Нет энкодера для центральной синхронизации сервоприводах. Команды к модуль MC подаются через специальные регистры для внутреннего обмена D6000-D6226 и D6250-D6476. Битовых регистров сначала имплементируются в регистры данных, проходят через обмена, а затем снова преобразуются в битовых. Модуль MC выполняет позиционирование сервоприводах, используя стандартные MC_ и DMC_ инструкции. Поскольку в конкретном приложении нет интерполяции, мне не пришлось использовать G-коды.а по кан-шине вы управляете полноценно?
Из 5 сервоприводов 4 выполняют абсолютное позиционирование. Соответственно для них предусмотрен Homing в режиме 21. У каждого из них есть датчик, указывающий исходное положение, и сигнал с него поступает на DI7 сервопривода, у которого параметр Р2-16 изменяется на 0x24. Это экономит один вход ПЛК, т.к. сигнал для начального позиционирования напрямую передается к приводу и потом по CAN обратно в инструкцию MC_PassiveHome. Пятый сервопривод выполняет относительное позиционирование, потому что он управляет лентой, у которой нет начальной позиции.
Все работает быстро, потому что шина CAN быстрая. Так что можно сказать, что связь по CAN более чем полноценная. Я пока не пробовал управлять сервоприводом RS-485. По этой причине я и не пытался сделать это. Поэтому я решил использовать MC и CAN. Мне пришлось много читать....