Как отключать платы не на взвешенном состоянии
Как отключать платы не на взвешенном состоянии
Всю голову сломал, но так ничего и не придумал....Пример....есть проект с тремя платами, на первой она постоянно включена, счётчик считающий нечто вперёд или назад. У счётчика включено при достижении верхнего предела счёта вперёд остановиться и выдать единицу на соответствующий выход, и точно также при счёте назад. Тоесть имеем переменную в виде единицы при достижении верхнего предела и имеем переменную в виде единицы при счёте назад.
Вторая плата, включается как раз при том когда переменная при счёте вперёд стала единицей, в условиях платы поставил ЕСЛИ ПЕРЕМЕННАЯ "БОЛЬШЕ" РАВНА TRUE, ТО ВЫПОЛНЯТЬ
Также на третьей плате, ЕСЛИ ПЕРЕМЕННАЯ "МЕНЬШЕ" РАВНА TRUE, ТО ВЫПОЛНЯТЬ
То есть идея понятна? При достижении верхнего предела счётчика первой платы, работает вторая плата, а при достижении нижнего предела работает третья плата, а вторая выключена.
Всё бы ничего, но платы 2 и 3 могут выключится в неопределённом состоянии, например поместил на эти платы 2 и 3 по моргающему светодиоду, при выключении платы он может остаться во включённом состоянии, а может и в выключенном, смотря когда выключилась плата, пока он горел или пока он был погасший....
Потом ради эксперимента поставил дисплей один на плату 2 и написал что типа РАБОТАЕТ ПЛАТА 2....и другой дисплей на плату 3 и на нём вывел надпись РАБОТАЕТ ПЛАТА ТРИ....
В итоге билиберда, строчки РАБОТАЕТ ПЛАТА 2 и РАБОТАЕТ ПЛАТА ТРИ налезают друг на друга.
Как реализовать мою затею ? Есть какие то решения?
Вторая плата, включается как раз при том когда переменная при счёте вперёд стала единицей, в условиях платы поставил ЕСЛИ ПЕРЕМЕННАЯ "БОЛЬШЕ" РАВНА TRUE, ТО ВЫПОЛНЯТЬ
Также на третьей плате, ЕСЛИ ПЕРЕМЕННАЯ "МЕНЬШЕ" РАВНА TRUE, ТО ВЫПОЛНЯТЬ
То есть идея понятна? При достижении верхнего предела счётчика первой платы, работает вторая плата, а при достижении нижнего предела работает третья плата, а вторая выключена.
Всё бы ничего, но платы 2 и 3 могут выключится в неопределённом состоянии, например поместил на эти платы 2 и 3 по моргающему светодиоду, при выключении платы он может остаться во включённом состоянии, а может и в выключенном, смотря когда выключилась плата, пока он горел или пока он был погасший....
Потом ради эксперимента поставил дисплей один на плату 2 и написал что типа РАБОТАЕТ ПЛАТА 2....и другой дисплей на плату 3 и на нём вывел надпись РАБОТАЕТ ПЛАТА ТРИ....
В итоге билиберда, строчки РАБОТАЕТ ПЛАТА 2 и РАБОТАЕТ ПЛАТА ТРИ налезают друг на друга.
Как реализовать мою затею ? Есть какие то решения?
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Как отключать платы не на взвешенном состоянии
Использую переменные с разрешением записи.
Данные/состояние используемые в платах по условию (если они могут понадобятся в других платах), записываю через "посредника". Всегда можно перезаписать.
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Как отключать платы не на взвешенном состоянии
[ref]Ingwar[/ref],
а как это можно тут применить ?
а как это можно тут применить ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Как отключать платы не на взвешенном состоянии
[ref]Alex1968[/ref], можно так сделать[spoiler]
[/spoiler]У вас нет необходимых прав для просмотра вложений в этом сообщении.
Как отключать платы не на взвешенном состоянии
для чего мне фейковые два лишних светодиода ? Мне нужно чтоб платы корректно отрабатывали до выключения....А если вместо светодиодов будут вентили открывающие воду или газ? То при после того как переменная БОЛЬШЕ или переменная МЕНЬШЕ СТАНЕТ falce вентили останутся в непонятном состоянии, полуоткрытом или полузакрытом.dsfbuy писал(а): 31 авг 2020, 21:14 [ref]Alex1968[/ref], можно так сделать[spoiler]Без имени1.png[/spoiler]
Как отключать платы не на взвешенном состоянии
Да, скорей всего это так и есть. И как это решить даже не представляюav писал(а): 31 авг 2020, 21:41Скорее всего билеберда получается из за использования генераторов для светодиодов. Когда срабатывает условие на отключение (любое хоть для второй хоть для третей платы) она уже не выполняется и генератор который был уже запущен условием на запуск был в положении на выходе "высокое", то есть 1. И теперь этот сигнал будет висеть до следующего запуска платы по условию. Вот как то так это работает. Вариант создавать доп.плату для контроля и управления отключения плат по условию.Alex1968 писал(а): 31 авг 2020, 18:05 Вторая плата, включается как раз при том когда переменная при счёте вперёд стала единицей, в условиях платы поставил ЕСЛИ ПЕРЕМЕННАЯ "БОЛЬШЕ" РАВНА TRUE, ТО ВЫПОЛНЯТЬ
Также на третьей плате, ЕСЛИ ПЕРЕМЕННАЯ "МЕНЬШЕ" РАВНА TRUE, ТО ВЫПОЛНЯТЬ
Отправлено спустя 9 минут 39 секунд:
Такая же ситуация и с дисплеями. Допустим плата 2 выполняется на дисплей выводится текст. Далее плата отключается (не выполняется), но сигнал разрешающий вывод текста на дисплей никуда не делся он так же присутствует на входе En. Поэтому при запуске третей платы дисплей уже выводит в те же координаты другой текст который налегает на предидущий текст.
Отправлено спустя 2 минуты 36 секунд:
По этому и нужно использовать алгоритм который при отключении платы по условию сначала отключить генератор, дисплей или другой алгоритм, а уже потом отключать платы.

