Jump to content

Robin

Members
  • Gesamte Inhalte

    30
  • Benutzer seit

  • Letzter Besuch

Robin's Achievements

Newbie

Newbie (1/14)

0

Reputation in der Community

  1. Der Chip auf dem Controller ist jedenfalls nachträglich unkenntlich gemacht. Da hat jemand die Beschriftung abgeschliffen. Wahrscheinlich ist das kein spezieller IC zur Steuerung der Kette, sondern ein Mikrocontroller (erkennbar an den Pins mit der Beschriftung ISP). Anhand des Platinenlayouts könnte man möglicherweise den Hersteller und somit auch den Typ herausfinden und über einen passenden Programmer ein eigenes Programm schreiben. Das ist natürlich sehr aufwändig und wahrscheinlich auch nicht erfolgreich. Sind die Fernbedienungen denn alle gleich? D.h. kannst du mit einer Fernbedienung jeden der Controller steuern? Dann könntest du, wenn auch unschön, jeden Infrarot Empfänger nahe bei den anderen herausführen. Du schreibst, dass es dir zu riskant ist die Massen zusammenzuführen. Eventuell wäre dafür ein stärkeres Netzteil und somit die Versorgung aus einem einzigen Netzteil die Lösung, um nur einen Infrarotempfänger zu nutzen.
  2. Werden die Bricks vielleicht im Gerätemanager angezeigt und es fehlt ein Treiber? Sollte natürlich nicht passieren, wenn der erste Brick schon geflasht werden konnte, könnte aber ein erster Schritt zur Erkennung des Problems sein. Nur zur Sicherheit: Beim Flashen hast du keine Bricks aufeinander stecken?
  3. Sitzt der unbedruckte Chip auf der Kette oder im Controller? Sitzen ein oder mehrere Chips auf der Kette? Wenn die Chips auf der Kette unbeschriftet sind, könnte es helfen den Controller zu öffnen und dort nach erkennbaren Chips zu suchen. Vielleicht kann man darüber das Protokoll der Kette ermitteln. Fotos können auch helfen.
  4. Gemacht habe ich das mal in Python. Dummerweise habe ich die Bibliothek nicht mehr gefunden. Mit den Benutzerdefinierten Zeichen des 20x4 Displays funktionierte das jedenfalls.
  5. Hallo, nachdem ich vor einiger Zeit auf Arch Linux umgestiegen bin, wollte ich den Brick Viewer dort wieder installieren. Da dort die Debian Pakete natürlich nicht funktionieren wollte ich die Installation deshalb wie unter http://www.tinkerforge.com/en/doc/Software/Brickv_Install_Linux.html#from-source beschrieben durchführen. Dies schlägt allerdings fehl mit dem Fehler: Traceback (most recent call last): File "build_serviceproviders.py", line 30, in <module> import urllib2 ImportError: No module named 'urllib2' Ein wenig Recherche brachte zu Tage, dass urllib2 nur unter Python2 verfügbar ist. Arch verwendet jedoch standardmäßig mit dem Befehl python die Version 3.x. Auch ein expliziter Start mit python2 brachte nicht den gewünschten Erfolg und es trat wieder die selbe Fehlermeldung auf. Im Source fand ich dann die zahlreichen system Aufrufe, die z.B. in der build_ui.py in Zeile 79 stehen: system("python build_serviceproviders.py") Das Problem ist nun aber, dass Arch an dieser Stelle die Datei natürlich wieder mit Python 3 ausführt, da die Version 2 an dieser Stelle nicht explizit übergeben wird. In der Datei build_serviceproviders.py wird nun aber zum ersten Mal eine Bibliothek eingebunden, die nicht unter Python 3 verfügbar ist. Somit stürzt der Build Vorgang ab. Ich schlage daher vor den Code so anzupassen, dass Python über den Befehl python2 aufgerufen wird. Auf Debian funktioniert das so weit ich weiß auch und unter anderen Linux Distribution (z.B. Arch) können so Probleme vermieden werden. Der Workaround sieht zurzeit wie folgt aus: [*]Den Symlink zu Python3 löschen: rm /usr/bin/python [*]Den Symlink zu Python2 erstellen: ln -s python2 /usr/bin/python Da ich aber nicht weiß, wo auf meinem System möglicherweise erwartet wird, dass der Befehl python die Version 3.x aufruft habe ich diese Änderung nach dem Build wieder rückgangig gemacht. Robin
  6. Hast du schonmal versucht den Brick sicher in den Bootloader Modus zu bringen, indem du die beiden Taster gleichzeitig drückst? Vielleicht kannst du dann die Firmware neu flashen. Ansonsten könnte es auch ein Kurzschluss sein (sieh dir mal die Bricklet Stecker an, ob da Kontakte aneinander kommen). Bist du sicher, dass die USB Buchse auf dem Brick in Ordnung ist? Um das zu testen könntest du mal beide Bricks aufeinander stecken und den funktionierenden als unteren einsetzen.
  7. Ich würde mal sagen, dass nicht das Display ausgeht, sondern es durch das Betriebssystem ausgeschaltet wird. Wenn du es dann antippst wird die Maus damit bewegt und das Betriebssystem schaltet den Bildschirm wieder ein. Ist es vom RED getrennt funktioniert das natürlich nicht mehr. Ich würde mal irgendwo bei den Energieeinstellungen oder dem Bildschirmschoner nachsehen. Ich weiß aber nicht, inwieweit das TF Image mit einer GUI zur Konfiguration ausgestattet ist. Zum Testen könntest du statt dem Display einfach eine USB Maus anschließen und die bewegen, sobald der Bildschirm dunkel wird
  8. Auch wenn es etwas weniger modern ist: Was spricht eigentlich gegen einen herkömmlichen QR Code? Der hat vorallem den Vorteil, dass er von mehr Handys unterstützt wird...
  9. Hast du die Steckplätze der Bricklets schonmal vertauscht?
  10. Hast du ein anständiges Netzteil am Stapel? Ich habe immer das Problem, dass ein Stapel mit einer Ethernet Extension mit einem billigen Handy Netzteil regelmäßig ausfällt und nur noch Stecker ziehen hilft. Der selbe Stapel mit einem Netzteil des angebissenen Apfels läuft problemlos durch.
  11. Möglicherweise wirst du Probleme mit der Geschwindigkeit bei der Übertragung bekommen. Je nach System ist diese nichtmal konstant und mal kommt dein Signal etwas früher, mal etwas später an. 1000 Aktualisierungen pro Sekunde würde ich per USB in Echtzeit nicht unbedingt machen wollen, sondern eher eine Tonfolge übertragen und diese dann abspielen lassen. Das kann das Bricklet aber wahrscheinlich nicht.
  12. Mit der Extension geht das nicht aber da soll es bald ein neues Bricklet geben (http://www.tinkerforge.com/en/blog/2015/5/27/sneak-preview:-11-new-bricklets). Sicher dass dein Arduino ein RS232 und keinen UART hat? Bei einem UART müsstest du noch einen Pegelwandler (MAX232) einsetzen.
  13. @tinkerforge: Ich bin mit meinem Blog vor einiger Zeit von der tk Domain auf eine de Domain umgezogen. Da die tk domain nun ausgelaufen ist und ich sie auch nicht mehr neu registrieren kann, verweist sie jetzt auf irgendwelche zwielichtigen Seiten. Es wäre also gut, wenn ich die Verlinkung mal bei Gelegenheit auf http://blog.smartnoob.de/2013/05/24/carrera-bahn-computergesteuert/ ändern könntet.
  14. Eins Vorweg: Zu den Motoren (Schrittmotoren) und den Bricks kann ich so jetzt nichts sagen. Normalerweise öffnet man eine IP Connection pro Deamon, als falls du das nach wie vor für deinen 3D Drucker brauchst eine IPcon zu der du alle 3 Stepper Bricks initialisierst. Am Ende deines Programms schließt du die Verbindung dann wieder. Sonst bleibt die immer offen. Details über die IP Connection kannst du in der Dokumentation zu jeweiligen Programmiersprache unter Misc => IP Connection nachlesen. Für C wäre das unter http://www.tinkerforge.com/en/doc/Software/IPConnection_C.html zu finden. Eine Andere Sache die dir aber vermutlich Probleme bereiten wird ist der fehlende Buffer. Soweit ich weiß kann man nicht mehrere Befehle Vorweg senden. Als ich meinen 3D Drucker geplant habe, hatte ich auch darüber nachgedacht was mit TF zu machen, da dann aber genau aus dem Grund aufgegeben. Gerade wenn du sehr präzise und feine Strukturen fahren willst, müssen die X und Y absolut synchron arbeiten. Bei TF musst du aber jeden Stepper nacheinander ansprechen. Dazwischen kann es schonmal zu Verzögerungen kommen, die z.B. dafür sorgen würden, dass die Y Achse etwas weiter ist als die X Achse. Deshalb werden einem 3D Drucker immer mehrere Positionswerte in den Buffer geschrieben, sodass der Drucker bereits mit den nächsten Werten arbeiten kann. Ehrlich gesagt würde ich TF Hardware in dem Punkt als zu ausgelastet ansehen. Bei einem 3D Drucker berechnet normalerweise nicht der Rechner den Verfahrweg, sondern das Treiberboard. Der Rechner liefert nur die Zielpositionen im GCODE. Ohne jetzt hier TF schlecht reden zu wollen, würde ich dir Empfehlen für einen 3D Drucker andere Hardware wie einen Arduino zu verwenden. Dazu gibt es dann auch bereits fertige Treiberboards wie RAMPS.
  15. Die neuen Bricklets sind heute angekommen. Jetzt funktioniert alles. Danke für den schnellen Austausch.
×
×
  • Neu erstellen...