VKRC befehl "BS" was bedeutet das?

  • halllo leute.


    ich habe ein problem mit einem stück vrl-code, da ich bisher nur krl programmiert habe.
    kann mir jemand sagen, was folgende programmzeile im einzelnen bewirkt:


    BS F300 (AUS) = AUS Schaltpkt: 0 [mm] 500[ms]


    wäre gut, wenn einer der vw-bewanderten von euch mir das kurz erklären könnte.


    eins noch: diese zeile bewirkt, dass sporadisch eine "anforderung laser" verschwindet und der ganze laden treten bleibt. das passiert aber nicht immer... mal nach stunden, mal nach tagen...was es natürlich nicht soll.
    jemand eine ahnung?


    mfg speed

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • Schritt für Schritt zum Roboterprofi!
  • moin moin,
    BS ist die Bahnschaltfunktion
    da kannst du Signale Zeit oder Weg bezogen auf den Punkt schalten.
    Man kann halt beliebige Signale im Bezug auf Zeit oder Weg zum Punkt schalten. Wobei glaube ich auch negative Werte möglich sind.
    lg
    smu

  • danke für die schnelle antwort.
    und was bedeutet dabei, das "(AUS)" vorm "=" ?
    bezieht sich das ganze auf den vorherigen oder den nachfolgenden verfahrsatz?


    mfg speed

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • Hi,


    das "AUS" bedeutet das diese Funktion deaktiviert ist.
    Es darf also garnichts passieren!

    Wenn du dies aktivieren möchtest, musst du da "EIN" eintragen.
    Dann wird das Flag 300 mit 500ms Verspätung abgelöscht.

    Nichts ist einfach - alles bedarf der Übung !

  • ok soweit


    doch warum passiert es dann sporadisch, dass dieses flag verschwindet? dürfte doch absolut nicht passieren, oder?

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • nunja der laserhersteller (den ich jetz mal ungenannt lasse) liest aus seinem protokoll im laser aus, dass die anforderung weggenommen wurde. und der roboter bleibt in dem programm hängen, weil er eigentlich dem laser start gibt und wartet, dass der laser rückmeldet, dass er an ist. geht aber natürlich nicht, wenn der laser keine anforderung bekommt.


    und so kompliziert ist das programm nicht aufgebaut, dass man das nicht überblicken kann...


    kurz nach jener zeile "BS F300 (AUS) = AUS Schaltpkt: 0 [mm] 500[ms]"


    folgt eben wieder "start" und "warte auf start" und da bleibt der robi dann natürlich treten.
    also kein hokuspokus


    ...und doch tritt der oben beschriebene fehler auf

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • Hi,


    mach es uns doch nicht so schwer, häng doch einfach das FILE als Anhang dran, oder kopier es hier rein.
    So ist es echt nicht so ganz einfach.

    Nichts ist einfach - alles bedarf der Übung !

  • wenn du meinst das es an dem Befehl liegt, dann entferne den Befehl doch einfach mal und teste ob es dann funktioniert.
    Ich kann mir nicht vorstellen das es daran liegt.

  • mal langsam bitte. ihr redet mit mir, als wäre ich bescheuert, sry aber das muss ne sein.


    ROBOTBOSS
    ich bin nich erst seit gestern im forum und weiß, dass code posten es leichter machen würde,
    ich kann das aber nich machen, da der kunde das wahrscheinlich nicht so toll finden würde.


    smu
    ich kann das mal machen, aber wie schon weiter oben beschrieben tritt der fehler extrem sporadisch auf, machmal tagelang nicht. ich kann also schlecht probieren, was passiert wenn ich den befehl rausnehme.


    trotzdem danke an euch beide,


    mfg speed

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • also das mit dem bescheuert streite ich ab...aber irgendwie muss man ja den fehler suchen und finden, wenn es anders net möglich ist und der Befehl nicht wirklich etwas bewirkt, dann erstmal weg. so war der gedanke.

  • hast ja recht, wenn er eh deaktivert ist, kann ichn auch raus hauen ... bleibt die skurile tatsache, dass die laser-anforderung raugeflogen ist, trotz, dass der befehl nicht scharf geschalten ist.


    kennt jemand den quellcode, der sich inter diesem "BS" verbirgt...also quasi der krl code? gibt es dort ein schlupfloch, dass bei zeitlich ungünstiger situation sich was verschlucken könnte?.

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

    Einmal editiert, zuletzt von SpeedFreak ()

  • also da bin ich dann überfragt.. kenne die funktion nur, weil sie bei audi für einige applikationen vorgeschrieben ist.
    Haus erstmal raus und seh weiter ;)


  • also das mit dem bescheuert streite ich ab...aber irgendwie muss man ja den fehler suchen und finden, wenn es anders net möglich ist und der Befehl nicht wirklich etwas bewirkt, dann erstmal weg. so war der gedanke.


    Hi,


    SpeedFreak
    da schließe ich mal an, wollte dich nie dissen oder sonst irgend etwas anderes. Sorry.
    Das mit dem Hersteller konnte ja keiner ahnen. Aber auch dieser Code ist bestimmt nicht
    mehr Top Secret das dieser bestimmt schon x-Mal verwendet wurde.


    Lösch den BS-Befehl raus, dann kannst du ja in ein paar Tagen ein Resümee ziehen.


    Bis dahin.

    Nichts ist einfach - alles bedarf der Übung !

  • ok, erstmal alles klar soweit.


    nein, der code is keine zauberei, aber bei vw gehts ums prinzip...


    derzeit haben wir erstmal direkt nach dem "eigentlich deaktivierten" befehl die anforderung prophylaktisch nocheinmal scharf geschalten.


    mal sehen was sich tut.


    mfg speed

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • kennt jemand den quellcode, der sich inter diesem "BS" verbirgt...also quasi der krl code? gibt es dort ein schlupfloch, dass bei zeitlich ungünstiger situation sich was verschlucken könnte?.


    Hi,


    normalerweise müsste es sich da um den Trigger-Befehl handeln. Also "Trigger when distance" oder "Trigger when path".


    Gruß ... gooselk

  • So,nu gebe ich auch mal meinen Senf dazu.


    Deine Bahnschaltfunktion schaltet en Flag und keinen Ausgang. Somit kannst du nicht sagen,wenn dein Flag durch die BS geschaltet wird,dass dein Ausgang das selbe tut. Durchforste dein Programm,wo das Flag deinen Ausgang beschreibt. Kann in der Sps.sub, MakroSPS,VW-User usw sein. Wenn du es nicht findest, stell dein komplettes Archiv rein.


    Nu zum Geheimnis BS:



    Hab mal zwei Punkte mit BS versehen. Der Code sieht dann so aus in KRL:



    PTP VB=100% VE=0% ACC=100% Wzg=1 SPSTrig=0[1/100s] P;%{P}%MKUKATPVW,%CMOVE,%VPTP,%P 1:1, 2: VB=, 3:100, 4:%, 5: VE=, 6:0, 7:%, 8: ACC=, 9:100, 10:%, 11: Wzg=, 12:1, 13: SPSTrig=, 14:0, 15:[1/100s], 16: P, 17:1, 18:-1, 19:-1
    ; FOLD BS A1 ( EIN ) = EIN Schaltpkt: 0 [mm]: 0[ms];%{SE}%MKUKATPVW %CVW_SPS %VBSBO %P 2:BS A1 ( EIN ) = EIN Schaltpkt: 0 [mm]: 0[ms],3: BSBO
    ;ENDFOLD
    ;FOLD {H}
    VW_MPARA_ACT = P1_D
    VW(#MPARA,TRUE)
    TRIGGER WHEN DISTANCE=1 DELAY=0 DO $OUT[1]=(TRUE)
    PTP P1
    WAIT FOR TRUE
    ;ENDFOLD
    ;ENDFOLD
    ;FOLD PTP VB=100% VE=0% ACC=100% Wzg=1 SPSTrig=0[1/100s] P;%{P}%MKUKATPVW,%CMOVE,%VPTP,%P 1:1, 2: VB=, 3:100, 4:%, 5: VE=, 6:0, 7:%, 8: ACC=, 9:100, 10:%, 11: Wzg=, 12:1, 13: SPSTrig=, 14:0, 15:[1/100s], 16: P, 17:5, 18:-1, 19:-1
    ; FOLD BS bin1 ( EIN ) = 1 Schaltpkt: 0 [mm]: 0[ms];%{SE}%MKUKATPVW %CVW_SPS %VBSARI %P 2:BS bin1 ( EIN ) = 1 Schaltpkt: 0 [mm]: 0[ms],3: BSARI
    ;ENDFOLD
    ;FOLD {H}
    VW_MPARA_ACT = P5_D
    VW(#MPARA,TRUE)
    TRIGGER WHEN DISTANCE=1 DELAY=0 DO VW(#TRIG_BIN,TRUE,1,1) PRIO=-1
    PTP P5
    WAIT FOR TRUE
    ;ENDFOLD
    ;ENDFOLD

  • hallo stehti.


    das ein flag kein hardware-ausgang ist, ist mir schon klar, aber ich geh mal davon aus, dass bei vw alle software e/a an der gleichen stelle auf die hardware geschrieben/gelesen werden. oder muss ich da rücksicht drauf nehmen, dass nicht alle flags am selben punkt auf die hardware umgelegt werden und umgegekehrt?


    oder ist das nicht so?


    weiß da jemand bescheid, wo die schnittstelle hardware e/a zu software e/a geschrieben/gelesen wird?


    ps: interessant wäre auch mal, wie ein BS-befehl aussieht, wenn der "AUS" geschaltet ist.

    200% Override ... irgendwas klingt hier komisch ... und irgendwie riecht es auch ...<br /><br />Abkühlzeit Bremsen Achse 2: 57 Sekunden :D

  • Hallo


    Flags werden doch nicht auf die Hardware umgelegt. Das ist doch nicht mal bei der KRC so. Ein Flag ist doch nur Software. Oder kann mich da jemand erleuchten?


    Ich meinte, dass ein Flag ja nicht automatisch deinen Ausgang beschreibt. Das musst du ja irgendwo programmieren. Ich mach es z.B. so, dass ich im Programm ein Flag als Überwachung einschalte und es in der MakroSPS in Verbindung mit EAs in Selbsthaltung bringe. Also nochmal, wenn deine BS das Flag einschaltet, heisst es immer noch nicht,dass der A auch geschaltet wird.


    Die Kombination Software<-->Hardware ist denk mal bei VKRC genauso.

    Einmal editiert, zuletzt von Stethi ()

  • PTP VB=100% VE=0% ACC=100% Wzg=1 SPSTrig=0[1/100s] P;%{P}%MKUKATPVW,%CMOVE,%VPTP,%P 1:1, 2: VB=, 3:100, 4:%, 5: VE=, 6:0, 7:%, 8: ACC=, 9:100, 10:%, 11: Wzg=, 12:1, 13: SPSTrig=, 14:0, 15:[1/100s], 16: P, 17:1, 18:-1, 19:-1
    ; FOLD BS A1 ( AUS ) = E1 Schaltpkt: 0 [mm]: 321[ms];%{SE}%MKUKATPVW %CVW_SPS %VBSBO %P 2:BS A1 ( AUS ) = E1 Schaltpkt: 0 [mm]: 321[ms],3: BSBO
    ;ENDFOLD
    ;FOLD {H}
    VW_MPARA_ACT = P1_D
    VW(#MPARA,TRUE)
    TRIGGER WHEN DISTANCE=1 DELAY=321 DO VW(#TRIG_OUT,FALSE,1,0,0,0,$IN[1]) PRIO=-1
    PTP P1
    WAIT FOR TRUE
    ;ENDFOLD
    ;ENDFOLD
    ;FOLD PTP VB=100% VE=0% ACC=100% Wzg=1 SPSTrig=0[1/100s] P;%{P}%MKUKATPVW,%CMOVE,%VPTP,%P 1:1, 2: VB=, 3:100, 4:%, 5: VE=, 6:0, 7:%, 8: ACC=, 9:100, 10:%, 11: Wzg=, 12:1, 13: SPSTrig=, 14:0, 15:[1/100s], 16: P, 17:5, 18:-1, 19:-1
    ; FOLD BS bin1 ( AUS ) = i1 Schaltpkt: 0 [mm]: 54[ms];%{SE}%MKUKATPVW %CVW_SPS %VBSARI %P 2:BS bin1 ( AUS ) = i1 Schaltpkt: 0 [mm]: 54[ms],3: BSARI
    ;ENDFOLD
    ;FOLD {H}
    VW_MPARA_ACT = P5_D
    VW(#MPARA,TRUE)
    TRIGGER WHEN DISTANCE=1 DELAY=54 DO VW(#TRIG_BIN,FALSE,1,I[1]) PRIO=-1
    PTP P5
    WAIT FOR TRUE
    ;ENDFOLD
    ;ENDFOLD

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden