World Robotics Survey: Industrial robots are conquering the world

IFR press release

(Pure Extraction)

World Robotics Survey: Industrial robots are conquering the world

Frankfurt, 30 September 2015 – By 2018 global sales of industrial robots will on average grow year on year by 15 percent – the numbers of units sold will double to around 400,000 units. Five major markets representing 70 percent of the total sales volume:  China, Japan, USA, South Korea and Germany. So says the 2015 World Robot Statistics, issued by the International Federation of Robotics (IFR).

“The main driver of this development is the global competition of industrial production. The automation witnessed by the automotive sector and the electrical/electronics industry comes out top here with a market share of 64 percent”, says Arturo Baroncelli, President of the International Federation of Robotics (IFR).

Within this context, the rapid automation in China represents a unique development in the history of robotics. The number of industrial robots sold increased by 56 percent alone last year in comparison to 2013. China is the largest and fastest growing robotics market in the world. The potential remains enormous despite the recent economic downturn. After all Chinese production industries currently have a robotic density of just 36 units per 10,000 employees. To compare: As the front-runner South Korea deploys 478 industrial robots per 10,000 employees followed by Japan (315 units) and Germany (292 units). It is estimated that more than one-in-three of the global supply of industrial robots will be installed in the Republic of China in 2018.

The statistics on robotic density likewise indicate huge opportunities for growth in the USA. Production industries there deploy just 164 industrial robots per 10,000 employees right now. The USA is currently automating its economy at high speed. The aim is to strengthen the country as an industrial centre and to retrieve outsourced production. In 2014 the number of installed robots increased by 11 percent to around 26,000 units – making it third in the world.

In Europe it is Germany that takes the lead by some distance. Within one year (2014) the sales figures increased by around 10 percent to about 20,100 units – to date the largest number of sales registered within twelve months. Despite the already very high robotic density existing there, the world’s fifth largest robotics market remains on a path of expansion – driven primarily by the automotive industry.

Global investments made by the automotive industry in industrial robots have increased significantly since 2010. 2014 was a new record year with about 100,000 newly installed robots – up 43 percent compared to the previous year. This boom has been fuelled by new production capacities in emerging markets and a wave of modernisation sweeping through established auto-making countries. A large proportion of robotics technology in 2014 was purchased by suppliers of electronic components to the automotive industry. These include battery manufacturers and car IT enterprises.

In 2014 the electrical/electronics sector likewise posted a new record – sales increased by 34 percent compared to the previous year. The strong demand for industrial robots in the production of consumer electronics, communication equipment as well as computer and medical technology adds up to a total global market share of 21 percent.

The wave of digital transformation and automation will continue to drive the triumphant march of industrial robots onwards up to 2018. “Industry 4.0” projects mean that human-robot teams, for example, are on the cusp of a break-through. Simplification of the use of robots will additionally open up the market for new applications. This is equally true of small and medium-sized companies as it is for large corporations in all sectors. Besides the automotive and electronics industries, this development is also being increasingly felt in the metal processing, plastics, food and packaging industries.

“The market volume available to industrial robots is enormous. Including supporting services we estimate the global market value to be 32 billion US dollars for 2014”, sums up IFR President Baroncelli.

Further files are ready for download below. In addition you may watch video statements on our YouTube channel.

REFERENCE

#industrial-robot, #irf, #robot, #robotics-2, #sci, #science, #technology

Robotmaster : A Revolution

Getting the most out of robots

Enabling industrial robotics in manufacturing

With Robotmaster, manufacturers can program robots quickly and efficiently, using industry proven CAD/CAM software technology. Driven by the growing trend towards lean and flexible manufacturing, robots are progressively replacing conventional dedicated manufacturing units, such as CNC milling machines. Robots, once perceived as only positioning devices, have advanced in accuracy and rigidity, and are now being used increasingly for manufacturing and material removal. With industrial robotics, manufacturers are producing higher quality products at lower cost, and are achieving the speed and flexibility they need to challenge their competitors throughout the world.

According to the International Federation of Robotics as of 2013 over 1.5 million robots were estimated to be in operation in industrial applications worldwide, and an additional 160,000 are being sold every year. While many companies currently using CNC machines have been exploring the opportunity of manufacturing with the use of industrial robotics, they have been limited by a lack of time and cost-effective robotic programming tools. Currently less than 1% of robots are programmed using CAD/CAM (computer aided design and manufacturing) software because of a lack of mature robotic programming solutions. Robotmaster eliminates this barrier.

