Posts by skalactik


    I did a few tries using RG and i was able to monitor the state of UI[1]/OPIN[16] using the exact same instructions.

    Based on my research so far, i came to the conclusion that it was not possible to do a software restart by the use of a system variable of some sort.


    Though if you are familiar with the controled start procedure you will notice you can do a cold start via a menu (FCT).
    What i would like to do now is to dwelve into how menus works in the controller and check if they are any infos(like file) stored on the controller to understand how this function is achieved.
    Sadly i dont have the time to do so at the moment, however if you're willing to explore this way i would love to hear of your progress :icon_mrgreen:.

    Quote

    Dear Friend


    in fanuc robot - how to calculate the Robot power consumption


    if you have any ideal and detail pl kindly share to us...


    FANUC provide this information in the controller operator manual. Usually you will find Power rating(VA) and average power consumption(W).

    Quote

    Just to guard them from a crash more than anything. I just would prefer not having to jog the robot to every point a record where I am in each axis to set limits over that. It would be nice to have it just keep up with the min and max of every axis, then I set a limit around that after it's run awhile


    So you're looking to set limits to the max and min value of each axis ?
    If so you can use the CURJPOS instruction to retrieve the current angle value of each axis and use the same kind of logic to stop the robot once any of the values goes beyond limits.
    Just access each element of the JOINTPOS type variable.

    Quote

    Question I have, is I've had Karel programs hang up and the only way to fix it was to cycle power or Abort. If I put it in Autoexec and a problem arrises. How would you clear it then?


    If you remove the %NOABORT attribute from the program, it will abort itself everytime an error occur (i never paid attention on how it works with warnings).
    You'll need to run the program again (either manually or through some kind of logic depending on what you want to do)


    Quote

    Something else I've always wanted to do is to make a Karel prgram that constantly updates the greatest and lowest value each Cartesian axis reaches then set a program like i described to monitor it. SO that way, if anyone changes a program off of it's intended course, the robot would alarm out and stop.


    Are you looking to prevent someone from modifying TP program position or just to check if anyone have moved the robot manually ?

    Yes but you need to add some stuff to your program.
    First, right after the PROGRAM ***** line, you need to add some attributes :
    %NOLOCKGROUP -- because the karel program won't use motion
    %NOABORT = ERROR + COMMAND -- ERROR will prevent the karel program from aborting if any error occur and COMMAND will prevent the user from aborting the Karel program from the TP
    %NOPAUSE = ERROR + COMMAND + TPENABLE -- Same as %NOABORT, TPENABLE disable pause of the karel program when the TP is turned on.


    Then you can add a master loop with a condition that is never satisfied to prevent your program from ending


    You can even add your program the the Cold and HOT start autoexec to run the program at startup (i would recommend removing the COMMAND part from the %NOABORT attribute as you will need a way to move the robot once it reached the boundaries)

    If you want to use Karel, use CURPOS and CURJPOS built-in routines to get TCP position in cartesian and joint representation.
    Use this with simple program control like REPEAT ... UNTIL or Condition Handlers to stop robot motion.
    You can use $MCR.GRP[1].UOP_IMSTP or $MCR_GRP[1].$MACHINELOCK to stop and prevent motion of the robot while boundaries are crossed

    Quote

    does anyone know how to change the "$VTSENS[1].$VP_NAME" vision process name by using karel. thanks


    PROGRAM test


    VAR
    ENTRY:INTEGER
    STATUS:INTEGER


    BEGIN
    SET_VAR(ENTRY,'*SYSTEM*','$VTSENS[1].$VP_NAME','myname',STATUS)
    END test

    Integrator and operator manuals for your controller model are the ones you are looking for.
    (your controller model) integrator manual will show you how and where to do the electrical connection for your controller, while operator manual will teach you how to configure and use the DI.
    Also you can search this forum, i'm pretty sure there is a lot of topics covering this subject.

    If your positions are known in advance, you could try using FTP to send a file to the controller with all the positions inside and use KAREL to read those positions.
    OR if the positions are simple enough, you could use the Digital Input to send those coordinate as bytes.


    All the other way i know of to communicate with the robot come as option and thus are purchasable (including R648).