Пытаюсь запустить аппаратный генератор для 12 выхода ПЛК100
(подмодуль "Generator" на Discrete output 2 bits)
Но он прописывается на выход 6.0, а не на 6.1...
прописываю второй, он ложится на 6.1, но не работает...
в чём ошибка?
Вид для печати
Пытаюсь запустить аппаратный генератор для 12 выхода ПЛК100
(подмодуль "Generator" на Discrete output 2 bits)
Но он прописывается на выход 6.0, а не на 6.1...
прописываю второй, он ложится на 6.1, но не работает...
в чём ошибка?
какой конкретно плк? проект выложите.
Ну конечно же с транзисторными выходами...
Какой проект? Просто прописываем в "конфигурации ПЛК", в Discrete output 2 bits "добавить подъэлемент - генератор"...
Модуль генератор не имеет настройки ножки и всегда привязан к одному и тому-же выходу.
И чтобы он работал и на релейной версии - это нога 6.0. (правда на релейной он особо и не нужен).
И его можно вставить только 1 штуку. Что логично :)
Из описания:
Подмодуль «Генератор» (Generator)
Модуль «Генератор» (Generator) – программный модуль, расширяющий функционал дискретного выхода и осуществляющий за счет аппаратного обеспечения процессора функционирование выхода в режиме высокоточного и высокоскоростного генератора с изменяемой скважностью.
Примечание. Особенности аппаратной реализации ОВЕН ПЛК позволяют осуществлять генерирование сигнала для ПЛК100-К только через одиннадцатый выход. При этом выход ПЛК100-К способен выдавать импульсы, как единичные, так и нулевые, длительностью не менее 30мкс.
вот почему в описании сказано про 12 выход?
описанию генератора уделено пара абзацев и вот такие ляпы...
как же программировать?
на такую простую вещь как генератор сегодня убил пол-дня, что бы догадаться как его запускать, как прописывать и где этот выход искать...
описание слабое и неточное...
каком описании? я привел выдержку из описания, там - 11 выход.
сейчас посмотрел...
это было старое описание, в новом исправлено на 11 вывод...
Кстати для тех, кто займётся генератором, он управляется переменной 6.0.2 "Amount Ticks "0xffffffff -infinite,0x00 - Stoр"
для перезапуска нужно записать в неё 0, а затем число импульсов в ДЕСЯТИЧНОМ формате...
можно и в 16-чном, если настроить среду исполнения на режим 16-ти ричных чисел :)
да нет... изменяю частоту в течении пачки и формирую разгонную характеристику для шагового двигателя...
было бы интересно посмотреть на проект :D .... просто не понятна идея... для разгона ШД меняют (уменьшают) время между последовательными шагами, а менять частоту прыжками после нескольких шагов - это очень медленно и рвано, легко потерять синхронизацию.... ведь чаще чем раз в цикл контроллера вы частоту не поменяете :eek:
уменьшить период и увеличить частоту, это не одно и тоже?
>ведь чаще чем раз в цикл контроллера вы частоту не поменяете
я думаю, что этого достаточно...
первый шаг - период 300 тактов
второй шаг - период 299 тактов
третий шаг - период 298 тактов
... и т.д.
эээ, а смысл этого действия? шаговые двигатели из удержания сразу поддержат 300 - 400 герц, а разгоны делают для вывода шд на частоты до 5-10 кгц... что никак не укладывается в циклы контроллера.
... можно конечно предположить что старт с такой низкой частоты ( 300 тактов = 3 гц ) требуется из-за гиганской инерции нагрузки... но тогда, мне кажется, не правильно выбран сам тип привода ))
имеется оборудование, на котором нужно заменить контроллёр, сервопривод стоит. нужно повторить управляющие сигналы предыдущего контроллёра...
даже если считать такты контроллера, то 300 тактов=0.3 гц, а если считать в тактах аппаратного генератора 11 вывода, то 1 такт=10 мкс, 300тактов=333 гц - начальная частота разгона...
типовая длительность цикла плк "овен" 1 мс. соотв. 300 циклов = 300 мс = 0,3 с -> эквивалент 3,333 гц.
если вы начинаете разгон с 333 гц, то по идее, поменять частоту нужно через 3 мс, т.е. через 3 цикла контроллера, что в принципе возможно, правда с оговоркой на несинхронность "модуля генератор" и цикла контроллера, но уже на 2 шаге времена точно не сойдуться.... кроме того, при перезагрузке значения частоты, длительность текущего формируемого импульса может прыгнуть в непонятную сторону из-за перепрограммирования внтренних счетчиков.
... может это и будет работать если нужно просто вращение (движение) но на шаговом приводе обычно не допускается потери шагов...
я поднимал задачу с шаговым двигателем, работает но идеального решения не получается пока (на плк100, получилось на 110), поэтому очень интересны все мысли и ход их возникновения ))))
там не совсем шаговый двигатель. там сервопривод со своим контроллером. я просто ему даю последовательность импульсов, как на соседней машине... описание на английском и подробностей я не знаю и он пока не запустился...
а по осциллографу импульсы красиво получаются...