Robotmaster delivers:

  • Cost-efficiency and flexibility of robots coupled with the ease of programming.
  • Programming of robots from CAD/CAM software as easy as CNC machine programming.
  • A sure way to beat the competition -worldwide- on cost, flexibility and response time.

Revolutionary CAD/CAM approach to robot programming software

Our strong background in CAM (Computer Aided Manufacturing) software has enabled us to bring a revolutionary approach to programming for industrial robotics. Unlike the wide range of simulation software packages that claim to be off-line programming for robots while truly only offering very limited programming capability, Robotmaster delivers easy programming of precise tool motion control and quick generation of long tool path trajectories with minimal programmer intervention.

Robotmaster uses mature CAD/CAM software technologies for robotic programming with the same flexibility and speed as software used for programming CNC machine tools. Conventional off-line robot software programming solutions are based on either a very cumbersome and tedious point to point programming approach or a post-processor solution that offers very little flexibility and functionality.

Robotmaster CAD/CAM programming:

  • Generates more profit with your robot. Robotmaster generates programs off-line and eliminates lost production time during programming.
  • Delivers closest conformance to design. Robotmaster creates simple or complex robot trajectories accurately without teaching points.

Integrated robot programming software solution

Robotmaster seamlessly integrates programming, simulation and program generation to any CAD/CAM platform. The multi-software approach of conventional off-line robot software solutions forces the use of one software for CAD/CAM programming, another for converting trajectories to robot positions and finally a third to simulate and validate the programmed trajectories.

robot

Robotmaster Integrated Solution

robot

Multi-software Approach

Integrated programming produces:

  • Quicker robot programming, validation and code generation.
  • Easy program updates and revisions.

Evolution of robot programming

evolution chart

Using MANUAL TEACH PENDANTS, robots “learn” from the operator jogging the robot through the trajectory and recording points, one point at a time, using the robot’s teach pendant. Robotmaster takes the process off-line and engineers the robot program from the design drawings.

OFF-LINE EMULATORS reproduce the manual teach process in an off-line setting, using a simulation software environment in place of the robot’s teach pendant. Robotmaster follows the path-intensive CAD model accurately and automatically and permits easy updating and revision of the program.

GENERATION 1 OFF-LINE SOFTWARE provides a CAD software environment for manual input of robot parameters for every point of a desired path, one at a time, on a CAD model. Robotmaster automatically generates the full robot trajectory from any CAD/CAM tool path strategy in a fraction of the time.

GENERATION 2 OFF-LINE SOFTWARE generates a robot trajectory by following trajectories drawn manually within a CAD modelling software. Robotmaster automatically generates the full robot trajectory from any CAD/CAM tool path strategy, building direct links between the CAD model and the tool path, without the need to manually draw any additional geometry.

A CAD/CAM POINT CONVERTER is a CAD/CAM post processor, robot simulator utility or standalone software that converts tool path output by CAD/CAM software into a robot trajectory for a specific model or brand of robot. Robotmaster is a fully integrated solution that permits seamless interaction between CAD/CAM and robot programming functionality, allowing trajectory optimization and integrated robot kinematics and simulation for a wide portfolio of robot models and brands.

Solving programming challenges

Struggling to program a robot the way you do a CNC machine tool? Robotmaster is up to the challenge:

Not easy to check intuitively robot joint limits and robot-to-part collisions?

Robotmaster automatically checks programs for joint limits, robot reach limitations and collisions.

solving

Need to do manual touch-up and rework of your off-line programmed points?

Robotmaster inherently calculates robot joint values and properly sets parameters to give seamless program playback without manual intervention.

solving

CAD/CAM data is not enough to provide position and orientation data for a 6-axis robot?

Robotmaster uses automated settings for orienting the robot tool to manage trajectories with complex orientation changes.

solving

Your program produces errors and stops running when it passes through one of your robot’s singularity zones?

Robotmaster checks for singularity and has powerful tools to correct programs containing singularities.

solving

How to select from the up to 8 possible configurations that your robot has to achieve everyone of its programmed points?

Robotmaster can vary configurations for optimal programming of trajectories or follow your specific robot configuration choice.

solving

Inaccuracies in your part or tool setup cause production delays as you make manual adjustments?

Robotmaster eliminates adjustments and increases program accuracy by calibrating the physical part and tool setup with the virtual CAD model.

solving

REFERENCE

Billard-handbook

We are indebted to them and the sharing is non commercial

Best Regards

Rohan Chataut

#robot, #robotics-2, #robotmaster, #science, #technology

Robot Architectures

