Jump to content

photron

Administrators
  • Gesamte Inhalte

    3.206
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    56

Alle erstellten Inhalte von photron

  1. Alle Funktionen der C/C++ Bindings geben einen int zurück. Dies ist ein Fehlercode, nicht der aktuelle Zustand des Quad Relays. Siehe http://www.tinkerforge.com/de/doc/Software/Bricklets/IndustrialQuadRelay_Bricklet_C.html#api Getter geben Werte in Variablen zurück. Du übergibst industrial_quad_relay_get_value einen Pointer auf ein uint16_t Variable und dahin schreibt die Funktion dann den aktuellen Zustand des Quad Relays: uint16_t value = 0; industrial_quad_relay_get_value(&iqr, &value); printf("%u", value);
  2. Brick Daemon 2.0.8 Fix dynamic loading of libudev on Linux Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  3. Brick Daemon 2.0.8 Dynamische Laden von libudev auf Linux korrigiert Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  4. Es sieht so aus als ob du bricklet_industrial_quad_relay.c und ip_connection.c nicht mitkompilieren würdest. Daher dann auch die Undefined Symbol Fehler.
  5. Brick Daemon 2.0.7 Add OpenWrt package Makefile (thanks to bjoern-r) Debian package now works with libudev0 and libudev1 Use GetSystemTimePreciseAsFileTime() on Windows 8 for more precise log timestamps Fix race between socket select thread and USB poll thread on Windows Fix text of some USB related error messages Don't set SO_REUSEADDR for server socket on Windows Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  6. Brick Daemon 2.0.7 Makefile für OpenWrt Package hinzugefügt (Dank an bjoern-r) Debian Package funktioniert jetzt mit libudev0 und libudev1 Auf Windows 8 wird GetSystemTimePreciseAsFileTime() für genauere Zeitangaben im Log verwendet Race zwischen dem Socket Select Thread und dem USB Poll Thread auf Windows verhindert Text einiger USB bezogener Fehlermeldungen korrigiert SO_REUSEADDR wird für den Listen Socket auf Windows nicht mehr verwendet Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
  7. Der Trick mit getchar() an der Stelle ist, dass das getchar() erst returnt wenn eine Taste gedrückt wird. Wüsste spontan nicht warum das Probleme machen sollte. Was meinst du denn mit "es hat erst funktioniert" als du das geändert hast? Hat sich das Programm dann vorher einfach direkt wieder beendet, oder lief es aber die Callbacks taten nichts? Als Alternative kannst du while(1) { sleep(10); } nehmen, dann belegt dein Programm nicht mehr 100% CPU.
  8. Doch, klar funktioniert das. Du brauchst halt irgendwo einen PC auf dem dem die Shell Bindings als Proxy laufen. Siehe: http://www.tinkerforge.com/de/doc/Software/NetIO_Setup.html#listen-befehl Also "tinkerforge --host meine-ethernet-extension listen" starten. Und um es mit Loetkolbens Darstellung zu sagen: [stack mit Ethernet Extension (4223)] <--- [shell Bindings (4217)] <--- [NetIO App]
  9. Shell Bindings 2.0.3 mit listen Modus. Dazu hier auch eine Anleitung für NetIO: http://www.tinkerforge.com/de/doc/Software/NetIO_Setup.html
  10. Shell Bindings 2.0.3 mit listen Modus. Dazu hier auch eine Anleitung für NetIO: http://www.tinkerforge.com/de/doc/Software/NetIO_Setup.html Loetkolben, mir ist keine Alternative zu NetIO bekannt. Ich muss aber zugeben auch nicht aktiv danach gesucht zu haben
  11. Bindings: C/C++ 2.0.11, C# 2.0.11, Delphi 2.0.13, Java 2.0.12, PHP 2.0.10, Python 2.0.11, Ruby 2.0.11, Shell 2.0.3, VB.NET 2.0.7 Fix signature of edge count functions in IO-16 Bricklet API [all] Add listen mode for handling incoming commands over a TCP/IP connection [shell] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, Shell, VB.NET
  12. Bindings: C/C++ 2.0.11, C# 2.0.11, Delphi 2.0.13, Java 2.0.12, PHP 2.0.10, Python 2.0.11, Ruby 2.0.11, Shell 2.0.3, VB.NET 2.0.7 Signatur der Flankenzählerfunktionen in der IO-16 Bricklet API korrigiert [alle] Listen Modus zur Behandlung eingehender Befehle über eine TCP/IP Verbindung hinzugefügt [shell] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, Shell, VB.NET
  13. Das ist im Prinzip ein bekanntes Problem. Mir war bekannt, dass nach einen Host Standby auf Linux und Mac OS X Bricks an USB nicht mehr richtig kommunizieren. In beiden Fällen hilft ein Neustart des Brick Daemon oder des Bricks selbst. Ich denke im Moment, dass das Problem nicht in brickd selbst liegt. Das ein Neustart von brickd hilft liegt wahrscheinlich daran, dass dann das USB Device neu initialisiert wird durch brickd. Da brickd das Problem aber nicht erkennen kann, kann er auch nicht versuchen dies als Abhilfe zu verwenden. Neu ist, dass das Problem auch Windows betrifft. Ich kann es wie von dir beschreiben auf Windows 8 mit einem Servo Brick und auch mit einem Master Brick reproduzieren. Im Unterschied zu Linux und Mac OS X hilft hier ein Neustart von brickd nicht, sondern nur ein Reset des Bricks hilft. Es ist mir nicht klar wo das Problem genau liegt und wie es zu beheben sei
  14. Ich hatte Java Bindings Versionen 2.0.10 und 2.0.11 unbeabsichtigter Weise mit Java 7 kompiliert, da ich für Tests Java 7 brauchte und dann nicht daran gedacht hatte meine Java Version wieder zurück auf 6 zu setzen. Ich habe gerade Versionen 2.0.10 und 2.0.11 neu mit Java 6 kompiliert und neu hoch geladen. Damit sollte das Problem behoben sein.
  15. CMake kann make und GCC für ARM nicht finden, entweder weil du sie nicht installiert hast, oder weil sie nicht im PATH sind. Siehe folgende Anleitung dazu: http://www.tinkerforge.com/de/doc/Software/Firmwares_And_Plugins.html#compiler-und-tools-installieren
  16. Die Shell Bindings haben einen neuen Befehl gelernt: listen. Dieser öffnet einen TCP/IP Socket auf Port 4217 und nimmt die gleichen Befehle entgegen wie die Shell Bindings selbst auf der Kommandozeile. Hier ein Beispiel: $ tinkerforge listen $ echo "call ambient-light-bricklet f6y get-illuminance" | nc -w1 localhost 4217 illuminance=307 Angehängt eine Shell Bindings Version mit listen Befehl zum Testen. tinkerforge
  17. photron

    [AnalogIn] Averaging

    Nein. Das ganze ist so: Intern wird die Spannung jede Millisekunde gemessen und über 50 Messwerte wird dann der Mittelwert gebildet. Diesen Mittelwert kannst du dann über GetVoltage abfragen oder dir über OnVoltage mitteilen lassen. Über die Periode von OnVoltage kannst du einstellen wie häufig dir neue Werte mitgeteilt werden. Wenn sich der Mittelwert nicht ändert wird OnVoltage nicht aufgerufen. Wenn er sich ändert wird OnVoltage sofort aufgerufen. Dann aber erst frühstens wieder nach der eingestellten Periode. Wenn sich also der Mittelwert ständig ändert bekommst du alle Periode Millisekunden einen Callback. Vor Version 2.0.3 was das Averaging fest auf 50. Dass heißt, der Mittelwert wurde über 50 Messwerte bestimmt und konnte sich daher nur alle 50 msec ändern. Damit wurde dann OnVoltage auch höchstens alle 50 msec aufgerufen, selbst wenn du die Periode von OnVoltage kleiner eingestellt ist. Durch die Mittelwertbildung bedingt werden Änderungen der Spannung im Worst Case erst um Länge der Mittelwertbildung Millisekunden verzögert gemeldet. Mit Version 2.0.3 kann das Averaging jetzt zwischen 1 und 255 Werten eingestellt werden. Dadurch hast du Kontrolle darüber ob du Änderungen ohne Verzögerung haben möchtest, oder glattere Werte. Zu deinem Beispiel, bei einer Periode von 1000 Millisekunden und Averaging von 100 Werten bekommst du im Worst Case eine Spannungsänderung erst nach 1100 Millisekunden durch OnVoltage mitgeteilt. Im Best Case direkt, wenn gerade die Periode angelaufen ist und die Spannungsänderung der 99. der 100 Werte pro Mittelwert ist.
  18. photron

    [AnalogIn] Averaging

    Richtig.
  19. That's just fine. You could use the symbol RANGE_UP_TO_3V instead of the magic value 5, but that's just a matter of taste: $range = $ai->setRange(BrickletAnalogIn::RANGE_UP_TO_3V);
  20. Hast recht, das fehlte. Ist jetzt verbessert
  21. Brick Viewer doesn't know about this new range yet, but you can use your own program to set it.
  22. Bindings: C/C++ 2.0.10, C# 2.0.10, Delphi 2.0.12, Java 2.0.11, PHP 2.0.9, Python 2.0.10, Ruby 2.0.10, Shell 2.0.2, VB.NET 2.0.6 Add edge counters to Industrial Digital In 4, IO-4 and IO-16 Bricklet [all] Make averaging length configurable for Analog In Bricklet [all] Avoid void pointer to function pointer cast warnings with MSVC [C/C++] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, Shell, VB.NET
  23. Bindings: C/C++ 2.0.10, C# 2.0.10, Delphi 2.0.12, Java 2.0.11, PHP 2.0.9, Python 2.0.10, Ruby 2.0.10, Shell 2.0.2, VB.NET 2.0.6 Flankenzähler für Industrial Digital In 4, IO-4 und IO-16 Bricklet hinzugefügt [alle] Länge der Mittelwertberechnung kann beim Analog In Bricklet eingestellt werden [alle] void-Pointer zu Function-Pointer Cast Warnungen unter MSVC vermieden [C/C++] Download: C/C++, C#, Delphi, Java, PHP, Python, Ruby, Shell, VB.NET
  24. siamon, your post seems incomplete. What trouble do you have?
  25. Industrial Digital In 4 sowie das IO-4 und IO-16 Bricklet haben jetzt Flankenzähler.
×
×
  • Neu erstellen...