Categories
Learn

REVIEW | ROBOT CALIBRATION

UR10 Robot with burnishing tool

Robotic arms are a series of joints linked together in a kinematic chain

Calibration is critical in the field of robotics as it allows for enhancement of a robot’s accuracy through software rather than changing mechanical components. This article will go over some basic concepts involved in end effector calibration otherwise known as adding a new tool centre point on a robotic arm. Most industrial manipulators have six degrees of freedom or six joints (see Figures 1 & 2). The starting link always begins where the robot is physically mounted. These joints can be described as having a parent-child relationship. The hierarchy of these joints is important as the child joint is always defined in reference to, and therefore dependent on, the parent joint. The last link on the kinematic chain is typically referred to as the end effector which has a tool centre point (TCP). It is this TCP point that the user will manipulate in 3D-space, if in cartesian control. To make robotic arms useful, various end effectors (i.e. grippers, 3D sensors, rotating tools) can be attached in order to complete various operations. As a result, defining a new TCP is necessary to utilise the mounted tools.

Figure1: Simple drawing of a robotic arm and joints
Figure 1: Simple drawing of a robotic arm and joints

Figure 2: Example of joints on an industrial robotic arm

Figure 2: Example of joints on an industrial robotic arm

There are several ways to add a new TCP point on a robotic arm and most robotic arm manufacturers will provide their own methodology. Ultimately, all these methods involve measuring the pose of your new end effector in 3D-space, with respect to the last joint of the manipulator. The key feature to make note of when adding a new TCP, is the parent joint’s coordinate frame (see Figure 3).
Figure 3: Example of TCP point being defined from the last flange joint on a KUKA

Figure 3: Example of TCP point being defined from the last flange joint on a KUKA

To define a new TCP, the position and orientation is required to make up the pose. The position aspect can be gathered from physically measuring it out. It’s important to know the coordinate frame as this determines whether elements are positive or negative, and which axis to measure along. Depending on the complexity of the end effector, it can be quite difficult to measure the TCP point. If there is an accurate 3D model, the position information can be gathered from this, but ultimately the accuracy in robotic arm control is dependent on how close the most is representative in real life.
The orientation is crucial for cartesian control. The controller is given target poses and it is ultimately trying to match the robot’s end-effector coordinate frame to the target’s. If the orientation of the TCP is ill-defined, it can cause large sweeping motions. There are four key things to remember when defining a new orientation:

  1. Orientations are simply defining a new XYZ coordinate frame (see Figure 4A)
  2. All XYZ coordinate frames have to abide by a right-hand rule to be valid (see Figure 4B – this rule defines the order XYZ axes can exist, thumb is X, pointer is Y and middle is Z axis) and follow conventions to determine positive rotation (figure 4C)
  3. The order of rotations also impacts the ending result of a coordinate frame.
  4. All orientations, while maybe named or ordered differently, will be defined using either euler angles (x,y,z) or quaternions (x, y, z, w) with the units being either in degrees or radian.

Figure 4: (A) A 3D coordinate frame in cartesian space. (B) The right hand rule all frames will abide by. (C) The thumb represents the axis, and the curled fingers represent convention for positive rotation.

Figure 4A: (A) A 3D coordinate frame in cartesian space. (B) The right-hand rule all frames will abide by. (C) The thumb represents the axis, and the curled fingers represent convention for positive rotation.
Figure 4: Example of orientations defined in KUKA manipulators. ABC angles represent ZYX coordinate frames (note, reversed and named differently from conventional frames).
Figure 4B: Example of orientations defined in KUKA manipulators. ABC angles represent ZYX coordinate frames (note, reversed and named differently from conventional frames).

Figure 5: Coordinate frame showing the separated axis rotations

Figure 5: Coordinate frame showing the separated axis rotations

This article touched on the basic concepts involved in calibrating a new end effector on any kind of robotic arm. It is important to have an understanding of the underlying theory that underpins how robotic arms are structured, but the best resource to understand your robotic arm will be the manufacturer’s manual.

The Future of Manufacturing

With support from the Innovative Manufacturing Cooperative Research Centre (IMCRC), Design Robotics is collaborating to present a range of new fabrication and vision systems solutions. The goal is simple – to design for human intelligence and optimize the relationship between people and machines.
Pushing the limits of industrial robotics is a move to empower people. Navigating the increasing complexity of manufacturing inevitably supports human experience and enhances skills acquisition. At its heart, this approach celebrates the best of what robots and machines can achieve – problem-solving, and the best of what humans can do – social intelligence and contextual understanding.

Resources
Categories
Learn

ROBOT FABRICATION | USING RHINO & GRASSHOPPER

There are considerable advantages in using products like Rhinoceros and Grasshopper, Robots for Grasshopper, and KUKA|PRC. Software and plugins enhance the control of industrial arm robots like the Universal Robotics UR10 or the KUKA range of robots, allowing users to create 3D simulations the robot moves or performs a complete task.
Rhinoceros (also called Rhino 3D, or Rhino) is a Computer-Aided Design (CAD) software used for the design and modelling of 3D products. It is widely used in the industrial / product design professions, and also used in a variety of industries because of a large range of plug-in applications that enhance the options of the basic Rhino software. A major advantage of using Rhino over similar software packages is a plug-in application called Grasshopper. Grasshopper allows users to use a visual programming language that makes coding accessible to people with limited programming knowledge. By using Grasshopper, users can make rapid changes or explore many variations of 3D models using algorithms or simple commands. Grasshopper’s interface simplifies the creation of complex models, and with the right plug-ins – allows for other abilities such as robot control that can potentially fabricate.
Rhinoceros 3D software: Quick modelling, and straightforward control of robots. In this example a simulation of a UR10 robot is tracing a loop drawn in Rhino by the user.

Rhinoceros 3D software: Quick modelling, and straightforward control of robots. In this example a simulation of a UR10 robot is tracing a loop drawn in Rhino by the user.
Why Grasshopper?

Rhino and the Grasshopper plug-in have many advantages over other methods of robotic control systems. Rhino is primarily a 3D modelling application, so creating or editing the 3D simulation environment is controlled within one type of software. Once a model is created, it is easy to make adjustments to the location for setting up a robot in a real-world environment, as well as objects for the robot to interact with or avoid. The advantages of using Grasshopper include rapid workflows from virtual prototypes to production. Changes to the control of the program or the intended design can be made quickly and new fabrications can be created.
The example workflow (illustrated below) of this is the ROBOBLOX project by QUT Design Robotics and UQ Architectural Robotics. The project created over 100 unique polystyrene foam blocks cut by a hot-wire cutter attached to a KUKA industrial robot, for installation as an art piece.
 

RoboBlox Workflow
  • Creation of the 3D models for each unique design of the blocks in Rhino.
  • Grasshopper was used to create the path the robot would follow to cut each of the blocks, and this pathway is simulated to predict any errors.
  • Grasshopper was used again to send the commands to the robot for the real blocks to be cut from a large slab of polystyrene.
  • The unique polystyrene blocks were finished and installed on site.

The entire process from choosing a design, to installation, was fabricated quicker and with greater accuracy compared with a similar project completed without a robot.
Workflow from modelling to simulation to fabrication to installed product

Workflow from modelling to simulation to fabrication to installed product
Visual Coding

On a typical Windows PC, the Grasshopper interface, or canvas is clearly laid out (shown above). Menus at the top of the Grasshopper window allow users to switch between different panels of icons. Each icon provides an option or toolset – with additional downloadable plugins extending these panels of tools. A script in Grasshopper uses components that look like box-like containers, each one offering varying inputs, an altering function, and outputs. The example image shows a script made with components from the Robots plugin. This layout shows how the visual script is easily read by following the guidewires that connect the container’s transfer data. Changes made to the data at the beginning of the script alters later outcomes and using this method it is quick to visualise many alternative designs before sending the final design to the robot for fabricating. The advantage of this is that rapid prototyping and robotic fabrication can be achieved or experimented with a variety of adaptations through the use of one type of software.
 

The Future of Manufacturing

With support from the Innovative Manufacturing Cooperative Research Centre (IMCRC), Design Robotics is collaborating to present a range of new fabrication and vision systems solutions. The goal is simple – to design for human intelligence and optimize the relationship between people and machines.
Pushing the limits of industrial robotics is a move to empower people. Navigating the increasing complexity of manufacturing inevitably supports human experience and enhances skills acquisition. At its heart, this approach celebrates the best of what robots and machines can achieve – problem-solving, and the best of what humans can do – social intelligence and contextual understanding.
 

Resources
Categories
_ Knowledge Sharing News

JING PENG | BETTER ROBOT GRINDING

Jing Peng
Postdoctoral Research Fellow 

 
Favourite quote: “Self-discipline and Social Commitment” Tsinghua University’s motto 
Favourite Robot: Baymax, the soft inflatable robotic healthcare assistant.
Why robots?
Robots can improve the lives of people by making human work safer and more precise. For example, surgical robots can offer less pain and a faster recovery to patients.
Tell us a bit more about your background. How did you end up in Design Robotics?
My expertise is in developing ultra-precision low-damage polishing tools and machinery for chemical-mechanical polishing. I completed my BEng in Measurement, Control Technology and Instruments and my PhD in Mechanical Engineering at Tsinghua University. There I co-invented (with Prof. Xinchun Lu and Dewen Zhao) a conditioner for conditioning the polishing pad and we got a granted patent for that. The patent is cited by global market leaders, e.g. Siltronic AG, Fujikoshi Machinery.
My PhD thesis was on ultra-precision low-damage polishing and its mechanism for polishing KDP crystals. KDP crystals are soft, brittle and deliquescent. To achieve high performance as frequency convertors in high power laser systems, they need to have a super-smooth surface. To further investigate the crystals’ mechanical properties, I joined Prof. Liangchi Zhang’s group at UNSW and carried out nanoindentation tests with a conical diamond indenter. We discovered the elastic-plastic deformation of KDP crystals under nanoindentation. Then I returned to Tsinghua and built the theoretical model for polishing and through lots of polishing tests achieved surface roughness of 0.62 nm* for KDP by optimizing various machining conditions and slurry formulation. 
After graduation, I worked as a Postdoctoral Fellow in Surgical Robotics and Soft Robotics at the University of Hong Kong. While leading the surgical robot project, I co-invented (with Prof. Zheng Wang, Prof. Zhiqiang Chen and Prof. James Lam) arm units and surgery robot systems and we received a granted patent for that. The project team built generations of surgical robot prototypes with 6mm diameter robot arm. These are tiny enough to go through natural orifices with a dexterity of 7 DOF and large output force to perform surgery. I also designed and fabricated soft actuators for a soft robotic manipulator project.
All of these varied experiences set the stage for me to work with robots for advanced manufacturing in Design Robotics.
*nm= a nanometer, which is 1/1,000,000,000 of a meter; 0.62 nm surface variation is a surface variation of less than 1/100000th of the thickness of a human hair.
Tell us a little more about the problem you are solving in Design Robotics.
I am adding pneumatic-controlled soft actuation into Design Robotics and integrating precisely controlled pneumatic soft actuation with industrial robots and advanced computer vision to realize automated high-quality sanding, grinding and polishing of UAP sculptures. I am also doing mechanical design for the linishing tests.
What has been your biggest joy with the project so far?
I have been part of Design Robotics since October 2019, so I am still new to the team. I get to work with great design and engineering professionals which is a wonderful experience for me. But mostly, getting to work with Prof. Jonathan Roberts, my supervisor and robotics researcher with experience in both academia and industry, has been my highlight so far. 
 
To connect with Jing and learn more about her work:
Design RoboticsQUT Profile  | LinkedIn | Google Scholar 

Categories
Knowledge Sharing

Design Robotics 'Mudpit' Presentation with QUT's Design Lab

Design Robotics recently presented their research at an informal gathering, called a Mudpit, to QUT’s Design Lab Research group.
The mission of the Design Lab Research group at QUT is to ‘Change by Design.’ That is, Design research at QUT aims to demonstrate how design can be applied to achieve solutions to broader social, cultural, economic, and environmental problems.
The Design Lab website explains that ‘Design is no longer just the pursuit of creating objects or artefacts. It is a method and a research approach able to drive Australia’s National Innovation agenda. Harnessing this potential, the QUT Design Lab was founded in 2016 to employ bold, fresh, and rigorous design-led research to tackle major societal challenges facing society, industry, community, and the environment. Acting as a hub and home for a diverse team of academics, research students, and industry professionals, the QUT Design Lab supports transdisciplinary collaborations that result in tangible impact and engagement, and which transfer knowledge and technology into beneficial applications for industry and society.’

At the presentation Al Burden, the Design Robotics PhD Candidate, gave a short demonstration with the UR10s at QUT.
The Mudpit is an informal way of sharing research between colleagues to share knowledge and develop opportunities for collaboration.

Categories
Knowledge Sharing News

Design Workshop with QUT's UR10 Robotic Arms

 The Design Robotics Team hosted a group of students from the University of Queensland’s School of Architecture to work with one of our UR10 Robotic Arms.
The students worked together to design a wall panel using Morpholo Tiles. Designed by Thieri Foulc in 1985, Morpholo tiles are a combination of square tiles which can be arranged in different ways, as a game or a piece of art. In total, there are 240 tiles, containing black and white shapes; the only rules to the game are to match the black edges with black, and white edges against white, which creates numerous possible configurations.
As a method for organising these tiles, a code can be generated using a mathematical formula.
You can see what the Morpholo Tiles looked like below.

Working with a pattern created by the Morpholo Tiles, Students created a three-dimensional version, as a wall panel. This was done by cutting the pattern lines out of foam blocks; where the solid was the white and void cut out, the black. They used the UR10 Robotic arm, with a hot wire cutter attachment, to cut the desired pattern out of each block of foam. These blocks were then assembled into a wall panel, like bricks to create a pattern.
It was a great opportunity to exchange and share out knowledge and practical skills with our colleagues. The outcome of the workshop was successful, and we hope to build on this work to create wall panels, with mass customised components and different materials, for future built environment applications.