A sample for a MiRPA-based software architecture of a six-joint robotic manipulator (click to enlarge).

I want to provide at least a glimpse of what all the excitement is about. My lack of enthusiasm doesn’t reflect on the problem, the problem is both interesting and challenging, so much as on my dissatisfaction with the current solutions.

What is it that distinguishes the software for a reasonably sophisticated robot from most other large and complicated software systems? The answer has to do with its embededness of the robot and the demands of responding to the environment in a timely manner. The relationship between the computational requirements for coming up with an an appropriate response to a given environmental challenge and the time allowed by the circumstances is at the heart of designing robot architectures. In many cases this issue is finessed simply by having robots that have enough computational resources that they don’t have to worry about being clever.

Consider the task of driving down an interstate highway. There are the small adjustments you make to stay within your lane. There are larger and more abrupt adjustments you might make to avoid a piece of tire tread or other road hazard. You might plan your trip well in advance to determine which sequence of roads you’ll take to get to your desired destination. You’ll have to divide your attention between staying in your lane and watching the cars around you and watching for signs and landmarks that tell you of approaching exits. Once you see the sign for your exit, you may have to plan how to maneuver your vehicle across several lanes of traffic in order to make your exit.

Planning a route could be as difficult as solving a traveling salesman problem or as easy as finding the shortest path in a graph. Certainly thinking about how to maneuver across four lanes of traffic could take longer than figuring out how to swerve to miss a pot hole. What do you do if you’re hurtling toward an exit but not sure if it is the best exit to take in getting to your destination? You can’t simply stop the world while you figure things out. You can’t even focus your attention entirely on the problem because you still have to attend to the road.

There is another issue that often comes to the fore and has its analog in conventional desktop systems and that is the management of resources. Just as two different processes can’t be allowed to access a disk drive at the same time, two processes (or behaviors) can’t be allowed to drive the motors at the same time. Suppose your maneuvering across the highway trying to reach the far right lane to turn onto an approaching exit. At some level all of your attention is on getting the car to move to the right. Then suddenly you notice a car appear on your right and another part of your brain takes control of the wheel and swerves to the left to avoid a collision. How to arbitrate between different goals and behaviors each requiring access to a critical resource?

What sort of architecture might allow for timely responses across a wide spectrum of environmental challenges and at the same time provide a framework for arbitrating among competing behaviors?

Look and Lurch

Murphy [2000] describes the range of current architectures (or paradigms) in terms of the relationships between three primitives,sense, plan and act and in terms of how sensory data is processed and propagated through the system. The following graphic illustrates the relationships among the primitives in terms of the three dominant paradigms.

The hierarchical paradigm is a bit of a caricature. It was however the dominant paradigm in the early days of AI robotics when much of the focus was on robot planning. The emphasis in these early systems was in constructing a detailed world model and then carefully planning out what steps to take next. The problem was that, while the robot was constructing its model and deliberating about what to do next, the world was likely to change. So these robots exhibited the odd behavior that they would look (acquire data, often in the form of one or more camera images), process and plan, and then (often after a considerable delay) they would lurch into action for a couple of steps before beginning the cycle all over again. Shakey a robot developed at the Stanford Research Institute in the 1970s was largely controlled by a remote computer connected to the robot by a radio link; Shakey exhibited this sort of look-and-lurch behavior as it contemplated moving blocks around to achieve a goal. The characteristic aspects of this paradigm are illustrated by the following figure from [Brooks, 1986]:

The components of the robot in this case are said to be horizontally organized. Information from the world in the form of sensor data has to filter through several intermediate stages of interpretation before finally becoming available for a response.

Reactive Systems

An alternative to the hierarchical paradigm with its horizontally organized architecture is called the reactive paradigm and is labeled as such above. Adherents of the reactive paradigm organize the components vertically so that there is a more direct route from sensors to effectors. Schematically Brooks depicts the paradigm as follows:

Note that in this vertical decomposition there is the potential for contention over the effectors. Just as in the example of steering a car to exit from the highway while avoiding an accident with the car in the lane to your right, there is contention among the various components, avoiding, exploring, wandering, planning, for taking control of the robots actuators. Brooks suggests that we solve the problem of contention by allowing components at one level to subsume components at a lower level. Thus he called his approach thesubsumption architecture.

In the subsumption architecture, components behaviors are divided into layers with an arbitration scheme whereby behaviors at one level can manipulate what behaviors at a lower level can see or do. Brooks called the most primitive components of his architecturemodules. Each module has inputs, outputs and a reset. A module at a higher level can suppress the input of a module at a lower level thereby preventing the module from seeing a value at its input. A module can also inhibit the output of a module at a lower level thereby preventing that output from being propagated to other modules.

The modules are meant to be simple computationally and so it is reasonable to think of them as circuits or finite state-machines. Brooks assumed that they were augmented finite state controllers. The reset would cause the controller to return to its initial state. Once set in motion the controllers would continuously transition from one state to the next. The transitions can be determined in part by reading from the inputs and some internal state and of course by referring to the present state of the controller. Brooks also allows controllers to have an internal clock or timer and so, for example, they can execute a wait. Here are the basic transition types allowed in specifying the transition function of a finite-state controller.

  • Output – a transition can compute a value as a function of the module’s inputs and internal state and then send the value to one of its outputs before entering a specified state
  • Side effect – a transition can set one of the module’s instance variables (internal state) to some value computed as a function of the module’s inputs and internal state; the module then enters a specified state
  • Conditional dispatch – a predicate on the module’s inputs and instance variables is evaluated and depending on the outcome the module enters one of two specified states
  • Event dispatch – a sequence of conditions and states to branch to is specified; the conditions are then monitored continuously until a condition is met and then the module transitions to the corresponding state

In some applications each module is implemented on a separate procesor with information propagated from inputs to outputs using parallel or serial communications. However, there is nothing preventing us from implementing more than one or all of the modules on a single processor with propagation carried out using shared variables. Here is the specification for a module that is used as one component in a level responsible for avoiding obstacles. The specification language has a lisp-like syntax but the expressions would typically be compiled into assembly code or into an intermediate target language like C.

Here is the most primitive level of a mobile robot system consisting of three modules (plus the sonar and motor components which can also be thought of as modules of a sort). We assume a ring of sonars that provides at intervals an updated vector of sonar readings here referred to as a map. The collide module looks at the sonar vector and if it determines there is an imminent collision, then it sends a halt command to the motors. The feelforce module treats the sonars as repulsive forces acting on the robot and computes a force vector summarizing these repulsive forces. The feelforce module sends this force vector to the runaway module which computes motor commands to move the robot in accord with the perceived repulsive forces acting on it. The resulting (Level 0) behavior has robot moving away from any obstacles probably ending up in the middle of room. To get more interesting behavior we can add a second level.

In the diagram below we add two Level 1 modules. One of these modules, the wander module, selects an arbitrary heading possibly changing it from time to time using its internal timer and a source of random directions. This heading plus the force vector generated by the feelforce module are provided as input to the avoid module that computes motor commands combining the desired heading with the necessities of avoiding nearby obstacles. In order to prevent the runaway module taking over the control of the motors, the avoid module suppresses the output of the runaway module. The combined Level 0 and Level 1 behavior result in a robot that wanders aimless about but avoid obstacles.

The final diagram below taken from Brooks paper shows an additional level of control that implements a more goal-oriented behavior on top the of more primitive behaviors.

Here are some photographs of some veteran robots from MIT several of which, e.g., Herbert, used variations on the subsumption architecture. Flakey is a mobile robot from SRI that combines aspects of reactive and hierarchical control in a hybrid architecture.

Implementing Subsumption

Last year I developed a compiler in scheme that converted Brooks subsumption language syntax to NQC code. Here is a very simple subsumption code fragment and the resulting NQC output. Because of its limited numbers of processes (tasks) and variables NQC never proved practical as a target language. Eventually I had a compiler that handle most of the subsumption language constructs but would only work for cases involving five or six modules. I thought of converting my compiler to legOS but it didn’t seem worth all the work given that the basic ideas of subsumption are pretty easy to incorporate in code and the rest is just syntax. Well, some might say that the syntax enforces a discipline but others just find the discipline confining. In any case, if you want to use subsumption, you can either write your own compiler or you can distill out the basic ideas and implement them in your own syntax.

What are the basic principles?

1. Divide your problem into basic competencies ordered simple to more complex. Designate a level for each basic competency.

2. Further subdivide each level into multiple simple components which interact through shared variables. Limit the sharing of variables among levels to avoid incomprehensible code.

3. Implement each module as a separate light-weight thread. You might think of setting the priorities for these threads so that modules in a given level have the same priority.

4. Implement suppression and inhibition as one or more separate “arbitration” processes that serve to control access to shared variables. You might want to control access using semaphores.

REFERANCE

[Murphy, 2000] Murphy R., An Introduction to AI Robotics (Intelligent Robotics and Autonomous Agents), MIT Press, 2000.

#artitecture, #robot, #science, #technology