Posts by PMC

    Does anyone know the trick to expanding the DI/DO count to 1024 using E/IP adapter option? I can change the input and output word size to 64 on adapter config screen but I can't assign anything above 512 in the I/O config page.

    When I force F[6:Start] "ON" nothing happens. The hold input is on. I turn if off and then back on in the "HOLD" program when warning 2 input turns off. All the other flags that need to be on when using UOP inputs are, i.e. enable, imstp, etc. I configured START for CONTINUE only as true. When the robot is held the main robot program pauses and I would think turning on F[6] should work.

    I am looking at using an area scanner with an R-30iB controller and no cell fence. When warning zone 1 input turns off I want the robot to change speed to 250mm/sec (which I figured out how to do) and then if warning zone 2 input turns off then I want the robot to hold. When warning zone 2 input turns back on I want the robot to automatically start the program again which I can't figure how to do.


    I have a system condition handler running that is monitoring the area scanner inputs. When warning zone 2 turns on the condition handler calls an AUTO_START program that uses a flag to turn on UI[6:Start] but the program will not start. I have done the basic troubleshooting to prove that the AUTO_START program is being called which it is. I have the UOP inputs mapped to flags at Rack 34, Slot 1, Start 1 which is from the FANUC HandlingTool ops manual. I think I am missing something easy but can't figure it out.


    Has anyone used flags to start a robot program?

    Send an email to tech support at FANUC about this. They are very responsive. Anytime I have an issue with HandlingPRO I contact them.

    Create a macro and put your code in it. Set the macro to run when DI[x] turns on. The user alarm serverity has an effect on how this will work. For example if the severity 6 then the macro will not complete and an alarm will be posted to the TP. If the serveriy is 0 then the user alarm is posted and the macro completes.

    How do you have the ENET cards in your rack connected to the robot? You stated you have 3 cards. Is the Dell switch managed and what are your RPIs for your connections?


    Note - Rockwell doesn't allow multiple devices on the same ENET card to have duplicate IP addresses in version 20 or lower of RSLogix5k. I have heard v21 does but I haven't used it yet. You can get away with one ENET connection to your robot from 1 ENET card in your rack and still use E/IP safety and standard E/IP I/O together. You need to assign an IP address to the E/IP safety module in the I/O configuration tree in L5k and the standard I/O module gets a hostname. FANUC added a DNS server to the robot software that can resolve the hostname. There is a system variable for the DNS server. I have used this several times and it works out great as compared to using the seperate ENET cards in the CLogix rack. Saves $$$.

    If you are using UOPs then I would turn on CSTOPI input when an e-stop occurs. After the cell has been recovered and cycle start is initiated call a program from within your main program to find out where the robot is in the cell. Use an LPOS or JPOS to get the current position. For there you can calculate moves to get clear of any equipment in the cell and then move home.

    In a ControlLogix processor I monitor the connection status to the robot and if there is a fault with the connction I use a BTD instruction (one-shotted) with a source of 0 and a destination tag 'Robot:I.Data[n] (that are the robot outputs over E/IP) to make all PLC inputs from robot 0. Since the connection is faulted or bad I don't want to display invalid status on the cell's PanelView. Note for what it is worth, if you use a GuardLogix PAC and the EtherNet Safety option on the controller and you put E/IP safety in bypass the safety inputs to the robot are ignored but the outputs continue to update. You should consider this when it comes to the design of the safety controls. Now off my soap-box. I don't know how to do this in a MicroLogix processor. I haven't had to use Logix500 for more than 6 yrs now, fortunately.