FANUC I/O Address Mapped I/O

  • I am having trouble assigning digital outputs for my FANUC 200 IC robot with R-30iA Controller.

    This is my first project with FANUC so I am new to this.


    I have assigned my UOP inputs [1-8] and those work as I expect. For example I have Start assigned to Rack 48 Slot 1 Start 23. However I am unsure how to assign my DO[101-120].

    I am using the CRMA 58/59 50 pin Honda connectors for my peripheral I/O which is wired to PLC inputs and outputs.


    So my question is what rack slot and start should I assign to DO[101-120]?

    20345-wiring-png

  • Hi Andnet Deboer,


    The rack number will match whatever communication you're using. The numbers are predefined (i.e., 89 = Ethernet, 100 = ProfiNet Device, etc.), and easily searched for. In your case, you're using 48 (address mapped I/O for peripheral connectors), which will apply to all your communication. The rack number will change only if you want a different communication protocol.


    Slot number will not change, I think. The slot numbers are usually different for when you use more than one device on the same communication.


    And the start should be whatever number you want to assign to the PLC.


    For example:

    If you wanted your DO[101] to turn the PLC's input 101, you map DO[101] to Rack 48, Slot 1, Start 101.


    You can always assign all your peripherals consecutively. If you want DO [101 - 120] to match the PLC's DI[101-120], map DO101 - 120] to Rack 48, Slot 1, Start 101.


    Hope that helps.

  • Thank you for your help.


    I tried assigning DO[101-120] to rack 48 slot 1 start 101 but I got an invalid status.

    Any start that I assign that is greater than 24 for my output assignments I recieve an invalid status.

    Similarly any start that I assign that is greater than 28 for my input assinments I also recieve an invalid status.


    Is there some setting I need to adjust this restriction?


    I also turned $IO_AUTO_CFG to true and it auto configured DO[101-120] to rack 48 slot 1 start 1. This was valid but when I turned the outputs on it did not send a signal to any of the output pins on the peripheral IO board.

  • You mean

    48..............1...............24 ?


    You should write

    48..............1.................1

    meaning

    first output on your crm58 is 101

    second output on your crm58 is 102


    When you use the 24, you are conflicting with other I/0

    Show us you complete setup . What are your values on the picture that I posted ?

    Retired but still helping

  • Hi Andnet Deboer,

    I tried assigning DO[101-120] to rack 48 slot 1 start 101 but I got an invalid status.

    First, determine what number input you want the PLC to receive your outputs, don't just go assigning them all willy nilly. Otherwise, you might end up double-mapping. Have you determined which PLC input needs to be the robot's DO[101] yet?
    invalid status.

    Any start that I assign that is greater than 24 for my output assignments I recieve an invalid status.

    Invalid assignments can be if the Rack is incorrect, if you're trying to assign more outputs than the communciation has allocated, or if trying to allocate more outputs than allowed. Have you checked you have the right number of words / bytes in the communication with the PLC?

    I also turned $IO_AUTO_CFG to true and it auto configured DO[101-120] to rack 48 slot 1 start 1.

    Auto-configuration will assign the maximum number of I/O on the first spot available on the communication protocol, using the length you've entered in words / bytes. So, although it might find an available stop, it can sometimes also double map.

    For example I have Start assigned to Rack 48 Slot 1 Start 23.

    I noticed you mentioned you assigned Rack 48, Slot 1, Start 23. When you Auto-configured, DO[101 - 120] to Rack 48, Slot 1, Start 1 did you also double map your other IO?


    Lastly, don't forget that changes to IO mapping will only be made after a controller restart.


    Hope that helps.

  • I turned on DO[101-120] and the status light changed to green but when I measured the voltage between pin 17 on the Peripheral IO board which is OV and the output pins it remained at 0v.

  • Andnet,


    I'm unsure on how your communication protocol works, since I'm more familiar with different ones.

    Usually, you can find the settings for your communication protocol in: Menu > 5 I/O. Towards the end of the list the installed communication protocols are listed. There, under configuration you can change the number of input / output size.


    Additionally, the PLC and robot communication size has to match. Sometimes, only the PLC can determine the communication size and the robot has it as a 'read-only'. Your PLC counterpart should be able to provide you information on the size needed.


    Again, I'm unsure on what communication protocol uses Rack 48, so someone else might have a better response.

Advertising from our partners