Просмотр полной версии : Динамическое создание экземпляра функционального блока
Здравствуйте
Имеется ли возможность в CS3.5 во время выполнения программы создать экземпляр функционального блока?
То есть я точно не знаю сколько мне их понадобится и не хочу заранее создавать массив функциональных блоков с размером заведомо больше чем буду использовать.
Хочется создавать их программе по мере необходимости и может быть удалять если в них отпадет необходимость.
Задача видимо в выделении памяти по размеру ФБ, размещение в ней экземпляра ФБ и вызов ФБ по адресу этой памяти. Как это можно сделать я не представляю к сожалению.
Задача возникла из за необходимостью связи с неизвестным заранее количеством устройств по TCP Modbus. Для каждого устройства нужен ФБ в котором будут крутится TCP_Client и MB_TcpRequest со своим IP
Здравствуйте
Имеется ли возможность в CS3.5 во время выполнения программы создать экземпляр функционального блока?
То есть я точно не знаю сколько мне их понадобится и не хочу заранее создавать массив функциональных блоков с размером заведомо больше чем буду использовать.
Хочется создавать их программе по мере необходимости и может быть удалять если в них отпадет необходимость.
Задача видимо в выделении памяти по размеру ФБ, размещение в ней экземпляра ФБ и вызов ФБ по адресу этой памяти. Как это можно сделать я не представляю к сожалению.
Задача возникла из за необходимостью связи с неизвестным заранее количеством устройств по TCP Modbus. Для каждого устройства нужен ФБ в котором будут крутится TCP_Client и MB_TcpRequest со своим IP
Даже если такое можно сделать - кто будет использовать полученные данные от новых клиентов?
Даже если такое можно сделать - кто будет использовать полученные данные от новых клиентов?
Видимо у этого экземпляра должен быть доступ к входным и выходным переменным (по адресам например) как у нормального экземпляра описанного заранее и созданного при компиляции.
Евгений Кислов
24.04.2026, 10:57
Добрый день.
не хочу заранее создавать массив функциональных блоков с размером заведомо больше чем буду использовать
Памяти хватит в любом случае, т.е. речь только о том, что это кажется "некрасивым" и хочется "изысканного".
Хочется создавать их программе по мере необходимости и может быть удалять если в них отпадет необходимость.
https://content.helpme-codesys.com/en/LibDevSummary/fb_factory.html
Скорее всего, ссылка откроется только через VPN.
Но я предполагаю, что вы потратите существенно больше времени на изучение технологии и отладку получившегося решения, чем на "создание массива функциональных блоков с размером заведомо больше".
Спасибо посмотрел.
Вы правы тут нахрапом не получится. Интересно и полезно было бы научиться работать с кучей и можно было использовать ООП в CS
Придется пока записать в wishlist
Пойду массив создавать
интересно, насколько понимаю в ST типа Списков и Словарей нет ничего? ну еще классы? или это вот там по ссылке всё?
з.ы. нет ВПНов, чтобы посмотреть.
кстати где-то нарывался на статью, как человек писал программу для Хлебопечки (ну для выпекания хлеба), что-то похожее по идее у него там было.
Если кому будет интересно - скачанная страничка из справки.
в общем для динамики все грустно. это вам не языки программирования с классами, списками и прочим.
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot