iSHEEP (Klappe die Zweite) UPDATE 2016-06-10

Die Vorgeschichte
Vorgeschichte überspringen > Post 2 mit aktuellem Projektstatus!
(Einige werden schon den Beitrag unter Konstruktion gelesen haben, Hier Passt eine Chronik aber besser zum Thema)

Ich habe ca. 3 Jahre nicht mehr an meinem Rasenroboter gebaut, da ich einige (für mich) aufwendige Lösungen meiner Probleme gesucht habe. Als ich vor ca 7 Jahren angefangen habe, gab es dieses Projekt hier noch nicht. Auch andere Quellen, waren erst am Entstehen. Deshalb musste ich mir fast alles selbst erarbeiten (Induktionsschleife, Programm mit Bascom in C, Radantrieb mit haltbaren Motoren, ...). Im Roboternetz habe ich damals ein paar Informationen von anderen Roboter Projekten bekommen. Ich habe aber auch viele Fehler gemacht und viel Lehrgeld bezahlen müssen (das ich einen Automower kaufen könnte).

Ich habe immer wieder Kleinigkeiten geändert. Die größten Probleme hatte ich mit den Antriebsmotoren. Angefangen hab ich mit MFA 385er 148:1 (durchgebrant) später 540er Getriebemotoren (haben last nicht standgehalten – Getriebe gebrochen, durch Denso Schneckenradgetriebemotoren von Ebay ersetzt, wesentlich Leiser und Stärker). Mit den stärkeren Motoren sind dann ständig die Räder durchgedreht am Hang (18% Steigung). Deshalb hab ich dann Räder von einem 1:5 Modellauto genommen (16cm Durchmesser). Die Kombination aus Denso Motor und den Rädern ist perfekt!
Ebenfalls hatte ich den Mäher auf einer Alu platte aufgebaut. Da hatte ich aber Probleme mit der Höhe der Schneide und den "kleinen" Rädern und dem Gewicht. Deshalb jetzt ein leichter, flexibler Rohrrahmen.
Mehr kann man, wen es interessiert, im RN-Forum nachlesen. Da hab ich alles Dokumentiert.

Hier mal eine Übersicht meiner Ardumower Vorgängerversionen

Version 1 (MFA 385er 148:1 Antriebsmotoren / 2 Bleiakkus)

V1-1_2016-04-28.jpg


V1-2_2016-04-28.jpg


Version 2 (MFA 540er Antriebsmotoren / 1 Bleiakku)

V2-1_2016-04-28.jpg


V2-2_2016-04-28.jpg


V2-3_2016-04-28.jpg


V2-5_2016-04-28.jpg


V2-6_2016-04-28.jpg


V2-7_2016-04-28.jpg


Version 3 (Denso Antriebsmotoren / Mähwerk leicht geändert / Elektronik verkleinert)

V3-1_2016-04-28.jpg


V3-2_2016-04-28.jpg


V3-3_2016-04-28.jpg


V3-5_2016-04-28.jpg


V3-7_2016-04-28.jpg


V3-10_2016-04-28.jpg


Version 4 (Aufbauten neu angeordnet / schwingendes Gehäuse mit Kollisionssensoren / LiPo-Akkus / stärkerer Mähmotor / 1:5 Modellbau Räder)

V4-3_2016-04-28.jpg


V4-4_2016-04-28.jpg


V4-6_2016-04-28.jpg
 
Aus sheepI wird iSHEEP
(das Ardumower Projekt beginnt für mich)

Dropbox Link mit allen Dateien, Programmen (Arduino), Schaltpläne (Fritzing) und Konstruktion (Autodesk 123D Design)

Nachdem ich mein erstes Rasenmäher-Projekt wegen zu vieler Probleme und entsprechend vieler notwendigen Änderungen auf unbestimmte Zeit (jetzt 3 Jahre) unterbrochen habe, kam nur eine komplette Neuentwicklung für mich in Frage. Zwischenzeitlich habe ich mit diversen Multicopter Eigenbauten gute Erfahrung mit Arduino gesammelt. Da kam mir Ardumower bei meinen Internetrecherchen grade richtig. Das einzige was mich störte, war die Perimeterschleife! Bis V2 kam. Jetzt ist das Projekt meiner Meinung nach Alltags fähig. Und aus Fehlern lernt man bekanntlich.

Also erstmal eine ordentliche Planung!

[ul]
[li]Konstruktion mit leichten Rohrrahmen siehe hier
iSheep-Konst_V1-2_2016-05-02.jpg

[/li]

[li]Aufbau Grundgestell (Komponenten mit leichten Anpassungen aus altem Projekt schon vorhanden, Bleiakku wird noch durch Lipo ersetzt)
IMG_20160427_143621_2016-04-28.jpg


IMG_20160427_143725_2016-04-28.jpg

[/li]

[li]Anferigung Gehäuseunterteil aus Hartschum PVC Platten (OBI)
IMG_20160501_205519.jpg


IMG_20160502_110641.jpg


IMG_20160502_115517.jpg


IMG_20160502_115528.jpg

[/li]

[li]Anfertigung Hauptplatiene
IMG_20160513_184333.jpg


IMG_20160513_184341.jpg


IMG_20160513_184109.jpg


IMG_20160513_184125.jpg


Hauptplatine_Schaltplan.png


Hauptplatine_Leiterplatte.png

[/li]

[li]Anfertigung eines Adapter für Brushless Messerantrieb
IMG_20160521_123143.jpg


IMG_20160521_123131.jpg


Brushless-Adapter-Ardumower_Schaltplan.png


Brushless-Adapter-Ardumower_Leiterplatte.png

[/li]

[li]Montage und Verdrahtung aller Elektrischen Komponenten (Schleifensensor, Sonar, Platienen, Sicherung, Hauptschalter, ...)
IMG_20160515_140053.jpg


IMG_20160516_215149.jpg


IMG_20160516_215310.jpg


IMG_20160521_123152.jpg


IMG_20160521_123202.jpg

[/li]

[li]Programm einspielen (ich muss es nicht mehr selbst schreiben :woohoo: DANKE!!!!)
[/li]

[li]Aubau Perimeter-Generator mit mehr Leistung (1400m² Rasenfläche), Test mit 12V später 24V
IMG_20160430_234355.jpg


IMG_20160501_193336.jpg


IMG_20160501_193353.jpg


IMG_20160501_182745.jpg


IMG_20160501_182727.jpg

[/li]

[li]Testlauf und Programmanpassungen (Indoor)
[/li]

[li]//in Arbeit// Verlegung Begrenzungsschleife (fast 300m Kabel)
Verlegeplan.jpg

[/li]

[li]Umbau vom alten kleinen Messer auf große Messerscheibe (180mm Trennscheibe mit Cuttermesser)
IMG_20160526_1135091280x960.jpg

[/li]

[li]Gehäuse Anfertigung
IMG_20160525_2126351280x960.jpg


IMG_20160525_2229191280x960.jpg


IMG_20160525_2229411280x960.jpg

[/li]

[li]Eibau LiPo Akkus (2x 4Zellen mit je 5000mAh) und zu jedem Akku ein 50W Automatik Ladegerät
IMG_20160526_2113151280x960.jpg


IMG_20160527_1531581280x960.jpg

[/li]

[li]Einbau Odometrie Sensoren und Strichscheiben (D=60mm, 64 Pulse pro Umdrehung)
IMG_20160526_1848021280x960.jpg


IMG_20160526_1848221280x960.jpg

[/li]

[li]Chassi noch mal 3cm hoher gemacht, damit die Ultraschall Sensoren etwas höher sitzen.
Dann folgte die Lackierung vom Chassi.
IMG_20160601_1658261024x768.jpg


IMG_20160603_1806421024x768.jpg


IMG_20160603_1806471024x768.jpg


IMG_20160603_1806571024x768.jpg


IMG_20160603_1836321024x768.jpg


IMG_20160603_1836401024x768.jpg


IMG_20160603_1836501024x768.jpg

[/li]

[li]Bau der Ladestation aus 100x54mm Lüftungskanal. Darin sind ein 18V Netzteil und der Perimeter Sender (Schleifen Generator) untergebracht.
IMG_20160603_1900401024x768.jpg


IMG_20160603_2145431024x768.jpg


IMG_20160603_2146111024x768.jpg


IMG_20160606_2019101024x768.jpg


IMG_20160606_2019251024x768.jpg


IMG_20160607_1143021024x768.jpg


Ladestation-Massstab1-5.pdf

[/li]

[li]
[/li]

[/ul]
Attachment: https://forum.ardumower.de/data/media/kunena/attachments/2109/IMG_20160501_205519.jpg/
 
Zuletzt bearbeitet von einem Moderator:
UPDATE 2016-05-02
So, es gibt wieder Neuigkeiten zum Projekt.

Gestern hab ich den Schleifengenerator fertig gemacht. Erste Tests OK. Ich bekomme aber den Stromsensor ACS712 5A nicht ans laufen.
Hat da jemand einen passenden Code zur Berechnung vom Strom mit ACS712 im Sender V2 Programm.

Der Aufbau ist auch schon weiter gegangen.

!!!Bilder im Post 2!!!
 
Moin Michael,

Genial gemacht!!!
Wo bekommt man denn diese knuffigen Antriebsräder?
Danke für den Tip und Gruß aus Lemförde.

Peter
 
Hallo Peter,

ich heiße übrigens Silas. Michael ist mein Nachname ;) Ist aber nicht das erste mal das das es verwechselt wird. :)

Zu den Rädern: ich hatte sie in einem Modellbauladen gekauft. Die gibt es aber auch noch bei Ebay
Am besten die Mitnehmer gleich noch mit bestellen B)
 
Sorry Silas,

jetzt, wo Du das sagst, erinnere ich mich, genaus das neulich schon mal gelesen zu haben.
Danke und frohes Schaffen ...

Peter
 
Hallo,

ich war die letzten Wochen wieder fleißig ;)

[ul]
[li]Hauptplatine > FERTIG[/li]
[li]Brushless-Adapter > Fertig[/li]
[li]alles montieren und verdrahten > Fertig[/li]
[li]Programm einspielen und Testen > fast Fertig[/li]
[/ul]

Details findet ihr wieder in der Chronik im Post 2 HIER
 
Ich hab mal noch ein Link zu meiner Dropbox Projektdaten im Post 2 hinzugefügt.

Aktuell bin ich gerade dran die Ultraschallsensoren richtig zum laufen zu bringen. Die HC-SR04 scheinen doch immer mal probleme zu machen, das sie Geister sehen :huh: Offensichtlich bin ich da nicht der Einzigste und ich hab schon von ein paar Lösungsansätzen hier im Forum gelesen.
Die ersten 10qm im Garten hat er gestern auch schon gemäht (Versuchsfläche im Freien). :woohoo:

Grüße vom Erzgebrigs-Schaf iSHEEP

Silas
 
So, es gibt wieder paar News.
Wie immer Bilder und Links in der Chronik Post 2

[ul]
[li]Das Problem mit den Ultraschall Sensoren HC-SR04 konnte ich klären. Ich bin den Vorschlägen im Forum gefolgt und habe den
Code:
#define MIN_ECHO_TIME 300
in der "drivers.h" eingestellt. Außerdem habe ich noch die Sensoren nacheinander mit kurzer Pause Abfragen lassen. Das war auch schon im aktuellen Code vorbereitet, aber noch in der "robot.cpp" auskomentiert.
Code:
if ((sonarUse) && (millis() >= nextTimeSonar)){
    //static char senSonarTurn = SEN_SONAR_RIGHT;    
    //nextTimeSonar = millis() + 250;
    nextTimeSonar = millis() + 80;
    
    switch(senSonarTurn) {
      case SEN_SONAR_RIGHT:
        if (sonarRightUse) sonarDistRight = readSensor(SEN_SONAR_RIGHT);
        senSonarTurn = SEN_SONAR_LEFT;
        break;
      case SEN_SONAR_LEFT:
        if (sonarLeftUse) sonarDistLeft = readSensor(SEN_SONAR_LEFT);
        senSonarTurn = SEN_SONAR_CENTER;
        break;
      case SEN_SONAR_CENTER:
        if (sonarCenterUse) sonarDistCenter = readSensor(SEN_SONAR_CENTER);
        senSonarTurn = SEN_SONAR_RIGHT;
        break;
      default:
        senSonarTurn = SEN_SONAR_RIGHT;
        break;
    }   
    
    //if (sonarRightUse) sonarDistRight = readSensor(SEN_SONAR_RIGHT);    
    //if (sonarLeftUse) sonarDistLeft = readSensor(SEN_SONAR_LEFT);    
    //if (sonarCenterUse) sonarDistCenter = readSensor(SEN_SONAR_CENTER);    
  }
