Post by gallusrrr on usb2can in Codeysy 3.5 Can Gateway
CODESYS Forge
talk
(Post)
Hallo und guten Morgen, Ich danke für die Rückmeldung. ich habe das oben geschriebene durchgeführt und auch festgestellt das mit die Commandos für die Can befehle noch fehlen. (Google angeschmissen und geschaut auch gefunden) sudo apt-get install can-utils (damit auch jemanden anders der Post hilft) Anschließend habe ich das CAN System komplett aufgebaut so das ich mit einen anderen CAN Adapter schauen konnte ob die Nachricht auch ankommt. die Nachricht kommt an :) danach habe ich follgende Ausgabe: pi@Codesys:~ $ sudo ip -s -d link show can0 3: can0: <noarp,up,lower_up,echo> mtu 16 qdisc pfifo_fast state UP mode DEFAULT group default qlen 10 link/can promiscuity 0 allmulti 0 minmtu 0 maxmtu 0 can state ERROR-ACTIVE restart-ms 0 bitrate 250000 sample-point 0.875 tq 250 prop-seg 6 phase-seg1 7 phase-seg2 2 sjw 1 brp 12 gs_usb: tseg1 1..16 tseg2 1..8 sjw 1..4 brp 1..1024 brp_inc 1 clock 48000000 re-started bus-errors arbit-lost error-warn error-pass bus-off 0 0 0 0 0 0 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 tso_max_size 65536 tso_max_segs 65535 gro_max_size 65536 parentbus usb parentdev 1-1.4:1.0 RX: bytes packets errors dropped missed mcast 3549 819 0 0 0 0 TX: bytes packets errors dropped carrier collsns 32 4 0 0 0 0</noarp,up,lower_up,echo> (Sorry habe kein Speicherplatz im Web um Bilder anzuzeigen..) man kan sehen das die Nachricht abgeht und auch 32 Byte Empfangen worden sind. Die nachricht ist auch am anderen CAN Adapter sichtbar gewesen. Wie bekomem ich den einrichteten Adapter in Codesys rein? das ich den Befehl sudo ip link set can0 up type can bitrate 500000 das ich die Einrichtungs des Can Adapters noch in die Rasperry Start rutine nehmen muss ist mir klar. Ich bedanke mich .
Last updated: 2024-01-18
Post by khaledkhalil on Import OPC UA model to Codesys
CODESYS Forge
talk
(Post)
I have added a models in SiOME which a software to design nodes and add instances. and created a resultant xml file. I tried to import the xml file to Codesys through OPC UA information model Repository the problem i don't know how to view my objects which i have designed. and map it to my PLC to make viewable on my server UaExpert. I watched the tutorial video https://youtu.be/aJhzN3Uk-Do?feature=shared. But it only give you how to add the Information model, and my resultant model doesn't have information type. So how in Codesys i can view a model which i have designed in SiOME and mapped my instances (Objects, Variable or methods) with my Variables in PLC I saw people do it in Tia Portal or other Software, but i have no clue how to do it on CODESYS
Last updated: 2024-03-12
Post by rossanoparis on Internal Error (ARM): Unsupported conversion! With new version v3.5 SP21
CODESYS Forge
talk
(Post)
I have updated CODESYS development tool to the version v3.5 SP21 (64bit) The previous version was v3.5.20.40 Compiling an existing application with the new evelopment tool I get the following error. kunbusiodrvrevpibridge, 1.4.1.0 (kunbus gmbh): IoDrvScanModules [IoDrvRevPiBridge](Line 51, Column 1 (Impl)): Internal Error (ARM): Unsupported conversion! This error was not reported in the previous compiler version and is now highlighted in a third-party library, which I cannot change or modify. The error is due to the following conversion: m_udiError := TO_UDINT(excCode); . The excCode variable is a system type, declared as shown below, and should be converted to a UDINT excCode : __SYSTEM.ExceptionCode; m_udiError: UDINT; . I would appreciate it if someone could provide feedback on this issue.
Last updated: 2025-04-15
Post by wildcard on Modbus Client Request Not Processed
CODESYS Forge
talk
(Post)
Hi, does anyone has a solution for this issue. I've the same problem. I've implemented a very simple client based on the Modbus Examples and connected the soft PLC to a Modbus Simulator. PROGRAM ModbusClient VAR initDone : BOOL := FALSE; errorID : ModbusFB.Error; client : ModbusFB.ClientTCP; timeout : UDINT := 500000; replyTimeout : UDINT := 200000; aUINT : ARRAY [0..8] OF UINT; clientRequestReadHoldingRegisters : ModbusFB.ClientRequestReadHoldingRegisters; clientRequestsCnt : UINT := 0; clientRequestsProcessCnt : UINT := 0; ipAddress : ARRAY[0..3] OF BYTE := [10,54,0,72]; END_VAR IF NOT initDone THEN initDone := TRUE; client(aIPaddr:=ipAddress, udiLogOptions:=ModbusFB.LoggingOptions.All); client(xConnect:=TRUE, ); clientRequestReadHoldingRegisters(rClient:=client, udiTimeOut:=timeout, uiUnitId:=1, uiStartItem:=0, uiQuantity:=4, pData:=ADR(aUINT[0]), udiReplyTimeout:=replyTimeout); clientRequestReadHoldingRegisters.xExecute := TRUE; clientRequestsCnt := 0; END_IF clientRequestReadHoldingRegisters(rClient:=client, udiTimeOut:=timeout, uiUnitId:=1, uiStartItem:=0, uiQuantity:=4, pData:=ADR(aUINT[0]), udiReplyTimeout:=replyTimeout, xExecute := TRUE); IF clientRequestReadHoldingRegisters.xError THEN clientRequestsCnt := clientRequestsCnt +1 ; errorID := clientRequestReadHoldingRegisters.eErrorID; END_IF clientRequestReadHoldingRegisters(rClient:=client, udiTimeOut:=timeout, uiUnitId:=1, uiStartItem:=0, uiQuantity:=4, pData:=ADR(aUINT[0]), udiReplyTimeout:=replyTimeout, xExecute := NOT clientRequestReadHoldingRegisters.xExecute); When the system is running I do get the following on the logs: 2024-05-13T10:18:07.443Z: Cmp=MODBUS lib, Class=1, Error=0, Info=0, pszInfo= Client.RequestProcessed ClientRequest,16#0164ADC561A0 unitId=1 fc=ReadHoldingRegisters id=2070 state=Error 2024-05-13T10:18:07.443Z: Cmp=MODBUS lib, Class=1, Error=0, Info=0, pszInfo= ClientRequest,16#0164ADC561A0 unitId=1 fc=ReadHoldingRegisters id=2070 change state Error -> None timestamp=63843421226 2024-05-13T10:18:08.444Z: Cmp=MODBUS lib, Class=1, Error=0, Info=0, pszInfo= ClientRequest,16#0164ADC561A0 unitId=1 fc=ReadHoldingRegisters id=2071 change state None -> Init timestamp=63844421420 2024-05-13T10:18:09.444Z: Cmp=MODBUS lib, Class=1, Error=0, Info=0, pszInfo= ClientRequest,16#0164ADC561A0 unitId=1 fc=ReadHoldingRegisters id=2071 change state Init -> Error timestamp=63845421675 But the errorID is jumping between OK and RequestNotProcessed. Any help is very appreciated which gives me a hint what I'm doing wrong. Thanks
Last updated: 2024-05-13
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
Post by reinier-geers on Ping By Name
CODESYS Forge
talk
(Post)
To bad. Controller uses Version 9.2 But i dont see a lower version of net bas Service. Maybe i can try a linux command.
Last updated: 2023-08-29
Post by marekxc on Error C0521 - unknow compiler
CODESYS Forge
talk
(Post)
Select in tree "DEVICE", right-click and select "Update Device" Select "Library manager" and Change the version of the Library (down manualy). Samoetimes "Try reload Library". If you open a project version 3.5.19 in version 3.5.16, there are difficulties.
Last updated: 2023-09-02
Post by nyee on Project compiling error in Simulation mode
CODESYS Forge
talk
(Post)
Hi, I have a similar issue - we have been using codesys V3.5.16.20 Do you have any suggestions or confirmation that this will work with a different version of codesys and Pi extension
Last updated: 2023-09-07
Post by dexterdva on Creating a custom kinematics starting from Scara2 model.
CODESYS Forge
talk
(Post)
Hello, I'm trying to develop a custom kinematics derived to Kin_Scara2_Z. there is someone that have the source code of this library? Thanks Dexter
Last updated: 2023-09-11
Post by timvh on Troubles with using CAN API
CODESYS Forge
talk
(Post)
In the example project, you can see that a CAN.CANAreaReceiver is used which has an VAR_IN_OUT reference to a RECEIVER_AREA structure. This structure has a dwIdStart and dwIdEnd to filter a range of ID's and process them through the referenced msgProcessor.
Last updated: 2023-09-19
Post by rschwager on description about the build compiler definition
CODESYS Forge
talk
(Post)
Hi CODESYS moderators and user! Is there any description about the compiler definition in property of application? e.g.: CANOPEN_NO_HEARTBEATPRODUCING Is there more definition? Best regards Robert
Last updated: 2023-09-26
Post by simond on The required device description is not installed..
CODESYS Forge
talk
(Post)
Hi folks, can someone please tell me how to go about fixing this issue? I am getting this error when I implement an instance of the J1939_Manager. Thanks Simon
Last updated: 2023-10-03
Post by damian177 on Delete PLC Log
CODESYS Forge
talk
(Post)
You already know how clear log ? In codesys I am reading twenty Modbus TCP Devices. When several of those doesn't response , the logs is grovs very fast and my PLC hangs.
Last updated: 2023-10-16
Post by ewi04 on Git with visu
CODESYS Forge
talk
(Post)
Hi, I have several problems with the git extension. Situation: I am working with Codesys v3.5 SP19 Patch 1 and Git V1.2.1.0. The remote repository is GitLab Community Edition v16.1.2. I am working on a project with one other person. Problems: 1: After each start of Codesys all of the visu pages are marked as modified. So we have to discard all changes first. Otherwise the history is not clean and the merge request becomes more complex. I tested it with a new project and only local. I made the observation, that a page is not marked as modified when it is committed a second time (after a restart of codesys). But this is necessary after every change of a page. However, since we are working in a team, it seems we are playing ping-pong and so all pages are marked as modified on each startup. 2: Each image pool causes a parent child conflict. Also in my local project. The only solution that I have found, is to ignore the issue. Does anyone have the same problems? I think it looks more like bugs. Thanks ewi04
Last updated: 2023-11-22
Post by srigan1986 on SP8 - New scriptengine feature - open:VersionUpdateFlags
CODESYS Forge
talk
(Post)
Is this issue of idling before loading libraries resolved in Codesys 3.5.18.40 ? I am also curious about this version as there seem to be huge difference in the compiler versions which don't recognize the versions with older storage format.
Last updated: 2023-11-24
Post by voffi on About Codesys Task Executions
CODESYS Forge
talk
(Post)
A task in CODESYS normally is a task of the underlying operating system. If your os is preemptive and the sheduler is configured accordingly a CODESYS task will be preemptive too.
Last updated: 2023-12-14
Post by trycyclepower on How to transfer data from DINT to Union(16 Bools) which I need to use in Few FBs
CODESYS Forge
talk
(Post)
I have DINT data from drive input and would like to use this data in Bools in bunch of the FBs. I have tried using Union but it is not working. Please suggest
Last updated: 2023-12-14
Post by eschwellinger on Raspberry Pi
CODESYS Forge
talk
(Post)
Which RaspberryPi OS - have you installed on the PI? At the moment, there is a problem with latest Bookworm from December. You need to downgrade to October version of the OS - or wait 4.11.0.0. is released ( February) https://downloads.raspberrypi.com/raspios_armhf/images/ 2023-10-10 16:13 Version will work.
Last updated: 2023-12-28
Post by marekxc on Translation - How to get text as reference in Frames translated?
CODESYS Forge
talk
(Post)
Show a simple example of what you're doing. What and where are you changing? Maybe this link will be useful to you" https://content.helpme-codesys.com/en/CODESYS%20Visualization/_visu_using_visu_as_element.html
Last updated: 2023-12-29
Post by reinier-geers on Time zone
CODESYS Forge
talk
(Post)
I use a controller with Linux. I try to change timezone. but no result. The command of codesys i dont understand ?? And Linux Commands dont work. It stays at +0 . I want Amsterdam
Last updated: 2023-12-29
Post by ewi04 on Recipe Manager - RecipeManCommands, load & write wrong values, Bug?
CODESYS Forge
talk
(Post)
Nice to hear that I'm not the only one. I share your suffering. I was on the verge of doing the same.
Last updated: 2024-01-04
Post by shubh on unable to access .py library
CODESYS Forge
talk
(Post)
i am trying to import .py libraries of Utest in codesys environment, i have tried sys.path.append() still i am unable to access that library.
Last updated: 2024-01-05
Post by apurv on Cannot pass array of constant size to a function as a reference
CODESYS Forge
talk
(Post)
okay but will this pass the array by copying it or it will be a reference to original array only.
Last updated: 2024-01-09
Post by giackanto on Eoe issues with Windows and Linux
CODESYS Forge
talk
(Post)
I tried to change the name of the tap device to 'tap0,' but nothing changed. I don't think this is the problem.
Last updated: 2024-01-10
Post by vipul on Multicast udp
CODESYS Forge
talk
(Post)
Hi, Good afternoon can anybody help me with UDP Multicast code. I am not able to send or recieve data when code is dumped on linux device. Below is my code. Declaration: PROGRAM udp_multicast VAR oneTimeFlag :UINT :=0; state: INT:=0; driver: UDP.UDPDriver; //port : UDP.Port;//moved to GVL src_ipAddr_ud: UDINT; src_ipAddr_st:STRING := '192.168.127.155';//'192.168.1.155';//ipms ip address dst_ipAddr_ud:UDINT; group_ipAddr_st:STRING := '239.1.5.10'; //group_ipAddr_ud:UDINT; result: SysTypes.RTS_IEC_RESULT; //result of recieve function. bind: UDINT; //result of binding. resultCreate:SysTypes.RTS_IEC_RESULT;//result of port creation. timer:BLINK; temFlag :INT:= 0; post:INT :=0; checksumFunc:checksumXor; localStringBuf:STRING[500]; chksum:BYTE; dataBuffer:POINTER TO BYTE; checksumString:ARRAY[0..5] OF BYTE; recvSize:__XINT; errorCode:UDINT; joinGroupErrorCode:UDINT; END_VAR ************8 Implementation: IF oneTimeFlag <> 1 THEN oneTimeFlag:=1; resultCreate := driver.CreatePort(ADR(GVL.port)); src_ipAddr_ud := UDP.IPSTRING_TO_UDINT(sIPAddress:= src_ipAddr_st); GVL.group_ipAddr_ud := UDP.IPSTRING_TO_UDINT(sIpAddress:= group_ipAddr_st); GVL.port.IPAddress := src_ipAddr_ud; GVl.port.ReceivePort:= GVL.src_port;//port on which messages are expected. GVl.port.SendPort := GVL.dest_port; GVl.port.OperatingSystem := 0; //0- any system GVL.port.Socket :=3; //3- socket type is multicast bind := GVL.port.Bind(udiIPAddress:=src_ipAddr_ud,); GVl.port.JoinGroup(udiGroupAddress:= GVL.group_ipAddr_ud,udiInterfaceAddress:= src_ipAddr_ud,eLogCode=>joinGroupErrorCode); END_IF timer(ENABLE:=TRUE,TIMELOW:=T#100MS,TIMEHIGH:=T#100MS); IF timer.OUT = TRUE THEN GVL.port.Send(udiIPTo:=GVL.group_ipAddr_ud,GVL.dest_port,pbyData:=ADR(GVL.writeData),diDataSize:=SIZEOF(GVL.writeData)); ELSE SysMemSet(ADR(GVL.readData[0]),0,SIZEOF(GVL.readData)); result := GVl.port.Receive(ADR(GVL.readData),diDataSize:=SIZEOF(GVL.readData),udiIPFrom=>dst_ipAddr_ud,diRecvSize=>recvSize,eLogCode=>errorCode); SysMemMove(ADR(GVL.readDataBuf[0]),ADR(GVL.readData[0]),SIZEOF(GVL.readData)); END_IF post:=LEN(GVL.readDataBuf);
Last updated: 2024-01-14
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
.