AndrejP

MrPLC Member
  • Content count

    37
  • Joined

  • Last visited

Everything 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. FINS CMND BETWEEN PLCs

    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.    
  3. CJ2M PING FB

    Hello. Is there some kind of FUNCTION BLOCK to PING IP Device? Thanks. BR, Andrej. 
  4. Float Valve

    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
  5. Float Valve

    @BobLfoot   I have different experiences as you. The forums are usually meant to help users to solve their problems FOR FREE.  
  6. OMRON CJ1W-ETN21 Node Number

    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.
  7. OMRON CJ1W-ETN21 Node Number

    I mean  NODE NUMBER set by rotary switches. I know that the last octet of IP  should be NODE NUMBER. But in my case isn't so.  So the question remains: Is this NODE NUMBER settings saved somewhere in CIO or DM area?
  8. CITECT OMFINS3 Serial

    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.
  9. CITECT OMFINS3 Serial

    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.
  10. CITECT OMFINS3 Serial

    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.    
  11. 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.
  12. CP1L Unknown IP

    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.  
  13. CP1L Unknown IP

    Not good. This is just IP Scaner. As I wrote: The IP of PLC is UNKNOWN. Not in the same subnet...  
  14. 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.
  15. CJ2m Time as millis()

    Hello. I'm using CX-Programer and CJ2M CPU. Is it possible to get current time in ms like in arduinos millis()? Thanks. BR.
  16. Structure Text REAL constant

    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.  
  17. Structure Text REAL constant

    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.
  18. CJ2m Time as millis()

    Thanks for replay.  But I don't want to mess with Cycle Time. The question is: Can I get current time/date (UDINT) in miliseconds? (Similar as arduino millis())? Thanks. BR.
  19. CJ2m Time as millis()

    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... 
  20. Hello. I can't find any related bits wich would indicate PLC offline / online status. I'm using two PLC's. PLC0 Modbus TCP (Ethernet) PLC1 Modbus RTU (Serial) Please help me to get online status. BR, Andrej. 
  21. NS15 - Data Log Graph Decimals

    Hello.I'm having variable Voltage expressed as UNSIGNED DOUBLE INT.For example: Val = 23423For 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.
  22. PLC TCP/IP simulator

    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.
  23. Log In

    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.
  24. Log In

    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.
  25. Scaling Data in CJ1/CS1 PLCs...

    Even simplier way is to use function block... BR, Andrej.