IT202100010472A1 - METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT - Google Patents

METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT Download PDF

Info

Publication number
IT202100010472A1
IT202100010472A1 IT102021000010472A IT202100010472A IT202100010472A1 IT 202100010472 A1 IT202100010472 A1 IT 202100010472A1 IT 102021000010472 A IT102021000010472 A IT 102021000010472A IT 202100010472 A IT202100010472 A IT 202100010472A IT 202100010472 A1 IT202100010472 A1 IT 202100010472A1
Authority
IT
Italy
Prior art keywords
robot
estimated
speed
operator
maximum
Prior art date
Application number
IT102021000010472A
Other languages
Italian (it)
Inventor
Andrea Maria Zanchettin
Original Assignee
Milano Politecnico
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Milano Politecnico filed Critical Milano Politecnico
Priority to IT102021000010472A priority Critical patent/IT202100010472A1/en
Priority to PCT/IB2022/053632 priority patent/WO2022229785A1/en
Publication of IT202100010472A1 publication Critical patent/IT202100010472A1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1651Programme controls characterised by the control loop acceleration, rate control

Description

METODO E RELATIVO SISTEMA DI CONTROLLO IN SICUREZZA DI UN ROBOT METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT

CAMPO TECNICO TECHNICAL FIELD

La presente divulgazione concerne i metodi di controllo di robot e pi? in particolare un metodo per controllare un robot destinato a cooperare in sicurezza con un operatore umano, nonch? un sistema a microprocessore di controllo di un robot e un relativo programma per elaboratore. Does this disclosure cover robot control methods and more? in particular a method for controlling a robot intended to cooperate safely with a human operator, as well as? a microprocessor control system for a robot and a related computer program.

SFONDO TECNOLOGICO TECHNOLOGICAL BACKGROUND

Con lo sviluppo della robotica, ? prevedibile che in futuro aumenter? la presenza di robot realizzati per collaborare con operatori umani, in modo da aiutare gli operatori durante l'esecuzione del loro lavoro. In particolare, i robot possono convenientemente essere impiegati per eseguire velocemente compiti in maniera sostanzialmente meccanica, mentre si possono destinare agli operatori umani le operazioni pi? difficili da essere eseguite in completa autonomia dai robot. With the development of robotics, ? predictable that in the future will increase? the presence of robots designed to collaborate with human operators, in order to help the operators during the execution of their work. In particular, robots can conveniently be used to quickly perform tasks in a substantially mechanical way, while the more complex operations can be assigned to human operators. difficult to be performed in complete autonomy by robots.

Grazie alle migliorate procedure di controllo del movimento di robot industriali, ? stato possibile realizzare robot in grado di effettuare autonomamente dei compiti condividendo uno spazio di lavoro con uno o pi? operatori umani. Tale soluzione permette la coesistenza di un robot e di un operatore umano in uno stesso ambiente, in cui per? ciascuno dei due soggetti deve completare il proprio compito indipendentemente dall'altro raggiungendo il rispettivo obiettivo. Thanks to the improved motion control procedures of industrial robots, ? Was it possible to create robots capable of carrying out tasks autonomously by sharing a workspace with one or more robots? human operators. This solution allows the coexistence of a robot and a human operator in the same environment, in which each of the two subjects must complete their task independently of the other by achieving their respective goal.

Tuttavia, questo tipo di suddivisione non ? sempre praticabile quando un lavoro da eseguire ? composto sia di operazioni che richiedono un'intelligenza umana, che di operazioni meccaniche, che possono essere singolarmente eseguite senza conoscere tutto il lavoro da fare e gli scopi da raggiungere. In generale, in tutti quei lavori in cui ci sono delle operazioni che richiedono un livello di comprensione elevato, che gli operatori umani possono facilmente eseguire ma che i robot non possono compiere facilmente a meno di non voler utilizzare tecnologia sofisticata e costosa, cosa che richiederebbe investimenti notevoli e farebbe accrescere i costi di produzione, l'affidamento dell'intero lavoro ad un operatore umano appare irrinunciabile. However, this type of subdivision is not ? always practicable when a job to be performed ? composed both of operations that require human intelligence, and of mechanical operations, which can be individually performed without knowing all the work to be done and the goals to be achieved. In general, in all those jobs where there are operations that require a high level of understanding, which human operators can easily perform but which robots cannot easily perform unless they want to use sophisticated and expensive technology, which would require considerable investments and would increase production costs, entrusting the entire work to a human operator appears indispensable.

Per superare questa limitazione, si cerca di realizzare robot collaborativi, talvolta chiamati con il neologismo "cobot" o "co-robot", che possano collaborare con operatori umani condividendo uno stesso spazio di lavoro e interagendo strettamente e in maniera sinergica con essi per raggiungere un risultato desiderato. Dato che i robot devono lavorare stando multo vicini ad un operatore umano, si pone il problema della sicurezza dell'operatore. Una tecnica per garantire la sicurezza durante operazioni in cui i robot collaborano con gli operatori umani, considerata nella specifica tecnica ISO/TS 15066 che illustra i requisiti di sicurezza per sistemi robotici industriali, ? la tecnica chiamata "Speed and Separation Monitoring" (o pi? brevemente SSM). Tale tecnica prevede che in qualsiasi momento gli attuatori del robot possano decelerare fino eventualmente a fermarsi completamente prima di violare una minima distanza di separazione dmin dall'operatore umano, ossia che la distanza d tra il robot e l'operatore umano sia sempre maggiore di dmin: To overcome this limitation, we try to create collaborative robots, sometimes called with the neologism "cobot" or "co-robot", which can collaborate with human operators by sharing the same workspace and interacting closely and synergistically with them to achieve a desired result. Since robots have to work very close to a human operator, the question of operator safety arises. A technique to ensure safety during operations in which robots collaborate with human operators, considered in the technical specification ISO/TS 15066 which illustrates the safety requirements for industrial robotic systems, ? the technique called "Speed and Separation Monitoring" (or more briefly SSM). This technique foresees that at any moment the robot actuators can decelerate until possibly stopping completely before violating a minimum separation distance dmin from the human operator, i.e. that the distance d between the robot and the human operator is always greater than dmin :

d ? dmind ? dmin

come schematicamente illustrato in figura 1. as schematically shown in figure 1.

In generale, le posizioni del robot e dell'operatore vengono osservate periodicamente in certi istanti di osservazione mediante almeno un dispositivo di rilevazione, per cui in tali istanti di osservazione le posizioni del robot e dell'operatore sono individuate. Tuttavia, ? necessario controllare la posizione e la velocit? del robot anche nell'intervallo che passa tra due istanti di osservazione consecutivi, nonch? prevederne il comportamento. A tal fine, si stabilisce un intervallo di campionamento di durata Tc e ad ogni istante di campionamento si stimano la posizione e la velocit? del robot mediante un algoritmo. Di conseguenza, tra due istanti di osservazione consecutivi in cui i dispositivi di rilevazione forniscono la posizione del robot e dell'operatore, ci sar? o ci saranno uno o pi? istanti di campionamento nei quali la velocit? e la posizione del robot saranno stimate. In general, the positions of the robot and of the operator are periodically observed in certain observation instants by means of at least one detection device, so that in these observation instants the positions of the robot and of the operator are identified. However, ? need to check the position and speed? of the robot even in the interval between two consecutive observation moments, as well as? predict its behavior. To this end, a sampling interval of duration Tc is established and at each sampling instant the position and speed are estimated. of the robot using an algorithm. Consequently, between two consecutive observation instants in which the detection devices provide the position of the robot and the operator, there will be? or will there be one or more? instants of sampling in which the speed? and the position of the robot will be estimated.

Nota la posizione sk del robot su un percorso dato al k-esimo istante di campionamento, ? possibile stimare la posizione sk+1 e la velocit? vk+1 nell'istante di campionamento k+1 futuro in funzione dell'accelerazione a, della velocit? vk, della posizione sk attuale e del periodo di campionamento Tc che intercorre tra un campionamento e il successivo con le seguenti formule: Note the position sk of the robot on a given path at the kth sampling instant, ? is it possible to estimate the position sk+1 and the speed? vk+1 in the instant of sampling k+1 future as a function of the acceleration, of the speed? vk, of the current position sk and of the sampling period Tc which elapses between one sampling and the next with the following formulas:

sk+1 = sk vk*Tc Tc^2*a/2; sk+1 = sk vk*Tc Tc^2*a/2;

vk+1 = vk a*Tc. vk+1 = vk a*Tc.

Nella tecnica SSM si calcola la distanza tra il robot e l'operatore in funzione della posizione che il robot avr? all'istante di campionamento futuro k+1, cos? come agli istanti di campionamento successivi, e si verifica se la condizione In the SSM technique, the distance between the robot and the operator is calculated according to the position that the robot will have? at the future sampling instant k+1, cos? as at the subsequent sampling instants, and occurs if the condition

dk+1 ? dmin dk+1 ? dmin

? rispettata. In pratica, si esegue una simulazione per controllare se ? possibile arrestare il robot in tempo rispettando la distanza minima di sicurezza dall'operatore umano dmin applicando la minima accelerazione possibile amin: se ci? avviene, si considera come accelerazione a il massimo valore possibile amax, altrimenti si considera il minimo valore amin per predire la posizione del robot all'istante di campionamento futuro k+1 e si comanda la riduzione della velocit? del robot. ? respected. In practice, you run a simulation to check if ? possible to stop the robot in time respecting the minimum safety distance from the human operator dmin applying the minimum possible acceleration amin: if there? occurs, the maximum possible value amax is considered as acceleration, otherwise the minimum value amin is considered to predict the position of the robot at the instant of future sampling k+1 and the reduction of the speed is commanded? of the robot.

La distanza tra il robot e l'operatore umano per? dipende anche dagli spostamenti che l'operatore effettua per compiere il suo lavoro, ossia dipende dalla posizione ok+1 che assumer? l'operatore nell'istante futuro k+1 di campionamento. Tale posizione per? non ? prevedibile e per questo motivo secondo la tecnica attuale si considera la posizione ok nell'istante k di campionamento presente per stimare la distanza futura dk+1. The distance between the robot and the human operator for? it also depends on the movements that the operator makes to do his job, that is, it depends on the position ok+1 that it will assume? the operator at the future k+1 sampling instant. Such a position for? Not ? predictable and for this reason, according to the current technique, the position ok at the present sampling instant k is considered to estimate the future distance dk+1.

SOMMARIO SUMMARY

La posizione ok dell'operatore all'istante presente per? non ? una stima affidabile della posizione ok+1 che sar? effettivamente assunta dall'operatore all'istante di campionamento futuro k+1. Inoltre l'operatore umano pu? spostarsi in modo imprevedibile per cui la tecnica attuale SSM esposta sopra risulta insoddisfacente. Is the operator's ok position instantly present for? Not ? a reliable estimate of the position ok+1 that will be? actually assumed by the operator at the future sampling instant k+1. Furthermore, the human operator can? move in an unpredictable manner so that the current SSM technique set out above is unsatisfactory.

Uno scopo della presente divulgazione ? quello di fornire un metodo di controllo di un robot industriale utilizzato in applicazioni collaborative. Il metodo di controllo della presente divulgazione pu? essere implementato mediante un dispositivo di controllo comprendente dispositivi di rilevazione che rilevano la posizione dell'operatore nello spazio di lavoro, una memoria in cui memorizzare dati di velocit? e posizione del robot nonch? dati di posizione dell'operatore umano in un sistema di riferimento fisso del dispositivo di controllo, nonch? un'unit? di controllo a microprocessore che elabora tali dati memorizzati nella memoria secondo il metodo di questa divulgazione per predire se il robot nel successivo istante di campionamento k+1 sar? ad una distanza dall'operatore inferiore alla distanza minima di sicurezza oppure no, e regolare la velocit? e l'accelerazione del robot di conseguenza sulla base di questa informazione di predizione. A purpose of this disclosure ? to provide a method of controlling an industrial robot used in collaborative applications. The method of controlling this disclosure may be implemented by means of a control device comprising detection devices which detect the position of the operator in the work space, a memory in which to store speed data? and position of the robot as well as? position data of the human operator in a fixed reference system of the control device, as well as? a unit? microprocessor control which processes such data stored in the memory according to the method of this disclosure to predict whether the robot in the next sampling instant k+1 will be? at a distance from the operator less than the minimum safety distance or not, and adjust the speed? and the acceleration of the robot accordingly based on this prediction information.

Il metodo si avvale di una tecnica che si ? dimostrata straordinariamente efficace per tenere conto della posizione dell'operatore che si muove, aggiornando la soglia di confronto ck+1 con la quale confrontare il valore di distanza dk+1 stimato tra il robot e l'operatore umano, in cui la soglia di confronto ck+1 ? aggiornata iterativamente ad ogni periodo di campionamento sulla base del valore di soglia di confronto ck al ciclo precedente (a partire da dmin per k = 0) e sulla base di una velocit? massima di spostamento dell'operatore. The method makes use of a technique that is ? demonstrated to be extraordinarily effective for accounting for the position of the moving operator by updating the comparison threshold ck+1 against which to compare the estimated distance value dk+1 between the robot and the human operator, where the comparison threshold ck+1 ? updated iteratively at each sampling period on the basis of the comparison threshold value ck at the previous cycle (starting from dmin for k = 0) and on the basis of a speed? maximum movement of the operator.

Il metodo di questa divulgazione pu? essere implementato mediante un software installato in un'unit? a microprocessore di un relativo sistema di controllo di almeno un robot collaborativo con un operatore umano. The method of this disclosure can be implemented through software installed in a unit? microprocessor of a related control system of at least one collaborative robot with a human operator.

BREVE DESCRIZIONE DEI DISEGNI BRIEF DESCRIPTION OF THE DRAWINGS

La figura 1 mostra un esempio di una postazione di lavoro di un operatore umano affiancato da un robot che coopera con l'operatore. Figure 1 shows an example of a workstation of a human operator flanked by a robot which cooperates with the operator.

La figura 2 ? un diagramma di flusso che illustra una procedura per determinare velocit? e posizione del robot e dell'operatore all'istante k+1 di campionamento, impiegata nel metodo di controllo di questa divulgazione. Figure 2 ? a flowchart that illustrates a procedure for determining speed? and robot and operator position at sampling time k+1, used in the control method of this disclosure.

DESCRIZIONE DETTAGLIATA DETAILED DESCRIPTION

Per migliorare il rendimento di esecuzione di un lavoro che richiede la cooperazione sinergica di un operatore umano con un robot collaborativo ("cobot"), ? stato ideato un metodo di controllo che evita che la distanza tra il robot collaborativo e l'operatore umano possa ridursi al disotto di un valore minimo nominale dmin a causa del movimento dell'operatore. To improve the execution performance of a job that requires the synergistic cooperation of a human operator with a collaborative robot ("cobot"), ? A control method has been devised that prevents the distance between the collaborative robot and the human operator from being reduced below a nominal minimum value dmin due to operator movement.

Per individuare la posizione dell'operatore umano, si potr? considerare ad esempio un punto corrispondente ad una zona del corpo dell'operatore, oppure un'area che si estende indefinitamente nella direzione verticale, oppure ancora un volume definito all'interno del quale l'operatore agisce. To locate the position of the human operator, you can consider for example a point corresponding to an area of the operator's body, or an area which extends indefinitely in the vertical direction, or even a defined volume within which the operator acts.

Il metodo secondo la presente divulgazione, la posizione futura che assumer? l'operatore all'istante di campionamento k+1 viene tenuta in considerazione aggiornando la soglia di confronto ck+1 della distanza dk+1 stimata tra robot e l'operatore umano ad ogni periodo di campionamento in maniera iterativa, sulla base della soglia di confronto ck stimata al periodo di campionamento precedente. Inizialmente (k=0), la posizione s0 del robot e la posizione o0 dell'operatore ? rilevata e la soglia di confronto c0 ? pari alla distanza minima dmin. Dopodich?, per gli istanti di campionamento successivi fino ad un nuovo istante di osservazione si procede come segue. The method according to this disclosure, the future position that will take? the operator at the sampling instant k+1 is taken into account by updating the comparison threshold ck+1 of the distance dk+1 estimated between the robot and the human operator at each sampling period in an iterative manner, based on the comparison of ck estimated to the previous sampling period. Initially (k=0), the position s0 of the robot and the position o0 of the operator ? detected and the comparison threshold c0 ? equal to the minimum distance dmin. After that, for the subsequent sampling instants up to a new observation instant, proceed as follows.

Secondo un aspetto, ci si pone nel caso pi? sfavorevole in cui l'operatore tra gli istanti di campionamento k e k+1 si muova in direzione esattamente contraria alla direzione di moto del robot collaborativo. In tale situazione, l'operatore a causa del suo stesso moto ridurr? la distanza rispetto al robot di una lunghezza pari al prodotto tra la sua velocit? ov e il periodo di campionamento Tc. Indicando con ovmax la massima velocit? alla quale verosimilmente potr? muoversi l'operatore umano, si potr? considerare uno spostamento massimo dell'operatore umano nella direzione del robot pari a ovmax*Tc. Di questo spostamento, secondo il metodo di questa divulgazione si tiene conto aggiornando la soglia di confronto ck+1 nel modo che sar? illustrato di seguito. According to one aspect, we arise in the most? unfavorable in which the operator between the sampling instants k and k+1 moves in a direction exactly opposite to the direction of motion of the collaborative robot. In this situation, the operator due to his own motion will reduce? the distance from the robot of a length equal to the product between its speed? ov and the sampling period Tc. Indicating with ovmax the maximum speed? to which it will probably be able move the human operator, you can? consider a maximum movement of the human operator in the direction of the robot equal to ovmax*Tc. This shift, according to the method of this disclosure, is taken into account by updating the comparison threshold ck+1 in the way that it will be? illustrated below.

Un diagramma di flusso di una procedura per stimare posizione e velocit? di un robot nel sistema di riferimento del dispositivo di controllo ? illustrato nella figura 2. Tale diagramma di flusso ? stato ricavato nell'ipotesi che la velocit? massima ovmax alla quale pu? muoversi un operatore umano ? di 1.6 m/s, che ? un valore di velocit? esemplificativo suggerito dallo standard ISO 13855 attualmente in vigore, per cui lo spostamento massimo che l'operatore pu? effettuare durante un periodo di campionamento Tc ? pari a 1.6*Tc. Indicando con ck il valore della soglia di confronto al k-esimo istante di campionamento, la nuova soglia di confronto all'istante di campionamento k+1 sar? maggiore della soglia ck di un valore corrispondente alla velocit? massima, as esempio il prodotto tra la velocit? massima ovmax e il periodo di campionamento Tc. In pratica, si considera il caso peggiore in cui ad ogni intervallo di campionamento l'operatore umano si sta muovendo alla sua velocit? massima ovmax nella direzione del robot. A flowchart of a procedure for estimating position and velocity? of a robot in the reference system of the controller ? shown in figure 2. This flowchart ? was obtained on the assumption that the speed? maximum ovmax to which can? to move a human operator ? of 1.6 m/s, what ? a speed value? example suggested by the ISO 13855 standard currently in force, for which the maximum movement that the operator can? perform during a sampling period Tc ? equal to 1.6*Tc. Indicating with ck the value of the comparison threshold at the k-th sampling instant, the new comparison threshold at the sampling instant k+1 will be? greater than the threshold ck of a value corresponding to the speed? maximum, as an example the product between the speed? maximum ovmax and the sampling period Tc. In practice, we consider the worst case in which at each sampling interval the human operator is moving at its speed? maximum ovmax in the direction of the robot.

Come nella classica tecnica SSM, al passo 1 si effettua una prima simulazione per verificare se ? possibile arrestare il robot sul percorso assegnato applicando per un solo intervallo di campionamento l?accelerazione massima amax e poi ripetutamente l'accelerazione minima amin, che ? valutata iterativamente sulla base del corrispondente stato di moto, fino al raggiungimento dello stato di arresto. Se, in tale condizione, ? possibile fermare il robot senza violare, in ogni instante, la condizione sulla minima distanza di separazione, si sceglie il valore di accelerazione massima amax, altrimenti si sceglie il valore di accelerazione minimo amin. As in the classic SSM technique, in step 1 a first simulation is carried out to check if ? Is it possible to stop the robot on the assigned path by applying the maximum acceleration amax for a single sampling interval and then repeatedly the minimum acceleration amin, which ? evaluated iteratively on the basis of the corresponding state of motion, until the state of rest is reached. If, in this condition, ? possible to stop the robot without violating, at any instant, the condition on the minimum separation distance, the maximum acceleration value amax is chosen, otherwise the minimum acceleration value amin is chosen.

Secondo un aspetto, le accelerazioni nominali minima amin e massima amax sono determinate sulla base di caratteristiche tecniche degli attuatori che movimentano il robot. Ad esempio, tali accelerazioni massima amax e minima amin possono essere determinate dalle coppie massima e minima sviluppabili dagli attuatori, e/o dalla massima potenza degli attuatori, ecc. According to one aspect, the minimum nominal accelerations amin and maximum amax are determined on the basis of technical characteristics of the actuators which move the robot. For example, these maximum accelerations amax and minimum amin can be determined by the maximum and minimum torques that can be developed by the actuators, and/or by the maximum power of the actuators, etc.

Assumendo che al passo 1 sia stata scelta l'accelerazione massima amax, al passo 2 si stimano la posizione sk+1 e la velocit? vk+1 che sarebbero raggiunte dal robot all'istante di campionamento k+1, sulla base della posizione sk e della velocit? vk all'istante di campionamento corrente k. Assuming that in step 1 the maximum acceleration amax has been chosen, in step 2 we estimate the position sk+1 and the speed? vk+1 that would be reached by the robot at the sampling instant k+1, on the basis of the position sk and the speed? vk at the current sampling instant k.

Diversamente dalla tecnica SSM, si stima una soglia di confronta ck+1 con la quale confrontare la distanza k+1 incrementando la soglia di confronto ck stimata all'istante di campionamento precedente k, partendo da dmin per k = 0, di una quantit? pari al prodotto tra la velocit? massima ovmax alla quale pu? muoversi un operatore umano e la durata del periodo di campionamento Tc. Nel caso esemplificativo illustrato in figura 2, tale velocit? massima ? stata stabilita in 1.6 m/s, per cui si determina la soglia di confronto ck+1 aumentando la distanza minima di un termine proporzionale alla velocit? massima ovmax di un operatore umano: Differently from the SSM technique, a comparison threshold ck+1 is estimated with which to compare the distance k+1 by increasing the comparison threshold ck estimated at the previous sampling instant k, starting from dmin for k = 0, by an amount equal to the product of the speed? maximum ovmax to which can? move a human operator and the duration of the sampling period Tc. In the exemplary case shown in figure 2, this speed? maximum ? been established in 1.6 m/s, for which it determines the comparison threshold ck+1 by increasing the minimum distance of a term proportional to the speed? maximum ovmax of a human operator:

ck+1 = ck 1.6*Tc ck+1 = ck 1.6*Tc

Se ? previsto che il robot si fermi (vk+1=0) (passo 3), allora si pu? controllare il robot per spostarlo con un'accelerazione di spostamento massima amax. Se invece all'istante di campionamento k+1, o a uno dei successivi, il robot sar? in movimento, allora bisogna verificare (passo 4) se la posizione stimata sk+1 del robot andr? oltre una distanza massima L, nel qual caso si controlla il robot con l'accelerazione minima amin. Self ? expected that the robot stops (vk+1=0) (step 3), then you can? control the robot to move with a maximum moving acceleration of max. If instead at the sampling instant k+1, or at one of the subsequent ones, the robot will be? moving, then you need to check (step 4) if the estimated position sk+1 of the robot will go? over a maximum distance L, in which case the robot is controlled with the minimum acceleration amin.

Nel caso in cui si prevede che il robot si stia muovendo all'istante di campionamento k+1 (passo 3: vk+1>0) e non stia fuoriuscendo dal percorso assegnato andando oltre una distanza massima L prestabilita (passo 4: sk+1<L), secondo il metodo di questa divulgazione si stima (passo 5) la distanza dk+1 che ci sar? tra il robot e l'operatore al prossimo istante di campionamento k+1 sulla base della posizione futura sk+1 stimata del robot e la posizione attuale ok dell'operatore umano come rilevata dai dispositivi di rilevazione. In the event that the robot is expected to be moving at the sampling instant k+1 (step 3: vk+1>0) and is not leaving the assigned path by going beyond a pre-established maximum distance L (step 4: sk+ 1<L), according to the method of this disclosure we estimate (step 5) the distance dk+1 that there will be? between the robot and the operator at the next sampling instant k+1 based on the estimated future position sk+1 of the robot and the current position ok of the human operator as detected by the detection devices.

Invece di confrontare la distanza stimata dk+1 con la distanza minima di sicurezza dall'operatore umano dmin, secondo il metodo di questa divulgazione si verifica (passo 6) se la distanza stimata dk+1 futura ? inferiore alla soglia di confronto ck+1, nel qual caso si controlla il robot con la minima accelerazione amin, altrimenti (passo 7) si determina un nuovo valore di accelerazione minima amin, alla quale si potr? movimentare il robot, in funzione della posizione sk+1 e della velocit? vk+1 stimate all'istante di campionamento futuro k+1. Se tale nuovo valore di accelerazione minima amin dovesse eccedere (passo 8) il valore di accelerazione massima amax, si manterr? il valore di accelerazione minima precedente, altrimenti si controlla il robot per impartirgli la velocit? vk+1 e l'accelerazione determinata, e si ripete iterativamente l'algoritmo per i cicli k+i futuri (passo 9) usando per ciascun ciclo k+i i valori stabiliti al ciclo precedente k+i-1, in modo da stimare la posizione e la velocit? del robot in pi? istanti di campionamento tra due istanti di osservazione consecutivi. Instead of comparing the estimated distance dk+1 with the minimum safety distance from the human operator dmin, according to the method of this disclosure it is verified (step 6) whether the estimated future distance dk+1 ? lower than the comparison threshold ck+1, in which case the robot is controlled with the minimum acceleration amin, otherwise (step 7) a new minimum acceleration value amin is determined, at which one can? move the robot, according to the position sk+1 and the speed? vk+1 estimated at future sampling instant k+1. If this new minimum acceleration value amin should exceed (step 8) the maximum acceleration value amax, will it remain? the value of the minimum acceleration previous, otherwise you control the robot to give him the speed? vk+1 is the determined acceleration, and the algorithm is repeated iteratively for future k+i cycles (step 9) using for each k+i cycle the values established in the previous k+i-1 cycle, so as to estimate the position and speed? of the robot in pi? sampling instants between two consecutive observation instants.

