Jump to content

Conan der Barbar

Members
  • Content Count

    5
  • Joined

  • Last visited

Community Reputation

0 Neutral
  1. Liebe Forumsmitglieder, ich nutze einen RED-Brick, zwei Master, ein SSR und sieben PTC-Bricklets zur Temperaturmessung und Steuerung eines Magnetventils. Von allen die neuesten Versionen. Eben habe ich die zurückgelieferten Temperaturwerte mit einem temperierten Wasserbad überprüft. Dabei ist ein Fehler aufgetaucht, bei dem ich nicht die leiseste Ahnung habe, wo ich anfangen soll zu suchen. Ich vermute einen Fehler in der Software, bin mir aber nicht sicher. Ich sollte noch sagen, dass er zuvor nie aufgetaucht ist. Ob der Fehler reproduzierbar ist kann ich erst morgen mittag wieder sehen. Zur Erklärung vorab: Das Programm zeichent alle 30 Sekunden die Messwerte auf und speichert sie in einer SQLite Datenbank ab. Einer der zurückgelieferten Temperaturwerte ist bereits fehlerhaft, siehe dazu meinen Beitrag "Falsche Temperaturwerte bei PTC-Bricklet" bei im Unterforum Hardware. Nun zu meinem Problem: Das Wasserbad war auf 70 Grad eingestellt und die Temperaturwerte lagen allesamt in diesem Bereich. Zudem lief gerade eine Messung, also die Werte wurden aufgezeichnet. Nun habe ich das Wasserbad auf 80 Grad erhitzt und habe beobachtet, dass die Messwerte nicht mitgingen. Die blieben schön bei um die 70 Grad. Sie haben sogar noch alle 30 Sekunden neue Werte aktualisiert aber eben um die 70 Grad. Dann habe ich mit einem externen Thermometer überprüft ob das Wasserbad tatsächlich 80 Grad hat und das hatte es. Als ich die Messung dann gestoppt habe, haben plötzlich alle Messwerte (bis auf den einen defekten) den richtigen Messwert angezeigt, also Messwerte um die 80 Grad. Wenn während der Messung die Werte nicht mehr aktualisiert worden wären, hätte ich ja gedacht, dass das Programm sich aufgehangen hat, aber ich frage mich wo zum Teufel der die falschen Messwerte her hat, die er ständig aktualisiert hat und das bei allen Sensoren gleichzeitig... Ich würde gerne meinen Programmcode hochladen, aber der umfasst mittlerweile an die 1700 Zeilen in Python. Nur Teile, die bspw. die messung betreffen sind leider nicht vorhanden, da im Grunde das ganze Programm für das Verständnis notwendig wäre. Ich hoffe irgendjemand hat eine Idee wo ich mit der Fehlersuche anfangen könnte... Vielen Dank im voraus!
  2. Hallo, ich benutze TinkerForge in Zusammenhang mit meiner Bachelorarbeit. Ziel ist es für eine Destillationsanlage ein Messsystem zu entwickeln, dfür werden sieben PTC-Bricklets benötigt. Als Sensoren verwenden wir die Mantelwiderstandssensoren von Sensorshop 24 und sind auch seh zufrieden mit den. Das System steht eigentlich auch schon und Testläufe werden auch gerade gemacht. Die ersten waren erfolgreich, mit nur einer Ausnahme, dass eine Temperatur mit der Zeit immer höher geht, also wenn der Sensor eigentlich etwas zwischen 90 und 100 grad anzeigen sollte, geht er einfach immer höher. Einmal ging die Temperatur sogar bis 112 Grad hoch, obwohl es nicht wärmer ist wie maximal 100 und es wäre wahrscheinlich noch höher gegangen wenn wir es nicht abgebrochen hätten. Als Beispiel könnt ihr die Temperaturdaten in der Textdatei Messdaten10 sehen, da müsst ihr euch die Spalte dataB3 anschauen. EIgentlich dachte ich ursprünglich dass es sich hierbei um einen Fehler des Sensors handelt, aber nach den neuesten Entwicklungen gehe ich eher davon aus dass das PTC-Bricklet fehlerhaft ist. Ich kann den Verdacht nur gerade nicht überprüfen. Nachtrag: Das erste Problem ist ein Problem mit dem Sensor, dieser muss einfach kalibriert werden, das bekomme ich hin. Dennoch bleibt mein folgendes Problem leider... Über Weihnachten ist es nämlich plötzlich dazu gekommen, dass eine weitere Temperatur fehlerhaft ist. Diesmal wird einfach eine zu niedrige Temperatur angezeigt. Dies könnt ihr sehen, wenn ihr euch die Spalte dataK anschaut. Eigentlich sollten die Temperaturwerte ähnlich zu den Werten der Spalte data B11 sein, aber sie haben gute 25 Grad unterschied. später wenn die Temperatur in der Spalte runtergeht und nur noch nan angezeigt wird, liegt es darand, dass der Sensor aus der anlage rausgezogen wurde und dann eigentlcih hätte Raumtemperatur (ca 24 Grad) hätte anzeigen müssen. da zeigt er aber meist so 13 oder 14 Grad an. Also der Unterschied ist nichteinmal linear. Am Sensor liegt es hier nicht, das habe ich überprüft, auch die Jumper sind richtig drauf und das Kabel zum Master ist richtig verbunden. Ich gehe davon aus, dass der PTC defekt ist, aber ist es wirklich möglich, dass sich das kaputt gestanden hat über die zwei Wochen Urlaub? Vielleicht fällt euch ja noch was ein, was ich ausprobieren könnte um zu schauen, ob wirklich das PTC-Bricklet defekt ist. Ich hoffe ich habe das alles verständlich erklärt. Vielen Dank im Voraus! Messdaten10.txt
  3. Hallo, ich habe keine schleifen drinne, genau wegen so etwas wie du es eben beschrieben hast. ich frage die temperatur regelmäßig ab, mit der callbackfunktion von TF. Auch auf sleep verzichte ich, da die programmoberfläche dann ins stocken kommt. Andere Werte von denen ich regelmäsig ein update brauche hohle ich mir mit eine selbst gebastelten callbackfunktion mit QTimer von PyQT5. Bei den Temperaturwerten ist es so, dass das kleinste Zeitintervall in dem ich die 7 Werte nacheinander abfragen kann, 30 sekunden ist, da ansonsten der alte Wert mit einem Neuen überschrieben wird, bevor ich den alten abspeichern kann. Das wäre auch noch erwähnenswert: Es gibt eine graphische Oberfläche mit PyQT5, und abspeichern tue ich die Werte in einer SQLite Datenbank. Das vollständige Auslasten der CPU hat erst angefangen, als ich mein Programm um die SQLite Datenbank erweitert habe und ein regelmäßiges An- und Ausschalten des Solid State Relais programmiert habe. Ich dachte zuerst es liegt an der SQLite-Datenbank, aber die ist ja gerade dafür konzipiert, auf einem System mit wenig Anspruch zu laufen und auch laut meinem Betreuer, kann es nicht daran liegen. Ich kann mir aber auch nicht vorstellen, dass es an dem Relais liegen kann, da das eigentlich nicht so viel macht, auser in in einem bestimmten Tackt an und aus zu gehen. Aber in jedem Fall schonmal Danke dafür, dass du versuchst mir zu helfen. Ich weis echt nicht mehr weiter..
  4. Das Programm ist knapp 2000 Zeilen lang. Zudem ist es Teil einer Abschlussarbeit, die unter Verschluss steht. Darf also nicht einfach originalcode hochladen. Wüsste allerdings auch nicht wie ich bei 2000 Zeilen einen Beispielcode hochladen sollte.
  5. Hallo, Ich hab das Forum schon durchsucht und nichts gefunden. Ich verwende einen Red Brick, eine Power Supply, zwei Master 2.0, 1 solid Stare relais und 7 PTC-bricklets 2.0. Mein Problem ist, dass der TinkerForge Red Brick mit meinem Python Programm überfordert ist. Die CPU ist immer zu 100% ausgelastet und die Temperaturen werden zeitverzögert ausgelesen. Hat jemand eine Idee, wie ich das Python Programm schneller bekomme, bspw. Als stand alone. Ich habe schon Versucht eine stand alone Python Programm hochzuladen und zu starten, aber es ließ sich auf dem TinkerForge nicht starten, auf meinem Linux PC jedoch schon. Als stand alone hätte ich natürlich auch keinen Zugriff mehr über den brickviewer auf das Programm. Habe es auch Versucht mit alternativen Compilern, aber alle auf dem TinkerForge nicht zum laufen bekommen. Ich hoffe jemand kann mir helfen, vielen Dank schon mal im voraus. Conan der Barbar
×
×
  • Create New...