Personal Data

Username:
tvm
Joined:
2018-11-06 03:41:30
Location:
Canada / EDT
Gender:
Male

Projects

Skills

This is a list of skills that tvm possesses:

  • JavaScript
  • Continuous Function Chart
  • Structured Text
  • Sequencial Function Chart

Personal Tools

User Activity

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    I'm getting this error on one of my projects. Searching for it I came across this https://www.codesys.com/fileadmin/data/Images/System/Releaseinformation/Patch-Note-CODESYS-Visualization-4300.html which says it was a bug VIS-1394, fixed in Visualization 4.3.0.0. I'm using a previous visu version, what is the cause of this error, and what can be done to work around it?

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    It will be a reference, because it's a VAR_IN_OUT. it's a little weird debugging the array online. It just shows as a POINTER TO INT, and you can't actually see the array from the function side. But you can still work with it as a normal array, not a pointer.

  • Modified a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    maybe this would be a better approach, then you don't have to pass the constant at all. FUNCTION fun : INT VAR_IN_OUT arr: ARRAY[*] OF INT; END_VAR VAR lower: DINT; upper: DINT; END_VAR lower:= LOWER_BOUND(arr, 1); upper:= UPPER_BOUND(arr, 1); see here as well https://help.codesys.com/api-content/2/codesys/3.5.12.0/en/_cds_datatype_array/

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    maybe this would be a better approach, then you don't have to pass the constant at all. FUNCTION fun : INT VAR_IN_OUT arr: ARRAY[*] OF INT; END_VAR VAR lower: DINT; upper: DINT; END_VAR lower:= LOWER_BOUND(arr, 1); upper:= UPPER_BOUND(arr, 1); see here as well https://help.codesys.com/api-content/2/codesys/3.5.13.0/en/_cds_vartypes_var_in_out/#constant-input-and-output-variable

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    This works for me in Schneider Machine Expert 2.2, which is based on Codesys 3.5.19. It did not work in Machine Expert 2.1, which was based on Codesys 3.5.16. METHOD PUBLIC Method1 : INT VAR_INPUT TestVar: INT:= 5; END_VAR Method1:= TestVar; PROGRAM SR_Main VAR TestFB: TEST_FB; Var1: INT; END_VAR Var1:= TestFB.Method1();

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    you might have some slight inaccuracies with using a REAL. See here for an explanation: https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019ZSMSA2&l=en-US It might not matter, depends on how accurate you need it. I usually stick with integer types for something like this

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    It's probably because you have an INT in the input to the MUL function, which will then try to output an INT as well. INT variables can only handle values of -32768 to 32767. Your value of 523000 won't fit in an INT, so it turns into an invalid number. Use a DINT. This is usually better for working with time values anyway, because time values are all 32 bit. Or if you can't, use INT_TO_DINT(gvlp.detectie_nalooptijd_s) in the input to the MUL function.

  • Posted a comment on discussion Engineering πŸ‡¬πŸ‡§ on CODESYS Forge

    Anyone else using the SEND_RECV_MSG function block for RS-485 communication on Schneider Machine Expert? I have had ongoing issues with it for several years, which Schneider tech support is aware of, but hasn't been able to fix. The latest version of Machine Expert (v2.2) appears to have broken some of the functionality altogether. I'd be interested in hearing from anyone else using this platform for serial communication.

View All