Vielen lieben Dank euch!
Ich werde es das nächste mal wenn ich dran bin probieren können!
Vielen lieben Dank euch!
Ich werde es das nächste mal wenn ich dran bin probieren können!
Das ist keine MultiTask anwendung. Das ist ein Trapproutine die im Bewegungstask ausgeführt werden kann.
Ich Fürchte ich verstehe es nicht
Ich hab ein proc was wie folgt aussehen kann
PROC RB4_Ablegen()
MoveAbsJ RB4_AchsSafeposition,Speed_Norm,z50,Sauger_Mitte\WObj:=Rollenbahn_4;
MoveL RB4_Messposition,Speed_Norm,z50,Sauger_Mitte\WObj:=Rollenbahn_4;
Sauger_runter;
!Messfahrt auf Kundenwunsch!
MoveL RB4_Messposition,Speed_Norm,fine,Sauger_Mitte\WObj:=Rollenbahn_4; !Auf Messposition
Sauger_runter; !Sauger runter
IF ZPOS_reset_RB4=1 THEN
SetGO Zpos_RB4,0;
TempPosRB4.trans.z:=0;
ENDIF
IF TempPosRB4.trans.z>0 THEN !Abfrage ob Z-Wert größer 0
MoveL OFFS(TempPosRB4,0,0,200),Speed_Norm,z50,Sauger_Mitte\WObj:=Rollenbahn_4; !200m Über Z-Position fahren
ENDIF
SetDO Interupt_Freigabe,1; !Interrupt Freigeben
TEST_Interrupt;
SearchL\Stop,Interupt,TempPosRB4,RB4_Aufnahmeposition,v100,Sauger_Mitte\WObj:=Rollenbahn_4; !Messfahrt, Stop bei Interupt
SetDO Interupt_Freigabe,0; !Interrupt Sperren
SetGO Zpos_RB4,round(TempPosRB4.trans.z); !Abspeicherung Z-POS
Sauger_Aus;
Blasen_Ein;
MoveL OFFS(TempPosRB4,0,0,50),Speed_Slow,fine,Sauger_Mitte\WObj:=Rollenbahn_4;
WaitTime Abtropfzeit;
MoveL RB4_Messposition,Speed_Norm,z50,Sauger_Mitte\WObj:=Rollenbahn_4;
Blasen_Aus;
MoveAbsJ RB4_AchsSafeposition,Speed_Norm,z50,Sauger_Mitte\WObj:=Rollenbahn_4;
ENDPROC
Display More
Wie kann ich hier die Traproutine einbauen, das der Roboter nur fährt, wenn der SPS Eingang "Zustimmung" auf TRUE ist?
Display MoreWenn er wieder weiterfahren sollte wenn du wieder drückst ohne start würde ich einen Interrupt verwenden der stopt wenn der eingang wegfällt und wieder startet wenn er kommt
mit diesem interrupt habe ich für den kunden einen einfachen stoptaster an der HMI gebaut wo sie kurz stoppen konnten und wieder starten bei bedarf
TRAP IrRoboterStop
!
ISleep intRoboterStop;
StopMove;
WarteAufEingang diReqCylceStop, LOW, 5, strMeld100;
StartMove;
IWatch intRoboterStop;
!
ENDTRAP
Hört sich erstmal möglich an, ich glaube aber das ich hierfür eine MutliTask Funktionalität brauche oder?! Leider hat der Roboter dies nicht
ABB
steht ja im ABB Forumsteil
Moin ich hab hier aktuell meinen Robby der soll ein bestimmtes Proc nur bei Externer Zustimmung abfahren.
Also genau:
Ich hab ein Proc wo der Robby in eine Serviceposition fährt. Dies soll er aber nur dann tun, wenn Dauerhaft ein Signal von meiner SPS ansteht. Wenn das Signal wegfällt muss der Roboter sofort/zügig stehen bleiben. (Keine Sichere Funktion von nöten!) und sollte das Signal wieder kommen, soll er weiter fahren.
Kann mir einer einen Tipp geben, wie ich das umsetzen könnte? Mir fehlt da irgendwie der Ansatz.
Dank euch!
Alternativ kannst du auch ein Systemsignal "Simulierte Signale" an die SPS schicken, welche dann den Roboter gar nicht erst startet.
Das klingt doch recht gut.
Werde es mir angucken. Vielen Dank!!!
Super, probiere ich direkt aus.
Vielen Dank!!!
GuMo,
gibt es eine Möglichkeit über das Handpanel Simulierte Eingänge beim umschalten auf Automatik automatisch aus zu schalten?
Habe es leider immer wieder das ich vergesse dies aus zu schalten und mir dann alles um die Ohren fliegt
...\RobotStudio\Projects\"ProjektName"\Virtual Controllers\"Robbynummer"\HOME\GSDML
Hier solltest du glaube ich fündig werden
640*480, muss ein *.gif file sein
Moin,
ich würde gerne einen Sichern Eingang der über ein CI502 kommt auf den Systemeingang "Limit Speed" setzen.
Einstellen kann ich dies in der Konfiguration aber wenn ich den Robby dann warmstarte bekomme ich einen Systemfehler.
71391: Systemsignalkonfiguration
Beschreibung
Es gab einen Fehler während der Konfiguration eines E/A-Signal-Systems LimitSpeed.
Folgen
Das System wechselt in den Zustand „Systemfehler“.
Ursachen
Alle Fehler während der Konfiguration des Systems der E/A-Signale werden als schwerwiegend betrachtet, und das System wechselt in den Zustand Systemfehler.
Aktionen
1. Überprüfen Sie die Verbindung der E/A-Einheit, mit der das Systemsignal verbunden ist.
2. Prüfen Sie die Konfiguration der E/A-Einheit.
Muss ich noch irgendwas extra einstellen, da dies ein Sicherer Eingang ist?
Dank euch für die Hilfe!
Vielen lieben Dank für eure Hilfe!
Habe ein WZFree eingefügt und dann geht es, zumindest so wie ich es mir vorgestellt und umgesetzt habe
Hallo, ich probiere mich gerade in dem Thema Weltzonen aus.
Folgenden Testcode habe ich geschrieben:
MODULE M_Worldzones
!Variabeln setzen
VAR wztemporary WZ_Rollenbahn1;
VAR wztemporary WZ_Rollenbahn2;
VAR wztemporary WZ_Rollenbahn3;
VAR wztemporary WZ_Rollenbahn4;
VAR wztemporary WZ_Rollenbahn5;
VAR wztemporary WZ_Ausrichttisch;
VAR wztemporary WZ_Tisch1;
VAR wztemporary WZ_Tisch2;
PROC WorldZone_Aktivieren()
VAR shapedata WorldZone_RB1;
VAR shapedata WorldZone_RB2;
VAR shapedata WorldZone_RB3;
VAR shapedata WorldZone_RB4;
VAR shapedata WorldZone_RB5;
VAR shapedata WorldZone_AT;
VAR shapedata WorldZone_T1;
VAR shapedata WorldZone_T2;
CONST pos RB_1_corner1:=[9485,-1500,-784];
CONST pos RB_1_corner2:=[8313,-5031,3000];
CONST pos RB_2_corner1:=[7930,-1500,-784];
CONST pos RB_2_corner2:=[6690,-5031,3000];
CONST pos RB_3_corner1:=[3658,-1500,-784];
CONST pos RB_3_corner2:=[2409,-5031,3000];
CONST pos RB_4_corner1:=[2058,-1500,-784];
CONST pos RB_4_corner2:=[809,-5031,3000];
CONST pos RB_5_corner1:=[460,-1500,-784];
CONST pos RB_5_corner2:=[-791,-5031,3000];
CONST pos Ausrichttisch_corner1:=[6690,-1500,-784];
CONST pos Ausrichttisch_corner2:=[3658,-5031,3000];
CONST pos Tisch1_corner1:=[9650,540,-1000];
CONST pos Tisch1_corner2:=[5060,4000,3000];
CONST pos Tisch2_corner1:=[5060,4000,3000];
CONST pos Tisch2_corner2:=[-350,540,-1000];
!Rollenbahn 1
WZBoxDef\Inside,WorldZone_RB1,RB_1_corner1,RB_1_corner2;
WZDOSet\temp,WZ_Rollenbahn1\Inside, WorldZone_RB1,WZ_RB1,1;
!Rollenbahn 2
WZBoxDef\Inside,WorldZone_RB2,RB_2_corner1,RB_2_corner2;
WZDOSet\temp,WZ_Rollenbahn2\Inside, WorldZone_RB2,WZ_RB2,1;
!Rollenbahn 3
WZBoxDef\Inside,WorldZone_RB3,RB_3_corner1,RB_3_corner2;
WZDOSet\temp,WZ_Rollenbahn3\Inside, WorldZone_RB3,WZ_RB3,1;
!Rollenbahn 4
WZBoxDef\Inside,WorldZone_RB4,RB_4_corner1,RB_4_corner2;
WZDOSet\temp,WZ_Rollenbahn4\Inside, WorldZone_RB4,WZ_RB4,1;
!Rollenbahn 5
WZBoxDef\Inside,WorldZone_RB5,RB_5_corner1,RB_5_corner2;
WZDOSet\temp,WZ_Rollenbahn5\Inside, WorldZone_RB5,WZ_RB5,1;
!Ausrichttisch
WZBoxDef\Inside,WorldZone_AT,Ausrichttisch_corner1,Ausrichttisch_corner2;
WZDOSet\temp,WZ_Ausrichttisch\Inside, WorldZone_AT,WZ_AT,1;
!Tisch 1
WZBoxDef\Inside,WorldZone_T1,Tisch1_corner1,Tisch1_corner2;
WZDOSet\temp,WZ_Tisch1\Inside, WorldZone_RB1,WZ_T1,1;
!Tisch 2
WZBoxDef\Inside,WorldZone_T2,Tisch2_corner1,Tisch2_corner2;
WZDOSet\temp,WZ_Tisch2\Inside, WorldZone_RB1,WZ_T2,1;
ENDPROC
ENDMODULE
Display More
Wenn will ich dann über mein MAIN Programm als erstes aufrufen.
Wenn ich das starte bekomme ich aber immer die Meldung 40672 "Weltzone bereits in Gebrauch"
Weltzone WZ_Rollenbahn1 konnte nicht übertragen werden eine andere Weltzone mit demselben Namen ist bereits im System definiert.
Wenn ich jetzt das auskommentiere:
zeigt er mir an, das "WZ_Rollenbahn1" unbekannt ist.
hat hier jemand Erfahrung und kann mir einen Tipp geben?
Vielen Dank schonmal!!!
Ich habs nun....
Hast du eine Lösung dafür gefunden?
Vielen Dank euch! Der Fehler ist das "-" ... 1000x hin und her probiert und nun sehe ich's.
De Robby fährt auf einer 11m Verfahrachse, da kommen so Werte zustanden.
Moin, ich habe folgende abfrage im Code:
Temppos:=CRobT(\Wobj:=wobj0); !Aktuelle Position abspeichern
IF Temppos.trans.x > -5200 THEN !Berechnung das der Robby nicht mit der Ausrichttisch
MoveAbsJ Ausrichttisch_AchsSafeposition,Speed_Norm,z50,Sauger_Mitte\WObj:=Wendeplatz; !Wenn ja, Ausweichbewegung
ENDIF
leider läuft er mir immer in die IF abfrage rein.
Hat jemand eine Idee, was ich falsch mache?!
Dank euch!
Hallo,
meine Firma sucht zur kurzzeitigen Unterstützung und Hilfestellung bei der Programmierung und Einrichtung von ABB-Roboter einen erfahrenen Techniker aus dem Kreis Ostwestfalen-Lippe und Umgebung.
Wir sind ein Mittelständiges Maschinenbau Unternehmen und sind aktuell dabei im Thema Robotic durch zu starten. Geplant ist das einsetzen von Robotern zum Materialhandling und für kleinere Montageanwendungen. Ich komme hierbei leider immer mal wieder an meine Grenzen, die aus Zeitlichen Gründen manchmal nicht überwunden werden können.
Nun sind wir auf der Suche nach jemanden, der uns bei den Themen entsprechend kurzzeitig unterstützen könnte. Sowohl mit Rat, als auch mal vor Ort mit Tat.
Vielleicht findet sich ja jemand von euch
Ich habe die selbe Erfahrung gemacht. Im Gespräch mit den ABB Support wurde mir ein Video gezeigt, wo das verhalten gezeigt wurde. Dort wurde bei nicht reagieren an das IRC5 Gehäuse gepackt und dann ging es.
Es scheint ein Massefehler in dem Gerät zu sein.
Ich habe an meinen Robby eine Verlängerungsleitung dran und den Kunststoffhalter von ABB zum Ablegen des Gerätes. Wenn ich an die Aluhalter (Kunststoffhalter ist an einem lackierten Zaun mit Alublechen befestigt) fasse mit einer Hand, konnte ich mit der anderen das Touchpad bedienen.
Selbes verhalten wenn ich die Metallverbindungen der Verlängerungsleitung anfasse.
Wenn ich meine Maschine, die über Masse mit dem IRC5 verbunden ist anfasse hat es keine Änderungen im Verhalten gegeben.
Selbst mein Geschäftsführer Stand mit nackten Füßen neben mir um es zu bedienen, um zu gucken ob es ein EMV Problem seien könnte....
ABB-Support meinte das Ding updaten, hab ich gemacht...
Masseanschluss (Erde) auf 25mm² erhöht, hab ich gemacht...
Spannung zwischen N und PE gemessen (IRC5 hat kein N....)
Abhilfe hat nur ein Austauschgerät gebracht! Läuft jetzt seid ca. 2 Wochen ohne Probleme!
Ich denke das gibt es eine defekte Charge an den Geräten...
Guten Morgen,
Ich habe alles noch einmal durch exerziert, leider bleibt das Ergebnis gleich.
Ich werde ABB da wohl nen Auftrag erstellen. Halte euch auf dem laufenden, sobald es was neues gibt!
Vielen Dank für die vielen Antworten!
Warum die IP .101 hinten? Die erste Karte müsste bei .100 starten.
Sind noch andere Teilnehmer in diesem Netz?
Die 101 rührt von dem Versuch her die Karte zu löschen und neu zu konfigurieren. Hier wurde dann die 101 automatisch zugewiesen