Beiträge von Dodo


    Aber ich weiß noch nicht ein mal wie man Variablen deklariert.


    Hallo,
    ich denke, Du musst erst mal da ansetzen, dass Du Deine Programmierkenntnisse vertiefst! :idea:
    Sonst wirst Du mit den Musterprogrammen, die dir die Jungs zur Verfügung stellen, nicht viel anfangen können!
    Das muss nicht unbeding KUKA spezifisch sein! Grundkenntnisse im Programmieren (was ist ein Datentyp, warum brauche ich Variablen, welche Variable ist wo gültig....) reichen da aus!
    Dazu findest Du bestimmt was im Internet! Einfach mal "googlen" (steht dieses Wort schon im Duden :denk: :denk: ) nach Programmiergrundlagen oder sowas.

    Wenn Office Lite auf'm Rechner installiert ist und das WinCC (was normalerweise unmöglich ist)


    kann man im WinCC flex..


    Meinst Du jetzt WinCC oder WinnC flexible? :denk:
    Warum soll das normalerweis unmöglich sein? :denk:
    Office Lite und WCCf hab ich...


    Hmm, hab's mal gerade probiert. Ich finde unter Wekzeugen keinen Ordner Eigene Controls :denk: :???::cry:


    Ich würde dafür einen eigenen Punkt nehmen und nicht die Home-Position!
    Wie Stefan_M geschrieben hat!


    z.B.
    XSAK_Pos=$axis_act
    ptp XSAK_Pos


    Ist natürlich generell mit Vorsicht zu geniessen! Mir gehr die SAK Fahrt zwar auch jedes Mal auf den Zeiger, aber besser als was kaputtzufahren ist sie auf jeden Fall! :genau:

    HOV und POV sollten über Bus kein grosses Problem sein!
    Wert in ein Byte schreiben über HMI Byte an Robbi schicken,
    Mit dem Byte als Gruppeneingang die Variable beschreiben, deren Name mir jetzt nicht einfällt :kopfkratz: :denk: , in der POV drinsteht.
    Haben wir mal gemacht über die Oberfläche einer Sinumerik.


    Wie heissen denn im WCCf diese vordefinierten Buttons?

    Alternativ kannst Du auch einen Achs-Workspace (genaue Bezeichnung fällt mir gerade nicht ein :denk: ) definieren, in dem nur die A1 Werte zugewiesen bekommt. Damit kannst Du einen bestimmten BEREICH der Achse abfragen und hast gleiche eine boolsche Variable, die anzeigt, ob die Achse richtig steht. Anders musst Du "von Hand zu Fuss" einen Vergleich zwischen Soll- und Istpposition machen.


    Wenn ich mich mal einmischen darf, ich glaube mit "historischem Hintergrund" meint Ihr diesen Herrn hier:


    http://en.wikipedia.org/wiki/Edsger_W._Dijkstra



    Cool! In Wikipedia gibt's nen eigenen Artikel über den GOTO Befehl! Und es gibt sogar Abhandlungen, warum man ihn nicht benutzen soll!
    Muss ich mal lesen, wenn ich Zeit hab!


    Die Abhandlungs stammt übrigens aus dem Jahr 1968, somit hab ich ne tolle Überleitung zu dem Thema "historsicher Hintergrund": Falls es jemanden interessiert:


    Früher (als z.B. Twix noch Raider hiess und Telefone noch Kabel hatten) wurden Programme mit Zeilennummern geschrieben, aber anders, als das z.B. der KUKA heute noch macht.
    Damals "zeigten" GOTO Befehle auf Zeilennummern, also z.B.


    50 MAch irgendwas
    60 IF .... THEN GOTO 100
    ...



    100 Mach sonstwas
    ...


    Wollte man jetzt eine Zeile einfügen, konnte (musste nicht unbedinbgt) es vorkommen, dass sich die Zeilennummern veränderten. Damit "zeigte" der Sprungbefehl an ein falsches Sprungziel und schon war das Programm versaut.


    Manchmal musste man mit GOTOs "hin- und her" springen, sozusagen von "oben nach unten" und wieder von unten nach oben". Da war es mit der natürlich mit der Übersicht schnell vorbei! In manchen Sprachen gab es aber einfach keine Unterporgramme, oder eine IF Then Anweisdung konnte nur einen Befehl haben, da ging das nicht anders!!
    Als dann struktrierte Programmiersprachen aufkamen, war natürlich der bisherige Programmierstil veraltet und man hat Programme ganz anders aufgebaut. In dieser Zeit entstand das Dogma "GOTO=Böse".


    Heute verwendet man natürlich Sprungmarken, die sich nicht "verschieben" können, wie früher die Zeilennummern.
    Und wenn man jetzt den GOTO gezielt einsetzt, um z.B. aus ner Schleife rauszuspringen oder einen Teil eines Programmes zu überspringen sehe ich nicht, was daran so schlimm sein soll.


    Ich hab früher Assembler programmiert und programmier heute noch viel SPS in AWL (ob das gut oder schlecht ist,wird auch gerne in anderen Foren diskutiert, auch ein Dogma, manche Kunden verlangen es halt einfach), da sind Sprungbefehle einer der Hauptbestandteile der Programmierung.


    Ich programmier auch Hochsprachen, da würd ich' auch nie GOTO verwenden, aber gerade bei Robbis macht's m.E. ab und zu Sinn. Einerseits vermeidet es Probleme (Ich sag nur "Kontrollstruktur nächster Satz" :wallbash: ) und andererseits ist es für einen Bediener, der nicht so viel mit Programmierung zu tun hat, manchmal einfacher nachzuvollziehen.



    Fazit: Wer will, kann GOTO vermeiden, wer's nicht tut, ist nicht automatisch ein schlechter Programmierer! :dance2:



    Jetzt geb ich Ruhe zu dem Thema, es hat nämlich wirklich nix mit der eigentlichen Frage zu tun! Ich finde nur solche Pauschalisierungen und Dogmen nervig!


    Jetzt haben wir uns aber alle wieder lieb! :blumen: :blumen: :blumen: :blumen: :peace:

    P.S.: Wie kann ich nen Smiley basteln, der ein "GOTO" Schild hochhält ? :huh: :kopfkratz: :denk: :zwink: :angel: :angel:



    :backtotopic:



    Nö.


    Wie schon gesagt jedem das seine.


    In diesem Sinne bis dann...


    Ohne das Thema allzu breit treten zu wollen: Hast Du denn eine Ahnung, WARUM der GOTO Befehl immer als "böse" hingestellt wird? :denk: :kopfkratz:
    Da gibt es einen klar definierten "historischen" Hintergrund dazu. Den kennt heute nur fast keiner mehr! Aber wie gesagt, das Dogma hält sich!
    Das ist wie "Freitag der 13te"! Jeder "weiss", dass das ein "Unglückstag" ist, aber keiner weiss, warum! :wallbash:


    Aber wie Du schon sagst: Jedem das seine! :lol::beerchug: :liebe024:


    Ja so könnte man das machen, aber in der heutigen Zeit sollte man doch GOTO Anweisungen vermeiden. Zeugt von nicht alt zu guter Programmierung! :down:


    Ach, da war es wieder, mein Lieblingsthema beim Programmieren! Es fasziniert mich immer wieder, mit welcher Verbissenheit an Dogmen festgehalten wird, ohne den Sinn zu hinterfragen! :wallbash: :mrgreen: :zwink:
    Es zeugt immer von guter Programmierung, einen Code so einfach und überschaubar wie möglich zu halten! Wenn dabei ein GOTO Sinn macht, macht er halt Sinn! :genau:


    P.S. Was nicht heisst, dass es an der oben beschriebenen Stelle Sinn macht! Da ist das "Umdrehen" natürlich besser!

    Hi, falls das noch akuell ist:


    Wie wäre es denn mit einem "Spielzeugroboter", an dem der knftige Rentner noch ein bisschen basteln kann.
    Gibt's doch in verschiedenen Arten, z.B. von der Firma mit den bunten Plastiksteinen.

    Um den Experten mit meinem gesunden Halbwissen vorzugreifen:
    Ist ne OPtion, die KUKA sich teuer bezahlen lässt. :bawling:
    Wir hatten vor einigen Jahren mal darüber diskutiert und sind zu dem Schluss gekommen, dass ich für das Geld auch ne "harte" SPS einbauen kann. Da weiss ich, was ich hab. :denk: :angel:


    A.f.a.I.k. gibt es von den weichen SPSen derer 2: Eine IEC61131-3 kompatible und Win-AC von Siemens. Für beides muss man natürlich die entsprechende Programmiersoftware haben.

    "Darfst" Du nicht vom Betreiber aus oder sind die Greifer so "gefährlich"?
    Wir schalten die Luft nur über Not Aus ab.


    Den Ansatz, die Luft über Motoren-Ein zu schalten finde ich ne gute Idee, aber wie würde man das realisieren?
    Über nen Ausgang zuschalten wäre wohl auch nicht im Sinne der Sicherheit...

    Ich kenne ja Tauch- oder Segelkurse, die man im Urlaub z.B. in Portugal macht.


    Es gab auch mal eine Computerschule, bei der man in Spanien im Urlaub WIndows lernen konnte.



    Hat da jetzt jemand eine Marktlücke entdeckt und bietet KUKA Kurse im Robinson Club an? :denk::grinser043:
    Da bewerb ich mich doch gleich als Aushilfs-Lehrer! :mrgreen: :mrgreen:


    Olaf, Du formulierst das sehr gut! :supi:


    Mir ist es schon oft passiert, dass eine Berechnung oder eine Schleife und ähnliche "Hochsprachen-Formulierungen" natürlich wesentlich flexibler, eleganter und für den erfahrerenen Programmierer auch übersichtlicher sind.
    Aber leichter lesbar und vielleicht auch besser zu ändern sind solche Konstrukte schon. Gerade für Anwender.
    Ich programmiere ja auch viel SPS, da muss ein Instandhalter so was auch nachvollziehen können!

    stefanM
    Wie definierst Du unübersichtlich? :denk:


    Wenn ich Olaf richtig verstanden habe, reden wir sowieso nur von 8 Ausgängen, die er verwenden will.
    Und solange wir nicht gerade von über 20 Ausgängen reden, finde ich es übersichtlicher, eine lange Switch Anweisung zu haben, die jeder sofort versteht, als eine "Rechenlösung".
    Beim Robbi ist es noch egal, bei ner SPS hättest Du dann noch das Problem, dass Du auch keine Querverweise auf die Ausgänge mehr angezeigt bekommst.
    Von Zykluszeit red ich gar nicht erst!


    Prinzipiell hast Du natürlich recht! :supi:

    Da Du nur die 8 Ausgänge hast und nur einen Ausgang schalten willst, kannst Du ja nur "Dezimalwerte" von 0 bis 8 ausgeben.
    Das würde ich einfach mit ner Switch Anweisung machen.
    In der Switch Anweisung fragst Du den Dezimalwert ab (der ja irgendwo gespeichert sein muss) und weist dann Deinen 8 Ausgängen den passenden Wert zu. In etwa:


    Wert = Variable mit Dezimalwert
    Ausgang = Dein Gruppenausgang


    SWITCH Wert
    CASE 0 Ausgang = 0
    CASE 1 Ausgang = 1
    CASE 2 Ausgang = 4
    CASE 3 Ausgang = 8
    CASE 4 Ausgang = 16
    CASE 5 Ausgang = 32
    CASE 6 Ausgang = 64
    CASE 7 Ausgang = 128
    CASE 8 Ausgang = 256
    END SWITCH


    Nagel mich aber nicht auf die Syntax fest! :-|

    Hallo zusammen,
    als alter Profibusfahrer soll ich michauf meine alten Tage noch mit dem Interbus beschäftigen. :huh: :bawling:


    Da ich auf die Allwissenheit des Roboterforums vertraue, frag ich daher mal einfach so in die Runde:


    KUKA KRC1 DB Ausführung mit Interbus
    Als Slave zwei Beckhoff Stationen mit BK4000 Interbus Koppler und eine mit BC4000 Interbus Controller.


    Die Eintragungen in der IOsys.ini sind mir (denk ich) vom Profibus her klar.
    Was muss ich jetzt in diese ominöse Interbus.ini eintragen und brauche ich eigentlich dieses BG4 File?
    Auf dem Robbi ist kein Cmd installiert.



    Jungs (und Mädels), lasst mich nicht hängen! :danke: :hilfe: :merci: