dunc

MrPLC Member
  • Content count

    112
  • Joined

  • Last visited

Everything posted by dunc

  1. linearisation on Q series?

    final code has been done. cone section has been calculated using the TAN function. i have also calculated the mound/hollow of grain using the same method (this is a grain silo). the cylindrical section of the tank i elected to use linear interpolation. i have 2 tables setup, 1 for the fill and 1 for the empty. these switch between with a deadband to try and smooth the transition as best we can. i just need to tidy it all up and put in the PLC to test once have the figures for the interpolation.  
  2. linearisation on Q series?

    we have some storage tanks with coned bottoms. the levels are measured using radar. we wish to use some sort of linearisation table or function to account for the cone in the tank and acheive more accurate results. my maths isnt the best, i was considering doing a rudementary offset table to achieve this, but i would like to do a nicer job if possible, does the Q series (specifically a Q03UDE) have a function that could assist with doing a nice linearisation curve?
  3. linearisation on Q series?

    right. my modified code had a mistake. they now both work. speaking with my colleague he suggested using TAN rather than the rule of sines. as we have a 90 degree angle at all times, this works and is far simpler. we divide the height by the tan of the slope angle to give us the radius. we then calculate the volume as before.
  4. linearisation on Q series?

    when i run your original code with those figures i get a radius of 11.547 and a vlume of 1396? with my code using your initial technique with law of sines then Pythagoras, i get 5.774m radius and a volume of 349.06 m3 using the modified version, just using the law of sines, but calculating the 3rd angle before using the law of sines, i get 17.375m radius and 3161.251m3 volume. the volume calculation is done the same way on both. i have passed this to my colleague who has far better maths skills than me to see if he can work out what is going wrong!
  5. linearisation on Q series?

    are you sure thats right? i input the same figures into both yours and my code and we get different results? is the further calculation using Pythagoras adding in some additional errors?
  6. linearisation on Q series?

    thanks for your help. managed to write a bit of code to calculate the volume of a cone and then switch to calculate the volume of a cylinder (and add the max volume of the cone too it) i can now look to use this for different angles and then use this to proportion the tonnage readout accordingly. still needs a bit of work, but i have something to start with at least.   thanks again 
  7. linearisation on Q series?

    thanks for the input.   i had got to the point with the volume of a cone, but struggled to get my head round how to implement that within the PLC. i have discussed with my colleague who is far better with maths than i am and he doesn't think it looks too bad!!!! we have the added issue in this application of it being a coned bottom grain silo. we have issues as when it fills as it has a peak in the center, but when it empties we get a dip. we wanted to have an alternating linearisation curve which we would switch between depending on whether it is filling or emptying. i will see how we get on with it and get back to you.
  8. GOT 2000 scripting?

    has anyone used this and had much luck with it? i have been trying to do something relatively simple and am struggling. i simply want to add in a project script to log out a user after a set period of time. initially i tried it by trying to write to the data register in the PLC and this didnt work. I then tried managing it all within the GOT and it partially works, but if i fire the simulator up with the login level already there, it just wont work? below is the script i am using: //if login level above 0 or login above 0 and login time count at 0 if (([w:GD0] > 0) || (([w:GD0] > 0) && ([w:GD1] <= 0)))  { //set GOT seconds to login time count [w:GD1]=[w:GS7];} //while login level is above 0 while ([w:GD0] > 0) { //if 60 seconds elapsed if([w:GS7]-[w:GD1]>=60){ //set login level to 0 [w:GD0]=0;}}   i have tried lots of different iterations. i have tried using a 1 second sampling trigger point method as well as the method above with an ordinary trigger with no real joy. could it be me using the simulator causing the issue and i should get some proper hardware, or am i just being completely stupid? any guidance would be appreciated. thanks
  9. GOT 2000 scripting?

    i believe it is similar to C when i was looking through the manual. it gave an example of slightly changing it to run in a C compiler.  i think the issue i was experiencing was more to do with how the script is being run in the GOT rather than an issue with the script itself.
  10. GOT 2000 scripting?

    brilliant, that explains it then. i guess when you use a 60 second sampling time, it is running the script once every minute so it doesn't time out. that does restrict its use somewhat, but at least i now know the limitations.   thanks
  11. GOT 2000 scripting?

    looks like the while loops time out after a time. if you have 10 seconds before you break out of the while loop, its fine. when i increased it to a minute, that gives up and appears to do nothing.   this rings true with my other more basic bit of code i tried.
  12. GOT 2000 scripting?

    previously i have just controlled it from the PLC, but after moving over from the E-series terminals to the GOT, i thought it would be nice to keep the same logout control done from the HMI itself to keep things neat. i have got something that works, but whilst getting that to work, found that the 'while' statements are not really working as expected.
  13. GOT 2000 scripting?

    tried this basic script and it works, but only for a short period of time, then it stops working? while ([b:GB200] == 1) { [s16:GD200] = 10; }   this is very odd?
  14. GOT 2000 scripting?

    the GOT turned up about an hour ago (i was using a GT23), so gave it a try myself and got the same result. like you say, it appears the 'while' loop is not working at all. 'if' statements are fine for alot of situations, but the 'while' statements should still work!? perhaps 'while' statements do not work in project scripts for some reason?
  15. GOT 2000 scripting?

    i have only been using the simulator, so suspect that could be a potential issue. i have ordered the screen for the project, but it hasn't arrived yet. if you have the chance to test it, that would be appreciated.
  16. GOT 2000 scripting?

    there are object scripts, screen scripts and project scripts. i used this script as a project script so should run constantly. the second script i posted functions perfectly fine, i just cant see why i couldnt get it to work using "while" statements? on this occasion i got round it, but i may have an application where i cant just use "if" statements to achieve what i want!   hopefully someone will come along who has played around with them a bit more
  17. GOT 2000 scripting?

    managed to get it to work. i cant get my head around how the WHILE statements work. if i use IF statements only it works fine!? am i being dumb? anyway, this worked: if ([w:GD0] == 0) { [w:TMP0] = 5;} if ([w:GD0] > 0) { [w:TMP0] = [w:TMP0] - 1; if ([w:TMP0] <= 0) { [w:GD0] = 0; } }
  18. we don't tend to use SD cards, but that is a good one to remember for the future.
  19. in GX works; is there any way around reading a structured project from a Q series CPU if the symbolic data (which takes up loads of room) isn't downloaded to the CPU initially? with a simple project you can simply read the program straight to a new project and then work with it. this doesn't appear to be possible with a structured project? siemens and allen bradley can manage this without having a huge CPU for a relatively small program, why cant mitsubishi?
  20. adding signal???

    this should be simple and i have done it before with no issues. i simply want to add a button on screen to turn a bit on in the PLC. i added the signal in the point editor and all the settings are the same as a button i have added before. i have added the button on the mimic, done a bit of script to control it as before. i have recompiled the runtime. if i try and use the button, the signal does not change in the PLC. if i force the signal in the PLC, the colour of the button will not change either. everything else works perfectly fine including the button i added in a month or so ago. any ideas what i have missed? im sure its something stupid!   many thanks Duncan    
  21. i wish to segment my ip address areas out to free up more available IP addresses and to give some area definition based on the numbers used. i want to keep things simple without messing with dhcp or managed switches as we have limited management resource and a mixture of old and new equipment, some of which wont support dhcp anyway.   i have a network setup via 3 q03ude cpus. i have had no issues so far until i come to the 3 PLCs communicating over a tcp/ip connection via an open port connection on the master plc. 2 of the plcs have the ip address 192.168.3.x but one has the ip address of 192.168.11.x   they will communicate fine if on the same network with the last set of ip address numbers being the unique identifier, just not if i use the last 2 sets of numbers as the unique identifiers, even with a blank subnet mask in the PLC ethernet setting tab (no subnet masking?) with a subnet mask of 255.255.0.0 my pc will pickup all the devices on the various ip address ranges as long as the first 2 numbers are 19.168.x.x which is as expected.   how do i go about getting the tcp/ip comms to work as i want to? the only settings i can adjust on the function block are the ip address itself (in hex) and the port numbers. this is only at the master PLC end. only port numbers can be changed at the slave PLCs. any assistance would be appreciated. i have limited networking knowledge. thanks  
  22. adding signal???

    really odd one. day 3 of trying this and i had another look about. found a utility on the taskbar which allowed you to monitor and change point values. did this with the signal that i was having trouble with and this managed to change the signal. the SCADA button now works as it should? did i miss something when adding the button and me using that utility forced it to work?
  23. i wish, i am in a maintenance department. we barely have enough to keep things going, let alone spares to set up a test rig.  everything i do has to be on the live system!!! i have no station number issues when i put them all on the same network, so wouldnt have thought it would be that? did get a chance to get on it last friday as had issues with something else :(   will try again this friday!
  24. yes, everything is 192.168.x.x based. i am not using the gp.read instruction. the system is setup using a function block downloaded from mitsubishi that sets the ip address and the port information only. i am hoping it is something i need to fill in on the network parameter pages, just struggling due to my limited knowledge. having done some extra reading i have a few extra things i can try, only problem is i only get the plant on a friday evening as it is running the rest of the time. will report back on how i get on  
  25. Conveyor belt help (Ladder diagram)

    if it is not a "real life" project you can physically see, then i find it easier to visualize if i draw it out. so draw your tank and conveyor, a temperature sensor etc. once you have drawn it, you can label the inputs/outputs and then work your way from there to achieve the outcome.   as others have said, we are more than welcome to help if you have a go first