Страница 2 из 5 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 50

Тема: Помощь в реализации

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от TaPX Посмотреть сообщение
    Как работает связь outX - outs? И можно ли тут будет прокидывать несколько входов на один выход?
    Несколько входов на один выход:
    Owen4_1.jpg

    где OR_PUT макрос:
    Owen4_2.jpg

    out1, ... (по количеству входов) выводим на экран для редактирования (диапазон значений от 0 до 6 (по количеству выходов)
    0 в переменной означает нет привязки к выходу
    если > 0, то будет в outs будет выставлен в 1 соответствующий бит
    этот бит выдается на соответствующий выход

  2. #2

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    у Вас есть реализация такого алгоритма в какой нибудь другой среде разработки? Выложите если есть, чтоб понимать для чего это все
    Есть только ТЗ: Есть 6 цистерн, у каждой свое УЗА(заземление). И есть пять насосов. Создание путей "цистерна - насос" происходит вручную задвижками, запуск насосов также происходит вручную. Задача - передать разрешение на запуск определенному насосу от одной-нескольких цистерн. То есть если УЗА на цистерне по какой-то причине пропадает - связь(разрешение на запуск) так же пропадает. В работе одновременно может быть несколько насосов. схема.png

  3. #3

    По умолчанию

    Цитата Сообщение от TaPX Посмотреть сообщение
    Извините за неправильные вводные, сам изначально неправильно понял задачу. На самом деле суть такая. На реле приходит шесть, скажем проводов. И есть пять выходов. Нужно произвольно передавать сигнал с любого из шести входов на любой из пяти выходов, с запоминанием пары. И с возможностью эту пару сбросить.
    Вы опишите свой тех. процесс используя именно те объекты, что в нём применяются (управляющие человеки, насосы, трубы, ёмкости) и ещё лучше с примерами конкретных ситуаций.
    Использование терминов "провода", "входы/выходы" и "пары" только всё усложняет

  4. #4

    По умолчанию

    На экране 6 строчек, соответствующих насосам
    В каждой строке отмечаются ёмкости от 1 до 6, к которым этот насос подключен, например:
    Н1: 1 0 3 0 0 0
    Н2: 0 2 0 4 0 0
    ...
    ...
    (0 - насос не подключен к этой ёмкости)

    При пропадании УЗА ёмкости качающие из неё насосы блокируются (выход отключается):

    изображение_2023-03-03_145624046.png
    (картинка для насоса 1)

  5. #5

    По умолчанию

    А если без экрана, с кнопками на щите?

  6. #6

    По умолчанию

    Цитата Сообщение от TaPX Посмотреть сообщение
    А если без экрана, с кнопками на щите?
    Для каждого насоса - по 6 кнопок(переключателей), 6 х 6 = 36

  7. #7

    По умолчанию

    Это сейчас у меня основная проблема: Если делать для каждой уза (это в моем говнокоде) свои шесть кнопок выбора насоса - получится очень много кнопок ). Вот как бы научить шесть кнопок дружить с определенной уза... )

  8. #8

    По умолчанию

    Цитата Сообщение от TaPX Посмотреть сообщение
    Это сейчас у меня основная проблема: Если делать для каждой уза (это в моем говнокоде) свои шесть кнопок выбора насоса - получится очень много кнопок ). Вот как бы научить шесть кнопок дружить с определенной уза... )
    Никак. хотите иметь все варианты подключений - получИте 36 переключателей

    Вариант функции на ST
    Код:
    function PumpBlock: bool; 
        var_input
            Allow : bool; // разрешить работу насоса глобально (1 - разрешено)
            USA1 : bool; //состояние УЗА 1 ёмкости (1 - ок)
            SEL1 : bool; //подключение насоса к 1 ёмкосни (0 - подключен)
            USA2 : bool; 
            SEL2 : bool; 
            USA3 : bool; 
            SEL3 : bool; 
            USA4 : bool; 
            SEL4 : bool; 
            USA5 : bool; 
            SEL5 : bool; 
            USA6 : bool; 
            SEL6 : bool; 
     end_var
        
        
    PumpBlock :=     Allow AND
                    (USA1 OR SEL1) AND 
                    (USA2 OR SEL2) AND 
                    (USA3 OR SEL3) AND 
                    (USA4 OR SEL4) AND 
                    (USA5 OR SEL5) AND 
                    (USA6 OR SEL6) AND
                    NOT(SEL1 AND SEL2 AND SEL3 AND SEL4 AND SEL5 AND SEL6) ;
        
    end_function

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

    По умолчанию

    Цитата Сообщение от TaPX Посмотреть сообщение
    А если без экрана, с кнопками на щите?
    Кнопками на щите - это использовать селекторные переключатели на 5 положений (если мы для емкости выбираем насос) или на 6 положений (если для насоса выбираем емкость). Но, есть ограничение - на горячую переключать будет нельзя

  10. #10

    По умолчанию

    Цитата Сообщение от Dimensy Посмотреть сообщение
    Кнопками на щите - это использовать селекторные переключатели на 5 положений (если мы для емкости выбираем насос) или на 6 положений (если для насоса выбираем емкость). Но, есть ограничение - на горячую переключать будет нельзя
    Интересное решение

Страница 2 из 5 ПерваяПервая 1234 ... ПоследняяПоследняя

Похожие темы

  1. Нужна помощь в реализации
    от WeSs в разделе Трёп (Курилка)
    Ответов: 0
    Последнее сообщение: 23.10.2018, 12:03
  2. Ответов: 17
    Последнее сообщение: 16.02.2015, 12:00
  3. Нужна помощь в реализации проекта
    от Alexandrovich в разделе Помощь Разработчикам
    Ответов: 2
    Последнее сообщение: 13.09.2011, 16:42
  4. пример реализации
    от kucherik в разделе Наши проекты
    Ответов: 3
    Последнее сообщение: 26.02.2009, 17:08
  5. пример реализации
    от kucherik в разделе Трёп (Курилка)
    Ответов: 3
    Последнее сообщение: 26.02.2009, 17:08

Ваши права

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