Secondo un aspetto, ? possibile introdurre un limite massimo vmax alla velocit? vk alla quale pu? essere movimentato il robot. In tal caso, anche il valore massimo di accelerazione amax che pu? essere impartita al robot dovr? essere regolato in modo che al termine del periodo di campionamento venturo il robot non abbia assunto una velocit? che eccede il limite massimo vmax. A tal fine, l'accelerazione massima che effettivamente potr? essere impartita al robot amaxeff sar? il valore minimo tra l'accelerazione massima amax nominale e il rapporto tra: la differenza tra il limite massimo vmax e la velocit? vk, e la durata Tc del periodo di campionamento. According to one aspect, ? is it possible to introduce a maximum limit vmax to the speed? vk to which can? be handled the robot. In this case, also the maximum value of acceleration amax that can? be imparted to the robot will have to? be adjusted so that at the end of the next sampling period the robot has not assumed a speed? which exceeds the maximum limit vmax. To this end, the maximum acceleration that actually can? be imparted to the robot amaxeff sar? the minimum value between the maximum acceleration amax nominal and the relationship between: the difference between the maximum limit vmax and the speed? vk, and the duration Tc of the sampling period.

Al successivo istante di osservazione, vengono rilevate la posizione dell'operatore umano e la posizione del robot s0 e l'algoritmo sopra descritto viene ripetuto daccapo. Grazie al metodo di questa divulgazione, il robot viene controllato in modo da mantenere sempre una distanza minima dall'operatore umano, anche qualora quest'ultimo dovesse compiere movimenti improvvisi. At the next observation instant, the position of the human operator and the position of the robot s0 are detected and the algorithm described above is repeated all over again. Thanks to the method of this disclosure, the robot is controlled in such a way as to always maintain a minimum distance from the human operator, even if the latter were to make sudden movements.

Il metodo di questa divulgazione pu? essere implementato tramite un sistema di controllo comprendente almeno un dispositivo di rilevazione configurato per rilevare una posizione del corpo dell'operatore rispetto ad una parte mobile del robot, una memoria, e un'unit? di controllo a microprocessore che esegue un programma per elaboratore avente un codice software installato nell'unit? a microprocessore per eseguire il metodo, configurato per elaborare dati memorizzati nella memoria e per controllare movimenti del robot collaborativo. The method of this disclosure can be implemented through a control system comprising at least one sensing device configured to sense a position of the operator's body with respect to a moving part of the robot, a memory, and a unit? microprocessor controller that executes a computer program having software code installed in the unit? microprocessor to execute the method, configured to process data stored in the memory and to control movements of the collaborative robot.

Claims (9)

