Posts by r013071c5

    I think when during power failure, you definitely need to to do a failure recovery. Even when power is back online I don’t think any robot Brand will continue its process as it’s dangerous.
    One way is to have maybe a plc to detect and then have some error or failure recovery, maybe even sending motor on if the encoder value is not resettled to error. Not commonly practice but it depends on your process.

    upgrading only if you need, not when you want... be so sometimes you need to get additional license when you upgrade to newer robotware.... best is check with your local support on this. Of course as Lemster68 mentioned to you need to have the hardware too... maybe dsqc1000. Dsqc639 max is RW5.6. Of course you can upgrade your computer unit if you really need the function....

    depends on your communication fieldbus you have on your PLC.

    If you are using PLC just to do this, I rather you use a computer and send your information via socket messaging. Which maybe easier as through plc you need to convert here and there. From float to integer then send across and converts the integer to float. To the Pros out there, do correct me if I’m wrong... or if there’s any simpler method. Cheers

    MOVEX A=1, AC=0, SM=0, M1J, P, (0,90,0,0,-90,0), R=100.0, H=1, MS, CONF=0000


    MOVEX: Command

    A= Accuracy

    AC= Acceleration

    SM= Smoothness

    M1J= Mechanism number and also set the type of information in the brackets M1E for encoder, M1J for joint angles, M1X for xyzrpy

    P= Interpolation P for joint, L for linear, C1 for circle 1, C2 for circle 2

    () information that was previously set with Mechanism number, also possible to move POSE number and POSITION variable

    R= Rate in %, S in mm/s, T in time, D in deg/s

    H= Tool number

    MS= Speed master

    CONF= Configuration such as lefty/righty, above/below elbow flip/nonflip J5

    You have 2 choice.


    User FN835 MSRTM


    ■ Example of operation

    1 MSRTM 1,1,V1!

    2 DELAY 1

    3 MSRTM 1,0,V1!


    'FN650 TIMER- Returns the time (in milliseconds) which has elapsed since the power was turned on.

    'FN310 INH- Inhibit to wait till program to move to this step


    TIMER V1! ' Grab time from system when starting process

    DELAY 2 'delay time or you can have your motion or process

    INH 'make sure system wait till this line before grabbing the information again. Without INH you may grab time too early as pointer and

    TIMER V2! 'Grab time from system again

    V3!=V![2]-V![1] 'Calculate how much time in ms the difference in timing

    delay .5

    END


    or like what the Roboter did using FN650.

    No problems whatsoever. IT identified that a couple controllers had the wanna cry virus and we needed to get rid of it. I followed the instructions of running the programs and patches they required. There was no feedback from the teach pendant while I was running the programs, but apparently the scans IT is running on the controllers shows there is no more virus.

    Chances that the virus is in the controller is slim as the controller is "Protected", each time you reboots it gets back to its previous state for the software. So when the virus hits the controller, it should shut down or hangs. Reboot and it's back to normal again.

    I think you may need to change the coordinate

    CHGCOORD (FN113)

    This makes it possible to select the number of the user coordinate system used to implement shifts based on the coordinate system. The number of the user coordinate system must be selected without fail before implementing shift-related commands based on the coordinate system.


    Do remember to change back to 0, which is robot coordinate.


    You may want to check out your any "variable monitor" window to check if the information is updated properly in your usertask.


    If you have FDonDesk 2, you should be able to see easier.

    Or maybe you can use the following commands?

    LEFTY: Arm config. (left/front) (FN161)

    RIGHTY: Arm config. (right/back) (FN162)

    ABOVE: Elbow config. (above) (FN163)

    BELOW: Elbow config. (below) (FN164)

    FLIP: Wrist config.(flip) (FN165)

    NONFLIP: Wrist config. (nonflip) (FN166)

    I have an OTC/Daihen welding package with an AX-21 controller. I have it setup on a rotary table with a side A and Side B. I want to have different programs on each side. I was trying to use an IF statement depending on which side the robot was on, it would call the appropriate program. I don't understand the variable part of it. I have input going to the robot so that it knows which side it is on.

    You can try to use system functions to find out mechanism angle and use the IF function.

    Example:

    if system%(200)>0 'System%(200) Mechanism1 J1 value for external axis. If it's Mechanism 2 you can use System%(210) for J1 211 for J2... etc

    CALLP 1

    elseif system%(200)<0

    CALLP 2

    endif

    end


    Or you can set limit switch to CallPI

    CALLPI 1, I1 'Call program 1 when first limit switch is on

    CALLPI 2, I2 'Call program 2 when other limit switch is on

    Do you have the robot with you? If yes, there's a help button there...


    MOVEX A=1, AC=0, SM=0, M1J, P, (0,90,0,0,-90,0), R=100.0, H=1, MS, CONF=0000


    MOVEX: Command

    A= Accuracy

    AC= Acceleration

    SM= Smoothness

    M1J= Mechanism number and also set the type of information in the brackets M1E for encoder, M1J for joint angles, M1X for xyzrpy

    P= Interpolation P for joint, L for linear, C1 for circle 1, C2 for circle 2

    () information that was previously set with Mechanism number, also possible to move POSE number and POSITION variable

    R= Rate in %, S in mm/s, T in time, D in deg/s

    H= Tool number

    MS= Speed master

    CONF= Configuration such as lefty/righty, above/below elbow flip/nonflip J5