Unfortunately , Data Source Manager from Codesys has any problem with OPC UA Server delivered with ifix SCADA. Someone can help me add manually any tag from UaExpert to codesys ? How should be was a structure for an example of one tag ? I try like in attachement, but question is , if it a good idea ?
Unfortunately , Data Source Manager from Codesys has any problem with OPC UA Server delivered with ifix SCADA. Someone can help me add manually any tag from UaExpert to codesys ? How should be was a structure for an example of one tag ?
everything works well.
In /etc/CODESYSControl.cfg I only added: [SysCom] Linux.Devicefile=/dev/ttyS Is ok ? Now in Codesys I should have mapping like below : COM1 - ttyS0 COM2 - ttyS1 ?
In /etc/CODESYSControl.cfg I only added: [SysCom] Linux.Devicefile=/dev/ttyS Is ok ? Now in Codesys I should have mapping like below : COM1 - ttyS0 COM2 - ttyS1
Hi, For many years my application has been running on Raspberry Pi. Now I have ported the application to a PC running with Debian OS with Codesys Control for Linux SL. Most of things works. But some is wrong with serial ports. Firstly , I wonder why /etc/CODESYSControl.cfg in Debian is empty ?
After 3 hours is some progress - please find in attachment - progress1.jpg
In my OPC UA Server is about 12 thousands tags. Can by possible that downloading tags from OPC UA Server lasts a long time , and when expires about 2 hours (demo license time) that downloading freezes ?
Hi, In Codesys V3.5 SP20, using Data Source Manager I am trying to connect to the OPC UA server and receive tags from it. The connection is ok, but the Codesys have a problem with downloading Tags group. The window (downloadingTags.jpg in attachement) never stop. After waiting for a while, I disconnect the connection and only the Server group remains downloaded, with OPC UA server diagnostic data (and this is read in Codesys). Of course, I tried connected via another OPC UA client : UaExpert , and...
When I try connect by other OPC UA Client everything is ok. Look like codesys have a problem with 'Tags' group. It possible add manually measurements form 'tag' group to codesys ?
The OPC UA Client Example with webvisu is working. Now I would like to use Datasource to connect to OPC UA Server but some is wrong because nothing to do when I try list tags from server - please find in attachement
Everything works. Any can help me with change the OPC UA Client Example to my needed ?
Hi, Today I ran OPC UA Client Example in 1.1.0.0 version. I opened example visualisation and I tried connected to my OPC UA Server. In first steps looks good but connection was terminate with error OpcUa_BadLicenseLimitsExceeded. I can't test OPC UA Client witohut CODESYS OPC UA Client SL license ? Regards
Hi, I am running my application on device based on Compute Module 4S (Cortex-A72 (ARMv8) 64-bit ). On this device I installed RPi Runtime in 4.11.0.0 version. In my project I use device: Codesys Control for Raspberry Pi 64SL and my project works, but I actually do not have acces to all GPIO's , because GPIOs Compute Module is available only in 3.5.16.0 version and it doesn't work. Properly work GPIOs B+/Pi2 but using this device I do not have acces to all GPIO's in CM4S. Anyone of can tell me how...
Hi, I running my application od device based on Compute Module 4S (Cortex-A72 (ARMv8) 64-bit ). On this device I installed RPi Runtime in 4.11.0.0 version. In my project I use device: Codesys Control for Raspberry Pi 64SL and my project works, but I actually do not have acces to all GPIO's , because GPIOs Compute Module is available only in 3.5.16.0 version and it doesn't work. Properly work GPIOs B+/Pi2 but using this device I do not have acces to all GPIO's in CM4S. Anyone of can tell me how add...
Hi, Like in tpoic I hahe a problem with running DIO on RevPi Core SE working with Codesys. Look in attachments. Any idea how solve the problem ?
Hi, Like in tpoic I habe a problem with running DIO on RevPi Core SE working with Codesys. Look in attachments. Any idea how solve the problem ?
Hi, In my application I use table elemnt with filled by STRING ARRAY. I would like to implement the following functionality : When I click on second row, that this row will be cleared. Anyone can help me?
Hi, In my visualisation I have a "Calendar" control. I would like save day and month which will be clicket by operator on this control . forexample save in string array. How do this ?
Hi, I using persistence variables like below: VAR_GLOBAL PERSISTENT RETAIN id_worker1: ARRAY [0..3] OF INT := [231,234,176,222]; id_worker2: ARRAY [0..3] OF INT := [211,129,125,221]; Initial values can cause some problems?
Hi, I using persistence variables like below: VAR_GLOBAL PERSISTENT RETAIN id_worker1: ARRAY [0..3] OF INT := [231,234,176,222]; id_worker2: ARRAY [0..3] OF INT := [211,129,125,221]; I have declared with initial values ? may this cause some problems?
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.
Hi, In my project I have MQTT Client like below: //mqtt client mqttClient( xEnable:=connect_to_broker, sHostname :=sHostname, uiPort:= uiPort, xUseTLS:=FALSE, wsUsername:="", wsPassword:="", xCleanSession:=TRUE, sClientId:='694d45587761676f4b6f6e74656e6572', pbWillMessage := ADR(sWillMessage), uiWillMessageSize:=DINT_TO_UINT(Stu.StrLenA(ADR(sWillMessage))), xWillRetain:=FALSE, udiTimeOut:= 10000000); And ten subscriber's , one of those is below: //subscribe a topic1 mqttSubscriber_S1(xEnable:=subscribe,...
Probably I have the same problem, When I connect to broker and try subscribe to much topics then the client return error, did you solve your problem ?
Hi, so far I have only used one com port - built-in interface in RPi - RS232 (dev/serial0) as COM1 in Codesys, and my CODESYControl_User.cfg have congiuration like below: [SysCom] Linux.Devicefile=/dev/serial portnum := COM.SysCom.SYS_COMPORT1 Actually I added to my Rpi Hat with 2xRS232 (SPI). - /dev/spidev0.0 and /dev/spidev0.1 How I should change my CODESYControl_User.cfg file to use added porta as COM2 and COM3 in Codesys ?
I tried initialize my GSM modem by write simple application in C, and GSM modem works, below used AT commands: AtChat: T : "AT" AtChat: F : "OK" AtChat: T : "AT+CMEE=1" AtChat: F : "OK" AtChat: T : "AT+CMGF=0" AtChat: F : "OK" AtChat: T : "AT+CGMI" AtChat: F : "WH_Ltd" AtChat: F : "WH_GM35" AtChat: F : "Revision: RDA BV5" AtChat: F : "OK" AtChat: T : "AT+CGMM" AtChat: F : "WH_GM35" AtChat: F : "OK" AtChat: T : "AT+CGMR" AtChat: F : "Revision: GM35-D_B5_R05_A01_D170914" AtChat: F : "OK" AtChat: T...
I try initialize my GSM modem by write simple application in C, and GSM modem works, below using AT commands: AtChat: T : "AT" AtChat: F : "OK" AtChat: T : "AT+CMEE=1" AtChat: F : "OK" AtChat: T : "AT+CMGF=0" AtChat: F : "OK" AtChat: T : "AT+CGMI" AtChat: F : "WH_Ltd" AtChat: F : "WH_GM35" AtChat: F : "Revision: RDA BV5" AtChat: F : "OK" AtChat: T : "AT+CGMM" AtChat: F : "WH_GM35" AtChat: F : "OK" AtChat: T : "AT+CGMR" AtChat: F : "Revision: GM35-D_B5_R05_A01_D170914" AtChat: F : "OK" AtChat: T :...
Hi, I try use IIoT library to send and receive SMS by Raspbery PI and Codesys. I installed IIoT package and added the SMS library, But something is wrong, when I init communication it doesn't work, When I sniffer my communication (AT commands) beetwen RS232 RaspberryPi and my GSM modem I have only below commands: AT+CMEE=1 OK AT+CPIN? +CPIN: READY Anyone have idea what can be wrong ?
I solved my problem by adding CAA DTUtil Extern library. Now works.!
Can anyone help me ?
Hi, I use Pixtend v1.3 with my RaspberryPi with Codesys V3.5 SP15 Patch1. Actually in my project I used two packages: - CODESYS Contro for Raspberry PI 3.5.15.10 - PiXtend for CODESYS 1.3.8.0 Now I would like to extend my project about the IIot Libraries SL package, I installed them. Next I added SMS_Service_SL 1.0.0.8 version library and I have problem with compile my project because I get error: [ERROR] PiXtend_DemoProject_q: Library Manager [Device: PLC Logic: Application]: Could not open library...
Hi, I use Pixtend v1.3 with my RaspberryPi with Codesys V3.5 SP15 Patch1. Actually in my project I used two packages: - CODESYS Contro for Raspberry PI 3.5.15.10 - PiXtend for CODESYS 1.3.8.0 Now I would like to extend my project about the IIot Libraries SL package, I installed them. Next I added SMS_Service_SL 1.0.0.8 version library and I have problem with compile my project because I get error: [ERROR] PiXtend_DemoProject_q: Library Manager [Device: PLC Logic: Application]: Could not open library...
Hi, Is it possible read all project from Codesys PFC200 ? I know only IP addres, nothing more
Hi, It is possible read all project from Codesys PFC200 ? I know only IP addres, nothing more
Hi, Form my codesys I must send/receive package to remote device by TCP/IP on port 6611 . Package like below: <esc><cmd>;<values>;<names>;<tid>;<crc><esc>\</esc></crc></tid></names></values></cmd></esc> To do it I can use below example ? https://store.codesys.com/en/http-client-example.html and in url I should use http://ipaddres:6611 ?
Like you can find in attachement - I have library MEMUtils.
Ok, I check this. Do you think that using CODESYS Control for Raspberry Pi MC SL can get better performance and temperature processor will decrease ? Actually the processor temperature in my Compute Module 3 is 83'C .... I search solution to decrease this.
Hi, Is any simple way update my device CODESYS Control for Raspberry Pi SL to CODESYS Control for Raspberry Pi MC SL ? When I do this by update I get huge amount of errors... why ?
Hi, Do someone have any simple idea how convert this string : 'temp=44.4$'C$N' to real variable temp= 44.5 ?
Hi, I have the same situation since 2 years. I do not how solve this problem. Do you have any soultions ?
Hi, Below I paste one of step CASE statement 21: (*check number phone sender'a*) (*check if sms is not too old*) timestamp_hist_hi := time_sys.udiLocal_DateAndTime + timestamp_hist; timestamp_hist_lo := time_sys.udiLocal_DateAndTime - timestamp_hist; IF (smsrec.sNumber = 'XXXXXXXXXXX' OR smsrec.sNumber = 'XXXXXXXXXXX') AND (DT_TO_UDINT(smsrec.dtSend) > timestamp_hist_lo) AND (DT_TO_UDINT(smsrec.dtSend) < timestamp_hist_hi) THEN iState:= 23; ELSE iState:= 100; END_IF; Teh variable timestamp_hist equal...
DO you have any idea how is simple way to export data array to file ?
Hi, I created byte array with 3999 iems. When I am online i see only 999, why ? - please find in attachment. This array is my data logger, When I am online, I would like to copy all data to e.g notepad to analize, but i do not know how do this. Is any simple way to copy all items array in online mode ?
Hi, Can you look on my problem and give me some tips to improve my code: https://forge.codesys.com/forge/talk/Engineering/thread/eb824a9bbb/#2647 Thank you in advance. Talk Topic about project #fajean
Problem probably was in UINT_TO_BYTE(SIZEOF(dataImageLogoP1inv) -1) because oryginally I use : UINT_TO_BYTE(SIZEOF(dataImageLogoP1inv)). Thanks for help.
In my project in one of program block it was declared this variable : VAR firstScan:BOOL:=TRUE; END_VAR Is not a global variable. I don't understand why variable "fisrtScan" would be reinitialize to TRUE every time ?
How is possible that my first solution worked time to time ?
Size like below : dataImageLogoP1inv : ARRAY[0..203] OF BYTE; SIZEOF return 204 in my example ?,so my loop should be : IF firstScan THEN FOR iCount:=0 TO UINT_TO_BYTE(SIZEOF(dataImageLogoP1inv) -1) DO dataImageLogoP1inv[iCount] := GVL_Print.dataImageLogoP1[iCount] XOR 16#FF; dataImageLogoP2inv[iCount] := GVL_Print.dataImageLogoP2[iCount] XOR 16#FF; dataImageLogoP3inv[iCount] := GVL_Print.dataImageLogoP3[iCount] XOR 16#FF; dataImageLogoP4inv[iCount] := GVL_Print.dataImageLogoP4[iCount] XOR 16#FF;...
Size like below : dataImageLogoP1inv : ARRAY[0..203] OF BYTE; SIZEOF return 204 in my example ?,so my loob should be : IF firstScan THEN FOR iCount:=0 TO UINT_TO_BYTE(SIZEOF(dataImageLogoP1inv) -1) DO dataImageLogoP1inv[iCount] := GVL_Print.dataImageLogoP1[iCount] XOR 16#FF; dataImageLogoP2inv[iCount] := GVL_Print.dataImageLogoP2[iCount] XOR 16#FF; dataImageLogoP3inv[iCount] := GVL_Print.dataImageLogoP3[iCount] XOR 16#FF; dataImageLogoP4inv[iCount] := GVL_Print.dataImageLogoP4[iCount] XOR 16#FF;...
Size like below : dataImageLogoP1inv : ARRAY[0..203] OF BYTE; SIZEOF return 204 in my example ?,so my loob should be : //Przygotowanie danych grafiki loga SPEEDWASH IF firstScan THEN FOR iCount:=0 TO UINT_TO_BYTE(SIZEOF(dataImageLogoP1inv) -1) DO dataImageLogoP1inv[iCount] := GVL_Print.dataImageLogoP1[iCount] XOR 16#FF; dataImageLogoP2inv[iCount] := GVL_Print.dataImageLogoP2[iCount] XOR 16#FF; dataImageLogoP3inv[iCount] := GVL_Print.dataImageLogoP3[iCount] XOR 16#FF; dataImageLogoP4inv[iCount] :=...
Size like below : dataImageLogoP1inv : ARRAY[0..203] OF BYTE;
Hi, I read data from device by RS232 like this: ////////////////////////receiving data/////////////// //wait for all data tonRcv(IN:= (iCountG>0) AND NOT tonRcv.Q, PT:=T#1000MS); IF hCom <> RTS_INVALID_HANDLE AND bReadCom THEN // Complete the data numberOfbytes := SysComRead(hCom:= hCom, pbyBuffer:= ADR(temp_rdData), ulSize:= SIZEOF(temp_rdData), ulTimeout:= 100, pResult:= ADR(Result)); IF numberOfbytes > 0 THEN FOR iCount :=0 TO numberOfbytes - 1 DO rdData[iCountG]:=temp_rdData[iCount]; iCountG...
Hi, I read data from device by RS232 like this: ////////////////////////odbieranie danych RX/////////////// //wait for all data tonRcv(IN:= (iCountG>0) AND NOT tonRcv.Q, PT:=T#1000MS); IF hCom <> RTS_INVALID_HANDLE AND bReadCom THEN // Complete the data numberOfbytes := SysComRead(hCom:= hCom, pbyBuffer:= ADR(temp_rdData), ulSize:= SIZEOF(temp_rdData), ulTimeout:= 100, pResult:= ADR(Result)); IF numberOfbytes > 0 THEN FOR iCount :=0 TO numberOfbytes - 1 DO rdData[iCountG]:=temp_rdData[iCount]; iCountG...
Hi, I read data from device by RS232 like this: ////////////////////////odbieranie danych RX/////////////// //wait for all data tonRcv(IN:= (iCountG>0) AND NOT tonRcv.Q, PT:=T#1000MS); IF hCom <> RTS_INVALID_HANDLE AND bReadCom THEN // Complete the data numberOfbytes := SysComRead(hCom:= hCom, pbyBuffer:= ADR(temp_rdData), ulSize:= SIZEOF(temp_rdData), ulTimeout:= 100, pResult:= ADR(Result)); IF numberOfbytes > 0 THEN FOR iCount :=0 TO numberOfbytes - 1 DO rdData[iCountG]:=temp_rdData[iCount]; iCountG...
Codesys proces eating all the CPU during running my project. The problem is in the loop - please find in attachement . I do not what can be wrong...
This one: https://comfiletech.com/linux-panel-pc-comfilepi/cpi-a102wr-10-2-industrial-raspberry-pi-touch-panel-pc/
Hi, I using codesys to my app. Somethimes when I do update my project and try run my application the CPU load exceed 95% and program stop with exception code. What are my ways of getting out of this situation ? During operation, the CPU load is about 20%
Last time I did test "persistent variables" saving in files using Modules, Composer-> Persistence Generator. Is any way to remove this module from my project ? How do this ?
after change parameter list and reboot it works.
I changed this parameter in Library Parameters -> Value (editable) but when I open ST editor it id still old value...
how to change only in my project ? without changing library?
and how to enter a new value only in my project?
Hi, How can I change value in variable in library . Please find in attachment ...
Hi, I am using Codesys V3.5 SP16 and I would like works in Codesys V3.5 SP18. So I archive my project, an I try restore in new version, but I have some problems. Please find in attachment details. What is the best way to resolve my problem ?
I can't run the module 750-653 in PFC200 and Codesys Runtime. To communicte with Modbus RTU Slave's I am using RS485/Ethernet USR DR302 Modbus RTU/TCP converter. Works great. As far as I know the 750-653 module is no a device in linux- /dev/ttyS1, /dev/ttyS2 etc etc... , so probably your COM2, COM3 configuration in Codesys will not work. If you find any example using this module in codesys please share it please :)
In new environment generator works good. But in new codesys Ido not have Build(F11) i Rebuild , why? Please find in attachement. @josepmariarams I do Persistant Variables on file because my Rpi time to time isrestart by lack of power...- so I don't stopp Raspian normally.I hope it will work.
I am using Codesys 3.5 SP16 Patch 2. Once difference I noticed is that in configuration (like in attachement) I have set HIGH and LOW task. I no have this task in my projekt. it could be the problem cause ?
Before "Generate" I choose only "Persistence generator". I didn't chose "Standard generator" because after that my environment is freeze., Why it doesn't work ? therefore they are not generated tasks : HIGH and LOW ....
Any ideas ?
I try this solution (Persistence Manager) but it do not work. I did as described: 1) In Codesy - View -> Modules 2) Add Toplevel Module Instance 3) Add Persistence Manager 4) Select the Application - Device.Application 5) Added group "Persistence1" 6) Added Submodule Instance "PersistenceChannel" 7) Setup the Persistence Parameter - xSaveOnChange on TRUE 8) Add Submodule Instance - and Select ASCIIFileStorage 9) Created GVL called "PersistentVars" in my project and add persistence variables with...
I try this solution (Persistence Manager) but it do not work. I did as described: 1) In Codesy - View -> Modules 2) Add Toplevel Module Instance 3) Add Persistence Manager 4) Select the Application - Device.Application 5) Added group "Persistence1" 6) Added Submodule Instance "PersistenceChannel" 7) Setup the Persistence Parameter - xSaveOnChange on TRUE 8) Add Submodule Instance - and Select ASCIIFileStorage 9) Created GVL called "PersistentVars" in my project and add persistence variables with...
I try this solution (Persistence Manager) but it do not work. I did as described: 1) In Codesy - View -> Modules 2) Add Toplevel Module Instance 3) Add Persistence Manager 4) Select the Application - Device.Application 5) Added group "Persistence1" 6) Added Submodule Instance "PersistenceChannel" 7) Setup the Persistence Parameter - xSaveOnChange on TRUE 8) Add Submodule Instance - and Select ASCIIFileStorage 9) Created GVL called "PersistentVars" in my project and add persistence variables with...
I try this solution (Persistence Manager) but it do not work. I did as described: 1) In Codesy - View -> Modules 2) Add Toplevel Module Instance 3) Add Persistence Manager 4) Select the Application - Device.Application 5) Added group "Persistence1" 6) Added Submodule Instance "PersistenceChannel" 7) Setup the Persistence Parameter - xSaveOnChange on TRUE 8) Add Submodule Instance - and Select ASCIIFileStorage 9) Created GVL in my project and add persistence variables with attribute: ~~~ VAR_GLOBAL...
I try this solution (Persistence Manager) but it do not work. I did as described: 1) In Codesy - View -> Modules 2) Add Toplevel Module Instance 3) Add Persistence Manager 4) Select the Application - Device.Application 5) Added group "Persistence1" 6) Added Submodule Instance "PersistenceChannel" 7) Setup the Persistence Parameter - xSaveOnChange on TRUE 8) Add Submodule Instance - and Select ASCIIFileStorage 9) Created GVL in my project and add persistence variables with attribute: ~~~ VAR_GLOBAL...
I try this solution (Persistence Manager) but it do not work. I did as described: 1) In Codesy - View -> Modules 2) Add Toplevel Module Instance 3) Add Persistence Manager 4) Select the Application - Device.Application 5) Added group "Persistence1" 6) Added Submodule Instance "PersistenceChannel" 7) Setup the Persistence Parameter - xSaveOnChange on TRUE 8) Add Submodule Instance - and Select ASCIIFileStorage 9) Created GVL in my project and add persistence variables with attribute: ~~~ {attribute...
What should I change in /etc/CODESYSControl.cfg to properly work above example ? What do you think about below solution :? https://help.codesys.com/webapp/_rtslext_retains_in_shared_memory;product=CODESYS_Control_SL_Extension_Package;version=4.4.0.0 ?
I do not understand this code: PROGRAM AppRetain VAR fbDelete : FILE.Delete; (* Function block to delete the file *) sFileName : STRING := 'App10.ret'; pApp : POINTER TO APPLICATION; Result : RTS_IEC_RESULT; (* Result code *) xInit : BOOL; xSave : BOOL; xRestore : BOOL; END_VAR IF NOT xInit THEN pApp := AppGetCurrent(pResult:=ADR(Result)); xInit := TRUE; END_IF IF xSave THEN (* First delete the retain file. This is necessary, because the function AppStoreRetainsInFile appends the data at the end...
I do not understand this code: PROGRAM AppRetain VAR fbDelete : FILE.Delete; (* Function block to delete the file *) sFileName : STRING := 'App10.ret'; pApp : POINTER TO APPLICATION; Result : RTS_IEC_RESULT; (* Result code *) xInit : BOOL; xSave : BOOL; xRestore : BOOL; END_VAR IF NOT xInit THEN pApp := AppGetCurrent(pResult:=ADR(Result)); xInit := TRUE; END_IF IF xSave THEN (* First delete the retain file. This is necessary, because the function AppStoreRetainsInFile appends the data at the end...
Hi, I use RPi and Persistent Vars and as you well know it doesn't work, so It is possible manually form Codesys application save/update the Persistent Vars value ?
I have Date and Time on WebVisu: %t['Date: 'dd.MM.yyyy 'Time: 'HH:mm:ss] How create string variable in above value ?
I have Date and Time on WebVisu: %t['Data: 'dd.MM.yyyy 'Czas: 'HH:mm:ss] How create string variable in above value ?
the semicolon after END_IF has any meaning?
Please explain to me what is the difference between the following instructions :? Can I use both interchangeably? IF [conditional_expresion] THEN <instructions>; ELSIF [conditional_expresion] THEN <instructions>; ELSE <instructions>; END IF; IF [conditional_expresion] THEN <instructions>; ELSE IF [conditional_expresion] THEN <instructions>; ELSE <instructions>; END IF END IF
Hi, It is possible to get acces to cmd linux from codesys application ? For example. From codesys application reboot linux system ?
The above solution works great. I test it now
What do we think about this solution. I should create file : /etc/udev/rules.d/70-persistent-serial.rules and put in it: ACTION=="add|change", SUBSYSTEM=="tty", KERNEL=="ttyUSB0", \ ATTRS{manufacturer}=="FTDI", ATTRS{serial}=="AK08GAMY", \ SYMLINK+="serial2" ACTION=="add|change", SUBSYSTEM=="tty", KERNEL=="ttyUSB1", \ ATTRS{manufacturer}=="FTDI", ATTRS{serial}=="AK08G985", \ SYMLINK+="serial3" ?
@somlioy do you have any solution to symbolic link after reboot system ? I have finished my application with dev/ttyUSB0 i dev/ttyUSB1, but I still creating symbolic link - manually after reboot system.
right, thanks.
Hi, I send String data to serial com to thermal printer like this: sw1: STRING:= 'DATA:'; dwWritten := SysComWrite(hCom:= hCom, pbyBuffer:= ADR(sw1), ulSize:= SIZEOF(sw1), ulTimeout:= 100, pResult:= ADR(Result) ); When I do not change my data in sw1 variable - everything is ok. When I change my data and send to serial com like this: sw1:= '12'; dwWritten := SysComWrite(hCom:= hCom, pbyBuffer:= ADR(sw1), ulSize:= SIZEOF(sw1), ulTimeout:= 100, pResult:= ADR(Result) ); Result on printer is bad , because...
Solution with symbolic link works,until I restart my system.
@eschwellinger I should remove this lines : [SysCom] Linux.Devicefile=/dev/serial from /etc/CODESYSControl.cfg file ? I do this and add [SysCom] Linux.Devicefile.1=/dev/serial0 Linux.Devicefile.2=/dev/serial1 Linux.Devicefile.3=/dev/ttyUSB0 in empty /etc/CODESYSControl_Users.cfg file , but it doesn't work.
Hi, I am using linux panel PC CPi-A102WR with Codesys. I using two embeded serial ports by Edit the CODESYS configuration file sudo nano /etc/CODESYSControl.cfg [SysCom] Linux.Devicefile=/dev/serial And I have COM1 - COM0(physical) COM2 - COM1(physical) Now I need more COM port, so I use USB to RS232 nad in the linux I have device : dev/ttyUSB0. What I should modify in /etc/CODESYSControl.cfg file to using my device ttyUSBO like COM3 in codesys ?
I have 800x480 hmi size. I would like to create variable visualization screen with size 800x320 size and header vizualization with size 800x160. How do this ? How add to screen with 800x480 size , the screen with 800x160 size ?
I have a device with which I communicate via the serial port. I would like to refine the algorythm of receiving complete frames. Receiving frame have format <stx> ...... <etx><crc>. Is the following algorithm optimal for receiving a complete frame? Any tips ?</crc></etx></stx> IF hCom <> RTS_INVALID_HANDLE AND bReadCom THEN numberOfbytes := SysComRead(hCom:= hCom, pbyBuffer:= ADR(temp_rdData), ulSize:= SIZEOF(temp_rdData), ulTimeout:= 100, pResult:= ADR(Result)); IF numberOfbytes > 0 THEN FOR iCount...
I have a device with which I communicate via the serial port. I would like to refine the algorythm of receiving complete frames. Receiving frame have format <stx> ...... <etx><crc>. It is a good algoritm to read all frames ? Any tips ?</crc></etx></stx> IF hCom <> RTS_INVALID_HANDLE AND bReadCom THEN numberOfbytes := SysComRead(hCom:= hCom, pbyBuffer:= ADR(temp_rdData), ulSize:= SIZEOF(temp_rdData), ulTimeout:= 100, pResult:= ADR(Result)); IF numberOfbytes > 0 THEN FOR iCount :=0 TO numberOfbytes...
I have a device with which I communicate via the serial port. I would like to refine the algorythm of receiving complete frames. Receiving frame have format <stx> ...... <etx><crc>. It is a good algoritm to read all frames ? Any tips ?</crc></etx></stx> IF hCom <> RTS_INVALID_HANDLE AND bReadCom THEN // Complete the data numberOfbytes := SysComRead(hCom:= hCom, pbyBuffer:= ADR(temp_rdData), ulSize:= SIZEOF(temp_rdData), ulTimeout:= 100, pResult:= ADR(Result)); IF numberOfbytes > 0 THEN FOR iCount...
I did reset before, anyway in attachment I send screen counters, captured a few seconds after reset
Please find in attachement - I attached screen with online monitor. Actually I have three task like this: MainTask - cyclic - 200ms rfid_task - cyclic - 10ms task_50ms - cyclic - 50 ms, ?
@eschwellinger can you give me base hints what can I do to optimize my project ? For examle in my FB to send sms my input value is " message:STRING " and all the calls to that FB have : msg2send(..., message:='ewfdewfdewfdewfewfewfewfewfewfewfewfewfewfewf' , ....... ); May by all text I should keep in Structure ? not in main program ? and calls will be: msg2send(..., message:=variable_with_text1 , ....... ); It can help to decrease % CPU ?
Please find in attachement. Oryginally I have only one Ethernet devices. Now, can I do two devices "Ethernet" and "Ethernet_f" with the same adress ip my PFC200 controller ? In this way devices under "Ethernet" will be with 200ms cycle time , and devices under "Ethernet_f" will be scanned with 10ms ? Configuration like in attachements ,should I sense?