Sign in to follow this  
Followers 0
goodyear

Supervisor v2.1

6 posts in this topic

I am developing a program that creates a complex recipe, saves it to a CSV file and can also load from a CSV file. That alone is nothing really special, as I am using ALL memory tags for this. The end goal is in a separate script populate all of about ~200 memory tags (all of array of 100) in the EM memory area of the CJ1H PLC I am connected using. First I tried creating one tag within Supervisor that is also an array 100, which is E0_0. Since it is an array, it will write from E0_0 to 99. And when I write a script to do this - it works fine. So now when I add the second tag to Supervisor with an address of E0_100 and write to both tags in my script - the second one overwrites the first....??? So what you and I were thinking at this point is I am either not writing the address correctly for EM area OR my script is not right. So I decided to write a script that would transport ALL of my 200 variables to EM tags. Upon running it I found that it showed no errors, finished like it should... but when I looked at the PLC - I couldn't even open the Memory viewer at all - it was locked. If I CLOSED Supervisor down, then the Memory viewer would open right away. Now that it was open I could see that again it overwrote at the first address (E0_0). To prove my new theory that multiple EM's just can't be written to from Supervisor, I changed the tags to be DM's instead of EM's. Now, not only does the same script work, but I can actually open the Memory viewer in the PLC program without issue, AND all of the fields are populated like I was trying to do all along. What gives? Is there a better method to send data to the PLC (in particular, EM's?) I have to use EM's because the main machine control here is large and has consumed most of the DM area. I have a CPU 66, so I have 7 banks of (currently useless) Extended memory. I have tried using some of the example "PLC memory functions" I found in the Supervisor help pages, but None seem to work. Do I have to set up some kind of OLE to use the "Lite" scripting capabilities??? Thank you kindly for any help / ideas. Vince

Share this post


Link to post
Share on other sites
I have since verified this morning that in fact that is a flaw with Supervisor - you can't write directly to SPECIFIC EM banks. So, to overcome this (until Omron fixes it) you have to use the EMBC command to tell the PLC what memory bank to currently write to. Therefore all of tags you may have in the Supervisor that are directed to E areas must not have the "bank" associated. IE--> E0_0 is no good (even though Supervisor accepts this entry). You must tag it as E0. Subsequently, Supervisor ignores the "0_" for bank 0, or "1_" for bank one etc. I don't know if this is the case for any other PLC's with multiple Extended memory banks, but it has happened now consistently with 2x CPU66's. Just a heads up is all.

Share this post


Link to post
Share on other sites
Hi I've had this issue and was given a workaround.... This workaround makes CX-Supervisor write the whole array in the PLC rather than just the element of an array.... Basically set the following in registry: [HKEY_CURRENT_USER\Software\OMRON\CX-Supervisor\Settings] Write Whole Array = 1 Hope this helps Keda

Share this post


Link to post
Share on other sites
NO NO NO E=0_0 is good. CX-Supervisor works fine also with EM-banks, if I am not wrong, you have to specify only first the address and then the bank number e.g. for address 100 on bank 0 it is E100_0

Share this post


Link to post
Share on other sites
Hi, I don't think this is right. For address 100 on bank 0 it is E0_100 or for bank 1 it is E1_100. This works for non-arrays but KEDA's mail is also correct and this registry makes arrays work correctly Bertie.

Share this post


Link to post
Share on other sites
Sorry, correct is to use a minus sign in Supervisor for the bank number behind the address, so address 100 on bank E1 is E00100-1 Harald

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