In der "robot.h" muss unter //Sensors noch "senSonarTurn" rein
Code:
// sensors
enum {
  SEN_PERIM_LEFT,        // 0..MAX_PERIMETER
  SEN_PERIM_RIGHT,       // 0..MAX_PERIMETER
  SEN_PERIM_LEFT_EXTRA,  // 0..MAX_PERIMETER
  SEN_PERIM_RIGHT_EXTRA, // 0..MAX_PERIMETER
  SEN_LAWN_FRONT,        
  SEN_LAWN_BACK,         
  SEN_BAT_VOLTAGE,       // Volt * 100
  SEN_CHG_CURRENT,       // Ampere * 100
  SEN_CHG_VOLTAGE,       // Volt * 100
  SEN_MOTOR_LEFT,        // 0..MAX_MOTOR_CURRENT
  SEN_MOTOR_RIGHT,       // 0..MAX_MOTOR_CURRENT
  SEN_MOTOR_MOW,         // 0..MAX_MOW_CURRENT
  SEN_BUMPER_LEFT,       // LOW = pressed
  SEN_BUMPER_RIGHT,      // LOW = pressed
  SEN_DROP_LEFT,       // LOW = pressed                                                                                                  // Dropsensor - Absturzsensor
  SEN_DROP_RIGHT,      // LOW = pressed                                                                                                  // Dropsensor - Absturzsensor
  
  SEN_SONAR_CENTER,      // 0..SONAR_TRIGGER_DISTANCE
  SEN_SONAR_LEFT,        // 0..SONAR_TRIGGER_DISTANCE
  SEN_SONAR_RIGHT,       // 0..SONAR_TRIGGER_DISTANCE
  SEN_BUTTON,            // LOW = pressed
  SEN_IMU,             
  SEN_MOTOR_MOW_RPM,
  SEN_RTC,
  SEN_RAIN,
} senSonarTurn;

So funktioniren die Sensoren sehr gut.[/li]

[li]Beim Freilandtest hat sich gezeigt, das er gern Bergab eine Kurve beim geradeausfahren macht. Daraufhin hab ich noch die Odometrie nachgerüstet. Eingeplant war sie schon, aber ich dachte es geht auch ohne. Beim Testen musste ich auf Grund der wenigen Impulse (64P/U) den P-Anteil auf 0,4 zurücknehmen und I auf 0,2. Damit fährt er aber schön gerade.[/li]

[li]Dann kam der Umbau auf ein großes 22cm Messer. Da hat sich gezeigt, das der Brushless Motor (Turnigy 5016 540kv) an seine Grenzen kommt beim Beschleunigen der Masse (2x 180mm Trennscheiben und Aufnahme). Mit der Passenden einstellung im Regler (Turnigy Plush 25A) mit niedrigem Timeing geht es aber gut[/li]

[li]Die Hälfte der Begrenzungssch ist auch schon Verlegt (ca. 100m) Dann kann iSHEEP endlich seine Bahnen ziehen[/li]
[/ul]

Als Nächstes steht dann der Bau vom Gehäusedeckel und der Ladestation auf dem Plan.

Danke an euch für die Tolle Arbeit die ihr hier gemacht habt und die Hilfe die ich bis jetzt bekommen habe.
 
7 Klingen? Da sieht man den Rasenschnitt nur noch unter dem Mikroskop, oder?
Schätze, die 7 Messer ziehen auch mehr Strom als 4.
Deine Umsetzung gefällt mir shr gut. Weiterhin viel Erfolg und danke für die schöne Doku.
Gruss ... Peter
 
Hallo zusammen,

