News:

  • May 05, 2026, 10:43:57 PM

Login with username, password and session length

Author Topic: Parameterized network master instructions  (Read 133602 times)

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Parameterized network master instructions
« Reply #15 on: June 26, 2013, 06:08:44 PM »
It is one thing to add a compiler to a PC...we have one of those called Do-more Designer. ;) It is a far, far different thing to add such to the PLC itself.

Like CReese, I haven't the least clue about building PLC firmware, but since we no longer have macros (I-Boxes), aren't the monics essentially the equivalent of assembly code for the processor?  Or do individual instructions still translate to many native CPU ops?

IOW, I believe you, but I don't have a complete grasp of the issues involved.  Expound please, if you think it would help.
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Parameterized network master instructions
« Reply #16 on: June 26, 2013, 06:28:05 PM »
@CReese

My issue is simply tone, sir. I get that you are frustrated, that was clear from your first posting. I have already said we are adding variable support (MRX/MWX only...there are issues with DLRX/DLWX) and it will be in the imminent 1.1 release, which will likely be released next week. I don't know what else I can do to make it right.

@Controls Guy

Not really, no. Boxes like MRX are high level function blocks written in C++. The 'code' that DmD writes is just an opcode and 11 parameters that the associated function block reads and interprets. The function block has no provision for a variable target address.

One major reason we eliminated variables for target addresses is because as part of compiling for the controller, DmD does some pre-processing of the address. For Modbus, that is simply to subtract 1 from the register to convert from user address to the actual on-the-wire value. Very minor. For DLRX/DLWX we translate all of the possible data types to the appropriate CCM code...removing that translation from the controller made it more efficient, but eliminated the possibility of variables. It is simple for Modbus so we are adding it.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO

franji1

  • Bit Weenie
  • Host Moderator
  • Hero Member
  • *****
  • Posts: 3806
    • Host Engineering
Parameterized network master instructions
« Reply #17 on: June 26, 2013, 06:48:15 PM »
I haven't the least clue about building PLC firmware, but since we no longer have macros (I-Boxes), aren't the monics essentially the equivalent of assembly code for the processor?  Or do individual instructions still translate to many native CPU ops?

IOW, I believe you, but I don't have a complete grasp of the issues involved.  Expound please, if you think it would help.
Except for the Numbered NOP, DirectSOFT5 IBoxes are ALL LIPSTICK (inside joke).

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Parameterized network master instructions
« Reply #18 on: June 26, 2013, 07:04:14 PM »
LOLZ, mauve or puce?
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Parameterized network master instructions
« Reply #19 on: June 26, 2013, 07:06:50 PM »
Not really, no. Boxes like MRX are high level function blocks written in C++.

Yeah, that makes sense.  Should have been obvious, actually, that you couldn't get a single CPU op to do an entire Modbus read.
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

franji1

  • Bit Weenie
  • Host Moderator
  • Hero Member
  • *****
  • Posts: 3806
    • Host Engineering
Parameterized network master instructions
« Reply #20 on: June 26, 2013, 07:07:40 PM »

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Parameterized network master instructions
« Reply #21 on: June 26, 2013, 07:10:20 PM »
The stuff it encapsulated was such a boar, so....yeah!
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

franji1

  • Bit Weenie
  • Host Moderator
  • Hero Member
  • *****
  • Posts: 3806
    • Host Engineering
Parameterized network master instructions
« Reply #22 on: June 26, 2013, 07:12:06 PM »
The stuff it encapsulated was such a boar, so....yeah!
LOL2

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Parameterized network master instructions
« Reply #23 on: June 26, 2013, 07:13:36 PM »
I'll be here all week!  Be sure to try the veal!  [rimshot]
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: Parameterized network master instructions
« Reply #24 on: June 26, 2013, 09:04:55 PM »
Ok...done and lightly tested, and it works great. Currently allows for any valid integer variable or array reference in MRX and MWX boxes. As was previously mentioned, DmD does some protocol translation for DLRX and DLWX, so we aren't doing them at this point. Given that most of our stuff speaks Modbus as well as DL, that shouldn't be too limiting.

Prior to this change, we were likely going to release 1.1 within a few days, but I think we need to do another release candidate and kick the tires a bit more. Barring critical problems in general, it will likely be late next week for final release.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Re: Parameterized network master instructions
« Reply #25 on: June 26, 2013, 09:22:12 PM »
Very cool.  What is the new feature/bug fix list for v1.1?
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: Parameterized network master instructions
« Reply #26 on: June 26, 2013, 09:23:48 PM »
There's a bunch. I'll email you.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: Parameterized network master instructions
« Reply #27 on: June 26, 2013, 09:47:26 PM »
...forgot this in previous post. In addition to variables, it also works with decimal symbolic constants.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO

Controls Guy

  • Internal Dev
  • Hero Member
  • ****
  • Posts: 3607
  • Darth Ladder
Re: Parameterized network master instructions
« Reply #28 on: June 26, 2013, 10:34:03 PM »
Wait, what?  I can has symbolic constants?  Why was I not informed??

UPDATE:  Went and looked and there it is!  VERY VERY important feature.  This should be in Doug Bell's training if it's not there already (I haven't got all the way through that yet either)

I think I'd like to see a tabbed interface for the doc editor and have the constants on their own tab.

Plus, allow me to right click on symbolic constants and Add New, like a lot of other list headings.

(Not suggesting new features for v1.1, just to put on the list)
« Last Edit: June 26, 2013, 10:58:24 PM by Controls Guy »
I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: Parameterized network master instructions
« Reply #29 on: June 26, 2013, 10:58:22 PM »
It was added late and on the cheap. UI is expensive and time consuming, so we added it the way you see. But yes, you can has symbolic constants...and cheeseburgerz if you so desire.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO