Beiträge von Eiche23

    Entschuldigt, dass ich jetzt erst schreibe.


    Drudge
    Ich hab keine Ahnung wie ich das mit den cycflags hinkriegen soll.
    Kannst Du mir das bitte an einem Beispiel erklären?


    Robotnik
    Hab mir mal die Doku von RSI_XML angesehen, finde da aber keinen Befehl mit dem ich einen Eingang beschreiben kann.
    Das ich Variablen übergeben kann weiß ich, aber das hilft mir glaub auch nicht wirklich weiter.



    Ich hab jetzt einen Beckhoffbuskoppler mit 8 Eingängen angebaut und mit dem schalte ich jetzt Antriebe.... ein.



    Möchte die Antrieb und Programmstart ohne Zusatzhardware (Buskoppler, Devnetkarte...) einschalten.


    :hilfe:

    Danke für deine schnelle Antwort simeonw, aber kannst Du mir da vielleicht ein kleines Beispiel vorgeben?


    Ich kann in der Auto extern Konfigurationsumgebung keine $cyflags eintragen. Das funktioniert nur mit Eingängen, aber einen Eingang kann ich ja keinen Wert zuweisen.

    Hallo zusammen,


    momentan arbeite ich an einem Projekt bei dem ein Robi über RSI-XML angesteuert wird.
    Hab mich gerade gefragt ob ich mit RSI-XML oder Cread/Cwrite die Automatik extern Funktionen ansprechen kann. Geht das irgendwie oder kann ich Auto extern wirklich nur über physikalische Eingänge ansteuern?

    Sehe die Sache genauso wie simeonw, ein Interrupt mi brake f sollte schnell genug sein.



    Wenn Du die Sache wirklich mit der X11 Schnittstelle realisieren willst empfehle ich dir zwei Optokopper (zweikanalig) zwische Not-Aus-extern oder Bedienerschutz über deinen Abschaltbox zu schalten.



    Warum musst Du eigentlich so schnell abschalten und warum ist der Interrupt dafür zu langsam, wenn man fragen darf.

    Hallo Happyman0815,


    für dein Problem gibt es verschieden Lösungen.


    Die billigste Lösung ist wahrscheinlich die Kommunikation über cread/cwrite, damit kannst Du Variablen über die Serielle Schnittstelle schreiben und diese dann mit den Punktseperator anfahren. Unten findest du einen Beispielcode aus einem Programm von mir.


    Hallo Leute,


    weiß einer von euch ob es möglich ist die Toolkoordinaten während einer laufenden Bewegung zu ändern? Ich dachte mir das nämlich so: Der Roboter fährt eine Circ-Bahn, in einer Forschleife, X Mal ab und ich ändere dann mit Hilfe eines Potis eine Variable, die ich im Submit den entsprechenden Wert des Tools zuweise.

    Code


    potivariable = $Anin1
    TOOL_DATA[2] = {X -0.24, Y potivariable, Z 211.65, A 0.00, B 45.00, C 0.00}

    Code


    Dadurch kann ich doch den Durchmesser der Circ-Bahn verändern, wenn ich die richtige Orientierung eingestellt habe, oder?


    Danke im Voraus

    Bei MRK-Systeme hab ich die Anwendung auch gesehen! An dem Stand konnte man über einen Kraft-/Momentensensor, der Zwischen Greifer und Achse 6 montiert war, eine Base teachen. Um die Base zu teachen war ein Laser am Greifer angebracht, mit dem konnte man die Eckpunkte einer kleinen Palette anvisieren und per Knopfdruck teachen. Der Roboter hat sich dann selbstständig Bauteile von der Palette geholt und diese auf eine neuen Palette abgelegt.


    Wahrscheinlich war hier aber ein KRL-Programm angewählt.


    Auf der Internetseite von MRK kann man das leider nicht heraus lesen. :(

    Hallo Roboterspezialisten,


    ich bin noch ziemlich unerfahren was Roboter angeht und muss in Form einer Semesterarbeit einen


    KR 16 eine beliebige Anzahl von Punktkoordinaten schicken die er dann nacheinander anfahren soll.


    Hab jetzt schon ein wenig recherchiert und herausgefunden, dass sich die Softwareoption Ethernet


    XML dafür anbietet.


    Oder gibt es da vielleicht eine bessere oder billigere Schnittstelle (Lösung)?


    Ethernet XML ist ja leider auch nicht umsonst! :(


    Außerdem werde ich wohl nur LIN-Punkte benutzen können, da ich für PTP Status und TURN brauche!?

    Du hast recht man könnte man Kabel an das KCP löten, aber dann würde man die Garantie verlieren.


    Am besten wäre es doch wenn man ne Möglichkeit hätte den CAN-Bus vom KCP zu benutzen oder irgendwelche Steuereingänge die ein manuelles Fahren ohne KCP ermöglichen!

    Hallo Leute,


    bei uns in der Firma ist eine Diskussion aufgekommen ob man einen Kuka-Roboter auch mit einem Joystick oder irgend einem anderen Bediengerät verfahren kann ohne, dass ein Programm angewählt ist.


    Ich habe dieses Jahr auf der Automatika einen Stand gesehen wo ein Kuka-Roboter durch einen Kraft-/Momentensensor und einen Joystick bewegt werden konnte. Außerdem konnte man da dann auch Punkte teachen. Leider weiß ich nicht genau ob in diesem Fall schon ein Programm angewählt war.


    Wenn ich richtig informiert bin werden die Daten vom KCP (also auch die Fahrbefehle z.B.: Achse1 + verfahren) über CAN-Bus an die Steuerung geschickt.


    Kann man auf die schnittstelle vom KCP zugreiffen?


    Ist es möglich ein eigenes Bediengerät an den Roboter anzuschließen und dieses zum teachen von Punkten zu nutzen ohne, dass ein Programm angewählt ist?


    Danke für eure Hilfe!

    Hallo Leute,


    möchte Eine S7 300 über Profibus mit einer KRC2-Steuerung verbinden und Analogwerte von der SPS am Roboter auszulesen! Habe dazu eine Profibus-Karte von Siemens im Roboter.
    Hab vor, dass die SPS Master und der Robi Slave ist.


    Bin mir jetzt nur nicht sicher ob der Roboter die Zahl genau so darstellt wie sie die SPS setzt. Nach meinem Wissen gibt es verschiedene Normen um Gleitkommazahlen darzustellen!(IEEE754.....).


    Hat irgendjemand so etwas schon mal gemacht oder weiß was darüber?


    Wäre euch echt dankbar!

    Hallo zusammen,


    versuche gerade eine Pos zu verschieben und benutze dafür den geometrischen Operator.


    Bekomme meine Werte von einer 3D-Kamera. Die Kamera sendet mir die neuen Werte von X,Y,Z und die beiden Winkel B und C.



    Leider bekomme ich bei diesem Code eine Fehlermeldung.


    Der Roboter bringt mir hier "ungültige Werte TISCH_Kamera" oder so ähnlich,allerdings ist TISCH_Kamera als Base definiert.



    Habe dann einen anderen Versuch gestartet:


    Code
    DECL REAL Winkel1, Winkel2
    
    
    LIN $POS_ACT : {X 0, Y 0,C 0, A 0,B Winkel1, C Winkel2}


    Hier gibt der Roboter die Fehlermeldung "Konstante erwartet" aus.


    Liegt wohl daran das die Winkel voneinander abhängig sind!


    Weiß irgend jemand wie ich das Problem geschickt lösen kann oder wo mein Fehler liegt?

    Hallo Lindepaul,


    Danke für die schnelle Antwort!


    Ja, P[1] bis P[6] sind REAL.


    Hab das Prog jetzt auch noch mit %f getestet, aber leider ohne Erfolg.
    Das Programm mit %f sowie das Programm mit %e verhalten sich gleich.
    Wenn ich nur einen Wert schicke aber das Programm auf mehrere Werte wartet, dann wird der Wert auch gelesen. (bekomme zwar ne Fehlermeldung, aber die Variable ändert sich zuvor)
    Sobald ich aber mehr als einen Wert sende wird die Variable nicht geändert. Es wird sofort die Fehlermeldung "1505 Unzulässige Variablenkombination" ausgegeben.
    Hab mir die Daten, die von der Kamera ausgegeben werden, jetzt mal im Hyper Terminal angesehen.


    Gesendete Daten:
    "-7.125500e+021.566600e+011.115550e+021.112200e+021.200000e+00-2.200000e-01"


    In der Doku steht, dass mehrere Formate mit einem Leerzeichen getrennt werden müssen.
    Dachte eigentlich das bezieht sich auf "%f %f".


    Kann es sein, dass ich die Daten "-7.125500e+02 1.566600e+01" auch mit einem Leerzeichen trennen muss?

    Danke Lindepaul!
    Mein Fehler lag in der Deklaration der Variablen! :oops: Nachdem ich die Variablen, wie von Lindepaul angegeben, deklariert hatte, konnte ich das Programm ohne Fehler benutzen.


    Da ich REAL-Werte empfangen muss hab ich ein Bisschen herumexperimentiert und den folgenden Programmcode erfolgreich getestet.


    Code
    CREAD (HANDLE, SR_T, MR_T, TIMEOUT, OFFSET, "%e", p[1])


    Die Variable wird erfolgreich geschrieben!


    Nur brauche ich ja sechs Realwerte.


    Dachte, wenn ich das Programm wie folgend ändere funktioniert es.



    Code
    CREAD (HANDLE, SR_T, MR_T, TIMEOUT, OFFSET, "%e %e %e %e %e %e", p[1], p[2], p[3], p[4], p[5], p[6])


    --> Doch leider funktioniert es so nicht.


    Sobald ich mehr als eine Variable in der %e- Formatierung schreiben will bekomme ich
    die Fehlermeldung "1505 Unzulässige Variablenkombination"


    Muss ich in diesem Fall den Befehl Cread sechs mal einzeln aufrufen?


    Oder kennt jemand eine bessere Lösung?

    Hallo Bert,


    ich benutze ein KR C 2 Steuerung!


    HWF_INF.ini:


    Code
    [SERIAL]
    ;ENABLE: COM is accessible by robot (vxWorks)
    ;DISABLE: COM is accessible by WinXP
    ;CONSOLE: for developer only
    COM3=ENABLE ;[ENABLE, DISABLE, CONSOLE]


    Serial.ini:



    Außerdem hab ich noch "INT handle = 0" in der $config.dat deklariert.


    Hab dann versucht das Beispielprogramm wie oben beschrieben zu benutzen.


    Das Prog war allerdings Fehlerhaft.


    Anschießend bin ich Schritt für Schritt vorgegangen um die Fehler auszumerzen.


    Habe einen Befehl nach dem andere eingegeben und ihn auf Fehler überprüft.


    Code
    COPEN(:SER_3, HANDLE)
    
    
    OFFSET=0
    TIMEOUT=10
    
    
    CREAD (HANDLE, SR_T, MR_T, TIMEOUT, OFFSET, "%f %f %f %f %f %f",
    $POS_ACT.X, $POS_ACT.Y, $POS_ACT.Z, $POS_ACT.A, $POS_ACT.B,
    $POS_ACT.C)


    Mein erstes Problem hab ich aber schon in der CREAD Zeile --> "Fehler 2326 Name erwartet".


    Die Variablen "HANDLE, SR_T, MR_T, TIMEOUT, OFFSET" sind alle deklariert!


    Leider weiß ich noch nicht wo der Fehler liegt!

    Hallo,


    das ist mein erster Eintrag im Forum! Bis jetzt bin ich immer mit nach kucken weiter gekommen, aber bei dem Problem komm ich irgendwie nicht weiter.


    Hoffe irgendjemand mit mehr Erfahrung in Cread/Cwrite kann mir helfen.



    Nach einigen kleineren Programmieraufträgen habe ich nun die Aufgabe Positionsdaten von einer IVC Kamera von Sick an einen KR 210 über RS232 zu schicken. Hab mir jetzt mal die Doku zu Cread/Cwrite besorgt. Nachdem ich die Einstellungen in den INI-Dateien nach der Beschreibung vorgenommen habe, habe ich weiter unten auch gleich ein Beispielprogramm gefunden. Das Programm heißt "Recive" und ist auf Seite 46 unter 7.1.2 Positionsdaten empfangen der Doku aufgeführt. Habe nun versucht das Beispielprogramm direkt in meinen Roboter zu kopieren aber er zeigt mir noch 5 Fehlermeldungen an, obwohl das Programm 1 zu 1 übernommen wurde.


    Hab dann mal im Forum gesucht und da ein Beispielprogramm für ne KRC 32 gefunden.


    http://www.roboterforum.de/rob…chnittstelle-t3008.0.html


    Hab das auch kopiert, abgeändert und es auf meine Robotersteuerung gespielt.
    Leider funktioniert auch dieses Programm nicht. Vielleicht liegt es hier daran weil es für eine KRC 32 ist, aber das von der kuka-Doku müsste doch funktionieren???