Hallo ihr Roboterfreunde,

ich habe ein kleines Problem was mich so langsam richtig zum verzweifeln bringt.
Eigentlich ist alles ganz einfach.
Ich will lediglich zwei Positionen bestimmen.
Einmal X und Y Standpunkt
und
X und Y Zielpunkt!
Ich errechne mir daraus die Weg Koordinaten X und Y Fahrweg
und setzte das in ein Zeigerdiagramm.
Daraus entnehme ich den Quadranten und will mir eigentlich den Drehwinkel errechnen.
Dazu wollte ich mir der Winkelfunktionen behelfen aber das will und will nicht hinhauen. Die gesamte Rechnung stimmt bis zu einem ganz entscheidenen Punkt.
Code:
$regfile = "m128def.dat"
$crystal = 16000000
$baud = 9600

'Sound Portg.2 , 400 , 250

Dim Xst As Single
Dim Xzi As Single
Dim Xw As Single

Dim Yst As Single
Dim Yzi As Single
Dim Yw As Single

Dim Zw As Single
Dim Zw1 As Single
Dim Xqua As Single
Dim Yqua As Single

Dim I As Single

Dim Winkel1 As Single

Xst = 0
Yst = 0

Xzi = 2
Yzi = 3

Xw = Xzi - Xst
Yw = Yzi - Yst

If Xw = 0 And Yw = 0 Then
   Winkel1 = 0
   Print "Wir befidnen uns genau auf dem Nullpunkt"
End If
If Xw > 0 And Yw >= 0 Then
   Winkel1 = 0
   Print "Wir befidnen uns im I Quadranten"
End If
If Xw <= 0 And Yw > 0 Then
   Winkel1 = 180
   Print "Wir befidnen uns im II Quadranten"
End If
If Xw < 0 And Yw <= 0 Then
   Winkel1 = -270
   Print "Wir befidnen uns im III Quadranten"
End If
If Xw >= 0 And Yw < 0 Then
   Winkel1 = 360
   Print "Wir befidnen uns im IV Quadranten"
End If


Print "Der Winkel ist " ; Winkel1 ; "°"
Print "Der Weg auf der X-Achse beträgt " ; Xw
Print "Der Weg auf der Y-Achse beträgt " ; Yw

Xqua = Xw * Xw
Yqua = Yw * Yw

Zw1 = Xqua + Yqua
Zw = Sqr(zw1)

Print "Die Hypotenuse ist " ; Zw

I = Yw / Zw
Print I      '0.832050201 stimmt
Print Yw     '3.0 stimmt
Print Zw     '3.60555124 stimmt auch
I = Sinh(i)  '0.931434269 STIMMT NICHT Eigentlich 0.98281... Warum ???

Print I
I = Rad2deg(i)
Print I
I = I + Winkel1

Print "Das sollte der Winkel vom Ursprung sein " ; I

'Sound Portg.2 , 800 , 125

End
Ab dem Moment wo ich den Sinus aus I errechnen will passt es einfach nicht mehr, dabei ist doch das gar nicht besonderes!
Kann mir irgendwer erklären warum. Ich habe es über Cosinus versucht genau das gleiche Problem. Wenn ich genau den selben Rechenschritt mit dem Taschenrechner nachrechne, mit den gleichen Zahlen etc. komme ich immer auf den richtigen Wert. Damit ich auch weiß welches der richtige Wert ist habe ich das ganze im CAD nachgezeichnet und die Winkel gemessen, dass ist schon glatt peinlich. Au Back und ich wette es ist wieder eine Kleinigkeit!
Schonmal vielen Dank im vorraus.
MfG Simon