Jump to content

Werte vom Industrial Dual Analog In Bricklet 2.0 kommen mit -45V


Sahib

Recommended Posts

Gibt das Bricklet in dem Fehlerfall genau -45V zurück? Oder irgendetwas krummes nahe an -45V?

Ist die Firmware des Bricklets auf dem neuesten Stand?

Ich hab gerade kurz in die Firmware geschaut, so auf Anhieb kann ich nichts finden was im Fehlerfall/Overflow o.ä. exakt -45V erzeugen könnte. Welche Spannung liegt denn in Wirklichkeit ca. an?

Link to comment
Share on other sites

Sehr komisch. Ich verwende das Industrial Dual Analog In Bricklet 2.0 sogar gerade für ein Projekt wo ich länger Messungen mache und ich kann das definitiv nicht reproduzieren. Klingt ja so als würde das Bricklet (oder der ADC auf dem Bricklet) irgendwie seine Einstellung vergessen und dann entsprechend falsche Werte anzeigen die sich durch die Eingangsspannung aber noch beeinflussen lassen.

Um zu sehen ob es das ist würde ich eine Firmware bauen die regelmäßig die Konfiguration zurück liest und auf Richtigkeit überprüft. Ich melde mich morgen im Laufe des Tages nochmal mit einer Firmware zum Testen.

Link to comment
Share on other sites

Echt komisch. Das wechseln auf 2Hz ruft die "SetSampleRate"-Funktion auf. Diese speichert die neue Sample Rate und setzt einen bool Wert auf true. Beim nächsten "Tick-Durchlauf" wird das erkannt und die neue Sample Rate wird auf dem ADC konfiguriert.

Ich hatte jetzt eingebaut dass das Bricklet regelmäßig die konfigurierte Sample Rate vom ADC ausliest und diese mit der zwischengespeicherten vergleicht um diese neu zu schreiben falls notwendig (setzt auch einfach den bool Wert auf true, um sicher zu stellen dass es sich genauso verhält). Das deutet für mich jetzt darauf hin dass der ADC zwar noch die korrekte Konfiguration hat, allerdings irgendwie anders aus dem Tritt kommt. Das neu setzen der Sample Rate führt dann aber wieder zur Besserung.

Ich mache mir nochmal Gedanken, leider kann ich das überhaupt nicht reproduzieren hier 😐.

Link to comment
Share on other sites

Ich hab jetzt einen Aufbau mit folgendem Testcode hier laufen (5V an Kanal 0 und 12V an Kanal 1 angeschlossen):

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

HOST = "localhost"
PORT = 4223
UID = "Mj8"

from tinkerforge.ip_connection import IPConnection
from tinkerforge.bricklet_industrial_dual_analog_in_v2 import BrickletIndustrialDualAnalogInV2
import time

if __name__ == "__main__":
    ipcon = IPConnection()
    idai = BrickletIndustrialDualAnalogInV2(UID, ipcon)
    ipcon.connect(HOST, PORT)

    idai.set_sample_rate(idai.SAMPLE_RATE_4_SPS)

    while True:
        v1 = idai.get_voltage(0)
        v2 = idai.get_voltage(1)
        
        if not (4950 < v1 < 5500):
            print(f"V1: {v1}")

        if not (11900 < v2 < 12100):
            print(f"V2: {v2}")

        time.sleep(0.25)
        
    ipcon.disconnect()

Ich lasse das jetzt erstmal ein paar Tage laufen um zu sehen ob ich es nicht doch irgendwie reproduzieren kann. Wenn du irgendeine bestimmte Einstellung oder Abfragerate oder so hast mit dem das Problem öfter auftritt sag Bescheid.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...