hello guys, is it possible to detect from code if machine is in restart sequence ?
so to avoid executing something, like variable initialization ? kindly !
hello guys, is it possible to detect from code if machine is in restart sequence ?
so to avoid executing something, like variable initialization ? kindly !
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
Try VRSTT system variable. You should already see it in the Switch check program that I gave you.
Best regards,
Experience is what you get just after you needed it.
hello again mr. Wizard ... can't find that "Switch check program" ... or, at least, VRSTT states : 0normal / 1restarting ? kindly !
don't worry, i just hit into Darth Vader, speaking about VRSTT states: http://www.cnczone.com/forums/okuma/...tailstock.html
i can't believe it ... they are washing his face and give him haircut ...
https://www.youtube.com/watch?v=iOn-Rv0dpHQ
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
His sample is perfect:
IF[VRSTT NE 0] NSKIP
If restart is not active, don't jump. If active (anything other than 0) jump to NSKIP
Mission accomplished!
PS> I still haven't heard how you are scaring mice on the north pole from Antarctica. Not from the sound of your crashes I hope!
Experience is what you get just after you needed it.
hello, for osp-p300l, VRSTT states : 0_restart_inactive / 128_restart_active
i needed it for something, but when i see that it works, i also used it to reduce restart-duration
i declare each phase/sequence inside a ssb; i modify general structure like is :
now i run a simple program; restart duration reduced from 6 to ~2 secondsCode:O.... variables initialization ( * ) IF [ VRSTT NE 0 ] NEND safe position / index / tool approach / cutting / safe position NEND RTS
caution ... not all sequences are subject to this ... tailstock for example
if " IF [ VRSTT NE 0 ] NEND " would be 1st line inside the ssb file, than restart will take place after this sequence; so desired phase to restart will be skiped
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
Of course use caution when skipping during a restart since you could be skipping code that is important. In your example, you just skipped all of your "safe positions".
You are correct that restart duration can be shortened, but graphics information, tool calls, etc. will be off so you need to make sure that you are calling up EVERYTHING needed to restart properly.
BTW since you are going down the "dangerous road" (careful kitty) you can also number search or scroll to a point in the program that you want to restart at and then press INTERLOCK and CYCLE START at the same time to begin from that point. Of course the same rules apply, you MUST be at a safe restart point. Typically I will put in safe restart points such as NT1 for tool 1, NT5 for tool 5, etc. so that I know I have a good restart point for each tool. My cad does this automatically when I use it.
Best regards,
PS> still waiting :-) switch check program attached - change extension back to .SSB after download.
Experience is what you get just after you needed it.
only code before restart position is skiped, including " safe positions(SP) " ... during restart i don't take into consideration SP from previous operationsyou just skipped all of your "safe positions"
- also, for continuity reasons, there is always a conection between "end_sp of one sequence" and "start_sp of next one"
- they share at least X or Z positions; i use :
.... X_fix & Z_fix for OD tools that work near parts front
.... only X_fix and random Z for OD tools that work near parts end
.... only Z_fix and ranfdom X for ID tools
but graphics information >>> this is not critical ...yes, it helps ... i don't use itwhen restarting i don't call tools, but sequences ... i write each sequence inside a ssb, and just call them from main program ...tool calls
there is an image with sequences for a program that runs now :
...first column holds adrreses for each phase
...2nd call soubroutine
...3rd is for coments
...4th is for tool description
...5th is for required P cadran
...6th was added today, and it highlight phases that are skiped during restart
there are 16 phases and 8 tool references ... there are :
... identical tools on turret
... phases performed by same tool
modular / fast to see / easy to import, export, mix like a rubik cube
press INTERLOCK and CYCLE START at the same time to begin from that point >>> i did not know that ... i'll try itstill waiting >>> working on sky is my lower limitswitch check program >>> this is new ... i will inspect it / at first glance looks alien
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
i can locate restart phrase/address only by search ...number search or scroll
i have tried to scroll, but it does not work : i pushed "down arrow" , " page down "
also, i enter " edit mode ", there i have scrolled to desired position, but i can't restart from "edit mode" ... well / i don't know what you reffer by scrolling ... i tried
i'll try anything you wish ... if you wish ...
once i locate desired position, by search, i press attached button + greenthen press INTERLOCK and CYCLE START at the same time to begin from that point
if i press IL + green ( concomitent ) , than i receive an error
idea was to reduce restart duration, and so far i succeded by going down the "dangerous road"... so ...
i tried what you said, because i thought that it may be an alternative ... even if solution described at post 5 works, i would be glad to avoid it and instead use "scroll"+"IL" or whatever buttons, that works faster
restart duration is long, because machine verifies all stuff till that point ...
sometimes programs are simple, but long, so restart duration will be increased, a lot of stuff will be verified, but all will be perfect in the end ... so in this case is normal to wish for a phisical restart : just start from there ... don't verify, i tell you that is all good so far
just start from there >> if a lot of restarts occure at same position, maybe is better to split the program right there ; also, a GOTO near program begining will solve it
don't verify, i tell you that is all good so far >> this is the " dangerous road" ; well, i am comfortable with it, and what i mean is that i don't feel like making experiments ... i had this in mind for long time, and darth vader just came in
PS : there are things still left mysterious here :
....swith check : no time 4 it so far
....your waiting ....
....and i just observed that under darth vader is morris midwest label ... good day to you mr wizard
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
You must be in a reset condition in order to scroll using down arrow in auto mode. Then interlock+cycle start will work. You can also scroll after doing number search.
Experience is what you get just after you needed it.
hello, it works :) once you switch to auto, also must focus program window ... in auto there are 3 zones on screen that can receive focus ( pls see image ), and i was not where i should be; once a zone is focused, it is bounded by that blue rectangle :)interlock + cycle start
using IL+play on code with M66, requires M867 :)
is interesting, because :
...... i have always M867 at program begining, and so it seems that IL+play skips it :)
...... if tailstock should be engaged, but i restart by IL+play with tailstock at home position / not engaged, than i receive a tailstock error
...... so it skips M867, but not the tailstock .... hmm
...... normal restart does not require M867 inside every sequence ...
so general structure, now, is as below :
thx mr wizard :)Code:O.... variables initialization ( * ) IF [ VRSTT NE 0 ] NEND M867 safe position 1 < index M66 > < S / SB ... > < tool approach M63 > cutting safe position 2 NEND RTS
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
il+play :il + play / skipping behaviour
......1) does not skip tailstock advance
......2) skips M867 from program begining
......3) skips tailstock retreat from program begining
i use 3) because :
...... safety reason, to be sure that tailstock is at home position every time the program starts / i can remove it, so operator should be more carefull
...... otherwise, if i remove it, than i must switch that key twice for each program run ; if i keep it, than key is always in the same position, and i let it be like that till next cnc setup ... i guess in 1 month ? ... i pray to " short setups & long machining " god ... actually i pray to "no setups & no fixtures" god
it would be nice to have no worries about this skipping behaviour, because ... because potatoes can be fried ...
i will try again, maybe i am missing something ... later ... nope, "il+play" fails on tailstock where "search+restart" works ...
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
WTF has frying potatoes got to do with a Sequence Restart Skip programming sequence???
You are a strange person.
Whether you "Skip" anything in a restart mode is totally up to you and your programming method (what ever the hell that might be) there is no ODD behavior involved... only you
If you program to skip in a restart state then the program WILL skip, otherwise it will not... Why is that strange?
there are discussed issues about restarting : " scroll + IL + green (method_1)" vs " search + restart button + green (method_2)"there is no ODD behavior involved... Why is that strange?
in the attached movie, there is restarted same location, with method_1, and after with method_2; as you can see, method_1 failes, while method_2 goes nice
so far method_1 skips things like :
......M867 from program begining
......tailstock retreat from program begining
......so there is something else
there are behaviour differences between these 2 methods; as you can see, in post 10, i had to modify the program for method_1 to workWhether you "Skip" anything in a restart mode is totally up to you and your programming method (what ever the hell that might be)
so skiping depends on restart method, and not on code
programming approaches may vary; you can obtain same part differently ; whatever you do, can't avoid M55 / M56 for tailstock ...
i don't know ... really have no clue ... ... is it grammatically incorrect?WTF has frying potatoes got to do with a Sequence Restart Skip programming sequence???
with a bit of luck this thread can turn into a war zone ... again
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
this post is only a modest example; nothing more ...
( . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . )
beside structure from post7, i also log data for each code variant
if enough functionality is added to consider a new code variant, than i keep the old one, and make modifications inside a new copy; for each variant i highlight differences; in the attached image, variants 5..7 are for restart procedures, and they are labeled "unsafe"
latest variants may be machinable, or demo-tests ... like this i can always go back to a previous safe state and continue from there
programs, and not only, i always back-up on a memory stick and also at home ... just in case, if one PC crashes, i have a spare 1 meter near, or at home, that has all i need to continue without interruption
for data backup there are also clouds, but i don't like them, because they require net connection ...
i use " free file sync " ... here : FreeFileSync - Free Backup and File Synchronization Software
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
if "IL+play" skips something, than just insert skipped code @ each operation begininglL + play / skipping behaviour solved
in my case :
.... tailstock to safe position, when tailstock is used, otherwise key must be switched before restart to right, and after restart, to left
.... M867 to allow M66
note : code add-ons are not neccesary when restarting by " search + restart button + play "
Code:O.... send tailstock to safe position variables initialization ( * ) IF [ VRSTT NE 0 ] NEND M867 safe position 1 < index M66 > < S / SB ... > < tool approach M63 > cutting safe position 2 NEND RTS
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
Mill guys are familiar with the number search+cycle start method, however mills don't require the IL button be pressed to do so.
On a lathe, safety can only be achieved by not running the machine. If you want it completely safe, turn off the power, kick the breaker, shut off the lights and go home. Respectfully.
I completely understand "dummy proofing" a setup, but as soon as you do, they make a dumber dummy.
That said, during a restart with an NC tailstock especially (or programmable tow along for that matter) it acts "weird" sometimes. But only to the operator.
Best thing to do is create safety checks for each operation checking each specific thing that must be true for something to be safe and if it isn't true, do something else first.
In other words:
PART.MIN
CALL OOP1
CALL OOP2
CALL OOP3
CALL OOP4
M2
OOP1
LOAD VARIALBES
CHUCK CLAMPED?
TAILSTOCK ENGAGED?
COOLANT ON?
SEATS AND TRAY TABLES IN FULLY UPRIGHT POSITION?
FACE PART
RTS
OOP2
LOAD VARIALBES
CHUCK CLAMPED?
TAILSTOCK ENGAGED?
COOLANT ON?
ARMS AND FEET INSIDE THE RIDE?
CENTER DRILL
RTS
OOP3
LOAD VARIALBES
CHUCK CLAMPED?
TAILSTOCK ENGAGED?
COOLANT ON?
YOU SURE YOU'RE WIFE'S OUT OF TOWN?
ENGAGE TAILSTOCK IF NOT ALREADY...
(OR)
IF ENGAGED, SKIP
CALL OOP2
SKIP
(END OR)
TURN PART
RTS
OOP4
LOAD VARIALBES
CHUCK CLAMPED?
TAILSTOCK ENGAGED?
COOLANT ON?
GUESS YOU WERE WRONG.
ENGAGE TAILSTOCK IF NOT ALREADY...
(OR)
IF ENGAGED, SKIP
CALL OOP2
CALL OOP3
SKIP
THREAD PART
RTS
I've also used an operation counter via local/common variables to count how many operations have been done and based what it can/will do on that number
My advice, simplify your programs.
Yes, a machine can be crashed.
I've crashed a machine. Today probably.
But, you cannot prevent it.
My recommendation is make it as easy as possible for an operator to restart by limiting his options and at a certain point, the part will be worth less than the time it takes to restart it (possibly) or the costs of crashes due to incomplete parts being restarted.
IE: if it is incredibly difficult to restart a part once the tailstock has been engaged, the down time of repair and the repair itself will cost way more than whatever part you're making.
I HIGHLY discourage the down arrow/number search then IL+C/S method of restart. Talked to a guy a year or so ago who had a mill guy running a lathe do that on a lathe that was doing 3 dozen safety checks but he didn't know how to do a lathe restart.
LB3000 w/ 400hrs on it. Total. He crashed so hard into the spindle he broke the X axis slide of the machine because of it.
At some point, your macros and safety checks become the CAUSE of crashes rather than the PREVENTION of them.
Just my two pennies.
CHUCK CLAMPED ? >>> machine checks that by defaultIf you want it completely safe, turn off the power, kick the breaker, shut off the lights and go home. Respectfully >>> that's the spirit ; don't lose it
TAILSTOCK ENGAGED ? >>> machine checks that by default
COOLANT ON ? >>> is it possible to verify if, after M08, operator stopped cooland from panel ?
SEATS AND TRAY TABLES IN FULLY UPRIGHT POSITION? >>> i always instruct my operators to move turret up & right before a restart ... i guess i may verify from code stuff like that, but i bet on operator's attention
this is nice ... sneaking jokesYOU SURE YOU'RE WIFE'S OUT OF TOWN?
once i was talking with a friend about old cinema cartoons parents were going with their kids, so not to leave a child alone .... so far so good
well, guys from cinema, from projector, where inserting xxx scenes during the cartoons these scenes were very short, very fast, so out of kids reaction time, but just enough for the adulst to start thinking ... is that kind of timing, when things happen so fast, and you wake up long after
i just rememebered something : i was breaking because traffic lights were red ... it was night ... i was looking straight ahead, and i saw a light shape on my rear-mirror ... light shape, not head lights ... so i changed my eyes to the mirror ... and then i saw in front of my car, on the near street lane a nissan gtr ... this guy in a fraction of a second reduced speed from whatever and zig-zaged between 3 lanes ... also, even if breaking was hard, there had been no tire sounds ... also machine front did not lean ... it was so natural ... at green it launched ... i was looking and i continued my way home thinking about that
I've crashed a machine >>> me too ; so far i recorded 2 crashes : i remember 1st one : i was looking how a big drill was going to hit the chuch, and i did not know what to do so i just continue looking ... i knew i will be in troubleit is incredibly difficult to restart a part once the tailstock has been engaged >>> why ? it's so easy & boring ... i have such a setup right nowall the best teaholeAt some point, your macros and safety checks become the CAUSE of crashes rather than the PREVENTION of them ... it may be true ; so called " unsafe sentiment of safety " ; when you do something wrong, being sure is correct
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
i understand, and i don't go like this all the time; i believe that ideas about this issue are between these 2 limits :I don't bet on any operator doing anything. Ever. My idea of safety checks include verifying the coolant is on.
......1) this is the operator, thank god he come to work, let it work how he can, because cnc spins without him; hope this time he won't forget to push green button
......2) jesus is operating
i go with (1) on stable setups, easy parts, and i use unqualified opeartors, like young girls
i go with (2) on unstable setups : here i use veterans ...
i have attached parts crafting chart, for 3 days, each with 2 shifts : yellow is veteran ; blue is newbie
difference is huge, and so i will take actions to raise newbies productivity ... so i bet on operators , but also do my best to raise their odds, only when necessary
PS : if someone has an idea how to auto-generate this charts from cnc is more than welcomed
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg
i asked myself many times why is there such a restart method ? i think that it is there so to reduce restart duration when you are sure what you do
otherwise, you can see how life goes by, while the "normal restart sequence" goes through the program, through each code line
however, meanwhile i worked on this, and i can say that :
... i use VRSTT in such a way that "normal restart sequence" jumps over operations, but not over critical points
... so i can "restart normally" almost as fast as "INTERLOCK+CYCLE START", and still being safe no more life waste
... however, "INTERLOCK+CYCLE START" rocks
Okuma may optimize the "normal restart sequence", so to make it perform considerably faster, but this involves much more than salting a program with VRSTT
Ladyhawke - My Delirium, https://www.youtube.com/watch?v=X_bFO1SNRZg