Горячая пятница, пытался показать таблицу истинности триггера и всё перепутал...
Вид для печати
Страница 91 - можно прочитать самостоятельно.
https://publ.lib.ru/ARCHIVES/M/''Mas...%E9.(1991).pdf
Реализуются элементарно!!! минимум и максимум двух чисел трудно сделать ? инверсию двоичного числа трудно сделать ?
Ну а для МихаилГл )) на основании примера от capzap и поста #122 от вашего покорного слуги,
даже с дрожащими руками (пятница же) этот сраный тригер реализуется тупо переносом кривопоказанной (защитившим диссертации видимо можно) таблицы
дальше, кому надоть - сами. С очевидными сокращениями. 0 или 3 могут уехать в else. Да и сокращать можно по всякомуКод:case X1 * 100 + X2 * 10 + Q of
000: сраный тригер := 0;
001: сраный тригер := 1;
002: сраный тригер := 2;
003: сраный тригер := 3;
010: сраный тригер := 3;
011: сраный тригер := 3;
012: сраный тригер := 3;
013: сраный тригер := 3;
020: сраный тригер := 3;
021: сраный тригер := 3;
022: сраный тригер := 3;
023: сраный тригер := 3;
...
300: сраный тригер := 0;
.. и дальше сраный тригер := 0;
end_case
Вышепредложенная книжка толстая. Мож там и этот вариант есть, не претендую. Но если нет - претендую))
Думаю что Geenerator её еще пока не дочитал, поэтому побирается на форуме.
--
Ой.
Тригер - странный
))
--
Я Вас по спине постучал. Не благодарите.
Если честно, вы создали столько кипиша из ничего. Перепутал таблицы, с кем не бывает.
Я привёл картинку четырёхзначного триггера, два объединённых логических элемента МАКС-НЕ. Операция НЕ - это побитовое отрицание 00 - 11 , 01 - 10
Конфигурацию для ПР200 так же привожу.
Завязывайте с вашей нейросетью.
Geenerator интересно, что вы курили, когда делали макрос на сравнении и SEL-е и делении.? притягивали за уши под таблицу ?
Вы используете очень повелительную интонацию при общении - сначала разберитесь. Я вам несколько раз сказал что всё просто, но вы продолжили требовать.
Четырёхзначная логика - это не моя разработка, я её просто применил в своих проектах для оптимизации кода.
Geenerator я больше с точки зрения совместимости с бинарной логикой.
Я уже писал, что открыл тему для обсуждения четырёхзначной логики и её применения в проектах, просто отношение должно быть чуточку более уважительным.
Берём ПИД регулятор и описываем его как логический элемент, то есть выделяем конкретные состояния, которые можем обрабатывать в алгоритмеЦитата:
для тех кто действительно пишет код, логика это не констатация фактов а переход по условию, все ваши идеи о движении к чему они побуждают,ПИД регулятор должен как то по иному себя вести, если он находится в некотором вами придуманном состоянии:
0- регулятор достиг заданной величины (СТОП)
1 - регулятор открывает задвижку
2- регулятор закрывает задвижку
3 - регулятор не может регулировать, авария
Есть элементарные ПИД регуляторы, а есть трёхконтурные, например для управления серводвигателем, где 1-й контур - ток, 2-й контур - скорость, 3-й положение.
Для программирования на верхнем уровне, как подсказал Cs-Cs, уже пришли к "Машине состояний" - и эффективно её используют развивая эту тему. Понято что можно и без неё!!!Цитата:
ну т.е. ничего нового, все продолжают работать как и раньше, без вашей темы новой диссертации о некой, почему то четырехзначной, логике
Я пришёл к "логической машине состояний" для оптимизации кода на языке ST, так как алгоритм работы станка с ЧПУ очень большой и по старинке очень муторно.
Ну и чем тут удивили? Типа вбросили подождали и как фокусник вынули какой-то изящный элемент и все ахнули?
Так не удивили
Ой не та таблица?- Так какую положили
Вложение 83464
про то и написано. А то что так вы же сами и напутали (потом поменяли) - не ко мне.
Да и коли её, другую, откуда-то взяли - то для того другого элемента вам выше и подгон. Как он там называется - без разницы.
И собсно, ну показали - и что? Комплекс - где?
Моя жена любит машину за то что в козырьке есть зеркальце. Но вот ТЭО - предложите переделать машину на без зеркальца, но с расходом 1л и она сама лично вырвет это зеркальце с хренам.
Я вам с банальным автоматом (который для автоматных задач пишется чуть медленнее чтения самих задач причем "ичнось логики" добавляется на ходу) ТЭО привёл. Эмуляция 4-ичной логики на 2-ичной машине банальной адресацией таблицы бьет эти "зеркальца" как бык овцу и по скорости и по компактности базовых элементов. Да и любой элемент набить можно чуть ли не копированием из экселя.
Оно может дать эффект только на 4-ной железной базе. Делайте. За свой счет.
Нет проектов в которых нельзя код оптимизировать. Разница только в "-ичности" в каждом конкретном случае.
Но даже оптимальный код не имеет значения. Имеет значение "итого"
Блин, снова раскусили!
Есть двоичная логика, которая описывает события 1- произошло, 0-не произошло. Есть логические элементы, триггеры, таймеры.. логические функции И, ИЛИ, НЕЦитата:
И собсно, ну показали - и что? Комплекс - где?
Есть четырёхзначная логика, которая описывает состояния 0, 1, 2, 3. Так же есть логические элементы триггеры, логические функции И, ИЛИ, НЕ, которые совместимы с двоичной логикой
"События" определяют в каком "состоянии" находится система. "Состояния" так же могут логически взаимодействовать по четырёхзначной логике - этот вопрос понятен ???
Не думаю. Я не имею ввиду "Дай всю документацию по проекту".
Я имею ввиду инжинерные выкладки вида "В проекте системы диспетчеризации применена 4хичная логика, всвязи с тем, что каждый объект имеет 4 состояния. Данные состояния описываются перечислением ENUM такого вида, логика обработки сделана так-то. Это позволило упростить написание программы и повысить производительность на хх%".
Если на этой логике был сделан проект, то у него должна быть документация и расчёты. Вот и выдерни нам обоснование применения логики. Не надо весь проект давать.
...или мне попроще выражаться, я не понял?
Немного промахнулись. В этой системе еще 2 уровня выше scada, это mes, а потом erp.
PS
Вложение 83470
Cs-Cs, у нас получается примерно следующий разговор
Geenerator: давай посадим картошку, вскопаем землю, положим удобрение, она взойдёт - мы её окучим, дождик её польёт, будем собирать жуков и вот он результат, свойская вкусная картошка
Cs-Cs: картошка продаётся в магазине и всего этого делать не нужно, скажи где находится магазин.
Я говорю про "логическую машину состояний", то есть состояния могут между собой взаимодействовать по определённым логическим правилам.
То, что разработан инструмент CASE, это говорит что сделан шаг в направлении "Машины состояний" на среднем уровне, почему бы не продолжить движение в этом направлении ???
ЭЭЭЭээээ, не.... тут не эдак, а вот так:
Geenerator: давай посадим картошку, я слышал что можно получить свойскую вкусную картошку!
Cs-Cs: Ты хоть в курсе как ее сажать и что для этого надо? У тебя хоть документы на участок, где сажать собрался есть? Показать их можешь, хоть доверенность рукописную?
Инструкция CASE впервые появилась в языке программирования ALGOL (ALGOrithmic Language), который был разработан в начале 1960-х годов. ALGOL 60, одна из самых известных версий этого языка, была выпущена в 1960 году и использовала конструкцию CASE, чтобы осуществлять выбор между несколькими вариантами в контроле потока выполнения программы.
Мда. Я всего лишь имел ввиду вот ЭТО сообщение на первой странице темы:
Если эта логика была использована - то почему не скопировать информацию из документации на проект?
Или документации нет, и стыдно в этом признаться?
Не надо аналогий про картошку. Это тупость и уровень гопников. Мы здесь состязаемся в словесности, софистике и прочих высоких дисциплинах, связанных со смыслом и значением слов.
Не надо приписывать мне того, чего я не имел ввиду.
Если переводить на картошку, то я имел ввиду вот что:
Генератор: "Хочу предложить вам обсудить инновационную технология выращивания картошки - ваккумные теплицы! Я её активно придумал и уже реализовал в своём проекте, и заработал на этом денег. Она может подойти и вам всем тоже, но вам надо всё изобрести самому - там нет ничего сложного! Берёте вакуумный насос, трубы из Леруа..."
Цс-Цс: "О! Так раз технология была освоена - покажи нам пожалуйста фотографии самих теплиц, чтобы понимать общий концепт или, если это тайна, - то расчёты выгоды от внедрения, которые у тебя в документации на теплицу должны быть".
Генератор: "Вы требуется невозможного! И издеваетесь ещё! Какие вам фотографии или расчёты? Сами всё делайте! Это просто, а заработаете миллиарды!"
Общественность: "Вау!! Миллиарды! Мы готовы инвестировать, но хотелось бы деталей - можно нам хотя бы выкопировку технико-экономического расчёта"?
Да, я местами управленец и технолог.
Я добиваюсь ХОТЯ БЫ примерно этого:
* Делали проект на булевой логике - экспертную систему "Диагностика+". Потратили 88 000 человеко-часов, провели пять рефакторингов кода, понадобилось 5 рабочих мест программистов (включая налоги, запрплаты, оплату электронергии за компьютеры, вентиляции, кондиционирования). Это встало в 500 000 рублей.
Скорость работы системы была - 8 000 заявок в минуту, объём базы - 300 Gb. Заработали 600 000 рублей, прибыль = 100 000 рублей.
* Перевели проект на 4хичную логику. Сделали один рефакторинг кода, написали свой API, понадобилось 2 программиста, это встало в сумму 200 000 рублей.
Скорость работы системы увеличилась до 32 000 заявок в минуту, объём базы снизился до 90 Gb. Заработали 2 000 000 рублей, прибыль = 1 800 000 рублей.
Вот что я хочу. ХОТЯ БЫ. Это даже не "Покажите, как у вас сделано, дайте весь исходный код".
Это то, без чего все идеи ЛОЖАТСЯ на полку - ПРИМЕНИМОСТЬ
Хорошо, буду рекламировать родную систему Диагностика+
Нами был разработан язык представления правил продукционной экспертной системы Z+ и способ представления нечётких знаний в диагностической экспертной системе с помощью коэффициента доверия к значению переменной с использованием четырёхзначной логики. Реализован алгоритм подбора и выполнения правил и способы вычисления коэффициентов доверия к значениям переменных.
На данный момент я решаю немного другую задачу с использованием четырёхзначной логики
Ну вот наконец-то есть информация! И вот зачем было крыжиться и 17 страниц темы строить из себя непойми кого?
Тут и PDF почитать интересно, и кое-какие замечания по UI/UX есть.
1. Бросилось в глаза на рисунке 3.1 название кнопки "Отказ" вместо "Отмена" (согласно стандартам разработки приложений по Windows). Случаем, не Cronos Plus'ом вдохновлялись разработчики? Там эта кнопка так и звалась убого.
2. На каком языке написан софт? Опять же ориентируюсь на рисунок 3.1, так как в Visual Basic (старом) в начале текстовых полей не было пустого места, как тут на скриншоте и есть. В современных языках есть мини-оступ текста от края поля (рисуется Windows).
3. Почему нет кнопки выбора папки для базы сразу же? Это стандартная API-функция винды.
4. Дочитал до рисунка 4.1. О, точно Cronos Plus! А написано, кажется, на Delphi старом, да?
5. О, да, рисунок 4.2 - это ж стандартный StringGrid от Delphi!
6. Так. У меня есть реальные придирки к UI/UX! Крайне РЕКОМЕНДУЮ почитать руководство по разработке программ для Windows, где указано СТАНДАРТНОЕ положение кнопок типа "ОК", "Отмена", "Применить" в диалогах.
"а теперь со всем этим мы попробуем взлететь"Цитата:
Нами был разработан язык представления правил продукционной экспертной системы Z+ и способ представления нечётких знаний в диагностической экспертной системе с помощью коэффициента доверия к значению переменной с использованием четырёхзначной логики. Реализован алгоритм подбора и выполнения правил и способы вычисления коэффициентов доверия к значениям переменных.
Вложение 83480не взлетает никак
ну вот это - Вложение 83481со всем уважением - ну это не для 2025 года, это не продаётся, увы.
Эпоха эксплуатационщиков ушла, диагностика не нужна, сейчас эффективные менегеры тупо страхуют отказы оборудования и это обходится дешевле, чем профилактика и ремонт.
четырёх, шести икс значная логика - хорошо, но зачем? ради академического интереса? для увеличения энтропии вселенной?
Я уже говорил, что критики я хапнул вдоволь.
Сейчас уже версия 7.6 вышла, документация по интерфейсу и настройке так же на сайте есть https://transform.ru/dokumentacija/
Диагностика+ пользуется спросом на энергетических предприятиях где есть главные инженеры, которые ответственны за оборудование (трансформаторы и т.д.). В систему заносятся данные по техническому обслуживанию и диагностике, на основе этого строиться прогноз состояния оборудования - если что то крякнет, то виновата система Д+, а не главный инженер - т.к. не предупредила.
Я мне кажется уже всю тему исписал в обоснованиях применения четырёхзначной логики. Интерес в данном случае практический, оптимизация кода в сложных задачах.Цитата:
четырёх, шести икс значная логика - хорошо, но зачем? ради академического интереса? для увеличения энтропии вселенной?
"они были страшно далеки от народа"(С)Цитата:
Диагностика+ пользуется спросом на энергетических предприятиях где есть главные инженеры, которые ответственны за оборудование (трансформаторы и т.д.). В систему заносятся данные по техническому обслуживанию и диагностике, на основе этого строиться прогноз состояния оборудования - если что то крякнет, то виновата система Д+, а не главный инженер - т.к. не предупредила.
даже спорить не о чем, с такой базой в голове у людей, увы
вы бы лучше исправили код на вашем собственном сайте, ему вот точно нехватает логикиЦитата:
Я мне кажется уже всю тему исписал в обоснованиях применения четырёхзначной логики. Интерес в данном случае практический, оптимизация кода в сложных задачах.
пока что вы походите на городского сумасшедшего с весенним обострением, которому негде поговорить и он забрёл на первый полуживой форум чисто случайно
приплели сюда Пр200, хотя по вашей же формлировке коду должно быть всё равно, где он исполняется
какие "сложные" задачи - начните с формулировки что такое задача, какие критерии сложности, о криетриях оценки кода, почему это он стал "неоптимизированным" и почему его надо "оптимизировать"
и самое главное - зачем оптимизировать, если код исполняется без ошибок?
и финалочка - цена вопроса оптимизации?
зачем вам(тебе) платить за это деньги?
Зато так забавно, после применения 4х логики для оптимизации, возвращаться снова к двоичной. Для сообщения главному инженеру, что его трансформатор скоро наеполомается...
Или так и остаёмся на 4х?
Трансформатор поломается? Да, Нет, Может быть, Но это не точно.
О, любимое слово одного нашего профессора... Оптимизация... За которое он драл всех как сидоров коз. Говорил: какая нахрен "оптимизация" без критериев, остолопы!
Хорошо, снова попытаюсь объяснить...
Давайте обратимся к металлообрабатывающему станку с ЧПУ при работе которого всё постоянно находиться в движении, причём по нескольким направлениям или осям в 3-х мерном пространстве.
В этом случае использование оси движения как логического элемента становиться актуальным
0- ось стоит
1- ость движется в направлении Х+
2- ость движется в направлении Х-
3- ось не может двигаться, авария
Я на логическом уровне понимаю в каком состоянии находиться конкретная ось движения станка. По этому для меня актуально использование четырёхзначной логики.
Если у вас задачи по проще, то заморачиваться и разбираться во всей это ерунде не стоит - вы ничего не выиграете !!!
https://rutube.ru/video/07475cfe44b8...d/?t=20&r=plwd
0-й бит = 0 стоит, = 1 движется
1-й бит = 0 - направление в -, = 1 - направление в +
2-й бит = 0 - нет аварий, =1 - авария
Ведь все равно вы минимум в байт будете запихивать биты, к тому же направление имеет смысл только при наличии движения, когда 0-й бит = 1 если разобраться. Хотя и при 0-м = 0 тоже имеет смысл, в каком направлении двигалась ось до момента остановки.
Где тут преимущества 4-х логики в принципе при 3-х то битах ?
Вроде все логические уровни для понимания соблюдены.
опять же для понимания.
00 - стоим
10 - движемся в минус
11 - движемся в плюс
01 - авария
Не важно, какие комбинации двух битов вы там примените, но вопрос по данному варианту 01 - авария, а причины ее вы начнете пихать в другие переменные, потому что вы не можете в этих двух битах сохранить направление движения, предшествующие аварии.
Как-то так. и вся логика 4х насмарку.
ось стоит = ось не может двигаться = двигатель оси выключенЦитата:
0- ось стоит
1- ость движется в направлении Х+
2- ость движется в направлении Х-
3- ось не может двигаться, авария
состояние авария притянутое за уши к этой оси не является фактором, характеризующим ось, так как основное - это движение оси в координатах, а не качественное описание её физического состояния
при описании движения в трёхмерных координатах положили болт на вторые две оси, молодцыЦитата:
осям в 3-х мерном пространстве.
В этом случае использование оси движения как логического элемента становиться актуальным
0- ось стоит
1- ость движется в направлении Х+
2- ость движется в направлении Х-
3- ось не может двигаться, авария
в общем, весеннее обострение не стихает
жду не дождусь примеров "плохого" двоичного так сказать и "оптимизированного" кода на "4х", можно на примере несчастного станка (кстати, сколько станков автоматизировал автор?)
без "доказательной" базы и более менее внятной академического методического подхода к работе
пока что всё выглядит как бла бла бла
и да - автор так и не ответил - а причём здесь ПР200? :D