FANUC DCS Setup (Dual Check Safety)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey guys Adam with fanuc thanks for tuning in I had a overwhelming response from our subscribers saying please do a video on dcs so thanks for requesting it without further ado we're here before I dive right into it I have to mention that dcs it can be as complex or as simple as we make it i would recommend taking the fanuc training course you see here Fanuc america.com under the support and training tabs we do have a dcs dual check safety class you can see the the USA pricing here it's a three day class it's three eight-hour days and it's gonna teach you everything I'm gonna go into great detail and you're gonna be a pro I can't fit 24 hours worth of information into a YouTube video but I'm gonna do my best to give you a basic rundown and get you smarter than you were before you clicked on this link so let's let's let's talk about this a little bit dual check safety what is it for the the whole reason of dcs is to limit the robots working envelope limit where this robot can go and protect your investments you know don't let it crash into things don't let it leave a certain area prevent interactions with humans all that good stuff so this robot here that I put in Robo Guide I've equipped it with the advanced DCs package the basic dcs package is nice but the advanced gives you some really cool tools on at each pendant that we'll show you later diving in here when you buy a robot with the dcs package the first thing that you're going to see especially if you're in Robo guide here is a couple dcs menus some that are specific to the robot and some that are specific to what we build let me show you the robot first if I make the dcs robot model visible these bubbles these invisible bubbles they're invisible in real life obviously are showing you the protected space that is mathematically being considered as that robot moves around so as you're moving this robot around and you're running and you're doing your work any moving part of the robot which is why you don't see it on the base that's not going anywhere any moving part of the robot is protected by these bubbles so what happens is as the robot is moving and considering safe zones it's not actually the robot you know here's a servo here it's not the servo we're looking at it's this safe space around the circle around the knuckles it's not the J for link it's the space around the J for link that'll be important to understand so this comes stock from fanuc yes you can change the bubbles yes you can modify it no I don't recommend you do it we did a really good job modeling it leave it alone but what you do need to do is tell the robot what it has what's it carrying so you can see on my screen here that this gripper tooling is not being considered for safety let's get to work over here we have a dcs user model so i just showed you the dcs robot model that's easy but a user model is something that we're gonna build around here an order for a robo guide to show me the user model I first have to define that we're gonna use it and then we'll jump into it so first things first in DCs you can limit the robot's motion based on joints you know obvious jae-won where they're gonna go J 5 J 6 that's easy or you can do in Cartesian XYZ this is abundantly the popular way to do it so this is what we're talking about today so when I crack open this menu a lot to take in here and we're going to get back to it once we build a user model but I want to show you see PC is a Cartesian position check you have the ability of building and defining up to thirty-two cartesian position checks a Cartesian position check a CPC is any goal or no-go zone you can call it a restricted space a working space stay inside space or stay outside space what whatever you want to call it it is some area that the robot needs to either go inside or go outside while looking at this the the zone requirements first it's asking us what group are we doing well group one I only have one robot and then what models well by default there's a robot model of course of course we want it to look at the robot model maybe you don't maybe you don't want the arms in the links to trip your DC as a zone that's fine I'm gonna leave it in but what else do I want I also want it to look at a um a user model this this link over on the left I want it to look at a um we can also add other things we can add more user models we can add tool models we're not going to talk about that starts getting complex but for right now I'm just gonna say hey CPC look at my robot and look at my user model and then we'll get back to this alright let's build a user model so inside the user model I can build up to 16 different models per robot and of the different models that I can build I can have up to 10 elements per model so that's up to 160 elements I can build what is an element well let's go like this we'll leave that is um one and we'll just call this gripper save now what I'm gonna do a user model is building more green bubbles around your tool so the first thing it's going to say is well I want to work with element one okay where do I want to build my element do I want to build it off of J 1 J 2 J 3 J 4 J 5 maybe I have something you know bolted onto J 3 up here you know there's some mounting bolts here so maybe I have a big J box back here I need to put a bubble around that J box for this one I'm gonna say hey it's coming right off the faceplate because that's where my tools coming from now look here we're gonna skip down we're gonna look at the shape there's four ways that you can build an element and we're gonna go through these one is a point which really I want you to think of that as a sphere okay and let me show you if I say give me a radius of 300 millimeters and let me move it down 200 millimeters you know what I need to go back here pardon me I need to turn on my CPC or we're not gonna be able to see the bubble there's the bubble I'm building sorry I had to hit my checkbox in order to see the bubble let's go back to the user model so here is a bubble point a point that has a x:real ocation in space and this and that XYZ is the center of the point and then a radius so if I were to make this 400 I have a bigger one I can make it 300 and I can move it farther down from the faceplate so now if I look at this that does a good job that encompasses my tool very well it's also inefficient because the bubble is what's going to be considered when it's hitting your cpc's so I really want this kind of tucked into the tool so let's let's try something else let's try a line segment you've seen that now that I have the ability to do two points X Y Z X Y Z and a radius so let me show you what that looks like let's start at 0 0 0 and go down to 250 with that radius let's shrink that down so you get a better view what that did for me as you can see is there are two points that are now connected you see how they're connected they're connected by this sphere so what I can do we can optimize this something like that so now you can see that I have this nice and you know we could even shrink that right we could we could really optimize that and oops that wasn't shrinking it that was moving it down 175 something like that you're getting the idea but now I'm building up the model that's pretty efficient that looks good let me show you the other ways just so you know two spheres is just like the line but they're not connected so if I go like this now I have two points you know got the little snowman effect going here two points not connected by a line there's also an option that I really don't want you to use okay my recommendation is don't use this unless you have to but it's called a box so the box you have an offset and a size let me go ahead and give it a size here we have a box I can make it bigger 300 300 450 something like that you say Adam the box looks so great that's so clean why wouldn't I use that because it hogs memory terribly there's only so much memory that you can use in DCs due to the processing speed required for it to be safety rated and if you start using boxes you won't be able to use all your user models or all your cpc's it will limit you because you'll run out of memory why is that that's because I think if you were the processor if you knew a point and a radius then wherever that point is you just need to stay 300 millimeters away from that point the math is super easy but if you have a box you're running around all day doing a Pythagorean theorem and figuring out Criss crosses and okay well here's my point but where's this point where's this point where's this surface it just takes a lot of processing power don't use it unless absolutely necessary in this one for this I think my favorite is probably going to be the line segment that looks pretty good other than I'm probably gonna shorten this up a little bit maybe even a little more there we go that looks pretty darn good that has my tool completely protected no matter how it rotates yeah I could maybe make it a little better but guess what this is what we're using for now um if I wanted to do more elements I can add an element let's say we add another point let me give it a little offset so you can see it alright so you can add appendages of points and lines in etc to your user model one so you could have a tool that's bent and funny and crooked and offset or maybe you have a two up tooling or something you can build more elements of user model one so you're still in user model one you're just building more piece parts to it we don't need that don't need any of this zero zero zero I'm just gonna wipe this out because it is not relevant for this video but we will use element 1 of user model 1 perfect now that we have a user model that looks really good we know our tooling and robot is protected now we got to get into the meat and potatoes of where do we want this robot to go and not go so I'm gonna build CC one of course I can rename this I can call it let's call it the safe working space give it a nice little name apply so let's look down here this first box this is only relevant in Robo Guide it's just hey do you want it visible what color do you want it to be this is Robo guide specific by the way if you're watching this and you're thinking right now hey Adam this looks great and Robo guide how do I do it on a teach pendant I'm gonna show you that in a minute so just bear with me Robo guide makes things so much easier Robo guide is life so let's look here again at the zones we know that we're gonna consider the robot model we know we're gonna consider the user model let's look at the I'm gonna skip down because we're not building any safety frames we're just going to do everything in the world um let's look at the stop type there's three ways to handle a breach of a CPC you can either be stop the robot which is a power off so safety rated you know wham it's just like hitting the e stop there's also a controlled stop which is equivalent of hitting the whole button or pause button the robot will use the servos to decelerate and come to a controlled stop or you can do a not stop sometimes people build cpc's just to know where the robot is if you set this up as a not stop then we can take the CPC output and use that as a digital output you know to a PLC to an HMI to a conveyor whatever and just let ancillary equipment know hey the robots on the left side the robots on the right side whatever it's doing for here and now I'm gonna consider it a safety rated e stop disabling input that is an an input that disables all your work so as you look at this there are a lot of different inputs odds are you would probably be using what we call an SI R that is a safety input relay these robots come with two safety inputs they're dual channel so there's four wires and what you can do is you could wire a light curtain or an area scanner or something that says hey if there's nobody here don't stop you know maybe someone has to come and get this pallet so when there's a human in there I want the robot to stop and when there's not a human there I don't want the robot to stop so you can disable these cpc's based upon human presence by defining that and wiring something in so now we're at the fun part now we actually get to draw the zone for this video and for 99% of what you guys are gonna be doing you're only gonna be using diagonals in or diagonals out we also call it work space or restricted space you can call it safe inside or safe outside you can call it go and no go pick your favorite way but what we're doing is we're defining is the robot okay to be inside it or is the robot okay to be outside it because I love Robo guide we can do it right on screen so diagonals let's do some click and drag if I move this triad and I move it down here and then say next triad and move it up over and back something like this you can see immediately get on screen why we call it diagonals we have one triad in the lower corner corner and one triad in the upper opposing corner and that hypotenuse is used to mathematically define what box we have so as I look at this let me go back to that first triad drag him over here you know I want my robot to be able to you know reach a conveyor and a pallet or whatever in this example right so here's a nice little box I need to make the Box taller otherwise the robot will always be in breach of the box so that looks good and so now you're taking a robot that could feasibly move all over the place and you're restricting it to this box so I have these Triad locations I'm gonna say use locations you can see where the first triad and second triad are are located I'm gonna hit apply so now we have the robot model we have the user model and we have a safe inside CPC that is built let's take a look at the teach pendant the atom how do I do this if I don't have this amazing tool called Robo guide well what you do is you go menu next system DCs and everything that we just talked about over here is in here you just got to read a lot more so let's look here Cartesian position check open of all the possible Cartesian position checks remember you can have up to 32 of these bad boys I'm scrolling just for the sake of scrolling 32 of these we only have number one enabled it's called safe working space let's look at that and if you start reading look it it's everything we just designed it's a working zone diagonal so you're safe inside it's the robot group one robot model user model and nothing else and if you look down here's your XYZ for point one and point two it's a cat 0 stop if this is you know here's your disabling input if you wanted your si RS so this is everything that we already worked on just here now how do you view it though right reading this does you no good go to the next page we can view and here we have a top view side view and front view here's p-one and p-two of the diagonals let me go over here you can see the robot model in black you can see the user model in blue and you can actually see what we're building okay now because I have the advanced DCs package on this teach pennant I can click 4d graphics if I click 4d graphics now I have basically a little baby version of a Robo guide right inside my teach pendant right now it's kind of orange because we haven't applied the changes I'll talk to you in a minute about that need to apply changes but as you're you're building this thing you can look at the 4d graphics and you can see what your boxes and user models are gonna look like based on this you can do the same thing if I previous out of here and I go down to the user model that we built detail there's no user model one element one that we called gripper here it is it's the line segment of size 200 we can look in here again this is all the stuff we just worked on guys the first position is 0 the second position is 350 the radius is 200 and again if I wanted to view it I could save you and there you go look at here's a side view of the robot showing me the user model highlighted in red front view side view top view so you can do all of this from the teach pendant it's just a little clunkier but you can you can certainly get it all done so now we're in the dcs menu we have a little love note on the teach pendant and our status bar saying hey you need to apply these parameters for the user model that we set up in the CPC that we set up so logic dictates we hit apply by default all fanuc robots have their code number as all ones you can change this in your settings but from the factory it is one one one one perfect this is a little screen that allows you to scroll down through a lovely hundred and thirty nine lines of code telling you what you've changed or you can just say yeah I know what I did and hit okay now all of these changes say pending and our love note says cycle power to use your new parameters so let's cycle power do you want a cold start yep so on your real robot you can you can certainly do that using you know function cold start and that will work or you can physically walk over to the disconnect flick it off and flick it back on and our robot is powered back up looking good let's test our work guys let's uh throw this teach pendant we're in world coordinates will slow it down some and I'm just gonna start jogging this bad boy robot is heading over heading over heading over what's gonna happen so we get a nice visual representation if I show you the top-down look it you see it's the bubble of the user model right it's not the actual cooling it's the bubble we built is interacting with the CPC that we built and it's saying don't go there okay everything's stopped your teach pendant will give you a little love note at the top let me stop jogging this thing auto safe we get a little love note that says DC s Cartesian position limit if I click on it it actually says your Cartesian position limit number one safe working space group one the robot it's telling me what is being violated CPC number one is violated so what do we do while your robot is smart enough to only jog away from the violation not farther into it so if I do a shift to reset to clear the fault and do a y+ to get out of there robots happy let's continue to test let's do one more thing I want to show you one more thing let's take this bad boy and go straight up I made it little too tall let's back up very good and now go up there we go needed to violate another zone so I did that to show you that it is again it is the robot model maybe if I go to a front of you it'll be a little clearer it is the robot model it is not the knuckle of the robot it's that safe space that we have a little separation before anything happens but as soon as we have that breach it stops moving so the same thing if we look at the love note safe zone is violated okay let's do a shift reset let's bring this robot back down into happy zone okay next I want to show you some more fun stuff before we call it a day here we have a nice safe working space and I want this robot to go from the pallet to the conveyor that's awesome but you know what I don't want this robot or the tooling to smash into this rack maybe this rack has some tool changes on there or you know it's inventory they had nowhere else in your shop to put it and we can't have the robots slamming into this and it shouldn't go over there anyway okay so let's do it let's go into our dcs cpc's it's build another one okay let's call this one the something like that okay same thing I want it to consider the robot model I also wanted to consider my user model I want it to e stop but instead of diagonals in I want it to be diagonals out meaning keep the robot out of there okay real quick I'm gonna go into CPC one and make it invisible just so we can see the CPC to better let's go ahead and define this guy so I'm gonna come out here come over here and go down something like that next triad and watch what I'm gonna do I'm going to define this rack that's not too bad I'm actually pretty good on my first click um let's go back to this first one tuck it in real nice look at that now I have this rack protected almost protected area I now have a iraq protected okay I'm gonna say use locations apply so now because we're saying diagonal out that means the robot and its components the the user model always need to be out side of that but we're also saying that the robot always has to be inside of that so think in your head the boolean logic that we just devised here we've just devised this l-shaped area the robot must stay inside the green while also staying outside of the red which means your net result is this you know l-shaped floor plan a box with a box chopped out of where this robot can actually do its work and you can compound these in any multitude of ways I can put a diagonals out that's around my conveyor so that I can set parts on the conveyor but I can't jog into the conveyor and crash okay so let's apply these changes and do a quick test to show you how this is gonna work menu 0 6 DCs you can see that we added a CPC so we go apply magic 1 1 1 1 we hit OK we do a cycle power and once these [Music] are saved will jog this thing around and and see what the teach pendant has to say about the work that we're doing wonderful okay so let's let's give a little view here I'm gonna take my teach pendant I'm in World I'm gonna slow it down just a little bit all right let's start jogging toward that rack you can see I'm moving because I'm inside the green so it's happy it's moving it's having a great day boom now if I look you can see what the breech was the breech actually happened to be the knuckle I thought maybe it'd be the arm from the angle we around but it was the knuckle and look at the love note that we get from the from the status bar here DCS Cartesian position limit number to the rack hit g1 Group one which is model zero it didn't hit the tooling it hit the the actual robot so it's saying the robot model of robot one hit CPC number two which is your rack well it actually didn't hit the rack it came close to the rack right that's that's the whole point is we didn't hit anything but but you're seeing what what we have so now I can shift reset and I can back this guy up right and of course if I wanted to violate it again I could do X - there we go so now you can see that my tooling was getting too close to that rack you know we got the safety buffer around the rack and we got the safety bubble around the tool we were getting too close to the rack so the robots stopped and you can still see that CPC one is as happy as a clam we're not violating CPC one we're violating CPC - look at the the data here CPC number two the rack was violated by robot one user model one so it's telling me exactly what happened which is really nice so that is the very quick and simple basic training for DCs you guys just make sure that you model your tooling with your user model make sure you use the robot model that fanuc gave you build your cpc's maybe do some CPC outs to keep things away from your machines or your conveyors and your racks and then use CPC ins to to restrict that robot space because otherwise you know as you know your robot can go like that right so you've taken that much floor space that the robot could have eaten up and you've restricted it down to that green spot which saves you a lot of floor space which is your most valuable asset if you're in manufacturing so alright guys let me know how you liked it you know subscribe like questions in the comments and and of course to learn more and become a super-duper pro please check out the fanuc training and though they'll take it to the next level thanks so much and have fun coding
Info
Channel: Adam Willea
Views: 11,627
Rating: undefined out of 5
Keywords: FANUC DCS, Dual Check Safety
Id: 3MQxdpgopmk
Channel Id: undefined
Length: 32min 27sec (1947 seconds)
Published: Wed Jul 15 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.