adccommunitymod (AutomationDirect) asked a question.

Why Do-more?

Created Date: February 12,2013

Created By: BobO

**** This post has been imported from our legacy forum. Information in this post may be outdated and links contained in the post may no longer work.****

Recently a poster asked this question...and after some reflection on it...I 've decided it is a really good question. I would speculate that if you were to ask 10 different folks what Do-more is, you'd get 10 different answers. It stands to reason that if there isn't a clear answer to the 'what ', it would be even harder to answer the 'why '. I think this is probably complicated by the fact that in addition to DirectSoft and DL, ADC has added CLICK and P3K...and after all of that...added Do-more too. Yeah, I'd say 'Why Do-more? ' is a very good question. So what is Do-more? DirectLogic has been the backbone of ADC's PLC sales for it's entire history. It is robust, well-tested, has a lot of strengths, and there is a bunch of it installed in machines worldwide. Like all technology, improvements in component integration, compilers, capacities, speeds, etc, have created opportunities for improvement in PLC hardware. CLICK and P3K were developed to target specific areas of the market, and they do so very well, tailoring their respective development environments to their market needs. We also wanted to provide similar improvements to DirectLogic. But how? The Do-more project vision statement was: "Respect the legacy, while embracing the future ". That was, and remains, our primary focus. We constantly ask how we can build on the success of DirectLogic products, while adding the features and flexibility to meet the demands of the market 5, 10, and even 20 years from now. In short, Do-more is simply DirectSoft and DirectLogic evolved. To remain completely compatible with DirectLogic would have forced us to make compromises that would have limited future growth, so we chose to do a clean sheet design for the controller itself. Since DirectSoft is known to so many people, we used it as the starting point for Do-more Designer. The end result is a very capable, high performance controller that builds on the strengths DirectLogic and DirectSoft, but provides a better path forward. *Key point* If you are familiar with DirectSoft, you already know 80% of what it takes to be productive in Do-more Designer. Here are a few other things that will help you get started: * All math is done within the MATH instruction. * There is no LD instruction...don't need it. If you are doing math, use MATH. If you are moving a value, use MOVE. * Analog is automatically mapped to WX and WY memories. They are 16 bit signed integers. There is no demux-ing or pointer method setup required. * All Do-more memory is strongly typed. That means that the controller knows what each variable is, and handles it appropriately. It isn't necessary to choose an instruction appropriate to the variable type. If you assign an integer value to a real, the controller will convert on the fly. Just use it. * Certain instructions, like Timers and Counters, use structures to store the accumulated value and various flags, rather than using generic V memory. Structures aren't hard, think of them as bags of data items, where the bag has a name and each item in the bag has a name. For example: the first timer structure is T0 (the bag), and it contains the fields .Acc, .Done, .Reset, .Timing, and .Zero. If you want to reference the accumulator of T0 in code, you just enter T0.Acc. * The System Configuration is where the controller is configured. In there you can set up the CPU, the I/O, where the I/O is mapped, and change the memory configuration. There is a bunch more there, but to get started it usually isn't necessary that you change anything in the system configuration. As you become more familiar with Do-more, there are many other features that you can explore. Much of this is optional, but learning to use these features greatly extends the power of the controller. * Use Program and Tasks blocks to modular-ize your program and simplify complex applications. In addition to user Programs and Tasks, the system provides pre-defined tasks like $tFirstScan, $tLastScan, $tTopOfScan, $tBottomOfScan, $t1Second, and others. * Stage programming is a very powerful feature that is a great choice for implementing sequences. Do-more's Program blocks are where Stage is implemented. Each program block can optionally contain a sequence of up to 128 Stages. * A 'device ' is a Do-more feature that simplifies access to a high level system resource like a comm port or a module function. Some devices are associated with modules, some are associated with CPU resources, and some are user created. Devices are used with high level instructions, and greatly reduce the complexity of doing more complicated things like communications or motion. * Powerful communications tools for sharing data (PEERLINK), doing DirectLogic comms (DLRX, DLWX), doing Modbus comms (MRX, MWX), building custom protocols (too many to list), managing time (TimeSync and NETTIME), or sending email (EMAIL). * Full support CTRIO and CTRIO2 modules, including configuration and a native instruction set for virtually every module function. * Much, much more. So, why Do-more? Simple. We wanted to build upon the strength of DirectLogic and DirectSoft, and at the same time, provide a technology path forward. If you already know how to program a DL06, Do-more will be a breeze. Download Designer and play with Do-more using the included Simulator. You'll be productive almost immediately, and in time you can begin to add more of Do-more's features.


  • adccommunitymod (AutomationDirect)

    Created Date: February 13,2013

    Created by: GKiser

    I would also like to add that if you do serial communications, Do-more is the CPU you need. Not only does it have a serial port on-board, but it also supports the H2-SERIO & the new H2-SERIO-4 module, thus you can add more serial ports easily.

  • adccommunitymod (AutomationDirect)

    Created Date: February 13,2013

    Created by: kasky

    Just with the quick look I 've taken it's easy to see this was developed with the idea of fulfilling a bunch of items on the wish list that was just not possible under the legacy hardware / software.

    Like the ability to just do away with BCD and all the tedious questions that go along with it and do decimal point math that almost everyone understands. And how about that simulator that has been the topic of multiple threads over the years... I'm sure the list goes on.

    At some point I may have a application for a a larger system and dig into it a lot more. But like I said the little I have looked at it the 'do-More ' (kind of a corny name) looks like it's a programmers problem solver and proves that all this time someone has been listening!

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: February 14,2013

    Created by: scott.lawrence

    I believe the "Do-More " name was to go along with the C-More...

  • adccommunitymod (AutomationDirect)

    Created Date: May 30,2019

    Created by: TheGreatMarklar

    Just stumbled on this. If it is not already, the OP should be posted on the main Do-more product page. This would have made it WAY easier to pitch to my manager. Nice explanation!

  • adccommunitymod (AutomationDirect)

    Created Date: May 30,2019

    Created by: BobO

    Just stumbled on this. If it is not already, the OP should be posted on the main Do-more product page. This would have made it WAY easier to pitch to my manager. Nice explanation!

    I completely forgot I wrote this. Another description I liked to use at the time was that we wanted Do-more to be "a brand new pair of comfortable old shoes ".

    The market needs have continued to change since I wrote that, but the design philosophy stands. We still take the attitude that improvements shouldn't force you to scrap everything you already know, but it's important that you move forward even when certain parts of your user base would prefer that you not. We still spend a lot of time asking how we continue to expand and modernize, while recognizing that most users want to stick with what they know and what works. It's a balance, and it's made far more challenging by the fact that different generations of PLC users view the problem very differently, but still, it's still about embracing the future while respecting the legacy. The more things change, the more you see that they don't.

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: June 04,2019

    Created by: ControlsGuy

    I was intending to write that some of the most basic, yet meaningful, changes between DL and DM are losing BCD and octal addressing (and keeping the accumulator inside the kimono to a greater extent), but then that religious guy beat me to that topic on the other thread.

  • adccommunitymod (AutomationDirect)

    Created Date: February 12,2013

    Created by: BobO

    Recently a poster asked this question...and after some reflection on it...I 've decided it is a really good question. I would speculate that if you were to ask 10 different folks what Do-more is, you'd get 10 different answers. It stands to reason that if there isn't a clear answer to the 'what ', it would be even harder to answer the 'why '. I think this is probably complicated by the fact that in addition to DirectSoft and DL, ADC has added CLICK and P3K...and after all of that...added Do-more too. Yeah, I'd say 'Why Do-more? ' is a very good question.

    So what is Do-more? DirectLogic has been the backbone of ADC's PLC sales for it's entire history. It is robust, well-tested, has a lot of strengths, and there is a bunch of it installed in machines worldwide. Like all technology, improvements in component integration, compilers, capacities, speeds, etc, have created opportunities for improvement in PLC hardware. CLICK and P3K were developed to target specific areas of the market, and they do so very well, tailoring their respective development environments to their market needs. We also wanted to provide similar improvements to DirectLogic. But how?

    The Do-more project vision statement was: "Respect the legacy, while embracing the future ". That was, and remains, our primary focus. We constantly ask how we can build on the success of DirectLogic products, while adding the features and flexibility to meet the demands of the market 5, 10, and even 20 years from now. In short, Do-more is simply DirectSoft and DirectLogic evolved. To remain completely compatible with DirectLogic would have forced us to make compromises that would have limited future growth, so we chose to do a clean sheet design for the controller itself. Since DirectSoft is known to so many people, we used it as the starting point for Do-more Designer. The end result is a very capable, high performance controller that builds on the strengths DirectLogic and DirectSoft, but provides a better path forward.

    *Key point* If you are familiar with DirectSoft, you already know 80% of what it takes to be productive in Do-more Designer.

    Here are a few other things that will help you get started:

    * All math is done within the MATH instruction.

    * There is no LD instruction...don't need it. If you are doing math, use MATH. If you are moving a value, use MOVE.

    * Analog is automatically mapped to WX and WY memories. They are 16 bit signed integers. There is no demux-ing or pointer method setup required.

    * All Do-more memory is strongly typed. That means that the controller knows what each variable is, and handles it appropriately. It isn't necessary to choose an instruction appropriate to the variable type. If you assign an integer value to a real, the controller will convert on the fly. Just use it.

    * Certain instructions, like Timers and Counters, use structures to store the accumulated value and various flags, rather than using generic V memory. Structures aren't hard, think of them as bags of data items, where the bag has a name and each item in the bag has a name. For example: the first timer structure is T0 (the bag), and it contains the fields .Acc, .Done, .Reset, .Timing, and .Zero. If you want to reference the accumulator of T0 in code, you just enter T0.Acc.

    * The System Configuration is where the controller is configured. In there you can set up the CPU, the I/O, where the I/O is mapped, and change the memory configuration. There is a bunch more there, but to get started it usually isn't necessary that you change anything in the system configuration.

    As you become more familiar with Do-more, there are many other features that you can explore. Much of this is optional, but learning to use these features greatly extends the power of the controller.

    * Use Program and Tasks blocks to modular-ize your program and simplify complex applications. In addition to user Programs and Tasks, the system provides pre-defined tasks like $tFirstScan, $tLastScan, $tTopOfScan, $tBottomOfScan, $t1Second, and others.

    * Stage programming is a very powerful feature that is a great choice for implementing sequences. Do-more's Program blocks are where Stage is implemented. Each program block can optionally contain a sequence of up to 128 Stages.

    * A 'device ' is a Do-more feature that simplifies access to a high level system resource like a comm port or a module function. Some devices are associated with modules, some are associated with CPU resources, and some are user created. Devices are used with high level instructions, and greatly reduce the complexity of doing more complicated things like communications or motion.

    * Powerful communications tools for sharing data (PEERLINK), doing DirectLogic comms (DLRX, DLWX), doing Modbus comms (MRX, MWX), building custom protocols (too many to list), managing time (TimeSync and NETTIME), or sending email (EMAIL).

    * Full support CTRIO and CTRIO2 modules, including configuration and a native instruction set for virtually every module function.

    * Much, much more.

    So, why Do-more? Simple. We wanted to build upon the strength of DirectLogic and DirectSoft, and at the same time, provide a technology path forward. If you already know how to program a DL06, Do-more will be a breeze. Download Designer and play with Do-more using the included Simulator. You'll be productive almost immediately, and in time you can begin to add more of Do-more's features.

    Expand Post