RIVENDICAZIONI 1. Metodo di controllo di almeno un robot collaborativo con un operatore umano, detto metodo essendo implementabile mediante un sistema di controllo comprendente almeno un dispositivo di rilevazione, configurato per rilevare una posizione del corpo dell'operatore rispetto ad una parte mobile del robot, una memoria, un'unit? di controllo a microprocessore configurata per elaborare dati memorizzati nella memoria e per controllare movimenti di un robot collaborativo, il metodo comprendente rilevare una posizione (o0) del corpo dell'operatore rispetto ad almeno una parte mobile del robot in un primo istante di osservazione con detto almeno un dispositivo di rilevazione, quindi eseguire ciclicamente le seguenti operazioni ad ogni passo (k) di campionamento fino ad un secondo istante di osservazione successivo a detto primo istante di osservazione:1. Control method of at least one collaborative robot with a human operator, said method being implementable by means of a control system comprising at least one detection device, configured to detect a position of the operator's body with respect to a mobile part of the robot, a memory, a unit control system configured to process data stored in the memory and to control movements of a collaborative robot, the method comprising detecting a position (o0) of the operator's body with respect to at least one mobile part of the robot in a first observation instant with said at least one detection device, then cyclically perform the following operations at each sampling step (k) up to a second observation instant following said first observation instant: 1) determinare una soglia stimata di confronto (ck) per un passo di campionamento corrente (k);1) determining an estimated comparison threshold (ck) for a current sampling step (k); 2) determinare una velocit? corrente (vk) e una posizione corrente (sk) della parte mobile del robot al passo di campionamento corrente (k);2) determine a speed? current (vk) and a current position (sk) of the robot moving part at the current sampling step (k); 3) stimare una velocit? stimata (vk+1) e una posizione stimata (sk+1) della parte mobile del robot al successivo passo (k+1) di campionamento in funzione di un'accelerazione desiderata da impartire alla parte mobile del robot;3) estimate a speed? estimated (vk+1) and an estimated position (sk+1) of the mobile part of the robot at the next sampling step (k+1) as a function of a desired acceleration to be imparted to the mobile part of the robot; 4) stimare una distanza stimata (dk+1) tra la posizione stimata (sk+1) e la posizione (ok) del corpo dell'operatore;4) estimate an estimated distance (dk+1) between the estimated position (sk+1) and the position (ok) of the operator's body; 5) determinare una soglia stimata di confronto (ck+1) per il successivo passo (k+1) di campionamento in funzione di una distanza nominale (dmin) di sicurezza, di una velocit? massima stimata di movimento (ovmax) dell'operatore umano e della soglia stimata di confronto (ck) per detto passo (k) di campionamento corrente;5) determine an estimated comparison threshold (ck+1) for the subsequent sampling step (k+1) as a function of a nominal safety distance (dmin), of a speed? estimated maximum movement (ovmax) of the human operator and the estimated comparison threshold (ck) for said current sampling step (k); 6) se detta distanza stimata (dk+1) ? inferiore ad una soglia stimata di confronto (ck+1), controllare detta parte mobile del robot impartendo alla parte mobile un'accelerazione minima nominale (amin), altrimenti eseguire le operazioni seguenti da 7) a 9);6) if said estimated distance (dk+1) ? lower than an estimated comparison threshold (ck+1), control said mobile part of the robot by imparting a minimum nominal acceleration to the mobile part (amin), otherwise carry out the following operations from 7) to 9); 7) stimare un nuovo valore di accelerazione minima nominale (amin) per il successivo passo (k+1) di campionamento in funzione della posizione stimata (sk+1) e della velocit? stimata (vk+1); 7) estimate a new minimum nominal acceleration value (amin) for the next sampling step (k+1) as a function of the estimated position (sk+1) and of the speed? estimated (vk+1); 8) se detto nuovo valore di accelerazione minima nominale (amin) eccede un valore di accelerazione massima nominale (amax), determinare il nuovo valore di accelerazione minima nominale (amin) per il successivo passo (k+1) di campionamento uguale al valore di accelerazione minima nominale (amin) per il passo (k) di campionamento corrente;8) if said new minimum nominal acceleration value (amin) exceeds a maximum nominal acceleration value (amax), determine the new minimum nominal acceleration value (amin) for the next sampling step (k+1) equal to the value of rated minimum acceleration (amin) for the current sampling step (k); 9) controllare il robot per impartire alla parte mobile del robot detta accelerazione desiderata.9) controlling the robot to impart to the moving part of the robot said desired acceleration. 2. Metodo secondo la rivendicazione 1, in cui detta soglia stimata di confronto (c1) per un primo passo di campionamento (k=1) ? determinata come somma di detta distanza nominale (dmin) di sicurezza e del prodotto tra detta velocit? massima stimata di movimento (ovmax) dell'operatore umano per una durata di un periodo di campionamento (Tc), e detta soglia stimata di confronto (ck+1) per detto successivo passo (k+1) di campionamento ? determinata come somma della soglia stimata di confronto (ck) a detto passo (k) di campionamento corrente e del prodotto tra detta velocit? massima stimata di movimento (ovmax) dell'operatore umano per la durata di un periodo di campionamento (Tc).2. Method according to claim 1, wherein said estimated comparison threshold (c1) for a first sampling step (k=1) ? determined as the sum of said nominal distance (dmin) safety and the product between said speed? estimated maximum movement (ovmax) of the human operator for a duration of a sampling period (Tc), and said estimated comparison threshold (ck+1) for said subsequent sampling step (k+1) ? determined as the sum of the estimated comparison threshold (ck) at said current sampling step (k) and of the product between said speed? estimated maximum movement (ovmax) of the human operator for the duration of a sampling period (Tc). 3. Metodo secondo una delle rivendicazioni precedenti, comprendente le operazioni di:3. Method according to one of the preceding claims, comprising the operations of: se detta velocit? stimata (vk+1) eccede una velocit? massima nominale (vmax), controllare il robot per muovere detta parte mobile del robot con detta velocit? massima nominale (vmax);if that speed? estimated (vk+1) exceeds a speed? nominal maximum (vmax), control the robot to move said moving part of the robot with said speed? rated maximum (vmax); controllare il robot per impartire a detta parte mobile del robot un'accelerazione massima effettiva (amaxeff) come il valore minimo tra un'accelerazione massima nominale (amax) e il rapporto tra: la differenza tra detta velocit? massima nominale (vmax) e la velocit? corrente (vk), e una durata di un periodo di campionamento (Tc).control the robot to impart to said mobile part of the robot a maximum effective acceleration (amaxeff) as the minimum value between a maximum nominal acceleration (amax) and the ratio between: the difference between said speed? maximum nominal (vmax) and the speed? current (vk), and a duration of one sampling period (Tc). 4. Metodo secondo una delle rivendicazioni precedenti, in cui detta accelerazione nominale minima (amin) e detta accelerazione nominale massima (amax) sono determinate sulla base di caratteristiche tecniche di attuatori che movimentano il robot.4. Method according to one of the preceding claims, wherein said minimum nominal acceleration (amin) and said maximum nominal acceleration (amax) are determined on the basis of technical characteristics of actuators which move the robot. 5. Metodo secondo una delle rivendicazioni precedenti, in cui detta posizione (ok) del corpo dell'operatore ? una posizione di un punto di una zona del corpo dell'operatore umano, oppure in alternativa ? una posizione di un punto di una superficie destinata ad essere occupata dall'operatore umano, oppure in alternativa ? un punto di un volume destinato ad essere occupato dall'operatore umano.5. Method according to one of the preceding claims, wherein said position (ok) of the operator's body ? a position of a point of an area of the human operator's body, or alternatively ? a position of a point of a surface destined to be occupied by the human operator, or alternatively ? a point of a volume intended to be occupied by the human operator. 6. Programma per elaboratore caricabile in una memoria di un'unit? a microprocessore, comprendente un codice software configurato per far funzionare l'unit? a microprocessore in modo da effettuare operazioni del metodo di una delle rivendicazioni da 1 a 5 quando il programma ? eseguito dall'unit? a microprocessore. 7. Sistema di controllo di almeno un robot collaborativo con un operatore umano, comprendente:6. Computer program that can be loaded into a memory unit? microprocessor, including a software code configured to operate the unit? to microprocessor in order to carry out operations of the method of one of the claims from 1 to 5 when the program ? performed by the unit? microprocessor. 7. Control system of at least one collaborative robot with a human operator, including: almeno un dispositivo di rilevazione configurato per rilevare una posizione del corpo dell'operatore rispetto ad una parte mobile del robot,at least one sensing device configured to sense a position of the operator's body with respect to a moving part of the robot, una memoria,a memory, un'unit? di controllo a microprocessore configurata per elaborare dati memorizzati nella memoria e per controllare movimenti di un robot collaborativo, caratterizzato dal fatto che in detta unita di controllo a microprocessore ? caricato un programma per elaboratore della rivendicazione 6 per controllare i movimenti di un robot collaborativo eseguendo il metodo di una delle rivendicazioni da 1 a 5. a unit? control unit configured to process data stored in the memory and to control movements of a collaborative robot, characterized in that said microprocessor control unit ? loaded a computer program of claim 6 for controlling the movements of a collaborative robot by carrying out the method of one of claims 1 to 5.
IT102021000010472A 2021-04-26 2021-04-26 METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT IT202100010472A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
IT102021000010472A IT202100010472A1 (en) 2021-04-26 2021-04-26 METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT
PCT/IB2022/053632 WO2022229785A1 (en) 2021-04-26 2022-04-19 Method and related system for safely controlling a robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT102021000010472A IT202100010472A1 (en) 2021-04-26 2021-04-26 METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT

Publications (1)

Publication Number Publication Date
IT202100010472A1 true IT202100010472A1 (en) 2022-10-26

Family

ID=77126928

Family Applications (1)

Application Number Title Priority Date Filing Date
IT102021000010472A IT202100010472A1 (en) 2021-04-26 2021-04-26 METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT

Country Status (2)

Country Link
IT (1) IT202100010472A1 (en)
WO (1) WO2022229785A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7036078B2 (en) * 2019-03-28 2022-03-15 オムロン株式会社 Control system, control method, and control unit

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010120139A (en) * 2008-11-21 2010-06-03 New Industry Research Organization Safety control device for industrial robot
WO2017199196A1 (en) * 2016-05-19 2017-11-23 Politecnico Di Milano Method and device for controlling the motion of one or more collaborative robots
JP2019206080A (en) * 2017-08-18 2019-12-05 三菱電機株式会社 Robot control device, and robot system using the same
US20210053227A1 (en) * 2019-08-23 2021-02-25 Marek WARTENBERG Safe operation of machinery using potential occupancy envelopes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010120139A (en) * 2008-11-21 2010-06-03 New Industry Research Organization Safety control device for industrial robot
WO2017199196A1 (en) * 2016-05-19 2017-11-23 Politecnico Di Milano Method and device for controlling the motion of one or more collaborative robots
JP2019206080A (en) * 2017-08-18 2019-12-05 三菱電機株式会社 Robot control device, and robot system using the same
US20210053227A1 (en) * 2019-08-23 2021-02-25 Marek WARTENBERG Safe operation of machinery using potential occupancy envelopes

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZANCHETTIN ANDREA MARIA ET AL: "Towards an optimal avoidance strategy for collaborative robots", ROBOTICS AND COMPUTER INTEGRATED MANUFACTURING, vol. 59, October 2019 (2019-10-01), pages 47 - 55, XP085701957, ISSN: 0736-5845, DOI: 10.1016/J.RCIM.2019.01.015 *

Also Published As

Publication number Publication date
WO2022229785A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
Halme et al. Review of vision-based safety systems for human-robot collaboration
US9827681B2 (en) Human cooperation robot system in which robot is caused to perform retreat operation depending on external force
Lacevic et al. Safety assessment and control of robotic manipulators using danger field
US11207777B2 (en) Robot controlling device and automatic assembling system
US9737989B2 (en) Human cooperation robot system in which robot is caused to perform retreat operation
US6678582B2 (en) Method and control device for avoiding collisions between cooperating robots
US9701014B2 (en) Robot control device for preventing misjudgment by collision judging part
US20170239815A1 (en) Method and Device for Open-Loop/Closed-Loop Control of a Robot Manipulator
KR20130096195A (en) Method and device for executing a manipulator process
Makarov et al. Adaptive filtering for robust proprioceptive robot impact detection under model uncertainties
Navarro et al. An ISO10218-compliant adaptive damping controller for safe physical human-robot interaction
Li et al. Role adaptation of human and robot in collaborative tasks
Polverini et al. A constraint-based programming approach for robotic assembly skills implementation
Berti et al. Dynamic recovery of cable-suspended parallel robots after a cable failure
IT202100010472A1 (en) METHOD AND RELATED SAFETY CONTROL SYSTEM OF A ROBOT
Lippi et al. Safety in human-multi robot collaborative scenarios: a trajectory scaling approach
CN108724180B (en) Robot system
JP2013169609A (en) Method for detecting collision of robot
Salmi et al. Advanced safety solutions for human-robot-cooperation
Uchiyama et al. Residual vibration suppression and energy saving in industrial machines using a trapezoidal velocity profile
JP5371882B2 (en) Force control device
Li et al. A nonlinear momentum observer for sensorless robot collision detection under model uncertainties
JP2018144171A (en) Robot control method
Muratore et al. Enhanced tele-interaction in unknown environments using semi-autonomous motion and impedance regulation principles
Zheng et al. Online optimal motion generation with guaranteed safety in shared workspace