1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. Fanuc Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

DCS-zones with variable tool length

  • flipflapflop
  • January 23, 2025 at 12:36 PM
  • Thread is Resolved
  • flipflapflop
    Posts
    6
    • January 23, 2025 at 12:36 PM
    • #1

    Hello,

    I'm currently learning how to work with FANUC robots and I've come across problems while trying set the DCS-zones for the SR-6ia robot I'm testing with.

    My main goal is is to prevent the robot from drilling into it's work surface (so i want to "Restrict" the Z-axis in my world-frame or Joint 3 in the joint-frame). I have tried 2 different methods to achieve this (Joint position check & Carthesian position check).

    The main problem I have is I am using a special tool that can switch between a suction cup and a clamp with a valve. The suction cup is like 2 cm longer than the clamp.

    When I use the suction cup to set the minimal value of axis 3, this coördinate will be incorrect when I switch to the clamp-tool.
    How are situations like this normally handled?


    Then I tried using the cartesian position check. Here I tried setting the working zone using diagonal points.
    Here I noticed that the model in the 2D-view doesn't match reality. Here is a picture of my robot and the 2D-view:

    Foto-robot.pngFoto-3-D-model.png

    It it impossible to set any meaningful limit in the Z-axis because apparently, I cannot move the flange lower than the base of the robot (according to the 3d-model). I was using user frame 0 to test this.

    (I don't think using cartesian position check is going to fix the problem of the variable tool-length, I just wanted to mention it because it makes no sense to me and I'm hoping someone can explain)

  • 95devils January 23, 2025 at 12:55 PM

    Approved the thread.
  • Nation
    Typical Robot Error
    Reactions Received
    523
    Trophies
    9
    Posts
    1,901
    • January 24, 2025 at 3:47 AM
    • Best Answer
    • #2

    Typically in industry, you program the robot to not impact its surroundings. No extra checks.

    Did you create a tool model? It doesn't look like you did.

    Your mastering may be off for J3 if it doesn't align with the DCS model.

    With that said, you can use tool switching (DCS Manual, section 7.9.1) to change the currently active tool model, but you need to do it with a safe level input to maintain rating.

    Check out the Fanuc position converter I wrote here! Now open source!

    Check out my example Fanuc Ethernet/IP Explicit Messaging program here!

  • hermann
    Reactions Received
    404
    Trophies
    9
    Posts
    2,595
    • January 24, 2025 at 9:12 AM
    • #3
    Quote from flipflapflop

    How are situations like this normally handled?

    No extra check, just make a correct program. Nearly never ever using DCS for checking of tool against a hard not moving surface. Only checking for user safety.

    Quote from flipflapflop

    (I don't think using cartesian position check is going to fix the problem of the variable tool-length, I just wanted

    Why not? You can define two switchable cartesian zones one the difference of the two tools higher than the other (that's not the correct way!). Or you can define two different tool descriptions in DCS and switch them according to actual position,and check them against the correct Cartesian zone. Normally you must use safe level input (safety rated switch directly mounted on your flipping tool) , in this case (no user safety related check) probably you can use a non safe input NSI which you can set in the program or BG logic. But you must do a risk assessment for your case.

    Easier would be defining two normal spaces (no DCS), connect the inputs to flags and then switch them according to tool state.

  • gpunkt
    Reactions Received
    119
    Trophies
    6
    Posts
    456
    • January 24, 2025 at 10:34 AM
    • #4
    Quote from hermann

    No extra check, just make a correct program. Nearly never ever using DCS for checking of tool against a hard not moving surface. Only checking for user safety.

    I have the complete opposite experience. Mostly user safety is handled with fences and/or light barriers and DCS is primarily used to protect the equipment from damage when operators (or programmers) don't take enough care or precautions while programming.

    But yeah, the DCS functions is primarily made to accommodate personal safety. But that doesn't mean that it's against any rules or anything to use it for other purposes.

    But as you also wrote, a good risk assessment is key!

  • hermann
    Reactions Received
    404
    Trophies
    9
    Posts
    2,595
    • January 24, 2025 at 11:53 AM
    • #5

    Protecting equipment by DCS is kind of personal preferences. In my opinion it is overkill.

    When you can protect users only with fences and light barriers you are a lucky guy. In the last 10 or more years I had not one robot cell where all fences where that far away from robot that he couldn't reach, and may be destroy the fence. So on every cell I had to use DCS, SafeRobot, SafeMove (depending on manufacturer) to protect user.

    Protecting equipment is a "nice to have" option. But specially on Fanucs the DCS has this silly time consuming limit, where in many cells I had no chance to check any equipment, because time limit was nearly reached with user safety. Also many programmers use DCS for homing, for me also a complete nogo.

    When users are safe, do the rest however you want an can.:winking_face:

  • flipflapflop
    Posts
    6
    • January 30, 2025 at 11:19 AM
    • #6

    Sorry for the late response, but thank you for your reactions.
    It's nice to see multiple opinions.

    Quote from Nation

    Your mastering may be off for J3 if it doesn't align with the DCS model.

    I think you're right, that makes a lot of sense.

    Mastering J1 and 2 is easy, I just need to align the visible lines on the robot. There are no such lines on J3 that I can see. Do I just need to fully extend or retract it before mastering?
    I tried googling this but I genuinely can't find anything.

    Quote from Nation

    Did you create a tool model? It doesn't look like you did.

    ...

    With that said, you can use tool switching (DCS Manual, section 7.9.1) to change the currently active tool model, but you need to do it with a safe level input to maintain rating.

    Thank you, I didn't know this was a possibility, I'll give it a shot.

    Quote from hermann

    Protecting equipment by DCS is kind of personal preferences. In my opinion it is overkill.

    The robot will be picking products from a conveyer. Our client can produce thousands of different products. Eventually our client will be responsible for teaching the products to the vision-system and setting which tool needs to be used in order to pick up the product.
    I'd sleep a lot better if i could guarantee the robot can never crash into the conveyor, even if the operator makes a mistake.

  • flipflapflop January 30, 2025 at 11:26 AM

    Selected a post as the best answer.
  • Nation
    Typical Robot Error
    Reactions Received
    523
    Trophies
    9
    Posts
    1,901
    • January 30, 2025 at 4:48 PM
    • #7

    Fanuc is very aggressive in scrubbing their manuals from the internet. I recommend getting a Fanuc webportal account setup. Your salesman can usually help out with this. All the manuals are available there.

    According to the SR6iA mechanical manual, when J3 is at its zero position, there should be a 3mm gap between the mechanical stopper, and the robot's housing.

    Quote from flipflapflop

    The robot will be picking products from a conveyer. Our client can produce thousands of different products. Eventually our client will be responsible for teaching the products to the vision-system and setting which tool needs to be used in order to pick up the product.
    I'd sleep a lot better if i could guarantee the robot can never crash into the conveyor, even if the operator makes a mistake.

    Keep in mind that DCS does not stop the robot instantly. The robot is a mechanical device, and still requires time to come to a stop. This robot requires about 50mm to bring J3 to a complete stop at 100% with a full payload. More (~12%) if the payload is less.

    You could turn on predictive stop, which causes DCS to project the model at the current velocities to ensure a stop before violating a DCS zone, but in my experience that will lead to a ton of false positives if you need to maintain a fast process.

    Check out the Fanuc position converter I wrote here! Now open source!

    Check out my example Fanuc Ethernet/IP Explicit Messaging program here!

  • TheKetteringKid
    Reactions Received
    2
    Posts
    7
    • February 10, 2025 at 9:00 PM
    • #8

    If your goal is to protect different tooling from hitting machinery or fixturing I would recemend using the toolchange function. You can toggle different user models based on the usertool frame.

    For the Cartesian Position Check you should select "Tool Change" instead of the user model. For the current tool you could simply use IO to toggle the correct one on, I choose to use a background program to see the currently selected tool and set the IO accordingly (this way if a tech is manually changing the usertool it will select the correct usermodel). Under the toolframe screen only 1 model can be selected at a time and it is very picky (part of why a background program works well here). There is a lot on the back side of this, I would recommend getting a copy of the DCS manual it is very helpful in setting this up.

    Also, if you are trying to protect anything other than machinery dont use NSI's, they are not rated for anything but that.

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Tags

  • Fanuc
  • DCS
  • TOOL
  • variable
  • lenght
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download