@startuml PLC-Connector-main
header **Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample Text Sample**
skinparam dpi 400
skinparam TitleFontSize 24
skinparam defaultFontName DejaVu Sans
title Programmablauf PLC-Connector
right footer jomueller, 08.2022
start
:read config file;
: initialze
input modules,
middlewares, and
output modules;
partition Inputs {
while (foreach input module)
if (enabled?) then (yes)
#FFC5C4:start input thread|
endif
end while (end)
}
repeat
:read input queues<
partition Middlewares {
-> values;
:initialize list of results;
while (foreach middlewares module)
if (module enabled?) then (yes)
#FFC5C4:execute module|
if (output enabled?) then (yes)
:append result to list/
endif
:run submodules recursively;
endif
end while (end)
}
-> results;
partition Outputs {
while (foreach output module)
if (enabled?) then (yes)
#FFC5C4:write results to output>
endif
end while (end)
}
backward :sleep;
repeat while(end program?)
-> yes;
:stop input threads;
stop
@enduml