Um das zu realisieren brauchst du auf jeden Fall die Betriebsart Automatik Extern. Ohne SPS geht das auch. Du musst dafür Signale von Aus- auf Eingäng brücken, und das ganze im Submit programmieren.
Steht hier sehr gut beschrieben: https://www.roboterforum.de/roboter-forum/kuka-roboter/3/krc2-programmstart-aut-modus-ext/2978/msg11938;topicseen#msg11938
Beiträge von IrrerPolterer
-
-
Dafür gibt es keinen Programmbefehl, dass was du vor hast, regelt man über die Automatik Extern Schnittstelle durch eine übergeordnete Steuerung (SPS).
-
N'abend.
Habe jetzt alles, was mit der Ethernetkommunikation zu tun hat in Folds gepackt (das sind hauptsächlich verschachtelte Schleifen), das Speichern der Daten in der Datenliste deaktiviert und jede Menge anderen Programmcode in Folds gepackt.
Scheint jetzt wieder stabil zu laufen... -
Indem du eine Base-Vermessung mit der 3 Punkt-Methode durchführst. Siehe Doku. Inbetriebnahme>Vermessen>Basis
und wie soll ich den Roboterarm ins Regal fahren?Auf einer Palette mit dem Gabelstapler! dann steht er dort. Im Ernst: Was erwartest du hier für eine Antwort? Wir kennen die Gegebenheiten doch gar nicht. Du konntest ebenso fragen: "Wie fahre ich mit dem Zug zu meiner Oma?" Keiner weiß wo du dich befindest, wann du dort ankommen willst oder wo deine Oma ist.
Ich meine das nicht böse, aber mir scheint, als seist du nicht nur neu in der KUKA-Programmierung, sondern neu in der Robotik. Also erst mal Grundlagen erlernen.
-
Gegen Einwurf von Münzen gibt es eine Menge Firmen, die solche Unterstützung anbieten...
-
Was sagt denn die ESC Diagnose? Es scheint mir eher ein Problem der Überwachung der Sicherheitskreise zu sein. z.B. Querschluss, Gleichzeitigkeit etc...
-
Hallo Twister,
vielen Dank für deine Antwort. Bei mir tritt das Problem mit dem Programmlaufzeiger schon auf, wenn die Bahnen noch gar nicht anbgefahren werden und der Roboter noch wartet bis das Bauteil in Position ist. Aber ich werde mal versuchen die Schleifen beim Einlesen der Daten in Folds zu packen.BTW: Es sind im Prinzip tatsächlich Cam-Daten.
-
Bevor jetzt hier wieder der Sturm beginnt mit "mach erstmal 'n Lehrgang" usw...
1. Wenn du so gar keine Ahnung (das meine ich nicht abwertend) von KUKA hast, dann nimm dir einen erfahrenen KUKA-Mann mit ins Boot und schau ihm auf die Finger.
2. Schulungsunterlagen gibt es bei einer Schulung, deswegen heißen sie ja so.
3. Eine Dokumentation in der alles drin steht kann man sicherlich über die KUKA Hotline anfordern.
4. Zur Ermittlung der Lastdaten gibt's frei KUKA Load
5. Für die automatische Lastdatenermittlung benötigst du KUKA Load Determination. Nicht kostenlos.
6. Zur Inbetriebnahme der KRC4 benötigst du Workvisual -
Hallo,
Steuerung: KRC4 mit V8.3.32 und EthernetKRL V2.2.7
In der $CONFIG ist folgendes deklariert:CodeSTRUC STC_JOBDATA INT StepCount,RelationTypeX,RelationTypeY,FRAME Reference,RelationX,RelationY DECL STC_JOBDATA JOB[64] STRUC STC_STEPDATA INT StepType,FRAME POSITION,REAL Param1,Param2,Param3,Param4,Param5,Param6,Param7,Param8 DECL STC_STEPDATA STEPDATA[64,250]
Am Programmanfang liest des Roboterprogramm die Daten über die Ethernetschnitte von einem externen PC ein.
Also 64 Jobs mit je- 3 Integer
- 3 Frames
Und 64x250 Steps mit je- 1 Integer
- 1 Frame
- 8 Real
Diese werden nicht remanent in der Config.dat gespeichert jedoch in einer Datenliste eines Unterprogramms zu Analysezwecken. (wird nach IBN entfernt).Die HMI ist teilweise recht langsam. Wenn ich z.B. die Programmgeschwindigkeit von 10% auf 50% raufsetze, kann es schon mal 3-5 Sekunden dauern, bis der Roboter seine Geschwindigkeit ändern - was in T2 recht irritieren sein kann.
Auch das Öffnen von Variablenansicht, Flags, aktueller Position etc. dauert manchmal mehrer Sekunden.
Die Aktualisierung des Programmzeigers ist auch nicht immer korrekt. Manchmal steht ein WAIT FOR an ( im Meldungsfenster z.B. Warte auf...etc). Der Programmzeiger bleibt aber in einem Unterprogramm oder auch im gleichen Programm irgendwo stehen.Jemand irgendeine Ahnung, wie man das wieder etwas komfortabler bekommt? Oder ob es überhaupt an den Datenmengen liegt?
-
Solche Dinge kommen bei der KRC2 mit 4.1.x schon mal vor. Unschön, aber man lebt damit.
In diesem Falle mache ich eigentlich immer folgendes:
1. Tastatur (PS/2) anschliessen und mit gedrückter STRG- bzw CTRL- Steuerung starten, bis Windows geladen wurde. (das umgeht den Autostart von Cross3). Anschließend:- Die Datei C:\KRC\BIN\vxworks.freeze köschen (falls überhaupt vorhanden)
- Scandisk ausführen - glaubt man kaum, wirkt aber manchmal Wunder
- Neustart
2. Alle Karten im PC ziehen, reinigen und neu stecken dann Steuerung starten und testenHift das alles nicht, dann hilft nur rumraten und rumprobieren oder eine Neuinstallation.
-
Version?
-
Ja, weil du es schon mal in Programmierung und Diagnose runtergeladen hast. Aber es liegt dann im Verzeichnis: \WorkVisual Repositories
WV5 sucht allerdings in WorkVisual 5.0\Repositoriesoder wir verstehen uns einfach nicht richtig!
-
Wenn es über Ethernet laufen soll, wäre wohl das Optionspaket KUKA EthernetKRL das richtige.
-
Wenn du die Dateien mal heruntergeladen hast, sprich dich in "Programmierung und Diagnose" verbunden hast und "Steuerungszustand herstellen" ausführst, werden die Dateien
bei WV4 unter \Dokumente\WorkVisual Repositories lokal gespeichert
bei WV5 unter \Dokumente\WorkVisual 5.0\Repositories lokal gespeichert -
Das war schon immer so.
-
Hallo Leute,
ich habe das problem, dass Work Visual 5 einfach ohne eine Meldung schließt. Man braucht es einfach nur geöffnet zu lassen, nach einer Zeit ist es dann abgestürzt. Verantwortllich scheint eine DLL mit dem Namen ucrtbase.dll zu sein.Work Visual: 5.0.6
Windows: 10 Home 64bit
Im Windows Ereignisprotokoll steht dann:Code
Alles anzeigenProtokollname: Application Quelle: Application Error Datum: 22.10.2018 12:22:13 Ereignis-ID: 1000 Aufgabenkategorie:(100) Ebene: Fehler Schlüsselwörter:Klassisch Benutzer: Nicht zutreffend Computer: RMACER Beschreibung: Name der fehlerhaften Anwendung: WorkVisual.exe, Version: 5.0.0.686, Zeitstempel: 0x5b6156c2 Name des fehlerhaften Moduls: ucrtbase.dll, Version: 10.0.17134.319, Zeitstempel: 0xc1f0557a Ausnahmecode: 0xc0000409 Fehleroffset: 0x000a24cb ID des fehlerhaften Prozesses: 0xcf8 Startzeit der fehlerhaften Anwendung: 0x01d469f10384e782 Pfad der fehlerhaften Anwendung: C:\Program Files (x86)\KUKA\WorkVisual 5.0\WorkVisual.exe Pfad des fehlerhaften Moduls: C:\WINDOWS\System32\ucrtbase.dll Berichtskennung: b2eb5a00-48ed-4884-9d3e-f25eba5bc87c Vollständiger Name des fehlerhaften Pakets: Anwendungs-ID, die relativ zum fehlerhaften Paket ist: Ereignis-XML: <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> <System> <Provider Name="Application Error" /> <EventID Qualifiers="0">1000</EventID> <Level>2</Level> <Task>100</Task> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2018-10-22T10:22:13.261152000Z" /> <EventRecordID>8336</EventRecordID> <Channel>Application</Channel> <Computer>RMACER</Computer> <Security /> </System> <EventData> <Data>WorkVisual.exe</Data> <Data>5.0.0.686</Data> <Data>5b6156c2</Data> <Data>ucrtbase.dll</Data> <Data>10.0.17134.319</Data> <Data>c1f0557a</Data> <Data>c0000409</Data> <Data>000a24cb</Data> <Data>cf8</Data> <Data>01d469f10384e782</Data> <Data>C:\Program Files (x86)\KUKA\WorkVisual 5.0\WorkVisual.exe</Data> <Data>C:\WINDOWS\System32\ucrtbase.dll</Data> <Data>b2eb5a00-48ed-4884-9d3e-f25eba5bc87c</Data> <Data> </Data> <Data> </Data> </EventData> </Event>
Jemand irgendeine Ahnung?
-
Hallo Roland,
meinst du die Programme im Projekt unter R1 usw...? Die sind bei mir im Projekt noch da. -
Ist der Roboter nur "Slave" oder "auch "Master"? Was passiert, wenn du in der IOSYS.INI den Teilnehmer mit der Adresse 1290 rausnimmst?
-
Verstehe dein Problem immer noch nicht. Was für eine Variable du in die Zeile schreibst ist doch sch...egal.
Es gibt hier einen AKTUELLEN HUBZÄLER UND eine MAX_HUBZAHL.
Dann erzeuge dir einfach noch eine weiter Variable z.B. WARN_HUBZAHLHier ein kleines TestProg:
Code
Alles anzeigenDEF TEST() INT HUB_AKT ;Aktuelle Hubzahl INT HUB_WARN ;Hubzahl bei der eine Warnung erfolgen soll INT HUB_MAX ;Maximale Hubzahl HUB_WARN=8 HUB_MAX=12 FOR HUB_AKT=1 TO 20 IF HUB_AKT==HUB_WARN THEN ;Bei 8 hier irgendwas machen zur Warnung , Wartunspos etc... ;Als beispiel wird hier Ausgang 1 gesetzt und 5sek gewartet $OUT[1]=TRUE WAIT SEC 5 $OUT[1]=FALSE ELSE IF HUB_ACT >= HUB_MAX THEN HALT ;Roboter haelt bei Erreichen von Max_hub an ENDIF ENDIF ENDFOR END
-