Разработка IDE для ПЛК. Механика печатной машинки для графики бесконечных вложений электроцепей. искусственный интеллект.. искусственный интеллект. исскуственный интеллект.. искусственный интеллект. исскуственный интеллект. исскуство.. искусственный интеллект. исскуственный интеллект. исскуство. Компиляторы.. искусственный интеллект. исскуственный интеллект. исскуство. Компиляторы. Программирование микроконтроллеров.. искусственный интеллект. исскуственный интеллект. исскуство. Компиляторы. Программирование микроконтроллеров. Производство и разработка электроники.. искусственный интеллект. исскуственный интеллект. исскуство. Компиляторы. Программирование микроконтроллеров. Производство и разработка электроники. Промышленное программирование.. искусственный интеллект. исскуственный интеллект. исскуство. Компиляторы. Программирование микроконтроллеров. Производство и разработка электроники. Промышленное программирование. промышленность.
Разработка IDE для ПЛК. Механика печатной машинки для графики бесконечных вложений электроцепей - 1

Как ИИ проигрывает человеку. Это непопулярная тема в эпоху хайпа вокруг нейросетей, ведь принято считать, что они «заменят человека». Скажу сразу: я не типичный инженер. По второму диплому я преподаватель живописи и графики. Моя биография — это не только запах гари и припоя, но и запах масла, титановых белил и кадмиевых красок в старых паркетных аудиториях. Гипсовая анатомия, драпировки, подсохшие цветы в керамике — хорошо знакомо художникам.


Когда я ставил перед собой задачу создать графический движок для отрисовки Ladder-программ, я сформулировал следующие требования:

  • Бесконечные вложения веток друг в друга.

  • Автоматическая прорисовка размещения. То есть не так, как в OpenPLC или Beremiz, где всё нужно передвигать руками, а как в системах от Allen-Bradley.

  • Корректный перевод всей этой структуры в ассемблерные, линейные инструкции.

Конечно, первое, о чём я подумал, — это графы и рекурсия. То же самое мне начал советовать и ИИ. Он написал мне тонны псевдокода, и я этому типичному сценарию какое-то время следовал. Только вот мне постоянно казалось: как-то всё это сложновато. Была интуиция, что система должна работать намного проще.

Формула Эйнштейна, описывающая устройство Вселенной, помещается в несколько символов. Формулы Ньютона, описывающие движение планет и гравитацию, тоже состоят всего из нескольких переменных и констант. А какая-то траектория отрисовки Ladder-цепей должна занимать сотни строк?

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

Тестируем корректность  трансляции двумерных веток в последовательность машинных инструкций.
Тестируем корректность трансляции двумерных веток в последовательность машинных инструкций.

Так я перешёл на стековую модель: начало ветки — кладём координаты в стек, конец ветки — достаём обратно. Нужно вставить ветку внутрь другой ветки? Просто «выкидываем лист» из печатной машинки и переписываем всё заново по тем же правилам: с помощью пробелов и переходов на новую строку.

А самое главное — текст (последовательность инструкций) у печатной машинки изначально линейный. Он абсолютно точно, один в один, транслируется в машинный код. В то время как двумерные и прочие графы ещё нужно линеаризовать, что в средах разработки для ПЛК слишком часто приводило к ошибкам. То есть, программа ПЛК ведет себя так как видит человек на схеме.

Не хочу сказать, что я придумал что-то принципиально новое — подобные механизмы использовались в истории человечества много где. Но моя история — о меж доменном мышлении, творчестве и прямолинейности ИИ. С чего бы искусственному интеллекту проводить параллели между Ladder-программой и печатной машинкой? Почему не с фонарным столбом или почтовым ящиком? Если ИИ начнёт перебирать абсолютно все случайные варианты, ему не хватит ни ОЗУ, ни энергии, ни разумного промежутка времени, чтобы сделать хоть какие-то выводы. А человек — может.

Зимний Этюд. Бумага /Акварель.

Зимний Этюд. Бумага /Акварель.

О моем сквозном проекте разработки ПЛК, можно почитать тут:

https://habr.com/ru/articles/1027424/

https://habr.com/ru/articles/1103196/

Автор: zoshytlogic

Источник