waterboy

MrPLC Member
  • Content count

    417
  • Joined

  • Last visited

Everything posted by waterboy

  1. with the Logix 5000 platform, Is there a simpler way to detect the last day of the month than using a lookup table with the number of days in each month? That solution will require a change to February every 4 years unless I build that in too. It seems like by now there should be a simpler solution that leverages wallclock. I found an AOI in the KB that even does Sunrise/Sunset, but it doesn't do the last day of the month.
  2. This isn't terribly important, but I'm curious . I capture a series of timestamps to a 50 element single DIM array, then at the start of the next sequence I copy that array to a 20 element deep 2 DIM array (array [x,0] for historical diagnostics, and then clear the original. These are only viewed in the PLC when troubleshooting. This all works fine, but the descriptions are only on the original array. Is it possible to copy the description field to the other 20 "copies"?
  3. I am at the end of ideas. I know I am grabbing at straws here but I dont have enough PLC programming experience to rule it out. So I gotta ask. Using iFix4.0 and 5.0 for HMI, GE OPC and ABR drivers through RSLinx 2.51, 2.54 to PLC5,1 SLC , CompactLogix and ControlLogix PLCs. I have intermittent but frequent connection losses to multiple PLCs around the plant causing the HMI screens to show ??? in place of the data. So far they clear thmeselves up in just a few seconds but this is only getting worse. The OPC driver in every machine will show errors similar to this: AB_ETH-1\0.(10.10.28.17).1.0 : F07_Air_Alarm_Reset : 03/13/09 - 20:01:44 : 00h Items: F07_Air_Alarm_Reset Type: READ Mfg: Allen-Bradley PlcType: Logix5000 Desc: ControlLogix Optimized packet being reinitialized 74bf620, connection 4813329, packet's connection 4813329, packet's read connection 0, packet's state --Creating Optimized Packet - and - Desc: CIP Messaging Error: a message timed out waiting for a response -and- AB_ETH-1\0.(10.10.28.42).1.0 : @IsPresent : 03/13/09 - 21:01:09 : EE00036h Items: @IsPresent Type: READ Mfg: Allen-Bradley PlcType: Logix5000 Desc: Control Net Service cannot be performed while Object is in current state Number of occurrences: 20 Last Error occurred: 03/23/09 - 07:15:18 - and I just love this one - Desc: A Timeout occurred where the engine didn't generate a timeout in the time required. Every single SCADA does this so I can't imagine out how it could be a configuration issue on a SCADA. Even a machine I purposefully havent touched for a year does this. I really thought it was RSlinx but how could this happen on so many machines like this and what could cause it? I examined the HTTP interface to the PLCs and their CPU's are running at about 5%. There are ZERO errors in the Ethernet Statistics. So I spent the entire afternoon with my Packet Sniffer at each PLC in question and at one of the SCADA servers. All I found (and fixed) was a single HDX port mismatch on the switch but that port isn't even in the PLC circuit. I examined the managed switch through which everything flows and it has no errors noted. I am going to borrow one and replace it as a test but I am not hopeful. I can see nothing wrong with the Ethernet layer, I think I saw 2 TCP retransmits, a bunch of immediatly answered keep alives but nothing else. I'm truly stumped. So the question becomes; Since it appears that all traffic that actually gets generated is being properly handled, Is there anything within a CLX program that can make RSLinx or a single or multiple PLC's stop responding like this? Something like a program sending a message to itself that would consume all the CPU resources until it failed, yet have no external traffic? (told ya, straws!) I welcome ALL ideas, I got none left.
  4. Just discovered ControlNet... Had to add a module to a 3 rack cabinet and the racks are connected by controlnet. Slogged through the manual a bit and got to the point where the PLC must be put into Program mode to set the "schedule" and at this time I can't do that. I just wanted to know for sure that this is indeed required. Can someone confirm? I obviously need to get more comfortable with ControlNet, anyone know of a clear tutorial on it ? The Software seemed ok but doesn't help me understand how it works.
  5. Web page size is very limited, but you can cheat a little but using iframes in the code to combine multiple pages into one.
  6. There is a way to wiggle the "mouse" via VBA to wake the screen up on command. Could you use that technique on a timer to keep the screen saver at bay until a time of your choosing?
  7. I am using Logix 5000 on Win 7 and can work with v16.7. Doesn't change my opinion of Factorytalk Activation, but v16 is working for me.
  8. New Forum look !

    I like this new look too, but even better I like the fact that unread posts remain unread till I read or Ack them. Thank you for that.
  9. I use this technique but find that looking for a higher number (value) doesn't work. Counting the bits works as you mention. but I still want to avound the case where 2 bits swap states. I am trying a a mask technique idea that started here and works better. Copy the dint to a mask , use the mask on following scans, if it doesn't match the mask, set the alarm and then copy the dint to the mask again. This detects ANY changes to the dint. Could be made to work on an entire array I suppose The downside is that it detects cleared alarms too.. Still working that part out...
  10. So with the exception of the interrupt scenario the entire 500 rung ladder would not need to be completely scanned before S:13 and 14 are updated, similar to how I/O is evaluated? hypothetically I could use S:13 and 14 in Rung 3 for another calculation. and then repeat all this again in rungs 100 with a completely different set of numbers?
  11. When considering program scan, if I were to do this in rung 1, would the result be available in rung 2 of the same scan ?
  12. This is just link bait to draw traffic to the site which then redirects you to the proper site.
  13. replacement part needed.

    10 pin RJ-45 ??
  14. Canvas Pro Software Activation Key or Crack

    What you are asking for is illegal and this forum has no tolerance for such activity.
  15. What is wrong with the following expression when used in a CMP instruction (logix 5k) (( ValueTag >= Hi_SP ) OR ( ValueTag <= Lo_SP ))
  16. Do the Cisco equivalents ( I assume there are some?) behave better or are these Stratus (Stratii?) worth the premium?
  17. MSG instruction staging

    In MSG's that use radio making queueing a bigger factor, I use a mix of the above. I use a timed on second sequencer and monitor how many MSG remain enabled at once, when it exceeds four, I pause the sequence and start a timer, if the timer goes /dn I reset all the MSG bits and continue on. Ideally I would do this for each MSG separately similar to b-carlton's recommendation (which I am currently constructing). but this technique eliminated a long standing stall of MSG when one or more would get held up because the radio couldn't reach its target.
  18. CMP Expression problem

    Yes it does. but its useless for the intended purpose. The LEQ and GRT combination works fine - this has become educational at this point.
  19. CMP Expression problem

    I agree, the help does infer exactly that. I also agree it doesnt work. Since it highlights only the OR function, I was mislead... it seems. I'll see if Rockwell has a decent explaination why the docs dont spell that out.
  20. CMP Expression problem

    I saw that. But show me where it says that in the help file. I thought you were referring to the doubleoperator.
  21. CMP Expression problem

    The Help file lists <=, >= and <> as valid operators. Reducing the expression to < or > did not correct the error. Seems that adding the OR is the root of this evil. Its treating it like a new tag, When I browse and select the OR function it add is as OR( - with an opening paren. Must not be the OR I expect it to be?
  22. CMP Expression problem

    No, that was just an example tag name for the post. The real tagname is correct, and I corrected it in the post
  23. The Binminder we used worked VERY well... when the settled material is noticeably denser. In the application I used it, the fluid was water and the material level I was detecting was water with dirt and coagulants in it. If there was less coagulant, the material would become "fluffy" with a less defined boundary and it would not work well then. If the salt stayed granular I'll bet it would see it. if it becomes a supersaturated fluid Im not sure it would. I asked Rosemount and was told that guided radar can't tell much difference in materials once submerged. If the material is under water, it wont notice the density change. Food for thought.
  24. The one I have used is a Binminder 9300 (now obsolete) from Entech. We tried thier new model "Echosmart" in an application where solids were fluidized and that didnt work at all compared to when the material was settled. So if the stuff is settled, this should do the job. Bear in mind, the probe is looking for the first change in density so it must be submersed in water at all times. http://www.entechdesign.com/products/echosmart/ I wonder if guided radar would work as well. Haven't tried that.