Welche Temperaturerfassung geht unter C++ `?

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo,

    ich habe mich dazu entschieden eine Heizungssteuerung mit dem Raspberry zu basteln, und ich gebe zu es ist mein erstes Hardwareprojekt mit dem Rechner. Nun geht es darum, mehrere Temperaturen zu erfassen. Da gibt es ja grundlegende erstmal unterschiedliche Möglichkeiten: Pt100(1000)/NTC/PTC oder I2C oder 1Wire

    Da ich aus der SPS-Welt komme, wäre mir natürlich eine Pt100 Lösung am liebsten: Die sind zuverlässig, preislich akzeptabel und in vielen verschiedenen Bauformen überall erhältlich. Allerdings ist mir hier der Aufwand etwas zu hoch, damit der Raspberry diese Sensoren erstmal auswerten kann.

    Nun ist es so, dass ich die ganze Software in C++ schreiben werde. Da wäre es wohl am einfachsten, Sensoren mit I2C Interface zu nutzen, da es für diese Schnittstelle fertige C++ Bibliotheken gibt. Aber ich finde relativ wenig Sensoren mit I2C, vor allem entsprechend wenige Bauformen.

    Die wiederum gibt es mit 1Wire schon. Aber wie werte ich hier die Sensoren in C++ aus ?

    Es gibt wohl die fertigen Treiber, die die Sensoren auslesen und die Werte in Dateien schreiben. Ich müsste also nur die Files öffnen und auslesen. Ist ja noch relativ simple. Aber ich habe kein gutes Gefühl dabei, wenn ich mich drauf verlassen muss dass irgendeine andere Software die Werte ausliest...Wie kriege ich mit ob dieser Treiber auch funktioniert oder ob er sich aufgehängt hat ? Wie erkennt er einen Sensorfehler ? Kann bei einer Brennersteuerung ja schon kritisch werden.....

    Wie sind eure Erfahrungen ?


    Greets

    Grieko

  • Erstmal, ein Raspberry Pi mit Linux drauf ist nicht wirklich für Sicherheitskritische Anwendungen gedacht.

    Seitenlange Zertifizierungen für Normen etc. wirst du nicht finden. Auch ist das übliche Raspian nicht echtzeitfähig (und ein Echtzeit OS drauf zu verwenden ist relativ umständlich).

    Also wenn bei Versagen des Systems, die Bude abbrennt, lass lieber die Finger davon!

    Normalerweise macht man sowas mit einem einfacheren uC. Z.B. einem Arduino board. Ob du tatsächlich das Arduiono Framework darauf verwendest, doer nicht, steht dir offen.


    Wenn du dir diese Nachteile bewusst bist und andere Gründe hast, einen Raspberry einzusetzen (z.B. Netzwerkfähigkeit, Kamera input), wirst du wohl die besten Ergebnisse mit einem ADC erreichen. Den kannst du per i2C anschließen und relativ direkt ansprechen.

    Z.B. https://www.ebay.de/itm/16-Bit-4-K…bzO~A:rk:3:pf:0

    Daran dann jeder beliebige analoge Sensor.

  • Erstmal, ein Raspberry Pi mit Linux drauf ist nicht wirklich für Sicherheitskritische Anwendungen gedacht.

    Immer diese pauschalen, durch nichts belegten Bahauptungen ... :fies:

    Das kannst Du sicher genauer begründen und auch belegen, oder?

    Also ... warum und woran liegt's? Am Pi? Am Linux? An beidem?

    cu,

    -ds-

  • Immer diese pauschalen, durch nichts belegten Bahauptungen ... :fies:

    Das kannst Du sicher genauer begründen und auch belegen, oder?

    Also ... warum und woran liegt's? Am Pi? Am Linux? An beidem?

    cu,

    -ds-

    Habe ich doch relativ deutlich angedeutet:

    "Seitenlange Zertifizierungen für Normen etc. wirst du nicht finden. Auch ist das übliche Raspian nicht echtzeitfähig (und ein Echtzeit OS drauf zu verwenden ist relativ umständlich)."

    Die Zertifizierungen bräuchte man damit man bei Versagen der Hardware, im Fall der Fälle belegen kann, dass man nicht für den Unfall verantwortlich war und ein so aufwendiges Betriebssystem kann nunmal Probleme verursachen.

    Z.B. abstürzen und dabei die Pins beliebig auf high oder low lassen.

    Klar, es passiert vielleicht nur einmal im Jahr, aber es ist etwas was man bedenken sollte.

    Nungut, persönlich würde ich keinem einzelnen Mikrocontroler trauen, sondern mindestens noch eine mechanische Übertemeperatur-Abschaltung verbauen. Das ist bei professionellen Lösungen immer drin.

    Btw. Ich habe nicht geschrieben dass der Raspi völlig ungeeignet sei, nur dass es nicht dafür gedacht ist. Finde das ist schon recht offensichtlich.


    EDIT: Sind Grieko und greekos die selbe Person?

    Wenn es wie in dem verlinkten anderen Thread, um ein in sich geschlossenes Brenner System handelt, das nur an oder ausgeschaltet wird, dann spricht natürlich nichts gegen dem Raspi (ausser dem Stromverbrauch vielleicht, wenn das 24/7 laufen soll und einzig eine einfache Regleraufgabe hat wofür der Raspberry halt einfach überdimensioniert ist).

    Einmal editiert, zuletzt von Drasp (28. Dezember 2018 um 01:40)

  • "Seitenlange Zertifizierungen für Normen etc. wirst du nicht finden. ...

    Die findest Du imho auch nicht für z.B. ein Sony-Notebook, das durchaus als Basis für eine sicherheitsrelevante Anwendung in Frage kommt. Ausserdem liegt das in der Natur der Sache, denn für die meisten SBCs wirst Du das nicht finden.
    Zumindest war das in meiner aktiven Zeit in der QS so, dass immer das Gesamtprodukt zertifiziert wurde, nicht die Komponenten.

    Auch ist das übliche Raspian nicht echtzeitfähig ...

    Echtzeitfähigkeit ist afaik keine Voraussetzung für Sicherheit ...

    ... (und ein Echtzeit OS drauf zu verwenden ist relativ umständlich)."

    sagt wer?

    ... und ein so aufwendiges Betriebssystem kann nunmal Probleme verursachen.

    Sorry, aber das würde bedeuten, dass ein RTOS weniger aufwändig ist?

    Ich finde, mit solchen pauschalen Behauptungen sollte man sehr zurückhaltend sein. Zumindest wäre es angebracht die Aussagen auch mit Fakten zu untermauern. Sicherheit ist da ein ganz schlechtes Beispiel, denn auch ein Raspi kann einiges in dieser Richtung leisten. Und, wie oben schon mal angemerkt, schliessen sich Sicherheit und fehlende Echtzeitfähigkeit nicht aus.

    Ein Zitat aus wenigstens einem Beispiel solcher "seitenlangen Zertifikate" fehlt genau so, wie ein Link entsprechende Vorschriften/Vorgaben/Bestimmungen.

    Alles in allem viel Text mit sehr wenig Substanz.

    Zudem will der TO erst mal nur Temperaturen erfassen ... da sehe ich weit und breit erst mal weder Probleme noch irgend eine Sicherheits-Relevanz.

    Grieko : in C/C++ kannst Du erst mal praktisch alle Arten von Sensoren auslesen. Die Frage dabei ist, ob Du das selbst implementieren musst oder ob es fertige Libs dafür gibt.


    cu,

    -ds-

  • Ich will hier auch mal meinen Senf zum Thema "sicherheitskritisch" dazugeben:P

    Als Beispiel muss jetzt ein Intel Xeon Silver 4114 herhalten: Das ist ne 10Kerner Server CPU und wird somit durchaus in kritischen Bereichen ihren Einsatz finden. So nun gibt Intel selbst zu das man erstmal die Kiste totpatchen muss da sie sonst gegen die Exploits Spectre und Meltdown angreifbar ist ( Was gerade z.b. bei mehreren VMs welche auf der CPU laufen doch ein Angriffspunkt darstellt)

    Siehe dazu: https://www.intel.de/content/www/de…ilver-4114.html

    (ganz unten im Kleingedruckten stehts)

    So der Raspberry kann Architekturbedingt keine oooe ( out of order execution) - somit können diese Exploits da nichts machen da schlicht die Hardware dafür fehlt. Das macht den Raspi fürs online banking sicherer als fast alle anderen Geräte aufm Markt.

    Nebenbei wenn man jetzt nen Dampfdruckkessel regeln möchte (also wo wirklich was in die Luft fliegen kann) würde ich auf Raspis und Redundanz setzen. Also zwei lesen Daten und verarbeiten diese und ein dritter ist nur dazu da die Daten kreuzweise zu vergleichen und ggf n Notlauf/aus auszulösen.

  • Eben ... das ist in etwa das, was ich mit meinem Beitrag sagen wollte.

    Wobei:

    Nebenbei wenn man jetzt nen Dampfdruckkessel regeln möchte (also wo wirklich was in die Luft fliegen kann) würde ich auf Raspis und Redundanz setzen. Also zwei lesen Daten und verarbeiten diese und ein dritter ist nur dazu da die Daten kreuzweise zu vergleichen und ggf n Notlauf/aus auszulösen.

    ich so was prinzipiell so weit wie möglich nur parallel zur Originalanlage mit dem Raspi realisieren würde.

    Nicht, weil ich es ihm nicht zutraue, sondern weil mir sonst die Zulassung der Steuerung verloren ginge. Und das kann im Zweifelsfall dann doch teuer werden.

    //EDIT: das gilt natürlich für jeden Einsatz des Pi anstelle eines vorhandenen Gerätes, das eine Zulassung oder Abnahme hat ...

    cu,

    -ds-

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!