Sign in to follow this  
Followers 0
mhowasso

SLC 505 with Flex IO

22 posts in this topic

See below Edited by mhowasso

Share this post


Link to post
Share on other sites
Hi All... How do they bring in an analog signal 0-10v to a flex IO analog module connected to a scanner card without a SCP instruction..??? What would I look for to track this down..?? Ref Attached file Thanks, MC5_16.RSS

Share this post


Link to post
Share on other sites
Got a part number? Some analog modules can be configured with quite a few different methods via configuration block transfers. You can get a 1794-IF4I to report 0 to 10vdc as 0 to 10000, for example. Where in the I/O configuration is the card you are hunting for?

Share this post


Link to post
Share on other sites
Slot 2, Scanner Module I found out the digital, but I dont know how they are scaling the analog 0-10vdc output/input. You mentioned 0-1000. How do I know for sure..??? Edited by mhowasso

Share this post


Link to post
Share on other sites
I would need a part number for the analog card and the exact location of the module in your I/O (not just the slot number). Also, it appears that your program uses the old method of performing block transfers (written for a system before the BTR/BTW instructions were available in the SLC). This makes it a pretty big PITA to decipher. Once you know the rack/group/slot number you can hunt for M0/M1 transfers related to that position. Combining that with the user manual for your particular analog module, you can comment all the configuration bits and see how it is actually set up. Edited by OkiePC

Share this post


Link to post
Share on other sites
Post us your card specifics. That will make this much easier for the forum. The SLC's can get quite confusing, OkiePC is very capapble wiht the PLC5/SLC stuff, seen it with my own two eyes... John Appears that all the Okies are answering you right now.

Share this post


Link to post
Share on other sites
OK...Sorry I took so long.... Flex IO Rack 1 1. 1794-ASB 2. 1794-IE8 3. 1794-OB16 (This one I know is O:2.7/xx) Flex IO Rack 2 1. 1794-ASB 2. 1794-IB16 3. 1794-OB16 4. 1794-OE4 5. 1794-IF8 Thanks,

Share this post


Link to post
Share on other sites
Okay, so we've narrowed it down. Your list includes a 1794-IF8: that is not an exact A-B part number, though 1794-IE8 is a valid number, as is 1794-IF8H. You stated earlier that the Scanner is the 1747-SN module in Slot 2, so that narrows it down to the ladder logic file LAD20 "Analog RIO". I can tell by quickly reviewing the logic that addresses the M0/M1 files for Slot 2 that there are twelve block transfers addressed to Slot 2, and 7 of those are labeled for Analog Input Modules. So now we need to review the data files for those 7 modules, to determine which ones are addressed to these Racks and modules you've listed. Edited by Ken Roach

Share this post


Link to post
Share on other sites
Just to make sure we're speaking the same language with regard to "Racks" and "Slots", let's review a bit. "Rack Number" means something very specific in Allen-Bradley Universal Remote I/O Protocol. You might think of a 1794-ASB adapter as being "Rack 1" because it's at the top of the enclosure, but strictly speaking every Adapter has an address consisting of a Rack Number and a Starting Group. With FLEX I/O, the Adapter itself doesn't have a Slot Number. The actual 1794-series modules are numbered as Slots 0 to 7. Since you say that the 1794-OB16 in "Rack 1" is using address O:2.7/xx, this tells me that this specific adapter represents Rack 00, Starting Group 6. The size tells me it's a "1/4 Rack", meaning it is addressed as Rack 00, Slot 6 and Slot 7. And sure enough, LAD20 Rung 7 is addressed to perform a block transfer to Rack 0, Group 6, which it the program labels "RIO Module 7 GDU HVOF Input Module"

Share this post


Link to post
Share on other sites
We'll get to your actual question eventually. There's a lot to slog through first. I've had to slog through it to get to the bottom of your question, so I'm going to make you read through it too. Below is a summary of the Block Transfers that are addressed to the 1747-SN in Slot 2. I see two unusual things about this block transfer logic. The first is that Rung 03 sends a block transfer to two different logic-selectable locations: Rack 1 Group 0, or Rack 2 Group 6. Maybe this is a machine with different options that they switch between; I don't know how it works. But it's not common to write logic to change the target of a block transfer instruction. The second is that both Rung 4 and Rung 6 utilize the same Block Transfer Buffer 400. Generally you only use one Block Transfer buffer for one "BTR" or "BTW" function. I realize there is a determining 'EQU' instruction to determine the "power supply type" but it's still an unusual way to program block transfers. LAD 20 Rung 01 RIO Module 1: GMC Analog Output Module M0:2.101 = 0 M0:2.102 = 020 Rack 0, Group 2, Slot 0 LAD 20 Rung 02 RIO Module 2: GMC EP Analog Input Module M0:2.201 = 4 M0:2.202 = 030 Rack 0, Group 3, Slot 0 LAD 20 Rung 03 RIO Module 3: Jambox Analog Input Module M0:2.301 = 0 M0:2.302 = 100 or 260 Rack 1, Group 0, Slot 0 Rack 2, Group 6, Slot 0 LAD 20 Rung 04 RIO Module4: Power Supply Analog Input Module M0:2:401 = 1 M0:2.402 = 220 Rack 2, Group 2, Slot 0 LAD 20 Rung 05 RIO Module 5: Power Supply Analog Input Module M0:2.501 = 0 M0:2.502 = 230 Rack 2, Group 3, Slot 0 LAD 20 Rung 06 RIO Module 4: Power Supply Combi Module (PT-520) M0:2.401 = 0 M0:2.402 = 210 Rack 2, Group 1, Slot 0 LAD 20 Rung 07 RIO module 6: GDU HVOF Analog Input Module M0:2.601 = 0 M0:2.602 = 060 Rack 0, Group 6, Slot 0 LAD20 Rung 08 RIO Module 7: GMC HVOF Analog Output Module M0:2.701 = 0 M0:2.702 = 140 Rack 1, Group 4, Slot 0 LAD20 Rung 09 RIO Module 8: GMC HVOF Analog Input Module M0:2.801 = 4 M0:2.802 = 150 Rack 1, Group 5, Slot 0 LAD20 Rung 10 RIO Module 9: GMC HVOF Combi Module M0:2.901 = 0 M0:2.902 = 160 Rack 1, Group 6, Slot 0 LAD20 Rung 11 RIO Module 10: GMC Combi Module M0:2.1001 = 0 M0:2.1002 = 040 Rack 0, Group 4, Slot 0 LAD20 Rung 12 RIO module 11: Zusatzliches Analog Input Module M0:2.1101 = 0 M0:2:1102 = 240 Rack 2, Group 4, Slot 0

Share this post


Link to post
Share on other sites
I can't easily figure out this block transfer logic. It looks like they might be using the same Buffer number to perform both a configuration BTW and an input data reading BTR. While this can be done, it is generally regarded as a bad programming practice, precisely because it is so difficult to troubleshoot. If they're sending a configuration BTW, then the value is 255, which sets the first 8 bits of the Configuration word =1. This bit pattern is described on page 4-5 of the 1794-UM002 User Manual and means the module is measuring 0-10V or 0-20 mA. The analog data format is shown in Appendix C of that same user manual. It shows that 0 to 10 V results in an Input data word between 0x0000 and 0x79E8. In decimal, this is between 0 and 31208. From what I can tell in your program, they've chosen to use raw FLEX module "counts" everywhere. I don't see the expected conversion from Counts to Engineering Units like volts, inches, horsepower, pressure, etc. So that's the really long-winded answer to your question: In this program (at least for this one module I've reviewed), all the logic is done in raw "counts", not in engineering units. Edited by Ken Roach

Share this post


Link to post
Share on other sites
Well done Ken, got tired of watching NCAA B-Ball?

Share this post


Link to post
Share on other sites
Thanks, Ken, I am glad you tackled this one. It would have taken me a lot of time to finger out all of that.

Share this post


Link to post
Share on other sites
Hi All... Thanks Ken for ALL the hard work. This helps out a bunch, but I think those Swede's could of made life for me a lot easier by using better programming. There just seems to me to be an easier way to accomplish this. I still dont see how (and its just my lack of experience with this) how to determine where the actual analog output for the Nitrogen, Hydrogen, Shroud Gas, etc. is located in the program. Thanks Again, Mark Edited by mhowasso

Share this post


Link to post
Share on other sites
If I showed you how, I'd lose my aura of mystery and power ! Think of the M-files as data mailboxes. M1 is for input data and M0 is for output data. Each of the 1747-SN's has 32 of those mailboxes, numbered 100 through 3200. The control and status data is in the first three words of the mailbox. The actual data payload starts at word 10 of the mailbox, and goes for up to 64 words. So what you're looking for is (usually) COP instructions that are addressed at the M0 and M1 files, starting at element 110, 210, 310, 410, etc. Go through the logic in LAD20 and look for COP instructions or MOV instructions that take data from M1:2.x10, and you'll find that it's the Analog Input data from the analog cards that are having Block Transfer Reads executed toward them. Similarly you will find COP or MOV instructions moving data into M0:2.x10 and up, for Block Transfer Writes. The best thing you can do while working through a program like this is place new Descriptions on the data elements and Rung Comments in the logic. You'll be glad you did when you look at the logic again a long time from now.

Share this post


Link to post
Share on other sites
Ohhh Ken... You will never lose that mystery and power....ol master of the universe..!! Thanks, Grasshopper

Share this post


Link to post
Share on other sites
Wow, great teachers here in the forum for those of us in the "How dat work?" world. I, too, shall call him, "sir"! John

Share this post


Link to post
Share on other sites
RIO with the SLC, and especially with FLEX I/O adapters, is a moderately complex process just to get data flowing. It's a common topic here on the Forum because the technology is passing that threshold of about 10+ years where it's still out there running but it's uncommon to use in new systems so most novice and intermediate users don't have recent experience with it. I have to get out the manuals every time. And about those manuals: The 1747-SN User Manual is publication 1747-UM013B, released January 2005. It is focused on the BTR and BTW instructions that were added in the Series C operating system of the SLC controllers. It mentions the old-style M0 and M1 logic but doesn't provide examples, and it's hard to get your hands on the preceding 'rev A' document from 1996. The best Knowledgebase document for the old style M0/M1 block transfers is AID# 49601 (TechConnect required). It includes excerpts from the original 1996 document that describe the format of the control and status words for this method. Without this Knowledgebase document I would have been sunk. Additional good Knowledgebase documents include AID #31770 (TechConnect required) which is a good general overview of the firmware revisions, indicator lights, and general layout of G-file and M-file functions. One thing that tripped me up is that the 1747-UM013B user manual does have a layout of the Command and Status block used by the BTR and BTW instructions, on page 5-7. The layout of the 3-word Command and Status blocks for the BTR and BTW instructions is NOT the same as the layout of the 3-word Command and Status blocks for the M0 and M1 logic in the old SLC operating system. You can still use the old style logic with a modern SLC. But you have to choose: use M0/M1 file logic and the old command and status block format, or use BTR and BTW instructions which will use the new command and status file format.

Share this post


Link to post
Share on other sites
Hi Ken, Well, I guess Im at the point I have to ask..... Is it possible that someone could rewrite this program to make it easier for us more common folk to use and troubleshoot..??? Why couldnt a person just use SCP instructions for all the analog IO and use Floating Points and or Integer values..??? I read the tech notes you mentioned and there was even a few more suggested as well. I must admit I dont feel any better about this now than before tho. Im kind of a KISS kind of person and this kind of stuff can make you feel really, well, you get my meaning. Thanks, Mark Edited by mhowasso

Share this post


Link to post
Share on other sites
Is one of a our admins willing to make this a sticky??? I had a lunch and learn wiht my local AB sales people yesterday and they told us that the SLC 1747-ASB's module were going to silver status next quarter. This can pose a huge problem in my industry as we use a truck load of them in conjunction with SN cards. (And PLC5 racks going silver, too) They were basically try to help us migrate to the 1747-AENT. Fine and dandy except the Compact's would only handle a rack and half of the I/O we need. Ugh... An overview: HERE I have asked the supplier for his PowerPoint too.

Share this post


Link to post
Share on other sites
John, you should start a new thread for this concern, and I think it might get enough attention to become "sticky" by default. I have not heard about the ASB going away, and it doesn't show up here yet, but that is a big big deal if it's true. Wow, there it is...we have until 1/11/2013. http://www.ab.com/si...1747allslc.html Is there a user manual for the 1747-AENTR yet? EDIT: Yes, here. Can you use it with a Logix L6x or L7x to handle your I/O requirements? Edited by OkiePC

Share this post


Link to post
Share on other sites
I was asking for the admins to make this thread a sticky/how-that-work sticky. I get myself confused with them too, even using them everywhere I go. Yes, I think we can us it to provide the needed I/O over the ethernet. This too poses some challenges for the tme, money and effort... Should make us have piles fo SLC 5/xx processors laying about for a while too. They are also supposed to be forcing us towards the L7 processors with the version 20 softwares. BUT the L7x's are actually cheaper than an L63 I priced for a project too. I wills start a new thread with this copy and pasted right now. I too think this is important to get the word out so the world can stop projects before they get fully committed.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0