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 working sphere?

  • jstolaruk
  • February 7, 2025 at 5:27 PM
  • Thread is Unresolved
  • jstolaruk
    Reactions Received
    12
    Trophies
    4
    Posts
    184
    • February 7, 2025 at 5:27 PM
    • #1

    Any ideas on create to have a working sphere? It is to restrict the EOAT from moving to far from a feed-thru on a wall so as not to damage an umbilical cord connected to it.

    I've thought about a cube (working zone diagonal) sized for the sphere interior but that may be too restrictive.

    Or working zone (lines) that kind of crudely creates a sphere.

    I think I'm stuck with the latter.

  • HawkME
    Reactions Received
    568
    Trophies
    10
    Posts
    3,268
    • February 8, 2025 at 5:23 PM
    • #2

    If it is just for machine safety not human safety then you could use a combination of DCS and BG logic.

    DCS could be a less restrictive sized cube, maybe with the corners knocked out by DCS out zones.


    Then you could use BG logic to monitor the sum of squares of the current position and ensure it is below a certain limit or trigger a hold or stop signal.

  • Nation
    Typical Robot Error
    Reactions Received
    523
    Trophies
    9
    Posts
    1,902
    • February 10, 2025 at 10:25 PM
    • #3

    I liked the idea of creating a "poor man's" spherical world zone.

    Here it is:

    Code
    /PROG  POORMANS_WZ
    /ATTR
    OWNER        = MNEDITOR;
    COMMENT        = "In Sphere?";
    PROG_SIZE    = 733;
    CREATE        = DATE 25-02-10  TIME 16:20:56;
    MODIFIED    = DATE 25-02-10  TIME 16:20:56;
    FILE_NAME    = ;
    VERSION        = 0;
    LINE_COUNT    = 20;
    MEMORY_SIZE    = 1057;
    PROTECT        = READ_WRITE;
    TCD:  STACK_SIZE    = 0,
         TASK_PRIORITY    = 50,
         TIME_SLICE    = 0,
         BUSY_LAMP_OFF    = 0,
         ABORT_REQUEST    = 0,
         PAUSE_REQUEST    = 0;
    DEFAULT_GROUP    = *,*,*,*,*;
    CONTROL_CODE    = 00000000 00000000;
    LOCAL_REGISTERS    = 0,0,0;
    /APPL
    /MN
      1:  !Sphere Location (World): ;
      2:  ! X,Y,Z: ;
      3:  R[11:Sphere X]=(1431) ;
      4:  R[12:Sphere Y]=(-506)    ;
      5:  R[13:Sphere Z]=(542) ;
      6:  !Sphere Radius: ;
      7:  R[14:Sphere Radius]=(300) ;
      8:  !Current Position of ;
      9:  ! the active TCP in World. ;
     10:  ! X,Y,Z: ;
     11:  R[15:Curpos X]=($SV_INFO[1].$CART_POS[1]) ;
     12:  R[16:Curpos Y]=($SV_INFO[1].$CART_POS[2]) ;
     13:  R[17:Curpos X]=($SV_INFO[1].$CART_POS[3]) ;
     14:  !Calc dist ^2 ;
     15:  R[18:Dist^2]=(((R[11:Sphere X]-R[15:Curpos X])*(R[11:Sphere X]-R[15:Curpos X]))+((R[12:Sphere Y]-R[16:Curpos Y])*(R[12:Sphere Y]-R[16:Curpos Y]))+((R[13:Sphere Z]-R[17:Curpos X])*(R[13:Sphere Z]-R[17:Curpos X]))) ;
     16:  IF (R[18:Dist^2]<(R[14:Sphere Radius]*R[14:Sphere Radius])) THEN ;
     17:  F[1:In Sphere]=(ON) ;
     18:  ELSE ;
     19:  F[1:In Sphere]=(OFF) ;
     20:  ENDIF ;
    /POS
    /END
    Display More

    I tested it, and it works. I initially tried using local registers to do it, but it looks like background logic does not like them

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

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

  • jstolaruk
    Reactions Received
    12
    Trophies
    4
    Posts
    184
    • February 11, 2025 at 12:12 AM
    • #4

    Thanks Nation.

    I'll route the flag to DCS and whack them with a DCS fault if they try jogging the robot so far that it could damage the cable (its a laser, would be expensive to replace, and cause a bunch of downtime).

    -Jeff

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

Similar Threads

  • Detecting collision in Robogiude and setting DI.

    • STRAW
    • March 31, 2021 at 10:05 AM
    • Fanuc Robot Forum
  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