Announcement

Collapse
No announcement yet.

Alarm screen for EA3-T6CL

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts


  • Alarm screen for EA3-T6CL

    I purchased this panel to use in my model train project. It is working well. It is interfaced to an Allen-Bradley Micrologix 1000 using serial communication.

    I have found designing screens for it to be easy, attached is a screen shot of the alarm screen. I am using B3:20 for alarm codes, each bit represents a specific alarm code. I designed this screen to display the alarm codes. Each text would be shown if the bit value it is assigned to it is set. I am wondering if there is a better way to do an alarm screen ?

    Setting the panel to flash the LED for an alarm and flash on the top of the screen works well, all it has to do is see that B3:20 is not zero and then it knows there is an alarm code.

    Mike
    Attached Files


  • #2
    Is it possible to use the lookup text function to accomplish making an alarm screen so when any bit in b3:20 becomes true it would display the appropriate alarm message?

    Comment



    • #3
      Yes, almost. The Lookup Text object uses a numeric for index. You could use a B3:xx/yy bit as a visibility flag/screen change trigger.
      B3:20 (as a word value) or N7:nn could index into the message database.
      But understand that the message database is global to your project.


      Comment



      • #4
        Could you share some pictures of the layout?

        Sorry for the off-topic post, but this is the coolest project I've seen in a while!

        Comment



        • #5
          Originally posted by TheGreatMarklar View Post
          Could you share some pictures of the layout?

          Sorry for the off-topic post, but this is the coolest project I've seen in a while!
          I have been publishing my work on my website. Right now I am using a Micrologix 1000 as the PLC but it has no analog input or output so it is impossible for any type of speed control or sensing. The parts I used to build the controls came from old CD/DVD molding machines that were being scrapped and I was allowed to take parts off them as I wanted. So the choice of the hardware was really what I could get my hands on

          I do have in my collection several Proface HMI panels but I had absolutely no luck getting them to work and to buy the software to program them is too expensive for a home project. I therefore went and purchased the C-more panel and I find the software was not only free, but easy to use and I have successfully made some screens for my layout. I just wish I could find a better way to do the alarm screen.

          I came up with this idea of the model train layout because I have been learning to program with a trainer unit with the switches and lights but it doesn't provide a real world example. In machines, there are unexpected things that can happen, such as a sluggish cylinder, a sensor that flickers, etc..

          Recently at my job, I was asked to design a project to prevent embossing heater fires. This project has 3 photoelectric sensors beamed across the bottom embossing heater so if the plastic sheet bows down towards the heaters, it will sense it. There will also be an encoder wheel on the top that senses if the sheet is moving and will act if the motion stops. If either the photosensors get blocked, or the encoder wheel stops, a relay will open to cut off the control power to the heaters and an air valve will be activated to blow air onto the heaters to quickly cool them down. For this project I chose a Click PLC, again the software was pretty easy to figure out, the lack of simulation was the big hurdle, so I first wrote the program in RSLogix and simulated it, then translated it for the Click PLC.

          Down the road I plan to replace the Micrologix with something else because I do want to add analog input and output, with the plan to not only sense the speed of the trains, but to be able to control the throttle, this will require hacking into the transformer, but that should not be a problem.

          Link to my pictures and videos:

          https://www.nepaview.com/model-train-plc-project.html

          Mike

          Comment



          • #6
            Originally posted by kewakl View Post
            Yes, almost. The Lookup Text object uses a numeric for index. You could use a B3:xx/yy bit as a visibility flag/screen change trigger.
            B3:20 (as a word value) or N7:nn could index into the message database.
            But understand that the message database is global to your project.

            I am going to have to play with the lookup text option. Perhaps using the bit data of B3:20 may not be the best solution for the HMI, other then the HMI will flash the F6 button and display a flash bar on top if B3:20 is not zero, which indicates an alarm condition. I probably can add a routine to translate the bit values to an integer for a lookup table.

            Mike

            Comment



            • #7
              Originally posted by mikeexplorer View Post

              I am going to have to play with the lookup text option. Perhaps using the bit data of B3:20 may not be the best solution for the HMI, other then the HMI will flash the F6 button and display a flash bar on top if B3:20 is not zero, which indicates an alarm condition. I probably can add a routine to translate the bit values to an integer for a lookup table.

              Mike
              Sounds like a plan. Nice info/pics/vids.
              I don't remember all that I ever knew about RSL500, but something like.
              I forget the semantics of COP vs MOV and ONS vs OSR, but you should get the idea.

              Code:
              .
              .      B3:20/00     B3:21/00
              .--------] [----------[osr]-----------------+ MOV 
              .                                           |     0
              .                                           |     N7:20
              .                                           +------------
              .
              .      B3:20/01     B3:21/01
              .--------] [----------[osr]-----------------+ MOV 
              .                                           |     1
              .                                           |     N7:20
              .                                           +------------
              .
              Only change the numeric on the CHANGE of error bit. That way any ACK of an error NUMERIC can still be indicated by bit. (for reset annunciation maybe.....)

              Comment



              • #8
                Originally posted by kewakl View Post

                Sounds like a plan. Nice info/pics/vids.
                I don't remember all that I ever knew about RSL500, but something like.
                I forget the semantics of COP vs MOV and ONS vs OSR, but you should get the idea.

                Code:
                .
                . B3:20/00 B3:21/00
                .--------] [----------[osr]-----------------+ MOV
                . | 0
                . | N7:20
                . +------------
                .
                . B3:20/01 B3:21/01
                .--------] [----------[osr]-----------------+ MOV
                . | 1
                . | N7:20
                . +------------
                .
                Only change the numeric on the CHANGE of error bit. That way any ACK of an error NUMERIC can still be indicated by bit. (for reset annunciation maybe.....)

                Yes that would give me a numeric number instead of a bit value for the alarm code. Since each bit represents a code, I would need a total of 16 text lines. The C-More panel only needs to monitor B3:20 and if it is non-zero, it knows an alarm is active, and it flashes "F6" and flashes on top of the screen that an alarm is active. (F6 is the alarm screen.)

                From what I am programming so far, it is unlikely to have more then one alarm code active at a time, any alarm condition would stop the program and shut down the layout (drop power to all tracks)

                Mike

                Comment

                Working...
                X