Страница 1 из 4 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 32

Тема: А почему бы не сделать стандартный компонент пакетного переключателя?

  1. #1

    По умолчанию А почему бы не сделать стандартный компонент пакетного переключателя?

    Я частенько задавался вопросом почему создатели сред программирования не сделали самый очевидный и востребованный компонент. Во всех старых станках имелся пакетный переключатель который активировал огромное количество контактов при переключении. И казалось бы что такие вещи как плк и программируемые реле несут огромное наследие перехода от релейных схем. Но почему то самый распространенный компонент никто не удосужился сделать а ведь он вообще драматически упрощает программирование контроллеров и в большинстве случаев может заменить целые схемы.
    Что он должен собой представлять?
    1)Бинарный : есть один вход и целая куча выходов.
    И в этом блоке таблица состояний всех выходов при 1 или 0 на входе. Например 10 выходов, какие то должны быть включены при нуле какие то должны быть включены при единице . Там же может быть и набор активируемых констант при каждом состоянии. Например пришла единица на вход это значит что выключаются одни выходы другие включаются и также по таблице меняются константы.
    2) Многозначный: На вход может быть подана цифра например от 1 до 10 и в компоненте расположена таблица с 10 вариантами выходных сигналов для каждого состояния на 10 выходов. (именно двухмерная таблица)
    3) Тоже что и в предыдущих вариантах но в таблице ещё и добавлены значения таймеров для каждого выхода. Потому что может быть что то нельзя включать или выключать сразу, нужно подождать согласно технологическому процессу.

  2. #2

    По умолчанию

    То есть мы получаем программу как набор "кадров" состояния с огромным количеством подключаемых вариантов состояний и констант и задержек. Это во многих случаях гигантское упрощение программы. Когда то, сто лет назад , такое устройство, которое хранит огромный списков сложных состояний, это была мечта механиков и электриков. А теперь почему то, когда с точки зрения программирования это стало банально просто, никто так и не сделал такой компонент.

  3. #3

    По умолчанию

    Есть и другой вариант пакетного переключения - последовательный. То есть при активации входа активируется цепочка каких то действий с временными интервалами. Упрощенно говоря это однотональная музыка. В этом случае мы имеем таблицу для программирования: интервал работы+значение уровня, интервал работы +значение уровня.... и так раз 10. Если значение уровня равно нулю то это пустая пауза если значение равно 1 или какому то значению то это работа.
    Я понимаю что по началу все это требует некоторого переосмысления и привыкания. Но потом когда мозги широкого круга инженеров привыкнут окажется что есть огромное количесвто идей которые можно сделать совершенно другими способами, не так как это делали ранее.
    А теперь представьте что можно соединить оба варианта пакетных переключателей: параллельный и последовательный. Да соглашучь что такая таблица состояний будет выглядетьочень сильно сложно, но она при всей сложности остается элементарно понятной во всех своих деталях и вообще в целом концептуально.
    Грубо говоря каждая ячейка состояния если ее открыть имеет последовательный алгоритм работы....

  4. #4
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    13,510

    По умолчанию

    ST вам в руки.
    однажды по просьбе был сделан макрос, аналогичный из Zelio (Boolean), но там многа входов (до 5) и один выход и под любую комбинацию на входах по таблице формируем выход.
    Замечу, что он не прижился тут у народа...

  5. #5
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    2,161

    По умолчанию

    А что вам мешает самому реализовать данные компоненты и поделится с сообществом? Среда разработки позволяет

  6. #6

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    ST вам в руки.
    однажды по просьбе был сделан макрос, аналогичный из Zelio (Boolean), но там многа входов (до 5) и один выход и под любую комбинацию на входах по таблице формируем выход.
    Замечу, что он не прижился тут у народа...
    На ст это делается в 1 строчку для каждого состояния, на лд тоже в 1 типа строчку. Не понятна претензия тс'а. А стандартный компонент потребует его настройки, и т.д., и т.п.

  7. #7

    По умолчанию

    Цитата Сообщение от Dimensy Посмотреть сообщение
    А что вам мешает самому реализовать данные компоненты и поделится с сообществом? Среда разработки позволяет
    Да не хочет он ничего делать, только трепаться умеет.
    Последний раз редактировалось kondor3000; 03.08.2026 в 10:33.

  8. #8

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Да не хочет он ничего делать, только трепать языком умеет.
    Можно, а зачем! Вот тут эта фраза актуальна на 146%. Тем более пакетник может быть n- позиционным. Тут как то один пользователь требовал троичную логику, а тут какая нужна будет для входа?

  9. #9

    По умолчанию

    Цитата Сообщение от Peresvet Посмотреть сообщение
    Есть и другой вариант пакетного переключения - последовательный. То есть при активации входа активируется цепочка каких то действий с временными интервалами. Упрощенно говоря это однотональная музыка. В этом случае мы имеем таблицу для программирования: интервал работы+значение уровня, интервал работы +значение уровня.... и так раз 10. Если значение уровня равно нулю то это пустая пауза если значение равно 1 или какому то значению то это работа.
    Я понимаю что по началу все это требует некоторого переосмысления и привыкания. Но потом когда мозги широкого круга инженеров привыкнут окажется что есть огромное количесвто идей которые можно сделать совершенно другими способами, не так как это делали ранее.
    А теперь представьте что можно соединить оба варианта пакетных переключателей: параллельный и последовательный. Да соглашучь что такая таблица состояний будет выглядетьочень сильно сложно, но она при всей сложности остается элементарно понятной во всех своих деталях и вообще в целом концептуально.
    Грубо говоря каждая ячейка состояния если ее открыть имеет последовательный алгоритм работы....
    Всё давно придумано - поищите "Реализация конечных автоматов на ST"

  10. #10

    По умолчанию

    Из-за этого что-ли митинг?
    Код:
    function_block CustomBlock
        
        var_input
            I1, I2, I3 : bool;
        end_var
        
        var_output 
            Q1, Q2, Q3 : bool;
        end_var
        
        if not I1 and not I2 and not I3 then
            Q1 := false; Q2 := false; Q3 := false;
        elsif I1 and not I2 and not I3 then
            Q1 := false; Q2 := false; Q3 := false;
        elsif not I1 and I2 and not I3 then
            Q1 := false; Q2 := false; Q3 := false;
        elsif I1 and I2 and not I3 then
            Q1 := false; Q2 := false; Q3 := false;
        elsif not I1 and not I2 and I3 then
            Q1 := false; Q2 := false; Q3 := false;
        elsif I1 and not I2 and I3 then
            Q1 := false; Q2 := false; Q3 := false;
        elsif not I1 and I2 and I3 then
            Q1 := false; Q2 := false; Q3 := false;
        else
            Q1 := false; Q2 := false; Q3 := false;
        end_if 
    end_function_block
    Код:
    function_block CustomElement
        
        var_input
            I1, I2, I3 : bool;
        end_var
        
        var_output 
            Q1, Q2, Q3 : bool;
        end_var
        
        var 
            dim : array [0..7] of udint := [ 0, 0, 0, 0, 0, 0, 0, 0 ] ;
            i, q : udint;
        end_var
    
        i.0 := I1; i.1 := I2; i.2 := I3;
        q := dim[i];
        Q1 := q.0; Q2 := q.1; Q3 := q.2;
    
    end_function_block
    Последний раз редактировалось EFrol; 03.08.2026 в 10:59.

Страница 1 из 4 123 ... ПоследняяПоследняя

Похожие темы

  1. Стандартный ПИД
    от VeeTa79 в разделе ПЛК2хх
    Ответов: 8
    Последнее сообщение: 07.11.2023, 15:38
  2. Сброс переключателя в режиме инверсии из вне
    от ivan.v в разделе Панели оператора (HMI)
    Ответов: 4
    Последнее сообщение: 10.10.2023, 23:04
  3. Алгоритм для 3-хпозиционного переключателя
    от mafckz в разделе Среда программирования OWEN Logic
    Ответов: 13
    Последнее сообщение: 05.02.2020, 21:23
  4. Ответов: 25
    Последнее сообщение: 06.09.2012, 19:16
  5. Принцип работы переключателя с индикацией
    от Wanted в разделе Панели оператора (HMI)
    Ответов: 1
    Последнее сообщение: 13.01.2011, 15:55

Ваши права

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