Как отключать платы не на взвешенном состоянии
по три ПЗУ с записанными звуковыми семплами. Выходит так что отключившись, плата зависнет в промежуточном состоянии до следующего включения, а значит семпл проиграет не до конца, а при следующем включении будет проигрываться с середины или где он там остановился (((av писал(а): 31 авг 2020, 21:52 [ref]Alex1968[/ref], все теми же переменными. Что будет у вас на управляемых платах ? Эта инфа нужна для определения алгоритма управления.
Как отключать платы не на взвешенном состоянии
выходит замкнутый круг....Этими платами 2 и 3 управляет уже первая плата с переменными БОЛЬШЕ и МЕНЬШЕ, как же мне на эти переменные повлиять, если они сами являются упраляющими?av писал(а): 31 авг 2020, 22:00так и есть. Нужно создать алгоритм который при выключении платы доиграет мелодию или тупо выключит проигрывание, а уже потом отключать плату (что то типа обратной связи с выключаемыми платами).Alex1968 писал(а): 31 авг 2020, 21:56 Выходит так что отключившись, плата зависнет в промежуточном состоянии до следующего включения, а значит семпл проиграет не до конца, а при следующем включении будет проигрываться с середины или где он там остановился (((
Как отключать платы не на взвешенном состоянии
а как работает в плате функция ВЫПОЛНЯТЬ В ЦИКЛЕ ПОКА....ПЕРЕМЕННАЯ ПО УСЛОВИЮ.... ?av писал(а): 31 авг 2020, 22:14Так устроено выполнение по условию и никуда не денешься. Выполнение кода останавливается(не выполняется), но переменные и константы связанные с кодом этой платы не обнуляются и не удаляются они остаются в памяти и используются при дальнейшем запуске платы. Это как с счетчиком который считает до его остановки. Остановили и в нужное вам время включили опять.Alex1968 писал(а): 31 авг 2020, 22:06 выходит замкнутый круг....Этими платами 2 и 3 управляет уже первая плата с переменными БОЛЬШЕ и МЕНЬШЕ, как же мне на эти переменные повлиять, если они сами являются упраляющими?
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Как отключать платы не на взвешенном состоянии
Alex1968 писал(а): 31 авг 2020, 21:25 вентили останутся в непонятном состоянии, полуоткрытом или полузакрытом.
В том случае придется вводить обратную связь, добавив ее в условие отключения платы. На крайний случай это может быть временная задержка, период которой гарантированно закончит выполняемое действие.
Отправлено спустя 45 минут 20 секунд:
На скорую засыпающую руку... Не проверял, возможно бред.
Предполагалось - не включится одна, пока 1 на выходе другой и выключится она только если на ее выходе 0.
Сорян, уже сплю

[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
-
- Капитан
- Сообщения: 708
- Зарегистрирован: 06 фев 2016, 11:01
- Откуда: Ярославль
- Имя: Сергей
Как отключать платы не на взвешенном состоянии
Пока не очень
Так Вы пропишите, в каких состояниях они должны находитьсяAlex1968 писал(а): 31 авг 2020, 18:05 Всё бы ничего, но платы 2 и 3 могут выключится в неопределённом состоянии, например поместил на эти платы 2 и 3 по моргающему светодиоду, при выключении платы он может остаться во включённом состоянии, а может и в выключенном, смотря когда выключилась плата, пока он горел или пока он был погасший....
например
[spoiler] [/spoiler]
Отправлено спустя 8 минут 26 секунд:
Alex1968 писал(а): 31 авг 2020, 21:56 по три ПЗУ с записанными звуковыми семплами. Выходит так что отключившись, плата зависнет в промежуточном состоянии до следующего включения, а значит семпл проиграет не до конца, а при следующем включении будет проигрываться с середины или где он там остановился (((
Вернуться к началу
Зная временую длинну сэмпла при прогрывании включаем таймер задержки, который отсрочивает изменение переменнойav писал(а): 31 авг 2020, 22:00 так и есть. Нужно создать алгоритм который при выключении платы доиграет мелодию или тупо выключит проигрывание, а уже потом отключать плату (что то типа обратной связи с выключаемыми платами).
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Как отключать платы не на взвешенном состоянии
можете это то что на картинке проектом flprog выложить ? Чтоб посмотреть параметры и настройки ?SSSergeich писал(а): 01 сен 2020, 00:15Пока не оченьТак Вы пропишите, в каких состояниях они должны находитьсяAlex1968 писал(а): 31 авг 2020, 18:05 Всё бы ничего, но платы 2 и 3 могут выключится в неопределённом состоянии, например поместил на эти платы 2 и 3 по моргающему светодиоду, при выключении платы он может остаться во включённом состоянии, а может и в выключенном, смотря когда выключилась плата, пока он горел или пока он был погасший....
например
[spoiler]al2.PNG[/spoiler]
-
- Капитан
- Сообщения: 708
- Зарегистрирован: 06 фев 2016, 11:01
- Откуда: Ярославль
- Имя: Сергей
Как отключать платы не на взвешенном состоянии
[ref]Alex1968[/ref], да это ж как просто попытка понять..
Отправлено спустя 1 минуту 24 секунды:
без настроек генераторов и счетчиков
без настроек генераторов и счетчиков
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Как отключать платы не на взвешенном состоянии
так проект наполовину в голове пока. Пока тренируюсь на кошках, тьфу то есть на простейших генераторах и дисплеях на платах 2 и 3....Первая плата тупо считает вперёд или назад, и при достижении указанных пределов, что вниз что вверх, останавливает счёт и выдаёт единицу на выход >L или <L....вот этими сигналами включается или плата 2 или плата 3. Но сигналы >L или <L могут в любой момент поменяться или переключиться..И платы остаются в том виде в каком были в момент переключения сигналов >L или <Lav писал(а): 01 сен 2020, 10:12 [ref]Alex1968[/ref], есть ли в блоках проигрывающих семплы выход окончания проигрывания семпла ? Если есть тогда проще будет контролить отключение плат по условию. И если честно надоело гадать на кофейной гуще. Создайте проект с теми блоками которые будут участвовать в проекте, а уже исходя из проекта будет видно как лучше организовать алгоритм отключения плат всем помогающим форумчанам.
Для примера...На плате 2 дисплей и на нём на первой строке надпись РАБОТАЕТ ПЛАТА №2, которая выводится при единице на выходе >L счётчика который на первой плате и когда плата 2 включается по тому условию.
На плате 3 тот же дисплей, и на нём на первой строке надпись РАБОТАЕТ ПЛАТА №3, которая выводится при единице на выходе <L счётчика который на первой плате и когда плата 3 включается по тому условию.
В итоге что получается на первой плате если стало больше то появился сигнал на выходе >L он включил плату №2 и она на дисплее надпись говорит что типа я включена. На первой плате на счётчике стало меньше то появился сигнал <L который включил плату №3 и на дисплее надпись что работает плата №3....У меня даже такой простейший пример пока не получается реализовать. Обе надписи смешиваются на дисплее на первой строке.
Очевидно, что пока работает платы 2 и 3 должны работать поочерёдно. Если включилась плата 2 то она на должна давать возможность в это время работать плате 3...и наоборот.
Если это получится, то и с семплами решу проблему.
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Как отключать платы не на взвешенном состоянии
Т.е. так не работает?
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Как отключать платы не на взвешенном состоянии
Нет, так не работает, после переключения между платами 2 и 3 на дисплее остаётся надпись от предыдущей включённой платы, короче каша получается. И да, на первой плате кроме счётчика ничего больше быть не должно.
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Как отключать платы не на взвешенном состоянии
Т. е. Вы не попробовали?Alex1968 писал(а): 01 сен 2020, 12:48 И да, на первой плате кроме счётчика ничего больше быть не должно.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Как отключать платы не на взвешенном состоянии
Alex1968 писал(а): 31 авг 2020, 18:05
Всё бы ничего, но платы 2 и 3 могут выключится в неопределённом состоянии, например поместил на эти платы 2 и 3 по моргающему светодиоду, при выключении платы он может остаться во включённом состоянии, а может и в выключенном, смотря когда выключилась плата, пока он горел или пока он был погасший....
Потом ради эксперимента поставил дисплей один на плату 2 и написал что типа РАБОТАЕТ ПЛАТА 2....и другой дисплей на плату 3 и на нём вывел надпись РАБОТАЕТ ПЛАТА ТРИ....
В итоге билиберда, строчки РАБОТАЕТ ПЛАТА 2 и РАБОТАЕТ ПЛАТА ТРИ налезают друг на друга.
-
- Капитан
- Сообщения: 708
- Зарегистрирован: 06 фев 2016, 11:01
- Откуда: Ярославль
- Имя: Сергей
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Как отключать платы не на взвешенном состоянии
Вот специально заморочился и собрал макетку. Вместо счетчика использовал показания с аналогового входа. Все работает штатно - строки на дисплее меняются не накладываясь друг на друга. Если есть сомнения, скину видео.
Отправлено спустя 4 минуты 3 секунды:
Складывается впечатления, что ТС выслушивает предложения, а потом
Отправлено спустя 4 минуты 3 секунды:
Складывается впечатления, что ТС выслушивает предложения, а потом
"прокручивая" в голове, дает заключение...
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость