Jump to content

Flex727

MVP 2023
  • Posts

    3,275
  • Joined

  • Last visited

  • Days Won

    239

Posts posted by Flex727

  1. You can use the "Store Timer/Counter Preset" function to vary the running time in any way you wish. Create the logic you need to make the timer run how you want with an ML operand. Be sure the ML is in units of 10ms (e.g. an ML value of 500 would be 5 seconds). The Store Timer/Counter Preset will allow you to assign the timer preset to the value of the ML.

     

    You'll need to have some understanding of how quickly your analog input is varying and how stable it is to properly filter that input. You might be able to simplify your logic a bit by using TE (Extended Pulse) timers. Look up Timers in the Help file for a complete explanation of how all 3 available timer functions work.

  2. -Will the error messages go away when I actually connect to the unit?

    -Did I correctly use the "MB" bits with the pushbutton on the screen?

    -Do I need to do any sort of configuration for my Samba unit?

     

    1) What error messages are you seeing?

     

    2) Yes, that will work fine, but I would use the Positive Transition contact instead of the direct contact for the pushbutton MBs.

     

    3) Just set up the Hardware Configuration to match your PLC and you're good to go.

  3. When MB20 turns off, you stop calling "StandardRoutine". When you stop calling Standard Routine, you stop calling "Gen1" routine. When you stop calling Gen1 routine, the PLC cannot turn off MB17, thus it stays on.

     

    Even if MB20 stays on, when the time expires in StandardRoutine, ladder rung 1, then Gen1 subroutine is no longer being called and MB17 cannot be turned off.

     

    Conditional subroutine calls can be very problematic. Design your logic to minimize (or eliminate) the need for conditional subroutine calls.

  4. I am pretty sure it does, because when you give someone the opportunity to reload the source code than the "main code" should be burned in memory as well.

     

    However, if you want to make sure, the put the burn option in your ladder code. You simply have to set SB 372 and the current code will be burned into flash memory. I used to set SB 372 in my codes when the user did certain changes in a configuration menu, especially when changing timer presets. Why? When you use the burn option in VisiLogic than "your" preset-value will be stored in memory. But I found out that if you set SB 372 manually in your code then code will be burned to flash memory with the current timer-preset values at least on Samba PLCs), So, the changes to timer-presets are part of the backup then.

     

    SB 372? This is new information to me.

     

    Ah, found it in the latest version of VisiLogic (9.8.22), but there is no entry in the Help file. Can someone from Unitronics provide a detailed description of the function of this System Bit and address Bisku's point about timer values?

  5. I just had a customer problem caused by this bug so I want to give this thread a bump. It was an older program that was written before I realized I had to take action in the software to prevent the problem. If this bug can't be fixed easily in the firmware (or VisiLogic software), I strongly recommend that it at least be mentioned in the Help files.

  6. When I wan't to try something else, i rather disconnect it then delete the whole thing so I can reconnect it later.

     

    Just right-click on the left side of the ladder rung and select "Disable".

     

    When you're troubleshooting you need to isolate the problem as best as you can. Do NOT assume that there is something wrong with SB13. It will reliably pulse once per second. It cannot fail to do exactly that. Add a new ladder rung to the Main Routine to increment an unused MI with SB13 and you will prove that to yourself (I see MI2047 is labeled "test" - maybe you already did that?).

     

    Make sure you don't have any vectors that are overwriting your values also.

  7. SB 13 should only be on for one PLC cycle. However, I notice that you sometimes use a positive transition contact and sometimes use a direct contact for SB 13. I don't think it matters which one you use, but you are limited in the number of positive or negative transitions you can use in your project. I also notice that you sometimes use the increment function and sometimes use the add function to increment. Why the inconsistencies? I also notice that rung 2 of subroutine Trendy-24h is not connected to the left rail.

     

    None of this is the cause of your problem, but I don't have a V280 handy to load your software and troubleshoot. You have 8 instances of SB 13 incrementing integer operands - are all 8 acting abnormally, or just one?

  8. +1 on this. Also, on this topic, it would be very nice if there was an easy way to clear out a whole section of operand descriptions (without using the group function when creating a contact or coil, which can be cumbersome). Even exporting the descriptions to Excel, deleting the unwanted descriptions and importing them back in does not work. I realize that there is a function for deleting all unused operands, but typically I don't want to delete ALL of them, just a particular section.

×
×
  • Create New...

Important Information

This site uses cookies. By clicking I accept, you agree to their use.