AndrejP
MrPLC Member-
Content count
37 -
Joined
-
Last visited
Posts posted by AndrejP
-
-
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.
-
Hello.
Is there some kind of FUNCTION BLOCK to PING IP Device?
Thanks.
BR, Andrej.
-
@BobLfoot
I have different experiences as you. The forums are usually meant to help users to solve their problems FOR FREE.
-
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
-
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?
-
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.
-
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.
-
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.
-
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 responseIf 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.
-
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.
-
Not good. This is just IP Scaner.
As I wrote: The IP of PLC is UNKNOWN.
Not in the same subnet...
-
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.
-
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. -
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 -
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.
-
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.
-
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...
-
Hello.
I'm using CX-Programer and CJ2M CPU.
Is it possible to get current time in ms like in arduinos millis()?
Thanks.
BR.
-
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.
-
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. -
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.
-
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.
-
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.
-
Omron CJ2M and CP1L as I/O expansion over ethernet
in CX-Programmer
Posted · Edited by AndrejP
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.