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. Kawasaki 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

Frame (or Base) in Block Language

  • Nation
  • January 29, 2020 at 8:58 PM
  • Thread is Unresolved
  • Nation
    Typical Robot Error
    Reactions Received
    553
    Trophies
    9
    Posts
    1,935
    • January 29, 2020 at 8:58 PM
    • #1

    I've been tasked with writing a short document on creating and updating existing block programs to new fixtures.


    I'm used to doing this in Fanucs by creating a user frame, selecting that frame, teaching the path, then updating the frame when the fixture moves. I've been reviewing the documentation, but I am at a loss on how to do this in block on a Kawasaki. It looks like the base is involved somehow, but I am not sure I am looking in the right area, and I am having trouble finding more information.

    Can frames be taught to block positions like they can to positions in a Fanuc, or do I have to use AS for this?

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

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

  • kwakisaki
    Reactions Received
    694
    Trophies
    12
    Posts
    4,770
    • January 29, 2020 at 9:43 PM
    • #2

    In short, I think you may have a frustrating journey with this as Block programs contain Joint angles as the stored positions not transforms.

    There are of course areas to setup Base and Tool values in the Aux functions which then can be used in conjunction with the built in Program Conversion Option usually in Aux function 01 which then allow 'shifting' of these joint angles relative to the Base or Tool values.

    However these functions are just executable macro's, where you specify the program and step numbers for it to be applied on, it then executes the macro and recalculates the new joint angles and updates the Block steps accordingly with the new joint angles.

    Personally, I have never come across any form of 'User Frames' being able to be applied within the Block programming formats.

    This may well be a question best directed to Kawasaki.

    The positive side of this though, is that AS is very good at converting the Joint angles to transforms, but no automatic way.

    For instance contained on a Block step are the interpolation and joint angle values along with other elements:

    JOINT SPEED9 ACCU1 TIMER0 TOOL1 WORK0 CLAMP1 (OFF,0,0,O) 2 (OFF,0,0,O) OX= WX= #[3.5749,-9.737,-142.05,0,-47.688,-3.5796] ;

    Ignoring all the other elements except for the interpolation and joint angles, the AS equivalent of this is:

    JMOVE #PPOINT (3.5749,-9.737,-142.05,0,-47.688,-3.5796) ;

    By using the POINT command, you could convert this to the transform equivalent:

    POINT pos1 = #PPOINT (3.5749,-9.737,-142.05,0,-47.688,-3.5796)

    Other alternative conversions, you could insert a HERE command in between each Block step and then step the program through and create the transforms along the way.

    However, I don't see any 'fast track' options available.

    So I would direct this towards Kawasaki and see if there is a solution.

    View my channel at Industrial Robotics Consultancy Limited - YouTube

  • Nation
    Typical Robot Error
    Reactions Received
    553
    Trophies
    9
    Posts
    1,935
    • January 29, 2020 at 11:34 PM
    • #3

    I figured it would be a long shot. AS it is then.

    One more question.

    When you hit record on a point that is something like JMOVE frame+point, is the controller smart enough to record only the point, or do you have subtract the frame out after touchup?

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

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

  • kwakisaki
    Reactions Received
    694
    Trophies
    12
    Posts
    4,770
    • January 30, 2020 at 12:15 AM
    • #4

    JMOVE frame+point

    Any compound instruction like your example, when using the POS MOD button on the step will rewrite the values of the furthermost location relative to the preceding location with the current position.

    In the above example, the values stored/taught will be relative to 'frame'.

    ie how far am I'm away from frame and assign those values to point - like an offset of frame.

    Just like JMOVE table+plate+food

    'Lift the table, place it somewhere else, and the plate and food follow it'

    'Move the food around the plate and it wont move the plate or the table'

    Sorry it's late for me, best analogy I can come up with...….

    View my channel at Industrial Robotics Consultancy Limited - YouTube

  • Nation
    Typical Robot Error
    Reactions Received
    553
    Trophies
    9
    Posts
    1,935
    • January 31, 2020 at 4:42 AM
    • #5

    Sounds good. If I am reading your response correctly, only "point" in my example would be touched up, or "food" in your example.

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

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

  • kwakisaki
    Reactions Received
    694
    Trophies
    12
    Posts
    4,770
    • January 31, 2020 at 11:15 AM
    • #6

    You've got it...……..:top:

    But in that case, in order to move to it, they do have to be predefined/taught already.

    As the compound instruction is 'Move to the result of the calculation'.

    Sometimes this is where the confusion comes in.

    Have a look Motouser thread post #7 FRAME in AS language

    He has written a very nice AS structure there to create user frames using compound iterations based on locations for the frame (including some offsets) they will teach/predefine elsewhere.

    The good thing about what they've done - it reads very easy in order to follow it if you know the AS behind it.

    View my channel at Industrial Robotics Consultancy Limited - YouTube

  • kwakisaki
    Reactions Received
    694
    Trophies
    12
    Posts
    4,770
    • February 1, 2020 at 10:59 AM
    • #7

    As you've posed the question:

    I've been tasked with writing a short document on creating and updating existing block programs to new fixtures.

    You have got my 'grey matter' tickling me regarding this in relation to an optional function called Data Transformation function (There is information to this in the E Controller Operations Manual).

    This function I have never used, nor have I have dedicated anytime to researching into it.

    But with your 'frame' referencing, it has got my thinking.

    Now I have not read too much into this option, but it relates to 'transforming' offline to online referencing a 4 point area and it does refer to offline CAD data from a simulator.

    Now if this is referring specifically to Kawasaki simulator (KROSET), it may well also be referring to the initial positional data being produced from a Block Program.

    If this is indeed the case, then I could see this as a feasible option to assist in converting current Block to transforms.

    I'm going to have a deeper look into this and see what I can find out further as you've started my 'grey matter' thinking and let you know.

    View my channel at Industrial Robotics Consultancy Limited - YouTube

  • kwakisaki
    Reactions Received
    694
    Trophies
    12
    Posts
    4,770
    • February 3, 2020 at 12:46 AM
    • #8

    I think that idea is bust, as it reads, it just looks like another function that recalculates the original Joint values in the Block Step, to applicable ones for the base 4 points selected.

    Resulting in a correct Joint angle postures again...…..:loudly_crying_face:

    View my channel at Industrial Robotics Consultancy Limited - YouTube

  • Nation
    Typical Robot Error
    Reactions Received
    553
    Trophies
    9
    Posts
    1,935
    • February 3, 2020 at 3:36 PM
    • #9

    Thanks for looking into it. I ended up going with the HERE command to convert the program into poses, and then using the FRAME command to update the BASE. FRAME done before the HERE command of course.

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

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

  • kwakisaki
    Reactions Received
    694
    Trophies
    12
    Posts
    4,770
    • February 3, 2020 at 7:52 PM
    • #10

    Ah right, so you created the Userframe and applied it to the BASE and then used the HERE command.

    Sounds good.

    With AS there's many variations you could use, I would of left the Base as it was, setup the Userframe location and then used the following instead:

    POINT userframe+pos[x]=HERE

    However, the results would end up being the same as your method, just applied differently.

    View my channel at Industrial Robotics Consultancy Limited - YouTube

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
  • krc5
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • 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
  • krc5
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Similar Threads

  • Manual for creating a base in a very old C40F-A Kawasaki controller

    • robotecnik
    • June 7, 2019 at 8:09 AM
    • Kawasaki Robot Forum
  • Transforming an animation from Cinema4D to a robot program (KR C4 for a KR 1000)

    • kiiwa
    • April 3, 2017 at 12:15 PM
    • KUKA Robot Forum

Tags

  • BASE
  • frame
  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