Das liegt nicht an RN-Control sondern an deinem Programm!
Was da schon mal auffällt ist das du Integer Variablen angelegt hast und dann mit Kommazahlen rechnest! Das kann nicht klappen, Integer sind ganze Zahlen! Du musst Single nehmen.
Also ich bin jetzt endlich stolzer besitzer der RN Control
Hab auch schon einiges ausprobiert, also das Testprogramm, dann ne kleine Motorsteuerung und sonstige spielereien.
So nun stehe ich aber vor einem Problem:
und zwar will ich mit dem Sharp Infrarot sensor GB2D12 eine entfernung bestimmen und dazu die Spannung die er ausgibt in nen Wert mit einer Formel ausrechnen.
Nur kommt da nur Schrott raus.
Also der verrechnet sich bei der Formel.
Hier mal nen Codeausschnitt:
Hab unten nochmal ne Rechnung gemacht, die Rechnet er wiederum, also wenn ich Zahlen direkt eingebe, kommt das richtige ergebniss raus. Woran kann das liegen? find den Fehler einfach nicht.Code:'Microcontroller Einstellungen Definieren. $regfile = "m32def.dat" $framesize = 32 $swstack = 32 $hwstack = 32 $crystal = 16000000 $baud = 9600 '******************************************************************************* 'Variablen deklarieren: Dim Ton As Integer Dim Irabstand As Integer Dim Motordrehzahl As Integer Dim Spannung As Single Dim Taste As Byte Const Ref = 5 / 1023 'Für spannungsmessung Declare Sub Irentfernung1() Config Porta.0 = Input 'Für Enfernungsmessung Sharp diesen Port als eingang definieren .... 'Diese Funktion zeigt den Abstand des IR-Entfernungsmessers an Sub Irentfernung1() Local Ws As Word Dim Variablea As Integer Dim Variableb As Integer Dim Variablec As Integer Porta.0 = 0 'internen Pullup Widerstand ein Start Adc Ws = Getadc(0) Spannung = Ws * Ref Print "Die Spannung an Port A Pin 0 beträgt: " ; Spannung ; " Volt" Variablea = Spannung * Spannung ' Berechnung des Abstandes in cm Variablea = 24.24 * Variablea Variableb = 103.636 * Spannung Variablec = 117.57 Irabstand = Variablea - Variableb Irabstand = Irabstand + Variablec Print "Der Abstand zum Sensor beträgt: " ; Irabstand ; " cm" Irabstand = 5 * 24.245 Irabstand = Irabstand - 5.5 Print "Der Abstand zum Sensor beträgt: " ; Irabstand ; " cm" End Sub
Also als Beispielwert:
Bei 0,9 gemessenen Volt kommt raus:
-laut Taschenrechner: 43,96
-laut RN-Control: 115
Ach ja und muss ich den PulUp Wiederstand ein oder ausschalten für den Sensor? bin mir da nicht so sicher. Will auch nix kaputt machen.
Es gibt keine Probleme, es gibt nur Lösungen
Das liegt nicht an RN-Control sondern an deinem Programm!
Was da schon mal auffällt ist das du Integer Variablen angelegt hast und dann mit Kommazahlen rechnest! Das kann nicht klappen, Integer sind ganze Zahlen! Du musst Single nehmen.
Mit bestem Gruß
Frank
Admin Roboternetz.de - RN-Wissen.de - Elektronik-Blog
Überzeugter und begeisterter Elektroauto Fahrer seit 2018
also danke Frank
das war das problem^^
blöde bezeichnungen.
Hab jetzt es geschafft mit nem Ultraschallsensor die entfernung zu bestimmen dann mitm Sharp und joa noch mit nem Magnetsensor
also geht echt relativ einfach
Wobei der IR-Sensor net so genau ist, im vergleich zum ultraschall. vorallem bei geringen entfernungen.
Es gibt keine Probleme, es gibt nur Lösungen
Lesezeichen