Need Help! If statement addressing error


Results 1 to 7 of 7

Thread: If statement addressing error

  1. #1
    Activation process Dueulear's Avatar
    Join Date
    Aug 2018
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default If statement addressing error

    Hi i am new to cnc i have been trying to write a program for an okuma mcvII bridge mill we have at work this is a relatively simple program for face milling hr plate to dcf we process 4x12 foot plate with 8” face mills our toolchanger dose not work so tooling is swapped manuelly.

    The controller is a OSP-U100M
    The manuel i have is publication # 4186-E dated march 1998

    The basic program structure is to set xyz at one corner have the operator give length and width and have the program cut only on the x axis feed starting at tge outer edges and working to the center then stopping.

    I have all the code wrote out and was trying to use a simple if statement and 6 varribles to govern the loop and table travels.

    The code will run all my movements flawlessly in a g code simulater but on my controller it will not move to the line i address in the code

    The error given is if goto statement address not found

    My varriables are set as vc1=1 all as seperate blocks vc4 is my loop counter and vc5 is the quantity of passes required to mill the plate

    My numbering system for the entire 48 lines is as follows

    N01 g20g90
    N02 some g code
    ...
    N13 Loop starts here
    ...
    ...
    N42 IF [VC4 LE VC5]N13
    ...
    N48 M30

    This is the syntaxt and grammer shown in the programming manuel we have for the machiene.

    Please someone tell me i am making a total noob mistale somewhere my addresses match why caint the controller find the N13 address?

    Thanks

    Du

    Similar Threads:


  2. #2
    Member
    Join Date
    Feb 2011
    Location
    usa
    Posts
    353
    Downloads
    2
    Uploads
    0

    Default Re: If statement addressing error

    does your control have macro ability ?
    to do a quick check in mdi type vc1=1 and see if it alarms out if not did it change vc1 to 1



  3. #3
    Member deadlykitten's Avatar
    Join Date
    Jun 2015
    Location
    Antarctica
    Posts
    4154
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    hi dueulear, check previous post by rcs60, about macro/user task option, and, if it works, then this : it should deliver VC1 = 22 / kindly

    Code:
     
           VC1 = 0
     
        N1 VC1 = VC1 + 1
        IF [ VC1 LT 22 ] N1
     
     M02
     


    we are merely at the start of " Internet of Things / Industrial Revolution 4.0 " era : a mix of AI, plastics, human estrangement, powerful non-state actors ...


  4. #4
    Activation process Dueulear's Avatar
    Join Date
    Aug 2018
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    Thanks for the test code i will try that on Monday as soon as i get in in the meantime i have a few more questions as i am sure it will not run.

    the reason i am certain is that i can get an if statement to work just fine as long as i am not addressing another line of code
    if i write the code as you typed it with a space between the end of the if statement and the address the controller will error out and tell me via it's
    internal help file that i did not specify an address. if i write it without the space as in "IF [VC1 LT 22]N1 " It will error out and tell me address not found.

    so i just want to bounce a few more questions off you before i go in Monday so i can have something else to try if macros truly are enabled.

    Is it possible this controller will only search downwards in the code for an address?
    when i run this code all the other variables seem to work as the program runs as expected with dimensions given as long as i remove my second if statement.of course this limits me to 2 passes (not very useful).

    would it make a difference to name my looped code as a program and called it?

    dose anyone know if there is a quirk specific to okuma controllers or this controller (OSP-U100M) when it comes to addressing the help file shows address as 5 charterers i have tried this and the controller gives the same errors.

    is there a system peramiter that would disable user task feature?

    thanks again for all your help.

    du

    my full code is as follows

    O022
    N01 G20 G90
    N02 G15 H1
    N03 G94 M12
    N04 VC1=000.0 (LENGTH OF PLATE X)
    N05 VC2=00.0 (WIDTH OF PLATE Y)
    N06 IF [VC2 EQ 0] VC2=1
    N07 VC3=2.5 (Y POSITION OF FIRST PASS)
    N08 VC4=1 (LOOP COUNTER)
    N09 VC5=FUP[VC2/11] (RAISES VC2 TO NEXT INTIGER UP)
    N10 VC6=VC2-2.5
    N11 S200 M03 (LOOP BEGINS)
    N12 G00 Z10.0 X=VC1+6 Y=VC3
    N13 G00 Z1.0
    NNN G01Z0.0 F100
    N14 G56 H1
    N15 G04 P1..0
    N16 M22
    N17 M24
    N18 G01 X=VC1 F40.
    N19 G01 X-6.0 F40.
    N20 M25
    N21 M23
    N22 G00 Z10.0
    N24 M01
    N25 G00 Y=VC6
    N26 G00 Z1.0 F100
    N27 G04P1
    N28 M22
    N29 M24
    N30 G01 X-6 F40.
    N31 G01 X=VC1+6 F40.
    N32 M25
    N33 M23
    N34 G00 Z10.0
    N35 M01
    N36 VC3=VC3+5.5
    N37 VC6=VC6-5.5
    N38 VC4=VC4+1

    N39 IF [VC4 LE VC5]N11 (IF REMOVED REST OF CODE WORKS WITHOUT ERRORS.
    IF LEFT IN CONTROLLER CANNOT FIND ADDRESS)

    N40 G00 X=VC1+6 Y0.0
    N41 M30



  5. #5
    Activation process Dueulear's Avatar
    Join Date
    Aug 2018
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    I just found this detail in the user task section of my programming manual

    Up to 30 sequence labels may be used, which include those not used to specify the destination of a jump. Failure to follow this limit will result in an error. It is recommended to use sequence labels only for blocks which will be used as the destination of a jump.

    with 48 named lines in my last test code i can see how line 13 would be overwritten and ignored as an address as only lines 10-48 would remain in the buffer if 48 addresses where loaded into a list with only 30 positions.

    this might be my problem as i was trying to be all modern by labeling every line of my code.

    du



  6. #6
    Member deadlykitten's Avatar
    Join Date
    Jun 2015
    Location
    Antarctica
    Posts
    4154
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    hello dueulear

    Up to 30 sequence labels may be used, which include those not used to specify the destination of a jump. Failure to follow this limit will result in an error. It is recommended to use sequence labels only for blocks which will be used as the destination of a jump


    this happens when you read the manuals ... maybe you lost some time with searching, but at least you found something reaaaaly interesting

    this might be my problem as i was trying to be all modern by labeling every line of my code
    there is nothing modern about labeling each line, but more load on the control

    talking about times < ms

    if you wish to be "modern", get a kitty if you wish to be "all modern", get all kitties

    can you remove those labels ? do you need help to remove them automatically ?

    Is it possible this controller will only search downwards in the code for an address?
    controller never searches downwards, but from the begining of the code location, or, more precise, from the begining of code nesting level :
    ... if code is inside a *.min file, it will search from the begining of that file ( no nesting level )
    ... if code is inside a *.sbb file, that is called from a *.min file, it will search from the begining of the ssb file ( nesting level 1 )
    ... if code is inside a soubroutine, thus between O**** and RTS, it will search only inside that soubroutine ( nesting level >=1 )

    search is done from the begining of the active nesting level, and it is restrained only to the active nesting level

    would it make a difference to name my looped code as a program and called it?
    why not ... try this : CALL OSUB Q5 / kindly

    we are merely at the start of " Internet of Things / Industrial Revolution 4.0 " era : a mix of AI, plastics, human estrangement, powerful non-state actors ...


  7. #7
    Activation process Dueulear's Avatar
    Join Date
    Aug 2018
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    I guess by modern i meant being unconcrned about saving a few bytes of memory by not numbering code lines

    When i look at a 50 line or less program with no more than 20 chareters per line i don’t think memory hogg but a 1980 somthing programmer might????

    Well i do like kitties

    Thanks again i will let you all know if this clears up my issues



  8. #8
    Member deadlykitten's Avatar
    Join Date
    Jun 2015
    Location
    Antarctica
    Posts
    4154
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    hy dueulear just like you said, using less labels means also less flash memory size, and less processing time

    saved amount is less than 1ms / block, thus it does not affect ( todays ) machining at a scale that matters, especially because of the read-ahead capability

    it would be a problem on a cnc without read-ahead + without nurbs + high feed + short toolpath segments

    can you edit your cam, so it won't put labels anymore ?

    i try to use labels only when required / kindly

    we are merely at the start of " Internet of Things / Industrial Revolution 4.0 " era : a mix of AI, plastics, human estrangement, powerful non-state actors ...


  9. #9
    Activation process Dueulear's Avatar
    Join Date
    Aug 2018
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default

    Quote Originally Posted by deadlykitten View Post
    hy dueulear just like you said, using less labels means also less flash memory size, and less processing time

    saved amount is less than 1ms / block, thus it does not affect ( todays ) machining at a scale that matters, especially because of the read-ahead capability

    it would be a problem on a cnc without read-ahead + without nurbs + high feed + short toolpath segments

    can you edit your cam, so it won't put labels anymore ?

    i try to use labels only when required / kindly
    Sadly i do not have any cam software or cad as all we do is face mill plate and square barstock our cnc needs are pretty simple i wrote the macro long hand and entered it through the controllers interface as i also do not have access to ant periferial I/O devices that will connect to the 1998 box????


    Probably why i am programming it not the guy from corperate who is 15 years younger and really good with all our modern equipment

    I found tgere is actually a peramiter setting that will allow 3 diffrent modes

    A: unlimited addresses branching allowed
    B: 30 or less addresses branching allowed
    S: no branching

    This seemes to have been added as a memory management feature
    Concidering the controllers limited capacity and resources

    It is kinda funny as i origonaly learned programming in 1995-98
    Right about when ram and flash started geeting cheaper

    It seemes i have a late 90’s machiene with early 90’s controller

    Kinda a fun reminder of where we came from not so long ago

    Kinda sucks i caint check peramiters and my edit till
    monday though

    Funny thing i had to find out about those settings by reading about them in 3 diffrent places in two diffrent manuels where they say “by selecting the peramiter” without giving it a name or catagory or where to find it.

    Then spend a good hour going page by page in the manual before i found where to set it ????.

    Blast from the past lol

    Thanks again



  10. #10
    Member deadlykitten's Avatar
    Join Date
    Jun 2015
    Location
    Antarctica
    Posts
    4154
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    Funny thing i had to find out about those settings by reading about them in 3 diffrent places in two diffrent manuels where they say “by selecting the peramiter” without giving it a name or catagory or where to find it.
    yup, i remember reading 3-4 hours one page about load-monitor i believe that the manuals are translated at a lotery-slot-bar, or something like that ....

    It seemes i have a late 90’s machiene with early 90’s controller
    somehow, even if the osp seems cool, i feel that it is a bit outdated; is easy to have a device updated, but a cnc is a different story ...

    still, the win based osp is pretty capable

    Sadly i do not have any cam software or cad as all we do is face mill plate and square barstock our cnc needs are pretty simple i wrote the macro long hand and entered it through the controllers interface as i also do not have access to ant periferial I/O devices that will connect to the 1998 box????
    maybe you should try to interface that controller somehow ... i don't know how you feel about it, but for me is a waste of time to type near the machine

    i had been there, now i program from a pc and send files fast to the cnc, like copy-paste

    once you achieve such a speed, you get used to it, and there is no going-back ( at least until network fails or pc problems begin, like random shutdown, etc )

    Kinda sucks i caint check peramiters and my edit till monday though
    i don't know / enjoy your time, monday is for working ... chill out, is sunday / kindly

    we are merely at the start of " Internet of Things / Industrial Revolution 4.0 " era : a mix of AI, plastics, human estrangement, powerful non-state actors ...


  11. #11
    Activation process Dueulear's Avatar
    Join Date
    Aug 2018
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    Well changing the system varrible took care of evrything it works great now
    Believe it or not this 1 face milling program covers evrything we do so i really wont be writing anything else for it.

    Any time i wasted was done while the machiene was running plate with another program that kinda gives you 30 min to do somthing else while you r
    Machiene is running.

    Luckily the controller lets you edit while another program runs

    Thanks again for all your help



  12. #12
    Member deadlykitten's Avatar
    Join Date
    Jun 2015
    Location
    Antarctica
    Posts
    4154
    Downloads
    0
    Uploads
    0

    Default Re: If statement addressing error

    hy dueulear

    I found tgere is actually a peramiter setting that will allow 3 diffrent modes
    Well changing the system varrible took care of evrything it works great now
    if you wish, consider sharing the location of the parameter and / or the system variable ... maybe a poor guy from 2075 will have same problem, and you will be in ibiza

    Believe it or not this 1 face milling program covers evrything we do so i really wont be writing anything else for it
    omg one more program edit & i guess you are done with writing 4 life ...

    Thanks again for all your help
    all the best

    we are merely at the start of " Internet of Things / Industrial Revolution 4.0 " era : a mix of AI, plastics, human estrangement, powerful non-state actors ...


Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


About CNCzone.com

    We are the largest and most active discussion forum for manufacturing industry. The site is 100% free to join and use, so join today!

Follow us on


Our Brands

If statement addressing error

If statement addressing error