Beiträge von Iceberg


    War mir aber auch in der genannten Form aufgefallen, betrifft irgendeine Überschneidung in den Dialogen, ist also mithin eine Fehlbedienung. Führt aber dazu, dass man sich veräppelt fühlt, weil sich das Programm dann nur noch dazu überreden lässt, die neue Version zu übertragen, wenn man in jeder betroffenen Datei noch einmal editiert.


    Bei dem von mir genannten Fall hatte selbst das nochmalige editieren der Datei(en) nichts gebracht. Bis auf das neu starten von WoV konnte ich keinen workaround finden. Ausser natürlich auf keiner Netzwerkfreigabe zu arbeiten.


    Eine weitere Frage habe ich noch, wo ich mir nicht sicher ist ob das ein Bug oder ein Feature darstellen soll. Ist es mit WoVi vorgesehen, Programme von Robotern editieren zu können, zu welchen aktuell keine Netzwerkverbindung besteht? Wenn ich WoVi starte, das jeweilige Projekt öffne und anschließend "Programmierung und Diagnose" auswähle, muss ich den Roboter erst wieder über das Netzwerk hinzufügen um die Programme editieren zu können.
    Eine Option ist natürlich, die Programme am PC z.B. mit N++ zu öffnen, aber in meinen Augen ist das doch ein alltäglicher Use Case, offline die Programme auf WoVi vorbereiten zu können.



    Aus genau den oben genannten Problemen ist mir das zu blöd mich jedesmal mit den neuen Fehlern und Problemen auseinanderzusetzen, und benutze nach wie vor WoV zum Konfigurieren und evtl. Kopieren der ersten Version von vorbereiteten Programmen, dann nur noch Notepad++ über eine Netzwerkfreigabe.


    Langsam bewege ich mich auch schon wieder in diese Richtung. :wallbash:

    Hallo zusammen und danke schon mal für die vielen Antworten.
    Gut zu hören, dass WoV endlich recht brauchbar ist. Bis auf den von mir genannten Fehler machte es auch einen recht stabilen und brauchbaren Eindruck. Stürzte also nur zwei bis drei mal pro Tag ab :mrgreen:
    Ein Workaround bzw eine genauere Fehlerbeschreibung konnte ich mittlerweile auch schon erarbeiten. Ich arbeite mit WoV in einer virtuellen Maschine und habe mir das Verzeichnis des Repositorys als Freigabe vom Wirt-System an das Gast-System weiterreichen lassen. Wenn ich das Verzeichnis direkt im Gast System belasse, habe ich den Fehler nicht. Mal sehen, wann ich dazu komme mir das genauer anzusehen. Vielleicht belasse ich den Ordner im Gast.


    Kuka nennt die Ordner der Programme doch Repository. Die werden doch nicht ernsthaft endlich Softwareversionierung ermöglichen? (Zu dem Thema werde ich vielleicht hier noch was fragen. Stichwort git)


    btw.: meine WorkVisual Version ist die aktuellste (5.0) EDIT: und ich arbeite mit Windows 10


    Grüße
    Reinhard

    Hallo zusammen,


    da ich mir gerade die Neuheiten in WorkVisual (WoVi) ansehe, teste ich gerade die Programmierung der Abläufe direkt in WorkVisual (Arbeitsbereich "Programmierung und Diagnose"). Früher habe ich das Übertragen von Programmen die ich am Computer editiert habe immer über USB Stick oder Netzwerkfreigabe gemacht und dann am KCP die jeweiligen Dateien eingespielt. Die Variante auf WoVi würde das natürlich erheblich beschleunigen. Leider erscheint mir das ganze etwas inkonsistent. Änderungen die ich im WoVi gemacht habe, erkennt er mir bei "Änderungen übertragen" oft nicht und meldet mir nur "Keine Unterschiede vorhanden". Wenn ich WoVi ein mal komplett schließe und neu öffne erkennt er mir den Unterschied und ich kann die geänderten Programme auf die Steuerung übertragen.


    Was nutzt ihr, um offline angepasste Programme zu übertragen? Programmiert ihr offline mit einem einfachen Texteditor wie Notepad++ oder mit Orange Edit? Oder funktioniert bei euch WoVi bzw ich übersehe einen Button, der das neue Vergleichen der Versionen erzwingt?


    Grüße
    Reinhard


    Gibt es ungeschriebene Gesetze, an die man sich halten sollte? Bzw. Tipps und Vorgehensweisen eurer seits, auf die man von vorne rein achten kann um Wartungsarbeiten und eventuelle Ergänzungen zu vereinfachen?


    Mit den Thema kannst du Bücher füllen. Aber der Link "Strukturierte_Programmierung" von Jörn sollte schon mal ein sehr guter Anfang sein. Von Robert Martin kann ich das Buch Clean Code empfehlen, das geht aber sehr in Richtung objektorientierte Sprachen. Für prozedurale Sprachen würde ich das aber auch mal empfehlen.
    Ganz wichtig ist meiner Meinung nach aber auch Erfahrung im Programmieren an sich. Sauberer Code entsteht auch, in dem man sein Vorgehen immer wieder hinterfragt und versucht alte Fehler zu vermeiden. Noch dazu wird man die Vorteile einiger Vorschläge auch erst verstehen, wenn man mal so programmiert hat.


    Meiner Meinung nach stehen einem aber auch die Programmiersprachen auf den Robotern oft im Weg, saubere Programme zu schreiben. Und wenns nicht der Roboter ist, dann der Kunde mit Programmvorgaben jehnseits von Gut und Böse.


    Grüße
    Reinhard

    Hallo zusammen,


    kann bei Epson Robotern eine Funktion als lokal definiert werden? Sprich, die Funktion ist nur Modulweit bekannt im jeweiligen prg File.
    Bei Variablen funktioniert das laut Dokumentation ja zum Glück. Bei Funktionen konnte ich bisher noch nichts entsprechendes finden.


    Ausserdem vermisse ich Konstante. Hier kann ich zwar mit #defines arbeiten, aber verliere die Typsicherheit.


    Steuerung ist übrigens eine aktuelle RC700-A


    Grüße
    Reinhard

    Nachdem dein Fehler ja immer an der einen Achse ist, würde ich dein Justagegerät schon mal ausschliesen. Schau dir aber die Mechanik (den Stößel) davon sicherheitshalber mal an. Ich würde in deinem Fall mal die Achse selbst ansehen. Also die Mechanik, die dein Justagesensor auslöst. Elektrisch könnte es noch die Encoderleitung der Achse sein.


    Grüße,
    Reinhard

    Also für die inverse Kinematik solltest du erst einmal die Vorwärtsrechnung in homogene Koordinatensysteme darstellen. Dabei beachten, dass (wie in der Denavit Hartenberg Konvention) die Z Achse der Matrix die Rotationsachse der Achse am Roboter darstellt. Denavit Hartenberg würde ich nicht mehr nutzen, die war eigentlich zum Vereinfachen der Matrixmultiplikationen um Rechenleistung zu sparen. Spätestens bei absolutvermessenen Robotern brauchst du "vollwertige" homogene Koordinatensysteme.


    Anschließend stellst du die Gleichung der Vorwärtsrechnung um, in dem du alle konstanten Frames auf die linke Seite bringst (durch das hinzumultiplizieren der Inversen des jeweiligen konstanten Frames). Jetzt solltest du nur noch die Kette von Achse 1 bis Achse 6 mit den Link-Frames dazwischen auf der rechten Seite der Gleichung da stehen haben. Jetzt trennst du die drei Grundachsen A1 bis A3 bis zum Handwurzelpunkt und die Handachsen A4 bis A6 auf. Die Grundachsen löst du dann über das geometrische Verfahren, also mithilfe der Kreisfunktionen sinus cosinus usw. Du wirst dabei auf die accos Funktion stoßen, die du allerdings nicht verwenden solltest. Nutze hier die atan2(y, x), da accos für Argumente +/-1 schlecht konditioniert ist.


    Die Handachsen kannst du anschließend über ein homogenes Koordinatensystem lösen. Ergibt dann eine 4x4 Matrix mit einigen sinus und cosinus Thermen.


    Grüße,
    Reinhard

    Ich weiss ich habe einen alten Thread ausgegraben, aber für die Suchmaschine schreibe ich hier mal rein wo die Zeit zum automatischen Benutzerwechsel in der KRC4 geändert werden muss:


    Geändert werden muss der Wert <LeaseTime>300</LeaseTime> in der Datei Authentication.config
    Zu finden ist die Datei bei einer KRC2 im Verzeichnis KRC/HMI/CONFIG/Authentication.config
    Bei einer KRC4 ist die Datei im Verzeichnis KRC/SmartHMI/CONFIG/Authentication.config
    10. Zeile gewünschten Wert in Sekunden eintragen (Standartwert 300)


    z.B.:
    Original:


    Für eine Wartezeit von 24 Stunden (entspricht 86400 Sekunden) bis zum Automatischen Abmelden:


    Nach dem Ändern Steuerung neu starten damit der Wert übernommen wird.


    Grüße,
    Reinhard


    Nichts gegen das System.
    Aber die Komponenten.
    Man hätte was besseres als Beckhoff finden können und ja, da ist wie wir alle wissen auch das WoV und sein Umfeld noch verbesserungsfähig.
    Somit widersprichtst Du mir nicht.


    ...ich ehrlich gesagt schon :mrgreen:
    Meiner Meinung nach ist die Beckhoff-Hardware eine gute Wahl. Erst recht das Preis/Leistungsverhältnis.

    Klar, irgendwie kann man sich das dann schon auch wieder hinbasteln. Ich verstehe aber erlich gesagt nicht, warum ABB keine fussgesteuerte Schleiffe "out of the Box" hat. :wallbash:
    Selbst die Augsburger Puppenkiste hat Kopf und Fussgesteuerte Schleiffen in allen Varianten...

    Denso VP-5243E/GM


    Verkaufe funktionsfähigen 5-Achs-Denso-Roboter, Baujahr 2006. Kann in Betrieb besichtigt werden. Die Batterien der Steuerung und des Roboters wurden gewechselt. Zudem wurden alle Motoren durch neue ersetzt! Diese Wartungsarbeiten wurden im Jahr 2013 durchgeführt.


    Lieferumfang: Steuerung RC7M-VPG5, Kabel (Stromversorgung und Kabel von Steuerung zu Roboter) und MP7ME3P4 Bedienpanel.



    Herstellerangaben:


    Reichweite: 430 mm
    Traglast: 3 kg
    Zykluszeit 300 mm + 25 mm aufnehmen und ablegen: 0.99 sec
    Wiederholgenauigkeit mit 1 kg Traglast: +- 0.02 mm
    Massenträgheit: 0.04(J5) kg/m²
    Gewicht: 13 kg
    Abmessungen Standfläche: 160x160 mm
    Achswinkel: J1: +-160°, J2: +-120°, J3: +136° -126°, J5: +-120°, J6: +-360°
    Kombinationsgeschwindigkeit: 3.900 mm/sec
    Anschlüsse: 4x Luft, 1x Sub-D 9-pol


    Preis 8000,00 Euro VHB


    Kontakt: schweiger.reinhard[äät]googlemail com



    Haftungsausschluss:


    Außer in den Fällen des § 309 Nr.7 a) und b) BGB schließe ich als Privatanbieter die gesetzliche Gewährleistung komplett aus.

    Hallo zusammen.


    Der Titel erklärt eigentlich schon alles... Da ich vermute dass wie bei KUKA die Schlüssel für alle Panels passen, wollte ich fragen ob jemand noch einen/zwei von den Schlüsseln übrig hat? Panel ist das aktuelle Touchpanel der RC7M Steuerung.


    Grüße
    Reinhard

    So, ich werde dann hier auch mal meine Sammlung veröffentlichen:


    Manager eines größeren Konzerns in Kaluga, Russland. Beides während einer Fehlersuche der Instandhalter an einer Spritzgussmaschine:
    "Die sind Beratungsresistent!"


    Selber Manager kurze Zeit Später:
    "Manchmal frag ich mich wie die auf den Mond gekommen sind"



    Monteur eines Portalroboters bei der Integration seiner Station in meiner Anlage:
    Er "Kannst du mal das Bauteil ansaugen?"
    Ich: "Nein, aber ich kann dir die Venturidüse einschalten"


    Nochmal Portalrobotermonteur:
    Portalroboter fährt langsam sein Programm ab. Wir stehen beim Roboter und der Monteur steht am Bediencomputer.
    Ganz gemütlich bewegt sich der Roboter auf eine Kollision zu. Wir sagen: "so, jetzt Stop... stop!.... Kannst du mal anhalten?... STOPSTOPSTOPSTOP *Crash*"
    Er: "Achso, wirklich Stop?"


    wieder der Portalrobotermonteur:
    "Können wir mal die Schutztür schließen? Also, ähm, Virtuell zumindest?"


    uuuund noch eins vom Portalrobotermonteur:
    "Das ist nicht schlimm, aber... Ok, das ist schlimm"



    Mein Arbeitskollege beim Telefonieren mit einem anderen Kollegen:
    "Ja also wir haben hier jetzt am Roboter dieses und jenes gemacht und haben jetzt Folgende Fehlermeldung (...). Ist das schlimm? (...)"
    in beruhigter Tonlage: "Aha, ok, tötlich..."


    Kunde während Schulung:
    "Die Robotersteuerungen werden anscheinend deshalb nicht einfacher gehalten, damit ihr eure Jobs sichern könnt, Richtig?"


    Ein Kunde hatte immer anstelle von "Eingang" das Wort "Zugang" verwendet. Mein Kollege und ich wollten ihm immer wieder beibringen dass das Ding ein EINGANG ist. Eines Tages bei einer Fehlersuche wegen eines fehlenden Eingangs war es endlich so weit und er fragte uns "Hab ihr jetzt den EINgang"?
    Mein Kollege und ich voller Freude: "Ja endlich, er hats kapiert!!"
    Kunde zu seinem Kollegen: "Jetzt gehts, der Eingang ist da!" *freu*
    Der Eingang war natürlich nicht da, wir waren nur glücklich dass das Wort "Eingang" nun in seinem Sprachgebrauch wieder zu finden war. ;)


    Hotline eines führenden Herstellers von Industrierobotern:
    "Wozu brauchen Sie überhaupt den Profibus? Können Sie das nicht auch anders lösen?" (Nachdem mir die Hotline beim Konfigurieren des Profibus nicht mehr weiter helfen konnte)


    Arbeitskollege betrachtet grad die EA Liste in Robotstudio:
    "Was blinkt da die ganze Zeit so dämlich?... Die Aktualisierung?"
    Ich "ja, Typisch ABB hald"
    Arbeitskollege: ...kurzes verweilen und dann in gestresstem Ton: "das Nervt"


    Arbeitskollege von welchem auch im "Zugang vs. Eingang"-Zitat die Rede ist:
    Arbeitskollege: "Was ist ein GI?"
    Ich: "Ein Gruppeneingang"
    Arbeitskollege: "Das müsste doch GZ heissen?"
    Ich: "Warum?"
    Arbeitskollege: "GruppenZUGANG"


    Mechanischer Konstrukteur des Kunden betrachtet eine Verschraubung für Pneumatikanschlüsse um das Gewinde zu reduzieren: "Was is das denn?"
    Elektriker: "Das ist eine..."
    Ich falle dem Elektriker ins Wort: "ein 2/1 Wege Ventil. Zwei Anschlüsse, eine Schaltstellung!"
    Elektriker: "...eine Reduzierung"


    Kunde1 (betrachtet den Schaltschrank): "Sieht doch Hübsch aus!"
    Kunde2: "Findest du?"
    Kunde1: "Nö!"


    Ich an einem meiner lustigen Tage auf der Baustelle:
    "Switche switchen schnell."
    "Schweitzer Switche switchen schneller!"
    "schwitzende schweitzer Switches switchen noch schneller."
    "schnell schwitzende schweitzer Switches switchen am schnellsten."


    Kunde nach dem ich ihm mehrere Fehler in seiner Anlagenkonstruktion genannt habe:
    "aach, ich bin mitlerweile Erkenntnisresistent"


    Kollege: "Hier riechts so nach Strom!?!"


    Kollege: "Ähm, kannst du mich später nochmal anrufen? Naja weil ich grad mal was Arbeite?"


    Ein Kunde beim lesen meines Programmcodes: "SocketCreate... socketBarCode.... Was ist das für eine Sprache?"
    Ich: "Englisch"


    Ich beim versuch einen neuen Mitarbeiter anzuwerben: "Grundvoraussetzung um bei uns arbeiten zu können, ist unseren Humor entweder zu verstehen oder wenigstens ignorieren zu können."


    "Ein nicht näher spezifizierter Fehler ist aufgetreten!"
    (Fehlermeldung der Steuerung eines nicht näher spezifizierten schwedischen Roboterherstellers)


    Kunde beim Erklären seines Tätigkeitsfelds: "Wir müssen aus Scheiße Marmelade machen. Die Konsistenz stimmt schon mal, am Geschmack arbeiten wir noch!"


    Kunde am Telefon: "Tut mir leid, aber Herr XXZ ist zur Zeit telefonisch nicht da."


    Kunde: "Was heißt ABB? Andere bauen besser?"


    Kunde am Telefon: "Sag mal warum hast du denn bei der Anlage XY das Robroot nicht gedreht du Strumpf?"


    Ich: "Meistens sind leider nur die Kunden komplizierter als die Programme!"


    Kunde beschwert sich in einer Besprechung bzgl. verlagern von Schweisspunkten über die Kurzfristigkeit der Aktion:
    "Da springt bei uns wieder einer ausm Busch und alle müssen dann nach seiner Trommel um ihm im Kreis tanzen!"


    ja den gibts
    die billigste variante zum stoppen ist wait.
    [size=5pt]natürlich immer sehr vorteilhaft für die Taktzeit[/size]


    Bei Kuka ist es am einfachsten einen Vorlaufstopp mit WAIT SEC 0 zu schreiben. somit wird der Vorlauf sicher an dieser Stelle gestoppt, aber keine Zeit verlohren um zu warten. Auch $advance (=Reichweite des Vorlaufzeigers) muss dann nicht umprogrammiert werden.
    Probier einfach mal bei deinem Fanuc eine Wartezeit von 0 Sekunden zu programmieren. Sollte genau so funktionieren.

    Hallo zusammen,


    die Frage steht eigentlich schon oben. Ich will in einem IF Satz einen Digitaleingang und einen Digitalausgang abfragen.
    so funktionierts zumindest schon mal nicht:

    Code
    IF di_xy=1 AND do_xy=1 THEN
      !Anweisung
    ENDIF


    Ziel ist es natürlich den Ausgang abzufragen ohne ihn über EAs wieder rein zu simulieren. :roll:


    Gruß Reinhard