No announcement yet.

Separate Manual/Auto Screens, Control one coil two ways?

  • Filter
  • Time
  • Show
Clear All
new posts

  • Separate Manual/Auto Screens, Control one coil two ways?

    I'm configuring a P1-540 and a C-More EA3 for a CIP skid in a brewery. I've created an "Automatic" screen, and a "Manual" screen.

    I have rungs for manual operation - pretty basic - NOE switches, with Toggle coil outputs (2, both for the indicator and for the various devices). One rung per switch, one subrung on each for the indicator. Works great. As soon as I enable my "automatic mode" rung (there's many subrungs, controlling many various devices based on time, temp, various DI, etc), whichever rung is on the bottom, wins.

    What's best practice for when you want to control an output in a couple different ways (like on a manual and an automatic screen?).

    Thanks in advance

  • #2
    I like to ensure that all of the control is in the PLC. When using pushbuttons on the HMI use momentary for the Object type.
    The above link will show a simple start-stop jog circuit using both physical switches and the C-more micro HMI switches.
    Here is a link to the entire series on the C-More Micro (EA3)

    I hope this helps you out.
    ACC Automation
    Connect with us on Facebook:


    • #3
      Instead of outputting to the physical outputs directly, change both modes to function on internal tags. Then have those internal tags output to the physical IO. Block the lines for the outputs of the automatic mode tags when in manual mode, and block the manual mode tags when in automatic mode.


      • #4
        Update: figured it out. I set the coils as boolean bits, then ran a set of rungs lower that was basically an OR for either manual or auto bit, triggering the actual DO.

        Works like a charm.


        • #5
          Took me a while to write this.. But I see you Got it.. I'll Post it for Reference..

          I've done this a few different ways, my Favorite resorts to 'Bit Logic'.. This was developed in the DL 405 series, then transplanted into 205, now I re-writing it for the BRX..

          The Concept for the 205

          I have 32 Bits that the PLC will solve the Outputs to for the 'Normal program'.. In the 405 it was C0 through 37 if I remember.. In DL 205 it was GY0-GY37.. Either case this is the 'Auto as selected by Program' bits.. these are the Bits that are set by the Ladder Logic, when ‘It’ wants the Feature to turn on.

          I have 32 Bits that are set when the ‘Human’ has that Point in Hand Control. These bits will usually be Set ON by a Touch Screen Command.. If this Bit is Turned On, the ‘Auto’ Function bit from the Line Code will be Ignored, and the Point will turn OFF.. If the Point is Put in HAND, it will revert to OFF in the Logic.

          I then have 32 Bits that are set when the Human has that Hand Point in ON.. Again this is Usually turned on through the Touch Screen.. But will force through the First set of Bits, Turning the Point ON

          The Logic is..

          Grab all 32 Bits of the ‘In Auto’ Bits, Then AND( Double ) with the ‘Auto ON as set by Ladder Code Bits’.. The Result will be the ’Auto AND On’ Set of bits.. Store this 32 bit Register in a 32 Bit Location Call it TEMP1 .. These bits will make it through the Filter out to the Output Image Register.

          Grab the ‘In Auto’ Bits Again.. this time INVERT them. This gives me ‘Not in Auto’ Bits as active Bit Comparison Bits. AND ( Double ) with the Hand Forced On Bits. This will SET the In Hand, and Hand Request On Bits.. this is Important.. as its Possible through Touch Screen logic, to Leave the Hand Requested Position ON, but the Bit is Still in AUTO.. Think About it for a While.. BTDT

          Now The Remaining Bits in the Accumulator are the Hand Requested On Bits.. Now OR( Double ) with the Previously Stored Bits from TEMP1 ( The Auto Requested On Bits ) and the Result will now be a 32 Bit Image of your Mix of Auto and Forced Bits..

          In Practice, My Line Code for the DL 205 Outputs to GY0-GY37.. And my ‘Bit Bashing’ Routine is done just Before the end of the Program where I assign my Hardware Outputs of Y’s or Mod Bus Commands. I Store the Result of my Bit Bashing BACK ON GY0-GY37.. which is accruing BEFORE the Hardware see’s it.. This way, when I’m doing my Coding, my Brain stills see’s GY0 in my Ladder Code, as my Lift Pump in Wastewater 1.. and when I’m Looking at my ‘Output Lines’ for GY0 to Hardware, they go to Y420 driving relay 7 in Control Panel 1.. I do not even have to think about my Off/Hand/Auto Bits as being separate set of Bits.. But the Off/Hand/Auto Routine Runs in ‘Background’.

          I’ve done a lot more with this routine that what I Described, but this was the Starting point..