plc-connector-main.plantuml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. @startuml PLC-Connector-main
  2. skinparam TitleFontSize 24
  3. title Programmablauf PLC-Connector
  4. right footer jomueller, 08.2022
  5. skinparam linetype ortho
  6. skinparam NodeBorderColor #7777cc
  7. skinparam ObjectBackgroundColor #C8C7FF
  8. skinparam DatabaseBackgroundColor #C8C7FF
  9. skinparam AgentBackgroundColor #C8C7FF
  10. <style>
  11. activityDiagram {
  12. BackgroundColor #C8C7FF
  13. BorderColor #7777cc
  14. partition {
  15. LineColor #7777cc
  16. RoundCorner 10
  17. BackgroundColor #fff
  18. }
  19. diamond {
  20. BackgroundColor #fff
  21. LineColor #000
  22. }
  23. }
  24. document {
  25. BackgroundColor #fff
  26. }
  27. </style>
  28. start
  29. :read config file;
  30. : initialze
  31. input modules,
  32. middlewares, and
  33. output modules;
  34. partition Inputs {
  35. while (foreach input module)
  36. if (enabled?) then (yes)
  37. #FFC5C4:start input thread|
  38. endif
  39. end while (end)
  40. }
  41. repeat
  42. :read input queues<
  43. partition Middlewares {
  44. -> values;
  45. :initialze list of results;
  46. while (foreach middlewares module)
  47. if (module enabled?) then (yes)
  48. #FFC5C4:execute module|
  49. if (output enabled?) then (yes)
  50. :append result to list/
  51. endif
  52. :run submodules recursively;
  53. endif
  54. end while (end)
  55. }
  56. -> results;
  57. partition Outputs {
  58. while (foreach output module)
  59. if (enabled?) then (yes)
  60. #FFC5C4:write results to output>
  61. endif
  62. end while (end)
  63. }
  64. backward :sleep;
  65. repeat while(end program?)
  66. -> yes;
  67. :stop input threads;
  68. stop
  69. @enduml