Beiträge von Tilman

    Hallo Bim,


    Rein logisch verstehe ich Dein Beispiel. Habe aber große Zweifel ob das funktioniert.


    SWITCH TRUE


    gibt bei mir jedenfalls den Fehler: <<An expression of data type "CHAR", "INT" or "ENUM" is expected.>>


    Hast Du das wirklich schon mal getestet?


    Viele Grüße,
    Tilman


    PS: und wenn wir schon mal bei der Syntax sind :aufsmaul:, nCOOL01{1} geht natürlich auch nicht. Sollte wahrscheinlich nCOOL01[1] heißen. Und rCOOL09Out vermutlich rCOOL09Out=TRUE... Es ging mir nur ums Prinzip.

    Hallo Stefan,


    Manchmal muss man sich halt einfach damit abfinden, was die Programmiersprache kann. Und dann die beste Lösung finden. In Deinem Fall würde z.B. SWITCH weiterhelfen.


    Mal so ins Blaue hinein:


    SWITCH nCOOLIn
    CASE 1
    IF nCOOL01{1}<>nNoPart THEN
    rCOOL01Out;
    ENDIF
    CASE 2
    ...
    ENDSWITCH


    Man könnte auch Felder, z.B. rCOOLOUT[] , anlegen und dann mit einem Index drauf zugreifen. Dann ging die ganze Abfrage mit einem Test.


    Viele Grüße,
    Tilman / Frankreich

    Hallo,


    NOTIME war schneller... Hier meine Antwort, die ich gerade fertiggestellt habe...



    Die Bezeichnungen sind für mich auch verwirrend, hier ist mein Wissensstand (und das was ich in der Dokumentation gelesen habe).


    KRC(Kuka Robot Control) Bezeichnung für die Kuka-Robotersteuerung, bestehend aus Bedienteil sowie Steuerschrank.


    KR C2 bedeutet also daß es sich um die Version 2 des Controllers handelt. Es gibt die Versionen 1,2,3,4, etc. mit Varianten (KR C4 COMPACT, KR C2 ED05) und extra Versionen, z.B. für Volkswagen (VKRC).


    KRL (Kuka Robot Language) Speziell für Robotersteuerung entwickelte Programmiersprache. Die Sprache ist bei allen Versionen vergleichbar, es sind allerdings mit der Zeit neue Funktionen hinzugefügt wurden, siehe nächste Abkürzung.


    Die installierte Software kann man im Menü am Roboter erfahren (Hilfe -> Info), z.B. V5.2.12. Diese Software wird KSS (Kuka System Software) genannt.


    Oft findet man in diesem Zusammenhang auch die Abkürzung BOF und KCP:


    BOF (Grafische Bedienoberfläche) Das (V)KCP-Display beinhaltet Menü- und Softkeyleiste, Statuskeyleisten, Programmfenster, InLine-Formulare, Zusatz- und Meldungsfenster sowie eine Statuszeile.


    KCP (Kuka Control Panel) Bedienteil der Robotersteuerung, welches mit Bedienelementen und einem Display zur Wiedergabe der Bedienoberfläche ausgestattet ist.


    Zum Schluß... wenn jemand von einem KR6-2 spricht, meint er einen Kuka Roboter mit einer Traglast von 6kg der von dem Controller KR C2 gesteuert wird.


    Ouffff,
    Tilman


    PS:


    1) bitte die Experten mich zu verbessern.
    2) viele dieser Informationen findest Du in der sehr guten und ausführlichen Dokumentation.

    Zitat

    Und das ist billiger als einen Techniker kommen zu lassen?


    Tja, weiß ich auch nicht. Hat wohl 150€ pro Fahrt gekostet (wurde mir jedenfalls gesagt, kann ich allerdings kaum glauben). Billiger wäre es jedoch sicher gewesen, einfach ein Motherboard zu kaufen :-> Und von der Arbeit den Schaltschrank zu verpacken mal ganz abgesehen...

    Kleine Rückmeldung…


    <a href=http://www.roboterforum.de/roboter-forum/kuka-roboter/krc-startet-nur-warmgelaufen/msg41671/#msg41671>Mit Eurer Hilfe</a>, hatten wir den Fehler an unserem Roboter ziemlich gut eingekreist. Schien das Motherboard oder der Prozessor zu sein. Mein Chef lehnte jedoch ab, daß wir den Roboter selbst reparieren. Ein Techniker von Kuka war Ihm allerdings auch zu teuer (die müssen aus Toulouse, ca. 200 km entfernt, kommen). So stand der schöne Robi erst einmal still.


    Dann kam aber meinem Direktor die erleuchtende Idee: Schaltschrank KRC 2 eingepackt und nach Paris geschickt (schlappe 850 km). Dort wurde dann das Motherboard ausgetauscht. Und ab zurück. Hier angekommen, mußten wir feststellen, daß der Rechner nicht richtig festgeschraubt war und sich beim Transport gelöst hatte. Also, Retour nach Paris... Soll wohl nächste Woche zurückkommen. Mal schauen.


    Eins ist sicher: ich glaube niemand von Euch hat je einen Roboter nach Paris/Augsburg geschickt um eine Karte auszutauschen. Oder??? :uglyhammer_2:


    Viele Grüße,
    Tilman

    Ich habe die Breiträge von Wolfram übersetzt und meinem Chef vorgelegt. Der wollte dann gar nicht mehr mit mir reden...


    "Da krieg ich echt 'n Hals", ja so ging es mir auch! Wie kann man nur in einer FH die Studenten mit defekten Material arbeiten lassen? Ich habe deswegen den Roboter heute morgen stillgelegt. Bin mal gespannt, wie es weiter geht.


    Besten Dank noch mal für alle Eure Antworten, Ihr habt mir mal wieder gut geholfen!


    Viele Grüße,
    Tilman/Perpignan

    Danke Grubba für Deine Antwort.


    Wir haben den Gefahrenbereich abgesperrt, die Tür löst einen hardwaremäßigen Not-Halt aus. Und es gibt natürlich auch den Zustimmungsschalter. Trotzdem habe ich ein mulmiges Gefühl dabei, einen Roboter zu benutzten (und vor allem benutzen zu lassen), bei dem der Rechner bekanntermaßen regelmäßig aussteigt.


    Eine Schule sollte eigentlich ja auch Vorbild bei diesem Thema sein.


    Tilman

    Danke Wolfram für Deine Antwort. Ich kann Dir hier nur zustimmen!


    Mich interessiert auch der technische Aspekt. Da der Computer ja eine zentrale Rolle bei Kuka spielt: Wenn der Rechner verrückt spielt (sagen wir mal durch einen Defekt des Speichers), gibt es da einen Sicherheitsmechanismus der sofort einen Stop des Roboters auslöst?


    Viele Grüße,
    Tilman

    Hallo,


    Eine etwas ungewöhnliche Frage: stellt eigentlich ein Roboter von Kuka, bei dem der Computer nicht mehr zuverlässig arbeitet (Hardware Problem), ein Sicherheitsrisiko dar?


    Grund der Frage: ich arbeite an einer Fachhochschule und mein Direktor scheint die Ausgaben für die Reparatur zu scheuen. Ich bin da anderer Meinung.


    Mich würde interessieren, was Ihr dazu denkt!


    Viele Grüße,
    Tilman/Frankreich

    Vielen Dank, IrrerPolterer, für Deine Antwort!


    Soll vorher die BOF und/oder Cross3 beendet sein oder nicht?


    Ich habe einmal Windows manuell heruntergefahren (weiß allerdings nicht mehr genau wie), danach mußte der Roboter neu kalibriert werden.
    Deswegen frage ich mal lieber vorher :->


    Viele Grüße,
    Tilman

    Hallo,


    Ich habe zwei Fragen zu unserem KR6/2 (Windows 95, KSS 4x).


    1) Manchmal funktioniert die serielle Schnittstelle nicht (nachdem die Schüler damit Experimente gemacht haben). Nach einem Kaltstart klappt alles wieder. Meine Frage: gibt es eine andere (schnellere) Möglichkeit, einen Reset dieser Schnittstelle vorzunehmen?


    2) Wie kann ich den Roboter sauber herunterfahren oder neu starten (die Kalibrierung soll nicht verloren gehen), ohne den Haupt-Ausschalter zu benutzen?


    Vielen Dank,
    Tilman/Frankreich

    Vielen Dank, Drudge, für Deine Antwort.


    Wir haben inzwischen unser "Projekt" abgeschlossen, anbei ein kleines Video. Die Aufgabenstellung repräsentiert zwar nicht wirklich eine industrielle Notwendigkeit... hat aber viel Spaß gemacht.


    http://www.youtube.com/watch?v=mMDK_8C_dTc


    Ich danke Euch allen, ich habe unheimlich oft in diesem Forum als Vorbereitung gelesen und wieder viel gelernt.


    Schöne Grüße,
    Tilman/Frankreich

    Vielen Dank, Stethi. Das hilft mir weiter!


    Bleibt das Problem mit der Länge der Zeichenketten unter 4.x. Ich habe das inzwischen so gelöst, daß der Computer immer gleich lange Zeichenkletten schickt (mit Leerzeichen aufgefüllt). Funktioniert bestens, aber falls es eine Möglichkeit gäbe, strlen zu implementieren, würde mir das noch besser gefallen!


    Mit freundlichen Grüßen, Tilman

    Hallo,
    Dann noch gleich eine Frage hinterher, diesmal zu der seriellen Schnittstelle. Mit MAX_RX_BUFFER kann man die Anzahl der Buffer festlegen. Wie muß der Sender (bei uns der Computer) die Daten senden, damit der Roboter einen neuen Buffer nimmt? Ist das Abwarten einer Zeitspanne größer als CHAR_TIMEOUT die einzige Möglichkeit, oder gibt es auch ein Steuerungszeichen wie EOF?
    Mit freundlichen Grüßen,
    Tilman/Jochems

    Hallo Stethi,


    Danke für Deine Antwort. Die serielle Schnittstelle hatten wir bereits konfiguriert. Unser Problem ist eher die Programmierung mit Zeichenketten. In der Version 5.x existieren da ja einige Funktionen. Aber wir haben im Augenblick noch 4.x auf dem Roboter. Da wäre z.B. eine Funktion wie strlen sehr nützlich... Deshalb alle meine Fragen.


    Viele Grüße,
    Tilman/Frankreich

    Hallo,


    Nach einer längeren Pause… darf ich mich wieder mit Kukas beschäftigen :). Wir haben gerade ein "Schulprojekt" in dem der Roboter Silhouetten und Buchstaben malen soll.


    Wir wollen die Informationen über die serielle Schnittstelle senden. Das sieht dann ungefähr so aus:


    "* J 50.0 150.0 * L 50.0 50.0 * L 100.0 50.0 * L 100.0 150.0"
    "* J 50.0 100.0 * L 100.0 100.0 * J 125.0 150.0 * L 125.0 50.0"
    "* L 150.0 50.0 * C 175.0 75.0 150.0 100.0"


    Nun zu den Fragen, die ich dabei habe:


    1) DECL char Buf[8]="abc"
    Ich habe festgestellt, daß ich Buf[4] nicht lesen kann (normal, noch nicht initialisiert). Nur, wie kann ich dann eine Funktion strcpy schreiben (gibt es noch nicht in Version 4.1)? Mir fehlt die Information über die Länge der Zeichenkette! Oder sollte ich jede Zeichenkette mit einem speziellen Charakter beenden (wie die 0 in C oder C++). Wie macht Ihr das?


    2) Gibt es so etwas wie \n oder \xxx in KRL?


    3) Dann gibt es da die berüchtigte Zahl 470. Trifft diese Begrenzung eigentlich auf alle Funktionen die mit Zeichenketten arbeiten zu? Ich habe die Begrenzung bei SREAD festgestellt.


    4) In der Datenliste wollte ich eine sehr lange Zeichenkette abspeichern (470 Zeichen). Habe etwas geschrieben in der Form:


    Cmd[2,]="xxx ...ziemlich lang... xxx"


    Das klappt bei der Version 5.x, nicht jedoch bei 4.x. Durch Verkürzen der Zeichenkette habe ich das Problem "gelöst". Meine Frage: kennt jeder die genaue Begrenzung für Zeichen pro Zeile in einer Datenliste?


    Vielen Dank im voraus,
    Tilman/Frankreich