iQ Works Q & A

273 posts in this topic

@crossbow: That was exactly the point i was trying to make. I'm getting the same answer as always: "no, these things are not possilbe in a simple program. You should use structured ladder". Why not improve the simple ladder? Have you tried programming with labels in simple ladder? It's virtually unusable (because of all the problems i mentioned). Either include it and make it work or don't include it at all. I don't see any reason as to why they couldn't expand on it and maintain compatibility with older (gx dev) programs. There are companies who have done medoc/gx dev programs for so long. What are these companies expected to do to move forward? Convert all those programs into structured ladder? Converting programs from simple ladder to structured ladder is not a case of pushing a button. It would take years. Simple ladder with labels (maybe within a structured project) would be a good step in between to move forward. One could then migrate code from simple ladder to structured ladder gradually. If they don't want to improve it, then fine but then they shouldn't put a whole bunch of program examples with simple ladder and labels in their official brochures and be so proud of it. Because it doens't work. It's useless in the way it is now. The instructions are too wide. If you're lucky, you can put 2 instructions next to each other on one line with longer label names. Other companies had to deal with the same problem and solved it. This has nothing to do with breaking compatibility with older programs. Does proper documentation methods have anything to do with the way you program? No, proper documentation methods should be in every programming language. As should a proper compiler (moving a real into an integer without conversion and getting the ok from the compiler is something i haven't seen before). So my point still remains: if you're committed to the simple ladder (as Mitsubishi Japan clearly is), then why not improve it and bring it up to modern day standards (and maintaining a certain degree of compatibility)? The whole iQ works software suite is based on labels (importing and exporting variables in between different projects) and yet, labels are impossible to use because of the editor. Wow, didn't know that. Strange that they aren't included on install. Must check that out.

Share this post

Link to post

Share on other sites

I would like to add that i have nothing against structured ladder/structured text programming, on the contrary (i have programmed with that in other brands of plc). But i would not want to use the structured ladder, in it's current form, on a fulltime base (the editor). I don't think i would survive it.

Share this post

Link to post

Share on other sites

While I don't think that anyone can argue that some of the features of structured ladder are hard to use (as you mentioned the select/line mode thing is a bit annoying) you have to admit that it is a different way of doing things so you probably won't like it if you do programs the same way you did it in GX Developer and expect the same results. For the Structured editor, which is based on IEC Developer, you *should* be programming differently. You want to encapsulate most of your code into re-usable function blocks. If most of your code is encapsulated you don't need to be a high performance editor jockey because your programs are shorter and cleaner looking. In the end everyone wins. One thing that also should be said is that the structured ladder editor allows you to arrange your rungs the way you want. If you use a wide screen display you can have more instructions per rung than you might want if you had a 10" netbook for instance, its your choice. The GX Developer editor forces you to use fixed spacing whether or not you use that space or not. If you want you can have a long run that zig zags on your screen, although I try to minimize this. Finally, IEC editor lets you mix inputs and outputs in a rung instead of the classic "Put inputs on the left, outputs on the right". This is both dangerous and powerful. I prefer to have the choice because I know how ladder scans and when it can cause problems (99% of the time...). For me using IEC developer and Structured ladder I find I spend more time thinking about the application than editing. I think there is something to be said for that. I would seriously evaluate your coding style and see what you can re-arrange to put into function blocks. Like I said, the IEC based editor does deserve some simple improvements. The default routing behaviour of the lines in auto mode is a bit gross looking, I usually turn this off and manually route the wires. ~Ken

Share this post

Link to post

Share on other sites

I agree completely and 100% with your post. But the one thing about structured ladder that i don't like is the editor itself. A good editor should help the programmer with things like layout and structure. The iec editor is so complicated for what i tries to do. I don't understand why a line should be treated as a collection of smaller lines, which are all separately movable. I don't understand why vars should be detachable from function/function blocks. Or labels overlapping code (or anything else for that matter). I don't understand that when you put a contact over a line, the line isn't automatically broken and the contact automatically inserted (you've got the switch modes for that to work but why? if i put a contact over a line, isn't it always the point to insert that contact in that line? If you are in the wrong mode, it just puts the contact over the line). I don't understand that if you select a function block, that the corresponding vars aren't automatically selected with it,... I don't understand the need and ability to bend lines into thousands of different corners... I don't understand to need for select/interconnect/autoconnect modes. There are so much small frustrations that make programming in structured ladder frustrating. I don't understand the need for such a complex difficult to use editor. Yes, it offers a lot of freedom in how you layout your code. In fact, it leaves all the layout work to the programmer but i'd rather spent time on the actual programming logic instead of wrestling with the editor and doing layout work. If they improve the structured ladder editor, i'd be all over it.
Edited 21 Jul 2010 by Mitsu

Share this post

Link to post

Share on other sites

How can I trigger certain functions? I think in GX Developer it was called Device test And in Gx Developer I was able to change functions on the fly why monitoring them with "F4" on the keyboard. Now I have to actually write it by clicking the Write-to-PLC button. Maybe I just don't get it.

Share this post

Link to post

Share on other sites

LeDude: MODIFY VALUE is the new name for the old DEVICE TEST. No you do NOT need to always download your program. Look at the COMPILE menu. Second option. ONLINE PROGRAM CHANGE. This replaced that ridiculous online read/write-offline read-write mode in GX Developer.

Share this post

Link to post

Share on other sites

Mitsu: How do you expect they can add new features in simple ladder in GX Works2 and still be compatible with the GX Developer version? Can you write and save a document in Word 2010 and open it in Word 97? Not without following special steps. The format changes. Flat out, simple ladder is the 'legacy' Mitsubishi way to do things. Like programming a Square D Sy/Max in DOS. IEC style programming is the new way to do things. Yes the editor is different. As has been pointed out here, it has its good and bad points. But it's different for a reason. If you had learned IEC programming 10 years ago that was how you worked for all this time, then you would think the Mitsu simple ladder was confusing and cumbersome. Basically, someone is showing you a new way to do the same thing you've been doing for years. It's different than what you are comfortable with, and you protest it. This is called human nature, and we are all guilty of it. I am trying to learn the structured ladder to the point where I can write in it even half as fast as the old ladder. I still find myself wanting to just go write simple ladder because it's faster. It's like someone has now made you write PLC programs in a foreign language you don't know. There is a learning curve, unless you are used to IEC programming on another vendor. Then the structured editors make more sense to you than simple ladder. I'm not trying to make negative comments or anything here, but that's how it is. It's progress, and none of us can stop it. And as for the simple ladder with labels being unusable, have you looked at the software options? You can change the labels to wrap text. Then they are not so long. I would still upgrade any GX Developer or MEDOC user to GX Works2, even if all they are trying to do is edit the same simple ladder program. Just the screen layout and huge online help is light years ahead of GX Developer. I haven't opened Developer in months. If I were still a distributor, I would forget GX Developer exists unless they use A Series.

Share this post

Link to post

Share on other sites

Absolutely. I would never want to go back to gx developer again. Gx works 2 is a big improvement. It just needs some works here and there to make it even better. That's why it's important for users to leave feedback.

Share this post

Link to post

Share on other sites

Some smaller changes i would like to see: - option to unpack a project over an existing project (with a warning "are you sure you want to overwrite the project"). Currently, when you unpack a project, you first have to delete the existing project. - simple ladder line statement list: when you open the line statement list, it should be opened on the position (= step) where you currently are in your ladder. It now opens the line statement list at the same position you last closed the window. - more printing options (for example: option to print a selection,...). I assume that the printing options will be expanded in future versions. - label list: option to sort the lists
Edited 30 Jul 2010 by Mitsu

Share this post

Link to post

Share on other sites

I too have mentioned to them both the printing and label sorting. Printing is being improved, with more features forthcoming. No dates yet. As for the label sort, they said this is not included now because when you compile a program using unallocated labels, the addresses associated with all of the labels will change when their order in the list changes. I said I don't think this is a major issue, but so far they have not updated me on if it can be done or not.

Share this post

Link to post

Share on other sites

Just had a quick look at version 1.31H of Gx Works 2. No major changes, apart from new cpu's and intelligent function modules. Two small things though. I noticed that the batch password registration is in again (already in 1.24 it seems, or even earlier?). Just shift or ctrl click. I seem to recall that this didn't work in some earlier versions. Also, in 1.31, each movable window (find / replace, cross reference, devlice list window,...) can now be closed by pressing ESC, which is a small but welcome addition. In previous versions, you had to close the window with the close button. Anybody knows what the intelligent function module guidance is supposed to do? Keep up the good work, Mitsubishi. I hope you are going to take onboard some of the user feedback.

Share this post

Link to post

Share on other sites

Intelligent module guidance is an L Series PLC thing at the moment. It's basically help information for settings for the intelligent modules. I would assume it will roll out for others are newer versions release.

Share this post

Link to post

Share on other sites

Thanks! Included is a screenshot for the "structured ladder editor has better register watch functionality than simple ladder editor" problem. Same code, same function, different results. The structured ladder filters out the duplicates and constants and sorts the entries. The simple ladder one doesn't. I consider this to be a bug or an oversight from the developers, since there is no use at all for duplicate entries and constants in a watch window. In fact, it takes more time clearing up the duplicates and constants than it takes to type them in one by one in the watch window and it renders the "register to watch" unusable in simple ladder.
Edited 11 Aug 2010 by Mitsu

Share this post

Link to post

Share on other sites

I see your point, but I don't know if they will update it or not. The idea is to migrate people to the structured ladder methods, as they are more common to the rest of the PLC vendors on the market. I don't know how much effort they want to place on simply improving the old editor. But who knows what their plans are. I sure don't. I do know that some of their people read these forums, and so can take this under advisement.

Share this post

Link to post

Share on other sites

I browsed the Japanese Mitsubishi site (google translate) and noticed that the Japanese version is apparently at 1.41T. It's great to see Mitsubishi bringing out new versions on a regular basis. I always look forward to discovering what's new. Aren't we supposed to get new versions in october for Vista/Windows 7 32-bit compatibility (1.34 according to Mitsubishi usa)? It's also great to see that they are squashing the remaining bugs in each new version. With 1.31H, most of the bugs on our list are gone. Going from 1.24 to 1.31, they squashed the bug which occured when replacing multiple devices on a selection of blocks (simple ladder). Before 1.31H, the selection was ignored and the devices got replaced in the entire program window. It worked correctly when replacing only one device. It's still a bit illogical that the batch device replacement still doesn't work on a selection of blocks though. And to a certain extent, it is also confusing that a string replacement doesn't work on a selection of comments in the device comment window. They need to put a bit more logic into these actions. These are all small things that could make the program even more user friendly. I certainly have the feeling that Mitsubishi is working hard on gx works 2. Bringing iec and gx developer, which were essentially two completely different programs, together must have been a big task. With that work done, here's hoping to even more useful additions and improvements for future releases.
Edited 5 Oct 2010 by Mitsu

Share this post

Link to post

Share on other sites

The Japanese version numbers (including which one adds Windows 7 support) are different than the USA ones, Japan is always at least a couple revisions ahead while ours gets translated. Yes, as far as I have still been told, October is still the release for Windows 7 32 BIT ONLY support. As for your comments on string replacement, there is a separate tool for replacing comments. So the replace string command doesn't need to do it.

Share this post

Link to post

Share on other sites

Don't know what you mean with a separate tool for replacing comments. Let's say you have a couple of device comments and you want to replace part of the comment (for example ROOM1 needs to be exchanged to ROOM2), you need the find/replace function within the device comment window. In that case, a selection is neglected.

Share this post

Link to post

Share on other sites

Sorry, was thinking of GX Developer. Find String and Replace String work fine on comments. Simply set the comment list as the target instead of current window. I just verified this in 1.31 with comments on X, Y, D, and M, all were updated by replace string. But I did the entire list, not just a selection. You are saying you want to replace only in part of the open window? When I selected 3 items in the X list, it started at the cursor, not the top of the list. But then at the end it did move on to the next list.

Share this post

Link to post

Share on other sites

Indeed, if you select "replace all" and do a selection, it ignores the selection and goes through the whole list (it does start at cursor position but goes on beyond the selection). It would be nice if it just did the selection and then asked if you want to continue through the whole list (similar to for example Microsoft Word or to how the replace device now works in 1.31). Again, these are all minor things but they are things that you sort of expect as a user.
Edited 6 Oct 2010 by Mitsu

Share this post

Link to post

Share on other sites

On top of the suggestions i did earlier on for the watch windows (like column sorting, batch inserting of devices, column on/off, monitor value format separate for each device, inserting devices in between others), i'd love to see the F3 functionality back from GX IEC entry data monitor (you insert D10, push F3 and the program automatically adds D11,...). Also, saving/loading of watch windows + read/write to plc, would be useful, as would being able to watch in binary value format. These things are all present in GX iec's entry data monitor.

Share this post

Link to post

Share on other sites

At first, i didn't understand what this meant, but i think i do now. So the allocation for the "empty" labels (the labels without any device address filled in) is done in the order as they appear in the label list? So the first label from the top gets the first free device allocated to it (devices are allocated backwards for example T2047 is first, then T2046, T2045,....). Resort the list and that will change? Lets say a label list with empty addresses (which the compiler will choose for you): - var1, timer - var2, timer var1 gets T2047 assigned, var2 gets T2046. Sort the list in a different way, for example: - var2, timer - var1, timer then var2 gets T2047 and var1 gets T2046. Is that correct? Reallocation of addresses only happens when you rebuild the project, and not when you build a project though, right? In that case, i don't see a problem either because rebuilding a program will always re-allocate addresses anyway (and needs a plc reset/clear devices assigned for this purpose). If you delete a label in a label list and build the project, the addresses are not re-allocated, i think (which also means you can safely do Online changes, which was discussed in another topic here) Thanks for giving the reason behind it. I now understand there is more to it than just sorting columns in a grid. Out of curiosity, i should check if sorting is possible in iec.
Edited 11 Oct 2010 by Mitsu

Share this post

Link to post

Share on other sites

This is exactly right. The labels are assigned top down from the top of the list starting at the top of the automatic assignment list. So a sort of the list would require the program to be recompiled, which would change the addresses allocated to each label. Labels are built each time you convert when you are working with a label program. Make a change and then look, the labels list icon and text in the project tree turn red, meaning it has to be recompiled.

Share this post

Link to post

Share on other sites

Just did some tests. The re-allocation only happens after a Rebuild, not after a Build. You can change the order of the labels, delete labels, insert labels,... without the labels being re-assigned another device address. So the program must keep track of which labels are assigned an address and use this for a Build. For a rebuild, it starts from scratch. In conclusion, sorting of label lists (or in general, changing something to the label list eg inserting and deleting labels) will result in the labels without address being re-assigned a new address after rebuilding a project, not after buidling a project. In IEC, you can sort the columns. Anyway, happy to understand the reason behind not being able to sort. I don't think it matters though because a rebuild will always result in re-allocation of the addresses.
Edited 12 Oct 2010 by Mitsu