es gibt wieder Neuigkeiten, doch nicht nur Positive :(

Bilder und kurze Beschreibungen wie immer im Post 2 (Chronik)

[ul]
[li]Bei den Testfahrten mit Odometrie (Drehzahlreglung) im Gelände hat sich gezeigt, das die Reglung schnell die Motortreiber L298N an ihre Grenzen bringt. Ohne Strombegrenzung ist mir einer nach kurzer Zeit abgebrannt, da meine Motoren je bis zu 11A ziehen können bei ca. 16V Spannung (4-Zellen LiPo). Wenn ich aber die Strombegrenzung so weit runter nehme, das die Motortreiber nicht überhitzen, bleiben die Räder immer wieder mal stehen, bis Odometriefehler kommt. Die Begrenzung schaltet scheinbar die Reglung ganz ab, statt sanft runter zu regeln.
Also gibt es nur zwei Möglichkeiten das Problem in den Griff zu bekommen.
[ol]
[li]Spannung soweit absenken (DC-DC-Regler 12A) das der Strom auf erträgliche max. 4A geht. Das wären dann ca. 6V, was zu wenig Spannung für eine vernünftige Drehzahl wäre. Außerdem sinkt dadurch auch die Kraft der Motoren um unter die Hälfte.
[/li]
[li]Stärkere Motortreiber die mindestens 11A bei max. 16,8V aushalten. Die Motor Treiber BTS7960 erfüllen diese Anforderungen!
[/li]
[/ol]
Ich habe mich für Variante 2 entschieden. Sobald diese da sind berichte ich wieder.
[/li]

[li]Außerdem ist der Wiederstand der großen Schleife etwas zu niedrig, damit bei 18V ca. 4A fließen, das der selbe Motortreiber L298N wie bei den Antriebsmotoren der Belastung stand halten. Bei 3,6Ohm Schleifenwiederstand sind es aber 5A Last. Das geht durch das Pulsen gerade so, der Treiber wird aber bedenklich warm. Deshalb werde ich auch da einen Motor Treiber BTS7960 einsetzen!
Was aber all meine Befürchtungen ausgeschlossen hat, ist ein stabiles Perimeter Signal im Großen Gartenteil (30mx50m). Selbst im entferntesten Teil zur Schleife (Garten Mitte) habe ich noch ein stabiles Signal mit "smag" von über 20.
[/li]

[li]Ich habe vor den Tests noch die neue Software 1.0a5-Azurit aufgespielt. Da hatte ich irgendwo gelesen, das die Ultraschall-Sensoren Probleme (sieht Geister) gelöst wären. Das kann ich leider nicht bestätigen.
Zuerst habe ich wieder in der "driver.h"
Code:
#define MIN_ECHO_TIME
auf 300 gesetzt und getestet. Der Counter vom Sonar hat dadurch schon weniger Fehlauslösungen, aber noch nicht ausreichend.
Eine deutliche Verbesserung brachte aber das getaktet Aufrufen der 3 HC-SR04 Ultraschallsensoren , wie in dem Post nachzulesen ist.
[/li]
[/ul]

Soweit erstmal zu meinem Projekt iSHEEP.

Liebe Grüße an alle
Silas :)
 
Hallo,

gratuliere zu der wirklich gelungenen Umsetzung. Ich habe da eine Frage zur Materialauswahl. Was ist das denn für eine Hartschaumplatte als Boden? Ich kenne nur die aus dem Hornbach. Diese sind sehr leicht und lassen sich mit einem Cutter Messer schneiden (3mm Stärke). Ist das nicht etwas Dünn für den Boden? Bestehen die gebogenen Seitenteile auch aus dem Material?

Besonders gelungen finde ich die Ladestation. Auf die Idee mit Lüftungsschächten muss man erst mal kommen. Sieht auf jeden Fall sehr gut aus.
 
Hallo Silas super Arbeit
Ich verfolge aus Interesse deine Erfahrung mit den Ultraschallsensoren.
Ich habe auch mit Alexander gesprochen und ihn auf das Thema hingewiesen. Leider kann er die Änderungen der Software im Moment nicht testen weil er kein passenden Mower hat. Er sitzt an der Sunray Software und seine Mower sind schon experimentell zur Zeit auf den Duo umgestellt.

