jydepower

MrPLC Member
  • Content count

    54
  • Joined

  • Last visited

Everything posted by jydepower

  1. Hallo.  Can someone shed some light on how much memory st takes ? does it use more that traditional ladder? i find that a routine with a couple of thousands of lines uses over 500kB is there any tricks to lower the usage? Or is it just what it is, and buy bigger cpu’s
  2. Hallo jobbe9000 Thanks for the great info you found. It does answer some questions.  I see that the FOR construct does use a lot of memory. I have many of those. I’ll look into converting as many as possible to traditional pointing increment. 
  3. understanding capacity of qplc

    Hallo. I think its a little hard to figure out what is what, when it comes to space in a q plc. There are steps, devices, standard ram etc. Usually i only care about steps. But in my latest project im running out of room for device registers. Im using a Q06UDVCPU. The specs states: Program capacity 60K steps (which i understand). Device capacity 424K (40K standard device+384K standard RAM) here i understand and know how to allocate the 40K standard device between D devices etc. But i dont understand the 384K standard RAM. what can they be used for? At the moment im running out of the 40K standard device for D registers, which i use for GOT tags. So im wondering can i use the 384K standard ram for more D devices? If not can i use some sort of memory card for extending the devices? The devices i use for GOT tags does not need to be fast. Its basically a recipe database which takes up a lot of space.  
  4. Array of SDT as I/O on FB

    Hallo.  Im trying to make a fb where I have an array of sdt as an input output type.  The reason is to have write and read access to my connected global vars inside the fb.  This works fine in most cases. But when trying to use a bmov where moving an array of sdt input to the array of sdt I/O I get strange results. The first array element is correct. But then rest are mostly zeroes. It is writing zeroes. I tried the same outside the fb, and it works fine.  Only thing I can think of  is that inside the fb all vars gets a local random register. Maybe this can cause it to fail? the array of sdt input and array of sdt I/O are of same sdt type  The sdt consist of mixed data types   I’m using gx works 2 with a q plc  can someone shed some light on this matter? and will using the array of sdt as input on fb cause more execution time? I’m thinking the cpu maybe have to cope the vars to local before using them?
  5. Array of SDT as I/O on FB

    1) not sure why you need to see the programme. It’s a general question about working with sdt.  2) so you’re saying to access global vars directly from inside the fb? Instead of adding locals to work with them? to break it down... I create a sdt named recipe i create 2 global vars. var1 = of recipe var2 =array(1..7) of recipe I then create a fb with 1 input = sdt (recipe) and 1 input/output = array(1..7) of sdt(recipe)  What I want to do. Is to bmov the input vars to the input/output vars. Which doesn’t work.  On the other hand. If use a move on a single var from the sdtit works fine. 
  6. program efficiency

    Hallo. Im trying to optimize our inverter block. Initially the block have local IO variables to handle the inverter IOs (RX,RY,RWr, RWw). This means i have all the inverter variables both global and local. This made me think that im using steps to copy the vars to the block itself and im using a lot of vars hence the locals. So i tried to make a version without the locals. And had the block call the globals inverter IOs directly. Hoping i would save steps and vars. But when compiling i get the exact same usage result. Does this make any sense? Can someone shed some light on this? Im using gx works 2 inverters are in cc-link ie.    
  7. Hallo. I want to know if its possible to write to eeprom of an A800E inverter via cc-link ie. I have successfully written and read any parameter to the ram. But now i need some parameters to be stored in the eeprom. Im using the A8NCE card on the inverter. The manual only states a bit to write speed and torque to eeprom, but nothing on any other parameters.
  8. Hallo. Im hoping someone can shed some light on these topics. The company im working for have been using gx developer iec 7.04 for ages. The setup we have been using is QxUDE plc with beijer HMI and FR-E700 inverters on profibus. Recently(finally) we have been forced to start using gx works 2 because of newer plcs. With new software come new questions as always. And since im feeling we have been hanging in old software for too long. I want to make sure we are up to date this time. The setup we plan on using is QxUDV cpu, CC-link ie (QJ71GF11-T2), FR-A800 inverters and GOT 2000 for HMI I have made a few project in siemens and TIA portal. And software wise it has always annoyed me, that mitsubishi lacked the same integrated software package as siemens. This made me discover navigator. With system labels navigator makes the variable control, hardware setup and project overview im missing from siemens possible. My question to navigator is. Does people use this? i dont see much about it on the forum? is it already outdated? Gx works 2 or 3 Again i cant figure out what is new and what is old. What are the pros and con for choosing either? CC-link ie or CC-link From internet reading. I find that IE is the newest and faster CC-link version? Is the classic CC-link on the way out? If not why should i choose IE over classic? When setting up CC-link IE in navigator i dont get the same hardware in the catalog as CC-link. To setup inverters i need to user general intelligent device station. Whereas in cc-link i can choose FR-inverters. Is this the way it works? or can hardware catalogs be updated somehow? Blocks for FR-A800 Maybe its just me. but i really think the search function on the mitsubishi download page is crap. When i filter QPLC i get LPLC etc. ive been trying to find some blocks to control inverters without luck. Do i start creating it myself or can you point me in the right direction? I know these are a lot of mixes questions. But i feel we have been non-efficient for years because of bad software choices. Hope someone can shed some light one these points.
  9. Power-on inhibit FR-A7NP

    Hallo i want to know if the supply for the fr-e740 inverter with Fr-a7np is gone.  I was thinking that bit 6 of the status word could be used. Power on inhibit. The manual only states that 0 is returned. Anyone knows what that mean? is it 0 when on and 1 when on? And or vice verse?
  10. A little input on a few things needed

    Got the profiles installed. Thanks for the help and inputs gambit.
  11. A little input on a few things needed

    Did you find the FR-A800 profiles for CC-Link IE / Basic Do you mean inside navigator when you say profiles? I think I did but there are no inverters in IE. in the last project they used something called general intelligent device station. And set points manually. Should there be inverters in the profile? And what if I use the interface module FR-A8NC?  
  12. A little input on a few things needed

    We have made one project with the new setup. First we wanted to use the e model. But we ended up using a cc link ie interface card for the inverter. Because the e module only had one Ethernet port I believe. And also the my colleague couldn’t get the block to work. I really want to use the e model because of cost price   So I don’t know. All I know is I’m up next. And want to be more prepared than the last project was. 
  13. A little input on a few things needed

    I actually have my hands on a working block. It’s from a friend of a colleague. However in this block the b registers use 48 points and the w registers use 32 points. So it takes op a lot of space. I haven’t studied the block yet. But when I drag a fr inverter i at classic cc link it’s takes a lot less points. So made me want to find a original basic block. To see what is needed just to run with basic stuff. Then modify it to my needs.  The danish local sellers know less than us. Since they started selling Mitsubishi recently when Beijer and Mitsubishi stopped working together. Before our local seller was Beijer. 
  14. A little input on a few things needed

    Thanks for the replies gambit. Seems like I’m on the correct path the.   The block I was looking for is for cc-link ie
  15. Error code: 4140

    Hallo Kaare and thanks for you reply. You were right. The problem was external (HMI). I haven't found the problem in my own project yet. But the pictures below shows dumps from a test plc, where there same error heppened yesterday (the reason for my post). It turns out that the test plc in our office was talking to a test hmi, where a colleague of mine have put in some program. See the D800 overlap. This error is of course obvious. But im glad to see it made the NAN value, which i've never been able to provoke before. Now i just have to find the most likely same error in my own project.  
  16. Error code: 4140

    Hallo. Recently ive got an error i haven't seen before. Error 4140 im using GX IEC developer  CPU is Q06UDEH I cannot figure out why the error happens.  When show the location to the step where the error occurs it makes no sense. The specific area has only got simple bool operations. When trying to recompile the entire project. The error "moved" to another location in the program. At this step there was a lot of float operations. When monitoring one of the variable value was NAN. I could not find anything about NAN in the manuals. But google stated it could mean not a number, which makes sense when reading the error description. I know it impossible to help me with my specific problem, when i cant really tell where or why the problem happens. But im pretty sure it has to do with me using float operations wrong. Ive tried to do a simple test program just to see if i could provoke the error, but no luck. How can i make a number go out of range, make it unnormal, nonnumeric or even infinite? Maybe someone could give me a simple example how to provoke this error, which might help me on my search in my own program. Thanks. Below is a screen-dump from the manual on this error.
  17. Hallo. Im trying to make a function. Im not sure what aproach to take. I have an array of int [1..15] with mixed numbers. What i need to be able to do, is to find the element that is closest and LT a value(search number). Lets say the array is [1..5] instead for easy example and the values are 4000, 2000, 3500, 6000, 1000. My search number is = 3000 My result would be element 2 = 2000. My approach to find this was to use the SORT function. Then i could start a loop comparation from the high end, and the first value that was under was the correct on. My problem is. When using the SORT function i loose my array index order which i need onwards. So i my idea was to convert to a DINT and ADD a "tracking number" in the upper half of the DINT. Do the SORT and then look at the sencond half of all the DINT's when doing the loop. Something like this 10000004000, 20000002000, 30000003500, 40000006000, 50000001000 (i know the numbers arent correct). In case this is a good aproach. I need to know how to ADD the two INTs into a DINT. I cant find a function that does it. Does this make sense? is it even possible? what way would you go?
  18. QJ71E71 - 100

    Can we see your final results? Both IX and plc settings.
  19. 87hz drift with FR-E700

    Hallo. Im currently in a project, where some motors have to run 87hz drift to obtain full momentum, above the normal 50hz After searching a on the subject. I found that: The motor should be 230/400V and mounted in delta. The inverter should be set to 400V. At the moment the inverters are set to 230V because at 400V they tripped. But it sounds like they are struggling a lot. As this is very new to me. Id like to hear some advice on this if anyone have had experience with it.
  20. 87hz drift with FR-E700

    Ive got most of my info on the subject from a siemens manual The manual states as i wrote in first post. Take a 230/400v motor and mount it in delta with a 400v drive. From what i learned in school, that would burn the motor, and should be mounted as star. But when consulting a siemens dude. He explained me that with higher frequency, the overall impedance would increase in the motor. And that's why it would be possible to run 400v delta instead of 230v delta. The picture from the manual below, shows pretty well how the inverter output 400v at 87hz and 230v at 50hz. So something might make sense. Inverter type: FR-F740-0380-EC I lost my picture of the motor nameplate but found the data on the suppliers homepage: LSMV 132 MU 230vD/400vY 4pole 9KW 1465rpm cos phi 0,80 58,7Nm 18,2A
  21. 87hz drift with FR-E700

    Hallo. Im currently in a project, where some motors have to run 87hz drift to obtain full momentum, above the normal 50hz After searching a on the subject. I found that: The motor should be 230/400V and mounted in delta. The inverter should be set to 400V. At the moment the inverters are set to 230V because at 400V they tripped. But it sounds like they are struggling a lot. As this is very new to me. Id like to hear some advice on this if anyone have had experience with it.
  22. Moving array of dut.

    I AM using Q03UDE so i will look for that function.
  23. Moving array of dut.

    Hallo. I have an array[1..10] of DUT where i save data for every time an operator empty a box full of sorted boards. Another operator receives the boards later on, and create a pack. When the first operator empties the box, i move the data into the first available array. The second operator don't necessarily use the first entry in the array. When the second operator uses or delete one of the arrays(packs), lets say [3] entry i then move entry [4] to [10] to place [3] to [9]. Basically i want the data to be topmost in the array at all time. I have made this with A LOT of MOVE_E functions, and it works. But i wondered if there was a smarter ways to do it. If i had to expand the array to 20, i would had to add hundreds of MOVE_E functions. Any ideas? I'm working with iec developer 7,04 The picture below shows how i check on array 1 and 2. I have checks for array 3 to 10 below(no room in screenshot).
  24. Hallo all. Im strugling with some, what should be simple logical operation. I have a touch screen that logs data from the plc, when a tag goes from 0 to 1 or 1 to 0(i cant change this toggle type). Tag is called EnableLog and linked to a variable called EnableLog in the plc I want to start log when another variable called Data1 goes 1 > 0 So... Problem is when i reset Data1 to 0. The EnableLog sees thats as a toggle and does a second log. I think i have to somehow say: EnableLog for each time Data1 goes 1 > 0 Been trying to solve this for some hours now, but i cant solve it. Im using Gx iec developer with a q03 plc (ladder) The touchscreen is a EPC t190 with Ix developer. Hope anyone can help. Regards Martin
  25. Busting brain with logical operation

    Look what i found on Beijers website. Im gonna try that tomorrow. iX Datalogger - Double records for each log event When using the log once on tag connection, please mind that event will be fired (executed) on each "edge" false -> true and true -> false. Using an momentary signal will result in 2 log records for the same event. See below how to prevent that. Best Practice: Panels:Triggered by user, using a so called "Action", use "Toogle Tag" in "Controller" or even better the dedicated action "Log Once" found in "Others". PLC: Use following instructions FXxy-series: ALT (Alternate State) Q/L-system: FF (Flip-Flop)