Python FishFa40 Probleme

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Benutzeravatar
fish
Beiträge: 137
Registriert: 01 Nov 2010, 17:19
Wohnort: Wiesbaden
Kontaktdaten:

Python FishFa40 Probleme

Beitrag von fish » 30 Jul 2011, 16:51

Ich habe gerade FishFa40 für Python heruntergeladen und damit ein paar Probleme. :mrgreen:
Wenn ich das RoboInterface starten möchte nehme ich OpenInterface(). Es wird USB 0 0 angezeigt egal ob der Computer mit dem Interface verbunden ist. (Das ansprechen klappt aber auch angeschlossen nicht).
Was bedeuten die Argumente der Funktion OpenInterface TypNr und Nr?

@UMueller: Dein FishFa40.py missachtet äußerst vielfältig die Python Stiel Vorgaben PEP 8. Das fängt bei der Einrückung an geht über Funktionnamen und Docstrings. PS: Man muss sich nicht komplett an die Stielvorgaben für Python halten, allerdings erleichtert es jedem anderen die Benutzung und Veränderung des Codes.
http://py4ft.weebly.com Programmiere Fischertechnik mit Python

UMueller
Beiträge: 220
Registriert: 31 Okt 2010, 22:58

Re: Python FishFa40 Probleme

Beitrag von UMueller » 30 Jul 2011, 17:39

Hallo @fish,

zu OpenInterface : Einfach mal beiliegendes Handbuch lesen.

Zu Stiel Vorgaben (?Stielvorgaben) was ist das??
Wenn der Python Programmierstil gemeint sein sollte : Python verlangt Einrückungen, der Rest ist verhandelbar.
Das schöne an dem zitierten Download ist die Tatsache, dass die Source beiliegt, man kann sie nach Herzenlust und eigenem Stilempfinden editieren.

Gruß Ulrich Müller

PS Man kann natürlich auch ein Errorhandling in seine Sources einbauen, dann kommt ein USB(0,0) nicht zu Unzeit.

Benutzeravatar
fish
Beiträge: 137
Registriert: 01 Nov 2010, 17:19
Wohnort: Wiesbaden
Kontaktdaten:

Re: Python FishFa40 Probleme

Beitrag von fish » 31 Jul 2011, 16:36

Bei mir funktioniert es immer noch nicht. RoboPro und umFishDP40 laufen problemlos. Verwende ich allerdings FishFa40.py mit IDELE und Python 3.1.2 kann ich normal FishFa40 importieren, Die Klasse FishFace initialisieren und OpenInterface starten (mit beliebigen Argumenten, solange für USB). Es kommt keine Fehlermeldung, allerdings auch keine Reaktion des Interfaces. Frage ich die Variable iHandle des Objekts enthält sie den Wert -536870911 welcher binär geschrieben '-0b11111111111111111111111111111' ist, laut der Dokumentation soll iHandle einen Wert von 1-8 enthalten (richtig?).

Was läuft bei mir falsch?

Wegen dem Python Programmstil hast du recht, auch wenn andere Leute anderes verhandelt haben.
http://py4ft.weebly.com Programmiere Fischertechnik mit Python

UMueller
Beiträge: 220
Registriert: 31 Okt 2010, 22:58

Re: Python FishFa40 Probleme

Beitrag von UMueller » 31 Jul 2011, 17:05

Hallo,

welches System verwendest Du denn?
Bei mir läuft Vista 32bit mit Python 3.1.1 mit umFish40.DLL, RoboPro 2.1.4.2 und
Win7/64bit mit Python 3.2.1 mit umFish40.DLL v4.3.77 in \SYSWOW64 und Python -> Win x86 Installer
mit Robo Pro 3.1
Die Fehlermeldung ist ein allgemeiner Openfehler
evtl. noch ein from ctypes import * dazu nehmen, bei mir läufts auch ohne

Gruß Ulrich Müller

Minimale Eingabe mit IDLE Prompt
from FishFa40 import *
ft = FishFace()
ft.OpenInterface()
.... USB(0,0)
ft.SetMotor(1,1)
ft.Pause(1234)
ft.CloseInterface()

läuft bei mir

Benutzeravatar
fish
Beiträge: 137
Registriert: 01 Nov 2010, 17:19
Wohnort: Wiesbaden
Kontaktdaten:

Re: Python FishFa40 Probleme

Beitrag von fish » 31 Jul 2011, 18:32

Hallo UMueller,

ich habe dein Minimalbeispiel getestet, auch noch mit extra ctypes import aber wieder der -53... Fehler.

mein System:
  • Windows Xp 32bit
  • Python 3.1.2
  • IDELE 3.1.2
  • RoboPro 3.0.4 BETA
  • FishFa40.py in der Version vom 03.01.10
  • umFish40.ddl 4.1.61.1 in WINDOWS\system32
Hoffe das hilft dir weiter mir zu helfen.
http://py4ft.weebly.com Programmiere Fischertechnik mit Python

UMueller
Beiträge: 220
Registriert: 31 Okt 2010, 22:58

Re: Python FishFa40 Probleme

Beitrag von UMueller » 31 Jul 2011, 19:39

Hallo,

Robo Pro sollte auf v3.1.2 upgedatet werden, da es andere Treiber und eine ander Schnittstelle enthält
Das Robo Interface bekommt dann die Firmware Version v1.75.0.04
und das umFish40 mit v4.3.77 verwenden.

Zugegeben der Versionwirrwar ist gräßlich, aber tröste Dich beim TX Controller ists noch schlimmer. Da läuft umFish50.DLL gar nicht im RoboPro 3.1.2 Umfeld.

Vielleicht ist es das Beste RoboPro auf Version 2.1.4.2 zurück zu setzen. (siehe Beschreibung Reset über Seiten sprachen.htm).

Gruß Ulrich Müller

Benutzeravatar
fish
Beiträge: 137
Registriert: 01 Nov 2010, 17:19
Wohnort: Wiesbaden
Kontaktdaten:

Re: Python FishFa40 Probleme

Beitrag von fish » 31 Jul 2011, 20:10

Danke UMueller, es läuft nach installation von RoboPro 3.1.2 und der neuen dll.
http://py4ft.weebly.com Programmiere Fischertechnik mit Python

Antworten