Meine Arduino Programmierer Kenntnisse befinden sich auf den absoluten Minimum. Ich beschäftige mich noch nicht lange damit und muss vieles Nachlesen und lernen. Zum Glück gibt mir Alexander immer wieder Hilfestellung wenn ich mich mal am programmieren versuche.
Schaltpläne zeichnen ist für mich einfacher.
Ich habe mal versucht die Interrupt Einstellungen so zu verändern das diese aktiviert oder deaktiviert werden wen man diese oben in der Mower.cpp auswählt ob diese verwendet werden.
Wichtig ist das nach der Änderung der Einstellungen insbesondere in der HandyApp diese gespeichert werden müssen und der Arduino ausgeschaltet und neu gebootet wird. Änderungen im Laufenden Berieb funktionieren bei den Interrupts nicht.
Die Ausgabe der Einstellungen auf der seriellen Schnittstelle habe ich auch etwas überarbeitet D-Menü X-Einstellungen.
Dort kann man jetzt sehen ob die Interrupt ein oder ausgeschaltet sind. Komischerweise funktioniert das bei mir noch nicht bei der Twoway Odemetrie. Ich weiß noch nicht woran das liegt .Evtl ein Programmierfehler von mir oder Sonstiges. Dafür fehlen mir zum teil die Programmierkenntnisse um den Fehler weiter einzukreisen. Nach der Anzeige in der seriellen Konsole ist bei mir die Twoway Odemetrie immer noch aktiv.

Es sollte jetzt möglich die Interrupts wahlweise für die Odemetrie(evtl noch fehlerhaft),Mähmotor Drehzahl(Interrupt)und R/C ein und auszuschalten.

Die Änderungen sind im Github unter dem Masterzzweig zu finden. https://github.com/Ardumower/ardumower/tree/master/code https://github.com/Ardumower/ardumower/tree/master/code/ardumower https://github.com/Ardumower/ardumower/commit/47ce481f854f19a49b395cb0083a32737c35e031
Gruß
Uwe
 
twoway Odemetrie Fehler scheint weg zu sein zumindest bei funktioniert es jetzt.
Lag vermutlich daran das ich einige Klammern falsch gesetzt habe. (Anfängerfehler ;) )
Update ist im Master hochgeladen zum testen


Gruß
Uwe
 
Hallo Patrick, hallo Uwe,

@ Patrick:
danke für das Lob. Ja, die Platten sind die 3mm, die man mit dem Cutter schneiden kann. Es ist keine stabile Konstruktion. Dafür sind die Alu Profile, um das Chassis steif zu machen. Die Platten sind vollkommen ausreichend!

@ Uwe:
Mit den Interrupts hab ich mich noch nicht so intensiv beschäftigt. Ich denke aber, da ist einiges zu hohlen. So richtig stabil scheint mir das Programm 1.0a5-Azurit noch nicht zu laufen, wenn man so die ganzen Probleme liest bei nicht 100% Ardumower Plattform, wie bei mir.

Aktuell bin ich bei der Implementierung der BTS7960 (IBT_2) Module für die Antriebsmotoren. Erste Tests sehen ganz gut aus. Ich musste nur noch paar Ausgänge Frei legen, da die Dinger mehr Signale brauchen. Ich werde berichten, sobald die Sache Funktioniert.
 
Hallo liebe Gemeinde,

ich habe schon lange nichts mehr von mir hören lassen. Das hat mehrer Gründe:

Ich habe die BTS7960 (IBT_2) Module für die Antriebsmotoren vollständig im Programm eingepflegt. Es funktioniert auch sehr gut (Leistung ohne Ende, bis 100% / 45° Steigungen kein Problem).
Leider sind seit dem ich die 1.0a5-Azurit Software nutze (bessere Ultrasonic Funktion) Probleme mit Abstürzen der Software, wo iSHEEP auf nichts mehr reagiert. Es hilft nur noch Hauptschalter. Der Fehler tritt sehr sporadisch nach 1-2min bis 1-2h auf. Damit ist es unmöglich, iSHEEP auf 1400m² mähen zu lassen :(
Ich habe schon viel versucht um dem Fehler auf die Spur zu kommen. Ich vermute eine Situation, wo das Programm in einer Schleife stecken bleibt. Hardware kann ich ziemlich sicher ausschließen (Interrupt komplett aus Programm entfernt, EMV mit Oszi gemessen im Fehlerfall, ....) Ich weiß mir nicht mehr zu helfen!

Ich trage mich mit dem Gedanke aufzugeben, und das komplette Projekt zu verkaufen (Hardware, Software Doku, ...).
??????Gibt es Interessenten für ca. 600€ (Hardware über 1000€)??????
 
Oben