Страница 70 из 1050 ПерваяПервая ... 2060686970717280120170570 ... ПоследняяПоследняя
Показано с 691 по 700 из 10495

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #691

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    а на PLCWinNT не пробовали запустить, проверить горение лампочки с такими мизерными интервалами двух часов будет достаточно, а лучше в место лампочки поставить счетчик, который гарантированно покажет, что происходит включение/выключение
    Цитата Сообщение от swerder Посмотреть сообщение
    vooodooo22 сработает
    Спасибо большое!
    ps: на счет счетчика вместо лампы возьму на заметку

  2. #692

    Post

    Цитата Сообщение от vooodooo22 Посмотреть сообщение
    Программа должна позволить оператору по нажатию кнопки (зацепленной к DI) задавать нужные параметры в станке. (например: параметры под №1, №2,... , №n ), причем на выходе (DQ) лампочка будет оповещать о номере выбранных параметров.

    Пример:
    • одно нажатие - 1 мигание - параметры под №1,
    • еще одно нажатие - 2 мигания - параметры под №2, ... ,
    • еще одно нажатие - n миганий - параметры под №n

    После n-го нажатия следующее нажатие приведет к
    - 1 мигание - параметры под №1 (т.е. замкнутый цикл)
    Выкладываю программку, точнее что получилось, вдруг кому пригодится (мало ли ). Работает как часы, но громоздкая. Сброс счетчиков организован. Рассчитана на 8 программ станка. В коде надо будет дополнительно создать массив для перем.COUNTER, в зависимости от которого будет вызываться тот или иной индекс массива с нужными параметрами программы для станка.

    мысли в слух: Может если разбить на подпрограммы или действия будет казаться менее громоздкой

    ps. Для новичков пример самое то

  3. #693
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Для новичков пример самое то
    С их-то неокрепшей психикой да на такую оргию?

    Тут сам человеко-машинный интерфейс можно сделать иначе: держим кнопку и ждём, пока лампочка мигнёт нужное число раз. И программа при этом будет вообще тривиальной:



    Тут пока держим кнопку, номер программы не меняется, но лампочка мигает. Когда отпускаем кнопку, номер программы приравнивается к числу срабатываний лампочки. Если номер больше допустимого, он игнорируется, а лампочка горит постоянно пока не отпустишь кнопку. Период мигания и допустимое число программ можно брать любые.

  4. #694

    Thumbs up

    Цитата Сообщение от Yegor Посмотреть сообщение
    С их-то неокрепшей психикой да на такую оргию?
    стыдно чутка конеш было выкладывать (но все же вдруг кому пригодилось бы, пусть и маловероятно ). Алгоритм мне надо научится составлять перед созданием программы, да и много чего еще
    Цитата Сообщение от Yegor Посмотреть сообщение
    Тут сам человеко-машинный интерфейс можно сделать иначе: держим кнопку и ждём, пока лампочка мигнёт нужное число раз. И программа при этом будет вообще тривиальной
    четко! снимаю шляпу

    Спасибо за пример!

  5. #695
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Ну и на десерт упрощённый вариант того подхода — нажимать, а потом смотреть на лампочку:



    Между нажатиями кнопки должно быть не более timeout времени. Превышение таймаута считается завершением ввода. Контрольное мигание лампой начинается по истечении этого таймаута.

  6. #696
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Я это учитывал. Для INT пределом получается не 16 часов, а всего лишь 32,7 секунды. Но на практике при таком способе задания вряд ли кому-то понадобится больше 10 программ, и время одной вспышки лампочки более 1 секунды для контрольного счёта. 10*1000=10000 — вполне укладывается в INT. Если требуется в разы больше, то можно перевести всё на DWORD, но вообще тогда уж лучше пересмотреть способ выбора программы.

  7. #697

    По умолчанию

    Подкажите пожалуйста в чем может быть причина потери связи ИП320 с ПЛК 100??? Использую кабель КС2 и сетевые параметры проверял!

  8. #698

    Question ШИМ

    Всем доброго времени суток.

    Подскажите пожалуйста, есть программный ШИМ:

    VAR
    t_pwm: TON; (*таймер ШИМ*)
    out: BOOL; (*выход ШИМ*)
    t_power: TIME; (*переменная ШИМ*)
    power: REAL; (*выходная мощность в диапазоне 0..1*)
    END_VAR

    (*запускаем таймер ШИМ*)
    t_pwm(IN:=TRUE,PT:=t#10ms);
    IF t_pwm.Q THEN t_pwm(IN:=FALSE); END_IF

    (*преобразуем мощность во время*)
    t_power := INT_TO_TIME(REAL_TO_INT(10*power));

    (*управляем выходом*)
    IF t_power > t_pwm.ET THEN out := TRUE; ELSE OUT := FALSE; END_IF

    Период 10 мс, скважность (power) будет меняться по ходу программы.
    Выше описанный программный ШИМ ограничен возможным количеством величин скважности, т.к. происходит округление переменной t_power. Например power:=0.25, тогда t_power := INT_TO_TIME(REAL_TO_INT(10*0.25)); в итоге 2.5 мс округляются до 3 мс. В итоге t_power принимает значение 3ms при скважности 0.25, и t_power может иметь только 11 значений от 0 до 10.

    Вопрос: существует ли возможность задавать переменным значения меньше 1 мс?

    Может кто-нибудь поделиться другим способом организации ШИМ, не страдающим таким ограничением как выше описанный?

    С другой стороны:
    Заказали ПЛК110-32 с Fast DO1-DO4, есть возможность их замены на PWM-модуль. Но пока честно не представляю как этот модуль себя ведет и работает. В РП скудная инфармация

  9. #699

    По умолчанию

    Давайте разбираться.
    Первое, что нужно принять, как факт, что тип данных Time представляет время в миллисекундах, то есть все ваши манипуляции с функциями и ФБ, которые работают с данными типа Time обречены на дискретность в 1 мс.
    Второе. Основательно подумайте, действительно ли вам нужен период ШИМ в 10 мс, зачем так мало, неужели у вас есть столь малоэнерционные исполнительные элементы, которыми нужно управлять такими короткими импульсами?
    Третье. Несколько сумбурно изложу свою мысль, но из фразы "Заказали ПЛК110-32 с Fast DO1-DO4, есть возможность их замены на PWM-модуль" мне не совсем понятно, правильно ли вы понимаете суть замены на PWM модуль. Это делается непосредственно в Codesys, в конфигурации контроллера, и соответственно это достаточно подробно описано в документе, который касается конфигурирования, а не программирования, то есть OWEN PLC Configuration, который можно скачать или найти на диске. Я бы пошел по этому пути, так как настройка займет 1 мин, и все будет работать в фоновом режиме.
    И если обратите внимание, то там дискретность другая (в сотнях микросекунд)

  10. #700

    Post

    Цитата Сообщение от YuriBel Посмотреть сообщение
    ...это достаточно подробно описано в документе, который касается конфигурирования, а не программирования, то есть OWEN PLC Configuration...
    owen_plc-configuration: "Модуль ШИМ является подчиненным подмодулем
    модуля дискретного выхода." В ПЛК110-32 модуль ШИМ является замещающим...

    РП: "Модуль ШИМ является замещающим для модуля быстрых дискретных выходов."

    что в owen_plc-configuration, что в РП принцип работы не описан
    Есть пример с использованием ПИД-регулятора, но и принцип ПИД ригулятора не совсем понятен, а там и дебри =)

    ...чтобы понять принцип ШИМ модуля остается только эксперементировать, когда придет ПЛК110

    ps. Спасибо большо за ответы, буду дальше копать

Страница 70 из 1050 ПерваяПервая ... 2060686970717280120170570 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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