INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

CANopen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

12.01.2017, 16:52 (Dieser Beitrag wurde zuletzt bearbeitet: 12.01.2017 17:07 von jg.)
Beitrag #1

Hydrogencarbonat Offline
LVF-User
**


Beiträge: 187
Registriert seit: Apr 2014

2013,2014
2014
DE

XXXXX
Deutschland
CANopen
Hi,

ich benutze eine NI PXI-8461 auf einer NI PXI und habe ein Schreibe- und Lese-VI mit CANopen erstellt.

Ich kann somit Daten auf den Bus senden und auch wieder abrufen. Ich mache dies über SDO.
Wenn ich diese Vis abwechselnd voneinander ausführe, dann klappt auch alles wunderbar (Es wird fehlerfrei geschrieben oder gelesen).
Jedoch möchte ich das Lese-Vi die ganze Zeit laufen lassen und in dieser Ausführungszeit auf den Bus mit dem Schreibe VI mehrmals schreiben,so das diese dann in dem Lese Vi während der Ausführungszeit gelesen werden können.

Ich habe aber das Problem, dass wenn das Lese Vi ausgeführt wird und ich auf den Bus mit dem anderen VI schreibe eine
Fehlermeldung (Fehler 5378:CANopen SDO Read Object.vi) im Lese Vi auftaucht. Irgendwie kollidieren die Telegramme..

Was kann ich dagegen tun?

Gruß
HCO
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
12.01.2017, 17:15 (Dieser Beitrag wurde zuletzt bearbeitet: 12.01.2017 17:19 von Hydrogencarbonat.)
Beitrag #2

Hydrogencarbonat Offline
LVF-User
**


Beiträge: 187
Registriert seit: Apr 2014

2013,2014
2014
DE

XXXXX
Deutschland
RE: CAN Open
Die einzige Möglichkeit, die mir einfällt , um dieses Problem zu umgehen ist mit Globalen Variablen.
Wenn ich während der Ausführungszeit des Read VIs das Schreibe Vi aktiviere, dann könnte ich ein Delay am Anfang des Schreibe VIs einbauen, davor über eine boolsche globale Variable ein False ausgeben, dieses zum Read Vi während der Delay Zeit übergeben und dann das Read Vi über eine Case Struktur mit False deaktivieren.
Jetzt stellt sich nur noch die Frage, ob die globale Variable bei laufenden Read VI ein Wert übergibt?

Habt Ihr noch einen anderen Vorschlag ?

Gruß HCO


Nachtrag: Und nach dem Delay im Schreibe-VI dann wieder über die Globale Variable die Case Struktur im Read- Vi auf True setzen und mit " CAN Open SDO READ" die geschriebenen Werte einlesen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.01.2017, 17:26
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: CANopen
Dafür gibt es eigentlich die Semaphore VIs.

Alternative: Pack dein Lese- und dein Schreib-VI in ein VI mit einer Case-Struktur, mit der du entweder die Ausführung von Lesen oder Schreiben auswählst. Mit diesem "Globale" Lese/SchreibVI ersetzt du alle bisherigen Aufrufe. Da das Lese/SchreibVI immer nur 1x ausgeführt werden kann (solange es nicht auf Reentrant steht), kann auch nur entweder Lesen oder Schreiben ausgeführt werden.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  CANopen VISA Read liefert unerwartete Antwort MarkusS 10 7.422 09.08.2019 12:31
Letzter Beitrag: GerdW
  CANopen VISA kommunikation MarkusS 5 4.731 21.06.2019 14:17
Letzter Beitrag: GerdW
  CanOpen Error Hex 0xBFF62023 Isenwelle2015 2 5.617 05.05.2015 10:45
Letzter Beitrag: GerdW
  CANopen Tutorial Bishop 1 6.108 22.12.2014 19:44
Letzter Beitrag: GerdW
  Kommunikation mittels CANopen Bishop 1 4.170 03.11.2014 12:48
Letzter Beitrag: GerdW
  Float mit CANopen unix1970 4 6.213 16.04.2014 15:50
Letzter Beitrag: jg

Gehe zu: