-         

Ergebnis 1 bis 9 von 9

Thema: ...und noch ein Rasenmäher Roboter.....

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    01.01.2011
    Beiträge
    11

    ...und noch ein Rasenmäher Roboter.....

    Anzeige

    Hallo zusammen!

    Erstmal ein grosses Lob und einen Dank an das Forum , so ganz ohne wäre ich nie soweit gekommen......
    Nach vielen Monaten des mitlesens und bastelns möchte ich nun hier mal mein Projekt 1 vorstellen .
    Es ist ein Rasenmäher geworden .
    Gleich vorweg möchte ich anmerken das das Projekt ohne vorherige Cad Zeichnung entstanden ist , wie an den vielen Fehlbohrungen denk ich auch zu sehen sein dürfte .
    Das nächste Projekt wird dem entsprechend anders , besser geplant !
    Zum Projekt 1 :
    Für das Chassis habe ich Aluprofile verwendet an denen ich Alublech zum Teil mit Nieten zum Teil mit Schrauben befestigt habe ( Bild 1).
    Für den Antrieb habe ich RB 35 Motoren , mit einer Übersetzung 1:100 , verwendet . (Die Räder sind in jedem Baumarkt erhältlich .)
    Gesteuert werden diese mit dem RN Motorcontrol . Die Hauptplatine ist ein RN Control 1.4 .
    Zur Hinderniserkennung habe ich vorn zwei SRF 02 eingebaut , an den Seiten je einen Entfernungssensor Sharp GP2D120 .
    Das Mähwerk wird von einem RB 35 Motor angetrieben ( ohne Getriebe ) , die Messer sind normale Cutterklingen .
    Um seine zu mähende Fläche zu begrenzen verwende ich eine original Induktionsschleife von "automower-center /Endress GmbH ".
    Den Sensor zu Erkennung dieser Schleife habe ich nach der Vorlage aus dem RN Wiki gebaut .
    Programmiert ist das ganze in Bascom .
    Als Stromversorgung dient ein Laptopakku mit 11,1 V und 4800mAh.
    Der "Kopf" war ursprünglich für die Unterbringung des Kompassmoduls gedacht , ist im Moment aber ohne Funktion.....
    So das wars erstmal.....Bilder und Videos werde ich in kürze noch ergänzen.....

    Hier schonmal ein video : http://youtu.be/bWuawaIkeXQ
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Fotos-0018.jpg   2.JPG   20121020_141718.jpg   20121020_141729.jpg   20121020_141821.jpg  

    Geändert von highblackbon (20.10.2012 um 15:57 Uhr)

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.410
    Blog-Einträge
    101
    Klasse! und danke für die Vostellung. Ich mag sowas wirklich gerne sehen!

    Viel Erfolg weiterhin
    Gruß
    Seacher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    23.10.2011
    Beiträge
    27
    Ich kann mich Searcher nur anschließen!

    Danke für diese tolle ideen Anregeung !

  4. #4
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    64
    Beiträge
    12.365
    Das gefällt mir auch sehr gut.
    Wenn man noch nicht alles weiß dann kann man ja die Aufgabenstellung auch von der praktischen Seite her einkreisen.
    Man gewinnt dann dort auch schon rasch Erfahrung.

    Das erste Bauwerk war das aber wohl ohnehin nicht.
    Der Hund verrät mit seinem Verhalten einigen Umgang mit solchen Erscheinungen.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    01.01.2011
    Beiträge
    11
    Hallo...
    Zuerst mal danke für die angenehme Resonanz. Ich hatte schon befürchtet es interessiert niemanden .
    @ Manf - das Projekt lief schon eine Weile , mit dem Chassis hatte ich schon vor zwei Jahren angefangen und das Ganze immer
    als Winterprojekt weitergeführt . Nun hatte ich im letzten Winter einige "Durchbrüche" bzw. helle Momente , wo mir vieles klar geworden ist , und Sachen wie Ulraschallsensor und IR Sensor sich ansteuern liessen. Demnach war ich Frühjahr soweit das Mähwerk zu installieren und die Schleife zu verlegen sowie den Sensor dazu zu bauen .Dannach kam es im Frühsommer zu ersten fahr und mähtests, ich denke dadurch ist der Hund etwas abgehärtet , was das betrifft.
    Es ist wirklich das erste Projekt dieser Art.....davor hab ich mich mit Beamer modding und anderen Kleinigkeiten beschäftigt .

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    10.05.2010
    Ort
    Bruchsal
    Alter
    62
    Beiträge
    85
    Hallo
    Super Teil dass Du da gebaut hast.
    Kannst Du noch mehr Detailbilder, Fotos und eventuel auch das Program hier einstellen.
    Danke
    MfG
    Klaus

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    01.01.2011
    Beiträge
    11
    Mahlzeit , so , wie gewünscht, noch ein paar Bilder und ein Auszug des codes

    Klicke auf die Grafik für eine größere Ansicht

