Yes you should be using a license from Eaton but doing so does not unlock any functional differences. I've been back and forth with Eaton tech support on this. I have a license but I do advise anyone using xsoft-Codesys to get one, if for no other reason than their tech support is really helpful.
It looks like from that picture that the Standard library hasn't been added in your library manager. If you have added the libraries check the library manager in the device tree as well as the POU tab.
It's worth knowing that at least when I bought my hardware key shipping was as much as the key.
I am not sure. If you do something like FB1_Name.FB_Variable in the second FB you get an error that "Functionblock 'FB1_Name' must be instantiated to be accessed. For my own libraries I just make an output variable in the first FB and an input variable on the second but I can see why you would want to do it your way. Though I'm unsure what would happen with multiple instances of FB 1. Looking through the help file quickly I'm wondering if Parameter transfer by reference might work for you.
If it helps here is a link to the documentation on the segmented buffer library.
You can have multiple Codesys IDE's installed, have multiple open, and they can each be running a simulation. But you can only have 1 gateway running at a time and I'm unsure how many windows based Codesys PLC's in demo mode.
In addition to what else was posted you can also use a license usb dongle
I think the issue is the different CPU's. The phrasing that I like, since it's so nebulous, is that software is only mostly compatible between the 2. In fact the error there is about the CPU, here's a link about that BCM2708. I don't know enough to give you a technical explanation on why that CPU difference matters, sorry.
I think the issue is the CPU differences. The phrasing that I like, since it's so nebulous, is that software is only mostly compatible between the 2. In fact the error there is about the CPU, here's a link about that BCM2708. I don't know enough to give you a technical explanation on why that CPU difference matters, sorry.
There is not a timer like that nor do the Oscat libraries have a timer with that functionality. You can make your own though, here is a good guide on that.
Ah I was afraid of that. Ok sorry I haven't use Trace before. Looking though I find what looks like a helpful reset command. I don't know if this will make it start at 0 again, it looks like it resets the record trigger. It might be worth it for you to peruse the help file for more info on Trace. I apologize if you already have. Link 1 Link 2 Also if you do want the Trend make sure that Festo know that this is functionality you want. I'm sure there are reasons why it's not there, maybe if customers...
Ah I was afraid of that. Ok sorry I haven't use Trace before. Looking though I find what looks like a helpful reset command. I don't know if this will make it start at 0 again, it looks like it resets the record trigger. It might be worth it for you to peruse the help file for more info on Trace. I apologize if you already have. Link 1 Link 2
Ah I was afraid of that. Ok sorry I haven't use Trace before. Looking though I find what looks like a helpful reset command. I don't know if this will make it start at 0 again, it looks like it resets the record trigger. It might be worth it for you to peruse the help file for more info on Trace. Link 1 Link 2
Ah I was afraid of that. Ok sorry I haven't use Trace before. Looking though I find what looks like a helpful reset command. It might be worth it for you to peruse the help file for more info on Trace. Link 1 Link 2
Ah I was afraid of that. Ok sorry I haven't use Trace before. Looking though I find what looks like a helpful reset command. It might be worth it for you to peruse the help file for more info on Trace. Link 1 [Link 2}(https://help.codesys.com/webapp/_cds_obj_trace;product=codesys;version=3.5.16.0)
Your screenshot is weird. I don't see it where I would expect to see it. You should see the option under 'Display Mode' right under the axis select tabs.
Your screenshot is weird. I don't see it where I would expect to see it. You should see the option under 'Display Mode' right under the axis select.
Here you go. If you can't seem to find it in the help file just search a visualization element type like 'Rectangle' and look 'Text' for a link to the placeholders.
You should have access to the Trend in 3.5.12. However that doesn't mean Festo's Codesys IDE/Target Devices support it. Try adding a Trend though. Here is a link on how to add it etc.
For anyone that is looking for how to do this here is a sample project on shared memory communication.
Perhaps you can make a small project implementing only what is going wrong and then share that. Definitely the variable in the visualizations header, an element where it is used to change the bitmap ID, the bitmaps, and whatever is writing to it. Just copy paste that all into a new project, and verify it acts the same before you share it. Then you don't have to share anything you're not allowed to.
Perhaps you can make a small project implementing only what is going wrong and then share that. Definitely the variable in the visualizations header, an element where it is used to change the bitmap ID, the bitmaps, and whatever is writing to it. Just copy paste that all into a new project then you don't have to share anything you're not allowed.
Good work, congrats! Also thanks for sharing your solution.
Good work, congrats!
If this was a Trend what you could do is have a button that 1) deletes the trend file that is produced 2) produces a new file with the correct name The Library that would let you do this is CAA FILE You might be able to do something similar with a Trace.
Absolutely that works, I use it all the time. But that doesn't mean you're crazy or I'm crazy. These are my questions for you 1)Is this a variable in the header of a visualization, global variable list, or POU? 2)Is the variable being used anywhere in your program and if it's in a POU is the POU in your task tree? It matters for variables being used by a fieldbus, they won't update unless used somewhere. Shouldn't matter for this though... 3)Is that variable being written to by something? If so that...
Absolutely that works, I use it all the time. But that doesn't mean you're crazy or I'm crazy. These are my questions for you 1)Is this a variable in the header of a visualization, global variable list, or POU? 2)Is the variable being used anywhere in your program and if it's in a POU is the POU in your task tree? It matters for variables being used by a fieldbus at least 3)Is that variable being written to by something? If so that will overwrite your initialized value 4)Did you change the initialization...
Glad you found a solution (οΌΎοΌΎ)ο½
What about linking the whole array to another array starting at index 5? Or can you put Application.PLC_PRG.Result.ResultData[5..120] if you only want to use index's 5-120?
Does the device have an error when it doesn't read the device? You should not have to set the cycle time of the task based on baud rate, the serial port and other fieldbus's execute outside the task cycle times. However if you have timing requirements for that code reader if you are for instance sending a sequence of data might require you to have quicker cycle times. A good rule of thumb would be 3x faster than what is required to ensure consistant results. At least that's what it is when on the...
Does the device have an error when it doesn't read the device? You should not have to set the cycle time of the task based on baud rate, the serial port and other fieldbus's execute outside the task cycle times. However if you have timing requirements for that code reader if you are for instance sending a sequence of data might require you to have quicker cycle times. A good rule of thumb would be 3x faster than what is required to ensure consistant results. At least that's what it is when on the...
Codesys can definately be a Master for both Modbus RTU and Modbus TCP/IP. I'm not sure about Modbus RTU over TCP though. If you have the time and the physical hardware see if it's just Modbus TCP/IP. Do you have a part number or manual for the weighing module?
Check out the IIOT libraries for sending email. If you search this forum for email you'll also find lots of helpful discussions that I would recommend you read.
I would never have thought to try using cheat engine with Codesys. That's actually kinda brilliant
I do believe so, yes. I'm basing that on this post. It is a similar but different scenario though. Hi sergp, of course, it would be the most beautiful solution if we had a dedicated SoftMotion axis for the devices you are using. However, as the actor device (Adafruit_DC_Motor_Hat) and the sensor device (PCF8591) are not one, this is a little tricky. But especially for such cases we have designed the PosControl drive, which can be added under the "SoftMotion General Axes Pool". You must link its velocity...
I do believe so, yes. I'm basing that on this post. Hi sergp, of course, it would be the most beautiful solution if we had a dedicated SoftMotion axis for the devices you are using. However, as the actor device (Adafruit_DC_Motor_Hat) and the sensor device (PCF8591) are not one, this is a little tricky. But especially for such cases we have designed the PosControl drive, which can be added under the "SoftMotion General Axes Pool". You must link its velocity output to the Adafruit DC motor hat and...
I do believe so, yes. I'm basing that on this post. Hi sergp, of course, it would be the most beautiful solution if we had a dedicated SoftMotion axis for the devices you are using. However, as the actor device (Adafruit_DC_Motor_Hat) and the sensor device (PCF8591) are not one, this is a little tricky. But especially for such cases we have designed the PosControl drive, which can be added under the "SoftMotion General Axes Pool". You must link its velocity output to the Adafruit DC motor hat and...
Unfortunately I don't have TIA Portal. There is a commercial product that might help you though you'll need to test its converted code. PLC Converter Itris Homepage
Unfortunately I don't have TIA Portal. There is a commercial product that might help you though you'll need to test its converted code. PLC Converter
Hmm well that link is to profibus, in case you didn't mean to link there. First I apologize, I only have a little experience with Profinet and IO Link. My first question, do you have the correct GSD file imported to Codesys and have you or can you update the IODD file on the IO Link Gateway? Pepperl+Fuchs might have some good advice and help for you if you haven't contacted them yet. The should be able to tell you how to setup the gateway to read the I&M data and then in what PN registers to look...
Hmm well that link is to profibus, in case you didn't mean to link there. First I apologize, I only have a little experience with Profinet and IO Link. My first question, do you have the correct GSD file imported to Codesys and have you or can you update the IODD file on the IO Link Gateway? Pepperl+Fuchs might have some good advice and help for you if you haven't contacted them yet.
Hmm well that link is to profibus, in case you didn't mean to link there. First I apologize, I only have a little experience with Profinet and IO Link. My first question, do you have the correct GSD file imported to Codesys and have you or can you update the IODD file on the IO Link Gateway? Pepperl+Fuchs might be the best people to talk to though.
I don't think this will be a trivial task. But take a look how retain data was added with a I2C MCP7941x chip. That might give you some answers for what you need to look for on the new Kunbus device. But it depends on how they added retain data and I don't know enough to do or say more than link to the above driver. You can also purchase a service ticket on the store, as unhelpful as that is for me to say.
I don't think this will be a trivial task. But take a look how retain data was added with a I2C MCP7941x chip. That might give you some answers for what you need to look for on the new Kunbus device. You can also purchase a service ticket on the store, as unhelpful as that is for me to say.
Sorry I'm confused. What communication to the PLC did you have before for these HMI panels? It sounds like you want to use the Rpi as a Codesys PLC with the HMI40 being used for visualizations and you want to re-use your existing visualizations and software. You can generate a symbol configuration. I haven't used that on a remote HMI before, only on HMI software running on the same hardware, so I'm not sure how it would work over a network. If you give me some more information I might be able to...
There are 2 ways that I've come up for this. The first is that the format that the time needs to be entered in is printed on the top of the dialogue window. The second is the use of concat and string variables. They enter the time as a string variables like 12h30m, then concat adds the formatting, then I convert it to a TIME or TOD variable type. Here's what that looks like. I'm sure there are better ways to do it but for my purposes this works well enough I haven't looked for a better way. I don't...
There are 2 ways that I've come up for this. The first is that the format that the time needs to be entered in is printed on the top of the dialogue window. The second is the use of concat and string variables. They enter the time as a string variables like 12h30m, then concat adds the formatting, then I convert it to a TIME or TOD variable type. Here's what that looks like. I'm sure there are better ways to do it but for my purposes this works well enough I haven't looked for a better way.
There are 2 ways that I've come up for this. The first is that the format that the time needs to be entered in is printed on the top of the dialogue window. The second is the use of concat and string variables. They enter the time as a string variables like 12h30m, then concat adds the formatting, then I convert it to a TIME or TOD variable type. Here's what that looks like.
In addition to what they said... contact Wago. There is this video by Kurt Braun for something very much like this. This is what he has to say about this Installation instructions to access PFC200 G2 KBUS IO with ModbusTCP, as if the IO was Remote IO. This might be a simpler way to access the IO without a e!Runtime application.
In addition to what they said... contact Wago. There is this video by Kurt Braun for something very much like this. e!Cockpit is setup as a modbus tcp/ip slave in 1 Docker instance while another instance has the master which in the case would be Codesys. In this way the e!Cockpit acts as remote IO for accessing the kbus. You'll get a better summary and idea if you look at the video though.
In addition to what they said... contact Wago. There is this video by Kurt Braun for something very much like this. e!Cockpit is setup as a modbus tcp/ip slave in 1 Docker instance while another instance has the master which in the case would be Codesys. In this way the e!Cockpit acts as remote IO for accessing the kbus.
In addition to what they said... contact Wago. There is this video by Kurt Braun for something very much like this. e!Cockpit is setup as a modbus tcp/ip slave in 1 Docker instance while another instance has the master which in the case would be Codesys.
Try running a trace on it that includes all the variables.
Is it possible that it's being blocked from downloading the library? Either through antivirus etc or through a firewall or network filtering. I see that often at locations that use a white list rather than a black list for internet access. You shouldn't be able to navigate to the address listed there either if that's the issue. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler"...
Is it possible that it's being blocked from downloading the library? Either through antivirus etc or through a firewall or network filtering. I see that often at locations that use a white list rather than a black list for internet access. You shouldn't be able to navigate to the address listed there either if that's the issue. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler"...
Is it possible that it's being blocked from downloading the library? Either through antivirus etc or through a firewall or network filtering. I see that often at locations that use a white list rather than a black list for internet access. You shouldn't be able to navigate to the address listed there either if that's the issue. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler"...
Is it possible that it's being blocked from downloading the library? Either through antivirus etc or through a firewall or network filtering. I see that often at locations that use a white list rather than a black list for internet access. You shouldn't be able to navigate to the address listed there either if that's the issue. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler"...
Is it possible that it's being blocked from downloading the library? If it is you shouldn't be able to download any library. I see that often at locations that use a white list rather than a black list for internet access. You shouldn't be able to navigate to the address listed there either if that's the issue. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler" Regardless,...
Is it possible that it's being blocked from downloading the library? If it is you shouldn't be able to download any library. I see that often at locations that use a white list rather than a black list for internet access. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler" Regardless, here's a copy compressed using 7zip. You can see what libraries you have by navigating...
Is it possible that it's being blocked from downloading the library? If it is you shouldn't be able to download any library. I see that often at locations that use a white list rather than a black list for internet access. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler" Regardless, here's a copy compressed using 7zip. You can see what libraries you have by navigating...
Is it possible that it's being blocked from downloading the library? If it is you shouldn't be able to download any library. I see that often at locations that use a white list rather than a black list for internet access. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler" Regardless, here's a copy compressed using 7zip.
I wouldn't try to download it anywhere other than from Codesys. Is it possible that it's being blocked from downloading the library? If it is you shouldn't be able to download any library. I see that often at locations that use a white list rather than a black list for internet access. What you could do is right click on the CmpVisuHandler library in the library manager and click "properties'. Then select a different default library searching for "CmpVisuHandler" Regardless, here's a copy compressed...
I have a question about the Depictor library. How can I get the SM3 Depictor items? I have already added the SM3 Depictor 4.8.0.0 to my Manage library . I look forward to the support. Greetings, syahrizal This looks like what you're looking for? 1) Add a βDepictorβ object below the application. Click Project β£ Add object β£ Depictor . 2) Double-click the object. 3) Select the Pose element in the Depictor tree. 4) Click Depictor β£ Add element . β The Box element is added below the pose. 5) Select the...
You'll need to lookup how Qt gets its data and then look for a tutorial that explains that process. I'm not familiar with Qt but some light googling suggests it supports OPC UA and TCP/IP communication. I did find some starter info by just googling "Qt and Codesys" including this project which may or may not be helpful. It seems to use Codesys's network variable UDP protocol. But if you just want a simple visualization Codesys's built in visualization tools are more than enough. If you're not specifically...
You'll need to lookup how Qt gets its data and then look for a tutorial that explains that process. I'm not familiar with Qt but some light googling suggests it supports OPC UA and TCP/IP communication. I did find some starter info by just googling "Qt and Codesys" including this project which may or may not be helpful. But if you just want a simple visualization Codesys's built in visualization tools are more than enough. If you're not specifically looking to learn how to use Qt with Codesys that...
You'll need to lookup how Qt gets its data and then look for a tutorial that explains that process. I'm not familiar with Qt but some light googling suggests it supports OPC UA and TCP/IP communication. I did find some starter info by just googling "Qt and Codesys" including this project which may or may not be helpful. But if you just want a simple visualization Codesys's built in visualization tools are more than enough. If you're specifically looking to learn how to use Qt with Codesys that i...
.... To cloud things more for you there is also the asynchronous job manager that you might find helpful. But why not put that bus communication in its own lower priority task? You could definately have that task write to a GVL, you could even have a seperate GVL for each communication bus. If you do it like that the MQTT task will execute first and then the lower priority tasks will execute. Just means that the MQTT will be reporting the status of the variables from the last read cycle. Also make...
Which serial bus do you mean? A board level communication bus like I2C/SPI/UART or do you mean rs232/485/Can etc?
Thanks for giving a better answer and correcting me (β’ββ’ )
Reading up on it you alter the wsTopicName attribute. Source To accomplish this we can use the topic name and the message payload. Source 2
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. GUI Structured text example For subtract iInput1_Operator:=0; For add iInput1_Operator:=1; etc In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal....
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. GUI Structured text example For subtract iInput1_Operator:=0; For add iInput1_Operator:=1; etc In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal....
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. GUI Structured text example For subtract iInput1_Operator:=0; For add iInput1_Operator:=1; etc In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal....
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
This is a rough idea. In this example use the GUI elements to select the subtract, add, divide, multiple, or something you want to equal do calculation. That element will change a variable's int value using structured text, examples below. In this example you would use the display variables to limit the number of digits shown. %3.3f will display 3 digits before the decimal and 3 digits after the decimal. This will also change the input variable to 1 if the input variable is 0 and it's set to either...
I use some code in visual designer to do this after I export it from DB Browser as a csv file. You'll need to change the redacted to the username for the desktop and the file must be named TrendIn.csv. You'll need to change things up for the amount of fields you have etc. I'm not sure if it fixes the endian problem you're seeing. You can definately see back 1 month. I record values every 5 minutes and the longest I've let it run without clearing the trend file was 2 years. Displaying 2 years at once,...
I use some code in visual designer to do this after I export it from DB Browser as a csv file. You'll need to change the redacted to the username for the desktop and the file must be named TrendIn.csv. You'll need to change things up for the amount of fields you have etc. I'm not sure if it fixes the endian problem you're seeing. You can definately see back 1 month. I record values every 5 minutes and the longest I've let it run without clearing the trend file was 2 years. Displaying 2 years at once,...
I use some code in visual designer to do this after I export it from DB Browser as a csv file. You'll need to change the redacted to the username for the desktop and the file must be named TrendIn.csv. You'll need to change things up for the amount of fields you have etc. I'm not sure if it fixes the endian problem you're seeing. class Program { static void Main(string[] args) { string rawin = @"C:\Users\**REDACTED**\Desktop\TrendIn.csv"; string path = @"C:\Users\**REDACTED**\Desktop\ConvertedTrendData.csv";...
I use some code in visual designer to do this after I export it from DB Browser as a csv file. You'll need to change the redacted to the username for the desktop. I'm not sure if it fixes the endian problem you're seeing. class Program { static void Main(string[] args) { string rawin = @"C:\Users\**REDACTED**\Desktop\TrendIn.csv"; string path = @"C:\Users\**REDACTED**\Desktop\ConvertedTrendData.csv"; // Create output file "TrendIn.csv" //Input must be TimeStamp, Temp <UInt> using (StreamWriter sw...
Here are a couple of the Youtube channels that I know about and which might be helpful for you. The official Codesys Channel - some good official videos Tohid Alizadeh - Really good tutorials. At this point they are quite extensive Real Pars - More generic PLC stuff, alot of Siemens. Good for generalized knowledge Jesse Cox - More Wago e!Cockpit but some Codesys related videos. Also some of the e!Cockpit stuff can be applied to Codesys Kurt Braun - Again more wago stuff but he has some very interesting...
That is a good work @pruwetbe, I'm sorry that Ac_Datalog didn't work. If it's ok I'll refer back to this thread for anyone else trying to do logging on the Pi. Thanks for your write up I might emulate you if I end up having similar problems with my personal devices. Did you use the grafana visualization in codesys with the web browser element, or was it for browsing remotely? One thing that I learned about recently that may have been at play here, and can be an issue for other things, is the monitoring...
Thanks for the heads up. This was not something I would have thought would be effected by being in a simulation. Frankly I thought the problem was me.
It's pretty basic but I feel like I'm doing something wrong because I can't seem to get the TODConcat function from the CAA DTUtil library to work. I have used a few functions before and I had no problems then but... Β―\_(Β°_o)_/Β― PROGRAM Testing VAR iInputHour:UINT; iInputMinute:UINT; todOutput:TOD; eError : DTU.ERROR; END_VAR todOutput := DTU.TODConcat(uiHour:=iInputHour, uiMinute:=iInputMinute, uiSecond:=0, uiMillisecond:=0, peError:=ADR(eError)); The reason I think I'm doing something wrong is...
It's pretty basic but I feel like I'm doing something wrong because I can't seem to get the TODConcat function from the CAA DTUtil library to work. I have used a few functions before and I had no problems then but... Β―\_(Β°_o)_/Β― PROGRAM Testing VAR iInputHour:UINT; iInputMinute:UINT; todOutput:TOD; eError : DTU.ERROR; END_VAR todOutput := DTU.TODConcat(uiHour:=iInputHour, uiMinute:=iInputMinute, uiSecond:=0, uiMillisecond:=0, peError:=ADR(eError)); The reason I think I'm doing something wrong is...
Hmmm. I just tested on my system with 2 different projects open, same project saved under 2 different names. -With 2 instances cpu utilization floats between 6-12%. -With 1 instance on it behaves the same. -In both cases if I start doing anything it jumps up to ~20% and stays around there and I don't notice any input lag or lag with any UI elements. I'm not sure why you're seeing that or if I'm the odd duck.
Hmmm. I just tested on my system with 2 different projects open, same project saved under 2 different names. -With 2 instances cpu utilization floats between 6-12%. -With 1 instance on it behaves the same. -In both cases if I start doing anything it jumps up to ~20% and stays around there and I don't notice any input lag or lag with any UI elements.
With the programming IDE? I have not experienced that. I commonly have 2 instances open so that I can reference how I did something in another project or to selectively copy and paste sections when I need to. If I leave it open for a few days I do notice that things have bogged down a bit. Usually each instance uses about 1gb of ram. Though if its been open for a few days that has gone up and might be hitting the 32bit memory limit. Which is 1 of the reasons I'm glad Eaton released a x64 version....
Double post
It wasn't your intention but thanks for sharing that paper. Reading it now and it looks to be very informative and great for exactly what you're using it for as well.
Great explanation.
With the programming IDE? I have not experienced that. I commonly have 2 instances open so that I can reference how I did something in another project or to selectively copy and paste sections when I need to. If I leave it open for a few days I do notice that things have bogged down a bit. Usually each instance uses about 1gb of ram. Though if its been open for a few days that has gone up and might be hitting the 32bit memory limit. Which is 1 of the reasons I'm glad Eaton released a x64 version....
With the programming IDE? I have not experienced that. I commonly have 2 instances open so that I can reference how I did something in another project or to selectively copy and paste sections when I need to. If I leave it open for a few days I do notice that things have bogged down a bit. Usually each instance uses about 1gb of ram. Though if its been open for a few days that has gone up and might be hitting the 32bit memory limit. Which is 1 of the reasons I'm glad Eaton released a x64 version....