photron
Administrators
-
Benutzer seit
-
Letzter Besuch
Alle erstellten Inhalte von photron
-
[Python/Flask][redbrick] Läuft nicht ...
Das der import nicht klappt könnte daran liegen, dass das aktuelle Verzeichnis nicht das ist in dem deine index.py liegt. Füge mal bitte folgendes vor dem problematischen import ein: import sys import os sys.path.insert(0, os.path.dirname(os.path.realpath(__file__))) Das fügt, dass Verzeichnis in dem deine index.py liegt in den sys.path ein in dem Python nach Modulen sucht. Wenn das nicht hilft, dann kannst du Debug aktivieren, was die Python Exception anzeigen sollte die den 500er Fehler erzeugt: application = Flask(__name__) application.debug = True
-
[Python/Flask][redbrick] Läuft nicht ...
Funktioniert dieses Minimalbeispiel, wenn du es als index.py hochlädst: from flask import Flask application = Flask(__name__) app = application @app.route('/') def index(): return '<html><body>Hello World!</body></html>'
-
[Python] keine Sensorwerte mehr
Deinem Script fehlt der Aufruf einer der verschiedenen Client Loop Funktionen: https://pypi.python.org/pypi/paho-mqtt#network-loop Dadurch funktioniert dein Skript mehr oder weniger nur zufällig und daher kommt auch das 2 Minuten Problem. Ersetze in deinem Skript raw_input('Press key to exit\n') # Use input() in Python 3 z.B. durch client.loop_forever()
-
NFC/RFID Java Anfänger
Der short Array beinhaltet die Bytes, die geschrieben werden sollen. Im Beispiel werden 16 Bytes ab Page 5 geschrieben, dann wieder ausgelesen und wieder ausgegeben. Dabei sollte wieder die gleiche Zahlenfolge bei herum kommen. Das Beispiel schreibt erst ab Page 5, da bei den NFC Tags normalerweise diese ersten paar Pages für Verwaltungsinformationen verwendet werden: http://www.tinkerforge.com/de/doc/Hardware/Bricklets/NFC_RFID.html#page-groszen-und-andere-dinge-die-man-wissen-sollte Funktioniert das Beispiel schon nicht, oder hast du das Beispiel verändert und dann funktioniert es nicht mehr? Was für einen NFC Tag verwendest du?
-
[Python] keine Sensorwerte mehr
Wird der Callback denn noch aufgerufen? Verwendest du vielleicht einen MQTT Broker der nach 2 Minuten Schweigen dein Verbindung trennt?
-
[Java] Accelerometer: Fehler in der Dokumentation / Fehlende Konstanten
Ja, das ist eine Unschönheit der API Definition des Accelerometer Bricklets. Das gleiche ist auch beim Load Cell Bricklet passiert. Das hätte ein bool sein sollen, ist aber aus unbekannten Gründen uint8 geworden was in Java als short abgebildet wird. Wie du auf 11 und 12 kommst kann ich nicht nachstellen. Ich bekommen 0 für "LED aus" und 1 für "LED an", so wie erwartet. Wir haben über die Jahre mehrere solcher Unschönheit und teils auch Fehler in der API Definition angesammelt. In der nächste Version der Bindings werden wir alle diese korrigieren. Dies bedeutet einen Änderung/Bruch der bestehenden API, da sich ein paar Parameter- und Rückgabetypen ändern werden. Wir versuchen so etwas immer zu vermeiden. Haben uns aber entschlossen, dass jetzt gesammelt zu korrigieren. Bezüglich des Color Bricklets ist die Lage etwas anders. Das Bricklet gibt 0 für "LED an" zurück. Das lässt sich nicht durch eine Änderung der Bindings korrigieren, da 0 false entspricht und alles andere true ist.
-
[Python] neuerdings Fehler bei Definition einer Callback-Funktion
Teste mal bitte, ob es einen Unterschied macht, wenn du den set_wifi_power_mode() Aufruf kurz vor der Problemstelle entfernst.
-
LoadCell - Messwertunterschiede zwischen ein- und ausgeklapptem BrickViewer
Während du im Brick Viewer die Tabs wechselst usw. bliebt das eigentliche Gewicht, das auf der Wägezelle lastet aber gleich? Der Graph im Brick Viewer wird nur aktualisiert, wenn der Tab auch sichtbar ist. Sprich, wenn du die Wägezelle mit 1kg belastet, den Load Cell Tab abwählst, das Gewicht änderst du dann den Load Cell Tab wieder auswählst, dann springt der Graph. Die Änderungen den Gewichts während der Tab nicht sichtbar war wurden nicht aufgezeichnet. Ich nehme an das hier tritt bei dir nicht auf, da das Gewicht auf der Wägezelle konstant bliebt, oder? Die Messung einer Wägezelle erfolgt analog. An zwei Anschlüssen der Wägezelle wird eine Spannung eingespeist und an den zwei anderen Anschlüssen wieder zurück gemessen. Die Wägezelle tritt dabei als veränderlicher "Spannungsteiler" auf. 5m ungeschirmtes Kabel geben eine prima Antenne ab. Dadurch können externe Störungen die Messung beeinflussen. Auch wird der Spannungsabfall über 5m Kabel die Messung verfälschen. Besteht die Möglichkeit, dass du den Aufbau mit einem deutlich kürzeren Kabel zwischen Bricklet und Wägezelle testet?
-
[Python] Python MQTT
Du registrierst hier die cb_temperature Funktion für den Temperatur Callback: # Register temperature callback to function cb_temperature t.register_callback(t.CALLBACK_TEMPERATURE, cb_temperature) Die t.CALLBACK_TEMPERATURE Konstante identifiziert den Temperatur Callback, damit register_callback weiss worum es geht. Die Bindings rufen dann deine cb_temperature Funktion auf und übergeben die aktuelle Temperatur sobald das Bricklet eine Änderung der Temperatur meldet. Du kannst also deinen publish() Aufruf in die cb_temperature() Funktion verlegen.
-
[Python] neuerdings Fehler bei Definition einer Callback-Funktion
Das Temperature Bricklet hat nicht geantwortet (Timeout). Hast du vielleicht das Temperature Bricklet getauscht und die entsprechende UID in deinem Programm nicht angepasst? Taucht das betroffene Temperature Bricklet noch im Brick Viewer auf? Hast sich vielleicht das Bricklet Kabel gelöst?
-
Python example_callback
Du brauchst raw_input(), ansonsten funktionieren das Callback Examples nicht, wie du schon selbst gesehen hast. Python buffered Ausgaben zwischen, dadurch siehst du sie nicht direkt im stdout.log während das Programm läuft. Du kannst Python auf unbuffered stellen. Dazu muss du hier Python -u als Argument übergeben: http://www.tinkerforge.com/de/doc/Hardware/Bricks/RED_Brick_Program_Tab.html#python Um Temperatur Daten an einen Server zu senden kannst du das Callback Example nehmen, raw_input() und ipcon.disconnect() drin lassen und in der cb_temperature() Funktion den Code einfügen, der die Daten an den Server sendet. Dann das modifizierte Beispiel auf den RED Brick laden und laufen lassen.
-
Python example_callback
In den Beispielen, die den Bindings beiliegen, ist vor dem ipcon.disconnect() Aufruf ein input() Aufruf, der das Skript an der Stelle warten lässt bis eine Taste gedrückt wurde. Dadurch können die Bindings im Hintergrund eingehende Humidity Callbacks empfangen und an deine cb_humidity weiterreichen. Dein Skript konfiguriert alles um Humidity Callbacks zu empfangen und beendet sich dann. Daher bekommst du keine Ausgabe. Du musst also den input() Aufruf wieder einbauen, oder etwas alternatives, dass den gleichen Zweck erfüllt, das Skript vom sich beenden abzuhalten.
-
LoadCell - Messwertunterschiede zwischen ein- und ausgeklapptem BrickViewer
Ich denke nicht, dass es an Spannungsschwankungen am USB Port liegt, denn das Load Cell Bricklet verwendet diese 5V nicht direkt, sondern lokal regulierte 3,3V. Außerdem sagst du ja selbst, dass ein aktiver USB Hub keine Abhilfe bringt. Wie machst du die Kontrollmessung, mit der du erkennst, dass sich das gemessene Gewicht ändert, wenn das Brick Viewer Fenster auf ist? Muss du in Brick Viewer den Tab des Load Cell Bricklets auswählen, oder reicht es auch schon wenn der Setup Tab angezeigt wird?
-
Master Brick erkennt keine Bricklets
Hast du noch einen anderen Brick, um testen zu können ob das Problem am Master Brick oder an den Bricklets liegt? Wobei es schon sehr auf den Master Brick hindeutet, dass keines der drei Bricklets funktioniert. Ansonsten melde dich bitte mit deiner Bestellnummer und einem Verweis auf diesen Thread hier bei info@tinkerforge.com. Du bekommst dann einen neuen Master Brick.
-
Master Brick erkennt keine Bricklets
Das ist komisch, dass das gleich drei Bricklets gleichzeitig betrifft. Sind vielleicht in irgendeinem der Bricklet Stecker an den Bricklets oder dem Master Brick Beinchen krum, wie auf diesem bild hier? http://www.tinkerforge.com/de/doc/FAQ.html#mein-brick-wird-heisz
-
Master Brick erkennt keine Bricklets
Okay, der Master Brick alleine funktioniert also und taucht im Brick Viewer auf. Sobald ein Bricklet angeschlossen ist, dann taucht auch der Master Brick nicht mehr im Brick Viewer auf? Bis du schon mal diesen Punkt im FAQ durchgegangen? http://www.tinkerforge.com/de/doc/FAQ.html#eines-meiner-bricklets-wird-im-brick-viewer-nicht-angezeigt
-
Python-script auf Red-Brick laden
Ahhh! Okay, du kannst hier am Ende der Seite die paho-mqtt-1.1.tar.gz Datei herunterladen: https://pypi.python.org/pypi/paho-mqtt Diese muss du dann auf's RED Brick übertragen. Am einfachsten lädst du sie mit deinem Programm mit hoch. Dann auf dem RED Brick (im Brick Viewer RED Brick Console Tab) in das bin Verzeichnis deines Programms wechseln: cd programs/<id>/bin <id> ist der Identifier deines Programms der in Brick Viewer angezeigt wird. Dort die paho-mqtt-1.1.tar.gz Datei eintpacken tar -xvf paho-mqtt-1.1.tar.gz Ins entpackte Verzeichnis wechseln: cd paho-mqtt-1.1 und per setup.py installieren: sudo python setup.py install
-
Python-script auf Red-Brick laden
Okay ich habe folgendes getestet: - frisches RED Brick 1.7er Image - über WLAN USB Stick eine Internetverbindung hergestellt - im Brick Viewer den Consolen Tab aufgerufen und verbunden, alles weitere passiert auf dem RED Brick - in python scheitert "import paho.mqtt.client" wie erwartet, da paho-mqtt noch nicht installiert ist - paho-mqtt mittels "sudo pip install paho-mqtt" installiert, ohne sudo lädt pip das Package zwar runter kann es dann aber wegen fehlender Rechte nicht installieren - jetzt funktioniert "import paho.mqtt.client" in python Sprich es funktioniert wie erwartet. Ich verstehe nicht, wie pip das bei dir ohne root Rechte installiert haben soll. Welchen Fehler bekommst du denn, wenn du "sudo pip install paho-mqtt" ausführst?
-
Python-script auf Red-Brick laden
ImportError: No module named paho.mqtt.client und ImportError: No module named paho.mqtt.publish sind zwei verschiedene Fehler. Irgendwas stimmt da mit deiner paho-mqtt Installation nicht. Bist du sicher, dass du das richtig installiert hast? Ich habe das hier gerade mal getestet und es funktioniert bei mir. Hast du vielleicht pip install paho-mqtt ohne sudo ausgeführt?
-
Python-script auf Red-Brick laden
Das ist komisch. Der import Fehler scheint nicht direkt in deinem Script zu sein. Was passiert, wenn du auf dem RED Brick Console Tab Python startet und dort einfach import paho.mqtt.client ausführst?
-
MATLAB Callback Error
I tested with R2012a. I think I found the problem. There's a change about how callbacks are handled in R2014a, see http://undocumentedmatlab.com/blog/matlab-callbacks-for-java-events-in-r2014a According to that blog post you need to replace vc = BrickletVoltageCurrent(UID, ipcon); with vc = handle(BrickletVoltageCurrent(UID, ipcon), 'CallbackProperties'); to expose callbacks again. Could you test that?
-
Announcements
Brick Viewer 2.3.2 Ignore errors during locale initialization Change modeless dialog handling to workaround problem on Mac OS X Downloads: Windows, Linux, Mac OS X
-
Veröffentlichungen
Brick Viewer 2.3.2 Fehler bei der Locale Initialisierung werden ignoriert Handhabung nicht-modaler Dialoge geändert, um Problem auf Mac OS X zu umgehen Downloads: Windows, Linux, Mac OS X
-
Python-script auf Red-Brick laden
Wie hast du paho-mqtt installiert? Verwendet dein Script vielleicht Python 2, du hast paho-mqtt aber für Python 3 installier oder anders herum?
-
Brickv 2.3.1 auf MacOSX
Dann würde ich das im Moment auf die Beta schieben. Ich denke es lohnt sich nicht, dass im Moment zu Debuggen woran das liegt, auch wenn das heißt, das dein Master Brick nicht direkt an USB funktioniert, sorry. Wenn das Problem weiter besteht, wenn diese OSX Version aus Beta raus ist, dann sollte wir darauf zurück kommen.