Найти в Дзене
Геннадий Антонов

Tesys T - как сконвертировать строчную логику в графический формат FBD.

Здравствуйте, друзья. На устройствах Tesys T есть строчная логика, примерно в таком виде. Те кто работали с ней, наверняка помнят, что программа для работы с данной логикой SoMove, не позволяет сконвертировать эту строчную логику в графический вид FBD - function block diagram.
Там имеется возможность написать логику на FBD, но в итоге, при заливке в устройства, она все равно конвертируется в строчную логику.
При выгрузке с устройства, также выгружаешь логику в строчном виде, и конвертировать её в графический вид, нет никакой возможности.
Вообщем, однажды, поставил себе задачу, создать такой конвертер логики из строчной - в графический вид - формат FBD.
Все таки визуально, он получше воспринимается, особенно, когда в строчной логике нет комментариев.
А при загрузке в устройство любой логики, все комментарии откидываются.
Сказано сделано.
Сначала попробовал реализовать на Питоне.
Сделал на тот момент только несколько элементов, программа генерировала изображение в растровом фо

Здравствуйте, друзья. На устройствах Tesys T есть строчная логика, примерно в таком виде.

Устройство Tesys T
Устройство Tesys T
Строчная логика Tesys T без комментарий
Строчная логика Tesys T без комментарий
Строчная логика Tesys T с комментариями
Строчная логика Tesys T с комментариями

Те кто работали с ней, наверняка помнят, что программа для работы с данной логикой SoMove, не позволяет сконвертировать эту строчную логику в графический вид FBD - function block diagram.
Там имеется возможность написать логику на FBD, но в итоге, при заливке в устройства, она все равно конвертируется в строчную логику.
При выгрузке с устройства, также выгружаешь логику в строчном виде, и конвертировать её в графический вид, нет никакой возможности.

Вообщем, однажды, поставил себе задачу, создать такой конвертер логики из строчной - в графический вид - формат FBD.
Все таки визуально, он получше воспринимается, особенно, когда в строчной логике нет комментариев.
А при загрузке в устройство любой логики, все комментарии откидываются.

Сказано сделано.
Сначала попробовал реализовать на Питоне.
Сделал на тот момент только несколько элементов, программа генерировала изображение в растровом формате JPG.

Первый вариант на Python с растровым форматом JPG
Первый вариант на Python с растровым форматом JPG

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

Решил написать заново программу на С++.
Программа должна генерировать векторный файл формата SVG.
Этот формат файла идет как простой текст.

SVG - векторный легко редактируемый формат изображения - по сути обычный текст
SVG - векторный легко редактируемый формат изображения - по сути обычный текст

Поддерживается большинством редакторов векторных изображений.
Можно открыть для просмотра в обычном браузере.
Вообщем, когда уже всё получилось, решил добавить также в программу поддержку стандартных регистров и битов.
Чтобы в логике, если задействованы стандартные (заводские) регистры и биты, программа рисовала бы надпись рядом - их расшифровку.

Скриншот части графической логики, сгенерированного программой из строчной логики
Скриншот части графической логики, сгенерированного программой из строчной логики
Расшифровка стандартных регистров и битов, если они используются в логике
Расшифровка стандартных регистров и битов, если они используются в логике

Для примера выложил два файла - логику в текстовом формате .С , и сгенерированный программой файл .SVG - конвертация из строчной логики в графическую.
Отсюда вы сможете скачать эти два файла.

Tesys_Logic_string_to_FBD_SVG

Для просмотра и редактирования SVG файла, подходит любой векторный редактор - Corel Draw, например. Можно даже открыть SVG файл любым обычным браузером.
Без установки редактора, можно использовать онлайн open source ресурс
https://editor.method.ac/
Где можно отредактировать или передвигать чертеж с графической логикой. Там же сможете экспортировать чертеж в формат фотографии PNG.

В качестве бонуса, хотел бы предложить своим читателям, бесплатно сконвертировать их логику.
Жду в комментариях обратную связь с вашей стороны.
Присылайте мне Ваши заявки с просьбой сконвертировать строчную логику для Tesys T.