Jump to content

Recommended Posts

  • 4 weeks later...
Geschrieben

Hallo Zusammen,

 

ich versuche zur Zeit für das Dual Relay Bricklet eine klasse in Labview zu erzeugen (bzw. ich möchte generell von Labview aus auf Tinkerforge Module zugreifen). Als Basis verwende ich die bereits gepostete Library "LV Tinkerforge - LV2010".

 

Hier versuche ich durch kopieren des Template.lvclass eine Dual Relay Bricklet.lvclass zu erzeugen. Ich bin schon soweit, dass ich eine getter und ein setter vi innerhalb der kopierten klasse erzeugt habe (mehr braucht man wohl beim DR-BT nicht :-).

 

Nun versuche ich in einem Test.vi den status der relays abzufragen. Anbei der Source für das getter vi und das test vi.

 

Beim ausführen des Test.vi bekomme ich einen error (91) aus dem getter-vi, dass die Funktion "variant to data" die daten nicht konvertieren kann. Das liegt wohl daran, dass der "data" part leer ist. Wie kann das sein?

 

 

Gruß

LV_TF_DR_test_vi.png.606c5170af6a9ac39c93586a29610d6f.png

LV_TF_DR_get_state.png.42cc9a6fa533ffd248524c9d467b36ab.png

Geschrieben

Da gewünscht habe ich den DC Brick hinzugefügt. Mangels Hardware ist diese Klasse aber ungetestet.

Die Autogenerierung der Bindings ist auch vorran geschritten aber folgende Teile sind noch zu erledigen:

  • Erzeugung des klassen-spezifischen Message-Handlers
  • Erzeugung Getter/Setter-VIs
  • Parsen der Konfigurationsdateien

Ist an dieser Stelle leider noch einiges an Arbeit.

 

Edit: Der Upload des Anhanges wird aktuell mit einem Fehler quittiert. Ich werde es im Tagesverlauf nochmal probieren.

  • 2 weeks later...
Geschrieben

Der Upload funktioniert weiterhin nicht. Folgender Fehler wird ausgegeben:

Ein Fehler ist aufgetreten!
Fehler beim Speichern der Datei, bitte versuchen sie es noch einmal.

Habs mittlerweile auch mehrfach probiert. Hab auch schon über Github nachgedacht aber zum Verteilen von fertigem Code wohl eher weniger geeignet?!

 

Noch kurz zum allgemeinen Stand, bin aus Zeitmangel keinen Millimeter vorran gekommen. :-\ Ich denke das wird sich sicher aber wieder ändern, hoffentlich zeitnah.

Geschrieben
Habs mittlerweile auch mehrfach probiert. Hab auch schon über Github nachgedacht aber zum Verteilen von fertigem Code wohl eher weniger geeignet?!

 

Eigentlich geht das. Es gibt fertige Links, falls du nur den Source verteilen willst oder du kannst auch kompilierte Pakete hochladen, also etwa eine zip-datei o.ä.

  • 2 months later...
  • 4 weeks later...
Geschrieben

Hallo Holy,

 

ich habe es geschafft, aus deiner IO4 Class eine IO16 zu machen. Aber wenn es um den Interrupt geht, dann hänge ich (gedanklich) in der Luft. Könntest du mir (uns) mal ein Bsp. erstellen, wo du mit IO4 z.B. Eingänge und Ausgänge setzt und die Eingänge dann per Interrupt weiter "bearbeitest"(0=Case 0; 1 =Case 1)?

 

Oder fragst du einfach in X ms per getValue.vi (IO16 getPort.vi)die Werte ab?

 

Thx

Geschrieben

Hallo Nero,

 

die Bitschieberei und Arbeit mit Masken hat ihre Tücken ;) Was für ein Anwendungsfall würdest du gerne mal realisiert sehen? Anbei mal ein Beispiel welches folgende Funktionalität realisiert:

  • Pin 0 und 2 als Eingänge und 1 und 3 als Ausgänge
  • Wenn entweder Pin 0 oder 2 aktiv dann Ausgabe von Pin 1
  • Wenn Pin 0 und 2 aktiv dann Ausgabe von Pin 1 und Pin 3
  • Wenn keiner der Eingangspins aktiv dann keine Ausgabe von Ausgangspins

 

Das Snippet im Anhang kannst du auch im Github finden.

IO4_Interrupt_Example.thumb.png.80f7dfbc0f54dbedc7f4bdf277849a78.png

Join the conversation

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

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...