Arduino Steuerung für die Hellenic Spirit (Rettungsboot Hebekran)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Arduino Steuerung für die Hellenic Spirit (Rettungsboot Hebekran)

      Guten Tag

      Ein Arduino liegt schon länger bei mir, und ich möchte das auch erlernen.
      Mein Aktuelles Projekt ist jedoch für ein Anfänger wie mich noch zuviel. Daher die Frage ob jemand bereit ist mir dabei unter die Arme zu greifen.

      Es geht um eine Kranvorrichtung mit Seilwinden die mein Rettungsboot von der Hellenic Spirit aus ins Wasser herunter lässt. Baubericht

      Die Hardware wäre:

      Servosignal (3 Stufen Schalter).
      1 Elektromotor für den Kranausleger
      1 Elektromotor für die Seilwindenfunktion
      4 Endschalter die die Positionen erkennen.
      Lipo Lader (fertige Elektronik die einschalten muss wenn das Schiff in Grundposition ist)

      Kurz Erklärung:
      Um Das Schiff ins Wasser zu lassen muss zuerst der Kran ausgefahren werden.
      Wenn das erreicht ist müssen die Seile heruntergelassen werden.
      Wenn der Endschalter erreicht ist oder ich die Position in Mittelstellung bringe soll der Motor ausschalten.
      Um den Kran wieder hoch zufahren müssen zuerst die Seile eingezogen werden
      und danach die Kranausleger wieder eingefahren werden.
      Über die beiden Seile (Kabellitzen) darf jetzt der Lipolader aktiviert werden um das Rettungsboot wieder aufzuladen

      Dies einfach mal eine kurze Beschreibung um abzuklären ob jemand von euch das nötige Wissen und die Bereitschaft hat mir dabei zu helfen dieses Projekt erfolgreich umzusetzen. Wenn ja erstelle ich dann noch eine genauere Funktionsliste. Der Kran ist schon im Bau und funktioniert mechanisch schon recht gut.
    • Guten Abend Arno,

      wenn ich dich richtig verstehe arbeitest du mit Motoren. Warum nicht mit Servos? Dann könntest du die Servo Bibliothek nutzen. Zumindest für den einen Motor um diesen zu ersetzen.

      Aber die Vorgehensweise mit Endschaltern verstehe ich soweit.

      Beschäftige mich auch gerade intensiv mit Arduino und helfe dir gerne.

      Grüße
      Leichtmatrose an Neckar, Kocher & Jagst

      Im Trockendock:
      U.S.S. Iowa (BB-61) 1:200 [Semi-Scale] "the big stick"

      In der Werft:
      U.S.S. New York (LPD-21) 1:200 [Semi-Scale] "never forget"
    • Ok ich versuche es über Arduino, danke für eure unterschtützung schon jetzt.
      Ich Arbeite an dem Teil weiter bis es mechanisch funktioniert, und erstelle Pläne damit ihr genau seht was das Ziel ist.
      Die Getriebe Motoren treiben halt gewindestangen an, und weil ich bis anhin solche Steuerungen immer über Relais gebaut habe war das einfacher wie mit Servos. Zu Deiner Antwort...... Der Mensch ist ein gewohnheitstier!
      Der Bau aber schon soweit fortgeschritten das dies so bleiben soll.
      Mir ist bewusst das ich da für den Motor noch etwas zusatz Elektronik benötige.
      Ich denke der Arduino Nano würde sich anbieten, aber das sehen wir dann sobald ich euch die Details zusammengestellt habe.
      Hier einfach noch zwei Fotos damit ihr seht um was es geht.
      Dateien
    • In unserer Werft sind wir an einem ähnlichen Thema dran. Wir lösen das mit 2 Servo´s (Beiboot Düsseldorf). Angeregt von den Kleinseglern, bekommt ein Servo einen langen Arm für das Rauf und Runter und der zweite (bei uns zum Drehen), bei Dir zum ausbringen des Davids. Die Servo´s haben den Vorteil, dass Du Dir die ganze Endschalterthematik sparen kannst, weil man die Servos auf deren Position fahren kann. Wenn man dann noch den Ablauf zeitlich korrekt hintereinanderpackt, dann kannst Du mit einem einzigen Schaltimpuls das Boot aussetzen. Auch die Drehgeschwindigkeit lässt sich da programmtechnisch beeinflussen.
      Damit Du das Rettungsboot auf deiner Fähre laden kannst, würde ich in den Bootsständer Kontaktflächen integrieren und im Beiboot auf der Kielfläche die Gegenstücke / Flächen
      Hier geht´s zu meiner Werftseite
      zu Martin´s Werft

      Voith-Schneiderschlepper ISAR
      Baubericht

      im Hafen liegt
      - Löschkreuzer Elbe
      - Schlepper Homer
    • Moin Arno
      Wie groß ist denn dein Freifallboot?
      Ich schätze jetzt mal um die 15 cm?
      Aus eigener Erfahrung kann ich sagen, das ist schwierig wieder einzufangen...
      Habe selbst ein FRB mit 12 cm für meine ABEILLE. Allerdings mit nur einem Davit und einem -nichtscale- Fanghaken. Von etwa 10 Absetz-Vorgängen konnte ich das Böötchen etwa 1-2-mal wieder einfangen.
      Mit deinen 2 Leinen sehe ich da wenig Chancen...

      Die Idee mit Akku-laden über die 2 Seile hat natürlich was :)
      Aber dazu müsste sichergestellt sein, dass elektrische Verbindung auch bei geparktem Boot noch vorhanden ist. Nix wackelt und zappelt, die Lipo-Lader mögen sowas nicht.
      Ich lade meines klassisch über Krokoklemmen, und da gibts schon Ärger mit schlechtem Kontakt /Oxydation.
      Möglichkeit wäre auch noch, induktiv zu laden (Zahnbürste, Handy...) Aber das braucht dann wohl zuviel Platz.

      Was hast du denn für Antrieb vorgesehen?

      Schönes WE noch
      Peter
    • PeterS schrieb:

      ..........
      Die Idee mit Akku-laden über die 2 Seile hat natürlich was :)
      Aber dazu müsste sichergestellt sein, dass elektrische Verbindung auch bei geparktem Boot noch vorhanden ist. Nix wackelt und zappelt, die Lipo-Lader mögen sowas nicht.
      Ich lade meines klassisch über Krokoklemmen, und da gibts schon Ärger mit schlechtem Kontakt /Oxydation.
      ............
      Nur so ne Idee:
      Schau dir mal die Ladebuchse von MAC-Books an. Nicht unbedingt bei den neuesten, aber vor Jahren gab es da so einen Magnetstecker, der wie von selbst "andockt", wenn man ihn in die Nähe der Buchse am MAC bringt. Ich habe so ein BOOK und seit 9 Jahren noch nie Probleme gehabt. die Verbindung ist immer perfekt, das Netzteil hat 85 Watt, da fließt also auch richtig Strom.

      Natürlich an LAND und auf dem Schreibtisch - aber es geht ja ums Prinzip. Wenn der Stecker beim Abziehen leicht verkantet wird, geht er ohne viel Kraft ab. Da müßte man natürlich mit der Stärke des Magneten experimentieren.

      Wolfgang
    • Moin Wolfgang
      Solche Magnetkontakte kenne ich, sind für Arno evtl. ne Option, er hat deutlich mehr Tiefgang als mein FRB. Ich habe mich mühsam von 40 gr auf etwa 33 heruntergearbeitet, da ist keine Luft mehr für Spielereien aus Metall. Geladen wird per anklemmen am Überrollbügel.
      Eingeschaltet wird mit Reedkontakt im Kiel. Am Davit sitzt ein Magnet, und beim Anheben vom Davit schaltet sich die Anlage ein.

      Der Davit arbeitet mit einem geschlachteten Servo als Getriebemotor und einem Endschalter. Das wars...
      Im Hubzylinder steckt eine Feder, die den Davit die ganze Zeit rausdrücken will. Am Trageseil des FRB ist an passender Stelle ein Knoten, der den Davit hält oder freigibt.
      Spult man das Seil ab, kippt der Davit ab, Boot wird abgesetzt. Beim einziehen des Seils wird am letzten Stück der Davit wieder eingeklappt. Dann brauchts nur noch einen Endschalter.
      (Ging also auch früher schon, ohne NANO & CO. Wobei ich mich der Technik natürlich auch bediene ;)

      Peter
      Dateien
      • FRB.JPG

        (124,81 kB, 20 mal heruntergeladen, zuletzt: )
    • Neu

      Ok. Dann lege ich mal Los.

      In Stellung 1.5ms
      soll nichts passieren.

      In Stellung 1ms
      soll Motor (Kranausleger) herunterfahren bis Endschalter 1 erreicht. Danach 1 Sec Pause und weiter mit Motor (Seilrollen) bis Endschalter 3 erreicht.

      In Stellung 2ms
      soll Motor (Seilrollen) in gegenrichtung laufen bis Endschalter 4 erreicht. Danach 1 Sec Pause und weiter mit Motor (Kranausleger, ebenfalls gegenrichtung) bis Endschalter 2 erreicht.

      -Immer wenn Kranausleger nicht an Endschalter 2 Anliegt soll die Drehleuchte eingeschatet sein. (bitte das ein aus Dimmen einbauen)
      -Wenn durch vibrienen die Seilrollen etwas nachlassen und Endschalter 4 nochmals öffnet darf der Motor nachziehen obwohl = Wenn Endschalter 1 und 2 und 4 offen + Stellung 2ms Dann Seilwindenmotor ein bis Endschalter 4 erreicht
      - Wenn Stellung 2ms und enschalter 2 geschlossen Dann 1m Pause danach Lipo Lader einschalten. (So habe ich sogar die Möglichkeit den Lipo Lader in Stellung 1ms auszuschalten wenn ich weiss das der Akku vom Rettungsboot voll ist.)
      Dateien
    • Neu

      Guten Abend Arno,

      ich versuche mich mal an einer Teilaufgabe. ;)

      - Schalter unten (o. oben) bei 1,0ms
      Würde ich mit einem digitalen Ausgang (z.B. D3) am Ardu steuern. D.h. wenn Signal if(pulseIn(D3)=1000){digitalWrite(D4)=HIGH;} dann müsste der Motor bis zu deinem Endschalter fahren. Der Endschalter könnte dann wiederum deinem Ardu ein Signal geben z.B. an D10 mit if(digitalRead(D10)=HIGH){digitalWrite(D4)=LOW;} um den Motor abzuschalten. Dann käme deine Pause mit 1000ms d.h. delay(1000); und dann deine Seilrollen mit im Sinne einer ähnlichen Vorgehensweise.

      Der Code könnte (aus dem Kopf) so lauten:

      if(pulseIn(D3)=1000) { // Eingangsignal am digitalen Pin 3 (PWM?)
      digitalWrite(D4)=HIGH; // Anschalten des Motors an digitalen Pin 4
      if(digitalRead(D10)=HIGH) { // Abfrage des Endschalters 1 an Pin 10
      digitalWrite(D4)=LOW; // Ausschalten des Motors an Pin 4
      }
      delay(1000); // 1 sek Wartezeit
      digitalWrite(D5)=HIGH; // Anschalten des Motors an Pin 5 (Winden)
      if(digitalRead(D11)=HIGH) { // Abfrage des Enschalters 3 an Pin 11
      digitalWrite(D5)=LOW; // Ausschalten des Motors an Pin 5
      }

      Ist mal so grob aus dem Kopf heraus und ungeprüft. Ich lasse mich gerne verbessern. :nick:

      Grüße
      Leichtmatrose an Neckar, Kocher & Jagst

      Im Trockendock:
      U.S.S. Iowa (BB-61) 1:200 [Semi-Scale] "the big stick"

      In der Werft:
      U.S.S. New York (LPD-21) 1:200 [Semi-Scale] "never forget"
    • Neu

      Zweite Teilaufgabe wäre das ganze Konstrukt in umgekehrter Reihenfolge. Zusätzlich dann noch mit Umpolung. Im ersten Teil ist gegen Minus geschaltet.

      Wenn du den Endschalter so wie beschrieben an einen digitalen Pin legst, dann kannst du das mit der Drehleuchte recht einfach umsetzen. Sollte ungefähr dann lauten

      If(digitalRead(D12)=LOW) { // Abfrage Endschalter 2
      analogWrite(A0)=255; // Drehleuchte an analogen Pin A0 auf 5V
      }

      Der analoge Pin daher, da du diesen dimmen kannst indem du Werte zwischen 0 (0V) und 255 (5V) wählst. Die Dimm-Funktion hab ich jetzt leider nicht im Kopf aber kann man im Netz nachlesen.

      Grüße
      Leichtmatrose an Neckar, Kocher & Jagst

      Im Trockendock:
      U.S.S. Iowa (BB-61) 1:200 [Semi-Scale] "the big stick"

      In der Werft:
      U.S.S. New York (LPD-21) 1:200 [Semi-Scale] "never forget"
    • Neu

      Vorsicht mit den delays und pulsIn Funktionen. Solange das delay abläuft, macht der Arduino auch nichts anderes, ähnlich ist es mit der pulsIn Anweisung.
      Sollte der Arduino noch für andere Aufgaben zeitgleich genutzt werden, geht das oft nach hinten los. Statt dem delay könnte man das über BlinkWithoutDelay lösen.
      In Arbeit: "Bismarck" in 1:200
      Geplant:
      " Prinz Eugen"
      "Admiral Graf Spee"
    • Neu

      Hallo,
      Ich melde mich mal zu Wort.
      Ich stimme Suppenhuhn voll zu.
      Die Funktion pulsin braucht zu viel Zeit. Google mal rc-receiver.h
      Das ist eine lib die ein Forumsmitglied mal geschrieben hat. Damit kannst du an Pin 2 des Nano den Empfänger einbinden. Mit einer Interrupt basierten Rutine wird das Empfängersignal scheinbar im Hintergrund erfast und in ein 8 Bit Wert umgerechnet. Also zwischen 0 und 255. Somit ist 127 der Mittelwert.

      Das zweite ist, einen schaltwert nicht zu genau einzugrenzen. Wenn die Andlage abgefragt wird empfiehlt es sich mit < und > abzufragen. Weil mit ziemlicher Sicherheit der Wert für 1ms nie genau am Sender eingestellt werden kann.

      Gruß Sven
      Gefion (Freier Nachbau einer Kapitänsbarkasse der Tirpitz)
      Mjölnir ein Segelboot (Miramare)
      Morgana eine Pirol aus dem Hause Robbe

      Werft:
      Eisbrecher Stettin

      Home
    • Neu

      Mc Mike schrieb:

      Zweite Teilaufgabe wäre das ganze Konstrukt in umgekehrter Reihenfolge. Zusätzlich dann noch mit Umpolung. Im ersten Teil ist gegen Minus geschaltet.

      Wenn du den Endschalter so wie beschrieben an einen digitalen Pin legst, dann kannst du das mit der Drehleuchte recht einfach umsetzen. Sollte ungefähr dann lauten

      If(digitalRead(D12)=LOW) { // Abfrage Endschalter 2
      analogWrite(A0)=255; // Drehleuchte an analogen Pin A0 auf 5V
      }

      Der analoge Pin daher, da du diesen dimmen kannst indem du Werte zwischen 0 (0V) und 255 (5V) wählst. Die Dimm-Funktion hab ich jetzt leider nicht im Kopf aber kann man im Netz nachlesen.

      Grüße
      Das wird so einfach nicht zu lösen sein. Wenn ein Rundumlicht mit 4 LEDs programiert werden soll, brauchst du 4 PWM taugliche pin. Beim Nano sind das glaube ich 3,5,7,11 diese lassen sich dann mit analogWrite dimmen.
      Der gewünschte effekt tritt aber nur auf wenn ich die erste LED ausdimme, die zweite voll an ist, und die dritte an dimme. Sobald die dritte voll leuchtet wird die vierte angedimmt umd die zweite ausgedimmt und so weiter. Das alles ohne Schleifen und delays.
      Das geht. Ist aber eine Hausnummer.
      Dateien
      Gefion (Freier Nachbau einer Kapitänsbarkasse der Tirpitz)
      Mjölnir ein Segelboot (Miramare)
      Morgana eine Pirol aus dem Hause Robbe

      Werft:
      Eisbrecher Stettin

      Home
    • Neu

      Moin,

      Danke für eure Rückmeldungen und Anmerkungen. Stimmt alles was ihr sagt. Meine Intention war, dass Arno eine Funktion anschalten will und wenn diese fertig ist dann die zweite kommt. Dann kann man auch mit pulseIn und Delay arbeiten.

      Ich habe eine Arduino Lichtsteuerung programmiert mit pulseIn und millis(), da habe ich auch das Problem mit = und <> beachtet. :thumbsup:

      Ich sehe, wir bekommen gemeinsam Arnos‘ Problem gelöst, hoffe er sieht das auch so.

      @Eichner Grüße in den hohen Norden aus dem Süden. :moin:
      Leichtmatrose an Neckar, Kocher & Jagst

      Im Trockendock:
      U.S.S. Iowa (BB-61) 1:200 [Semi-Scale] "the big stick"

      In der Werft:
      U.S.S. New York (LPD-21) 1:200 [Semi-Scale] "never forget"