Страница 1 из 2

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 09:12}
Naladchik
Суть предложения в следующем, у блока пользователя добавить настройку, при активации которой у блока появляется вход En.
Таким образом можно будет вызывать обработку блока по команде. 
В итоге блоки обрабатываются только по необходимости, сокращается время работы программы, получаем возможность ветвления алгоритмов работы программы.

Добавлено (20.02.2016, 09:12)
---------------------------------------------
Ну и в догонку.
Данный вход можно было бы организовать таким образом, чтобы на него подавать не только булевое (0,1) значение но и любое числовое.
Но это можно сделать и подключением компаратора к этому входу.

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 10:46}
DWD
Блоки пользователя рисуются самим пользователем. Значит сам пользователь может предусмотреть необходимость установки входа разрешения.

К тому же, вход разрешения по логике работы - логический, то есть, двух уровневый (либо да, либо нет). Если предусмотреть отработку при подаче числовых сигналов разрешения, то это будет уже не столько вход разрешения блока, сколько вход компаратора для отработки каких-то его функций.
Опять же - прерогатива самого пользователя, создавшего блок.

Одним словом - не вижу смысла в том, что бы автор программы ещё и этим занималься...

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 11:11}
Naladchik
DWD писал(а):Значит сам пользователь может предусмотреть необходимость установки входа разрешения.
В данном случае Вы не правы, так как пользователь не может выбрать будет ли обрабатываться пользовательский блок в программе или нет. На данный момент, если блок помещен на плату то создается функция, в которой и происходит обработка данного блока и она вызывается в любом случае, т.е. всегда. Можно посмотреть код, создаваемый FlProg, там это видно.
Я же предлагаю организовать вызов функции обработки пользовательского блока только по необходимости.
Доработка мелочная, просто поместить вызов функции в конструкцию if (En)  {.вызов функции.}   а пользы будет много, в первую очередь сокращение времени работы программы, во вторую возможность выбора когда именно блоком обработать входные данные, в третью - возможность ветвления, т.е. когда и каким блоком обработать данные (тогда, когда данные одни а вариантов обработки несколько).

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 11:33}
DWD
Может и не прав, не программист...
Но с точки зрения схемотехники всё обстоит именно так, как уже сказал.

С точки зрения сокращения времени работы программы, вроде бы и есть смысл...
Но что это должен быть за блок, какую функцию он должен выполнять, что бы, с одной стороны - занимал львиную долю временнЫх ресурсов программы и, с другой - редко использовался?

Из собственного опыта могу сказать, что не смотря на строгую  последовательность выполнения всех операций в МК, результат работы программы выглядит так, будто все функции схемы отрабатываются одновременно.
Причина - в частоте, которая довольно высокая.

Или я опять не понимаю, что именно Вам нужно?

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 11:42}
Naladchik
DWD
DWD писал(а):что это должен быть за блок
любой блок, в котором есть несколько долгоиграющих таймеров таймеров.
DWD писал(а):Или я опять не понимаю, что именно Вам нужно?
Ну вроде как все описал.
DWD писал(а):... не программист.
я тоже, просто имеются кое какие отрывки из основ и не более.

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 11:45}
rw6cm
К блоку могут быть подключены, входа, выхода, порты, ...
При отключении блока как все это разруливать?

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 12:07}
Naladchik
rw6cm писал(а):При отключении блока ...
 Блок не отключается, просто выдавать данные он будет только при определенных условиях, в данном случае при подаче сигнала на вход En.
