LabVIEWForum.de
Werte richtig anzeigen / Problem mit Twincat-DLL - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: Werte richtig anzeigen / Problem mit Twincat-DLL (/Thread-Werte-richtig-anzeigen-Problem-mit-Twincat-DLL)



Werte richtig anzeigen / Problem mit Twincat-DLL - lola2014 - 15.07.2014 10:55

moin,
ich messe mit einem Multimeterklemme Strom eines Motor, leider die Werte, die ich manuel messe stimmen nicht überein mit der Anzeige. die Messwerte sind 4Byte gross.
sieht den VI unten.


RE: Werte richtig anzeigen - jg - 15.07.2014 11:21

Wenn der Messwert 4 byte groß ist, dann solltest du nicht nur 2 Byte (I16) auslesen?!

Gruß, Jens


RE: Werte richtig anzeigen - lola2014 - 15.07.2014 11:40

(15.07.2014 11:21 )jg schrieb:  Wenn der Messwert 4 byte groß ist, dann solltest du nicht nur 2 Byte (I16) auslesen?!

Gruß, Jens

habe ich auch geändert, trotzdem bekam ich andere Werte.


RE: Werte richtig anzeigen - Trinitatis - 15.07.2014 12:01

(15.07.2014 11:40 )lola2014 schrieb:  habe ich auch geändert, trotzdem bekam ich andere Werte.

Hallo Lola,

wie isses mit LB / HB-Vertauschung bzw. LW / HW-Vertauschung?


Gruß, Marko


PS: Kann dein VI leider nicht öffnen.


RE: Werte richtig anzeigen - lola2014 - 15.07.2014 12:25

(15.07.2014 12:01 )Trinitatis schrieb:  
(15.07.2014 11:40 )lola2014 schrieb:  habe ich auch geändert, trotzdem bekam ich andere Werte.

Hallo Lola,

wie isses mit LB / HB-Vertauschung bzw. LW / HW-Vertauschung?


Gruß, Marko


PS: Kann dein VI leider nicht öffnen.

hier als Bilder


RE: Werte richtig anzeigen - rolfk - 15.07.2014 16:09

(15.07.2014 11:40 )lola2014 schrieb:  
(15.07.2014 11:21 )jg schrieb:  Wenn der Messwert 4 byte groß ist, dann solltest du nicht nur 2 Byte (I16) auslesen?!

Gruß, Jens

habe ich auch geändert, trotzdem bekam ich andere Werte.

Die Bildchen beweisen gar nichts! Im ursprünglichen VI hast Du als length zwar 4 bytes angegeben aber einen I16 als letzten Parameter mitgegeben. Aus den Bildchen ist nicht sichtbar ob Du diese Variable nun I32 gemacht hast. Der Typ ist als Adapt To Type konfiguriert und das ist alles was man in den Bildchen sieht. Wenn Du da einen I16 anbietest kopiert die Funktion einfach 4 Bytes in eine Variable die nur 2 Bytes gross ist und überschreibt Speicher den Sie nicht überschreiben sollte!!!!

Aber Dein Problem ist noch fundamenteler!!!

Im der ADS Konfiguration sieht man, dass Deine ADS Konfiguration folgendermasse ist: Port: 11, IGrp: 0x3040010, IOffs: 0x8000036 ist.
Im VI hast Du aber (wenn man auf die HexNotation umschaltet): IGrp: 0x3040030, IOffs: 0x80000000. Und den Port den Du ansprichst ist 301.


RE: Werte richtig anzeigen - lola2014 - 15.07.2014 16:15

(15.07.2014 16:09 )rolfk schrieb:  
(15.07.2014 11:40 )lola2014 schrieb:  
(15.07.2014 11:21 )jg schrieb:  Wenn der Messwert 4 byte groß ist, dann solltest du nicht nur 2 Byte (I16) auslesen?!

Gruß, Jens

habe ich auch geändert, trotzdem bekam ich andere Werte.

Die Bildchen beweisen gar nichts! Im ursprünglichen VI hast Du als length zwar 4 bytes angegeben aber einen I16 als letzten Parameter mitgegeben. Aus den Bildchen ist nicht sichtbar ob Du diese Variable nun I32 gemacht hast. Der Typ ist als Adapt To Type konfiguriert und das ist alles was man in den Bildchen sieht. Wenn Du da einen I16 anbietest kopiert die Funktion einfach 4 Bytes in eine Variable die nur 2 Bytes gross ist und überschreibt Speicher den Sie nicht überschreiben sollte!!!!

Aber Dein Problem ist noch fundamenteler!!!

Im der ADS Konfiguration sieht man, dass Deine ADS Konfiguration folgendermasse ist: Port: 11, IGrp: 0x3040010, IOffs: 0x8000036 ist.
Im VI hast Du aber (wenn man auf die HexNotation umschaltet): IGrp: 0x3040030, IOffs: 0x80000000. Und den Port den Du ansprichst ist 301.

die ADS Info waren nicht für meinen Variable sondern von Ethercat. für den variable lautet die ADS Info: sieh das bild


RE: Werte richtig anzeigen - rolfk - 15.07.2014 17:00

(15.07.2014 16:15 )lola2014 schrieb:  
(15.07.2014 16:09 )rolfk schrieb:  
(15.07.2014 11:40 )lola2014 schrieb:  
(15.07.2014 11:21 )jg schrieb:  Wenn der Messwert 4 byte groß ist, dann solltest du nicht nur 2 Byte (I16) auslesen?!

Gruß, Jens

habe ich auch geändert, trotzdem bekam ich andere Werte.

Die Bildchen beweisen gar nichts! Im ursprünglichen VI hast Du als length zwar 4 bytes angegeben aber einen I16 als letzten Parameter mitgegeben. Aus den Bildchen ist nicht sichtbar ob Du diese Variable nun I32 gemacht hast. Der Typ ist als Adapt To Type konfiguriert und das ist alles was man in den Bildchen sieht. Wenn Du da einen I16 anbietest kopiert die Funktion einfach 4 Bytes in eine Variable die nur 2 Bytes gross ist und überschreibt Speicher den Sie nicht überschreiben sollte!!!!

Aber Dein Problem ist noch fundamenteler!!!

Im der ADS Konfiguration sieht man, dass Deine ADS Konfiguration folgendermasse ist: Port: 11, IGrp: 0x3040010, IOffs: 0x8000036 ist.
Im VI hast Du aber (wenn man auf die HexNotation umschaltet): IGrp: 0x3040030, IOffs: 0x80000000. Und den Port den Du ansprichst ist 301.

die ADS Info waren nicht für meinen Variable sondern von Ethercat. für den variable lautet die ADS Info: sieh das bild

Was soll man da noch sagen? Ursprünglich falsch gemacht, dann behaupten dass man das gefixt hat und als Beweis Bildchen hochladen die gar nichts beweisen und zudem noch ein Bild mit den Informationen zu den falschen Variablen! Da fällt weiter nichts zu empfehlen!


RE: Werte richtig anzeigen / Problem mit Twincat-DLL - lola2014 - 17.07.2014 08:52

moin,
also dami hat es funktionniert.
LG Lola