REXYGEN Community Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Login
    1. Home
    2. Scoobsalamander
    3. Posts
    S
    • Profile
    • Following 0
    • Followers 0
    • Topics 12
    • Posts 37
    • Best 1
    • Controversial 0
    • Groups 0

    Posts made by Scoobsalamander

    • RE: REXYGEN 3.0.0 is available

      @Jan-Reitinger Hi Ja, thank you very much, I'll give it a try one of these days. When I have some results I'll post the outcome here.

      posted in Development tools
      S
      Scoobsalamander
    • RE: REXYGEN 3.0.0 is available

      Hi Tomáš, these are just some 'Chinese' IO modules which do work just fine with Codesys running on a Raspberry Pi 4. However it would be nice that I would be able to use them with Rexygen as I feel more comfortable programming in Rexygen Studio and I like the way an HMI can be created inside Inkscape.
      If you could provide me a basic example then I can give it a try.

      Attached are two xml files.

      Ethercat_xml.zip

      EV3200D = 32 digital Inputs
      EtherCATBusIO = 16 DI / 16 DO / 2AO / 2AI / 2 PWMout / 1 encoder input / 2 counter input / 1 Modbus RTU

      posted in Development tools
      S
      Scoobsalamander
    • RE: REXYGEN 3.0.0 is available

      In the release notes "REXYGEN 3.0.0-beta" there is mentioned that EtherCAT Communication Driver's
      Jitter and latency are reduced with the added support for XPD on Linux.

      Does this mean we can use EtherCAT now? I am asking because I have a huge interest in using my RasPi with Rexygen in combination with two IO-EtherCAT modules.

      posted in Development tools
      S
      Scoobsalamander
    • RE: Initialization of string in REXLANG

      @reitinge I did try this before but then I can't even compile due to an error.

      23345552-af28-4c1c-b9d1-6a4c22f5c625-image.png

      But apparently it was because I did the initialization of this string inside the main routine.
      Bizarre that it is throwing a warning for the string 'stringTemp' and not for the long variable 'index'.
      Both are only used inside the main routine.

      This is the complete code which is now running without a warning :

      //assigning inputs to variables, these variables are READ-ONLY
      double input(0) inputGLAS; 
      double input(1) inputGFT; 
      double input(2) inputPMD;
      double input(3) inputRA;
      double input(4) inputTEXT;
      double input(5) inputP_K;
      
      
      
      //assigning variables to outputs, these variables are WRITE-ONLY
      string output(0) stringOUT; //value to send to y0 output
      char stringTemp[80];
      
      
      
      //the init procedure is executed once when the REXLANG function block initializes
      long init(void)
      {
      	
      	return 0;
      }
      
      //the main procedure is executed repeatedly (once in each sampling period)
      long main(void)
      {
      	
      	
      	long index = 0;
      	
      	//char stringTemp[80];
              stringTemp="";
      
      	strcat(stringTemp,"Vergeet+niet+volgend+vuilnis+buiten+te+zetten+:+");
      	
      	if (inputGLAS!=0)
      	{
      		strcat(stringTemp,"Glas");
      		index=index+1;
      	}
      	
      	if (inputGFT!=0)
      	{
      		if (index!=0)
      		{
      			strcat(stringTemp,",+");
      		}
      		strcat(stringTemp,"GFT");
      		index=index+1;
      	}
      	
      	if (inputPMD!=0)
      	{
      		if (index!=0)
      		{
      			strcat(stringTemp,",+");
      		}
      		strcat(stringTemp,"PMD");
      		index=index+1;
      	}
      	
      	if (inputRA!=0)
      	{
      		if (index!=0)
      		{
      			strcat(stringTemp,",+");
      		}
      		strcat(stringTemp,"Restafval");
      		index=index+1;
      	}
      	
      	if (inputTEXT!=0)
      	{
      		if (index!=0)
      		{
      			strcat(stringTemp,",+");
      		}
      		strcat(stringTemp,"Textiel");
      		index=index+1;
      	}
      	
      	if (inputP_K!=0)
      	{
      		if (index!=0)
      		{
      			strcat(stringTemp,",+");
      		}
      		strcat(stringTemp,"Papier+en+Karton");
      	}
      	
      
      	stringOUT=stringTemp;
      	return 0;
      }
      
      //the exit procedure is executed once when the task is correctly terminated
      // (system shutdown, downloading new control algorithm, etc.)
      long exit(void)
      {
      	/* PUT YOUR CODE HERE */
      	return 0;
      }
      
      posted in REXYGEN Studio
      S
      Scoobsalamander
    • Initialization of string in REXLANG

      I got this warning in the Compiler Window but everything is working fine :

      "Warning compiling file 'WasteSrcfile.c' (line 30): variable 'stringTemp' is used without initialization"
      

      The initialization was one like this :

      char stringTemp[80];
      

      Something like this, to initialize an empty string will not work :

      char stringTemp[80] = "";
      
      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: SHIFTOCT - persistent parameters

      @cechurat No problem, workarounds are possible and and it's good to have some extra challenges. 🙂

      But if the checkbox for 'persistent parameters' is there then I assume it is an existing feature.

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • SHIFTOCT - persistent parameters

      I am using the SHIFTOCT function block to store every 24hr the counter of my energy meter to get some history of the last 7 days.
      But even with the persistent parameters box checked I lose all data after rebooting and/or downloading a new configuration.

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: AVG - Moving average - number of samples?

      @cechurat ... this would mean that if I add a task in the future the timing might not be correct anymore.
      Would it not be better that this can be configured with timing (e.g. seconds, minutes, days,.....) instead of a certain amount of samples?

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: AVG - Moving average - number of samples?

      @cechurat
      So, thus this mean that with the below settings I need 1800 samples for a 15min running average, correct? (50msx10 --> every 0,5s a sample)

      6b7cc2a0-3907-485d-9b53-94daae05be31-image.png

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: Json string parsing problem

      @cechurat
      No problem, Node-Red is always good for a (temporary) work around.

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • AVG - Moving average - number of samples?

      I want to know the 15min running average of a signal which is updated every second.
      Do I enter '900' for the parameter 'n' in the AVG FB or is this related to the tick parameter set in FB EXEC?

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • Json string parsing problem

      I have problems with parsing a string with the FB PJSOCT , somehow it is not detecting the values like "0-0:96.1.4" :

      {
        "0-0:96.1.4": {
          "medium": 0,
          "channel": 0,
          "measurement": 96,
          "measureType": 1,
          "tariffRate": 4,
          "rawValue": "50215",
          "values": [
            {
              "value": 50215,
              "unit": ""
            }
          ]
        },
        "0-0:96.1.1": {
          "medium": 0,
          "channel": 0,
          "measurement": 96,
          "measureType": 1,
          "tariffRate": 1,
          "rawValue": "3153414731313030313530393931",
          "values": [
            {
              "value": "3153414731313030313530393931",
              "unit": ""
            }
          ]
        },
        "0-0:1.0.0": {
          "medium": 0,
          "channel": 0,
          "measurement": 1,
          "measureType": 0,
          "tariffRate": 0,
          "rawValue": "210217192713W",
          "values": [
            {
              "value": "210217192713W",
              "unit": ""
            }
          ]
        },
        "1-0:1.8.1": {
          "medium": 1,
          "channel": 0,
          "measurement": 1,
          "measureType": 8,
          "tariffRate": 1,
          "rawValue": "000987.072*kWh",
          "values": [
            {
              "value": 987.072,
              "unit": "kWh"
            }
          ]
        },
        "1-0:1.8.2": {
          "medium": 1,
          "channel": 0,
          "measurement": 1,
          "measureType": 8,
          "tariffRate": 2,
          "rawValue": "001143.964*kWh",
          "values": [
            {
              "value": 1143.964,
              "unit": "kWh"
            }
          ]
        },
        "1-0:2.8.1": {
          "medium": 1,
          "channel": 0,
          "measurement": 2,
          "measureType": 8,
          "tariffRate": 1,
          "rawValue": "000335.376*kWh",
          "values": [
            {
              "value": 335.376,
              "unit": "kWh"
            }
          ]
        },
        "1-0:2.8.2": {
          "medium": 1,
          "channel": 0,
          "measurement": 2,
          "measureType": 8,
          "tariffRate": 2,
          "rawValue": "000139.145*kWh",
          "values": [
            {
              "value": 139.145,
              "unit": "kWh"
            }
          ]
        },
        "0-0:96.14.0": {
          "medium": 0,
          "channel": 0,
          "measurement": 96,
          "measureType": 14,
          "tariffRate": 0,
          "rawValue": "0001",
          "values": [
            {
              "value": "0001",
              "unit": ""
            }
          ]
        },
        "1-0:1.7.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 1,
          "measureType": 7,
          "tariffRate": 0,
          "rawValue": "00.665*kW",
          "values": [
            {
              "value": 0.665,
              "unit": "kW"
            }
          ]
        },
        "1-0:2.7.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 2,
          "measureType": 7,
          "tariffRate": 0,
          "rawValue": "00.000*kW",
          "values": [
            {
              "value": 0,
              "unit": "kW"
            }
          ]
        },
        "1-0:21.7.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 21,
          "measureType": 7,
          "tariffRate": 0,
          "rawValue": "00.665*kW",
          "values": [
            {
              "value": 0.665,
              "unit": "kW"
            }
          ]
        },
        "1-0:22.7.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 22,
          "measureType": 7,
          "tariffRate": 0,
          "rawValue": "00.000*kW",
          "values": [
            {
              "value": 0,
              "unit": "kW"
            }
          ]
        },
        "1-0:32.7.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 32,
          "measureType": 7,
          "tariffRate": 0,
          "rawValue": "231.6*V",
          "values": [
            {
              "value": 231.6,
              "unit": "V"
            }
          ]
        },
        "1-0:31.7.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 31,
          "measureType": 7,
          "tariffRate": 0,
          "rawValue": "003.50*A",
          "values": [
            {
              "value": 3.5,
              "unit": "A"
            }
          ]
        },
        "0-0:96.3.10": {
          "medium": 0,
          "channel": 0,
          "measurement": 96,
          "measureType": 3,
          "tariffRate": 10,
          "rawValue": "1",
          "values": [
            {
              "value": 1,
              "unit": ""
            }
          ]
        },
        "0-0:17.0.0": {
          "medium": 0,
          "channel": 0,
          "measurement": 17,
          "measureType": 0,
          "tariffRate": 0,
          "rawValue": "999.9*kW",
          "values": [
            {
              "value": 999.9,
              "unit": "kW"
            }
          ]
        },
        "1-0:31.4.0": {
          "medium": 1,
          "channel": 0,
          "measurement": 31,
          "measureType": 4,
          "tariffRate": 0,
          "rawValue": "999*A",
          "values": [
            {
              "value": 999,
              "unit": "A"
            }
          ]
        },
        "0-0:96.13.0": {
          "medium": 0,
          "channel": 0,
          "measurement": 96,
          "measureType": 13,
          "tariffRate": 0,
          "rawValue": "",
          "values": [
            {
              "value": "",
              "unit": ""
            }
          ]
        }
      }
      

      5ff42898-d88b-437a-a926-e2d43f4c4ca9-image.png

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: Licence problem : 'Required platform doesn't exist'.

      @rpisl said in Licence problem : 'Required platform doesn't exist'.:

      Hi,
      you installed 64bit version of Linux and the licensing mechanism can't handle your RPi model correctly yet. It would be very helpful for us if you could send us output from commands "uname -a" and "cat /proc/cpuinfo". Thank you.

      686d83b5-71ad-4076-86a1-02f60ef8a799-image.png

      0ae437e7-74f6-4f16-a323-1fa412f07678-image.png

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: picture as background

      @ondrej_severa Thanks, solution 1 is working fine. With solution 2 I have problems with the permission to write to this location.

      posted in REXYGEN HMI Designer
      S
      Scoobsalamander
    • picture as background

      Where do I store a picture which is used as background?

      If I use an url on the internet of on my local webserver on my NAS-drive it is working fine but I would like to download the picture to the raspberry pi which is running Rexcore. Where and how do I store this image?

      This is what I use in my custom css file...

      body {
      	background-image: url("background.jpg");
      }
      
      posted in REXYGEN HMI Designer
      S
      Scoobsalamander
    • RE: Licence problem : 'Required platform doesn't exist'.

      @cechurat
      This morning I reinstalled a new Rexcore but this time without using Berryboot.
      And now I got my original site ID again and thus I was able to get everything up and running again.
      The previous installation was done with Berryboot to be able to use iSCSI and I planned to keep using it because it makes it easy to swap to a different OS or making backups.

      FYI : this is the site ID from the failing installation :

      ab215051-0cee-4dc0-9638-d0cd4b035e41-image.png

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • Licence problem : 'Required platform doesn't exist'.

      I moved my installation back from an iSCSI on my NAS drive to a normal SD card in my Raspberry Pi.
      Then I tried to reactivate my licenses but without success. Even requesting a DEMO license wasn't working.
      I always got the message 'Required platform doesn't exist'

      d0bd73a0-9d09-48a4-a5fe-10e1484acfef-image.png

      e41020cb-dc77-40e8-8de1-3c309898ddd6-image.png

      What could be the reason for this? Missed something during the new installation?

      posted in REXYGEN Studio
      S
      Scoobsalamander
    • RE: I2C EZO component

      There are a few I2C examples in Rexygen studio.

      posted in Communication (RS232
      S
      Scoobsalamander
    • RE: HTML dropdown menu color animation

      Thank you for this solution, unfortunately I don't have the time to try this out at the moment.
      It will have to wait until the second part of next week. I'm already happy that there is a possibility to make it work.

      Kris

      posted in REXYGEN HMI Designer
      S
      Scoobsalamander
    • RE: TCP socket : parsing NMEA string

      Thanks for the info .... I'll give it a try one of these days. I'll post the solution... at least if I am able to solve it..... 🙂

      posted in REXYGEN Studio
      S
      Scoobsalamander