1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. Fanuc Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

RJ3 + Lack of Background Task Capability

  • MMCINTIRE
  • February 4, 2020 at 3:08 PM
  • Thread is Resolved
  • MMCINTIRE
    Reactions Received
    2
    Trophies
    3
    Posts
    29
    • February 4, 2020 at 3:08 PM
    • #1

    I am fairly new to Fanuc integration and have mostly worked with the R30iB controller. We have an RJ3 controller with HandlingTool V5.30-3G and I require a clever solution for updating some registers. If I were using the R30iB controller, I would use a BG Task to set this data but I don't believe that is an option with the RJ3 controller.

    The cell does have the PMC option and I could purchase A08B-9210-J505: Fanuc Ladder III (Compatible with HandlingTool versions 5.22 thru 5.30-3) but this software requires a windows 95, 98, NT, or 2000 operating system. My IT department is not willing to let me install a VM with one of these operating systems so purchasing the software and making the necessary changes to the PMC ladder is not an option.

    What I need is some added functionality for controlling a conveyor system without the need for the robot to be running. To me this is the perfect use for the BG Task utility.

    Can anybody with educate me on alternative methods for continuous execution of executing of a monitoring program with an RJ3 controller?

  • kluk-kluk
    Reactions Received
    53
    Trophies
    5
    Posts
    300
    • February 4, 2020 at 3:41 PM
    • #2

    For RJ-3, bg-logic is an option.

    Maybe your boss is willing to buy it...

    Otherwise you can look into condition monitor.

    I have never used it, so I don't know if it's usefull for your purpose.

  • MMCINTIRE
    Reactions Received
    2
    Trophies
    3
    Posts
    29
    • February 4, 2020 at 4:32 PM
    • #3

    Unfortunately, according to FANUC and the Tech Support department, the BG-Logic isn't an option available for the RJ3 controller.

    I haven't used the condition monitor for something like this but I believe this would require me to start the condition monitor from a tp program and I might not have started a tp program yet and still need the registries to update. Also, a stop condition monitor is typically added at the end of the tp program so I don't know how the cell will react if the condition monitor is not ended.

    After reading your reply, I again contacted Fanuc support just to be sure about the BG-Logic option and technical support informed me that BG Logic didn't come until later. Tech support did offer me an alternative solution though this time...I will try to create a macro that is activated from the PWR_NORMAL variable which will start the macro at power up as long as the motion group is set to all * the macro will run a continuous loop.

    I'm going to give that a shot now.

  • TitusLepic
    Reactions Received
    113
    Trophies
    7
    Posts
    442
    • February 4, 2020 at 4:45 PM
    • #4

    What about using an autoexec program?

  • MMCINTIRE
    Reactions Received
    2
    Trophies
    3
    Posts
    29
    • February 4, 2020 at 5:23 PM
    • #5
    Quote from TitusLepic

    What about using an autoexec program?

    This is another potential option that I will look into. This is setup in system config correct?

    Thanks for pointing out autoexec! I have used this before but I have only been using FANUC a little over a year so and with such little experience solutions don't come to mind very quickly.

  • droth
    Reactions Received
    11
    Trophies
    3
    Posts
    185
    • February 4, 2020 at 10:00 PM
    • #6

    This is slightly off-topic, but does anyone know what the first version of HandlingTool w/ BGLogic is? I have a couple of R-J3iBs with BGLogic, and I have several other R-J3s without it.

    Maybe you should write a sort of MAIN program to run as your autoexec and then set up one of the USER buttons to CALL or RUN a conveyor program. I feel like you are going to run into issues unless your autoexec has more flexibility than just running your conveyor...

  • MMCINTIRE
    Reactions Received
    2
    Trophies
    3
    Posts
    29
    • February 4, 2020 at 11:46 PM
    • #7

    ***UPDATE***

    After trying the $PWR_NORMAL variable and adding my macro to the variable I received 2 errors...

    TPIF-098: $PWR_NORMAL is not executed

    TPIF-099: This program is being edited

    Also, the last support chat I had was with a much more experienced tech. I did find out that the most resent version of Ladder III software will support PMC ladder for HandlingTool Version 5.30-3G and it will install and run on all newer versions of Microsoft OS so that is the most logical solution for me moving forward.

    Although I enjoy learning about the variables $PWR_NORMAL and $PWR_SEMI, it becomes rather frustrating when I am given wrong information from tech support. I am happy that I got a valid answer regarding the software but the challenge of bypassing certain PMC variables without using the software is going to nag at me because I know there has to be a way!

  • pdl
    Reactions Received
    272
    Trophies
    9
    Posts
    1,549
    • February 5, 2020 at 3:46 PM
    • #8

    You need to create a program offline and edit the header. The important part is ABORT_REQUEST and PAUSE_REQUEST, but I also like to set BUSY_LAMP_OFF to one, so that the cycle start button isn't always glowing. Here is some sample code:

    Code
    /PROG  MULTI_IO
    /ATTR
    OWNER        = MNEDITOR;
    COMMENT        = "Concurrent IO";
    PROG_SIZE    = 2996;
    CREATE        = DATE 93-06-22  TIME 09:42:04;
    MODIFIED    = DATE 11-06-25  TIME 08:06:20;
    FILE_NAME    = ;
    VERSION        = 0;
    LINE_COUNT    = 143;
    MEMORY_SIZE    = 3572;
    PROTECT        = READ_WRITE;
    TCD:  STACK_SIZE    = 0,
          TASK_PRIORITY    = 50,
          TIME_SLICE    = 0,
          BUSY_LAMP_OFF    = 1,
          ABORT_REQUEST    = 3,
          PAUSE_REQUEST    = 7;
    DEFAULT_GROUP    = *,*,*,*,*;
    CONTROL_CODE    = 00000000 00000000;
    /MN
       1:  !******************************** ;
       3:  !* RJ3 M410i-HS PalletTool 5.30-1 ;
       4:  !******************************** ;
       5:  !8-18-04 TML ;
       9: LBL [1000]    ;
    
    INSERT YOUR CODE HERE {Real code has been removed for customer privacy issues}
    NOTE: YOU CAN USE CALLS AND WAITS IN THIS PROGRAM UNLIKE BG LOGIC WHICH CAN BE VERY USEFUL
    
     135:   ;
     136:  !******* SEND PROD DATA TO PLC ** ;
     137:  CALL CHK_CYC    ;
     138:   ;
     139:  WAIT    .25(sec) ;
     140:  IF R[101:MULTI_IO ABORT ]<>7261,JMP LBL[1000] ;
     141:  R[101:MULTI_IO ABORT ]=0    ;
     142:  GO[8:Robot Error Num]=400 ;
     143:  LBL[9999] ;
    /POS
    /END
    Display More

    Some notes:

    1. This program is only able to be stopped by manually setting register 101 to 7261 from the teach pendant, adjust as needed, but leave a kill register in there or you'll only be able to adjust the program by loading a new copy from controlled start.

    2. You will either need roboguide, ktrans, or the ASCII upload option to compile the .ls into a loadable .tp file

    3. This code has been used on RJ controllers running version 4 :winking_face:

    4. This program can be executed as either the hot or cold start autoexec program.

    Hope this helps,

    -Phil

  • MMCINTIRE
    Reactions Received
    2
    Trophies
    3
    Posts
    29
    • February 6, 2020 at 2:59 PM
    • #9

    Thanks for the suggestion Phil! Just a couple questions about your reply...

    In your program snippet, I see you have added a .25 second wait for what I would guess is a wait time to prevent the program from hogging resources. Is that the lowest value you would use or is that a standard wait time you use for tasks like this?

    Quote from pdl

    Some notes:

    1. This program is only able to be stopped by manually setting register 101 to 7261 from the teach pendant, adjust as needed, but leave a kill register in there or you'll only be able to adjust the program by loading a new copy from controlled start.

    2. You will either need roboguide, ktrans, or the ASCII upload option to compile the .ls into a loadable .tp file

    Note #1: When you mention kill register, you are referring to R[101] correct?

    Note #2: I do have roboguide but I have never used it to convert .ls to .tp files. I haven't used roboguide much but I would guess I need to create a project where the robot has the ascii upload object and upload the .ls file. Then I would need to "backup" the converted .tp file and load it into my RJ3 correct?

    I understand the need for changing the pause and auto abort settings but what portion of the .ls file would I be changing that prevents error TPIF-099 as mentioned above?

    Also, FANUC tech support recommended that I utilize a user alarm that could abort all programs should this program get paused. Then use the user alarm to abort the program and, if the program is a macro and it is added to the macro table, I can restart it after it is aborted. By editing the header, the program would not be able to be aborted by when I set the no-pause setting it shouldn't be able to be paused either so I don't know if the user alarm is a necessary precaution.

  • pdl
    Reactions Received
    272
    Trophies
    9
    Posts
    1,549
    • February 6, 2020 at 7:46 PM
    • #10

    Yes, in this case R[101] is being used as the kill register, but it could be any register with any code.

    By default, all robots created in RoboGuide have the ASCII upload option, that's how Fanuc has chosen to create their software. Compiling to a .TP from a .LS is pretty simple, there is a build button that has a syntax and error checker that makes RoboGuide quite a bit more useful than just the real ASCII upload option on a regular robot (if you try to load a program with errors on a real robot, it just tells you that there is an error, not where or what it is, RoboGuide will actually find and alert you to the errror).

    I don't think the user alarm is necessary, but it can be nice to make sure that the program is running, If you forget to restart the program after editing it, you can be left scratching your head until you realize that the program isn't running, but this is no different than normal BG Logic that you have to stop and start to edit.

    This will get rid of the TPIF-099. as long as you kill the program first with the kill register. Here's my normal sequence for editing this program:

    1. Enter 7261 into the kill register, you'll know that the program was aborted because the register will immediately change to 0, if it didn't that's because the program was already aborted.

    2. Select the background program and edit as you normally would.

    3. Once finished, just press shift and forward in the background program to start it back up.

    Yes, the .25 second wait is to avoid hogging resources. I've seen it set as low as .01 and still work just fine. You may have to play with it if latency is an issue. On newer (version 8 and up) this isn't necessary, but it is certainly needed on older robots, without it the teach pendant will almost instantly lockup.

  • MMCINTIRE
    Reactions Received
    2
    Trophies
    3
    Posts
    29
    • February 21, 2020 at 9:08 PM
    • #11

    Ok, I was able to purchase the Ladder III software so that I could just update the ladder.pmc file.

    The speculation was if the software would load on a windows 10 machine and I was able to do that so I am looking to hopefully hit the easy button here and see if somebody can post the steps I need to follow to load the new ladder.pmc file without needing to actually connect to the PMC. I found somewhere that I could load a new ladder.pmc file when in a controlled start so if that is true then I just need to get the modified pmc file.

    I did load the .LAD file into Ladder III and update the bits that I needed to and the projrect compiled without issues. Now I need to figure out how to export a ladder.pmc file from Ladder III so that I can load the new ladder.pmc file into the controller.

    Any help here is greatly appreciated.

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • krc5
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • krc5
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Tags

  • Background Task
  • RJ3
  • BG Task
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download