1. Dashboard
    1. Dashboard
    2. Suche
  2. Forum
    1. Unresolved Threads
  3. Members
    1. Recent Activities
    2. Users Online
    3. Team
    4. Search Members
  4. Jobs
  5. Articles
  6. Calendar
    1. Upcoming Events
    2. Map
  7. Shop
    1. Orders
    2. Shipping Costs
  • Login or register
  • Search
Roboterprogrammierer finden
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Events
  • Files
  • Products
  • More Options
  1. Roboterforum.de - die Industrieroboter und Cobot Community
  2. Forum
  3. Industrieroboter Support
  4. KUKA Roboter
Your browser does not support videos Handwerk automatisieren - ich schaffs mit KUKA
besuche unseren Partner
Roboterschulung Online
Robot Support Forum
Werbung schalten Roboter
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

Basisprogrammierung für Dreh-Kipptisch

  • Studierender_Student
  • October 28, 2023 at 6:40 PM
  • Thread is Resolved
  • Studierender_Student
    Points
    20
    Posts
    3
    • October 28, 2023 at 6:40 PM
    • #1

    Hallo,

    Als Teil eines Studentenprojektes soll ich ein Programm schreiben, bei dem sich die Basis des Werkstückes synchron mit den externen Achsen eines Dreh-Kipptisches dreht.

    Bei dem Roboter handelt es sich um einen Kuka KR30-Ha, und die Steuerung hat die Versionskennung V8.3.257/KUKA8.3 .

    Die Externen-Achsen sind in den Maschinendaten eingepflegt und konnten in einem Testprogramm mithilfe einer E6POS und einer PTP Bewegung angesprochen werden.

    Code: $machine.dat
    DECL EX_KIN $EX_KIN={ET1 #EASYS,ET2 #None,ET3 #NONE,ET4 #NONE,ET5 #NONE,ET6 #NONE} ;EXTERNE KINEMATIKEN #NONE,#EASYS,#EBSYS,#ECSYS,#EDSYS,#EESYS,#EFSYS,#ERSYS
    DECL ET_AX $ET1_AX={TR_A1 #E1,TR_A2 #E2,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
    CHAR $ET1_NAME[20] ;NAME DER TRANSFORMATION ET1 MAXIMAL 20 ZEICHEN
    $ET1_NAME[]="Robatec_DKTisch"
    FRAME $ET1_TA1KR={X 0.0,Y 0.0,Z 713.302,A 178.913,B 89.9210,C 180.000} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET1
    FRAME $ET1_TA2A1={X -9.63600,Y 0.847000,Z 911.412,A 0.0,B -90.0000,C 0.0} ;ZWISCHEN A2 UND A1
    FRAME $ET1_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
    FRAME $ET1_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
    FRAME $ET1_TPINFL={X 190.000,Y 0.0,Z 108.400,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL

    Es existiert auch eine Basis, (Basis1) die im Handbetrieb zwar funktioniert und kalibiriert ist, aber aus dem Programm heraus auf dem Weltkoordinatensystem liegt.

    Ich habe jetzt versucht, die Basis über folgenden Code im Programm einzubauen:

    Code
    ; ---- Setting reference (Base) ----
     Using external axes
    $BASE=EK(EX_AX_DATA[1].ROOT,EX_AX_DATA[1].EX_KIN,EX_AX_DATA[1].OFFSET)
    $ACT_EX_AX=1

    Leider hat das nicht funktioniert mit dem Fehler, dass die Deklarierungen zu dieser Zeile fehlen.

    An dieser Stelle habe ich also schon erfolglos mehrere Deklarationen ausprobiert.

    Wie würde hier die richtige Syntax aussehen, oder muss in der Initialisierung etwas hinzugefügt werden?

  • Schritt für Schritt zum Roboterprofi!
  • Programmiersklave
    Reactions Received
    104
    Points
    6,299
    Posts
    1,203
    About Me

    neuerdings freigelassen

    Location
    märk. Sauerland
    Occupation
    Roboter- und SPS-Programmierer
    • October 30, 2023 at 9:24 AM
    • #2

    Bei richtiger Konfiguration brauchst Du kein Programm dafür schreiben, die Verknüpfung der Koordinatensysteme wird von der Steuerung korrekt umgesetzt.

    Steht in der $config.dat eine vernünftige Maschinenkonfiguration unter

    DECL MACHINE_DEF_T MACHINE_DEF[16] ?

    Automatisierung mit dem geflügelten Walross aus dem Sauerland

  • Martin Huber
    Reactions Received
    42
    Points
    3,862
    Posts
    725
    • November 1, 2023 at 8:01 AM
    • #3

    Moin Student,

    wie der Sklave schon schreibt, ist die Kinematik dem Roboter schon bekannt und kann im Programm als Basis in den Punkten angewählt werden. Dazu kannst du einen Blick in die Config.Dat schmeißen welche Machine_Def_T verwendet wurde , muss nicht zwingend die 16 sein.

    Die Abnahme von GOTO Anweisungen verhält sich reziprok zur Qualität einer Programmierung

  • Studierender_Student
    Points
    20
    Posts
    3
    • November 1, 2023 at 1:56 PM
    • #4

    Beim Blick in die config ist mir nichts besonderes aufgefallen. Der Dreh-Kipptisch ist auf dem Index 2 hinterlegt:

    MACHINE_DEF[2]={NAME[] "Robatec_DKTisch",COOP_KRC_INDEX 1,PARENT[] "WORLD",ROOT {X 72.7810,Y 1376.10205,Z 711.085,A -0.0230000,B -0.0410000,C -1.48000},MECH_TYPE #EASYS,GEOMETRY[] "ObjectId = 1363640490"}

    Ein paar Zeilen später wird er für die Base geladen:

    DECL MACHINE_FRAME_T MACHINE_FRAME_DAT[32]

    MACHINE_FRAME_DAT[1]={MACH_DEF_INDEX 2,PARENT[] "Robatec_DKTisch",GEOMETRY[] "ObjectId = -207405864"}

  • Martin Huber
    Reactions Received
    42
    Points
    3,862
    Posts
    725
    • November 1, 2023 at 2:08 PM
    • #5

    Okay, wenn du jetzt im Programm die Base 2 als Basis einträgst bist du automatisch damit mathematisch gekoppelt, selbiges gilt auch fürs Handverfahren, wenn du als Basis die Base 2 anwählst.

    Die Abnahme von GOTO Anweisungen verhält sich reziprok zur Qualität einer Programmierung

  • Studierender_Student
    Points
    20
    Posts
    3
    • November 4, 2023 at 2:24 PM
    • #6

    Wir haben gestern die Basis 2 getestet.

    Leider hat das so nicht funktioniert, wir konnten aber mithilfe der Infos aus der Config.dat weiter suchen.

    Mit der Angepassten Zeile

    $BASE=EK(MACHINE_DEF[2].ROOT,MACHINE_DEF[2].MECH_TYPE,BASE_DATA[1]:{x 0,y 0,z 0,a 90,b 0,c 0})

    hat dann alles funktioniert, da nun die Kopplung auch richtig geladen wird.

    Vielen Dank :danke: euer Hinweis hat uns über den Berg gebracht.

Tags

  • 1
  • 33
  • 2
  • ABB
  • ABB Roboter
  • ABS
  • base
  • constant
  • CP_PARAMS
  • Dialog
  • EX
  • fanuc
  • Fehler
  • FRAMES
  • INIT
  • INITIALIZED
  • INITMOV
  • IRC5
  • joint
  • KRC2
  • KRC4
  • kuka
  • new
  • NONE
  • notify
  • PATH
  • PGNO_GET
  • profinet
  • PTP_DAT
  • PTP_PARAMS
  • P_ACTIVE
  • P_FREE
  • P_RESET
  • P_STOP
  • Quit
  • Roboter
  • RobotStudio
  • Schweißen
  • Sps
  • Sync
  • T1
  • t2
  • tcp
  • Tool
  • VALUE
  • VAR
  • vel_cp
  • vel_ptp
  • Yaskawa
  • YRC1000
AD
Your browser does not support videos Automatisierung im Handwerk - ich schaffs mit KUKA
Einloggen für weniger Werbung

gesponserte Artikel

  • Gebrauchtroboter kaufen - Was ist zu beachten. Die Checkliste zum kauf von gebrauchten Robotern

    August 11, 2019 at 7:02 PM
  • Was macht ein Roboterprogrammierer genau und was verdient er?

    August 21, 2019 at 8:17 AM
  • Vernetzen, referenzieren, kollaborieren: Das B2B Portal für die Produktionsautomatisierung

    June 2, 2021 at 11:29 AM

Job Offer

  • Sie wollen Ihr Stellenangebot im Roboterforum schalten? Ab 149€

    Werner Hampel June 17, 2021 at 9:52 AM
  • Werde Roboterprogrammierer bei ROBTEC GmbH in Mainburg / Bayern

    Werner Hampel April 5, 2023 at 7:13 PM
Werbung auf Roboterseite
Roboter programmieren lernen
Banner Robotik

Tags

  • kuka
  • base
  • externe Achse
  • EASYS
  • INIT

Wieviele Mitglieder waren heute eingeloggt?

Logge Dich ein, um hier zu lesen wer in den letzten 24h Online war und um weniger Werbung zu sehen.

  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™ 6.0.22
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on Google Play
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on the App Store
Download