Danke ihr beiden........
Hi,
nein, bei den Ultraschallsensoren sind einfach (ich glaube 5) Lötaugen, an denen ganz einfach Drähte eingelötet werden können. Die genaue Anschlussbezeichnung findet man in der Dokumentation.
Viele Grüße
ikarus_177
Danke ihr beiden........
Besserwessi:
Hab mal ne Frage:
Ich bin ein bisschen unerfahren und kann mit deiner antwort nur teilweise etwas anfangen aber is es nicht möglich diese Schaltung
Link: http://www.robotmaker.de/linie.html
einfach 3 mal zu bauen???
Weiste ich bau halt am anfang lieber nach anleitung....
Hallo zusammen.................
Noch mal zur betonung ich bin absoluter Neuling also nich Lachen [-X [-X [-X [-X
Ich weiß das es eigendlich nicht hierher gehört aber ich wollte nicht schon wieder einen neuen Thread wegen so was lächerlichem Aufmachen............
Ich hab mal ein erstes Programm geschrieben (Mein erstes überhaupt in Bascom) und ich weiß das da noch viele viele Fehler drinn sind...........
( ehrlichgesagt wundert mich das auch nicht, da ich einfach mal drauf los geschrieben habe)
Zur Info: Ich hab das RN-Control 1.4 Mega32
Ne normale servo zur steuerung und ein 12V Getriebemotor als Antrieb(Ich glaub aber, dass er (so wie ich ihn angeschlossen habe) nur 5V bekommt)
Und für die Sensorik 3*CNY70 mit der Schaltung nach
Link: http://www.robotmaker.de/linie.html
Es ist kein komplettes Programm sondern erst mal nur zur Linienverfolgung........
Code:'Programm zur Linienverfolgung mit 3 CNY70 IR-SENSOREN 'Lenkservo: Config Servos = 1 , Servo1 = Portd.4 , Reload 20 Config Adc = Single , Prescaler = Auto ' Nicht Sicher 'Lenkservo-Port Config Portd.4 = Output Portd.4 = Y 'Motor: Config Pind.5 = Output Portd.5 = X 'CNY70 links Config Porta.1 = Input Porta.1 = Links 'CNY70 mitte Config Porta.2 = Input Porta.2 = Mitte 'CNY70 rechts Config Porta.3 = Input Porta.3 = Rechts Enable Interrupts Dim X As Integer Dim Y As Integer Dim Links As Integer Dim Mitte As Integer Dim Rechts As Integer ' Voreinstellungen: '-Motor aus '-Servo Mittelstellung X = 0 Y = 100 'Taster an portA.0 'Warten bis Taster gesetzt: Bitwait Pina.0 , Set 'Motor ein: X = 1 Do If Links = 1 And Mitte = 0 And Rechts = 1 Then Goto Gerade If Links = 1 And Mitte = 1 And Rechts = 0 Then Goto Rechts If Links = 0 And Mitte = 1 And Rechts = 1 Then Goto Links If Links = 0 And Mitte = 0 And Rechts = 1 Then Goto Halblinks If Links = 1 And Mitte = 0 And Rechts = 0 Then Goto Halbrechts End If Loop Until Pina.0 , Reset Gerade: Y = 100 Rechts: Y = 150 Links: Y = 50 Halblinks: Y = 75 Halbrechts: Y = 125 Gruß oceans94 P.S. bitte nicht Lachen...
Ich hab den Code noch mal geupdatet
Code:'Programm zur Linienverfolgung mit 3 CNY70 IR-SENSOREN 'Lenkservo: Config Servos = 1 , Servo1 = Portd.4 , Reload 20 Config Adc = Single , Prescaler = Auto ' Nicht Sicher 'Lenkservo-Port Config Portd.4 = Output Portd.4 = Y 'Motor: Config Pind.5 = Output Portd.5 = X 'CNY70 links Config Porta.1 = Input Porta.1 = Links 'CNY70 mitte Config Porta.2 = Input Porta.2 = Mitte 'CNY70 rechts Config Porta.3 = Input Porta.3 = Rechts Enable Interrupts Dim X As Bit Dim Y As Integer Dim Links As Integer Dim Mitte As Integer Dim Rechts As Integer ' Voreinstellungen: '-Motor aus '-Servo Mittelstellung X = 0 Y = 100 'Taster an portA.0 'Warten bis Taster gesetzt: Bitwait Pina.0 , Set 'Motor ein: X = 1 Do If Links = 1 And Mitte = 0 And Rechts = 1 Then Goto Gerade If Links = 1 And Mitte = 1 And Rechts = 0 Then Goto Rechts If Links = 0 And Mitte = 1 And Rechts = 1 Then Goto Links If Links = 0 And Mitte = 0 And Rechts = 1 Then Goto Halblinks If Links = 1 And Mitte = 0 And Rechts = 0 Then Goto Halbrechts End If Loop Until Pina.0 , Reset Gerade: Y = 100 Rechts: Y = 150 Links: Y = 50 Halblinks: Y = 75 Halbrechts: Y = 125
Hab mal noch eine Frage:
Was mach ich wenn er gar keine linie findet.
und wie kann ich programmieren das er wenn er z.b nach links weg ist das erkennt un dann nach rechts fährt um wieder nach der Linie zu suchen???
Freu mich über antworten..
Gruß oceans94
Wenn man wirklich die Schaltung verwenden will, müßte man sie 3 mal aufbauen (z.B. mit 3/4 vom LM324). Ich würde allerdings emfehlen analog eingänge zu benutzen, da kriegt man wesenlich mehr Informationen und man braucht im Prinzip auch gar keinen OP. Am besten sollte man die IR LEDs der Sensoren abschaltbar machen. Das wird z.B. beim Asuro so mit 2 Lichtschranken so gemacht.
Bis man erst mal die Linie findet muß man halt suchen. Eine Möglichkeit wäre es z.B. eine Spiralbahn zu fahren. Ist halt ein Kreis mit zunehmenden Durchmesser.
Danke für die Antwort.
Danke für die Info mit dem Liniefinden , aber gibt es auch eine Möglichkeit der Wiederfindung, dass gespeichert wird in welche richtung die linie entwischte und in die wird dann gesteuert....(WIE PROGRAMMIEREN??????????)
Und was meint ihr zu meinem Programm????????
Oder ist es so schlecht, dass ihr um mir zu helfen ein komplett neues schreiben müsstet?
Danke im vorraus
oceans94
Will mir wirklich niemand helfen????
Vielleicht muss ich doch einen neuen thread aufmachen aber das wär mir irgendwie peinlich....wenn ihr versteht was ich meine.....
Ganz so wird das Programm noch nicht funktionieren. Die Aufrufe links, rechts, gerade usw. müßten eher unterprogramme sein die per Gosub aufgerufen werden. Eventuell könnte man die Werte für die Lenkung auch direkt in den IF statemants machen.
Das ist eine ganz grobe Regelung, könnte aber sonst funktionieren.
Im Prinzip wird im Programm (bis auf den oben erwähnten Fehler) schon die richtung gespeichert in die die Linie entwischt ist. Die letzte Servoposition von der Lenkung sollte noch entsprechend der Letzen Information über die Richtung enthalten. Selbst wenn also die Linie Verloren wird, sollte der Bot weiter in die richtige Richtung Fahren und dann hoffentlich spätestens nach einem ganzen Kreis die Linie wiederfinden. Um das Widerfinden etwas zu verbessern könntem man nach einiger zeit (etwa für einen 3/4-kreis) den Lenkeinschalg etwas reduzieren. Dadurch sollte man dann ziehmlich sicher wieder die Linie finden, denn man beginnt dann einen Kreis der den Punkt einschließt an dem man die Linie verloren hat. Das Problem könnte höchstens sein wenn man die Line unter einem zu steilen Winkel wiederfindet und dann fast zwangläufig wieder verliert.
Lesezeichen