Post by dwpessoa on CNC Jumps G20 - SMC_NCInterpreter and long time to process
CODESYS Forge
talk
(Post)
I am studying and developing a Softmotion+CNC system for a machine that executes multiple pieces. The G code program is written by the machine operator and each cycle execute 1 piece. The programs are large, exceeding 1000 lines and using up to 8 axes (X, Y, Z, A, B, C, P and Q). The machine needs to run cyclically, executing N pieces (selected by the Operator)... so I tested it using Looping and counters (G36 G37 and G20) and it worked, but it takes a long time to process, and the more pieces I need, the longer the processing time and this is totally impracticable. I found this solution which was very good, and for a few cycles it works well, but for 99999 pieces of a program with 1000 lines, it doesn't work very well... Another solution I tested is to maintain the interpolator with an automatic restart, that is, I load the program without looping (without G20) and give it another start as soon as it finishes. This partially resolved it, but there is still a delay in processing SMC_NCInterpreter in each restart :(. Another solution I thought of is to manually create the SMC_GEOINFO structure and then reuse it, avoinding the Interpreter, but reading the documentation and checking the structure filled by standard blocks, I noticed that there doesn't seem to be a "JUMP" function in the structure! In other words, the SMC_NCInterpreter actually keeps copying and copying the program section for each jump (G20)... If I repeat a 10-line program 1000 times, I will have a structure with more than 10000 lines... possibly this is the cause of take so long to process. Has anyone ever had a problem like this? I believe the same thing happens with typical applications with manipulator robots using Codesys in continuous cycles, and I would like to know if there is any solution, or even if I am misinterpreting the G20 question in SMC_GEOINFO. Thanks!
Last updated: 2023-09-20
Post by dkugler on Management of a PLC network from a remote station
CODESYS Forge
talk
(Post)
I would figure out, how to create a simple html webpage with 2 frames. One frame with buttons to select the plc. A second frame with hyperlink to the webvisu of the plc ("XXX.XXX.XXX.XXX:8080/webvisu.htm"). Selecting other PLC Button has to change the hyperlink in 2. frame. Costs only some time to figure out :-) Or setup a raspberry Pi with small visualization. Set up a button for each plc and add one browser element. Each button writes the URL of the depending plc to the URL setting of the browserelement. Costs 55β¬ for runtime licence and a Raspberry Pi.
Last updated: 2023-12-04
Post by user3000 on Can't find an Extended Pulse Timer (TP and LTP)
CODESYS Forge
talk
(Post)
I came up with an FBD that seems to be working, although it may not be a true Retriggerable Pulse timer. There may be some delay associated with the two MOVE functions and ADD function I incorporated. I'd be interested if anyone is able to come up with something cleaner. I am surprised that this is not a built-in function block of the CodeSYS library. This is a common feature of multi-function timer relays. I also attached a page from the cut sheet of a Schneider relay that shows 10 timing functions. Looks like the CodeSYS library has built-in function blocks for only 3 of the 10.
Last updated: 2023-12-21
Post by k2saki on CNC / G-Code streaming processing ( to start quickly in long G-Code File )
CODESYS Forge
talk
(Post)
Is it possible like G-Code streaming processing (like FANUC or SIEMENS DNC Function )? Or Does anyone know the tips for CODESYS Motion to start moving long Long G-Code File quickly? I have to wait long time after "Start" button to start moving, I have to wait finishing interpreting whole G-Code file, ( and I have to prepare huge buffer to store. ) Now, I'm working on my CNC Project using SMC_ReadNCFile2, and SMC_NcInterpreter to preprocess G-Code. I tried to set SMC_Interpolator.xExecute to true to Start while after SMC_NcInterpreter processed more 50-line of G-Code, but that not worked, I had to wait SMC_NcInterpreter processed all lines to start SMC_Interpolator. G-Code have about 2000 lines of XY of G01 (or more over.. ) of short segment that a CAM software has exploded from NURBS Curve.
Last updated: 2024-05-03
Ranges, Lambdas, on Fixed arrays of structs
CODESYS Forge
talk
(Thread)
Ranges, Lambdas, on Fixed arrays of structs
Last updated: 2023-08-31
Save jitter measure of main task in file
CODESYS Forge
talk
(Thread)
Save jitter measure of main task in file
Last updated: 2020-08-07
Ged rid of lines on Chart XY
CODESYS Forge
talk
(Thread)
Ged rid of lines on Chart XY
Last updated: 2022-04-05
Resolution of visualization (for RPi's LCD 800x480)
CODESYS Forge
talk
(Thread)
Resolution of visualization (for RPi's LCD 800x480)
Last updated: 2015-11-22
The configuration file of the PLC
CODESYS Forge
talk
(Thread)
The configuration file of the PLC
Last updated: 2016-04-11
Where is data of ENIP getAttributeSingle stored?
CODESYS Forge
talk
(Thread)
Where is data of ENIP getAttributeSingle stored?
Last updated: 2023-04-20
Adding a scaling factor to text sizes of different languages
CODESYS Forge
talk
(Thread)
Adding a scaling factor to text sizes of different languages
Last updated: 2017-03-31
Variable number of arguments in a user-defined function
CODESYS Forge
talk
(Thread)
Variable number of arguments in a user-defined function
Last updated: 2012-01-08
The intent of two Library Managers in a Project
CODESYS Forge
talk
(Thread)
The intent of two Library Managers in a Project
Last updated: 2016-08-22
Access project information of references library by script
CODESYS Forge
talk
(Thread)
Access project information of references library by script
Last updated: 2023-10-23
Axis variable indicating modulo of finite setting
CODESYS Forge
talk
(Thread)
Axis variable indicating modulo of finite setting
Last updated: 2023-11-25
License status of Linux 64Bit runtime via CLI
CODESYS Forge
talk
(Thread)
License status of Linux 64Bit runtime via CLI
Last updated: 2023-12-04
Management of a PLC network from a remote station
CODESYS Forge
talk
(Thread)
Management of a PLC network from a remote station
Last updated: 2023-12-04
Extracting information out of a *.library or *.compiled-library file
CODESYS Forge
talk
(Thread)
Extracting information out of a .library or .compiled-library file
Last updated: 2023-12-04
OPC UA RPI 4.8.0.0 Status Code / "out of range"
CODESYS Forge
talk
(Thread)
OPC UA RPI 4.8.0.0 Status Code / "out of range"
Last updated: 2024-07-10
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Signing Packages without exposing the password of the certificate
CODESYS Forge
talk
(Thread)
Signing Packages without exposing the password of the certificate
Last updated: 2024-08-20
Open specific Version of Codesys Control Win V3 x64
CODESYS Forge
talk
(Thread)
Open specific Version of Codesys Control Win V3 x64
Last updated: 2024-08-22
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.