plc-connector-main.plantuml 1.4 KB

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