rw6cm писал(а):К блоку могут быть подключены, входа, выхода, порты ....   как все это разруливать?
А как сейчас разруливается работа блоков у которых он есть? Блок таймера или дисплея, датчик DS18x2x (вход разрешение опроса).
Точно так же.

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 12:26}
rw6cm
Naladchik писал(а):А как сейчас разруливается работа блоков у которых он есть? Блок таймера или дисплея, датчик DS18x2x (вход разрешение опроса).
Для этих элементов есть библиотеки в которых это предусмотрено.
А здесь пока не понятно как это будет выглядеть.
В общем идея сама то понятна, но вот ее реализация, в моем понимании, не совсем.

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 12:47}
Naladchik
Предлагаю прекратить прения и оставить данный вопрос до рассмотрения разработчиком.
В любом случае его слово будет последним.

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 12:54}
rw6cm
Naladchik писал(а):Предлагаю прекратить прения и оставить данный вопрос до рассмотрения разработчиком.
Ветка для того и открыта, чтобы обсуждать и ставить свои лайки. :)))

Вход En у блока пользователя.

Добавлено: 20.02.2016{, 13:03}
Naladchik
rw6cm писал(а):Ветка для того и открыта, чтобы обсуждать и ставить свои лайки. :)))
А меня аргументы уже закончились, добавлять нечего.  :)

Вот бы еще и те, кто знаком с СИ свое мнение сказали.

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 01:29}
Alex16
Naladchik писал(а):Вы не правы, так как пользователь не может выбрать будет ли обрабатываться пользовательский блок в программе или нет.
Naladchik писал(а):Блок не отключается, просто выдавать данные он будет только при определенных условиях, в данном случае при подаче сигнала на вход En.
 о чем спор? в качестве примера - этот блок именно так и работает

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 13:44}
Naladchik
Alex16 писал(а):о чем спор? в качестве примера - этот блок именно так и работает
согласен, но это блок на СИ, мне же нужен такой вход в пользовательском блоке на FBD

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 16:49}
Alex16
Naladchik писал(а):нужен
FlProg пока имеет ряд ограничений, обойти их можно на СИ

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 17:28}
Naladchik
Alex16 писал(а):... обойти их можно на СИ
Если бы мог и хотел на СИ тогда зачем мне FlProg?
Тут как раз все и упирается в весьма поверхностное знание (проще говоря незнание) СИ и отсутствии желания его осваивать на должном уровне.

Я вот одного не понимаю, вопрос в плане технической реализации копеечный (мнение не только мое, советовался с теми, кто в этом понимает), на выходе одни плюсы, а в обсуждении в основном "ой ой, нафиг надо, и так хорошо".
Ранее поднимался вопрос об "отключаемых" при работе платах, тогда пришли к выводу что целиком плату при работе отключать нельзя.
Я же как раз и предлагаю возможное и осуществимое решение этого вопроса.

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 18:07}
faramir777
Naladchik писал(а):тогда пришли к выводу что целиком плату при работе отключать нельзя.
Так в версии 10.4 реализовали отключение платы целиком

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 18:22}
Олег
Платы отключает, а пользовательские блоки, которые на этих платах, нет. Один раз искал ошибку, выключил все платы, в итоге более 700 строк кода в IDE и ошибка там-же Изображение .

Вход En у блока пользователя.

Добавлено: 21.02.2016{, 19:29}
Naladchik
faramir777 писал(а):Так в версии 10.4 реализовали отключение платы целиком
Читайте внимательнее, ключевое слово при работе. т.е. "на ходу", во время выполнения программы.
Олег писал(а):Платы отключает, а пользовательские блоки, которые на этих платах, нет.
На данный момент при отключении платы не появляется только та часть кода этой платы, которая помещается в секцию loop. А вот если на этой плате есть блоки, помещающие что либо в другие секции, то эти строки остаются висеть.
Косяк вообще то.

Вход En у блока пользователя.

Добавлено: 22.02.2016{, 06:25}
monitorrr
Думаю нужный вход En - я за его реализацию, если это возможно.

Вход En у блока пользователя.

Добавлено: 03.03.2016{, 16:34}
TVG
Незнаю что вы тут мутите но помоему это очень сложно будет реализовать и не вижу смысла по внедрению так как его можно запросто нарисовать самому используюя компораторы и логику и, не ,или и таблицу состояний до кучи все это просто и не кого СИ знать  не нужно