AndrejP

MrPLC Member
  • Content count

    37
  • Joined

  • Last visited

Posts posted by AndrejP


  1. Hello.
    What is the best option using TCP/UDP communication to use CP1L-EM40 as SLAVE / IO Expansion?
    For MASTER I’m using CJ2M-CPU31.
    Since now I’ve used FINS _CPU010_SendData and _CPU011_ReceiveData function blocks.
    The problem is, that I’m communicating with 6 slave IO units and to read/write all 6 units it takes up to 1 – 2 seconds.
    I’ve tried Ethernet/IP protocol but CP1L units doesn’t support this protocol.
    Is there some kind of different TCP/UDP protocol which is faster than FINS? 
    In older days you could use PC Link but this protocol is for RS232 / RS485 comm.

    I know I could use CP1W-EIP61 but I don't have this adapter and I can't afford to buy one
    Thanks. 


  2. If you are using TCP/IP  (UDP):

    In my experience the best and the easiest option is to use FINS read / write function blocks.

    For this to work, you have to have different numbers of last IP address (xxx.xxx.xxx.III).

    Then you have to set the NODE address in IP Addresss Table.

    If you have network number different than 0, then you have to use CX-Integrator.

    BR, A.

     

     

    1122.png

    1123.png


  3. Hello.

    I need to create project to manage FLOAT VALVE.

    Let's say that RUNNING_Time of valve is 100 seconds.

    Usually I would control the float valve in this way:
    When I start or stop the regulation, the valve would be closing for 110% of RUNNING_Time (positioning).
    When the positioning is done, I would start NORMAL_Operation.
    In normal operation I would like to drive the valve based on time intervals.

    If the valve is closed and the POSITION_Setpoint is 50%, I would set the DIGITAL_OUT_Open for 50 seconds.

    If the POSITION_Setpoint then goes to 60%, I would set the DIGITAL_OUT_Open for 10 more seconds.
    Does someone have this kind of sample written in CX-Programmer?
    Thanks.

    I have INPUT data for valve:

    - POSITION_Setpoint (0-100%)

    - RUNNING_Time  (120 sec)

    I would like to have OUTPUTS:

    - POSSITION_Current

    - DIGITAL_OUT_Open

    - DIGITAL_OUT_Close


  4. Hello.

    I'm having CJ1M unit with ETN21 card on remote site.

    I can't drive to the site and look at the rotary switches to determine what is the units NODE NUMBER.

    I can connect to the PLC remotely using CX-Programmer.

    Is it possible to read the setting of NODE NUMBER remotely?

    Is this NODE NUMBER settings saved somewhere in CIO or DM area?

    Thanks.

    BR, Andrej.


  5. I'm already using OMRON driver.

    But I'm upgrading system from 6.1 to 2020.

    The problem is that OMRON driver support AR registers to only AR27.15

    I need to read AR402.04 (LOW Battery)

    I know I could link AR to HR register but I have a lot of PLCs and not all can be REMOTELY accesed.

    In Citect 6.1 there was an easy "hack" to this limitation. You edited OMRON.dbf file.

    In Citect 2020 this no longer works.

    AR.png


  6. Thanks for answer.

    I did use Host link. The driver is named OMRON.

    The problem is that OMRON driver allow to read A registers from A0 to A27.

    I need to read the BATTERY status located on A402.04.

    I know I can modify / copy A to HR, but I have quite a lot of PLCs to modify.

    BTW: FINS3 support serial communication. You must enter 0/0/0/S for PLC address.

    But the problem is in FINS HOSTLINK HEADER NODE (Node = 0) by default and I can't find parameter to change this number.

    BR.

     

     


  7. Hello.

    I'm having problems communicating with omron CJ1m through SERIAL port.

    I'm using OMFINS3 protocol.

    Settings:

    Citect.ini  Source: 0/10/0  10..Last IP Address (used for TCP/IP)

    BOARD: BOARD1, COMx

    PORT: PORT1, PORT Nr=1, BOARD1, 9600, 7 ,2, EVEN

    DEVICE: OMR_SER, Dev Nr= 1, Address: 0/0/0/S, PROT: OMFINS3, PORT: PORT1

    If the Unit number = 0, this works.

    If I set the OMRON Unit number = 1, this stops to work. 

    I figured out (using Multiway) that the problem is in FINS HOSTLINK HEADER NODE (Node = 0) 

    [10:22:07,273]  <--:@00FA080000300000000010007010182000100000372*<CR>
    [!]: No response

    If I change the FINS HOSTLINK HEADER NODE (Node = 1)  it WORKS.

    [10:31:32,336]  <--:@01FA08000030000000001000801018200010000037C*<CR>
    [10:31:32,445]  -->:@01FA00C0000200010000000008010100008830000000003D*<CR>

    The problem is, that I don't know where can I change the FINS HOSTLINK HEADER NODE in Citect's OMFINS3 driver.

    The Citect's OMFINS3 driver always use FINS HOSTLINK HEADER NODE (Node = 0)

    Can you help me?

    Thanks.


  8. Hello.

    I'm using OMRON NB Display

    Did someone already made time adjustment from NB to OMRON PLC?

    What I'm trying to do is to adjust time  from HMI to PLC.

    Since now I have done time sync from PLC to HMI using timer and data transfer.

    Now I would like to adjust current time in PLC using NB HMI.

    I know how to do it, but I'm some kind a lazy person.

    In our country there is a saying: " Don't reinvent things that already exists"

    Thanks.

     

    BR, Andrej.


  9. Hello.

    I have CP1L EM30 with unknown IP.

    I have tried to use "Direct Ethernet Connection" with "Network Browser" but with no success.

    I have manually set the ethernet IP4 address to 192.168.20.20 / 255.255.255.0

    I've got error: "The OMRON Ethernet Direct Connection Manager service is starting in Safe Mode because Windows APIPA is enabled. (0x82020003)Omron.Cxmw.Modules.SystemLibrary.SysLibException"

    The PLC does NOT have default ip 192.168.250.1.

    What Can I do? Please help.

    Thanks.

    BR, Andrej.

     

    Omron.png


  10. Hello.
    Is it possible to hard reset (power cycle) the CP1L-E cpu unit using software?
    I'm having difficulties, because when you configure IO MAD42 card via CIO registers, you have to power cycle the PLC.
    The problem is, that I remotely configure the PLC.
    If I put PLC to program then to run mode, the configuration fails to update.
    Is there some kind of BIT to do "virtual" power cycle?
    Thanks.


  11. I guess it has something to do with Regional Format (SL).
    I have to use comma (1000,0) instead of dot (1000.0)....
    In other software which uses structure text, I didn't have this kind of problem...
    BR.
     

    1 person likes this

  12. Hello.

    I'm having difficulties of how to write REAL constant in ST.

    For example (Gap1 is defined as REAL):

    Gap1:= UDINT_TO_REAL(P_Cycle_Time_Value) / +1000.0;     RETURNS ERROR ERROR:   Conversion cannot convert from Integer Literal to REAL

    I have also tried 1000.0

    If I use: 

    Gap1:= UDINT_TO_REAL(P_Cycle_Time_Value) / INT_TO_REAL(1000);  COMPILES OK

    My question..

    How do I write REAL constant in Structure text? I don't want to use  INT_TO_REAL anytime I want to do calculations with constants..

    Thanks.

    BR.


  13. Hello.

    I'm trying to develop Tau filter wich uses time calculations like this:

    TimeNew := GetTime() // system time in miliseconds

    ExpTime := TimeNew - TimeOld

    TimeOld := TimeNew

    I guess I colud use CycleTime, but the resoult for CycleTime is not constant... 


  14. Hello.
    I'm having variable Voltage expressed as UNSIGNED DOUBLE INT.
    For example: Val = 23423
    For displaying the right value I have to divide value by 100 ... Val/100 = 234.23V.
    For showing the value I can set the decimal place to 2 and Unit&Scale to 1002.

    The problem is:
    THE GRAPH IS SHOWING Val=23423. I WOULD LIKE TO SHOW Val=234.23.
    HOW CAN I USE THE DECIMAL PLACES IN GRAPH?
    WHERE CAN I SET THIS SETTING?

    Thanks.
    BR, Andrej.


  15. Hello.

    I'm developing NS5 HMI visualization.

    The display is using TCP/IP comunication.  (IP: 192.168.1.21) communicating with PLC (IP: 192.168.1.20 - my PC)

    I would like to start PLC (CJ2M) simulator on my PC (IP: 192.168.1.20) so that HMI would comunicate with my PS (PLC Slave simulator)

    Does the simulator exists?

    Thanks.

    BR, Andrej.


  16. Hello.

    Thanks for sample.

    But I would like to hide the input field (password).

    I tried to do this with setting:

    - Control Flag: Display: Hidden.

    But then the function does not work.

    Do you have any other suggestions?

    Thanks.

    BR, Andrej.

     

    PS: I can move the input field off the screen, but I think this is not the best solution.


  17. Hello.

    I'm using CX-Designer.

    I would like to create a BUTTON with label Log In.

    When I press that button it should:

    1. PopUp keyboard would appear

    2. I would enter login password for example 0000

    3. Entered password would write to PLC location D1000

    How can I do that?

    Please help.

    BR, Andrej.