BrianW Posted June 15, 2007 Report Posted June 15, 2007 I am a newbie to the Mitsubishi world. I have learned what I know so far from just working in the software and reading through the manuals. The project I have been assigned is to make some modifications to a system that was originally programmed, installed, and commissioned by a co-worker. He has since moved into another position so his availability is limited. He also was new to the Mitsubishi world when he first worked on this system so his knowledge of Mitsubishi hardware and programming is limited too. The original system only had one Q68ADI and it was installed in the main base with the processor. I understand the code for configuring and reading values from that module. I have seen where it has been discussed here previously. What I haven't seen here is an example or explanation for doing the same thing with analog modules located in remote racks. I do not have the hardware that we will be using since it is in the existing system. We mostly do Allen Bradley ControlLogix programming so we don't have any Mitsubishi hardware laying around for playing. The install and startup window is small (like 2-3 days) so I don't have foreever to play with it then either. I'd REALLY like to feel good about it going into the startup. My system configuration is as follows: Existing chassis - 12 slots QJ71BR11 in slot 0 - Address range 0000 thru 001F QJ71E71 in slot 1 - Address range 0020 thru 003F Q68ADI in slot 6 - Address range 00C0 thru 00CF Extension chassis - 5 slots Remote chasiss QJ72BR15 in slot 0 - Address range 01C0 thru 01DF Q68ADI in slot 3 - Address range 0220 thru 023F Q68DAI in slot 6 - Address range 0260 thru 027F (Last slot used) My network setup looks like this: Sample code provided by Mitsubishi: My questions: 1.) Do I have the network parameters setup properly for my configuration? 2.) In the sample code above, do I need to change any of the SB or SW addresses in steps 0-39? 3.) Do I really need the ---[PLS M1010] in the lower branch of step 39? What is it's purpose and why would I need it? It seems kind of redundant since, if I understand the code correctly, it just pulses on one scan which in turn pulses M1012 on for one scan which in turn causes the branched logic in step 67 to be pulsed for one scan if the module ready input is ON. The existing code for the Q68ADI module in the main base simply starts by looking at the rising edge of X0C0 (which would be equivalent to X210 above). I somewhat understand that steps 0-39 are checking the remote I/O link status and then enabling or disabling the MC which determines whether or not the code in 49 and 67 gets resolved. Isn't this enough? Why all the extra pulses and is M1011 some kind of user initiated configuration request? 4.) Since D1000 is free, I will probably go ahead and use it for my starting configuration word. I'm only using the first 2 channels so I will be moving a value of K252 (11111100) into that address. The application uses average time processing of 2000ms so the next couple of branches should be moving K2000 into D1001 and D1002. The last branch should be moving K771 into D1009 (1100000011 for average processing/average time on channels 1 and 2 only). Does all of this sound right? 5.) In the REMTO instruction, I understand that Jn is the network, which I believe would be 1 in this case, the same as the example. However, I don't quite see where they are getting n1 and n2. These are described in the manual as channel number (n1) and object number (n2). Where do I find those for my application? I don't see anything like that in the network parameters but perhaps I'm just blind. 6.) I understand n3 for me would be H22, correct? 7.) I understand n4 should be the same, K0, and D1 will be the same, D1000. 8.) I understand n5 should be the same, a length of 10. 9.) On step 158, do I need M1150 or Y219 (Y229 in my case)? The existing code for the Q68ADI already in the system only has the module ready (X220 in this case?) and the AD conversion complete (X22E?) 10.) I think I understand the error checking part and will probably use it in some form to flag an error with the corresponding code on the HMI alarm screen. Is there any other need for this part? Do I really need M1151 in step 198 or can I just have it retrieve the error code automatically any time the error flag is set? Thanks in advance for any help you Mitsubishi gurus can provide. I apologize for the long post but I wanted to try and get as much info packed in as I could. Quote
Gambit Posted June 18, 2007 Report Posted June 18, 2007 (edited) I can't see the JPG attachments, Can you put them in one word document ? Edited June 18, 2007 by Gambit Quote
BrianW Posted June 18, 2007 Author Report Posted June 18, 2007 I'm not sure why you can't see them but I've attached a PDF for those who can't. The sample code was posted in four segmented .jpgs in order to get it to fit in 800x600 sections for posting. My image host was downsizing the image if it was larger than that and it made the logic even more blurry and unreadable. The code is taken directly from the latest MELSEC-H Remote I/O Network Reference Manual (SH_NA_080124-K), pages 7-11 and 7-12. I can't seem to figure out how to post an html table. If I could, I would post the network settings in that format rather than relying on pics. Network_Parameters_and_Example_Logic.pdf Quote
Gambit Posted June 18, 2007 Report Posted June 18, 2007 (edited) 1. Network parameters look okay. ALthough I do not know which cards will be placed in the first Racks. you'd micght want to increase your LX0 to X..... (12+5)slots * 32 I/O = 220 hex 2. Also looks oke 3. The module ready signal will always be on. So the M1010 is just placed to write the average data and enableling of channels once during startup so it can be changed later. M1011 is a reset to the origional values. 4. correct!! 5. If i remeber correctly it's network nr, channel nr, station nr, Normal TO/FROM instr. ,Completion flag There are about 8 channel you can use but you can't use one channel twice at the same time. 6. Yes. Head adress 7. Yes. BFM adress 8. Yes. It means writing D1000-D1009 to BFM 0 - BFM 9 9. There is no refrence for M1150 in your program so it would be a user contact. If you want a continious read you can take it out. I would keep Y219 so you don't read any values when operation condition are being changed. 10. You don't need it. Just make it automatic. p.s You can also program analog modules in remote racks via the special function util than you don't have to write that much code Edited June 18, 2007 by Gambit Quote
BrianW Posted June 20, 2007 Author Report Posted June 20, 2007 I've since discovered that we have a copy of the Configurator software but I don't completely understand it either and since the existing analog module in the main base is already programmed in this way, I'll probably just keep the programming unless I have trouble with it in the field. I figure its best to understand the inner workings of the hardware and software than to take the easy road and then have troubles and not know what's going on and what I can do to fix the problem. Anyway, thanks for the help. I think I understand it all better now. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.