Nathanb

MrPLC Member
  • Content count

    10
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Nathanb

  • Rank
    Sparky

Profile Information

  • Country United States
  1. So I have a plc program where most of the outputs are based on a counter that goes from 0 to 1000. The counter speed is adjustable and is generally set to run through a full cycle (count from 0 to 1000) anywhere between 0.5 to 2 seconds. The problem is, when I try to energize an output by using an EQU instruction, it will almost always skip the count because the scan time is not fast enough. I've been using a LIM instruction which has been working, but its not quite as accurate as it needs to be. I switched the counter logic to be continuous to try to make it faster which made it almost perfectly accurate... But only in the continuous task; it made the other periodic task significantly less accurate. I was curious if any of you had any tips on how to remedy this or just general help. I am still relatively new to PLCs and ladder logic so any advice would be awesome, Thanks in advance! Edit: The purpose of the counter is to cycle through from 0 to 1000 over and over again. My outputs actuate during a certain interval within this cycle (For example I would say actuate from 300 to 800 and it would stop and end once it hit those values via an EQU or LIM instruction). I wrote the logic as follows: First I calculate how many cycles per minute I want to perform, using that value I calculate how many times I want to increment my counter per millisecond. Then a timer is given a preset of the total cycle time. While that timer is running I continuously multiply the timer's accumulated value by the "cycle count per millisecond" that I calculated earlier; the resulting value is the current count that all my outputs are based on... Hopefully that makes sense, I know it's not the best but I could not figure out a better way of doing it and I know rounding is certainly making the accuracy worse. My hardware is: Allen Bradely PLC (5069 l306erms2), 5069-ob16, 5069-ib16, and a Kinetix 5500s2 Driver for my motor(s)
  2. @BobLfoot 1. The MainTask is Continuous 2. Looking at Task Properties, the "Max" is 0.45 and the "Last" goes between 0.025 and 0.027 (with occasional increases to around 0.08)
  3. Hello! I am new to plcs and I cannot find any good sources on how the "seconds" units works on the MAM instruction. Say I set it to 1 second to move a distance of 1, it should simply move 1 unit in 1 second right? Or if the distance were 2, it would still run for 1 second for an average of 0.5 seconds per "unit". If I am right, does it already take into consideration how long it takes to accelerate? How does it work in acceleration? If I set acceleration to 0.1 would it accelerate to the constant velocity in that amount of time, or is something different? I have tried testing it, but it seems to be off a few milliseconds each time I try (adjusting acceleration does not affect it) thank you in advance. edit: the offset in time is always either 8 or 9 ms
  4. Hello! I have a plc program where I need to start and finish an MAM instruction based on a set amount of time. I am trying to calculate the speed of the motor based on the time but when I do, its always off by some milliseconds which I cannot have. I thought this was due to not considering acceleration time but changing acceleration does not change how long it takes the instruction to complete. Is there a more reliable way to perform this? Currently I have my speed units set to seconds which I thought would work (and did improve it slightly) but there is still a slight offset in time. If there is no reliable way to do this, is there a reliable way to predict what the offset in time may be? or what is even causing the offset? thank you in advance. Edit: Or should using seconds work fine, and its more likely something else in my program?
  5. Yes it takes me to my plc, but there is also another path that leads to my plc via usb. Everything inside is nearly identical. I connect to the plc in studio 5000 with the usb connection rather than the ab_vbp-1. I'm not sure what the difference between these two are or why two exist. I just now tried switching the studio 5000 communications path to the ab_vbp-1 but it did not change anything. I will include another screenshot of this.
  6. Thank you for your response! 1. Yes 2. Yes 3. Yes 4. Not exactly: it runs the emulation but it shows a red "X" on my button and LED and when I hover over it, it says it cannot reach my Controller. Included is a screenshot of this screen. Additionally, the project verifies without any errors or warnings. According to another source, It may possibly just be an issue with my binding tags. I'm currently looking into that possibility.
  7. This is my first post so let me know if there is anything wrong with my post. I am learning Studio 5000 right now for an internship and created a simple project involving a pushbutton and some LEDs. Now I am trying to create an HMI for it in View Designer. My problem now is that I cannot establish a connection to the project because I do not have a physical HMI connected to my plc (Logix 5380). I can't find any way to emulate an HMI module so that I can get it to run. When I emulate my HMI project it tells me "Unable to reach controller TEST" where test is the name of my plc program. I added a module that matched the model in my HMI program (panelview 5510 2715p-t7wd) which I arbitrarily picked at random. But when I go into references and try to add HMI to Controller Path it does not show up (I'm assuming it's because it is faulting in the plc program since it doesn't actually exist). Is there not a way to emulate an HMI or add a virtual HMI to my studio 5000 program that I could connect to from View Designer?