From e02ddd9fb09f778f1538f93c72f7152331807316 Mon Sep 17 00:00:00 2001 From: marcsello Date: Sat, 22 May 2021 00:06:03 +0200 Subject: [PATCH] asd --- src/bib/mybib.bib | 33 +++++++++++++++++++++ src/content/ursim_impl.tex | 59 ++++++++++++++++++++++++++++---------- 2 files changed, 77 insertions(+), 15 deletions(-) diff --git a/src/bib/mybib.bib b/src/bib/mybib.bib index 86f844e..c960183 100644 --- a/src/bib/mybib.bib +++ b/src/bib/mybib.bib @@ -325,8 +325,41 @@ } @misc{ur3_specs, + author = {Universal Robots}, title = {UR3 Technical Specifications}, howpublished = {\url{https://www.universal-robots.com/media/240736/ur3_en.pdf}}, note = {Hozzáférve: 2021-05-21} +} +, + + +@misc{rg2datasheet, + author = {OnRobot}, + title = {RG2 Gripper Datasheet}, + howpublished = {\url{https://onrobot.com/sites/default/files/documents/Datasheet_RG2_v1.0_EN.pdf}}, + note = {Hozzáférve: 2021-05-21} +} + + + +@misc{rg2tftdatasheet, + author = {OnRobot}, + title = {RG2-FT Gripper Datasheet}, + howpublished = {\url{https://onrobot.com/sites/default/files/documents/Datasheet_RG2-FT_v1.0_EN.pdf}}, + note = {Hozzáférve: 2021-05-21} +} + +@misc{whatisindustry4, + author = {Epicor}, + title = {What is Industry 4.0—the Industrial Internet of Things (IIoT)?}, + howpublished = {\url{https://www.epicor.com/en/resource-center/articles/what-is-industry-4-0/}}, + note = {Hozzáférve: 2021-05-21} +} + +@misc{robot_client_interfaces, + author = {Universal Robots}, + title = {Overview of Client Interfaces}, + howpublished = {\url{https://www.universal-robots.com/articles/ur/interface-communication/overview-of-client-interfaces/}}, + note = {Hozzáférve: 2021-05-21} } \ No newline at end of file diff --git a/src/content/ursim_impl.tex b/src/content/ursim_impl.tex index 32750f3..e3d5b23 100644 --- a/src/content/ursim_impl.tex +++ b/src/content/ursim_impl.tex @@ -5,18 +5,21 @@ %---------------------------------------------------------------------------- % Ipar 4.0 ??? +% Szóval van ezt a 4. ipari forradalom +% itt irodalom kutatjuk, hogy hogy jön ez össze a cloudból irányitott dolgokkal +% Leírom hogy a peremhálózatok itt mennyire király módon tudnak a segítségünkre válni +% mert az fellendíti, meg nagyon felhő -% leírni, hogy igazából itt csak egy demót alakítottam át, így kívülről nem fog semmi érdekes látszani +\cite{whatisindustry4} + +Ez az alkalmazás a peremhálózati rendszerek alacsony késleltetését aknázza ki. Hiszen a robotika vezérlésnél fontos a precíz irányítás, úgy vélem itt különösen jól alkalmazható ez a technológia. A peremhálózati rendszereknek hála tovább csökkenthetővé válik a gyárakban helyben telepített informatikai infrastruktúra mértéke, hiszen több alkalmazás válik \gls{felho}be "költöztethetővé" és ezáltal annak előnyeit is nagyobb mértékben lesznek képesek kihasználni a gyártósorok. + +Ebben a feladatban egy már rendelkezésre álló demót alakítottam át úgy, hogy az kihasználja a peremhálózati rendszerek adta lehetőségeket. \section{Környezet ismertetése} % Általánosan a robotkar cumók ismertetése - -% Ide leírom, hogy mi volt kész, amivel dolgozni tudtam - -% Itt leírom hogy mi volt meg mielőtt nekiálltam -% Mivel ezt a dipterv alatt csináltam, ezért részletesebben fogok írni róla - +A feladat megkezdésekor rendelkezésemre állt egy gondosan megtervezett demó szcenárió, amely kifejezetten a hálózati késleltetés jelentőségének bemutatására lett tervezve. Ez a szcenárió magában foglalja mind a szoftveres és a hardveres megoldást. A kettőt összekötő hálózatot és még egyedileg 3D nyomtatott munkadarabokat is. \subsection{Universal Robots} % Általános leírás a robotkarokról, meg hogy ezek a csávók gyártanak ilyeneket @@ -24,27 +27,51 @@ \subsubsection{Fizikai jellemzők} -A használt robotok +Jellemzően többfajta felépítésű robotkar létezik. A demó során használt mindkettő robotkar csuklós felépítésű, azaz a az emberi karhoz hasonlóan hajlatokkal (joint) rendelkezik a merev tagok között. + +A használt robotkarok hat darab ilyen hajlattal rendelkeznek, amely kellő szabadságot nyújt nekik a mozgás terén. A hat jointból ötöt +/- 360$\deg$ lehet elforgatni, az utolsót amely a robotkar "csuklóját" adja pedig végtelenszer lehet körbeforgatni. Egy ilyen robotkar képes fél méteres (500mm) körön belül mozgásokat végezni, és három kilogramm hasznos terhet mozgatni. Maga a robotkar saját súlya 11 kilogramm\cite{ur3_specs}. + +A két robotkar végére két különböző gripper van telepítve, mindkettő \textit{OnRobot} gyártmány, viszont az egyik egy \textit{rg2} a másik pedig \textit{rg2-ft}. Fizikai jellemzőit tekintve a két gripper hasonló: mindkettő képes legalább 100mm-re kinyílni és 2 kilogramm erővel vízszintesen tömeget megemelni. A szorításra maximum 40 Newton erőt képesek kifejteni\cite{rg2datasheet,rg2tftdatasheet}. A fő különbséget a gripperek kommunikációs interfésze nyújtja. -\cite{ur3_specs} -% Ide majd keresek valamit, lehet átnevezem valami okosra a címét \subsubsection{Kommunikációs interfész} % RTDE Interface +\cite{robot_client_interfaces} + +\begin{itemize} + \item \textbf{Primary/Secondary Interfaces} + \item \textbf{Real-time Interfaces} + \item \textbf{Dashboard Server} + \item \textbf{Socket Communication} + \item \textbf{XML-RPC} + \item \textbf{\acrfull{rtde}} +\end{itemize} + +% Említeni a grippereket is + + \subsubsection{Szimulátor} % Dockursim +Természetesen a tanszéken csak kettő robotkar van, amelyek nem állnak mindig készen a tesztelésre. A fejlesztés és a tesztelés megkönnyítésére több szimulátor is megvizsgálásra került a Demót összeállító csapat által. Végül a leghatékonyabban használhatónak a \textit{DockURSim}\footnote{\url{https://github.com/ahobsonsayers/DockURSim}} bizonyult. + +Lényegében a \textit{DockURSim} a robotkarokat közvetlenül irányító, a \textit{Teach Pendanton} futó szoftver becsomagolva egy \textit{Docker} konténerbe. Konkrét robotkart nem irányít, de a kommunikációs interfészeket és azok funkcionalitását teljes mértékben implementálja. Lehetőségünk van a grafikus felületet kezelni és ott meg tudjuk figyelni a robotkar mozgását. + +Egyetlen hátránya ennek a megoldásnak, hogy a robotkarokat önállóan egy izolált környezetben tudja csak szimulálni, így a környezet fizikai hatásai, a gripperek működése és a robotkarok egymással való találkozását nem képes modellezni. + \subsection{Demó} +A megvalósított demó egy általános összeszerelési szcenáriót mintáz. Ebben a szcenárióban a két robotkar egyenként felemelnek egy-egy munkadarabot. Ezeket a levegőben összeillesztik, majd ezután az egyik robotkar elengedi, a másik pedig leteszi. + +Bár egyszerűnek tűnik, ebben a szcenárióban nagy hangsúly helyezkedik a hálózat pontos időzítésérére. Hiszen a kritikus ponton, amikor a két robotkar össze illeszti a munkadarabot kiemelten fontos, hogy egyszerre mozogjanak, hiszen ha ez nem sikerül, akkor összeillesztés helyett eltörik a munkadarabot. + +A következőkben részletesen bemutatom a demó felépítését és működését. + \subsubsection{Környezet} -% Mindenképp meg kell említeni hogy találó neveket adtak nekik - -% Itt le lehetne írni, hogy hogy is néz ki ez a demo, milyen lépésekből áll és mi a setup - -% Ki kell emelni hogy van egy kritikus szinkronizációs pont +A demó szcenáriót lejátszó robotkarok egy asztalon kerültek telepítésre. Két oldalt a két robotkar helyezkedik el. A robotkaroknak a szcenáriót tervező csapat találó módon az Erik és a Fred neveket adták. Az Erik nevezetű robotkaron található az \textit{rg2-ft} típusú gripper, amely önállóan csatlakozik a hálózatra, ezzel szemben a Fred nevezetű robotkaron lévő gripper a robotkar kommunikációs interfészén keresztül kapja az információt. \begin{figure}[h!] \centering @@ -53,6 +80,8 @@ A használt robotok \label{fig:work_table} \end{figure} +Az asztalon a két munkadarabnak kijelölt helye van, ahonnan a robotkarok felemelik, az összeillesztés az asztal közepénél történik, majd valahol itt is helyezi el a kész darabot. A környezet vizuális bemutatásául \aref{fig:work_table}.\ ábra szolgál. + \subsubsection{Vezérlés} A demo vezérlésére a munkám elején egy monolit Python program állt rendelkezésemre. A program úgy lett tervezve, hogy elindításával csatlakozik mindkettő robotkar \acrshort{rtde} interfészére. Majd sorban elküldi a robotkaroknak a demo végrehajtásához szükséges utasításokat. A % TODO