Name:	6.jpg
Hits:	39
Größe:	117,2 KB
ID:	23573Klicke auf die Grafik für eine größere Ansicht

Name:	7.jpg
Hits:	42
Größe:	55,8 KB
ID:	23574Klicke auf die Grafik für eine größere Ansicht

Name:	4.jpg
Hits:	39
Größe:	53,5 KB
ID:	23572

    __________________________________________________ __________________________________________________ _

    Code:
    '###################################################
    ''''''''''''''''''' FAHRPROG 2.1 '''''''''''''''''''
    '###################################################
    
    
    
    Declare Function Srf02_firmwarel(byval Slaveid As Byte) As Byte
    Declare Function Srf02_entfernungl(byval Slaveid As Byte) As Integer
    Declare Function Srf02_firmwarer(byval Slaveid As Byte) As Byte
    Declare Function Srf02_entfernungr(byval Slaveid As Byte) As Integer
    
    $regfile = "m32def.dat"
    $framesize = 100
    $swstack = 100
    $hwstack = 100
    
    $crystal = 16000000                                         'Quarzfrequenz
    '''''''''''''''''''''lcd''''''''''''''''''
    
    Config Lcd = 20 * 4                                         'wir verwenden ein 4 x 20 Zeichen Display
     Cursor On
    
     ' Im I/O Mode wird jeder Prozessor Pin einzeln angegeben
     Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.5 , Rs = Portb.4
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    Config Scl = Portc.0                                        'Ports fuer IIC-Bus
    Config Sda = Portc.1
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Config Adc = Single , Prescaler = Auto , Reference = Internal       'Für Tastenabfrage und Spannungsmessung
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Declare Sub Ind
    Declare Sub Batteriespannung
    Declare Sub Notstopp
    '''''''''''''''''''''''''''''''''''''''''''
    Declare Sub Fahrt1()
    Declare Sub Rechtsfahrn()
    Declare Sub Linksfahrn()
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
     Const Ref = 5 / 1024                                       'Für Batteriespannungsberechnung
     Const Entf = -1
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Dim Entfernungl As Integer
    Dim Entfernungr As Integer
    Dim Volt1 As Integer
    Dim Volt2 As Integer
    Dim Grad As Integer
    Dim Grad2 As Integer
    Dim I As Integer
    Dim N As Integer
    Dim Ind As Integer
    
    Dim Zentrum As Single
    Dim Zentrum2 As Single
    Dim Volt As Single
    
    Dim Grad3 As Single
    Dim Akku As Single
    Dim Akku1 As Single
    
    Dim Himmelsrichtung As Word
    Dim Temperatur As Word
    Dim Zentrum1 As Word
    Dim Strom1 As Word
    Dim Strom2 As Word
    Dim Strom3 As Word
    Dim Wsl As Word
    Dim Wsr As Word
    
    Dim W1 As Word
    
    Dim Wertlow As Byte
    Dim Werthigh As Byte
    Dim I2cdaten(6) As Byte
    Dim V As Byte
    
    Deflcdchar 1 , 31 , 31 , 31 , 31 , 31 , 31 , 31 , 31        ' replace ? with number (0-7)
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Cls
    
      I2cinit
    
      I2cstart
    I2cwbyte &H58
    I2cwbyte 35                                                 'Kennung
    I2cwbyte 2                                                  'Befehl
    I2cwbyte 3                                                  'Motorwahl
    I2cwbyte 0                                                  'Geschwindigkeit
    I2cstop
    Cls
    Locate 2 , 1
    Lcd Chr(1)
    Waitms 200
    Locate 2 , 2
    Lcd Chr(1)
    Waitms 200
    Locate 2 , 3
    Lcd Chr(1)
    Waitms 200
    
    Locate 2 , 4
    Lcd Chr(1)
    Waitms 200
    Locate 2 , 5
      Lcd Chr(1)
     Waitms 200
     Locate 2 , 6
      Lcd Chr(1)
     Waitms 200
     Locate 2 , 7
      Lcd Chr(1)
     Waitms 200
     Locate 2 , 8
      Lcd Chr(1)
     Waitms 200
     Locate 2 , 9
      Lcd Chr(1)
     Waitms 200
     Locate 2 , 10
     Lcd Chr(1)
     Waitms 200
     Locate 2 , 11
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 12
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 13
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 14
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 15
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 16
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 17
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 18
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 19
      Lcd Chr(1)
      Waitms 200
      Locate 2 , 20
      Lcd Chr(1)
      Wait 1
    Cls
    Locate 2 , 3
    Lcd "    moin   =)  "
    
    
    
    Wait 1
    I2cstart
    I2cwbyte &H58
    I2cwbyte 35                                                 'Kennung
    I2cwbyte 2                                                  'Befehl
    I2cwbyte 3                                                  'Motorwahl
    I2cwbyte 0                                                  'Geschwindigkeit
    I2cstop
    Wait 1
    I2cstart
    I2cwbyte &H5A
    I2cwbyte 35                                                 'Kennung
    I2cwbyte 2                                                  'Befehl
    I2cwbyte 3                                                  'Motorwahl
    I2cwbyte 0                                                  'Geschwindigkeit
    I2cstop
    
    
    
    Sound Portd.7 , 400 , 350
    Waitus 500
    Sound Portd.7 , 500 , 650
    Waitus 700
    Sound Portd.7 , 300 , 650
    
    
    For I = 0 To 1                                              ' interne Pullup Widerständ ein,bis auf Batteriespannungsmessungsport
    
    Wait 1
    Cls
    Locate 1 , 1
    Lcd "SRF02 L Ultraschall-Firmware Version:" ; Srf02_firmwarel(&He2)
    
    
        Wait 1
          'Temperatur abrufen
       I2cstart
       I2cwbyte &H58
       I2cwbyte 35                                              'Kennung
       I2cwbyte 44                                              'Befehl
       I2cstop
       Waitms 200
       I2cstart
       I2cwbyte &H59
       I2crbyte Wertlow , Ack
       I2crbyte Werthigh , Nack
       I2cstop
       Temperatur = Makeint(wertlow , Werthigh )
       Grad = Temperatur / 1.6
       Grad2 = Grad + 5
       Cls
    
       Locate 2 , 3
       Lcd "BOARD Temperatur: "
       Locate 3 , 10
       Lcd ; Grad2 ; " C"
       Wait 2
       Call Batteriespannung()
       Cls
       Locate 1 , 1
       Lcd "AKKU Spannung :     " ; Volt ; " Volt"
       Wait 2
    
    
            Sound Portd.7 , 600 , 150
            Waitus 500                                          'BEEP
    Sound Portd.7 , 200 , 350
    Waitms 200                                                  'BEEP
    Sound Portd.7 , 400 , 650
    Waitms 200
    Sound Portd.7 , 200 , 350                                   'BEEP
    Sound Portd.7 , 400 , 250
    Sound Portd.7 , 600 , 300
    Waitms 500
    Sound Portd.7 , 200 , 600
    Waitms 500
    Sound Portd.7 , 400 , 800
    Sound Portd.7 , 500 , 250
     Wait 1
     Config Pina.0 = Input
     Config Pina.1 = Input
     Config Pina.2 = Input
      Cls
          Locate 3 , 3
          Lcd "WALL-E 2.0 ;) "
          Wait 2
       V = 1
    
    Start Adc
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Do
    
           Entfernungr = Srf02_entfernungr(&He0)
    
          Entfernungl = Srf02_entfernungl(&He2)
    
    
          For I = 0 To 4
          Start:
          Wsr = Getadc(0)
          Volt = Wsr * Ref
    
    
          Wsl = Getadc(1)
          Volt = Wsl * Ref
    
          For I = 2 To 500
          Ind = Getadc(2)
          Volt1 = Ind * Ref
          Volt2 = Volt1 * 10000
    
          ''''''''''''''''''''''''''''''''''
         Next I
    
          Cls
          Locate 1 , 1
          Lcd "r " ; 0 ; "ADC: " ; Wsr ;
    
          Locate 2 , 9
          Lcd "l" ; 1 ; "ADC: " ; Wsl ;
          Waitms 100
    
          Locate 3 , 1
          Lcd ": " ; Ind
                If Ind > 5 Then Gosub Ind
    
               If Entfernungl > 50 Then Gosub Fahrt1
               If Strom2 > 1000 Then Gosub Hind3
               If Strom1 > 1000 Then Gosub Hind4
               If Strom3 > 900 Then Gosub Notstopp
               If Entfernungl < 25 And Entfernungr > Entfernungl And Entfernungl > -1 Then Gosub Linksturn
               If Entfernungr < 25 And Entfernungr < Entfernungl And Entfernungr > -1 Then Gosub Rechtsturn
               If Entfernungr < 50 And Entfernungr < Entfernungl And Entfernungr > -1 And Wsl < 80 Then Call Linksfahrn
               If Entfernungl < 50 And Entfernungl < Entfernungr And Wsr < 80 Then Call Rechtsfahrn
               If Entfernungl = -1 And Entfernungr = -1 Then Gosub Fahrt1
    
                If Wsr > 500 Then Gosub Rechtsturn
                If Wsl > 500 Then Gosub Linksturn
                If Wsl > 100 Then Gosub Schnellrechtsfahrn
    
                If Wsr > 400 And Wsl > 400 Then Gosub Hind3
                If Wsr > 100 Then Gosub Schnelllinksfahrn
    
    
    
    
    
             Next I
    
    
    
               Loop
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 3.jpg  
    Geändert von Manf (28.10.2012 um 14:34 Uhr)

  8. #8
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    64
    Beiträge
    12.365
    Ich habe nur den Code in ein Code Fenster geschoben, so bleibt der Thread etwas übersichtlicher.

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    01.01.2011
    Beiträge
    11
    Dankeschön !

Ähnliche Themen

  1. Rasenmäher Roboter
    Von meddie im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 7
    Letzter Beitrag: 15.06.2011, 23:04
  2. Rasenmäher roboter Teile
    Von giftzwerg95 im Forum Asuro
    Antworten: 1
    Letzter Beitrag: 30.07.2010, 20:48
  3. Rasenmäher (noch einer)
    Von Lurchi im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 14
    Letzter Beitrag: 11.05.2010, 22:43
  4. Noch ein Rasenmäher-Projekt
    Von Tiral im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 7
    Letzter Beitrag: 30.01.2009, 20:13
  5. Rasenmäher-Roboter
    Von janustv im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 12.06.2005, 21:05

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •