Search talk: i/o drivers

 
<< < 1 .. 36 37 38 39 40 .. 92 > >> (Page 38 of 92)

Post by paulorb on STRUCT AT %MW1000 CODESYS Forge talk (Post)
Hi I am trying to use STRUCT to parse commands from Modbus/TCP, Modbus client will fill the bytes related to a specific command (type, parameters), then PLC (Codesys) will access the command parameters. A STRUCT will simplify a lot the process of parsing the data, so I don't need to parse byte per byte, address will be mapped to a struct and I can use it for parsing the data. From what I understood, the compiler does not allow me to specify the location of the struct for a %MW register. VAR_COMMAND AT %MW1002: structGenericModbusCommand; This will throw: Bad declaration, use '%ML' for 'structGenericModbusCommand' variable But If I change it to %ML, when you go online you see that it is actually allocating the struct in another memory address. When we go online, on GVL we can see: VAR_COMMAND. structGenericModbusCommand %ML1002 commandType COMMANDTYPE %MB8016 ... %MB8020 I am not specifying a pointer or a reference it is a struct type, why is it mapping to a %MW location (random one). How can I control where it is mapping to? I need a consistent way to map STRUCT to specific modbus address. Is it possible? Thanks, Paulo Note I am using a Codesys OEM: Schneider Machine Expert Logic Builder (M241)
Last updated: 2024-08-13

Post by shawn-plc on Return value from a tag given a string literal CODESYS Forge talk (Post)
Good afternoon everyone, I am looking for a way to return a value given a string tag path. I put together a pseudo-example to illustrate my use-case and was wondering if anyone in this forum can help. The function fnValueFromTagPath is the function I am looking to either create or use from existing library. I would greatly appreciate it. Please see the attachment for additional detail. -Shawn
Last updated: 2024-08-13

Post by micik on ERR_OK not recognized CODESYS Forge talk (Post)
Hello, if I try to use ERR_Ok in my code to check whether the file is open correctly or not, I get an error "Identifier ERR_OK not recognized", I can use plain 0 (zero) instead. But in general, is this a proper way to check for success of file operation since the 4th parameter is a poinmter to RTS_IEC_RESULT, and normally I would expect this to be used somehow. _hFile := SysFileOpen(_sFileName, am:=SysFile.ACCESS_MODE.AM_WRITE, ADR(_result)); IF _result <> 0 THEN udDiag := 100; RETURN;
Last updated: 2024-08-17

Post by pradeepradha on Update Raspberry Pi option is missing under Tools menu CODESYS Forge talk (Post)
Hello, the option to update Rasberry Pi from under the Tools menu is missing in my installation. Currently I have the build 3.15.19.50, along with the Pi package 4.11.0.0. But the same problem is observed even with the latest build and Pi packages. I have tried clean install with both the versions but cannot solve the issue. I never faced this on Windows 10, but now the new PCs are with Windows 11 - this is the only difference. How can I solve this problem?
Last updated: 2024-09-02

Post by hambergg on Retain Variables on fRAM CODESYS Forge talk (Post)
Hi regarding NVRAM with SPI or I2C I expected reference too!
Last updated: 2024-09-03

Post by davep on Profinet RPC-call error CODESYS Forge talk (Post)
I have the same problem
Last updated: 2024-09-06

Post by alex-at-xana on EThercat Dynamic configuration CODESYS Forge talk (Post)
Ah - forgot another question as it may be related to the PLL problem: I am executing a 4ms cycle. I do not call (from what I know) the Ethercat_MAster periodically in my program. The bus cycle task is set to the Ethercat task. I would assume that the master should send 250 frames per second. Yet, the status of the master says it transmits 500 frames per second which would indicate that the master is called twice. Any ideas there?
Last updated: 2024-09-10

Post by spilin on All devices lost for all installed version CODESYS Forge talk (Post)
hello. After installing the latest version of codesys (3.5.20) from codesys installer, I had a problem. All my devices disappeared. Both PLCs and IO modules and network devices disappeared from my list. I browsed through the Windows files and I can find them in the programdata/codesys/devices folder. The files remain there, but they are not available within codesys (same error in all installed versions) which in this case are 3.5.16 and 3.5.19. Does anyone know how I can reimport or resynchronize my devices folder again? Thanks
Last updated: 2024-09-11

Post by abauza on Type mappings in Datasource CODESYS Forge talk (Post)
Hi I have the same problem, any solution for this? Thanks
Last updated: 2024-09-12

Post by jinlee on Camera Feed (CCTV) CODESYS Forge talk (Post)
Hi, Thanks for the information. However, I can't download the associated project.
Last updated: 2024-09-12

Post by balazska2 on Position values with integer variables CODESYS Forge talk (Post)
Hello guys! https://content.helpme-codesys.com/en/CODESYS%20Visualization/_visu_elem_label.html My question: Could I give an integer variable to the Position records (in the Element list => Position => width / height)? If yes, how? I defined a TEST integer variable with 300 value. I tried to add this variable to the width record (.TEST or only TEST), but if I saved, the value jumps back to 0. Thanks for your help! :)
Last updated: 2024-10-03

Post by ballen on I have errors while building the project CODESYS Forge talk (Post)
Any luck at solving this issue?
Last updated: 2024-10-14

Post by sharvan on Visu User Management Dialog - Add user does not work CODESYS Forge talk (Post)
I am also getting same issue.
Last updated: 2024-10-17

Post by mtnkyr on Ethercat Master CODESYS Forge talk (Post)
Hi everyone, I am working on a 3 axes Cartesian robot. I take control of all the axes. In the Ethercat connection, the drive sequence is the same as in the program. For example, in the current program the order is as follows. 1. Axis_Z 2. Axis_X 3. Axis_Y Communication Diagram PLC->Drive_Z->Drive_X->Drive_Y When I try to change the order in the program while keeping the communication diagram the same, there is an axis drive mismatch. How can I fix this?
Last updated: 2024-10-22

Post by winki on Modbus TCP & RTU with Control for Linux SL CODESYS Forge talk (Post)
For small project, I would like to use my industrial computer as a PLC + Industrial Computer. Like that I can save the cost of one PLC. That why I am using Codesys on Linux. With the nic it is not working. I already set the IP adress with /etc/network/interfaces. Can it comes from there ? looking to "Control Linux SL" docuemntation it should work with rtu.
Last updated: 2024-10-23

Post by vincentger on using ADS1115 CODESYS Forge talk (Post)
Any reason the ADS1115 wouldnt work with SP20.1 and Runtime 10.0.0.0 on the Raspberry Pi . Using Bullseye or Buster i run into the same issue: Libary and integration works in general as described above BUT i am seeing "bleeding" between the analog inputs . Specifically consecutive ones: So sometimes the raw from AI1 shows on AI2, AI2 on AI3, .. AI4 on AI1. Even with filtering i cant smoothen that out properly and i feel like something is wrong. Almost like the bus is stumbling over itself, or the request from Codesys to the device.
Last updated: 2024-10-28

Post by jeroenaero on CodeSys Raspberry pi I2C driver not found CODESYS Forge talk (Post)
I included a project archive in the attachments
Last updated: 2024-11-09

Post by jeroenaero on CodeSys Raspberry pi I2C driver not found CODESYS Forge talk (Post)
I succeed to change the device to PI_SL but still the same problem of the I2C device switching between running and not running. the only difference with your project is that yo use I2C_master device version 4.7.0 and i 4.7.13, for GPIO i also use the 4.7.13 version and you the 4.7.0. Can you send me the older version of the Raspberry PI pheripals library, because i cannot choose lower version then 4.7.10 for the GPIO and I2C_master device
Last updated: 6 days ago

Post by s1ack on PFC200 Will soft-container & IIoT license survive a firmware update? CODESYS Forge talk (Post)
I have an IIoT License activated on a PFC200 with older firmware 2.08.32 (11). If I flash it to the latest available 4.05.10 (27) does the license get destroyed? I have a back up file '3SLicenseInfo.tar'. But this looks quite a bit different form the backup I got from more modern firmware... 'CMLicenseNew.WibuCmRaU'. Can the new license manager restore it from the old .tar?
Last updated: 5 days ago

Post by masterofplc on Unrecoverable SoftMotion state after switch to PreOp CODESYS Forge talk (Post)
Hi. i have the same problem. Thank you
Last updated: 2 days ago

Post by garrian on How to write multiple coils (Modbus FC15) CODESYS Forge talk (Post)
Thanks! As far as I can see, the client can only send words. And on the server side there are an array for each of the functions: bool for coil and discrete, word for holding and input registers. I assume I can use holding register, then use bit mapping on the words instead of coils. But I really want to use the FC15/coils.
Last updated: 4 hours ago

Post by ofey on EtherCAT fieldbus CODESYS Forge talk (Post)
Hi, everyone! I'm trying to set up a PLC controller and a connection to an EtherCAT slave device in Codesys. I want to create a flexible program that I can upload to multiple controllers with different remote IO connected (same program). On one plant i may have 5 AI-cards and 3 DO-cards, and on another I may have 4 AI-cards and 2 DO-cards. For not needing to maintain several different programs wih different devices defined in the program (one for each set up) I thought that using a remote IO would make it easier having a single program. That way I could refer to different memory addresses instead of predefined slots/channels and IO's, that would give me errors if there was a different IO on the plant than what the program expected. When I tried setting up the etherCAT master, I saw that I had to define the etherCAT slave devices with the different IO'cards for me to be able to refer to the memory addresses in a PRG. Exactly what I was trying to avoid. My setup is something like a program that can handle 16 separate pump controls. In a year maybe 6 plans get deployed, and depending on how large the project is, the number of pumps can vary between 4 and 16. And the managers dont want to have IO's for all 16 pumps on every cabinet, and I dont want to maintain 16 separate projects files in case of updates etc. I thought the best way to tackle this was having a single project that read/write data to the different pump IO's by remote IO (fieldbus ethercat) addresses. And the number of pump controls are activated by an external GUI. If pump 1-6 is activated by the GUI, then the PLC-program tries to read/write input/outputs from predefined addresses for the expected IO's. My test setup is a PFC200 WAGO controller and a EtherCAT fieldbus coupler (750-354) with some IO. I hope I didn't explain this too horrible, and if there is a more easy and elegant solution for this challenge I appreciate a feedback on this.
Last updated: 2024-04-08

Post by george32 on Readable IO names CODESYS Forge talk (Post)
Hello Folks, I have a quite basic understanding of how PLC programming works. However I keep getting stuck on 1 problem I could not get my head around. The problem is as follow: I have a PLC with 60 IO (20 inputs, 40 outputs). Each IO is defined as a function block. Furthermore I have an external IO card connected trough a CanBus connection. This IO card has 4 analog input channels (USINT), 4 digital inputs (Bool) and 4, digital outputs (Bool) Because I have 2 different components which both has data have I made 4 arrays to store the data off every component in one variable. PLC_Input: Array [1..20] of BOOL; PLC_Output: Array [1..40] of BOOL IOCard_Input: Array [1..8] of BOOL IOCard_Output: Array [1..4] of BOOL Because the control and reading of the different in and outputs is done by a TCP connection I want to use some kind of enumeration or struct to give each index a name so that my main would be a little bit more readable instead of all the magic numbers. Also this would make my program more dynamic for the furter in case I need to changes some in the IO nummers. For example: pump is placed on the fysical terminal strip number place 54, which is the 3th output of the IO card in the program: if I am sending a message with value 54 I would like to control IOCard_Output[3]. If there is a solution or methode to get this done, I can eventually do the following in my main program: IOCard_Output[Pump]. I have tried the following: IOCard_Output[Pump - 51] with an enumration but this keeps raising an error I hope some of you could help me further with this problem. In gross lines: I want to couple all the different IO to a more readable name and this readable name should control the right Array index Thanks in advance, George
Last updated: 2024-09-26

Post by testlogic on Sending Sequential Modbus TCP Packets CODESYS Forge talk (Post)
I have a Modbus TCP slave device where I need to do sequential writes to the same register. The register I'm writing to is kind of like a command line, each packet is a command word encoded in Hexadecimal. I am having difficulty implementing this system in CoDeSys 3.5 SP19. I feel like the structure of the program should be something along the lines of (Pseudocode): ModbusTCPSend(Command Register, Command1) ModbusTCPSend(Command Register, Command2) ModbusTCPSend(Command Register, Command3) I have tried to implement this with a rising edge trigger wMot1OPCode := 16#E1; //Stop Motor & Kill Program xMot1SendOP := TRUE; //Send OP on rising edge xMot1SendOP := FALSE; //Reset wMot1OPCode := 16#9E; //Disable Motor xMot1SendOP :=TRUE; //Send OP on rising edge xMot1SendOP := FALSE; //Reset Where "wMot1OPCode" is the IO map for writing to the command register, and "xMot1SendOP" is the rising edge trigger for that modbus channel. However, this doesn't work. The device never responds to the modbus commands. It seems like the trigger variable is switched too quickly for modbus to send the packet. I know the modbus register is working, because I can set the channel to cyclic and the device will respond. However, I can't use this reliably because I need each command to be sent once, in order. Cyclic keeps re-sending the commands and seems like it could miss a command as well if one was sent in-between cycle time. I have also trying using the Application trigger as described by https://faq.codesys.com/pages/viewpage.action?pageId=24510480, but this is also not working for me. See attached picture for my FBD code. This seems like a simple function, I can't tell what I'm doing wrong here. Thanks for the help.
Last updated: 2024-03-06

Post by tcarlbom on Read tag values using external program CODESYS Forge talk (Post)
This is my first time posting in this forum and I am new to codesys. I am a fullstack developer and I am trying to figure out how the following. What would be the best approach to create a own/custom tag browser? Either directly in codesys ide or using a separate custom program (perhaps a winforms application). 1.a. Shall I parse the .project xml file to get a list of all tags in the project? 1b. Shall I use python scripting in codesys ide to get a list of tags? Once one have selected some tags. These tags shall be exposed to a python program which will be acting as a edge computer. It’s fine to be able to import a file. 2a. I found a library called codesys plchandler which (as I understand) acts a rest api server. Is this correct? If so, can I query the api from a custom python script, ie can query what tags exist in project and or read tag values? My research so far. From earlier projects I know that using opc ua would be perfect for this but from my opinion it’s bloating the plc since it’s resource intensive. So opc ua is not an option. Codesys automation server is neat. But I don’t want to rely on some cloud services and subscription based pricing. There seem to be several interesting codesys libraries like mqtt, tcp server and NVL sender which would help me expose plc tags. But all have a common problem. One have to manually write what tags which will be used in these function blocks. I want a similar experience like “selecting” tags in the opc ua or the codesys tracing, ie a tag browser.
Last updated: 2024-06-28

<< < 1 .. 36 37 38 39 40 .. 92 > >> (Page 38 of 92)

Showing results of 2284

Sort by relevance or date