Chris_the_new
Level-1
- Beiträge
- 20
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
Hi,
ich versuche gerad für eine Übertragung durch Modbus eine REAL in 2 wörd aufzuteilen was aber leider noch nicht so recht klappt!
es sollen im array word 0 die ersten 16 bit des float übertragen werden und im array word 1 die zweiten 16 bit, in der VISU sollen die 2 wörter einfach wieder aneinandergereit werden um das ergebniss auszulesen.
ich hab mir gedacht das es wie folgt funktionieren könnte :
wenn ich die Bits des MD0 anschaue bekomme ich das richtige ergebniss:
MW0 hat aber :
und MW1 :
ich weiß es is ein dummer denkfehler aber mann kenn das wenn man 8H vorm notebook sitzt kennt man sich garnicht mehr aus^^
lg chris
ich versuche gerad für eine Übertragung durch Modbus eine REAL in 2 wörd aufzuteilen was aber leider noch nicht so recht klappt!
es sollen im array word 0 die ersten 16 bit des float übertragen werden und im array word 1 die zweiten 16 bit, in der VISU sollen die 2 wörter einfach wieder aneinandergereit werden um das ergebniss auszulesen.
ich hab mir gedacht das es wie folgt funktionieren könnte :
Code:
VAR
u_sin1 AT %MD0 : REAL := 3.5;
END_VAR
Programm:
IF timeQ THEN
mb_Output_Registers[0] := %MW0;
mb_Output_Registers[1] := %MW1;
END_IF
Code:
01000000011000000000000000000000
Code:
0000000000000000
Code:
0110000000000000
lg chris