acidum

MrPLC Member
  • Content count

    4
  • Joined

  • Last visited

Posts posted by acidum


  1. Dear lostcontrol,thanks for your answer.

    I tried to close the connection first, maybe this is the problem. But from a windows sofware, i can run the commands and receive the answers if the connection is open. This sw calls this "persistent tcp connection".

    Quote

    If your intent is to send/receive continuously, then there is no need to close the socket once the data is received.

    This thing is not clear for me at this moment. As i mentioned, currently i am far from the controller, so i know very less about the cycletime, but it seems, i can not wait for the necessary 1-2 min for the re-opening. Instead i keep the connection open.

    I made a dirty routine in LAD (because the local Omron's engineer prefers that) but i make some modification on the FB about your comment too.

    If you let me more more question:if (let's say) the communication works perfectly,and i keep the socket open when would be necessary to close it?
    In manual mode i have to communicate for the PC (for test and setup reasons) so..

    I just simply keep it open until power off? This won't be problem?

    Kind regards: Acidum


  2. Quote

    Have you created that 'DoTCP' function block yourself, or got it from somewhere?

    The block generally based on the example provided on the help, and the "NX-series CPU built-in ethernet/IP" manual, i just implement a jump for sending-receiving.

    FB is just for re-usability. I tried to put in all things in a periodic task, as the local omron representative suggested, but the result was the same.

    Unfortunately i can not test it on the controller at this moment.

    Generally, bad idea put this into anFB?


  3. Dears,

    I have the similar problem. The peers are a PC and an NX1P2.

    I have to send and receive 5 commands and answers. I made a function block.This block makes the commands, and tries to send it via tcp socket (within the same block). The fb based on the help, and I/O_rack's solution, the difference is mine tries to send-receive 5 times instead 1.

    The first command is sent correctly, the answer is received correctly, but the others are not. Sends nothing, and receive nothing.

    What is the correct way to do this?

    - using two FB-s, where the first makes the commands,and calls the second one, which makes the send-receive? But how, completely with connect.etc.. instructions?

    - or the first FB makes commands, and opens the connection (SktTcpConnect, SktClearBuf, etc) and calls the second one, what sends and receives (SktTcpSend, SktGetTcpStatus, SktTcpRcv)?

    Has Somebody made some similar?

    Thanks in advance, and Merry Christmas!