I think this is really now "Generate EtherCAT XML" command which gives the ENI topology info.
An ENI file is needed for a 3rd party software solution that is being used over EtherCAT connection that emulates multiple Slave devices. This one cant be that complex, seen some legacy posts but no answers. Thank you! Bruce
My apologies for delay, been out.... So the issue was in the "getAttributeSingle" whic is immedialty exectured and the associated enable for this function via "xExecute" being TRUE was too fast for system and not recgonized. make the variable "XExecute" driven by another variable you can delay some, etc. before executing this command. that should do it. another ways is have xExecute initialzed to FLASE and in the debugger drive to TRUE
Hmmm.here's the odd things (I have CSYS support so I also submitted to them and they said HTTPS worked ok on example project). Example project Web Client "out of the box" from CSYS states HTTP or HTTPS URL supported in the comments of the PRG. This implies (to me) no unique HTTPS Cert generation, etc. required. I type the HTTPS URL ( https://api.weather.gov/gridpoints/TBW/69,116/forecast/hourly ) in browser, displays fine. I run WinPLC project and "TCP Init Error" No external inputs to CFC Block...
I ran "security Agent" which is the latest cert. gen approach. Thanks though.
*Note: previous posts on this did not resolve my issue. Using latest IIOT Library download with Web Client and associated example project on WinPLC. Use the provided HTTP URL: sURL : STRING(1024) := 'http://httpbin.org/get' (works fine) Use my HTTPS URL: sURL : STRING(1024) := 'https://api.weather.gov/gridpoints/TBW/69,116/forecast/hourly' gives me "TCP_INIT_ERROR" Unable to initialize the TCP socket. All Libraries look good as provided with the example project and updated accordingly. ?- something...
Ok so looking at "ParseJSON"...feed it in a String, then how do I access members of an Element, then an object in an Array, i.e. how does it determine which Type? "coord" : { "lon" : -82.4584, "lat" : 27.9475 }, "weather" : [ { "id" : 804, "main" : Clouds, "description" : overcast clouds, "icon" : 04d } ], ?- What would be the syntax to assign the element to a temp variable, for example temp := JSONVars.weather.main Appreciate any input, gonna have to do my due diligence on the coding aspects for...
Thank you much TVM! My biggest challenge is to parse out an element from an Array, so i was thinking multiple steps: - Find Key for the Array location - Find item in Array via an Index lookup...etc. Anyway ill dig into it. I am looking at the JSON Utilies SL library right now but hampered by the fact my HTTP Client is outputting a WString (JSON) from the weather API and haven't figured out way to feed into the FBlks they offer. Thank you again!
Hey Folks, I am obtaining data from a Weather API site using the "WEB_CLIENT" block (HTTP Get). JSON data comes in and is stored off in a "WSTRING" as follows: "{"coord":{"lon":-82.4584,"lat":27.9475},"weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04d"}],"base":"stations","main":{"temp":72.48,"feels_like":71.6,"temp_min":68.05,"temp_max":76.15,"pressure":1023,"humidity":43},....." Pretty format... { "coord": { "lon": -82.4584, "lat": 27.9475 }, "weather": { "id": 804,...
Resolved, Engaging the EIP Master immediatley (xExecute = TRUE)prior to the Slave being ready, timesouts fast. Made this variable conditional in code.
Project Scanner driver
I have a Scanner(CSYS on Win 64)/Adapter(another PLC) setup for "Explicit Messaging". My EtherNet/IP traffic confirmed okay via Wireshark. This Function Block is not sending out the CIP command to "Get_Attribute_Single". Below is the code running in debugger. Constantly get CIP Error "Abort" (but my comms have been verified between the units).
Thank you very much! Looked at that 10x and still missed. Combination of 2 things: - The Instance Swap like you said and - Change the Target to Scanner format to "Pure Data"
See for the Compute 3, but no "4". Forthcoming? Regards
My Adapter setup....
My Scanner setup for Adapter connection
My Adapter connection
Updated error code when I attempt another time
Per the CSYS EThernt/IP Sperc sheet:
HEy Folks, I have the CODESYS Scanner/Master running Win PC with the Etnernet/IP Scanner library. I am trying to connect to an Adapter/Slave which is another PLC and it doesnt reckognize the Adapter. Want to receive periodic variable/tag updates automatically over Ethernet/IP but I am getting the following error: Says no "Class 1" Adapter allowed. That is a very common topology. ?- Am I missing something. Thanks
Resolved. Thanks
Thanks looked at that previously, but didnt clear it up for me. Ill keep digging, thx *I got it...FTP server name in error.
Thanks looked at that previously, but didnt clear it up for me. Ill keep digging, thx
Hey Folks, Looking at this function and it is unclear to me how the data exchanged on the Ethernet Port on the Pi. I see no implied "calls" etc unless I am missing a function block. Based on a demo project referenced on Forge ftp_url: STRING := 'ftp://Username:passwort@192.168.101.29'; //FTP Server und username und pw ftp_filename: STRING := 'testdatei.log'; // this is the file that is dragged onto the Pi by the FTP server. ?- where are these ports going to. Thanks
Hey Folks, Looking at this function and it is unclear to me how the data exchanged on the Ethernet Port on the Pi. I see no implied "calls" etc unless I am missing a function block. Based on a demo project referenced on Forge ftp_url: STRING := 'ftp://Username:passwort@192.168.101.29'; //FTP Server und username und pw ftp_filename: STRING := 'testdatei.log'; // this is the file that is dragged onto the Pi by the FTP server. ?- where are these ports going to. Thanks
Hey Folks, if I have a Step--> Step transition that is "true" (not conditional), what determines the time from one Step to the next? Is there a Master system clock somewhere defined that SFC utilizes? My frame of reference is a "Finite State Machine" in say an FPGA that uses a Master State clock.
Hey Folks, if I have a Step--> Step transition that is "true" (not conditional), what determines the time from one Step to the next? Is there a Master system clock somewhere defined that SFC utilizes?
Hey Folks, Used to a "Tag Database" layout where I have one location/file where all the Tags are listed by Type and Location. ?- Haven't found in CSYS yet. Way to do? Regards
Hey Folks, Trying to get HTTPS working and noticed in Security Agent (Security Screen) there is no "WebServer" item listed in the "Own Certifcates" section. ?- How does it get generated. I assume Security Agnet has replaced the manual generation as defined in doc "WebServer with SSL Support" REgards
Hey Folks, Trying to get HTTPS working and noticed in Security Agent (Security Screen) there is no "WebServer" item listed in the "Own Certifcates" section. ?- How does it get generated. I assume Security Agnet has replaced the manual generation as defined in doc "WebServer with SSL Support" REgards
Hey Folks, I am displaying a value in a Text String in the WebVisu HMI such that when the "If" statement is true it outputs the string "Pass" in the text field, when not, outputs "Fail". ?- Is there a way to have color associated with the string be dynamic, i.e. "Fail" shows up in Red, while "Pass" is in green.
Thank you- these guys are excellent for sure.
Hey Folks, Any chatter on if CODESYS is going to release this variant of MQTT in their IIoT Library. Big hole in my opinion. Regards
Have a smaller 5" display. ?- How do I get the graphics to scale down to this display size. Looks great on my 17" monitor.
Thx again! Not sure how I missed the doc but that is a key piece. Exactly what i wanted! Regards.
Thx again! Not sure how I missed the doc but that is a key piece. Regards.
Say I want to create a new device. For example a simple RPi HAT SPI IO expander (some have been done already). Here's my understanding thus far, 1). I generate the "I/O Driver" .XML file that defines the Device, the top level ports, data types, etc. ?- Where does this file reside to get added in the library 2) Write the underlying function (FB in ST) that configures the ADC, gets data, etc. ?- where does this reside and get pulled in. There has to be a how to from start to finish on this since it...
Say I want to create a new device. For example a simple RPi HAT SPI IO expander (some have been done already). Here's my understanding thus far, 1). I generate the "I/O Driver" .XML file that defines the Device, the top level ports, data types, etc. ?- Where does this file reside to get added in the library 2) Write the underlying function (FB in C?) that configures the ADC, gets data, etc. ?- where does this reside and get pulled in. There has to be a how to from start to finish on this since it...
I have been using the GPIO functionality based on the example project for GPIOs located in: C:......\CODESYS Control for Raspberry PI\3.5.16.0\Examples And works as polarity written/expected in code. Maybe conflict with another option like the "I2C" or "SPI" ?
I have been using the GPIO functionality based on the example project for GPIOs located in: C:......\CODESYS Control for Raspberry PI\3.5.16.0\Examples And works as polarity written/expected in code. Maybe conflict with another option like the "I2C" or "SPI" ?
Thank you Edwin, will do. Just was curious though where this attribute is set in the IDE so when you load the Runtime its already there? Anyway, will keep pressing on. Thank you.
Hey Folks, I have an issue where my setting in this file " [CmpWebServer] ConnectionType=3 " keeps getting overwritten when I reload Runtime to default [CmpWebServer] ConnectionType=0. Looked in the directories on the PC where Im doing the edits and I change the files here thinking they get downloaded to Pi, but still set to "0". *My goal is to set this variable in the IDE somewhere so when Runtime loaded its correct. Thank you.
Hey Folks, I have an issue where my setting in this file " [CmpWebServer] ConnectionType=3 " keeps getting overwritten when I reload Runtime to default [CmpWebServer] ConnectionType=0. Looked in the directories on the PC where Im doing the edits and I change the files here thinking they get downloaded to Pi, but still set to "0". Thank you.
Ok High Level: 1). Generate Certificates "Own Certificates" using the Security Agent/Security Screen. 2). "Point to" to use Certificates using the CODESYSControl.cfg? Manually edit still? (Per the "WebServerSSL_en.pdf" manual) Main questions is: ?- Does Security Agnet do all this now from the document? 2.3 Creating a self-signed certificate The OpenSSL Toolkit for Windows can be downloaded here: http://slproweb.com/products/Win32OpenSSL.html Here, the Light package is adequate. The toolkit is already...
Ok High Level: 1). Generate Certificates "Own Certificates" using the Security Agent/Security Screen. 2). "Point to" to use Certificates using the CODESYSControl.cfg? Manually edit still? (Per the "WebServerSSL_en.pdf" manual)
Perfect! Thanks much. Great forum here for sure.
Hey folks, dont need Time-of-day, just raw millisecond resolution delta duration. Not sure if thats too fine.
Excellent! looks good. Regards
Using WebVisu on the Pi (Chromium browser). The connection to the PI's (CSYS WebVisu) IP address/webserver is HTTP. ?- How do you obtain a secure "HTTPS" connection. Thank you!