Wie bewerkstellig man am besten multiple Aufgaben die gleichzeigtig ausgeführt werden.
Verfasst: Sonntag 23. Mai 2021, 06:30
Hallo Leute,
Ich hätte heute mal mehr eine Frage da Ich mir bei der Umsetzung nicht ganz sicher bin ( Ich habe bisher auch nur Programme die mehr einen Flussdiagramm ähneln -> also alles nacheinander.Ich habe folgendes Problem vor einigen Wochen ( mir wurde hier auch in dem Forum geholfen Stichwort "Frequenzmessung" ).Ich habe mehrere Sensoren einmal einen Windgeschwindigkeitssensor der einen Frequenzausgang hat,dann könnten noch Taupunktsensoren,Temperatursensoren und noch zwei drei andere kleine Sachen dazu kommen.
Das Skript für die Frequenzmessung ist im Prinzip einfach nur einwarten auf zustandswechsel an den GPIO das funktioniert alleine auch wunderbar,Ich habe mich dann mit diversen unterschiedlichen Sensoren die letzten Wochen beschäftigt von einem Luftqualitätsensor mit Bibliothek von Bosch bis einfach selber Messwert über ein A/D Wandler auslesen was ebenfalls alles funktioniert.So Ich möchte nun gerne das alles Gleichzeitig zusammenläuft. [Falls hier der Hinweis kommt wegen der niedrigen Taktzahl -> Ich werde wohl in geraumer Zukunft zumindest das Messdaten erfassen über einen Pico machen jedoch dauert das noch einige Monate].Also zum Beispiel Hintereinander mehrere Ich sag mal Temperatursensoren auszulesen ist kein Problem mich verunsichert in dem Fall nur die Frequenzmessung da Ich diese nicht behindern möchte.
Meine Gedanke zu dem Thema:
Ich habe damit zwar noch nie gearbeitet und mich nur sehr oberflächlich beschäftigt jedoch glaube Ich das hier nicht der richtige Einsatzmoment für Threads bzw Multithreading wäre.
Da diese Aufgaben ehr jeder sein eigenes "Bier" macht und sich somit auch nicht unbedingt Variablen teilen müssen macht es für mich mehr Sinn mehrere Prozesse zu denken ( wenn Ich das noch richtig im Kopf habe habe wäre das auch wieder ein Problem bei den Threas da mit Hyper Threading glaube Ich wieder nur zwei gleichzeitig laufen ? Also Ich assoziiere das man Threads zum Beispiel ehr bei GUIS etc benötigt aber das kann natürlich auch falsch sein.Ebenfalls finde Ich es Positive das Ich die Prozess quasi wie eigenständige Programme unterbrechen könnte wenn Ich zum Beispiel mal Wartungsarbeiten an dem Sensor machen muss.
Anderer Gedanke:
Ich habe es noch nicht ausprobiert nur im Endeffekt würde natürlich auch die Möglichkeit weiter bestehen für jede Aufgabe einzelne Skript zu erstellen und diese einfach "nebeneinander aufzurufen"-> was in dem Fall ja ein Hintereinander wäre,nur auch wenn Ich es noch nicht ausprobiert habe bin Ich mir sicher das es so nicht funktioniert wird das der Pi etwas Träge ist und da zuviele Sekunden verloren gehen würden.
Was haltet Ihr von der Problemstellung und wie würdet ihr an das Problem rangehen
Ich bedanke mich im voraus
Ich hätte heute mal mehr eine Frage da Ich mir bei der Umsetzung nicht ganz sicher bin ( Ich habe bisher auch nur Programme die mehr einen Flussdiagramm ähneln -> also alles nacheinander.Ich habe folgendes Problem vor einigen Wochen ( mir wurde hier auch in dem Forum geholfen Stichwort "Frequenzmessung" ).Ich habe mehrere Sensoren einmal einen Windgeschwindigkeitssensor der einen Frequenzausgang hat,dann könnten noch Taupunktsensoren,Temperatursensoren und noch zwei drei andere kleine Sachen dazu kommen.
Das Skript für die Frequenzmessung ist im Prinzip einfach nur einwarten auf zustandswechsel an den GPIO das funktioniert alleine auch wunderbar,Ich habe mich dann mit diversen unterschiedlichen Sensoren die letzten Wochen beschäftigt von einem Luftqualitätsensor mit Bibliothek von Bosch bis einfach selber Messwert über ein A/D Wandler auslesen was ebenfalls alles funktioniert.So Ich möchte nun gerne das alles Gleichzeitig zusammenläuft. [Falls hier der Hinweis kommt wegen der niedrigen Taktzahl -> Ich werde wohl in geraumer Zukunft zumindest das Messdaten erfassen über einen Pico machen jedoch dauert das noch einige Monate].Also zum Beispiel Hintereinander mehrere Ich sag mal Temperatursensoren auszulesen ist kein Problem mich verunsichert in dem Fall nur die Frequenzmessung da Ich diese nicht behindern möchte.
Meine Gedanke zu dem Thema:
Ich habe damit zwar noch nie gearbeitet und mich nur sehr oberflächlich beschäftigt jedoch glaube Ich das hier nicht der richtige Einsatzmoment für Threads bzw Multithreading wäre.
Da diese Aufgaben ehr jeder sein eigenes "Bier" macht und sich somit auch nicht unbedingt Variablen teilen müssen macht es für mich mehr Sinn mehrere Prozesse zu denken ( wenn Ich das noch richtig im Kopf habe habe wäre das auch wieder ein Problem bei den Threas da mit Hyper Threading glaube Ich wieder nur zwei gleichzeitig laufen ? Also Ich assoziiere das man Threads zum Beispiel ehr bei GUIS etc benötigt aber das kann natürlich auch falsch sein.Ebenfalls finde Ich es Positive das Ich die Prozess quasi wie eigenständige Programme unterbrechen könnte wenn Ich zum Beispiel mal Wartungsarbeiten an dem Sensor machen muss.
Anderer Gedanke:
Ich habe es noch nicht ausprobiert nur im Endeffekt würde natürlich auch die Möglichkeit weiter bestehen für jede Aufgabe einzelne Skript zu erstellen und diese einfach "nebeneinander aufzurufen"-> was in dem Fall ja ein Hintereinander wäre,nur auch wenn Ich es noch nicht ausprobiert habe bin Ich mir sicher das es so nicht funktioniert wird das der Pi etwas Träge ist und da zuviele Sekunden verloren gehen würden.
Was haltet Ihr von der Problemstellung und wie würdet ihr an das Problem rangehen
Ich bedanke mich im voraus