Kuka krc4 8.3 to AB plc rs5000

  • Hello everyone! I have limited experience with kuka and i am slowly working to change that! I have a project where i need to pass data from a recipe stored in the plc to the robots. In the past i did this with a fanuc and i could do a message from the plc dirctly into the robot registers to populate them. I can it with the kuka using bcd and IO but to me it seems like there is an easier way. I want to pass INT and REAL data then store it in variables in the robot. I would approximate that i would be sending around 100 different INT or REAL and then sometimes I would be sending INT or REAL back to the PLC for production status. Like total boxes packed ect.


    Does anyone have a clean way to do this?


    Thanks

  • Place your Ad here!
  • Depends on what connection you have between your KRC and PLC. At the high end, you could use EKI to send massive amounts of data packed into XML formatting.


    At the simplest end, you could assign any number of 16-bit or 32-bit SIGNAL declarations and simply read/write values to/from them as your program executes. Simple, but would use a lot of I/O bits. But the robot can support a few thousand I/O, so your FieldBus connection or PLC would be the limiting factor.


    SIGNAL declarations in KRL are all Unsigned Integer, unless defined as 32bit, in which case they become Signed Integer. You can carry out conversion using IEEE-732 if you need to send/receive REALs, or simply use mulitply/divide by 10, 100, 1000, etc, on both ends to perform a simple movement of the decimal point.


    If you're limited on I/O for some reason, you could create an array and iteratively push/pull data into it over a smaller number of I/O bits. Something like:

    Code
    DECL INT _nIndex
    SIGNAL O_Index $OUT[1] TO $OUT[32]
    SIGNAL O_Value $OUT[33] TO $OUT[64]
    DECL INT iArray[100]
    ; fill array here
    FOR _nIndex = 1 TO 100
      O_Index = _nIndex
      O_Value = iArray[_nIndex]
      WAIT SEC 0.048
    ENDFOR


    That's awfully bare-bones, but the basic idea is simple enough.


  • I will be using ethernet to the plc. I was thinking of doing it the way you show just wasnt sure if there was an easier way.
    What exactally is EKI?

    Edited once, last by SkyeFire ().

  • EKI is the "short nickname" for EthernetKRLXML, an option package from KUKA to make it possible to send and receive data over TCP/IP connections, similar to a Telnet session between computers.


    Some PLCs can work with data transfers of this kind, but some can't, and others can only do it with a particular Ethernet I/O card connected. It can be a bit tricky, though. Most often, EKI is used for connecting a KRC to a PC-based application, since that usually seems to be easier than connecting a regular PC to most industrial FieldBusses.


  • EKI is the "short nickname" for EthernetKRLXML, an option package from KUKA to make it possible to send and receive data over TCP/IP connections, similar to a Telnet session between computers.


    Some PLCs can work with data transfers of this kind, but some can't, and others can only do it with a particular Ethernet I/O card connected. It can be a bit tricky, though. Most often, EKI is used for connecting a KRC to a PC-based application, since that usually seems to be easier than connecting a regular PC to most industrial FieldBusses.


    Ok thanks for the information, looks like i will be stuck doing it the old way.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now

Advertising from our partners