Roboterforum Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?
18. Mai 2012, 12:28:13
Übersicht Hilfe Suche Kalender Einloggen Registrieren
News: >> Roboterprogrammierer gesucht !? <<

Roboterforum für Industrieroboter Anwender  |  Industrieroboter Helpcenter  |  ABB Roboter (Moderatoren: burlibua, Sven Weyer, rmac)  |  Thema: Roboter während Bewegung von Punkt A nach B stoppen 0 Mitglieder und 1 Gast betrachten dieses Thema. « vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Roboter während Bewegung von Punkt A nach B stoppen  (Gelesen 1289 mal)
RobFan
Neuling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 6


« am: 07. November 2007, 23:03:23 »

Hallo Zusammen,


habe in der Vergangenheit schon Roboterprogramme für S4C+ geschrieben Very Happy, habe jedoch keine Erfahrung mit interrupts und Multitasking angry.

Ich muss die Höhe eines Stapels erfassen um mit dieser Höhe später weiterzuarbeiten.
Nun soll sich der Roboter von pA (ca. 10cm über maximaler Stapelhöhe) nach pB (minimale Stapelhöhe) bewegen.
Während dieser Fahrt soll ein Sensor (Lichtschranke oder Initiator) die Fahrt stoppen (ohne den Programmablauf zu stoppen), die Position speichern und an einer anderen Stelle im Programm weiterarbeiten.

Ist diese Aufgabe mit dem Standard-Lieferumfang der IRC5-Steuerung möglich
oder benötigt man hierfür die Option Multitasking und wie könnte man so etwas Programmtechnisch realisieren?

 hilfe Für Informationen und Anregungen wäre ich dankbar.

Gruß
Robfan
Gespeichert
stromer
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 272


Denken hilft


« Antworten #1 am: 07. November 2007, 23:48:11 »

Hallo Robfan,

für mich hört sich das nach einer klassischen Suchfahrt an. Dafür gibt es bei ABB den SearchL-Befehl. Der liefert Dir die Position an der was gefunden wurde und Du kannst festlegen ob weiter gefahren oder gestoppt wird.
Um an einer anderen Stelle im Programm weiter zu machen musst Du halt selbst verzweigen (wobei ich noch nicht verstanden habe warum es an einer anderen Stelle sein muß).

Probiers mal aus.

Gruß
Stromer
Gespeichert
Sven Weyer
Moderator
Elite Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 912



WWW
« Antworten #2 am: 08. November 2007, 08:56:11 »

Hi Robfan,
wie stromer schon sagte nur in der Doku nach SearchL suchen dann ahst Du Dein Problem schon erledigt. Multitasking ist dafür nicht notwendig. Sollte kein Problem darstellen. Mit der SearchL-Instruktion hast Du alles was Du benötigts. Nu bei der Suchgeschwindigkeit würde ich aufpassen. genauigkeit ist sehr von der Suchgeschwindigkeit abhängig. Aber wenn Du einzelne Stapel hast würde ich eventuell versuchen mit einer definierten Position eventuell zu arbeiten für jede Höhe. Somit musst Du eventuell nicht mit dem Suchen arbeiten sondern kannst nur abfragen ob der eingang vorhanden oder nicht vorhanden ist. Aber dazu kenn ich Deine Applikation nicht genau genug.

Sven
Gespeichert

Wer nichts macht macht keine Fehler!
Wer keine Fehler macht kann nichts daraus lernen!
Wer nichts lernen kann kann sich nicht weiterentwickeln!
Wer sich nicht entwickelt geht unter!
RobFan
Neuling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 6


« Antworten #3 am: 08. November 2007, 17:42:49 »

Hallo Stromer, hallo Sven,

 grinser043 das ist genau der Befehl den ich gesucht habe. Da braucht es natürlich kein Multitasking.

Das mit "an einer anderen Stelle im Programm weitermachen" habe ich nur geschrieben
wegen dem Multitasking und Interrupt. Ist mit diesem Befehl nicht notwendig.

 gutidee Das mit einer definierten Position für jede Stapelhöhe will ich schon machen,
jedoch kann ich nicht davon ausgehen, dass immer ein voller Stapel eingelegt wird und somit muss ich bei der ersten Abholfahrt suchen.

Nochmal vielen Dank für die schnelle und kompetente Hilfe. danke

Werde ab und zu mal reinschauen. Vielleicht kann ich ja auch bei der ein oder anderen Frage behilflich sein.

Gruß
Robfan

P.S. Mich hat's schon gewundert, denn die Automatische TCP-Vermessung des Brenners beim Schutzgasschweissen funktioniert ja auch ohne die Option Multitasking.  applaus
Gespeichert
Sven Weyer
Moderator
Elite Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 912



WWW
« Antworten #4 am: 09. November 2007, 07:03:09 »

Hi RobFan,
Suchbewegungen dauern immer Lange und haben Taktzeit nötig. Meine Idee zu Deinem Thema war nur das wenn Du definierte Stapelhöhen hast und Dein Stapel z.B. eine Höhe von 10 Teile á 75 mm haben könnte man ja z.B. alle 75 mm eine Position haben bei welcher man den gewissen Eingang prüft. Damit würdest Du auf alle Fälle schneller sein. Somit fängst Du oben an und fährst bis zu der Position wo das Signal kommt. Somit weißt Du wo Dein Stapel beginnt.

Nur ein Gedanke!

Sven

P.S. Freut mich das es Dir hier gefällt.
Gespeichert

Wer nichts macht macht keine Fehler!
Wer keine Fehler macht kann nichts daraus lernen!
Wer nichts lernen kann kann sich nicht weiterentwickeln!
Wer sich nicht entwickelt geht unter!
RobFan
Neuling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 6


« Antworten #5 am: 10. November 2007, 20:42:04 »

Hallo Sven,

ich habe deinen Vorschlag schon verstanden OLA. Wird der Roboter aber dann nicht an jeder Position kurz stehen bleiben auch wenn kein Teil vorhanden ist? Oder gibt es da eine andere Möglichkeit zweifel?

Ich hab mir das so gedacht mit SearchL auf den tiefsten Punkt zu fahren (ich hab die Möglichkeit eine Lichtschranke zum abschalten in einem großzügigen Abstand anzubringen damit man mit einer akzeptabeln Geschwindigkeit suchen kann) über den Sensor zu Stoppen und die nächste Position dann mit MoveL genau anzufahren und beim nächsten mal weis ich wo ich hinfahren muss.

Gruß
RobFan
Gespeichert
stromer
Special Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 272


Denken hilft


« Antworten #6 am: 12. November 2007, 10:58:44 »

Hallo Robfan,

ich mach es in der Regel so, dass ich bei einem neuen Stapel von ganz oben anfange zu suchen und mir dann die jeweils gefundene Pos merke.
Bei der nächsten Suchfahrt fange ich dann etwas höher an, als die letzte Pos. Dann hast Du, ausser beim 1. Teil, immer eine recht kurze Suchfahrt.
Noch schneller gehts wenn Du gleiche bzw. bekannte Teile hast und nach der 1. Suchfahrt die Positionen berechnen kannst. Also so ähnlich wie bei Svens Lösung.

Die Geschwindigkeit für Deinen SearchL hängt davon ab, wie rechtzeitig Dein Sensor schaltet. Je früher desto schneller kannst Du fahren. Muss man ausprobieren.

Gruß
Stromer
Gespeichert
Sven Weyer
Moderator
Elite Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 912



WWW
« Antworten #7 am: 12. November 2007, 11:47:14 »

Hi,
jetzt ist die Frage Möchtest Du einen Abstand messen und dabei ein Ergebniss erhalten oder möchtest Du einfach nur wissen ob in einer gewissen Position etwas vorhanden ist oder nicht? Habe Suchfahrten mit SearchL nur dann benutzt wenn ich ein Wert als Ergebniss benötige. Alles andere war mir taktzeittechnisch zu langsam.

Aber bin mir sicher das Du das richtige auswählst. Wink

Sven
Gespeichert

Wer nichts macht macht keine Fehler!
Wer keine Fehler macht kann nichts daraus lernen!
Wer nichts lernen kann kann sich nicht weiterentwickeln!
Wer sich nicht entwickelt geht unter!
RobFan
Neuling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 6


« Antworten #8 am: 13. November 2007, 21:45:49 »

Hallo Stromer, hallo Sven,

so wie Stromer das beschrieben hat würde ich das auch machen, wenn keine einzige Höhe bekannt wäre.

Ich muss ja nur die erste Position suchen ab dann kann ich bekannte Positionen anfahren.

Danke für Eure Vorschläge.

bb1
RobFan
Gespeichert
burlibua
Moderator
Junior Member
*****
Offline Offline

Beiträge: 110


« Antworten #9 am: 26. November 2007, 16:36:10 »

Hallo


Es gibt die Möglichkeit daß die Position wo der Teil gefunden wird  gespeichert wird und bei der nächsten Suchfahrt wird diese (oder um 10mm höher) als Startposition verwendet.
Auch kann man aus der gefundenen Position den reinen Z Höhenanteil holen.
zB
Suchstart.trans.z:=gefunden.trans.z dabei ist Suchstart oder gefunden ein Robtarget 

Natürlich muß man den Suchstart zB bei Nachlegen (Schutzgitter auf) wieder in Anfangsposition bringen

mfG Burlibua
Gespeichert
Seiten: [1] Nach oben Drucken 
Roboterforum für Industrieroboter Anwender  |  Industrieroboter Helpcenter  |  ABB Roboter (Moderatoren: burlibua, Sven Weyer, rmac)  |  Thema: Roboter während Bewegung von Punkt A nach B stoppen « vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS