SE446071B - Sett att programmera och styra en manipulator samt programmerings- och styranordning for genomforande av settet - Google Patents

Sett att programmera och styra en manipulator samt programmerings- och styranordning for genomforande av settet

Info

Publication number
SE446071B
SE446071B SE7611920A SE7611920A SE446071B SE 446071 B SE446071 B SE 446071B SE 7611920 A SE7611920 A SE 7611920A SE 7611920 A SE7611920 A SE 7611920A SE 446071 B SE446071 B SE 446071B
Authority
SE
Sweden
Prior art keywords
manipulator
arm
hand
during
axes
Prior art date
Application number
SE7611920A
Other languages
English (en)
Other versions
SE7611920L (sv
Inventor
J F Engelberger
T H Lindbom
M J Dunne
W Perzley
W N Roberts
H L Gardner
Original Assignee
Unimation Inc
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 Unimation Inc filed Critical Unimation Inc
Publication of SE7611920L publication Critical patent/SE7611920L/sv
Publication of SE446071B publication Critical patent/SE446071B/sv

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23PMETAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
    • B23P21/00Machines for assembling a multiplicity of different parts to compose units, with or without preceding or subsequent working of such parts, e.g. with programme control
    • B23P21/002Machines for assembling a multiplicity of different parts to compose units, with or without preceding or subsequent working of such parts, e.g. with programme control the units stationary whilst being composed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J17/00Joints
    • B25J17/02Wrist joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0084Programme-controlled manipulators comprising a plurality of manipulators
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16HGEARING
    • F16H9/00Gearings for conveying rotary motion with variable gear ratio, or for reversing rotary motion, by endless flexible members
    • F16H9/02Gearings for conveying rotary motion with variable gear ratio, or for reversing rotary motion, by endless flexible members without members having orbital motion
    • F16H9/04Gearings for conveying rotary motion with variable gear ratio, or for reversing rotary motion, by endless flexible members without members having orbital motion using belts, V-belts, or ropes
    • F16H9/10Gearings for conveying rotary motion with variable gear ratio, or for reversing rotary motion, by endless flexible members without members having orbital motion using belts, V-belts, or ropes engaging a pulley provided with radially-actuatable elements carrying the belt
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/21Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
    • G05B19/25Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control
    • G05B19/251Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude
    • G05B19/253Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude with speed feedback only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34236Multiplex for servos, actuators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34239Multiplex for whole system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35238Gray-code
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35543Cartesian to polar and vice versa
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39002Move tip of arm on straight line
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39468Changeable hand, tool, code carrier, detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40307Two, dual arm robot, arm used synchronously, or each separately, asynchronously
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42207Generate points between start and end position, linear interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/43Speed, acceleration, deceleration control ADC
    • G05B2219/43183Speed control, input is the reference, but no feedback
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45051Transfer line
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45083Manipulators, robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49395Repeating same operations for other coordinates

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)
  • Automatic Assembly (AREA)

Description

7611920-5 2 Ett skäl till att programmerbara manipulatorer eller industri- robotar ej har utnyttjats vid samansättningslinjeoperationer är att det hitintills har ansetts nödvändigt att åstadkomma något slag av robotöga i form av en övervakande televisionskamera eller liknande 'samt att åstadkomma lämplig koordination mellan hand och öga, så att roboten kan tolka den visuella scenen och åstadkomma korrekt hand- orientering'för att taga upp detaljen och sätta samman den med en annan detalj. De flesta av, om inte alla, dessa arrangemang har an- sett robotögat väsentligt. Koordination mellan hand och öga är emellertid extremt svår och dyrbar att uppnå tco m vid de enklaste. sammansättningsoperationer.
Ett ytterligare skäl till att programmerbara manipulatorer ej hitintills har utnyttjats vid sammansättningslinjeoperationer ligger i grundidên för framställning vid sammansättningslinje, vilken idé är att reducera enskilda åtgärder till de enklaste åtgärder som är praktiska. Denna idê grundar sig på den tanken, att om arbetet är enkelt kan en arbetare snabbt tränas upp och kan fås att bli mycket I skicklig på en enkel uppgift. Vidare är hans skicklighet ej en till- gång att räkna med och driften störes föga av personalomsättning.
Denna sammansättningslinjeidë är överflyttad till överföringsmaskin- automatisering, varvid varje station på linjen utför endast en sär- skild funktion. I enlighet med detta sätt att tänka är det ekonomiskt 'ej berättigat att ersätta var och en av mängden arbetare längs en sammansättningslinje med en dyrbar, programmerbar robot. I industri- er utanför bilindustrin där relativt låga sammansättningsvolymer er- fordras kan dessutom för särskilda ändamål avsedda sammansättninge- maskiner ej göras ekonomiskt berättigade på någon grund. De före- fintliga programmerbara manipulatorerna har dessutom ej kunnat åstad- komma den nödvändiga positioneringshastigheten och -noggrannheten, som skulle erfordras för att ersätta människor vid sammansättningen av detaljer. Att blott och bart föra samman tvâ till varandra passande detaljer och sätta saman dem med skruvar kräver exempelvis en hög koordinationsgrad och samverkansgrad mellan olika manipulatorarmar, om de skall utföra denna operation automatiskt. åEtt annat skäl till att förefintliga programmerbara manipulatorer ej har utnyttjats för att utföra sammansättning av detaljer på samman- sättningslinjebas är, att inlärningen eller den första programmering- en av var och en av manipulatorerna för utförande av en serie inveck- lade uppgifter, av vilka många inbegriper rörelse i sneda vinklar och plan, är mycket arbets- och tidskrävande, särskilt vid insikt om att detaljerna kan behöva sammansättas med en hög precisions- och 3 - 7611920-5 noggrannhetsgrad. Detta gäller särskilt i de fall då manipulator- 'armen måste ha åtminstone sex oberoende frihetsgrader för att det detaljgripande elementet, dvs manipulatorhanden, skall få det nöd- vändiga rörelseområdet för att kunna utföra operationer med samman- sättning av små detaljer. I sådana fall blir kravet på samtidig rörelse längs ett antal olika axlar under inlärningsoperationen för åstadkommande av den önskade rörelsen hos manipulatorhanden längs en särskild linje nästan omöjlig att utföra för en mänsklig opera- tör. Om exempelvis ett stift måste införas i en öppning i en annan detalj, är det extremt svårt för en mänsklig operatör att välja just de rätta hastighetskomponenterna för alla axlar, längs vilka rörelse erfordras, för att åstadkomma den önskade, resulterande rätlinjiga rörelsen längs öppningens axel, särskilt då öppningens axel ej är inriktad med någon rörelseaxel hos manipulatorarmen.
Uppgiften att först programmera eller lära manipulatorn kompli- ceras vidare av det förhållandet, att hjälpmedel måste anordnas för tillförsel av stora mängder osammansatta detaljer till sammansättninge- stationen, där de kan plockas upp av manipulatorn under sammansätt- ningsoperationen. Vissa små detaljer kan tillföras en fast upplock- ningspunkt av vibratorskålar eller liknande anordningar. Som följd av sin storlek, form eller vikt kan emellertid många delar ej matas till en given upplockningspunkt utan föres i stället fram till samman- sättningsstationen på lastpallar, vilka vardera har ett bestämt an- tal detaljer i olika lägen på lastpallen. Manipulatorarmen måste då programmeras eller läras läget för varje detalj på lastpallen, så att under successiva sammansättningsoperationer samma typ av detalj kom- mer att plockas upp från olika lägen på pallen. Inlärningen av mani- pulatoranordningen kompliceras således ytterligare, när på pallar lagrade detaljer utnyttjas under sammansättningsoperationen.
I situationer där små detaljer sammansättes medelst två samverkan- de manipulatorarmar, exempelvis när en arm inför en fjäder i en öpp- ning och hâller ned fjädern medan en hållare anbringas över fjädern av den andra armen, är det också betydelsefullt att den ena armens läge ej ändras under det att den andra armen programmeras för eller läres sin önskade rörelse. I arrangemang enligt tidigare teknik kan manipulatorarmen förflyttas till ett önskat läge under inlärnings- operationen och detta läge registreras som ett program i ett minnes- lager för att användas vid avspelning, men inga hjälpmedel anordnades för att säkerställa att armen skulle förbli fast i det läget under godtycklig tid. Armen kunde därför förflyttas av en tillfällighet 7611920-5 4 av operatören vid justering av en detalj i manipulatorhandens om- råde. Armen skulle också sjunka som följd av läckning i de styrande hydraulventilerna, om armen lämnades kvar i ett särskilt läge under en utsträckt tidsperiod. _ Ett huvudändamål med föreliggande uppfinning är därför att åstad- komma ett programmerbart, automatiskt sammansättningssystem, i vilket en eller flera av de ovan nämnda nackdelarna hos den tidigare teknik- ens arrangemang är eliminerade.
Ett annat ändamål med föreliggande uppfinning är att åstadkomma ett nytt och förbättrat programerbart, automatiskt sammansättnings- system, medelst vilket sammansättningen av små detaljer uppnås genom programmerad, koordinerad rörelse mellan två samverkande manipulator- armar.
Ett ytterligare ändamâl med föreliggande uppfinning är att åstadkomma ett nytt och förbättrat programmerbart, automatiskt samman- sättningssystem, i vilket koordineringen mellan tvâ invid varandra belägna programmerbara manipulatorer utnyttjas för sammansättning av detaljer på ett centralt beläget arbetsbord samt förbättrade hjälp- medel är anordnade för att först lära de två manipulatorerna att utföra de önskade sammansättningsoperationerna.
I Ett annat ändamål medföreliggandeuppfinning är att åstadkomma en ny och förbättrad programmerbar manipulator, vilken som följd av sin positioneringshastighet och -noggrannhet är särskilt lämpad att utnyttja vid sammansättningen av små detaljer i en arbetsstation in- till manipulatorn.
Ytterligare ett ändamål med föreliggande uppfinning är att åstad- komma en ny och förbättrad programmerbar manipulatoranordning, i vilken hjälpmedel är anordnade för bistånd vid inlärningen eller pro- grammeringen av manipulatorarmen, så att den detaljgripande handen automatiskt kan förflyttas i en särskild riktning och till en önskad änapwmt längs den linjen. I Ännu ett annat ändamål med föreliggande uppfinning är att åstad- komma en ny och förbättrad programmerbar manipulatoranordning, i vilken en dator utnyttjas under den första inlärningen eller program- meringen av manipulatorarmen för att beräkna punkterna längs en önskad, rätlinjig bana samt registrera dessa punkter som programsteg i manipulatorminnet, varvid dessa steg vid avspelning bringar mani- pulatorhanden att förflytta sig längs den önskade, räta linjen.
Ett annat ändamål med föreliggande uppfinning är att åstadkomma en ny och förbättrad programmerbar manipulatoranordning, i vilken en s 7611920-5 dator kan användas under den första inlärningen eller programmeringen av manipulatorarmen för utförande av olika uppgifter och beräkning- ar samt hjälpmedel är anordnade för lagring av de av datorn alstrade data vid det korrekta programsteget i manipulatorminnet för att där- med styra manipulatorarmens rörelse vid avspelning i överensstämmel- se med de av datorn under inlärningsoperationen alstrade data.
Ett annat ändamål med föreliggande uppfinning är att åstadkomma en ny och förbättrad programmerbar manipulatoranordning för att avlägsna detaljer från eller placera detaljer på förutbestämda stäl- len på en lastpall, varvid en dator utnyttjas under den första inlär- ningen eller programmeringen av manipulatorarmen för att ur till datorn matade data beträffande vissa ställen, där manipulatorarmen plockar upp eller placerar detaljer på lastpallen, beräkna de nöd- vändiga programstegen för att förflytta manipulatorarmen till alla andra ställen för detaljer på lastpallen under successiva avspelnings- cykler samt registrera dessa programsteg i manipulatorminnet auto- matiskt.
Ytterligare ett annat ändamål med föreliggande uppfinning är att möjliggöra en ny och förbättrad programmerbar, automatisk samman- sättningsstation, vid vilken två programmerbara manipulatorarmar samverkar med ett centralt beläget arbetsbord för sammansättning av ett flertal detaljer på bordet samtidigt som hela sammansättnings- stationen upptar ett minimum av golvutrymme.
Ytterligare ett ändamål med föreliggande uppfinning är att möjliggöra ett nytt och förbättrat programmerbart, automatiskt sam- mansättningssystem, i vilket ett antal sammansättningsstationer, som vardera utnyttjar ett par samverkande manipulatorarmar, utnyttjas samt hjälpmedel är anordnade för drivning av dessa sammansättnings- stationer ur fas, så att en enda operatör kan utföra vissa manuella uppgifter efter varandra vid varje sammansättningsstation.
Ett annat ändamål med föreliggande uppfinning är att möjliggöra en ny och förbättrad programmerbar, automatisk sammansättningsstation, vid vilken två programmerbara manipulatorarmar samverkar med ett centralt beläget arbetsbord för sammansättning av ett flertal detaljer på bordet samt hjälpmedel är anordnade för att under den första in- lärningen eller programmeringen av varje manipulatorarm hålla endera armen i det senast inlärda läget, medan den andra armen förflyttas till det nästa, önskade läget. Ännu ett annat ändamål med föreliggande uppfinning är att åstadkomma en ny och förbättrad programmerbar manipulatoranordning, i vilken hjälpmedel är anordnade för att under den första inlärnings- 7611920-5 e operationen tillfälligt registrera manipulatorarmens läge och utnyttja varje tillfälligt registrerade läge för att styra armens läge under inlärningsoperationen, tills armen förflyttas till ett annat läge.
Ett annat ändamål med föreliggande uppfinning är att åstadkomma ett nytt och förbättrat programmerbart, automatiskt sammansättnings- system, i vilket ett flertal automatiska sammansättningsstationer är anordnade, vilka vardera har ett par programmerbara manipulatorarmar, som samverkar vid sammansättningen av en önskad grupp detaljer, dator- lagringsanordningar, som är gemensamma för stationerna, utnyttjas för lagring av en serie programsteg, lämpade för att förflytta var och en av manipulatorarmarna vid en särskild station i överensstämmelse med en önskad rörelseserie, samt styrorgan är anordnade för att föra de lagrade programstegen till manipulatorarmarna vid var och en av sammansättningsstationerna alltefter vad som erfordras för att medge samtidig sammansättning av grupper av detaljer vid stationerna.
.Enligt föreliggande uppfinning kännetecknas ett sätt att pro- grammera och styra en manipulator, som har en arm, vilken är rörlig kring ett flertal axlar och har kodarorgan för axlarna, vilka kodar- organ är anordnade att alstra lägessignaler, som motsvarar armens faktiska läge kring var och en av nämnda flertal axlar, varjämte ma- nipulatorn innefattar en hand, som är kopplad till den yttre änden av armen och är rörlig kring ett flertal axlar relativt den, av åtgär- derna att för en första inlärningsoperation flytta handen till ett en startpunkt utgörande första läge, att inrikta handen i en önskad riktning under inlärningsoperationen, att under den första inlärnings- operationen beräkna (1000) digitala representationer, vilka motsvarar en önskad serie lägen av armen, utan förflyttning av armen till något av den önskade seriens lägen, varvid för denna beräkning de av kodar- organen, när handen är inriktad i nämnda riktning, alstrade lägessigna- lerna utnyttjas, att lagra de beräknade, digitala representationerna i ett minne under inlärningsoperationen samt att förflytta armen till serien av lägen under repetitiva avspelningscykler under styrning av de lagrade digitala representationerna och kodarorganen. Åtgärden att beräkna digitala representationer innefattar lämp- ligen åtgärderna att först omvandla lägessignalerna till motsvarande signaler i kartesiska koordinater, att sedan beräkna den önskade se- rien lägen för armen i kartesiska koordinater ur de omvandlade läges- signalerna samt att därefter omvandla de beräknade kartesiska koor- dinaterna för den önskade seríen lägen till digitala instruktions- signaler, som motsvarar armens rörelse kring nämnda flertal axlar till den önskade serien lägen, och lagra instruktionssignalerna 7 7611920-5 i minnet.
Om manipulatorn innefattar handkodarorgan för alstring av hand- lägessignaler, som motsvarar handens läge kring nämnda flertal hand- axlar, ingår i det uppfinningsenliga sättet företrädesvis åtgärderna att först omvandla lägessignalerna och handlägessignalerna till signa- ler i kartesiska koordinater, vilka representerar läget för ett flertal punkter på handen, att addera lika tillskott till signalerna i kar- tesiska koordinater för åstadkommande av modifierade kartesiska koor- dinater, motsvarande en translationsrörelse av handen till vart och ett av den önskade seriens lägen, samt att sedan omvandla de modifie- rade kartesiska koordinaterna till digitala instruktionssignaler, som motsvarar armens rörelse kring nämnda flertal axlar och handens rörelser kring nämnda flertal handaxlar till den önskade serien lägen, och lagra instruktionssignalerna i minnet. 7 En programmerings- och styranordning för åtminstone en manipulatox av den typ som innefattar en manipulatorarm, organ för att förflytta armen till olika lägen kring ett flertal oberoende axlar, minnes- organ för lagring av digitala representationer, som motsvarar olika lägen av armen kring axlarna, och kodarorgan för var och en av ax- larna, vilka kodarorgan är anordnade att alstra lägessignalerna, som motsvarar armens läge kring nämnda flertal axlar, kännetecknas enligt uppfinningen av organ, som är gemensamma för ett flertal ma- nipulatorarmar, för beräkning av digitala representationer under en första inlärningsoperation, vilka representationer motsvarar en önskad serie lägen av armen, utan förflyttning av armen till något av de önskade lägena medelst armförflyttningsorganen, organ för lag- ring av de beräknade digitala representationerna i minnesorganen, som är gemensamma för nämnda flertal manipulatorarmar, under den första inlärningsoperationen, organ, som är styrda av de lagrade digitala representationerna och kodarorganen för att styra armförflytt- ningsorganen att förflytta armen till serien av lägen under repeti- tiva avspelningscykler, organ för förflyttning av armen till ett första läge under den första inlärningsoperationen, organ för lag- ring av de lägessignaler som motsvarar det första läget i minnet under den första inlärningsoperationen, varvid beräkningsorganen utnyttjar de lagrade lägessignalerna för beräkning av de digitala representationerna under den första inlärningsoperationen och styr- organen reagerar för både de lagrade lägessignalerna och de lagrade digitala representationerna under de repetitiva avspelningscyklerna, organ för omvandling av de lagrade lägessignalerna till kartesiska koordinater, som motsvarar det första läget, organ, som utnyttjar 7611920-5 8 de kartesiska koordinaterna för beräkning av serien av lägen för armen i kartesiska koordinater samt organ för omvandling av de be- räknade kartesiska koordinaterna för den önskade serien av lägen till digitala representationer, som motsvarar armens rörelser kring nämnda flertal axlar till den önskade serien lägen.
Manipulatorn kan innefatta en hand, som är kopplad till armens yttre ände och är rörlig kring ett flertal handaxlar relativt armen, samt handkodarorgan för alstring av handlägessignaler, som motsvarar handens läge kring nämnda flertal handaxlar, organ för omvandling av lägessignalerna och handlägessignalerna till signaler i kartesiska koordinater, som representerar läget för ett flertal punkter på handen, organ för addering av lika tillskott till signalerna i kar- tesiska koordinater för åstadkommande av modifierade kartesiska koor- dinater, som motsvarar en translationsrörelse av handen till vart och ett av den önskade seriens lägen, samt organ för omvandling av de modifierade kartesiska koordinaterna för den önskade serien lägen till de digitala representationerna, som motsvarar armens rörelse kring nämnda flertal axlar och handens rörelser kring nämnda flertal handaxlar till den önskade serien lägen.
Vidare kan organ vara anordnade för förflyttning av armen och handen så, att handen inriktas i en önskad riktning, varvid beräk- ningsorganen är styrda av kodarorganen och handkodarorganen för be- räkning av en serie önskade lägen i den önskade riktningen. Härvid går handens translationsrörelse företrädesvis i den önskade rikt- ningen.
Anordningen kan slutligen innefatta organ, som är gemensamma för nämnda flertal manipulatorarmar, för lagring av den lagrade, digitala representationen samt styrorgan som är förknippade med var och en av manipulatorarmarna och anordnade att i beroende av läs- organen förflytta den förknippade manipulatorarmen till den önskade serien lägen.
Med det särskilda arrangemanget enligt föreliggande uppfinning kan manipulatorhanden inriktas i vilken som helst önskad riktning och ett önskat avstånd längs den riktningen kan anges av den inlärande operatören. Datorn utför sedan alla nödvändiga beräkningar för åstad- kommande av en rätlinjig rörelse av handen i den särskilda riktningen och över det önskade avståndet, så att införandet av en detalj i en annan, upplockning av detaljer från en.lastpall samt andra kompli- cerade inlärningsarbeten väsentligt förenklas. Enligt en annan sida av uppfinningen förenklas de av datorn utförda beräkningarna väsent- ligt genom antagandet, att manipulatorarmens yttre tre axlar, vilka 9: 7611920-5 styr manipulatorhandens orientering, samtliga rör sig i en parallell, rätlinjig rörelse i den särskilda, önskade riktningen. Detta antagan- de inför endast mycket små fel, om rörelsen frân en programpunkt till den nästa hålles helt liten, och den för datorn erforderliga tiden för utförande av de nödvändiga beräkningarna reduceras väsentligt genom detta antagande.
Hjälpmedel kan även vara anordnade för inbegripande av ett eller flera, manuellt utförda sammansättningssteg vid varje sammansätt- ningsstation i tidsstyrt förhållande, så att en enda mänsklig opera- tör kan utföra samma manuella sammansättningssteg vid alla sammansätt- ningsstationerna. Om exempelvis en mjuk O-ring skall införas på en särskild punkt i en sammansättningsoperation, vilket införande lättare utföres för hand än av den programmerade manipulatorn, koordineras sammansättningsoperationerna vid varje sammansättningsstation så, att en mänsklig operatör kan utföra det manuella sammansättningssteget vid en särskild sammansättningsstation och därefter gå till den nästa sammansättningsstationen och utföra samma manuella steg vid den sta- tionen. Som följd härav kan en enda mänsklig operatör betjäna ett stort antal sammansättningsstationer, vilka vardera samtidigt samman- sätter en grupp detaljer.
Uppfinningen skall beskrivas närmare i det följande under hän- visning till medföljande ritningar. Fig. l-3 är perspektivvyer över den programmerbara, automatiska sammansättningsstationen enligt föreliggande uppfinning. Fig. 4 är en schematisk planvy av samman- sättningsstationen i fig. l och visar rörelserna kring dess olika axlar. Fig. 5 är en schematisk vy från höger sida av sammansättnings- stationen i fig. 4. Fig. 6 är en fragmentarisk frontvy, delvis i tvärsnitt, av en av manipulatorerna vid sammansättningsstationen enligt fig. 1. Fig. 7 är en fragmentarisk, fig. 6 likartad vy och visar basdrivpartiet hos manipulatorn enligt fig. 6. Fig. 8 är en fragmentarisk planvy av manipulatorbaspartiet i fig. 7. Fig. 9 är en fragmentarisk tvärsnittsvy längs linjen 9-9 i fig. 6. Fig. 10 är en fragmentarisk baksidovy av manipulatorn i fig. 6. Fig. ll är en tvärsnittsvy av underarmspartiet hos manipulatorn i fig. 6 längs underarmens vridningsaxel. Fig. 12 är en tvärsnittsvy längs linjen 12-12 i fig. ll. Fig. 13 är en fragmentarisk planvy av manipulatorns underarmsparti 1 fig. ll. Fig. 14 är en baksidovy av kugghjulsdriv- partiet i fig. ll i något större skala. Fig. 15 är en tvärsnittsvy längs linjen 15-15 i fig. 14. Fig. 16 är en tvärsnittsvy längs linjen 7611920-5 10 16-16 i fíg. 15. Fig. 17 är en fragmentarisk, fig. ll likartad sido- vy men i något större skala. Fig. 18 är en tvärsnittsvy längs linjen 18-l8 i fig. 17. Fig. 19 är en tvärsnittsplanvy av handpartiet hos manipulatorn i fig. ll. Fig. 20 är en tvärsnittsvy av en av de olika drivenheterna i fig. 19 i en större skala. Fig. 21 är en schematisk vy av kugghjulstransmissionerna i manipulatorn enligt fig. 6. Fig. 22 är ett förenklat blockschema över de elektroniska kretsar som samman- hör med en axel hos manipulatorn i fig. 6 och åskådliggör inlärnings- arrangemanget med sluten slinga enligt föreliggande uppfinning. Fig. 23 är ett förenklat blockschema över inlärningsarrangemanget med sluten slinga enligt fig. 22 och visat för manipulatorns alla axlar.
Fig. 24 visar de i fig. 23 använda, multiplexa tidsperioderna. Fig. 25 är ett detaljerat blockschema över hjälpmedlen enligt föreliggande uppfinning för linjär interpolation, visade i samband med en axel hos manipulatorn. Fig. 26 är ett schema, som utnyttjas för att be- skriva inlärningsbiståndshjälpmedlen enligt föreliggande uppfinning.
Fig. 27 är en schematisk perspektivvy av manipulatorn i fig. 6 och åskådliggör denna manipulators sex styrda axlar. Fig. 28 är ett blockschema, som åskådliggör det sätt, på vilket önskade vinkelvärden kan framtagas ur kodarvärden enligt föreliggande uppfinning. Fig. 29 är en schematisk perspektivbild av manipulatorn i fig. 6, utnyttjad för beskrivning av inlärningsbiståndshjälpmedlen enligt föreliggande uppfinning. Fig. 30 är en förenklad, fig. 29 likartad och schematisk bild, som visar manipulatorhandens translationsrörelse till ett nytt läge. Fig. 31-37 är logiska blockscheman, som åskådliggör sättet, på vilket nya vinkelvärden för tre styrda axlar hos manipulatorn i fig. 6 beräknas. Fig. 32a är en förenklad, schematisk perspektiv- bild, som är likartad den i fig. 29 och utnyttjas för beskrivning av det logiska blockschemat i fíg. 32. Fig. 33a är en förenklad, schematisk perspektivbild, som är likartad den i fig. 29 och utnyttjas för beskrivning av de logiska blockscheman i fíg. 33-37. Fig. 38 är en förenklad, schematisk perspektivbild, som är likartad den i fíg. 29_men visar manipulatorarmen i ett annat läge och utnyttjas för beskrivning av beräkningen av ett nytt vinkelvärde för manipula- torns fjärde, styrda axel. Fig. 39, 39a, 39b, 39c, 40, 41, 42, 43, 43a och 43b är logiska blockscheman, som åskådliggör sättet, på vilket ett nytt vinkelvärde för den fjärde axeln beräknas. Fig. 44 är en förenklad, schematisk perspektivbild, som är likartad den i fig. 29 men visar manipulatorarmen i ett annat läge samt utnyttjas för be- 11 7611920-5 skrivning av beräkningen av ett nytt vinkelvärde för manipulatorns femte, styrda axel. Fig. 45a, 45b, 45c, 46, 47, 48, 48a, 48b, 49, 49a och 49b är logiska blockscheman, som åskådliggör sättet, på vilket ett nytt vinkelvärde beräknas för den femte axeln. Fig. 50 . är en schematisk perspektivbild, som är likartad den i fig. 29 men visar manipulatorarmen i ett annat läge och utnyttjas för beskriv- ning av hur nya vinkelvärden beräknas, när vridning kring en av de styrda axlarna önskas. Fig. 51-58, anordnade på det i fig. 58a visade sättet, innefattar ett blockschema över de elektroniska styrkretsarna för manipulatorn i fig. 6 och åskådliggör hur en dator kan utnyttjas som ett inlärningsbistândshjälpmedel under manipulatorns inlärnings- mod. Fig. 59 är ett blockschema över en grupp sammansättningssta- tioner, som är styrda av en gemensam dator och minneshjälpmedel.
Fig. 60 är ett schema över en av gränssnittsenheterna i fig. 59.
Fig. 61 är ett blockschema över styr- och lagringshjälpmedlen, anord- nade vid en av manipulatorerna i systemet enligt fig. 59. Fig. 62 och 63 är scheman, som åskådliggör det föredragna arrangemanget med hjälpstyrsignalbitar för två multiplexa perioder i systemet enligt fig. 51-58.
Såsom framgår av ritningarna och närmare bestämt fig. l-21 innefattar det programmerbara sammansättningssystemet enligt före- liggande uppfinning ett flertal automatiska sammansättningsstationer, av vilka en är visad i fig. 1, 2 och 3, varvid det är klart, att ett antal likartade automatiska sammansättningsstationer är anordnade i det totala systemet samt är anordnade att styras av en gemensam datoranordning eller gemensamma lagringshjälpmedel, såsom kommer att beskrivas närmare i detalj längre fram.
Var och en av de automatiska sammansättningsstationerna, av vilka en är visad i fig. l-3, innefattar ett par programmerbara manipulator- armar 50 och 52, vilka är belägna på motstående sidor av ett centralt beläget, vridbart arbetsbord 54. Bordet 54 innefattar en vertikalt sig sträckande arbetsplatta 56, på vilken detaljer kan anbringas för sammansättning med andra detaljer för åstadkommande av ett full- ständigt delaggregat av detaljer. ' Enligt en betydelsefull sida av uppfinningen kan manipulator- armarna 50 och 52 förflyttas med hög hastighet och kan positioneras med hög noggrannhetsgrad, så att sammansättning av små detaljer med exakta toleranser kan uppnås. Dessutom har vardera av manipulatorarmar- na 50, 52 sex frihetsgrader för vinkelrörelse samt är jämförbar i 7611920-5 12 fråga om flexibilitet och mångsidighet med den mänskliga armen, så att enskilda detaljer, vilka är belägna på förutbestämda ställen på arbetspallar 58, 60, 62 och 64, kan gripas av den detaljgripande handen hos en av manipulatorarmarna, avlägsnas från lastpallen samt sammansättas på arbetsplattan 56 i den önskade följden för åstadkom- mande av ett särskilt aggregat av detaljer på arbetsbordet 54.
Kring manipulatorarmarnas 50, 52 arbetsområde är också en serie vibra- torskålar 66, 68 belägna, vilka skålar kan innehålla olika små detaljer, såsom fjädrar, brickor och liknande, samt är så belägna, att den detaljgripande manipulatorhanden kan gripa en av dessa detaljem i ett förutbestämt läge och införa den i den önskade följden under sammansättningsoperationen.
För att en mängd olika detaljer skall kunna gripas och samman- sättas med andra detaljer har var och en av manipulatorarmarna 50, 52 en serie utbytbara manipulatorhänder, såsom de till manipulator- armen 50 hörande manipulatorhänderna 70 och 72, vilka hålles i en konsol 74, när de ej användes, i sådant läge, att de automatiskt kan införas i en samverkande fattning i manipulatorarmens ände.
För att underlätta införandet av en detalj i en annan vid tole- ranser, som är mer exakta än manipulatorarmarnas 50, 52 positione- ringsnoggrannhet, är arbetsbordet 54 också anordnat att vibreras av en vibrator 76, vilken är mekaniskt kopplad till arbetsbordets 54 bas. Arbetsbordet kan dessutom vridas till olika steglägen för att underlätta införandet av detaljer på arbetsplattan 56 medelst armarna 50, 52.
Beträffande det mekaniska arrangemanget av manipulatorarmarna 50, 52, vilket medger den snabba sammansättningen av detaljer med hög noggrannhet, innefattar var och en av manipulatorarmarna, såsom manipulatorarmen 50, en vridbar plattform 80, vilken är rörlig kring en vertikal axel och är uppburen av manipulatorns 50 huvudbaselement 82. Ett skulderarmparti 84 är svängbart monterat på en horisontell skulderled eller -axel 86 medelst två upprättstående öronpartier 88 och 89 på plattformen 80. Ett armbågsparti 90 är svängbart monterat på den övre änden av skulderarmpartiet 84 och är kopplat till arm- partiet 84 medelst en horisontell armbågsled eller -axel 92. Ett un- derarmsparti 94, som är koaxiellt med armbågspartiet 90, är vridbart kring armbågspartiets 90 axel för âstadkommande av en s k underarms- vridrörelse. Den yttre änden av underarmspartiet 94 har en fattning, som är anordnad att mottaga en av manipulatorhänderna 70, 72 samt 13 7611920-5 kan vridas kring en handledsböjaxel 98 vid änden av underarmspartiet 94. Det yttre ändpartiet 96 av manipulatorhanden kan också vridas kring en handledsvridaxel, som är vinkelrät mot och skär handledsböjaxeln 98.
Enligt en betydelsefull sida av uppfinningen är rörelsen hos var och en av manipulatorarmarna 50, 52 kring de ovan beskrivna, sex olika axlarna så anordnad, att de olika manipulatorhänderna, som är fästa vid varje manipulatorarms ände, kan utnyttjas för att åstadkomma en mängd olika slags sammansättningsoperationer relativt det centralt belägna arbetsområdet. Med hänvisning till fig. 4 och 5 är således det vridbara arbetsbordets 54 område, allmänt utmärkt med en cirkel 100 i fig. 4, beläget något framför och åtskilt mellan manipulatorarmarnas 50 och 52 midje- eller vridrörelseaxlar 102, resp 104. Dessutom är varje manipulatorarms vridrörelse kring midje- axlarna 102, 104 begränsad till ll0°, såsom utmärkt med bâgen l06 för manipulatorarmen 52, medan en likartad rörelse, som är spegel- bilden till armens 52 rörelse, är âstadkommen för manipulatorarmen 50. Rörelsen kring skulderaxeln 86 (fig. 5) är begränsad till 800, såsom utmärkt med bâgen 108 i fig. 5. Rörelsen kring armbågsaxeln 92 kan vara ungefär l30°, såsom utmärkt med bâgen ll0 i fig. 5. Rörelsen kring huvudaxlarna, dvs midje-, skulder- och armbågsaxlarna, är be- gränsad på det ovan beskrivna sättet, så att motordrivna, linjära kulskruvmanöverdon av precisionstyp kan utnyttjas för att driva de angivna armpartierna över dessa begränsade rörelseområden och ställa in dem med en hög noggrannhetsgrad samtidigt som dessa relativt tunga partier av manipulatorn förflyttas med hög hastighet, såsom skall beskrivas närmare i detalj längre fram.
För åstadkommande av drivorgan för de yttre tre axlarna, dvs underarmsvridnings-, handledsböj- och handledsvridaxlarna, vilka .kommer att medge mer omfattande rörelse av manipulatorarmens yttre ände, samtidigt som vridningströghetsmomentseffekter undvikes, vilka blir alltmer betydelsefulla vid höga hastigheter, är drivorganen för dessa tre yttre axlar samtliga belägna i skulderarmpartiet 84 hos vardera manipulatorarmen och varje drivorgan är direkt kopplat me- delst kugghjul till den yttre änden av manipulatoränden via koaxiellt anordnade drivsystem med koniska kugghjul, vilka drivsystem är anord- nade utmed armbågsaxeln 92, såsom skall beskrivas närmare i detalj längre fram. Manipulatorhandpartiet 96 kan följaktligen röras kring handledsböjaxeln 98 över en båge på ungefär 2400, såsom visat med 7611920-5 2 14 en pil 112 i fig. 4. Underarmspartiet 94 hos vardera manipulator- armen kan vridas över en båge på ungefär 3000, såsom utmärkt med en pil 114 i fig. 4, och manipulatorhandpartiet 96 kan vridas kontinu- erligt över 3600 kring handledsvridaxeln, såsom utmärkt med en pil 116 i fig. 4. Som följd härav kan var och en av manipulatorarmarna 50, 52 förflyttas så, att dess handledsböjaxel följer den i fig. 4 utmärkta centrumlinjen 118 för manipulatorn 50 med avseende på hand- ledsaxeln 102. Handledsböjaxeln 98 är också rörlig längs den vid 120 angivna centrumlinjen i fig. 5, allteftersom armbågspartiet 90 förflyttas kring armbågsaxeln 92 från det med heldragna linjer visade läget till det med streckade linjer visade läget i fig. 5, och allt- eftersom skulderpartiet 84 förflyttas från det med heldragna linjer visade läget till det med streckade linjer visade läget i fig. 5 är axeln 98 rörlig längs centrumlinjen 121. Det är således klart, att en fullständig täckning av arbetsområdet kring arbetsbordet 54 åstadkom- mes av de samverkande manipulatorarmarna 50, 52 samtidigt som ett I arrangemang åstadkommes, genom vilket varje manipulatorhand kan för- flyttas med hög hastighet och positioneras noggrant för åstadkommande av de önskade sammansättningsoperationerna på minsta tid. 7 Med avseende på sättet, på vilket varje manipulatorarm förflyttas kring de tre huvudaxlarna, dvs midje-, skulder- och armbågsaxlarna, betraktas först det sätt, på vilket armbâgspartiet 90 förflyttas kring armbågsaxeln 92. Med hänvisning till fig. 6, ll och 13 har armbågspartiet 90 ett par bakåt sig sträckande öronpartier 130 och 132, vilka mellan sig bär upp ett svängningsstift 134, och skulder- armpartiet 84 har två bakåt sig sträckande flänspartier 136 och 138, vilka mellan sig bär upp ett stift 140. Ett motordrivet, linjärt kulskruvmanöverdon av precisionstyp, allmänt angivet med hänvisnings- numret 142, är beläget mellan stiften 134 och 140, så att då manöver- 'donet 142 sträckes ut eller drages ihop,armbågspartiet 90 svänges kring armbågsaxeln 92 relativt skulderarmpartiet 84 hos manipulatorn.
Närmare bestämt är ett huvudhölje 144 svängbart monterat på stiftet 140 och bär upp en hydraulisk drivmotor 146, vars-utgångsaxel uppbär ett kugghjul 150. Kugghjulet 150 gör ingrepp med ett mellankugghjul 152, som är monterat på en av höljet 144 uppburen axeltapp 154, och mellankugghjulet 152 gör i sin tur ingrepp med ett kugghjul 156 på änden av axelpartiet 158 till en kulskruv 160, varvid axel- partiet 158 är monterat i lager 162 och 164 i höljet 144. Mellan- kugghjulet 152 är företrädesvis förskjutet från kugghjulen 150 och 15 7611920-5 156 samt är så rörligt, att det kan inställas för dödgång noll.
En kulmutter 166 är monterad på kulskruven 160, så att den kommer att förflyttas framåt i skruvens 160 längdriktning, när denna skruv vrides som gensvar på aktivering av motorn 146. Det är klart, att lämpliga kulor är anordnade mellan kulskruvens 160 gängor och de invändiga spåren i kulmuttern 166, så att kulmuttern 166 förflyttas framåt vid vridning av skruven 160. En manöverhylsa 168 är glidbart monterad i ett yttre hylsparti 170 hos höljet 144, varvid hylsans 168 inre ände är fäst vid ett parti 172 av kulmuttern 166, vilket parti glider på den inre ytan av höljets hylsa 170, och manöverhylsans 164 övre ände har ett kâpparti 174, som är svängbart monterat på tappen 134. Kulskruvens 160 övre ände är vridbart monterad i manöver- hylsan 168 medelst ett lager 176, och två stoppkragar 178 och 180 är anordnade vid kulskruvens 160 motstående ändar, vilka kragar sam- verkar med ansatser 182 resp 184 på kulmuttern 166 för begränsning av kulmutterns 166 rörelse i vardera riktningen. När endera av ansat- serna 182, 184 gör ingrepp med kulmuttern 166, upphör hydraulmotorn 146 att svänga armbågspartiet 90, varigenom gränserna för den båg- formiga rörelsen 110 (fig. 5) bestämmes.
För att lagra skulderarmpartiet 84 svängbart kring den horison- tella skulderaxeln 86 har skulderarmpartiets 84 övre ände uppåt och bakåt sig sträckande öronpartier 186 (fig. 6), vilka mellan sig upp- bär en svängtapp 188, och den vridbara plattformen 80 har ett par uppåtstående öronpartier 190, vilka mellan sig uppbär en svängtapp 192. Ett motordrivet, linjärt manöverdon 194 (fig. 6) av precisions- typ är anordnat mellan skulderpartiets 84 svängtapp 188 och platt- formens 80 svängtapp 192, så att när manöverdonsenhetens 194 manöver- hylsparti 196 skjutes ut skulderarmpartiet 84 tippas över en båge kring den vertikala axeln, såsom angivet vid 108 i fig. 5. Det linjära manöverdonet 194 innefattar ett huvudhölje 198, i vilket en motorn 146 likartad hydraulmotor 200 är monterad. I övriga avseenden är det linjära manöverdonet 194 i huvudsak identiskt med det linjära manöverdonet 142, vilket beskrivits i detalj ovan. Det är således klart, att när motorn 200 aktiveras manöverhylsan 196 skjutes ut eller drages tillbaka för svängning av skulderarmpartiet 84 kring axeln 86.
I fråga om sättet för den vridbara plattformens 80 rörelse kring den vertikala midjeaxeln utnyttjas manipulatorarmens huvud- baselement 82 som ett stöd för ett ringformigt gjutstycke 202, som har övre och undre, koniska lager 204 och 206, på vilka i sin V V-.W-...ø-w--n-»p-u-pv-a-...fl--fi-*É _. 87611920-5 lg - tur ett invändigt, hylsformigt gjutstycke 208 är monterat, vilket är fäst vid den vridbara plattformen 80 medelst skruvar 210. Elemen- tet 208 har ett nedåtriktat, förskjutet öronparti 212 samt en i detta förskjutna parti av elementet 208 monterad svängtapp 214, varvid en annan svängtapp 216 är monterad i ett par åtskilda öronpartier 218 goch 220, vilka är bildade i baselementet 82 vid dettas från platt- formen 80 avlägsna ände. En motordriven, linjär kulskruvmanöverdons- enhet 222 av precisionstyp är monterad mellan svängtapparna 214 och 216, varvid denna manöverdonsenhet 222 innefattar en hydraulmotor 224 och i övriga avseenden är likartad den ovan beskrivna manöverdons- enheten_l42. När manöverdonshylsan 226 i enheten 222 skjutes ut eller drages tillbaka, vrides följaktligen plattformen 80 kring midjeaxeln 228 över en båge på 1100, såsom visat i fig. 4 och 8. Ett borttagbart lock 230 är anordnat för baselementet 82.i närheten av manöverdons- enheten 222, så att underhåll och reparation av denna enhet möjlig- göres. I detta sammanhang skall det påpekas, att genom begränsningen av rörelsen kring midje- eller vridaxeln till 1100 säkerheten för- bättras för personal, som arbetar nära sammansättningsstationen, eftersom manipulatorarmen ej kan förflyttas utanför denna båge. Denna vridrörelsebåge kan emellertid inställas efter önskan relativt mani- pulatorns bas genom justering av plattformen 80, innan den låses vid elementet 208. _ Vad det gäller de för de tre yttre axlarna, dvs underarmsvrid- axeln, handledsböjaxeln och handledsvridaxeln, anordnade drivorganen är tre hydraulmotorer, av vilka två är visade vid 232 och 234 i fig. 6, monterade inuti skulderarmpartiet 84. Närmare bestämt är dessa hydraulmotorer monterade på en platta 236, som är fäst vid undersidan av en tvärgående mellanvägg 240, vilken är anordnad ungefär mittpå skulderarmen 84. Dessa tre hydraulmotorer är så monterade, att deras axlar skär armbågsaxeln 92 i från varandra skilda punkter utmed denna axel. Dessa motorer styres av servoventiler 233 (fig. 10) och matas med hydraulfluidum via en huvudvridförbindning 235, som medger platt- formens 80 vridrörelse, samt en tryckledningsvridförbindning 237 och en returledningsvridförbindning 239, vilka medger rörelse kring skulderaxeln 86, varvid de tre hydraulmotorerna är kopplade till olika sektioner av förbindningarna 237 och 239.
För att begränsa manipulatorhandens rörelse kring underarms- vridaxeln, handledsböjaxeln och handledsvridaxeln och samtidigt åstadkomma ett arrangemang, genom vilket var och en av motorerna 232, U 7611920-5 234 är direkt kopplad att styra en särskild rörelseaxel hos handen, har vardera motorn, t ex motorn 232, en böjlig koppling 242, vilken är förbunden med motorns ände, varvid denna böjliga koppling är förbunden med en skruv 244 (fig. 10), utmed vilken en stoppmutter 246 glider, vilken stoppmutter 246 hindras att vrida sig medelst ett tvärs sig sträckande flikparti 248 (fig. 9) med ett tvâdelat ändparti, vilket glider i kanten av en platta 250, som är monterad inuti skulder- armpartiet 84. Liknande stoppmuttrar 252 och 254 är anordnade för de andra två axlarna, varvid stoppmuttern 252 har ett flikparti 256, vilket gör ingrepp med den andra kanten hos plattan 250, och stopp- muttern 254 har ett likartat flikparti 260, vilket gör ingrepp med en tvärs sig sträckande platta 258, som är fäst vid plattan 250 mel- lan dennas kanter. Ett par stoppkragar, såsom stoppkragarna 262 och 264 (fig. 10), är fästa vid var och en av de tre skruvarna 244, varvid dessa stoppkragar har ansatser, vilka gör ingrepp med sam- verkande ansatser på varje stoppmutter, såsom den i fig. 10 visade stoppmuttern 246, för att begränsa vridningen kring varje axel till den vinkelrörelsestorlek som erfordras kring varje axel, såsom be- skrivits i detalj ovan i samband med fig. 4 och 5.
I fråga om sättet, på vilket armbågspartiet 90 är svängbart mon- terat på den övre änden av skulderarmen 84 för svängningsrörelse kring armbågsaxeln 92, och likaså arrangemanget, genom vilket en lämplig kuggtransmission är åstadkommen utmed axeln 92 för sammankoppling av hydraulmotorerna 232, 234 etc med respektive styraxlar för manipula- torhandpartiet 96, innefattar armbågspartiet 90 ett cylindriskt, yttre hölje 270 (fig. ll), vilket är monterat mellan två åtskilda öronpar- tier 272 och 274 (fig. 12), vilka är anordnade vid den övre änden av skulderarmpartiet 94. Den främre väggen 276 hos skulderpartiet 84 är utformad att bilda ett cylindriskt trâgparti 288 (fig. 6), vilket medger snedställning av höljet 270 kring axeln 92 till det med streckade linjer vid 290 i fig. ll visade läget. När armbågspartiet 90 med ett sådant arrangemang sänkes och skulderarmpartiet 84 sned- ställes framåt, kan manipulatorhandpartiet 96 förflyttas relativt nära den vridbara plattformen 80 hos manipulatorn, såsom visat av delen 292 av den i fig. 5 visade rörelsebanan 294, vilken represen- terar rörelsen hos den yttre änden av den vid handpartiet 96 fästa detaljgriparen. För att tillåta höljet 270 att röra sig på så sätt kring axeln 92 är dess bottenparti öppet i det vid 296 visade omrâdet i figi ll, så att frigång åstadkommas för den kugghjulstransmission 7611920-5 1s som sammanhör med de vridbara axlarna 244, vilka sträcker sig uppåt genom en öppning 298 i skulderarmpartiet 84. gHöljet 270 har tvâ i sidled sig sträckande axeltappar 300 och _302 (fig. 12), vilka vid sin ena sida är fästa mot höljet 270 medelst bultar 304. Axeltapparna 300 och 302 är monterade i lager 306 och 308, vilka är anordnade i öronpartiet 272 resp 274, så att höljet 274 är svängbart monterat för svängningsrörelse kring armbågsaxeln 92 vid den övre änden av skulderarmpartiet 84. Axeltapparna 300 och 302 har också invändiga öppningsurtag 310 och 312 (fig. 12), vilka verkar som stödlager för de oberoende rörliga kugghjulstransmissioner, all- mänt betecknade med 314, som sammanhör med axlarna 244, vilka sträcker sig uppåt genom öppningen 298 i skulderarmpartiet 84. Kugghjuls- transmissionerna 3l4 är visade närmare i detalj i fig. 14-16. En lås- mutter 316 är anordnad för var och en av axeltapparna 300 och 302, och ändkåpor 318, vilka täcker axeltapparnas 300 och 302 ändar, är fästa vid armpartierna 272 och 274 medelst bultar 320. Höljet 270 är följaktligen noggrant monterat för svängningsrörelse kring arm- _ bâgsaxeln 92 samtidigt som oberoende rörelse av kugghjulstransmission- en 314 kring axeln 92 tillåtes, så att rörelsen för de tre yttre axlarna kan överföras via denna kugghjulstransmission och via höljet 270 till underarmsvridpartiet 94 och manipulatorhanden 96.
I fråga om kugghjulstransmissionens 314 närmare detaljer är en axel 322 (fig. 15) försedd med ändringar 324 och 326, vilka är be- lägna i urtagen 310 och 312 i axeltapparna 300 och 302 (fig. l2),och enseriepåtrekoniskaringkugghjul(krondrev)328,330och332næd kugäär på sina båda sidor är vridbart monterade på axeln 322 medelst lager 334, 336 och 338. Ett första gjutstycke 340 har ett nedåt och bakåt sig sträckande öronparti 342, vilket är fäst vid den övre änden av skulderarmpartiet 84 medelst en tapp 344 (fig. l2), som går genom en öppning 346 (fig. l4) i öronpartiet 342, så att gjutstycket 340 är fäst vid och rör sig tillsammans med skulderarmpartiet 84. Gjut- stycket 340 verkar som ett stöd för ett flertal vridbara ingångs- axlar 348, 350 och 352, vilka är förbundna med de övre ändarna av skruvaxlarna 244 medelst universalkopplingar 354 (fig. 6). Ingångs- axlarna 348, 350 och 352 uppbär koniska ingângsdrev 356, 358 och 360, vilka står i ingrepp med de koniska kuggarna på en sida av ringkugg- hjulen 328, 330 och 332. Ett andra gjutstycke 362 är också vridbart monterat på axeln 322 samt har ett öronparti 364, vilket är fäst vid armbågshöljet 270 medelst en tapp 366 (fig. 12), så att gjutstycket 19 7611920-5 362 är fäst vid och rör sig tillsammans med höljet 270, när detta svänges kring armbâgsaxeln 92. Gjutstycket 362 verkar som ett stöd för ett flertal vridbara utgångsaxlar 368, 370 och 372, vilka uppbär koniska kugghjul i ingrepp med kuggarna på den motsatta sidan av de koniska ringkugghjulen 328, 330 och 332. När någon av ingângsaxlar- na 348, 350 och 352 vrides, vrides följaktligen motsvarande utgångs- axel 368, 370 resp 372 via det mellanliggande, dubbelsidiga och konis- ka ringkugghjulet 328, 330 resp 332 samtidigt som utgångsaxlarna kan vridas kring axeln 322 relativt ingångsaxlarna, när höljet 270 svänges kring armbâgsaxeln 92.
Närmast skall det sätt beskrivas, på vilket ingångsaxeln 350 utnyttjas för att vrida underarmspartiet 94 kring armbågspartiets 90 axel för åstadkommande av den s k underarmsvridrörelsen, vilken ti- digare berörts. Utgångsaxeln 370, som är sammankopplad med ingångs- axeln 350 via ringkugghjulet 330, uppbär ett drivdrev 374 (fig. l7), som gör ingrepp med ett kugghjul 376, vilket är uppburet av en axel 378, som är vridbart monterad i ett navparti 380 av höljet 270 me- delst lager 382 och 384. Axelns 378 ände är utformad som ett drev 386, vilket står i ingrepp med ett mellankugghjul 388, som är fäst vid änden av en axel 390, vilken är vridbart monterad i ett element 392, som är fäst vid höljet 270 medelst bultar 394 (fig. 18), varvid axeln 390 är monterad inuti elementet 392 medelst lager 396 och 398. Underarmspartiet 94 innefattar ett i huvudsak cylindriskt, ihå- ligt parti 400 (fig. ll), vilket är vridbart monterat inuti höljet 270 medelst lager 402 och 404, varvid underarmspartiet 94 innefattar ett koniskt ytterparti 406, som slutar i en tvärgående ändplatta 408, vid vilken handkugghjulstransmissionsmekanismen 410 är fäst.
Armbågshöljet 270 innefattar en ändring 412, vilken är fäst vid höl- jets 270 ände medelst bultar 414, varvid ringen 412 avgränsar en luftkanal 416 (fig. ll) mellan ringen 412 och underarmspartiet 94.
Två O-ringar 418 och 420 utnyttjas för att åstadkomma lufttät pass- ning mellan ringen 412 och underarmshöljet 400, 406, så att under- armshöljet kan vridas relativt ringen 412 under upprätthållande av en lufttät tätning. Tryckluft kan då tillföras via en rörkoppling 422 (fig. 13) till ringen 412 och matas genom en kanal 424 i under- armshöljets 94 koniska parti 406 till en luftrörkoppling 426, som är fäst vid detta höljes yttre. Tryckluft för manövrering av grip- elementen i manipulatorhanden ledes således via det vridbara under- armspartiet 94, varvid det är klart att luft från en lämplig tryck- 7611920-5 20 luftskälla tillföres rörkopplingen 422 via en böjlig slang 428.
I fråga om underarmspartiets 94 vridning relativt armbågspartiet 90 har det cylindriska höljespartiet 400 ett invändigt ringkugghjul 430 (fig. ll och 17), som står i ingrepp med mellankugghjulet 388, vilket uppbäres av höljet 270, såsom beskrivet ovan. När utgångsaxeln 370 i kugghjulstransmissionen 314 vrides, vrides följaktligen under- armens höljesparti 400 via kugghjulen 374, 376, 386, 388 och 430.
Beträffande sättet, på vilket de andra två utgångsaxlarna 368 och 372 i kugghjulstransmissionen 314 utnyttjas för att åstadkomma hand- ledsböjning och handledsvridning, vilka rörelser allmänt beskrivits ovan, skall det påpekas, att alla tre utgångsaxlarna från kugghjuls- transmissionen 3l4 sträcker sig ut genom en öppning 432 (fig. ll) i armbågshöljet 270 samt att utgångsaxlarna 368 och 372 (fig. 15) är förbundna via universalkopplingar 434, axlar 436 och universalkopp- lingar 438 i det inre av det koniska underarmshöljet 400, 406 med två spårförsedda axlar 440 och 442 (fig. 19), vilka är monterade i underarmspartiets 94 ändplatta 408. Handkugghjulstransmissionsmeka- nismen 410 är monterad på ändplattan 408 medelst bultar 444, så att denna mekanism vrider sig med underarmspartiet 94. Eftersom de tvâ axlarna 440 och 442 är förskjutna från underarmspartiets 94 centrum- axel, har universalkopplingarna 438 spârförsedda ändpartier, som passar till de spårförsedda axlarna 440 och 442 för att medge begränsad rörelse av universalkopplingarna 438 utmed axlarnas 440 och 442 längd- riktning, när underarmspartiet 94 vrides över 300° kring underarms- vridaxeln. _ Handkugghjulstransmissionsmekanismen 410 är visad i fig. 19 och är schematiskt åskådliggjord i fig. 21. Ett koniskt kugghjul 446, som är kopplat till den spårförsedda axeln 440, gör ingrepp med ett koniskt kugghjul 448, som är uppburet på änden av en tvärgående axel 450. Ett kugghjul 452 är beläget på axelns 450 andra ände och står i ingrepp med ett inställbart mellankugghjul 454, vilket är vridbart monterat på en axel 456. Mellankugghjulet 454 är kopplat till ingångs- kugghjulet 458 i en planetdrivenhet 460, vilken är vridbart monterad i lager 462 och innefattar en förskjuten axel 464, på vilken ett kugg- hjul 466 är monterat, vilket kugghjul står i ingrepp med en fast, invändig kugghjulsring 468, liksom ett andra kugghjul 470, vilket står i ingrepp med en invändig kuggring 472, som är kopplad till ett handledsböjutgångselement 474. Utgångselementet 474 är vridbart monterat i handkugghjulstransmissionsmekanismens 410 huvudhölje me- delst lager 478 och 480, så att elementet kan vridas kring handleds- 21 7611920-5 böjaxeln 98. När utgångsaxeln 368 i huvudkugghjulstransmissionen 314 vrides, vrides följaktligen handledsböjutgångselementet 474, så att dess yttre ändparti 482 svänges runt den främre kanten av höljet 476 kring böjaxeln 98.
Det sätt, på vilket vridning av utgângsaxeln 372 utnyttjas för att åstadkomma handledsvridrörelsen, skall nu beskrivas. Den spårför- sedda axeln 442 har ett drivdrev 490 på sin ände, vilket drev gör in- grepp med ett mellankugghjul 492, som är vridbart monterat på en axel 494. Mellankugghjulet 492 står i ingrepp med ett kugghjul 496, som är monterat pâ en ände av en axel 498, vilken är vridbart monterad i en hylsa 500 medelst lager 502 och uppbär ett koniskt kugghjul 504 på sin andra ände. Det koniska kugghjulet 504 står i ingrepp med ett koniskt kugghjul 506, som är bildat på en ände av en tvärgående hylsa 508, vilken är vridbart monterad pâ en tvärgående axel 510, vilken i sin tur är vridbart uppburen vid den ena änden inuti höljet 476 me- delst ett lager 512 samt vid sin andra ände är kopplad till ett hål 514, som är bildat i det utböjda elementet 474, så att axeln 510 är ' inriktad med böjaxeln 98 och elementet 474 kan vridas kring denna axel samtidigt som hylsan 504 oberoende kan drivas via den tidigare beskrivna handledsvridkugghjulstransmissionen.
Ett koniskt kugghjul S16 är bildat vid den andra änden av hylsan 508 och gör ingrepp med ett koniskt ingângskugghjul 518 till en pla- netkugghjulsdrivenhet 520, vilken är vridbart monterad i elementet 474 medelst lager 522 och innefattar en förskjuten axel 524, på vilken ett första kugghjul 526 är monterat, vilket gör ingrepp med en in- 'vändig kuggring 528, som är kopplad till böjutgångselementet 474, lik- som ett kugghjul 530, vilket står i ingrepp med en invändig kuggring 532, som är fäst vid en ände av ett handledsvridutgângselement 534.
Elementet 534 är vridbart monterat i det yttre ändpartiet 482 av böjelementet 474 medelst lager 536 och 538. Handledsvridutgângsele- mentet 534 har en fattning 540, som är avsedd att mottaga vilket som helst av ett antal utbytbara detaljgripande element eller andra verk- tyg, samt har kanaler 542 och 544, via vilka tryckluft kan tillföras “ ett spår 546 och utnyttjas för att verksamgöra den detaljgripande . _ m... .. _......~...._.-._.__......___........ ___..- , handen, vilken är placerad i fattningen 540, såsom lätt inses av de på området erfarna. Kanalen 542 står i förbindelse med ett spår 548, vilket är bildat i periferin av handledsböjutgångselementet 534 och i sin tur står i förbindelse med en öppning 550 i det yttre partiet 482 av böjutgångselementet 474, så att tryckluft kan tillföras medelst en rörledning 552 (fig. 13) via en vridförbindning 554, som 7611920-5 22 är belägen på handledsböjaxeln 98 och är fäst vid en sida av hand- kugghjulstransmissionen 410, samt via en utgângsrörledning 556 till Åöppningen 550. Tryckluft matas följaktligen till spåret 546 för på- verkan av de detaljgripande fingrarna samtidigt som rörelse tillåtes kring de ovan beskrivna handledsböj- och handledsvridaxlarna.
Såsom tidigare angivits är det en betydelsefull sida av upp- finningen att åstadkomma ett programmerbart manipulatorarmsarrangemang, vilket är i hög grad mångsidigt och kan förflyttas med hög hastighet samt inställas noggrant för åstadkommande av sammansättning av detaljer till snäva toleranser på ett minimum av tid. De ovan beskrivna kul- skruvdrivanordningarna för de tre huvudaxlarna uppfyller dessa ända- mål, eftersom de är tillräckligt starka för att vrida och luta det relativt massiva skulderarmpartiet 84 och svänga armbågspartiet 90.
Dessa linjära kulskruvmanöverdon ger dessutom ett väsentligt ned- växlingsförhållande, så att ett relativt styvt drivorgan åstadkommas för lägesinställning av dessa relativt massiva partier av manipula- torarmen med den önskade noggrannheten. Rörelserna kring de tre yttre axlarna uppnås emellertid genom direkt kugghjulsutväxling, såsom be- skrivits i detalj ovan, och det är högst väsentligt att all dödgâng elimineras från de kugghjulstransmissioner som sammanhör med var och en av dessa axlar. Det är dessutom betydelsefullt, att ett arrangemang åstadkommas, i vilket dödgång ej kommer att införas vid förslitning av delarna, så att kontinuerlig användning av manipulatorn utan väsent- lig stilleståndstid uppnås. Eliminering av dödgång är särskilt be- tydelsefull i den komplicerade handkugghjulstransmissionsmekanismen 410, eftersom de artikelgripande fingrarna måste lägesinställas exakt för att åstadkomma sammansättning av små detaljer. För detta ändamål har var och en av planetdrivenheterna 460 och 520 en dödgångs- eliminerande anordning, vilken verkar trots förslitning av de i varandra ingripande delarna.
Vad avser planetenheten 520, visad i fig. 20, har närmare be- stämt denna enhets huvudhölje 560 ett par tvärgående hål S62 och 564, vilka står i förbindelse med ändarna av axeln 524, varvid dessa änd- partier av axeln 524 har hål 566 och 568, som mottager i tvärled sig sträckande stift 565 och 567; Stiften 565 och 567 är avsedda att mot- taga ett flertal buntar tallriksfjäderbrickor 570, varvid varje bunt består av åtta eller nio fjäderbrickor och buntarna är anordnade med alternerande orientering, såsom visat i fig. 20. Fjädrarna 570 kan hållas under tryck medelst en bricka 572, vilken hålles på plats av en mutter, vilken är inskruvad i ett gängat hål 574, så att sido- tryck utövas på axelns 524 båda ändar. Axeln 524 är monterad i lager 23 7611920-5 _576 och 578 mellan ändytor 580 och 582 av höljet 560, så att hela aggregatet, inbegripet kugghjulen 526, 530 och lagren 576 och 578, kan tryckas i sidled under inverkan av tallriksfjädrarnas 570 kraft.
När planetenheten 520 är monterad i handmekanismen 410, såsom visat i fig. 19, tryckes följaktligen kugghjulens 526 och 530 kuggar till ingrepp med kugghjulsringarna 528 och 532 för avlägsnande av all dödgång i planetkugghjulssystemet. Tallriksfjäderbrickorna 570 alstrar företrädesvis ett sidotryck på 136 kp och är anordnade att arbeta över en del av kraft/utböjningskarakteristiken för fjädrarna, i vilken del kraften förblir relativt konstant med en variation i i fjädrarnas utböjning. När de rörliga delarna blir slitna och tall-I riksfjäderbrickornas 570 utböjning ändrar sig något, kommer följakt- ligen den av dessa fjädrar utövade kraften fortfarande att vara rela- tivt konstant och åstadkomma en automatisk justering för nedslitning- en, vilken justering kontinuerligt eliminerar dödgàng. Med det be- skrivna arrangemanget är det dessutom ej nödvändigt att taga isär handkugghjulstransmissionsmekanismen 410 för att kompensera ändringar) i dödgång som följd av förslitning eller liknande.
I samband med den hittills beskrivna automatiska sammansättnings- stationanordningen skall det påpekas, att hastigheten och noggrann- heten, med vilka manipulatorarmarna 50 och 52 förflyttas vid samman- sättning av detaljer på massproduktionsbas, måste vara väsentligt högre än vad som för närvarandeärnñjligt med industrirobotar, om den automatiska sammansättningsstationen skall vara ekonomiskt an- vändbar. Hastigheten och noggrannheten, med vilka detaljer samman- sättes, bör företrädesvis vara en och en halv gånger den för en mänsklig operatör för att användningen av sådana sammansättninge- stationer skall vara berättigad. Sådana hastighets- och noggrannhets- krav erfordrar inte endast en styvare stödkonstruktion och drivmeka- nism utan också en lätt konstruktion, som kommer att ge manipulator- armen en tillräckligt hög egenfrekvens, så att den kan reagera för önskade styrsignaler på minsta tid. Med arrangemanget enligt före- liggande uppfinning åstadkommer de hydrauliskt drivna kulskruvarna och kugghjulsväxlarna med högt nedväxlingsförhållande den nödvändiga styvheten i konstruktionen, vilken är avsevärt överlägsen den driv- ningstyp med hydraulcylindermanöverdon.som tidigare utnyttjats för att förflytta en manipulatoranordnings styrda axlar. Ehuru hydraul- cylindermanöverdonet är överlägset ett pneumatiskt sådant i fråga om gensvar, är oljepelaren i cylindern kompressibel och återspeglar alla belastningsändringar och variationer, varför det manöverdonet 7611920-5 r 24 - är alltför mjukt och elastiskt för att kunna användas för snabb sammansättning av detaljer.
De hydrauliskt drivna kulskruvsdrivanordningarna, vilka beskrivit i detalj ovan, ger en styvhet, som är åtskilliga storleksordningar bättre än drivarrangemanget av typen med en hydraulexcentermotor. I detta sammanhang skall det också påpekas, att den erforderliga graden av_styvhet är relaterad till trögheten hos den massa som skall drivas.
För handledsböj- och handledsvridrörelserna erfordras mindre styvhet än för huvudarmledrörelserna. Om styvheten uppritas som funktion av tröghetsmomentet, kommer således en diagonal linje över diagrammet att representera en konstant egenfrekvens och handledsledrörelserna _och huvudarmledrörelserna kommer att ligga på en linje med konstant frekvens, varvid huvudledrörelserna med större tröghetsmoment kräver en större vinkelstyvhet utmed denna linje.
Arrangemanget enligt föreliggande uppfinning åstadkommer en ökning av egenfrekvensen på ungefär en storleksordning, vilket resul- terar i en hastighetsökning med en faktor 2 för korta rörelser och en femfaldig ökning av noggrannheten. Arrangemanget enligt förelig- gande uppfinning âstadkommer också handkugghjulstransmissioner, vilka är relativt små, så att manipulatorhänderna kan programmeras att sätta samman små detaljer, och åstadkommer samtidigt de ovan beskrivna planetkugghjulssystemen, vilka ger en ungefärlig reducering på l6:l, vilket i kombination med ingångskugghjulsreduceringen på 2:1 ger ett totalt nedväxlingsförhållande på 32:l, vilket åstadkommer den önskade utgångshastigheten relativt konventionella motorhastigheter. Det skall också påpekas, att tröghetskrafterna hos de snabba elementen i manipulatorarmen är minimerade enligt föreliggande uppfinning genom valet av en kulskruv med en relativt grov stigning. Kulskruven, tlex kulskruven l60 i manöverenheten 142, har således företrädesvis en stigning på en gänga per 2,54 cm, så-att vid drivning vid maxi- mal hastighet på 3810 cm/min drivelementens tröghetskrafter ej blir överdrivna. _ Beträffande de elektroniska kretsar och datorhjälpmedel som är anordnade enligt föreliggande uppfinning för att göra det möjligt för manipulatorarmarna vid varje sammansättníngsstation att först lära sig att utföra en serie av detaljsammansättningsoperationer' och sedan-upprepa dessa inlärda sammansättningsoperationer under en serie avspelningscykler, skall det först påpekas, att styrsystemet för varje_manipulatoranordning, såsom manipulatoranordningen 50, är av samma allmänna typ som den i den amerikanska patentskriften 25 7611920-5 3 661 051 beskrivna, till vilken patentskrift hänvisas för en de- taljerad beskrivning av denna allmänna typ av styrsystem. För före- liggande uppfinningsändamâl kan det emellertid allmänt anges, att var och en av manipulatorns 50 sex axlar har en lämplig digital koda- re, som vid alla tidpunkter ger en absolut lägesmätning av manipula- torarmens läge för var och en av de sex styrda axlarna.
Under inlärningsoperationen verksamgöres de olika hydraulmotorer- na, vilka tidigare beskrivits och vilka användes för att förflytta manipulatorarmen kring var och en av de sex styrda axlarna, vanligen _ med relativt låga hastigheter under ett tillräckligt tidsintervall. för att föra manipulatorarmen till ett önskat läge kring alla axlar.
Allt eftersom denna rörelse utföres kring varje axel drives kodarna i motsvarighet till rörelsen via lämpliga kugghjulstransmissioner.
När det önskade läget är uppnått kring alla axlarna, registreras alla de digitala kodarvärdena i ett lämpligt minne, där de kan an- vändas såsom instruktionssignaler under manipulatorns avspelnings~ operationsmod.
Under avspelningen jämföres manipulatorarmens faktiska läge, såsom angivet av de med axlarna förknippade, digitala kodarna, med de digitala instruktionssignaler som tidigare registrerats i minnet under inlärningsoperationen, varvid komparatorns utgång avger en felsignal, som utnyttjas för att styra den drivande motorn för varje axel för förflyttning av manipulatorarmen till den nya instruktionens läge. I fallet med tre huvudrörelser hos manipulatorn, dvs midje-, skulder- och armbågsrörelser, drives de digitala kodarna direkt från hydraulmotorn, som driver kulskruven. Då det gäller rörelsen kring armbågsaxeln är således en platta 600 (fig. 6) monterad på hydraul- motorns 146 ände och en digital kodare 602 är monterad på plattan 600. Ett på kodarens 602 axel monterat kugghjul 604 står i ingrepp med ett kugghjul 606, som är monterat på änden av motorns 146 axel, så att allteftersom motorn 146 driver muttern 166 via skruven 160, såsom ovan beskrivits, kodaren 602 åstadkommer en digital utsignal, vilken svarar mot mutterns 166 läge och därmed absolutläget för arm~ bågspartiet 90, vilket svänger kring armbågsaxeln 92. Det är i detta sammanhang underförstått, att kugghjulstransmissionerna 604, 606 är så valda, att en lämplig nedväxling åstadkommas, så att kodaren 602 rör sig över hela sitt område av digitala utgångsvärden, när skulderpartiet 84 förflyttar sig över bågen på 1200, visad i fig. 5.
Dessutom kan en takometer 601 också vara monterad på plattan 600 och Ådrivas av motorn 146 via kugghjulen 606 och 607. Utsignalen från '_ 761192Û-5 26 takometern 601 kan utnyttjas som en hastighetsâterkopplingssignal till servoförstärkaren för armbågsaxeln. Denna hastighetsâterkopplings signal är anordnad att förhindra oscillering och pendling kring de styrda axlarna och samtidigt medge en snabb rörelse av manipulator- armen mellan programmerade delar, som kräver snabb acceleration och retardation. En likartad styrning är också åstadkommen för de andra axlarna.
Det skall i detta sammanhang också påpekas, att de med varje axel förknippade kodarna, såsom kodaren 602, om önskat kan utgöras av en lämplig elgon med tillhörande analog-digitalomvandlare för om- vandling av elgonens sinusvågsutsignal till en motsvarande digital utsignal.
En med hydraulmotorn 200 förbunden kodare 608 utnyttjas för att åstadkomma en digital signal, som motsvarar skulderarmpartiets 84 rörelse kring skulderaxeln 86. En takometer 609 utnyttjas också för att åstadkomma hastighetsâterkoppling för denna axel. En kodare 610 (fig. 8) sammanhör också med hydraulmotorn 224 och åstadkommer en digi- tal utsignal, som svarar mot den vridbara plattformens 80 läge, allt eftersom denna förflyttas kring vridaxeln 228. En takometer 611 ut- nyttjas också för att åstadkomma hastighetsåterkoppling för denna axel..
För att åstadkomma en digital lägessignal, som svarar mot var och en av de tre andra axlarna hos manipulatorn, dvs underarmsvrid- axeln, handledsböjaxeln och handledsvridaxeln, och samtidigt åstadkomma ett arrangemang, som gör dessa digitala signaler tillgängliga till ett minimum av komplexitet trots att dessa signaler representerar rörelse hos manipulatorhanden vid manipulatorarmens yttre ände, är en serie om tre kodare 612, 614 och 616 (se fig. 13) monterade på armbågshöljet 270.
Var och en av dessa kodare är via en böjlig koppling 618 (fig. ll) förbunden med en axel, som är monterad i höljet 362 och uppbär ett koniskt kugghjul i ingrepp med en av kugghjulsringarna 328, 330 och 332. Närmare bestämt är exempelvis kodaren 616 förbunden via den böjliga kopplingen 618 med en axel 620 (fig. 16), vilken är mon- terad i höljet 362 och uppbär ett koniskt kugghjul 622, vilket står i ingrepp med kugghjulsringen 330. När ingångsaxeln 350 utnyttjas för att driva underarmspartiet 94 för âstadkommande av en underarmsvrid- ning genom vridning av utgångsaxeln 370 på detj.detalj ovan beskrivna sättet, driver följaktligen kugghjulsringen 330 också kodaraxeln 620 27 7611920-5 via det koniska kugghjulet 622, så att kodaren 616 avger en digital absolutlägessignal, som representerar underarmspartiets 94 läge under vridningen längs-banan 114 (fig. 4).
Pâ likartat sätt är kodarna 612 och 614 kopplade till kugghjuls- ringarna 328 och 332 för åstadkommande av digitala lägessignaler, som motsvarar manipulatorarmens handledsböj- och handledsvridrörelser.
I detta sammanhang skall det påpekas, att kodarna 612 och 614 i själva verket mäter de tre yttre axlarnas läge i en punkt mellan drivorganen och manipulatorhandens 410 kugghjulstransmission, som utnyttjas för att åstadkomma handledsböj- och handledsvridrörelserna. Ett sâdant_ arrangemang har den fördelen, att kodarna 612 och 614 är skilda från manipulatorhanden 410, så att de ej stör sammansättningsoperationer och lätt kan betjänas. Som följd av det förbättrade antidödgångskugg- hjulsarrangemanget, vilket utnyttjas i manipulatorhanden 410 och har beskrivits i detalj ovan, är kodarnas 612 och 614 utsignaler på samma gång noggranna mätningar av läget för manipulatorhanden 410 kring handledsböj- och handledsvridaxlarna i och för åstadkomman* de av en sammansättning med snäva toleranser av små detaljer.
Takometrar 613 (fig. 6) kan utnyttjas för var och en av de tre yttre axlarna för alstring av hastighetsâterkopplingssignaler till respektive servoförstärkare för dessa axlar, varvid dessa tako- metrar är monterade på drivmotorernas 232, 234, etc ändar.
Föreliggande uppfinnings elektroniska kretsar, medelst vilka var och en av manipulatorarmarna 50, 52 positivt kan styras till sitt läge under inlärningsoperationen, så att en arm ej rör sig under det att den andra armen programmeras eller läres sin önskade rörelse, skall nu beskrivas under hänvisning först till fig. 22, där ett inlärningsarrangemang med sluten slinga är visat för en enda axel, dvs vridaxeln 228. Enligt nämnda figur har en vridaxelläges- kodare 610 en grupp utgångsledningar 620, på vilka absclutläget av kodarens 610 axel uppträder såsom ett tal i Gray-kod. Dessa led- ningar är anslutna till en Gray-kod-binäromvandlare 622, i vilken signalerna omvandlas till binär kod och via en ledare 624 matas till en digital komparator 626.
Under manipulatorns 50 repeter- eller avspelningsfas är digitala minneshjälpmedel, allmänt betecknade 628, kopplade via en flerledar- kabel 630 och en sektion 632a i en repeter-inlärningsströmställare -632 till den andra ingången 634 till komparatorn 626. I komparatorn 626 jämföres den digitala kodarens signaler och digitala instruk- tionssignaler samt alstras en digital felsignal, som representerar 7611920-5 28 storleken av skillnaden mellan vridkodarens 610 faktiska läge och instruktionssignalen från minnet 628, matas via en flerledarkabel 636 till en digital-analogomvandlare 640, i vilken felsignalen om- vandlas till en analog signal med lämplig form för att förflytta manipulatorarmen kring vridaxeln samt retardera den utan översväng- ning. Den av omvandlaren 640 alstrade analoga signalen matas till en analog sampel- och hâllkrets 642, så att under den vridaxeln till- delade tidsperioden felsignalens storlek samplas av kretsen 642 och en mot felsignalen proportionell spänning kontinuerligt tillföres en servoeffektförstärkare 644, vilken driver en servoventil 646 och därmed styr hydraulmotorn 224, som driver manipulatorn 50 kring vrid- axeln 228. En mot hastigheten kring vridaxeln proportionell återkopp- lingssignal kan tillföras servoförstärkarens 644 anslutning 643 från takometern 611 för att medge snabb rörelse kring denna axel utan pendling eller oscillering.
Den digitala komparatorn 626 alstrar också en plus- eller minus- signal på ledare 648, vilka är anslutna till en servoströmställar- och riktningsminneskrets 650, i vilken riktningen, som manipulator- armen skall förflyttas i för minskning av felet till noll, lagras och utnyttjas för styrning av servoeffektförstärkaren 644, så att servoventilen 646 verksamgör hydraulmotorn i rätt riktning för minsk- ning av denna felsignal till noll.
Alla de ovan beskrivna kretskomponenterna kan vara i huvudsak likartade den som beskrivits i detalj i ovan nämnda amerikanska pa- tentskrift 3 661 051 och utgör ej del av föreliggande uppfinning.
Enligt en betydelsefull sida av föreliggande uppfinning registreras emellertid den digitala utsignalen från vridkodaren 610, såsom omvand- lad av omvandlaren 622, kontinuerligt i ett vridaxelregister 652, vilket uppdateras en gång för varje multiplex period under den tids- period som är tilldelad vridaxeln. Ett likartat register är anordnat för var och en av manipulatorns 50 övriga fem styrda axlar och ut- signalerna från dessa register matas via OCH-grindar 654 med öppen 'kollektor samt inlärnings-repeterströmställarsektionen 632a till den andra ingången till den digitala komparatorn 626 i stället för minnes- instruktionssignalen från minnet 628.
" Under inlärningsoperationen utnyttjas det av vridkodaren 610 angivna läget som en tillfällig instruktionssignal för att hålla manipulatorhanden 50 i det tidigare inställda läget under det att operatören gör en justering av den andra manipulatorns 52 läge eller för någon annan axel hos manipulatorn 50. Närmare bestämt utnyttjas 29 7611920-5 under inlärningsoperationen en inlärningsstyrpistol 656 för att styra rörelsen kring vridaxeln liksom kring manipulatorns fem andra styrda axlar. En liknande inlärningspistol finns beskriven i detalj i den ovan nämnda amerikanska patentskriften 3 661 051 för den däri beskrivna manipulatorn med fem axlar.
Pistolen 656 innefattar ett par riktningsknappar 658 och 660 för vridaxeln, vilka selektivt nedtryckes av operatören, när denne önskar förflytta manipulatorarmen kring vridaxeln i en önskad rikt- ning. När exempelvis knappen 658 påverkas och om denna knapp mot- svarar plusriktningen, matas en signal över ledarna 662 till servo- strömställar- och riktningsminnet 650, så att effektförstärkaren 644 aktiveras i plusriktningen.
Samtidigt som detta inträffar matar en inlärnings-repeterström- ställarsektion 632b en signal på +5 V via den slutna plusriktnings- knappen 658 till en ingång till en OCH-grind 664, vars andra ingång tillföres en verksamgöringspuls under den period som är tilldelad vridaxeln,.sâsom beskrives närmare i detalj längre fram.
Utsignalen från OCH-grinden 664 utnyttjas som en klockinpuls för vridaxelregistret 652, så att detta register tillâtes registrera utsignalen från vridkodaren 610 under multiplexperioden G3, som är tilldelad vridaxeln, men detta endast om en av riktningsknapparna 658, 660 är nedtryckt. Den vridaxeln tilldelade multiplexpulsen matas också till OCH-grindar 654 med öppen kollektor, så att utsigna- lerna från alla sex axlarna kollektivt kan matas via flerledarkabeln 666 och strömställarsektionen 632a till ingången till den digitala komparatorn 626, där utsignalerna från de sex registren utnyttjas som tillfälliga instruktionssignaler.
Under manipulatorarmens faktiska rörelse vid inlärningsoperation- en, dvs när plusriktningsknappen 658 är nedtryckt, pâtryckes servo- effektförstärkaren 644 en spänning för att bringa motorn 224 att röra sig i plusriktningen. Så snart plusriktningsknappen 658 släppes upphör emellertid uppdateringen eller förändringen av vridaxelregist- ret 652, vilket då i stället kvarhåller vridkodarens 610 sista läge.
Det därmed i registret 652 lagrade vridläget utnyttjas sedan som en tillfällig instruktionssignal, vilken tillföres komparatorn 626.
När operatören förflyttar manipulatorn-50 kring andra styrda axlar eller lägger ifrån sig inlärningsstyrpistolen 656 helt under utfö- rande av en inlärningsoperation för den andra manipulatorn 52, matas således registrets 652 utsignal kontinuerligt till den digitala komparatorn 626. De andra komponenterna i servoslingan fortsätter 7611920-5 30 dessutom att vara verksamgjorda, så att om manipulatorn 50 av något skäl förflyttas något kring vridaxeln, denna 'rörelse åstadkommer en ändring av kodarens 610 utsignal, som kontinuerligt jämföres med denna kodares föregående läge, såsom registrerat i registret 652, och den digitala komparatorn 626 samt efterföljande.styrkomponenter verkar på det ovan beskrivna sättet för påverkan av servoventilen '646 i rätt riktning för att bringa manipulatorn 50 att förflyttas tillbaka till sitt föregående läge, såsom registrerat i registret 652.
I fig. 23 och 24, till vilka nu hänvisas, visas kretsarrangemanget för åstadkommande av inlärningshjälpmedel med sluten slinga för alla manipulatorns 50 sex styrda axlar. Såsom visat i fig. 23 är närmare bestämt en klocka 670 kopplad via en programmerbar, binär räknare 672, vars funktion skall beskrivas närmare i detalj längre fram, till en gruppräknare ( 3 bitar) 674, vars utgång är ansluten till en oktalavkodare 676. Oktalavkodaren 676 avger multiplexpulser på utgångsledare Gl-G8, varvid dessa multiplexperioder har en nominell- tidslängd på ungefär 250 us, såsom visat i fig. 24. Varje multiplex- periods exakta tidslängd kan varieras genom inställning av den pro- grammerbara räknaren 672, såsom kommer att beskrivas närmare i detalj längre fram. Utsignalerna i de sista sex multiplexperioderna är in- dividuellt tilldelade manipulatorernas 50 och 52 sex styrda axlar .och de första två multiplexperioderna Gl och G2 utnyttjas för hjälp- styrfunktioner, såsom EXTERN OPERATION (QX), EXTERN VÄNTAN (WX), binärkodade instruktionssignaler för samt andra styrfunktioner, beskrivna i detalj längre fram. Utgången från räknaren 674 är kopplad till ett'adressregister 678, som är an- slutet till minnet 628, så att varje adresslokation eller programmerat steg kan nås i minnet 628 via adressregistret 678. Registret 678 styres av en adressräknare 680, som under avspelningsoperationerna är anordnad att skifta minnets 628 utsignal från ett programmerat steg till det nästa, såsom lätt inses av de på området erfarna.
För att utnyttja en gemensam Gray-binärkodsomvandlare 622 för alla de sex styrda axlarna är var och en av kodarnas 602 och 608-618 enskilda ledare anslutna till en serie OCH-grindar 682 och 684 med öppen kollektor. Var och en av OCH-grindarnas 682, 684 andra ingång tillföres multiplexpulsen från oktalavkodaren 676 i överensstämmelse med den multiplexperiod som är tilldelad den särskilda axeln. OCH-grin- darna 682, 684, vilka sammanhör med vridkodaren 610, matas således med verksamgöringspulsen G3, de till kodaren 608 hörande OCH-grindarna tillföres en multiplexpuls G4 och de till handledsvridkodaren 614 31 7611920-5 hörande OCH-grindarna matas med mu1tiP1eXPu15en G8- Riktningsknappar 686 och 688 utnyttjas för att styra uppdatering- en av ett register 690 och riktningsknappar 692 och 694 utnyttjas för att styra uppdateringen av ett handledsvridregister 696 på sama sätt som beskrivits i detalj ovan i samband med fig. 22. Utsignalerna från alla registren 652, 690 och 696 matas via OCH-grindkretsar med öppen kollektor, såsom de ovan i samband med midjevridaxeln beskrivna OCH~grindkretsarna 654, till repeter-inlärningsströmställarsektionen 632a, där de tillföres komparatorn som en tillfällig instruktions- signal under inlärningsoperationen, såsom tidigare beskrivits.
Det skall påpekas, att komparatorn 626 och digital-analogomvand- laren 640, vilken senare enhet innefattar de tidigare beskrivna funk- tionsgenereringsnäten, är gemensamma för alla manipulatorns sex axlar, varigenom det i varje manipulatoranordning erfordrade antalet kretsar väsentligt förenklas. Utsignalen från digital-analogomvandla- ren och dess funktionsnät matas till de olika sampel- och hållkretsar- na för varje axel, såsom sampel- och hâllkretsen 642 för vridaxeln.
Sampel- och hållkretsen 696 för skulderaxeln och sampel- och hållkret~ sen 698 för handledsvridaxeln är också visade i fig. 23, varvid dessas servoförstärkare är angivna vid 700 resp 702. Det är klart, att kom- paratorn 626 även åstadkommer en lämplig riktningssignal, vilken till- föres servoströmställar- och riktningsminneskretsar, såsom beskrivna i detalj ovan i samband med det enaxliga arrangemanget i fig. 22, varvid dessa kretsar är uteslutna från fig. 23 för enkelhets skull.
Alla manipulatorns 50 sex styrda axlar har således aktiva servon i inlärningsmoden, vilka är anordnade att hålla varje axels läge i det senast inlärda läget. Styrningen av rörelsen kring vilken som helst axel kommer endast att överföras till inlärningsstyrningen, när respektive riktningsknapp är nedtryckt för förflyttning av mani- pulatorarmen till ett annat läge. Under denna rörelse âstadkommes en löpande registrering av rörelsen kring varje axel av registren 652, 690 och 696 etc och när rörelseknappen släppes upphör följningen, varigenom en noggrann registrering av inlärningsslutpunkten upprätt- ,hålles. Dessa lagrade ändpunktsdata användes sedan i en styrning med sluten slinga för upprätthållande av noggrann lägesinställning av en manipulatorarm, medan den andra manipulatorarmen programmeras. Det är i detta sammanhang klart, att när väl manipulatorarmen under inlär- ningsoperationen har förflyttats till ett önskat läge kring alla axlarna en registreringsknapp 704 slutes, varigenom de digitala läges- signalerna för alla kodarna till de sex styrda axlarna matas till 7611920-5 32 minnet 628 under respektive multiplexperioder G3-G8. Dessutom väljas vilka som helst andra hjälpstyrsignaler, avseende det programerade steget, medelst lämpliga strömställare, som aktiveras under den till- delade multiplexperioden, dvs Gl och G2.
Under manipulatorernas 50 och 52 avspelnings-ellerrepeter- roperationsmod är det tänkt att manipulatorarmen 50 primärt kommer att verka i en operationsmod punkt för punkt, varvid successiva pro- gramsteg från minnet 628 tillföras komparatorn 626 som lägesinstruk- tionssignaler, vilka jämföres med de faktiska lägessignalerna från kodarna 602 och 608-616, varvid manipulatorarmen förflyttas kring alla de sex styrda axlarna till dess att felsignalerna för dessa axlar har minskats till en önskad noggrannhetsgrad. Ett sådant arrangemang är beskrivet i detalj i den amerikanska patentskríften 3 661 051 liksom i andra av de ovan nämnda patentskrifterna. Enligt en betydel- sefull sida av föreliggande uppfinning har emellertid var och en av manipulatorerna 50 och 52 en linjär interpolationsenhet, varigenom korta, rätlinjiga konstanthastighetssteg kan åstadkommas, så att en simulerad, kontinuerlig banstyrmod åstadkommas för var och en av dessa manipulatorer. Med ett sådant arrangemang kan man mycket nära approxi- mera en kontinuerlig bana i rymden genom registrering av en serie ändpunkter, vilka är skilda åt ungefär l,3 cm eller mindre. Under .avspelning anger en hjälpstyrsignal att hastighetsmoden eller den kontinuerliga banmoden skall utnyttjas för det nästa programsteget i stället för den normala punkt-punktmoden. Den linjära ínterpolations- enheten kommer att utföra ett antal funktioner på tidsdelad bas för var och en av manipulatorns sex styrda axlar. Först subtraherar in- terpolationsenheten det förhandenvarande axelläget från den nya änd- punktsinstruktionen och åstadkommer därmed en digital signal, som motsvarar den inkrementella ändring som skall göras för den axeln.
Den linjära interpolationsenheten delar sedan upp programstegets tid i en serie lika tidsintervall, t ex trettiotvå, och dividerar också den inkrementella lägesändringen med samma tal. I det första interpolationsintervallet adderas resultatet till utgångsläget.
Detta resultat är den första av trettiotvâ mellanliggande, artifici- ellt alstrade lägesinstruktioner, vilka alstras lokalt av inter- polationsenheten som gensvar på ett enda programsteg, vilket har registrerats under inlärningsoperationen. I det andra tidsintervallet dividerar den lokala interpolationsenheten den totala lägesändringen med 16, vilket ger ett resultat, som åter en gång adderas till de första axellägesdata. Eftersom denna process upprepas med lika tids- 33 7611920-5 intervall, alstras en serie om trettiotvå lika åtskilda, mellan- liggande och digitala lägesinstruktioner, vilket resulterar i en genomgång med konstant hastighet av den rörelse som erfordras av det registrerade programsteget. Genom att variera tidsstyrningen medelst räknardelarteknik kan ett stort antal olika operationshastigheter åstadkommas i interpolationsmoden. Dessutom kan en särskild styr- signal som anger banhastigheten vid arbete i interpolations- eller hastighetsmoden, programmeras under inlärningsoperationen, såsom kommer att beskrivas i detalj längre fram.
I fig.25, vartill nu hänvisas, visas den gemensamma, linjära interpolationsenheten tillsammans med de kretsar som erfordras för en enda axel, dvs manipulatorns 50 vridaxel eller midjeaxel, varvid många av kretskomponenterna är likartade de komponenter som omnämnts i samband med fig. 22 och 23 och därmed har givits samma hänvisnings- nummer. I kretsarrangemanget enligt fig. 25 är emellertid en med ett steg subtraherande adderare 720 anordnad mellan adressräknaren 680 och minnet 628.
När under inlärningsoperationen ett eller flera särskilda program- steg vid avspelning skall utföras i hastighetsmoden registreras också en hjälpsignal, betecknad VEL, i minnet 628. Vid avspelning åstad- kommes följaktligen en identifiering av hjälpsignalen VEL, när ett särskilt programsteg skall utföras i hastighetsmoden, dvs när de linjära interpolationshjälpmedlen enligt fig. 25 skall utnyttjas.
I följande beskrivning antages det, att ett programsteg 10 har utförts i punkt-punktoperationsmoden och att programsteget ll, när det läses från minnet 628, innefattar en hjälpsignal VEL. Alla hjälp- signalerna, vilka uppträder under multiplexperioderna Gl och G2, är lagrade i serie i buffertregister 722, så att en hastighetsmod- signal VEL alstras på en utgångsledare 724 under programsteget ll.
Denna signal VEL matas till alla de i fig. 25 angivna punkterna.
Denna signal VEL matas för det första som en insignal till en OCH- grind 726, vars andra ingång är utgången från en monostabil multi- vibrator 725 med pulstiden 50 us, vilken multivibrator är kopplad till utgången från den programmerbara räknaren 672. Multivibratorn ,725 alstrar en puls på 50 us vid början av varje multiplexpulsperiod oberoende av räknarens 672 inställning. OCH-grinden 726 verksamgöres följaktligen under de första 50 us av var och en av multiplex- perioderna Gl-G8 och denna verksamgöringssignal matas som en styr- eller klockpuls till ett register 728 för ett minussteg och såsom en verksamgöringspuls till den med ett steg subtraherande 7a1192o-s 34 adderaren 720. Under de perioder då kretsen 720 är verksamgjord subtraherar den ett steg från adressräknarens 680 utsignal och begär därmed åter den lägesinformation som svarar mot instruktionssignaler- na för programsteget 10 under de första 50 us av varje multiplex- period, varvid dessa åter begärda lägesinstruktionssignaler tillfälligt lagras i registret 728 för ett minussteg. Under varje multiplexcykel registreras följaktligen de lägesinstruktions- signaler för alla sex axlar som motsvarar programsteget 10 succes- sivt i registret 728. Under den senare delen av varje mnltiplex- period overksamgöres adderaren 720 och utsignalen från minnet 628 fortsätter att lämna programstegets ll lägesinstruktionssignaler pâ utgångsledarna 630.
Minnesutsignalerna matas också till en subtraktionsenhet 730 tillsammans med utsignalen från registret 728 för -l steg, så att den mot det föregående programsteget l0 svarande absolutposi- tionen subtraheras från den nya instruktionsinformation som svarar mot programsteget ll i subtraktionsenheten 730. Skillnaden mellan dessa två instruktionssignaler alstras på utgångsledare 732 från sub- traktiónsenheten 730. Enheten 730 alstrar således successivt.en digi- tal representation av den inkrementella sträcka som förflyttning skall ske över mellan programsteget 10 och programsteget ll kring var och en av manipulatorns sex styrda axlar. _ Subtraktionsenheten 730 åstadkommer också styrsignaler på P- och M-ledare 734 resp 736, vilka signaler representerar polari- teten eller riktningen för den önskade inkrementella sträckan, som uppträder på enhetens 730 utgångsledare 732. Plus- eller minusstyr- signalerna på ledarna 734 och 736 matas till en subtraktions- eller additionsenhet 738, till vilken också matas utsignalen om l5 bitar från registret 728 för -l steg, motsvarande instruktions~ signalen för programsteget 10, som just har avslutats. Den inkremen- tella sträcka som förflyttning skall ske över till det nya läget ll divideras nu med en förutbestämd faktor och det resulterande, mindre inkrementet adderas till programstegets 10 instruktionssignal för åstadkommande av en artificiell instruktionssignal, som utnyttjas för att förflytta manipulatorarmen en sträcka, som är lika med detta mindre inkrement. Närmare bestämt är en multiplicerare 740 anordnad att styras av en programmerbar, binär räknare 742, så att multipli- ceraren 740 kommer att dela inkrementlägessignalen, som uppträder på ledarna 732, i progressivt större inkrement, såsom från l till 32, under den binära räknarens 742 successiva räknetal. I detta samman- HS 7611920-5 hang är det klart, att multipliceraren 742 i själva verket multi- plicerar med en förutbestämd bråkdel för åstadkommande av den er- forderliga divisionen i lika tidsintervall; Räknarens 742 maximala räknetal kan styras i enlighet med hjälpstyrsignaler, vilka registre- ras som bitar l, 2 och 3 i multiplexperioden Gl under inlärningsopera- tionen. Dessa styrsignaler lagras i buffertregistren 722 och matas via ledare 743 till räknaren 742, så att antalet interpolationsinter- vall för ett programsteg kan varieras från 16 till 256, såsom kommer att beskrivas närmare i detalj längre fram.
Den takt, i vilken pulser tillföres räknaren 742, bestämer den tid som tilldelas varje interpolationsintervall och bestämmer därmed hastigheten av manipulatorarmens rörelse. I överensstämmelse med en betydelsefull sida av uppfinningen kan manipulatorarmens hastighet styras mycket noggrant över ett stort område av värden, så att rörel- se med en exakt hastighet kan uppnås mellan två punkter under avspel- ning. Närmare bestämt är en frekvensdelare 744 anordnad mellan räknar- na 672 och 742 och antalet aktiva delarsteg i delaren 744 styres i överensstämmelse med hjälpstyrsignaler, vilka registreras som bitar 7, 8 och 9 i multiplexperioden G2 under inlärningsoperationen. Dessa styrsignaler lagras i buffertregistren 722 och matas via ledare 745 till delaren 744, så att räknarens 672 pulsutsignal delas med en _faktor, vilken kan varieras från l6 till 256. Denna variation i för- bindelse med den programmerbara variationen av räknaren 672 ger ett ' brett omrâde för styrning av hastigheten hos rörelsen mellan två punkter, vilket skall beskrivas närmare i detalj längre fram.
Vad avser den hitintills beskrivna interpolationsenhetens arbetssätt för âstadkommande av en artificiell instruktionssignal, som motsvarar det första rörelseinkrement som skall utföras kring vridaxeln mellan programsteget 10 och programsteget ll, och under antagande av att räknaren 742 är inställd för trettiotvå interpola- tionsintervall mellan programstegen, avger den binära räknaren 742 först en binär kombination, som bringar multipliceraren 740 att divi- dera med en faktor 32, så att den inkrementella sträcka som uppträder på subtraktionsenhetens 730 utgångsledare 732 divideras med en faktor 32 och uppträder på multiplicerarens 740 utgângsledare 748. Subtrak- tions- eller additionskretsen 738 addera: sedan denna l/32 av den inkrementella sträckan mellan programsteget 10 och programsteget ll till den lägesinformation som uppträder pâ utgångsledarna 750 från registret 728 för -l steg, vilken lägesinformation motsvarar pro- gramstegets 10 ursprungliga läge. 7611920-5 36 Utgångsledarna 752 från subtraktions- eller additionskretsen 738 lämnar således en artificiell instruktionssignal, som är lika med programstegets 10 läge plus l/32 av skillnaden mellan program- steget 10 och programsteget ll. Denna artificiella instruktione- signal på ledarna 752 matas som en utsignal till en serie OCH-grindar 884, en för varje ledare, vilka grindars andra ingång tillföres signa- len VEL. Under den linjära interpolationsmoden passerar således denna artificiella instruktionssignal genom OCH-grindarna 884 och genom en motsvarande serie ELLER-grindar 882 till komparatorn 626. I komparatorn 626 jämföres denna artificiella instruktionssignal med. utsignalen från vridkodaren 610. Det är i detta sammanhang underför- stått, att utgångarna från alla sex kodarna är kopplade via lämpliga OCH~grindar med öppen kollektor till den gemensama Gray-binäromvand- laren 622, såsom beskrivet i detalj i samband med fig. 23. En fel- signal utvecklas således på komparatorns 626 utgång, vilken felsignal är proportionell mot skillnaden mellan vridkodarlägessignalen och ovan beskrivna artificiella instruktionssignal, som motsvarar 1/32 av sträckan till det nya programsteget ll.
Om det för ögonblicket antages, att manipulatorarmen börjar röra sig i riktningen för minskning av dess fel till noll, fort- sätter multipliceraren 740 att på sin utgång alstra 1/32 inkrement endast till dess att den binära räknaren 742 stegas fram till sitt nästa läge, varvid den binära räknarens utsignal är sådan, att multi- , pliceraren 740 dividerar med en faktor 16 i stället för med faktorn 32. Det skall påpekas, att växlingen från divisionsfaktorn 1/32 till faktorn 1/16 ej är beroende av att manipulatorarmen når det läge som svarar mot den första artificiella instruktionssignalen, vilken alstra- des under den period, då multipliceraren dividerade med faktorn 32.
När multipliceraren 740 dividerar med faktorn 16, matas nu en inkrementsignal, som är lika med l/16 av den totala sträckan mellan programsteget 10 och programsteget ll, till subtraktions- eller additionskretsen 738 och en motsvarande större, artificiell instruk- tionssignal tillföres komparatorn 626. Om manipulatorarmen ej har förflyttats l/32 av sträckan mellan programsteget 10 och program- steget ll vid den tidpunkt multipliceraren skiftar till en divisions- faktor 16, så alstras en något större felsignal, när denna skiftning sker, vilket i sin tur bringar manipulatorarmen att förflytta sig något snabbare kring vridaxeln: .Om å andra sidan manipulatorarmen har förflyttat sig mer.än l/32 av sträckan från programsteget 10 till programsteget ll vid '37 7611920-5 den tidpunkt då multipliceraren 740 skiftar till divisionsfaktorn 16, så är medel anordnade för att mata en något mindre felsignal till servoförstärkaren, som styr vridaxeln, såsom skall beskrivas närmare i detalj längre fram. Medel är således anordnade för att förflytta manipulatorarmen med en i huvudsak konstant hastighet genom successiv alstring av artificiella instruktionssignaler med trettiotvâ lika tidsintervall, varvid dessa successiva, artificiella instruktionssignaler också motsvarar trettiotvå lika inkrement av sträckan mellan de önskade ändpunkterna i programsteget l0 och pro- gramsteget ll. _ När den binära räknaren 742 når sitt maximala räknetal, dividerar multipliceraren 740 med en faktor 1, så att hela inkrementlägessigna- len, som uppträder på ledarna 732, matas till subtraktions- eller additionskretsen 738 och den på ledarna 752 uppträdande instruktions- signalen därmed är lika med det för programsteget ll från början in- lärda läget.
Vad avser de hjälpmedel som är unika för vridaxeln för åstadkom- mande av manipulatorarmens rörelse kring denna axel i överensstämmelse med de ovan beskrivna artificiella instruktionssignalerna, som ut- vecklas av den gemensamma, linjära interpolationsenheten, matas ut- signalen från digital-analogomvandlaren 640 och tillhörande funktions- generatorer till en fälteffekttransistor 760, som är kopplad i serie med en lagringskondensator 762. Transistorn 760 verksamgöres under multiplexperioden G3, som är tilldelad vridaxeln, men endast under den sista delen av denna multiplexperiod, varvid de första 50 us av denna multiplexperiod utnyttjas för avkänning av den med ett steg subtraherande adderaren 720 och lagring av den pro- gramsteget 10 motsvarande informationen i registret 728 för -l steg, såsom beskrivet i detalj ovan. Närmare bestämt är en OCH-grind 764 anordnad att styra transistorns 760 ledning. En insignal till OCH- grinden 764 är multiplexpulsen G3 och den andra insignalen tillföres via en inverterare 766 från utgången från den monostabila multivi- bratorn 725. Under den senare delen av varje multiplexperiod G3 laddas följaktligen kondensatorn 762 till en spänning, som är pro- portionell mot den analoga felsignal som utvecklas av enheten 640» Den spänning som uppträder över kondensatorn 762 pålägges via en emitterföljare 768 på en operationsförstärkare 770, som selektivt utnyttjas som en inverterare under den linjära interpolationsopera~ tionsmoden.
Inverteraren 770 erfordras i de fall då vridservoventilen från 7611920-5 38 början öppnas allt för mycket som gensvar på en av de första arti- ficiella instruktionssignaler som utvecklas av enheten 738, så att när en växling göres till den nästa artificiella instruktionssignalen "en negativ felsignal utvecklas av komparatorn 626. Manipulatorarmen skall emellertid fortfarande röra sig i samma riktning och vad som erfordras är att servoventilen 646 stänges något samtidigt som fort- farande en grundriktningssignal åstadkommes, vilken erhålles ur skill- naden mellan programstegen 10 och ll. Enligt föreliggande uppfinning upprättar subtraktionsenheten 730 grundriktningen, i vilken manipula- torarmen skall röra sig kring vridaxeln,medelst på ledarna 734 eller 736 avgivna styrsignaler, och denna grundriktning bibehålles under hela den linjära interpolationscykeln. Ehuru denna grundriktnings- signal bibehålles under hela den linjära interpolationscykeln, växlar emellertid polariteten för de av inverteraren 770 utvecklade signa- lerna i överensstämmelse med ändringar i den av komparatorn 628 ut- vecklade plus- eller minusfelsignalen, allt eftersom successiva in- struktionsinkrement alstras av subtraktións- eller additionskretsen 738. Inverterarens 770 särskilda arbetssätt för åstadkommande av denna ändring skall beskrivas efter det att den återstående delen av servoventilförstärkarkretsarna har beskrivits.
Utsignalen från inverteraren 770 matas till en operationsför- -stärkare 772, vilken utnyttjas som ett styrdon av proportionell typ och återställningstyp för utförande av en integrering av den över kondensatorn 762 utvecklade felsignalen. Denna proportionella och återställande verkan är i funktion under hastighetsoperationsmoden, varunder linjär interpolation skall utföras. Under punkt-punktmoden, när signalen VEL ej alstras, matas emellertid utsignalen från en inverterande förstärkare 774 till en fälteffekttransistor 776, vilken är kopplad över en återkopplingskondensator 778 till styrdonet 772, så att denna kondensator kortslutes under punkt-punktoperationen och ingen integrerande eller återställande verkan åstadkommes vid styr- ning av servoventilen som gensvar på den över kondensatorn 762 ut- vecklade felsignalen.
Utsignalen från styrdonet 772 matas till baserna av styrtransisto rer 780 och 782, vilka styr var sin lindning 784 resp 786 i servo- ventilen 646, som driver manipulatorarmen kring vridaxeln. Denna fel- signal tillföres baserna av båda transistorerna 780 och 782. Endast en av dessa transistorer tillför emellertid ström till lindningen 784 respektive lindningen 786 i beroende av ledningen hos strömställar- transistorer 788 och 790, vilka är kopplade i serie med var sin av n-w-a-w-ns-.a _. _ 7611920-5 transistorerna 780 och 782.
Det sätt på vilket den av subtraktionsenheten 730 alstrade signalen styr ledningen av en av transistorerna 788 och 790 under den linjära interpolationsmoden eller hastighetsmoden skall nu be- skrivas. Dessa riktningssignaler matas till OCH-grindar 792 och 794, vilkas andra ingång tillföres multiplexpulsen G3. Utsignalen från OCH-grindarna 792 och 794 matas till var sin OCH-grinds 796 och 798 ena ingång, vilka OCH-grindar 796 och 798 också är styrda av signalen VEL, vilken alstras under hastighetsoperationsmoden. P-signalen matas således via en ELLER-grind 800 och M-signalen matas via en ELLER- grind 802 under hastighetsoperationsmoden. Utsignalerna från dessa ELLER-grindar matas till var sin OCH-grind 804 och 806, vilkas andra ingång tillföres en verksamgöringssignal under den senare delen av multiplexperioden G3, vilken verksamgöringspuls erhålles från en OCH-grind 808, som tillföres pulsen G3 och utsignalen från inverteraren 766. En vippa 810 inställes följaktligen i plusriktningen som gen- svar på en signal på utgângsledaren 734 från subtraktionsenheten 730 och inställes på den motsatta polariteten som gensvar på att en signal uppträder på ledaren 736. Vippans 810 utgângsledare är kopplade via ELLER-grindar 8l2 och 814 till baserna av transistorerna 788 och 790, så att servoventilen 648 aktiveras i antingen plus- eller minusriktningen i överensstämmelse med inställningen av subtraktions- enheten 730.
Arbetssättet för riktningsminneskretsen under punkt-punktopera- tionsmoden skall nu beskrivas. I denna mod skall riktningsutsignaler- na från komparatorn 626 styra rörelsen kring vridaxeln i stället för subtraktionsenheten 730. För detta ändamål är komparatorns 626 P- och M-ledare anslutna till OCH-grindar 816 resp 8l8. Pulsen G3 matas till dessa OCH-grindars andra ingång, så att de alstrar en utsignal under den vridaxeln tilldelade multiplexperioden. Utsignaler- na från OCH-grindarna 816 och 818 tillföres OCH-grindar 820 resp 822.
Signalen VEL matas via en inverterare 824 till OCH-grindarnas 820 och 822 andra ingång. Under punkt-punktoperationsmoden, när ingen signal VEL alstras, är således också OCH-grindarna 820 och 822 verk- samgjorda, så att den av komparatorn 626 alstrade P- eller M-signalen matas via ELLER-grinden 800 eller ELLER-grinden 802 och påverkar en vippa 810, så att en av transistorerna 788 och 799 selektivt göres ledande för bestämning av rörelseriktningen kring vridaxeln under punkt-punktoperationen. Under denna punkt-punktoperation förstärkas den analoga felsignal som utvecklas över kondensatorn 762 för vrid- 7611920-5 ~ 40 axeln i operationsförstärkaren 772 på proportionellt sätt, eftersom kondensatorn 778 är kortsluten av den ledande fälteffekttransistorn 2776 som följd av det förhållandet, att ingen signal VEL tillföres inverteraren 774. Denna förstärkta felsignal tillföres baserna av transistorerna 780 och 782 och den ledande av transistorerna 780 och 790 styr strömflödet genom lindningen 784 resp 786 i proportion till denna felsignal. Rörelsen kring vridaxeln fortgår således, tills vridkodaren 6l0 avger en utsignal, som är proportionell mot den från minnet 628 erhållna instruktionssignalen.
Det sätt, på vilket inverteraren 770 under hastighetsmoden eller den linjära interpolationsoperationsmoden kastar om polariteten för den analoga felsignal som utvecklas över kondensatorn 762, skall nu beskrivas. Det pâminnes om att under den linjära interpolationsmoden vrideervoventilen 646 kan öppnas i alltför stor utsträckning vid någon tidpunkt under alstringen av artificiella inkrementinstruktioner me- -delst det ovan beskrivna linjära interpolationssystemet. När detta inträffar, kommer komparatorn 626 att fortsätta att avge en utsignal och riktningssignalerna på M- och P-utgångsledarna från komparatorn 626 kommer att kastas om. Eftersom dessa ledare emellertid ej styr servoventilriktningen under hastighetsoperationsmoden, kommer den av digital-analogomvandlaren 640 utvecklade, negativa felsignalen att ladda kondensatorn 762 i samma riktning som tidigare, eftersom polariteten hos den av digital-analogomvandlaren 640 utvecklade fel- signalen ej ändras med riktning. Detta skulle innebära, att servo- ventilen 646 skulle öppnas mer, medan det förutsatta tillståndet skull kräva, att ventilen skulle stängas något för åstadkommande av en kon- stant rörelsehastighet kring vridaxeln.
Under dessa förhållanden göres inverteraren 770 verksam för in- vertering av den felsignal som utvecklas av den summerande kondensa- torn 762, så att servoventilen 646 stänges något under dessa för- hållanden. Närmare bestämt utnyttjas komparatorns 626 växlande plus- och minusutsignal relativt subtraktionsenhetens 730 plus- och minus- utsignal för att ändra förstärkaren 770 från en inverterande för- stärkare till en icke-inverterande förstärkare, varigenom den önskade polaritetsändringen hos den analoga felsignalen åstadkommes. För detta ändamål är en EXKLUSIVT-ELLER-grind 830 anordnad, vars ena ingång är ansluten till P-ledaren från komparatorn 626 och vars andra ingång är ansluten till utgången från ELLER-grinden 812, vars ut- signal motsvarar en signal på P-ledaren 734 från subtraktionsenheten 730. Under de perioder då polariteten hos komparatorns riktningssignal 41 7611920-5 är densamma som polariteten hos riktningssignalen från subtraktions~ enheten 730 avges ingen utsignal från EXKLUSIVT-ELLER-grinden 830.
Under dessa förhållanden matas nollutsignalen från EXKLUSIVT-ELLER- grinden 830 genom en inverterare 832 och tillföres den ena ingången till en OCH-grind 834, vars andra ingång tillföres en verksamgörings- signal under den senare delen av multiplexperioden G3, vilken verk- samgöringssignal erhålles från en OCH-grind 836, till vars ingångar multiplexpulsen G3 och utsignalen från inverteraren 766 matas. När polariteten hos komparatorriktningssignalen är lika med polariteten hos riktningssignalen från subtraktionsenheten 730, återställes följaktligen en vippa 838. Inställningsutgången från vippan 838 är ansluten till en ingång till en OCH-grind 840, vars andra ingång tillföres signalen VEL. OCH-grindens 840 utgång är kopplad till basen av en fälteffekttransistor 842, som är oledande till dess att en utsignal erhålles från OCH-grinden 840. Under perioder, när kompa- ratorns riktningssignal är lika med subtraktionsenhetens signal, är således förstärkarens 770 icke-inverterande ingång ej jordad av fälteffekttransistorn 832. Förstärkaren 770 är således icke-inver- terande under dessa förhållanden. När komparatorns riktningssignal kastas om relativt subtraktionsenhetens signal, exempelvis när en signal uppträder på P-ledaren 734 från subtraktionsenheten 730 sam- tidigt som komparatorsignalen ändras från en signal på P-ledaren till en signal på M-ledaren, erhålles emellertid en utsignal från EXKLUSIVT-ELLER-grinden 830, vilken utsignal matas via en OCH-grind 848 för inställning av vippan 838. När vippan 838 är inställd, er- hålles en utsignal från OCH-grinden 8,40, vilken utsignal gör fält- effekttransistorn 842 ledande och jordar förstärkarens 770 icke-in- verterande ingång, så att denna förstärkare nu blir inverterande och inverterar den analoga felsignal som utvecklas över kondensatorn 762. Detta tillstånd kommer endast att kvarstå till dess att rörelsen kring vridaxeln har retarderats tillräckligt för att bringa rikt- ningssignalen från komparatorn 626 att åter överensstämma med rikt- ningssignalen från subtraktionsenheten 730. När detta senare tillstånd är âterupprättat, erhålles ingen utsignal från EXKLUSIVT-ELLER-grinden _ 830 och vippan 838 återställes, så att förstärkaren 770 återgår till ett icke-inverterande til lstånd.
Under perioder, när punkt-punktoperatibnsmoden utnyttjas, matas ingen signal VEL till OCH-grinden 840 och därmed förblir förstärkaren 770 i sitt icke-inverterande tillstånd kontinuerligt under punkt-punkt- operationsmoden. Såsom diskuterats ovan kortslutes också kondensatorn 76'1192Û-5 42 778 av fälteffekttransistorn 776 under punkt-punktoperationsmoden, så att förstärkaren 770 endast verkar som en proportionell förstärka- re under denna operationsmod.
Arbetssättet för den linjära interpolationsenheten efter det att alla trettiotvå rörelseinkrement mellan programsteget 10 och programsteget ll har slutförts skall nu beskrivas. Under dessa för- hållanden bör adressräknaren 680 avkännas, så att det nästa program- steget, dvs programsteget 12, blir den nya instruktionssignalen. I överensstämmelse med föreliggande uppfinning styres emellertid denna ändring frân programsteget ll till programsteget 12 ej av total koin- cidens för alla de styrda axlarna utan bestämmes i stället av den binära räknarens 742 uppnâende av sitt maximala räknetal, vilket i sin tur anger att alla trettiotvå artificiellt alstrade inkrement- instruktionssignaler har alstrats av subtraktions- eller additions- kretsen 738. När den binära räknaren 742 är återställd till noll, uttages för detta ändamål en utsignal på ledaren 850, vilken är an- sluten till en ingång till en OCH-grind 852, vars andra ingång till- föres signalen VEL. När den binära räknaren 742 under hastighets- operationsmoden återställes, matas en utsignal via OCH-grinden 852 ooh via en ELLER-grind 8É4 till adressräknaren 680 för att bringa denna räknare att skifta till nästa programsteg, dvs programsteget l2 i minnet 628. Denna ändring sker emellertid ej förrän en minnes- ändringspuls WTR också tillföres adressräknaren 680, såsom skall beskrivas närmare i detalj längre fram. I samband härmed påpekas det, att den totala tid som är tilldelad för rörelse kring alla axlar under hastighetsoperationsmoden är bestämd av den tid som erfordras för att binärräknaren 742 skall nå sitt maximala räknetal, vilket i sin tur styres av frekvensdelarens 744 divisionstakt. Såsom tidigare angivet är insignalen till frekvensdelaren 744 en puls, som uppträder en gång för varje fullständig multiplexcykel. En multiplexcykels varaktighet kan varieras av hjälpstyrsignaler, vilka registreras som bitar l-6 i multiplexperioden G2 under inlärningsoperationen.
Dessa styrsignaler är lagrade i buffertregistren 722 vid avspelning och matas över de sex ledarna 673 till räknaren 672, så att en enda multiplexperiod kan varieras från 195,2 us till 390,4 us. En full- ständig multiplexcykel, som innefattar åtta multiplexperioder, kan således programmeras att uppträda i en takt från 1,5 till 3,0 ms.
Om under förutsättning av en nominell tid på 244 us frekvensdelaren 744 dividerar med en faktor på exempelvis 128, kommer den binära räknaren 742 att stegas fram i en takt på 1/32 s, vilken tid således 43 7611920-5 är medgiven för utförande av varje inkrementell instruktion. Efter- som multipliceraren 740 alstrar trettiotvå inkrementella instruk- tioner under en linjär interpolationscykel, är således under dessa antagna förhållanden totalt l s tilldelad för samtidig rörelse kring de olika axlarna för slutförande av de önskade rörelserna mellan programsteget 10 och programsteget ll. Det är emellertid också klart, att dessa rörelser sker kontinuerligt och samtidigt kring varje axel som följd av den spänning som lagras på felkondensatorn för respektive axel, såsom kondensatorn 762 för vridaxeln eller midjeaxeln. Under den senare delen av varje mutliplexperiod jämför komparatorn 626 utsignalen från subtraktions- eller additionskretsen 738 med kodar- signalen och fälteffekttransistorn 760 verksamgöres för laddning av kondensatorn 762 till det nya värdet på felsignalen. Felsignalsinfor- mationen uppdateras således en gång varannan millisekund för varje axel. Ehuru sammanlagt l s för slutförande av rörelsen i ett program- merat steg är tillräckligt för manipulatorarmen att röra sig en väsentlig sträcka, ligger programstegen, som inbegriper den linjära' interpolationsmoden, vanligtvis relativt nära varandra, när en A kontinuerlig banoperationstyp utnyttjas, och banan består av en serie små rätlinjiga segment. _ Under punkt-punktoperationsmoden är det fortfarande nödvändigt att åstadkomma medel för att växla från ett programsteg till det nästa programsteget, när total koincidens är uppnâdd för alla de sex styrda axlarna mellan kodarsignalerna och de motsvarande instruk- tionssignalerna, som erhålles från minnet 628. För detta ändamål matas P- och M-utsignalerna från OCH-grindarna 820 resp 822 via inverterare 860 och 862 såsom två insignaler till en OCH-grind 864 med tre in- gångar. Den tredje insignalen till OCH-grinden 864 erhålles från en OCH-grind 808 och är en verksamgöringspuls, som uppträder under den senare delen av multiplexperioden G3, vilken är tilldelad vridaxeln.
Komparatorns 626 M- och P-riktningssignaler är båda noll endast när koincidens är uppnådd mellan instruktions- och kodarsignalerna för vridaxeln. Under punkt-punktoperationsmoden utvecklas följakt- ligen verksamgöringssignaler av båda inverterarna 860 och 862 och tillföres OCH-grinden 864 enbart när den önskade rörelsen kring vrid- axeln har slutförts. När detta inträffar inställer OCH-grinden 864 en vippa 866, som alstrar en signal på sin inställningsutgångsledare 868, vilken signal utmärker att koincidens har uppnåtts för vrid- axeln. Ledaren 868 är ansluten till en OCH-grind 870, till vilken ut- signaler, som svarar mot utsignalen på ledaren 868 för vridaxeln, 7611920-5 44 matas för alla de andra fem styrda axlarna. Dessutom tillföres even- tuella signaler OX eller WX också till OCH-grinden 870, när eventuella externa funktioner är slutförda. När total koincidens är uppnâdd för alla sex axlarna och de externa villkoren har uppfyllts, erhålles följaktligen en totalkoincidensutsignal från OCH-grinden 870, vilken utsignal matas via en ledare 872 till en ingång till en OCH-grind 874. Den andra ingången till OCH-grinden 874 matas via en inverterare 876 från VEL-anslutningen, så att när systemet drives i punkt-punkt- operationsmoden en signal TC på ledaren 872 passerar via OCH-grinden 874 och ELLER-grinden 854 samt åter konditionerar adressräknaren 680 att stega till det nästa programsteget i minnet 628.
Under punkt-punktoperationsmoden kommer ingen signal VEL att alstras och registreras i buffertregistret 722, varför adderaren 720 och registret 728 är inaktiva. Under dessa förhållanden matas 7 instruktionssigmflerna,som svarar mot den önskade rörelsen kring alla sex styrda axlar, från minnets 628 utgångsledare till en serie OCH-grindar, vilka representeras av en OCH-grind 880, vars andra ingång tillföres utsignalen från en signalen VEL tillförd inverterare 882. När ingen signal VEL alstras, åstadkommes följaktligen en verk- samgöringsinsignal för OCH-grindarna 880, så att instruktionssignaler- na från minnet 628 passerar genom ELLER-grindar 882 till komparatorns 626 ingång. Eftersom ingen signal VEL alstras under punkt-punktopera- tionsmoden, är OCH-grindarna 884 ej verksamgjorda, varför ingen ut- signal från subtraktions- eller additionskretsen 738 tillföres kompa- ratorn 626 under dessa förhållanden. Under punkt-punktoperations- moden jämföres följaktligen kodarsignalerna med från minnet 628 er- hållna instruktionssignaler och utnyttjas för att förflytta manipula- torarmen kring alla de sex styrda axlarna, såsom allmänt beskrivits ovan och såsom beskrivits i detalj i tidigare patentskrifter, såsom den amerikanska patentskriften 3 661 051.
Under inlärningsoperationen intryckes den ena av riktnings- knapparna 658 av inlärningsoperatören i enlighet med riktningen, i vilken han önskar att manipulatorarmen skall röra sig kring vrid- axeln. När någondera av knapparna 658 och 660 är sluten, matas en signal genom en av ELLER-grindarna 812 och 814 för att göra en av styrtransistorerna 788 och 790 ledande. Det är emellertid också nödvändigt att en inspänning påtryckes servoförstärkaren 772 under inlärningsoperationen, så att servoventilen 846 kommer att öppnas och manipulatorarmen förflyttas kring vridaxeln i den önskade riktningen. För detta ändamål är en potentiometer 886 kopplad mellan 45 I 7611920-5 +5 V och jord, varvid potentiometerns arm är kopplad till inlärnings- tryckströmställarna 658a och 660a, vilka slutes samtidigt med ned- tryckningen av riktningsknapparna 658 resp 660. Det är klart, att strömställarna 658a och 660a helt enkelt kan utgöra en andra ström- ställarsektion på riktningsknapparna 658 och 660. Sektionerna 658a och 660a är sammankopplade och via en summerande resistor 890 kopplade till förstärkarens 772 ingång. Under inlärningsoperationen är också en tredje grupp strömställarsektioner 658b och 660b kopplade mellan anslutningen till +5 V och fälteffekttransistorn 776. Under inlär- ningsoperationsmoden göres således fälteffekttransistorn 776 ledande 7 för vardera rörelseriktningen, så att kondensatorn 778 kortslutes och förstärkaren 772 drives i enbart den proportionella moden. En signal matas följaktligen till baserna av transistorerna 780 och 782 under nedtryckningen av endera av knapparna 658a och 660a, vilken transistor har rätt polaritet för att bringa en av servoventillind- ningarna 784 och 786 att verksamgöras i rätt omfattning för att akti- vera servoventilen vid den önskade rörelsehastigheten kring vrid- axeln. Det är klart, att potentiometern 886 kan inställas efter önskan för styrning av rörelsehastigheten kring vridaxeln.
A' Såsom allmänt diskuterats ovan är det utomordentligt svårt att programmera eller lära manipulatorn 50 så, att manipulatorhanden 96 ,kommer att röra sig längs en rätlinjig bana. Detta beror på att rörelserna kring de sex stela axlarna hos manipulatorn 50 inbegriper vridrörelse kring seriekopplade leder samt att rörelse kring vissa av dessa axlar växelverkar med andra axlar under rörelsen. Samtidig rörelse kring ett antal olika axlar genom nedtryckning av de erforder- liga av inlärningsriktningsknapparna 658, 660, 686, 688 och 692, 694 (fig. 24) samt val av lämpliga hastigheter kring var och en av dessa axlar för åstadkommande av en resulterande rätlinjig rörelse är dessutom nästan omöjliga för en mänsklig operatör att utföra manuellt, särskilt i begränsade situationer. Å andra sidan kräver många opera- tioner vid sammansättning av detaljer sådan rätlinjig rörelse. Vid införing av en cylinder i ett hål eller vid glidande sammanpassning av detaljer i rätlinjiga spår, etc, är det exempelvis ytterst önskvärt att man-kan åstadkomma en mot en rätlinjig rörelse svarande rörelse av manipulatorn i vilken som helst önskad vinkel under inlärnings- operationen.
»För att lösa dessa motstridiga krav och i enlighet med en be- tydlesefull sida av föreliggande uppfinning är hjälpmedel anordnade för att utnyttja en dator för utförande av de nödvändiga beräkningarna .7611920-5 46 och bestämma de nödvändiga rörelserna kring var och en av de sex styrda axlarna, vilka erfordras för att åstadkoma en'rätlinjig rörelse i en önskad riktning. När man, såsom visat i fig. 26, önskar införa ett stift 900 i en passande öppning 902, inriktas närmare bestämt manipulatorhanden 96 så, att cylindern 900 är inriktad längs linjen 904, visad i fig. 26, vilken svarar mot öppningens 902 axel.
Denna axel kan ha vilken som helst önskad vinkel relativt en hori- sontallinje och en vertikallinje. Programmeraren anger sedan en sträcka längs linjen 904, vilken sträcka stiftet 900 skall förflyttas för att införas till önskat djup i öppningen 902. De kodarvärden som svarar mot det i fig. 26 visade läget för stiftet 900, när detta befinner-sig omedelbart invid öppningen 902 och är inriktat längst axeln 904, tillföres datorn tillsammans med en angivelse av den sträcka stiftet 900 skall förflyttas längs axeln_904. Datorn gör sedan de nödvändiga beräkningarna för beräkning av en serie inkremen- tella lägen för alla de sex styrda axlarna, så att stiftet 900 kommer att förflyttas längs axeln 904 den önskade sträckan. Det är i detta- sammanhang klart, att rörelsen längs axeln 904 kommer att kräva många beräkningar av datorn, eftersom de enda för den tillgängliga data är de digitala kodarvärdena för de sex styrda axlarna vid stiftet 900 i fig. 6 visade ingångspunkt, vilket kommer att beskrivas närma- re i detalj längre fram. _Pâ likartat sätt kan datorn också användas vid ett inlärnings- hjälparrangemang för rörelse längs en linje 906, som är vinkelrät mot axeln 904, varvid denna rörelse programmeras på ett sätt, som är likartat sättet för den ovan beskrivna rörelsen längs axeln 904.
Rörelsen kan också ske längs en s k svepaxel, som är vinkelrät mot linjernas 904, 906 plan, eller längs en linje, som utgör en kombina- tion av alla dessa tre rörelser, såsom kommer att beskrivas i detalj längre fram.
I enlighet med en betydelsefull sida av uppfinningen är beräk- ningarna, som datorn måste göra för att åstadkomma rörelse längs axeln 904 eller axeln 906, väsentligt reducerade, så att den tid som erfordras för datorn att alstra de inkrementella lägesdata för rörelse till det önskade läget i öppningen 902 är väsentligt mindre.
Detta är betydelsefullt även om datorn användes "off-line" under inlärningsoperationen, eftersom även med den längre fram beskrivna förenklingen beräkningarna är ytterst komplicerade och kräver avse- värd beräkningstid. Före granskningen av sättet, på vilket datorn beräknar den önskade rörelsen längs axeln 904, kommer de olika sam- 47 7611920-5 banden mellan manipulatorns 50 sex styrda axlar och ekvationerna, vilka har framtagits enligt föreliggande uppfinning för att förenkla dessa samband, att diskuteras. I fig. 27 är de sex ledrörelserna hos manipulatorn 50 visade relativt ett överlagrat, kartesiskt X-, Y-, Z-koordinatsystem, varvid rörelse kring var och en av de sex styrda axlarna hos manipulatorn är identifierade av en särskild vinkel.
Rörelse kring midjevridaxeln är således identifierad som 94, rörelse kring skulderaxeln som El, rörelse kring armbågsaxeln som 62, rörelse kring underarmsvridaxeln som 65, rörelse kring handledsböjaxeln som 63 och rörelse kring handledsvridaxeln som 66. I fig. 27 är manipula- torarmen visad med alla vinklarna 61-66 i nolläget samt med pilar, som anger riktningen för ökande 6. Vinkeln 62 är lika med noll, när skulderarmspartiet 84 är vinkelrätt mot armbågspartiet 90. Alla övriga 6 är noll mitt på rörelsehanan kring den axeln.
Såsom allmänt beskrivits ovan har de sex styrda axlarna följande rörelseområden relativt de i fig. 27 visade nollvinklarna: ei = fšg (skuiara) ez = fšg (armbage) 63 = 1120 (handledsböjning) 64 = 155 (midjevridning) 65 = il50 (underarmsvridning) G6 = Inga mekaniska gränser (handledsvridning).
Ehuru 66 ej har några mekaniska gränser skall för enkelhets skull vid datorprogrameringen alla argument av trigonometriska funktioner vara mindre än 1800 eller U radianer för undvikande av tvetydighet i bågfunktionerna. För det i det följande i detalj be- skrivna datorinlärningshjälpmedlet kommer därför 66 att vara begränsad till ¿1so°.
Läget för var och en av de i fig. 27 angivna rörelserna lämnas av kodarna 602 och 608-616, som beskrivits i detalj ovan. Utsignaler- na från dessa kodare efter omvandling till vinkelinformation kommer att definieras som Sle-66e. Såsom framgår av fig. 27 ligger ett antal av rörelserna kring de olika styrda axlarna i serie med varandra, så att det finns en mängd olika växelverkningar mellan de olika rörelsegraderna. När en vridning sker kring en axel, medför detta således en rörelse kring en annan axel. I vissa fall mätes ej en av växelverkan med en annan axel âstadkommen rörelse av kodaren. 7611920-5 48 Därför är GN ej lika med GNe för vissa axlar. I andra fall ger fler än en axel en växelverkan med en särskild axel.
I enlighet med en betydelsefull sida av uppfinningen är de särskilda kugghjulsutväxlingsförhållandena och de sammankopplande drivmekanismerna, som beskrivits ovan och särskilt i samband med fig. 21, så anordnade, att uttrycken för alla termerna Gl-66 som funktion av Sle-66e kan uttryckas genom kombination av kodarutsigna- ler på binärrelaterad bas. Detta innebär, att de särskilda värdena för Gl-66 kan erhållas genom enkel addition av en fast och binärt relaterad del av en kodarutsignal till utsignalen från en annan kodare. Speciellt är utvecklingsförhållandena och sammankopplingsmeka- nismerna, visade i fig. 21, så anordnade, att följande uttryck för 61-66 gäller: 61 = Gle _ g (1) ez = eze ' (2) es' = ese + 1/szesa . (3) e4 = e4e o ' (4) es = ese (5) es = ese + 1/isese + 11/sizese (6) Eftersom det också är nödvändigt för datorn att omvandla i den motsatta riktningen, dvs från kodarvärden till värden 91-66, är följande uttryck också åstadkomna i det i fig. 2l visade arrange- manget av föreliggande uppfinning: eie = ei ' (7) eze = ez ' (8) ese =' es - 1/szes (9) e4e = e4 (io) ese = es (11) ese = es - 1/1693 - 1/ages (12) För att åstadkomma ett sådant arrangemang, att datorn ej begär ett läge hos någon rörelse bortom dennas mekaniska anslag, måste också gränser sättas för Gle-66e. _ ' Såsom ovan angivet är 96 begränsad till jl80°. Under användning av uttrycken (1)-(6) och de definierade områdena för 61-96 kan gränser för Sle-66e fastställas enligt följande: eie = ei < 3o° (13a) eie ei > -so° (13b) 49 7611920-5 eze = ez < 4o° (14a) eze = ez > -5o° (14b) e4e = e4 < ss° ' (lsa) e4e = e4 > -ss° (lsb) 'ese = es < 1so° (lea) ese = es > -1so° (lab) ese = es-1/32 ese<11s,3° (lva) eae = es-1/32 ese>-11s,a° (ivb) ese = es-1/less-17/s1zese<1s7,s° (laa) ese = es-1/lses-11/s12ese>-161,e° <1sb) Som ett exempel på den enligt föreliggande uppfinning åstad- komna förenklingen för omvandling av kodarvärden till önskade 6-värden och betraktande avvikelsen hos 66, som är handledsvridrörelsen och inbegriper handledsvrid-, handledsböj- och underarmsvridkompo- nenter, såsom visat i fig. 6, är i fig. 28 ett typiskt logikkrets- arrangemang visat för framtagning av 96 ur tre komponentkodarvärden.
Handledvridkodarens 614 utsignal tillföras således en första adderare 910 och utsignalen om 15 bitar från handledsböjkodaren 612 (93e) skiftas 4 bitar åt höger och tillföres som andra insignal till adde- raren 910. Utsignalen från adderaren 910 är således värdet 66e plus 'l/l6 av värdet 63e.
Utsignalen från adderaren 910 matas till en andra adderare 912, vars andra ingång tillföres utsignalen från underarmsvridkodaren 616 (65e) skiftad åt höger 5 bitar, så att utsignalen från den andra adderaren 912 är 66e plus 1/16 av 63e plus l/32 av 95e. Utsignalen från adderaren 912 tillföres en tredje adderare 914, vars andra ingång tillföres utsignalen från underarmsvridkodaren 616 skiftad åt höger med en faktor 9. Utsignalen från den tredje adderaren 914 är således det-önskade värdet på 96, eftersom de två komponenterna 1/32 och 1/512 av underarmsvridkodarens värde 65e korrekt adderas för bildande av det erfordrade värdet, angivet i ekvation (6). Genom att helt enkelt anordna tre adderare, vilka kan vara fast uppkopplade eller vara programmerade i datorn, âstadkommes följaktligen omvand- lingen från kodarvärden till värdena 61-66 mycket enkelt enligt föreliggande uppfinning. Det skall också påpekas, att omvandlings- ekvationerna (7)-(12) också är relaterade till varandra genom binära^ inkrement, så att additionen av 9-värdena kan åstadkommas mycket enkelt för omvandling tillbaka till önskade kodarvärden. 7611920-5 5° För att datorn skall kunna beräkna de önskade lägena kring var och en av de sex styrda axlarna för åstadkommande av rätlinjig rörelse exempelvis längs axeln 904 är det nödvändigt, att datorn omformar värdena 6, som lämnas på kodarutgångarna, såsom modifierade - genom ekvationerna (l)-(6) ovan, till motsvarande kartesiska koordi- nater, dvs X-, Y- och Z-komponenter, så att det nya rörelseinkrementet kan adderas i kartesiska koordinater. Det är sedan nödvändigt att datorn omformar dessa nya kartesiska koordinatvärden tillbaka i polär koordinatform för åstadkommande av 6-värden, vilka kan utgöra nya instruktionssignaler för rörelse kring de sex styrda axlarna till det nya läget längs axeln 904.
Om dessa transformationer utföres genom lösning av sex samtidiga ekvationer med sex okända variabler, är uppgiften att utföra var och en av dessa transformationer ytterst komplicerad, kräver avsevärd beräkningstid och är besvärlig att programmera. Enligt föreliggande uppfinning är en förenklad lösning åstadkommen, vilken väsentligt förkortar den totala tid som datorn kräver för att utföra de nödvän- diga beräkningarna och ge noggranna resultat. Denna lösning är dess- utom anordnad att samverka med den ovan beskrivna, linjära inter- polationsoperationsmoden under avspelning, så att extremt noggrann rörelse längs vilken som helst önskad riktning uppnås. Denna förenk- ling åstadkommas genom att manipulatorhanden först inställes eller inriktas så, att den pekar i den önskade rörelseriktning som skall programmeras. De kodardata som således alstras då stiftet 900 är in- riktat i den rätta riktningen för införing i öppningen 902 (fig. 26), bestämmer då orienteringsvinklarna, vilka definieras under inlärninge- inriktningsförloppet och kan utnyttjas för omvandling till kartesiska koordinater och tillbaka till polära koordinater för att väsentligt förenkla de erforderliga beräkningarna. ' Innan denna förenkling studeras i detalj hänvisas till fig. 29, där de olika lederna, som är sammankopplade för bildande av manipula- torarmen 50, är visade. I denna figur representerar vektorn al skulderarmpartiet 84. Vektorerna a2 och a3, vilka är vinkelräta mot varandra, representerar tillsammans armbâgspartiets 90 oriente- ring. Det förskjutna partiet a3 erfordras, eftersom armbågspartiets 90 axel ligger något över armbågsaxeln 92, såsom bäst framgår av fig. ll. Komponenterna a2 och a3 är emellertid alltid belägna vinkelrätt mot varandra, såsom visat i fig. 29.
Komponenten b representerar manipulatorhanden 96, vilken är rörlig kring handledsböjaxeln, identifierad som punkt 3 (denna punkt 51 7611920-5 är angiven med hänvisningsnumret 3 i en cirkel i fig. 29), och elementets b rörelse kring handledsböjaxeln motsvarar den angivna vinkeln 93. Manipulatorhandens klor eller käftar är angivna vid 920 i fig. 29 och elementet c representerar en detalj, t ex stiftet 900, som, när den gripes i klorna 920, sträcker sig vinkelrätt mot ele- _mentet b. Stiftets 900 (eller elementets c) ände, betecknad ändeffekt- punkten i det följande, är identifierad som punkt 6. Skärningen mel- lan elementen b och c är identifierad som punkt 5 i fig. 29. När manipulatorhanden vrides kring handledsvridaxeln för åstadkommande av en ändring i 66, rör sig ändeffektpunkten (punkt 6) i ett plan vinkelrätt mot elementet b.
Såsom tidigare allmänt beskrivits grundar sig den förenklade lösningen enligt föreliggande uppfinning på beräkningen av den nöd- vändiga transformationen från kartesiska till polära koordinater på den förutsättningen, att den inlärande operatören önskar förflytta ändeffektpunkten antingen längs elementets b axel eller längs ele- mentets c axel. Mer komplicerade rörelser, såsom en sveprörelse längs en bana vinkelrätt mot det av elementen b och c definierade planet, är också möjliga liksom längs en linje, som är en kombina- tion av en rörelse längs b, längs c eller längs svepaxeln, såsom be- skrivet närmare i detalj längre fram.
Det är således klart, att manipulatorarmen 50 utgöres av ele- menten al, a2, a3, b och c. Denna arms orientering styres dessutom genom variation av ledvinklarna 61-96. Genom att inskränka den in- struerade rörelsen till en rörelse på X cm i den riktning som ele- mentet b är inriktat i eller en rörelse på X cm~i den riktning ele- mentet c är inriktat i (visat som “längs b" eller “längs c" i fig. 29) kan svårigheten i transformationen från kartesiska till polära koordi- nater kraftigt minskas. Detta beror pâ att när rörelse instrueras längs antingen plus eller minus b eller längs plus eller minus c de tre punkterna 3, 5 och 6 vardera måste röra sig samma sträcka AX, AY och AZ. Detta beror på att elementen b och c vinkelrätt mot varandra är väsentligen stelt förbundna. 9 Elementets c vinkelorientering relativt elementet b kan inställas genom ändring av 66. Om en rörelse längs b instrueras, så rör sig punkterna 3, 5 och 6 inte desto mindre samtliga parallellt med varand- ra och parallellt med axeln för elementet b. Om en rörelse längs ele- mentet c instrueras, kommer på liknande sätt alla punkterna 3, 5 och 6 att röra sig parallellt med varandracufliparallellt med axeln för elementet c. Genom att inskränka alla rörelser från en given start- 7611920-5 sz punkt, i vilken värdena 61-96 är kända, till lika, samtidiga linjära translationer av punkterna 3, 5 och 6 kräver beräkningarna för be- stämning av ändpunkten 6 endast tre ekvationer med sex okända. Sama tre ekvationer definierar efter förenkling till fem okända punkten 5 och slutligen definierar samma tre ekvationer efter förenkling till tre okända punkten 3.
Såsom visat i fig. 29 är punkten 3 definierad såsom lika med summan av vektorerna al + a2 + a3. Punkten 5 är definierad som lika med summan av vektorerna al + a2 + a3 + b. Pâ liknande sätt är punkten 6 definierad som lika med summan av vektorerna al + a2 + a3 + b + c.
Enligt en betydelsefull sida av uppfinningen har tre ekvationer ut- vecklats, vilka inbegriper de sex okända 61-66, som definierar x6, y6 och 26, dvs de kartesiska koordinaterna för ändeffektpunkten 6.
Dessa ekvationer kan användas för att lösa koordinaterna X5, y5 och z5 för punkt 5 genom att c-termerna sättes lika med noll och på lik- , nande sätt kan dessa ekvationer lösas för X3, y3 och z3 genom att både b- och c-termernas koefficienter sättes lika med noll. Närmared bestämt är de tre ekvationer, vilka har utvecklats för att ge X-, y- och z-koordinaterna för ändeffektpunkten 6 uttryckta i elementen al, a2, a3, b, c och vinklarna 61-66, följande: x6 = al-cos6l-cos64¥a2-cos(180-61-62)-cos94+ +a3-sin(l80-61-92)-cosS4+b-cos(l80-63)-cos64-cos+ +b-sin(l80-63)-cos65-sin(l80-61-92)-cos64- -b-sin(l80-63)'sin65-sin64- -c-cos96-sin(180-63)-cos64-cos(l80-61-62)+ +c-[cos AI-sin(l80-Gl-62)-cos64-cosB- -c-[cos AI-sinB-sin94 (19) y6 = al-sin6l-a2-sin(l80-91-62)+a3~cos(l80-6l-62)- -b-cos(l80-63)°sin(l80-61-62)+ +b-sin(l80-63)'cos95-cos(l80-Gl-62)+ +c-cos96-sin(l80-63)-sin(l80-6l-92)+- +c-[cos AI-cosB-cos(l80-Gl-62) (20) z6 = al-cosöl-sin94+a2-cos(180-61-62)-sin64+ +a3-sin(l80-61-62)-sin64+ +b-cos(l80-83)-sin64-cos(l80-6l-62)- -c-cos66-sin(l80-63)-sin84-cos(l80-Gl-92)+ +b-sin(l80-93)-cosB5-sin(180-Gl-92)-sin94+ +c-Icos A]-cosB-sin(l80-91-62)~sin64+ +b-sin(l80-63)-sin65¥cos64+ +c-Icos AI-sinB-cos94 I (21) 53 7611920-5 där [cos A] = [cos {sin-l(cos96-sin(l80-93)ïl | och r B = 65+sin_l 1 _l sineö Lcos {sin (cos96'sin(l80-93))} Efter det att ändeffektpunkten, dvs punkt 6, är inställd och inriktad i den riktning som inlärningsoperatören önskar att rörelsen skall ske är det nödvändigt att beräkna och lösa koordinaterna för. punkterna 3, 5 och 6 i kartesiska koordinater, vilka punkter bestämde startpunkten för den avsedda rörelsen i en särskild riktning, såsom axeln 904, motsvarande en rörelse längs elementets b axel i fig. 29.
Dessa koordinatvärdesgrupper kan beräknas ur ekvationerna 19, 20 och 21 ovan. Först bestämmes koordinatvärdena X6, Y6 och Z6 genom insätt- ning av de erforderliga värdena 61-66 i var och en av ekvationerna 19, 20 och 2l. C-termerna sättes sedan lika med noll, varefter dessa ekvationer löses för X5, Y5 och ZS. Både b- och c-koefficienttermer- na sättes sedan lika med noll, varefter ekvationerna löses för koor- dinaterna X3, Y3 och Z3.' Det är nödvändigt att beräkna koordinatkomponenterna AX, AY och AZ, vilka erfordras för förflyttning den beordrade sträckan längs “axeln b. Det är betydelsefullt att förstå, att punkterna 3, 5 och 6 vardera kommer att röra sig identiska sträckor AX, AY och AZ. Detta säkerställer, att handorienteringen från handleden (punkt 3) kommer att bibehållas. Elementen b och c kommer att translateras linjärt i rummet, men deras orientering kommer att förbli densamma som den i den inriktade startpunkten, såsom schematiskt åskådliggjorts i fig. 30. Av fig. 30 framgår det, att manipulatorarmens element al, a2 och a3 kommer att förflyttas på erforderligt sätt för att ge translationen av elementen b och c "utan vridning". Elementen al, a2 och a3 kommer sannolikt att sluta i en icke-parallell orientering relativt deras "inriktade" startpunktsläge, såsom visat i fig. 30.
Genom att begränsa rörelsen av punkterna 3, 5 och 6 till en konstant AS (S = sträcka) förenklas väsentligt de erforderliga beräkningarna för framtagning av den sats 01-96 som är nödvändig för att definiera nya punkter 3, S och 6 (definierade som punkter 3N, SN och 6N).
Vad det gäller alstringen av komponenterna AX, AY och AZ i den avsedda rörelsen AS så kan AS först definieras enligt följande samband: I761192Ü~S 54 a i c ~ (22) As = x/Axz + Aïz + Azä där AS representerar den sträcka, över vilken punkterna 3, 5 och 6 skall förflyttas, varvid AX, AY och AZ representerar de kartesiska koordinatkomponenterna av den avsedda rörelsen AS.
Om den avsedda rörelsen skall ske längs elementet b, dvs axeln 904, så erhålles värdena AX, AY och AZ ur följande ekvationer: _ xs - X3 -_ _ Axb _ _-_b Asb _ (23) _ Ys - Ya _ _ Ayb - b Asb (24) _ šâ_-L3 . c Azb _ b Ash (25) Om den avsedda rörelsen skall ske längs elementet c och är lika med AS, så erhålles AX, AY och AZ genom följande ekvationer: XG-XS Axc = -c-- - Asc I (26) _ Ye - 25 _ ' Axe _ ___-c Asc (27) _ Z_6__:__Zí . u Azc - c _ Asc j (za) På likartat sätt kan rörelse åstadkomas i vilken som helst riktning i rummet genom bestämning av riktningscosiner relativt X-, Y- och Z-axlarna för den önskade translation som skall programme- ras enligt följande: AX = AS X riktningscos för rörelse relativt X-axel (29) AY = AS X riktningscos för rörelse relativt Y-axel (30) AZ = AS X riktningscos för rörelse relativt Z-axel (31) Efter att först ha bestämt X-, Y- och Z-koordinaterna för punkterna 3, 5 och 6 före den önskade rörelsen kan komponenterna AX, AY och AZ för den avsedda rörelsen adderas till koordinatgruppere na för punkterna 3, 5 och 6, så att koordinatgrupperna för punkterna 3N, SN och 6N för det önskade, nya armläget erhålles. Den återstående uppgiften blir sedan att finna motsvarande nya vinklar (5lN-96N), 55 761192U-5 som kommer att ge de nya X-, Y- och Z-koordinatgrupperna för punkter- na 3, 5 och 6. Denna process benämnes korrekt den inversa trans- formationsprocessen och ger de direkta vinkelgrupperna 6lN-96N, vilka motsvarar en given X-, Y- och Z-koordinatlägesgrupp för var och en av punkterna 3, 5 och 6. En sådan invers transformation âstadkommes i allmänhet genom utnyttjande av tre ekvationer, som inbegriper tre okända, vilka definierar de nya kartesiska koordinaterna för punkten 3, samt lösning för 6lN, 62N och 94N, varigenom det nya läget för punkt 3 bestämmes. Efter att ha bestämt 6lN, 62N och 64N kan lösning ske med avseende på 63N medelst den triangel som innefattar punkten 2', punkten 3 och punkten 5, vilkas tre sidor lätt kan bestämmas. När väl 93N är känd, kan 95N bestämmas genom användning av de kända koor- dinaterna X5, Y5 och Z5. Pâ likartat sätt kan 66N sedan lösas, när väl 95N_är bestämd.
De särskilda operationer, som måste utföras för att åstadkomma den inversa transformation som diskuterats ovan, är visadei.fíg. 31-49, vilka visar den följd av operationer som utföres av datorn under inlärningshjälpoperationen, vilken tidigare diskuterats i detalj. Såsom visat i fig. 31 avser den första beräkningen 64N, som kräver att arctg (tan_l) för storheten Z3N/X3N beräknas. Om det antages att rörelsen sker enbart längs axeln b, är det således klart, _att värdet X3N är lika med X-koordinaten (kartesisk) för den ursprung- liga startpunkten, erhâllen ur ekvation 19, plus ändringen i X-kompo- nenten, erhâllen ur ekvation (23). Pâ likartat sätt kan Y3N och Z3N framtagas. Framtagningen av arctg är angiven av logikblocket 922 i fig. 31, varvid det är klart, att denna operation utföres i den dator som är förknippad med manipulatorerna 50 och 52, såsom kommer att beskrivas i detalj längre fram. Beräkningarna enligt fig. 31-49 kan alternativt utföras på något annat lämpligt sätt, t ex medelst en miniräknare eller medelst något slag av analog behandlingsmaskin eller digital behandlingsmaskin för särskilt eller allmänt ändamål.
Det är således nödvändigt att taga fram 6lN och 62N, vilket är visat i fig. 32. För att taga fram dessa storheter utnyttjas triangeln, vilken bildas av punkterna O, 2 och 3 i fig. 29. Först bestämmas storleken av sträckan mellan punkt 0 och punkt 3, såsom visat av logikblocket 924. Detta värde kombineras sedan med de kända sträckor- na al och a4 i fig. 29 i ett logikblock 925 för bestämning av partial- omkretsen hos triangeln: 0 - punkt 2 - punkt 3, varvid utgångsvärdet identifieras som s0_2_3_ Utsignalen från logikblocket 925, kombineras sedan med insignalerna till detta logikblock i ett logikblock 926 _ . 7611920-5 _ 56 för bestämning av arean av triangeln: 0 - punkt 2 - punkt 3.
I ett logikblock 928 bestämes arcsin för vinkeln, som är bildad av punkt 0 - punkt 2 - punkt 3, och denna utsignal matas till en subtraherare 930, i vilket ett värde, som är proportionellt mot 6 offset, visad i fig. 29, dvs arctg för storheten a3/a2, subtrahe- ras för âstadkommande av den önskade utsignalen 62N. Areautsignalen från logikblocket 926 kombineras också med al och storleken av punkt 0 - punkt 3 i ett logikblock 932 för erhållande av en med 6lN" betecknad storhet, och Y3 kombineras med storleken av punkt 0 - punkt i ett logikblock 934 för erhållande av en utsignal 6lN', varefter dessa tvâ utsignaler kombineras i en adderare 936 för erhållande av den önskade utsignalen elN. värdena BIN' och 6lN" är visade i fig. 32 varav det framgår, att det önskade värdet Gl är summan av 61' och 6l". _ Efter att således ha bestämt värdena för de tre instruktione- signalerna för huvudaxlarna, dvs 61, 92 och 64, är det nödvändigt att beräkna det nya värdet för 63, dvs 63N. Härvid hänvisas till fig. 33-37 och fig. 33a, varvid den triangel utnyttjas som bildas av punkt 2' - punkt 3 - punkt 5. För att kunna utnyttja denna triangel måste först koordinaterna för punkt 2'N bestämmas. Detta göres i den grupp logikkretsar som allmänt är betecknade med 938 i fig. 33. När dessa komponentkoordinater för punkten 2'N har bestämts, bestämmes storleken av linjen mellan punkten 2[N och punkten 5N av ett logik- block 940 (fig. 34) genom utnyttjande av X-, Y- och Z-koordinaterna för punkten SN, vilka är kända,och de beräknade X-, Y- och Z-kompo- nenterna från logikblocket 938.
Den partiella omkretsen av triangeln, som bildas av punkterna 2'N - 3N - SN, bestämmes sedan i ett logikblock 942 (fig. 35), arean av denna triangel bestämmes av ett logikblock 944, såsom visat i fig. 36, och slutligen bestämmes värdet för 93N i ett logikblock 946 (fig. 37) genom utnyttjande av den från logikblocket 944 erhållna arean och komponenterna a2 och b.
Efter att nu ha bestämt värdena för 6lN, 62N, 63N och 64N be- stämmes det nya värdet för 65, dvs 65N, under användning av dessa fyra tidigare beräknade värden. För att göra denna bestämning antages det, att punkt 50 är läget för punkten 5, när 65 = 0, såsom visat i fig. 38. Under dessa villkor måste man finna koordinaterna för punkten 3', som ligger utmed axeln för elementet a2, varvid dess relativa riktning är en funktion av vinkeln (1800-63). Triangeln, som bildas av punkterna 3', So och SN kan sedan solveras, och den sv g 7611920-5 av punkterna SN - 3' - 50 bildade vinkeln bestämmas, vilken vinkel är den önskade vinkeln 95N. I fig. 38 är elementet a5 lika med punkt 3N - 3'N och dess X-, Y- och Z-koordinater bildas medelst logikblock 948, 949 och 950, vilka visas i fig. 39. X-, Y- och Z-koordinaterna för punkten 3'N kan sedan bestämmas medelst logik- block 951, 952 och 953, visade i fig. 39b.
Med koordinaterna för punkten 3'N bestämda kan triangeln mellan punkterna 3'N, 5N och 50 solveras, varvid koordinaterna för punkten 50 (som motsvarar punkt 5 med 65N = 0) bestämmes av logikblock 954, 955 och 956 i fig. 39c. Den mellan punkterna 5N och 50 bildade sidan bestämmes sedan medelst ett logikblock 957 i fig. 40. Radien rc hos basen av den kon som bildas, när 65 varieras, bestämmes sedan med ett logikblock 958 i fig. 41 och de två utsignalerna från logik- blocken~957 och 958 utnyttjas som insignaler till ett logikblock 959 för bestämning av partialomkretsen till triangeln mellan punkterna 3'N, SN och 50, såsom visat i fig. 42. Ett logikblock 960 i fig. 43_ utnyttjas sedan för bestämning av den önskade vinkeln HSN. Utsignalen från logikblocket 960 anger emellertid ej huruvida 65N är positiv eller negativ. Polariteten för 95N bestämmes genom att först vektor- produkten bildas mellan vektorerna: punkt 3'N - punkt 50 och punkt 3'N - punkt SN, såsom visat av ett logikblock 961 i fig. 43a, varvid denna vektorprodukt är definierad som CXSO. Om den resulterande riktningen är densamma som vektorn punkt 2'N - punkt 3N, så är tecknet plus. Om den resulterande vektorprodukten är motsatt vektorn punkt 2'N - punkt 3N, så är tecknet minus, såsom bestämt av ett logikblock 962 i fig. 43b. I detta sammanhang skall det påpekas, att den andra lösningen för 65N, när -63N användes, alltid kommer att ge 95N2 = 65Nl-1800. Den korrekta lösningsgruppen för 63N och GBN är den grupp som kräver minimal ändring för både 63 och 05.
Efter att ha beräknat 94N, 9lN, 62N, 63N och 65N kan 66N be- stämmas. Beträffande lösningen för 65N skall det emellertid påpekas, att om (l80°-63) ligger mellan i0,0l°, såsom bestämd av logikblocket 963 i fig. 39a, vilket skall definieras som noll, så löses 65 ej direkt. Lösningen för BGN kommer att ge det tilldelade 65N. Fallet (l80°-63) = 0 motsvarar den situation när elementet b är kolinjärt med elementet a2 och radien för konens bas närmar sig noll. I p detta fall definierar 65 och 66 vridningar kring samma axel (elementet a2) och är effektivt i fas, dvs additiva.
I För bestämningen av 96N hänvisas till fig. 44, där solveringen av den triangel som bildas av punkterna 5N, 60 och 6N är angiven, 7611920-5 58 varvid läget för punkt 60 uppträder, när värdet noll tilldelas 66. Om ett i fig. 39a visat logikblock 963 anger, att (l80°-93) är större än ip,0l°, så beräknas 66N genom solvering av denna triangel. Om det antages, att logikblocket 963 ger ett nej-svar, så bestämmes koordinaterna för punkten 60 genom utnyttjande av de kända koordinaterna för punkten SN, till vilka koordinater adderas komponenterna för vektorelementet c (med 66 = 0), vilken summering utföres av logikblock 965, 966 och 967, visade i fig. 45a, 45b och 45c. Längden av triangelsidan: punkt 60 - punkt GN bestämes sedan av ett logikblock 968 i fig. 46. Den partiella omkretsen för tri- angeln: punkt 6N, punkt SN, punkt 60 bestämmes sedan av ett logik- block 969 i fig. 47 och storleken av 6N bestämmes sedan av ett logikblock 970 i fig. 48.
För bestämning av det rätta tecknet för 96N framtages vektor- produkterna av vektorerna: punkt 5N - punkt 60 och punkt SN - punkt 6N av ett logikblock 971 i fig. 48a och riktningen av resultanten CX6° jämföres med vektorn: punkt 3N - punkt 5N i ett logikblock 972 i fig. 48b.
I det specialfall då 63 är mindre än 10,010 (fig. 39a) är elementen az och b i huvudsak kolinjära och en vridning av endera 65 eller 66 resulterar i en vridning kring elementet az. Under dessa förhållanden utelämnas beräkningarna för 65N och 66N beräknas med början enligt fig. 45a och med insättning av 95 = 0 i alla ekvationer- na. Ehuru det på detta sätt beräknade värdet för 96N skulle kunna användas som ett nytt 66-värde oberoende av 65 vidtages för att för- dela den totalt erfordrade rörelsen mellan 65 och 86 följande ät- gärder. Efter det att operationerna enligt fig. 45a-48b är slutförda med 65 = 0 matas det beräknade värdet för 66N, identifierat som 066, till ett logikblock 973 (fig. 49) tillsammans med de gamla värdena på 65 och 06. I detta logikblock erhålles det beräknade rörelseinkrementet, identifierat som AB, och detta divideras med 2.
Värdet AB/2 adderas sedan till de gamla värdena på 65 och 66 i logik- block 974 och 975 för erhållande av de önskade värdena på 65N och '66N. Det skall understrykas, att logikblocken 973, 974 och 975 an- vändes endast i det specialfall då (l80°-63) är mindre än 10,010 (fig. 39a).
Ehuru den ovan beskrivna inversa transformationen från kartesiska koordinater till de sex önskade polära koordinaterna för det nya läget, till vilket manipulatorarmen skall förflyttas längs axeln 904, kan synas ganska komplicerad,'är den väsentligt enklare än de er- 59 7611929-s forderliga beräkningarna, om den allmänna lösningen, som utnyttjar sex ekvationer med vardera sex okända, utnyttjas. Denna relativt enkla, inversa transformation är möjliggjord enbart på grund av att man alltid känner de korrekta koordinaterna för punkt 3. Detta inskränker problemet till tre ekvationer med tre okända (64, 61 och 62), vilka lätt kan lösas. När väl Gl, 92 och 64 har bestämts, har man åter att behandla tre ekvationer med tre okända, vilka lätt kan lösas. Den tid som datorn erfordrar för att utföra de nödvändiga beräkningarna för ovanstående relativt enkla inversa transformation har uppskattats till ungefär en tiondel - en tjugondel av den tid som erfordras för den mer allmänna lösningen. Det är också be- tydelsefullt att förstå, att stegen AS längs axeln 904 om önskat kan vara relativt korta, dvs av storleksordningen 5-10 mm, så att de resulterande felen i rörelsebanan kan hållas extremt små. För ett AS på 5 mm har felet uppskattats till mindre än 0,1 mm, när dessa två punkter längs axeln 904 också programmeras för avspelning i hastighetsmoden, varvid det linjära interpolationsarrangemanget ut- nyttas, vilket beskrivits i detalj ovan i samband med fig. 25.
Såsom allmänt diskuterats tidigare är det också möjligt att utvidga det ovan beskrivna arrangemanget för invers transformation till beräkningar, som inbegriper vridning kring punkten 5, såsom visat i fig. 50. I denna figur visas en programmerad vridning kring den av elementet c bestämda axeln. I detta fall förblir punkterna 5 och 6 stationära och endast punkten 3 rör sig kring den cirkel- formiga, streckade banan 980. Rörelsebanan 980 för manipulatorarmen kan lätt programmeras för sekvensiella, små ändringar i vinkeln u, vilken definitionsmässigt är lika med noll i startläget. En sådan rörelsebana kan utnyttjas vid sammansättning av detaljer, där vrid- rörelse kring en axel erfordras, såsom inskruvningen av en detalj i en annan, etc. 7 I fig. 50 består nettoändringen för punkt 3 av summan av vektorer- na punkt 3 - punkt 7 och punkt 7 - punkt 8. Det skall emellertid påpekas, att vektorn punkt 3 - punkt 7 ligger på axeln b och har en storlek, som är lika med b - b cos a. Dess olika komponenter är givna av följande ekvationer: X5 - X3 Axb = --E-- - (b - b-cos G) (32) Ayb = 35-š-33 Ä (b - b-cos a) (33) Azb 35-š-åš - (b - b-cos a) (34) 7611920-5 _ ao Vektorn punkt 7 - punkt 8 ligger i en riktning, som är bestämd av -(Q X 3), vilken riktning är normal till vektorernas b och_c plan. I exemplet enligt fig. 50 är storleken av vektorn punkt 7 - punkt 8 lika med (b - sin a). Dess olika komponenter är givna av följande ekvationer: AXs = - Sx-(b~sin a) W . (35) AYX = - Sy-(b°sin a) I (36) Azs = - sz-(b-sin a) D (37) där Sx är svepaxelns riktningscosinus relativt x-axeln, Sy är svepaxelns riktningscosinus relativt y-axeln och Sz är svepaxelns riktningscosinus relativt z-axeln.
Ur dessa ekvationer kan punkten 3N beräknas för vridning kring elementet c i fig. 50 enligt följande ekvationer: X3N = X3 + AXb + AXs (38) Y3N = Y3 + AYb + AYs. ~ (39) z3N = Z3 + Azb + Azs _ (40) Eftersom punkterna 5 och 6 förblir stationära, är de kartesiska koordinaterna för punkterna 3N, SN och 6N nu kända och beräkningen kan fortskrida som tidigare med den inversa transformation som beskrevs i samband med fig. 31-49 för bestämning av de nya värdena på 91-96.
Såsom allmänt diskuterats tidigare utnyttjas den ovan beskrivna inlärningsbiståndsdatorprogrammoden för utförande av noggranna rörelser i samband med sammansättning av detaljer i olika vinklar och sneda plan. Inlärningsoperatören befrias således från den i själva verket omöjliga uppgiften att koordinera sex vinkelrörelser, som bestämmer en exakt rörelsebana för manipulatorhanden i rummet.
Enligt en ytterligare sida av uppfinningen är den med manipulator- anordningen förknippade datorn kopplad via lämpliga gränssnitt till manipulatorns styrkretsar, så att när väl värdena 6lN-96N har beräknat: på det ovan i detalj beskrivna sättet och efter lämplig transformation enligt ekvationerna (7)-(12) och omvandling från vinkelinformation till digital information de kan registreras i manipulatoranordningens minne, där de kommer att fungera som instruktionssignaler för alla sex styrda axlarna under manipulatorns avspelningsoperationsmod. 61 7611920-5 Sättet, på vilket en sådan dator kan förbindas med en manipulator- anordning, är visat i fig. 51-58, varvid dessa figurer skall arrange- ras på det i fig. 58a visade sättet. Med hänvisning till dessa figurer är en dator, allmänt betecknad 1000, kopplad till manipula- torkonsolens kretsar, t ex manipulatorn 50, via lämpliga datorgräns- snittsförbindningar 1002, varvid manipulatorkonsolens kretsar i fig. 51-58 är visade i form av huvudblock, vilka i många fall inne- fattar enskilda tryckta kretskort, som bildar en särskild del av manipulatorkretsarna. I de fall då det särskilda blocket i huvudsak motsvarar vad som tidigare beskrivits i detalj i samband med fig. 21-25 har likartade hänvisningsnummer utnyttjats. Datorn 1000 är företrädesvis en dator Model Nova 2/10 från Data General med ett kärn- minne på 32 kbit och är försedd med en fjärrskrivarenhet (TTY), all- mänt betecknad 1004, medelst vilken inlärningsoperatören kan utnyttja datorn 1000 som ett inlärningshjälpmedel under den första inlärnings- operationen och registrera de beräknade programstegen i manipulatorns minne 628. Kopplingen mellan datorn 1000 och datorgränssnittet 1002 är allmänt angivet med en förbindningsledning 1006. Gränssnittet 1002 är företrädesvis inbegripet i datorn 1000, så att datorn och gränssnittet helt enkelt kan pluggas in i en manipulatoranordning, såsom en av manipulatorerna 50 och 52 för att bistå vid inlärningen av den särskilda manipulatornl Datorn 1000 och gränssnittet 1002 kan också vara anordnade att betjäna båda manipulatorerna 50, 52 på alternerande sätt genom lämplig omkoppling, när operatören anger vilken manipulator som skall använda datorn för den nästa inlärnings- operationen.
Beträffande huvudkomponenterna i manipulatorkretsarna matas signalerna från sex kodare, allmänt betecknade 1008 (fig. 57), till en avsökarskiva 1010, vilken också tillföres de tre utsignalerna från en gruppräknare 674 (fig. 52), allmänt angivna vid 1012 och motsva- rande insignalerna 20, 21 och 22 i fig. 23. Avsökaren 1010 alstrar en passande multiplex utsignal i binär kod, vilken är betecknad med symbolen Én och tillföres komparatorn 626. I När kodardata skall registreras i minnet 628 som en instruktions- signal, dvs under en inlärningsoperation, matas dessa data Én via I MUX9 på en I-skiva l0l4 till minnet 628 över med MEn betecknade le- dare. Det skall i detta sammanhang påpekas, att termen MUX utnyttjas i fig. 51-58 för att beteckna en multiplexer i form av en integrerad krets, som innehåller en mängd kretsar för omkoppling av en utsignal mellan två eller flera insignaler under styrning av en eller flera 761192Û~5 æ styrledare. Denna mängd kretsar är allmänt antydd som en enpolig tvåvägsströmställare och dennas styrning är utmärkt medelst en streckad linje.
De binära, kodade data från varje kodare innefattar ett ord om 15 bitar, och en paritetsgenerator 1016 är anordnad på I-skivan 1014 för att addera en sextonde paritetsbit, så att de minnet 628 tillförda data är ett ord om 16 bitar, tillfört över ledarna MEn. Nämnda kodar- data kan också inverteras i en inverterare 1018 och matas över ledare TÉE till en test- och datapresentationsenhet 1020. Data från en huvud- styrpanel 1022 kan dessutom matas till MUXl0 på I-skivan 1014, där de kan adderas till kodardata under multiplexperioder Gl, G2, som är tilldelade extra styrsignaler.
En inlärningsmodströmställare 1024 är anordnad på manipulator- konsolen och har ett normalt inlärningsläge 1026, betecknat fifiï, ett manuellt inlärningsläge 1027, betecknat EET, ett datorbistånds- läge 1028, betecknat ÜEF, och ett bandspelarläge 1030, betecknat ñïš. när strömstäilaren 1024 är 1 läget 1027 eller 1028, är Muxlo anordnad att mata hjälpinformation från huvudstyrpanelen 1022 till minnet 628 via MUX9.- _ Manipulatoranordningens arbetssätt under en normal inlärnings- operation med strömställaren 1024 i läget 1026 skall först beskrivas.
När ström först matas till manipulatorn och närhelst in1ärnings-repe- terströmställaren slås om från repetering till inlärning, matas läges- data från kodarna Én omedelbart till ett direktaccessminne, beteck- nat RAMI, på en inlärningsskiva 1032 med sluten slinga. Under denna inlärningsmod är MUX4 kopplad till utgången från RAMl. När strömmen först slås till eller när inlärnings-repeterströmställaren slås om till inlärningsläget (WTÉ), styr en skriv/lässtyrkrets 1036 minnet RAMl så, att nämnda kodardata En lagras i RAMI.
De i RAMl lagrade data identifieras som Dn, vilka tillföres som en insignal till en subtraherare 1038 i komparatorn 626, vilken subtraherares andra insignal är kodardata Én. Komparatorn jämför således utsignalen frân RAMI med kodardata Én och alstrar det som EER identifierade lägesfelet, dvs utsignalen från digita1-ana1ogom- vandlaren 640. Ett inlärningssystem med sluten slinga är således åstadkommet, vilket är anordnat att upprätthålla begynnelsekodarläget och förhindra drift för alla axlar, såsom beskrivet i detalj ovan i samband med fig. 22, 23 och 24. P- och M-riktningssignalerna från komparatorn 626 fungerar som vid repetering för alla axlar. När en inlärningsstyrriktningsknapp för en rörelse nedtryckes, t ex en av 53 7611920-5 riktningsknapparna 658, 660 för midjevridaxeln, alstras emellertid en inlärningsriktningssignal T? eller ïfi och signalerna P, M inbi- beras. Den valda rörelsen följer således inlärningsstyrinstrukticnen, men övriga rörelser förblir låsta på begynnelselägesdata, lagrade i RAMI.
Inlärningsriktningssignalerna tvingar också RAMl in i skrivmoden under den valda grupperioden, såsom den midjevridaxeln tilldelade G3, så att detta arbetsminne uppdateras. När inlärningsriktningsknappen släppes, stoppas således den valda rörelsen i det nya läget, såsom beskrivet i detalj ovan. När registreringsknappen nedtryckes, skrives utsignalerna från kodarna och instruktionsbitarna från huvudstyr- panelen 1022 in i minnet 628 medelst I-skivan 1014, såsom beskrivet ovan. Denna inlärningsregistreringsprocess är i huvudsak densamma som i en konventionell manipulatoranordning. När registreringsknappen nedtryckes, aktiveras emellertid en reläbank 1040 för åstadkommande av registreringssignalen, betecknad CRR, och denna signal synkroni- seras på en W-skiva 1042 med systemklockan. På detta sätt alstras ' minnesinitieringssignalen WÉÉ, minnesmodsignalen WÛÖ, adresstegsigna- len WSP och minnesströmsignalen VDD av samma kretsar för alla opera- tionsmoder.
När strömställaren 1024 är i det manuella inlärningsläget 1027, är en gruppinlärningsstyrmod också möjlig. I detta läge användes en inbyggd testanordning 1020 för att styra inlärningsoperationen.
En nedtryckning av gruppknappen (ïfi låg) bringar den primära lås- kretsen i W-skivan 1042 att âterställas synkront, vilket blockerar systemklockan. Pâ denna punkt är gruppmodoperationen densamma som i en konventionell manipulator för gruppval, gruppläsning och grupp- registrering. En hjälpstyrpanel 1044 innefattar en serie om femton strömställare 1026, som kan användas för att manuellt inställa vilken som helst av de instruktionsbitar som erfordras i multiplexperioderna Gl och G2. Hjälpstyrpanelen utnyttjas i första hand för manuell pro- grammering av instruktioner för hopp från en del av ett program till en annan del, såsom kommer att beskrivas i detalj längre fram. Sådana manuella styrströmställare erfordras, eftersom datorn 1000 utnyttjas för inlärning av hoppinstruktioner via sin styrenhet 1004, såsom kommer att beskrivas i detalj längre fram. De femton strömställarna 1026 styr de 15 bitarna i varje grupp och är manuellt programmerade i gruppkoden. Utgângarna från dessa strömställare är via ELLER-grindar kopplade till utgången Én från avsökaren 1010 och anslutna till minnet 628 på det ovan i detalj beskrivna sättet. 64 7611920-5 Såsom allmänt beskrivits ovan kan datorn 1000 utnyttjas som ett inlärningshjälpmedel och reagerar för indata, som tillföres från manipulatorkonsolen, genom att utföra beräkningar på dessa indata och åstadkomma utdata, vilka kan lagras i manipulatorminnet 628. En sådan inlärningshjälpoperation åstadkommes, när inlärnings- modströmställaren l024 är i datorläget 1028. I detta läge finns två aspekter att beakta. Den första är dator-manipulatormoden, i vilken i datorn utvecklade data tillföres minnet 628, och den andra är manipulator-datormoden, i vilken instruktionsdata tillföres da- torn 1000. Under dator-manipulatormoden tager datorn 1000 fullständig styrning över manipulatorhuvudminnet 628 via datorgränssnittet 1002.
Närmare bestämt sänder först gränssnittet 1002 den önskade adressen, identifierad som CAn, till MUXl i adresstyrenheten 680. Den som MING identifierade signalen styr MUXl och är aktiv under dator-mani- pulatormoden. Den önskade adressen tillföres således från MUX1 som en adressinsignal An till adressregistret 678. Signalen MING kopp- lar också om MUX5 till läget 2, så att gruppdelen (3 lägre LSD) av minnesadressen styres av datorutsignalen, identifierad som CGC (0-2), varvid utsignalen från MUX5 är identifierad som MGC (0-2). Med detta arrangemang sättes valet av vilken som helst särskild grupp på en särskild adress i minnet 628 under datorns 1000 styrning.
Signalen MING är också anordnad att via en ELLER-grindkrets 1046 på dataväljarskivan 1048 styra MUX9 på I-skivan 1014 medelst utsignalen ïïï från ELLER-grinden 1046. När datorn 1000 med detta arrangemang har slutfört sin beräkning av en grupp kodarvärden Bl-66 på ovan i detalj beskrivet sätt och denna grupp datorutvecklade signaler skall registreras i minnet som instruktionssignaler, vilka skall användas vid avspelning, matas de av datorn beräknade data via gränssnittet 1002 och ledningen CEn till MUX6 på dataväljarskivan 1048. Den som IEn identifierade utsignalen från dataväljarskivan 1048 matas sedan till den andra ingången till MUX9 på I-skivan 1014 och därifrån till minnet 628.
Under dator-manipulatorinlärningsmoden arbetar systemklockan och systemslingan är sluten kring RAMl. Manipulatorläget driver således ej under det att datorn utför ovannämnda beräkningar och de beräknade 6-värdena för varje axel registreras i minnet 628. I dator-manipula- tormoden ersättes den av W-skivan alstrade minnesinitieringssignalen WCB och minnesmodsignalen WMC av datorgränssnittsekvivalenter CCB resp CMC. Inga synkroniseringsproblem erfares således vid införande av de datorberäknade data i minnet 628. Närmare bestämt matas under “S 7611920-5 dator-manipulatorinlärningsmoden signalen CCB via en inverterare 1050 till en multiplexer 1052, vilken är styrd av signalen.MING, så att under denna inlärningsmod signalen ÖCB ersätter signalen WÖÉ. Signalen MING matas också via en ELLER-grind 1053 såsom signa- len Wfië.
Det påpekas, att varje grupp av data för en särskild axel består av 15 informationsbitar, vilka sändes parallellt som ett enda ord, vars adress tidigare har valts medelst ledningarna CAn och CGC (0-2). Dessa datagrupper sändes serievis på ledningarna CEn med början i instruktionsgrupperna l och 2 och därefter i följd genom lägesgrupperna G3-G8. Eftersom den totala adressen är upprättad före överföringen av data, kan vilken som helst datagrupp som mot- svarar en särskild axel om önskat sändas till minnet.
När strömställaren 1024 är i läget 1028, kan också en manipula- tor-datoroperationsmod upprättas, vid vilken ingen förbindelse finns mellan datorn 1000 och huvudmanipulatorminnet 628. I denna operations- mod utnyttjas överföring av data från arbetsminnet RAMl på det ovan beskrivna sättet för upprätthållande av ett inlärningssystem med sluten slinga, så att manipulatorläget ej kommer att driva. Eftersom systemklockan löper under denna operationsmod, måste datorgränssnitts- kretsarna synkroniseras med denna klockfrekvens. För detta ändamål 'sändes WRD (systemklocka) och Gl (första gruppuls) till gränssnittet 1002.
Under manipulator-datorinlärningsmoden sändes hjälpstyrsignalerna (Gl och G2) ej till datorn utan endast lägessignalerna från kodarna (G3-G8) sändes till datorn 1000. I denna:operationsmod användes perioden Gl för synkronisering och perioden G2 användes för att sända förhandenvarande programstegsadress till datorn, så att datorn vet vart de beräknade resultaten skall sändas för detta inlärnings~ steg. 7 I manipulator-datorinlärningsoperationsmoden'tages stegadressen från adressregistrets utgång genom grindstyrning av utsignalen med signalerna MCP och G2, såsom allmänt antytt med ett block 1054, varvid utsignalen från detta grindsystem kopplas via trådade ELLER-grindar (ej visade) till ingången Én till RAMI. Denna steg-' adress matas således till MUX4 och över ledarna Dn till datorgräns- snittet 1002 och därmed till datorn 1000. Eftersom inlärnings-repe- terströmställaren 1024 är i inlärningsläget under denna operations- mod, är MUX4 i läge 2 och utsignalen från RAMI är också tillgänglig på ledningarna Dn. Dessa ledningar användes också som dataingång till 7611920-s t se datorgränssnittet 1002 för lägesdata, som representerar manipulator- armens förhandenvarande läge vid den tidpunkten. _ När inlärningsmodströmställaren 1024 förflyttas till läget 1030, utnyttjas en bandspelare 1056 för att mata på band registrerade läges~ och styrsignaler, identifierade som ZEn, till MUX6 på data- väljarskivan 1048. Signalen ñïš, som alstras när strömställaren 1024 är i läget 1030, styr MUX6 på så sätt, att dessa bandregistre- rade data matas via MUX9 till minnet 628. Med ett sådant arrangemang kan bandspelaren 1056 utnyttjas för direkt registrering i manipula- toranordningens minne i stället för manuell inlärning av den mani- pulatoranordningen, exempelvis i de fall då en serie manipulatorer skall utföra identiska uppgifter under successiva avspelningscykler.
Bandspelaren 1056 mottager ingångsinformation, vilken först är till- förd frân minnesutgångsledarna MDn och har lagrats i bufferregister 1058, varefter denna information matas via ledningar TÜH till band- spelaren 1056. Efter det att ett program har registrerats i minnet 628 kan det följaktligen registreras i bandspelaren 1056 under en avspelningscykel, varvid indata tillföres över ledningarna TÜH. När väl programmet är registrerat i bandspelaren 1056, kan det utnyttjas för att styra en annan manipulatoranordning på det ovan beskrivna sättet.
När inlärningsmodströmställaren 1024 är i bandspelarläget 1030, stoppas manipulatorsystemklockan och enheten 1056 styr flödet av data in i och ut från huvudminnet 628.
Arbetssättet för de i fig. 51-58 visade manipulatorkonsolstyr-- kretsarna under repeter- eller avspelningsoperationsmoden skall nu diskuteras. Det påpekas först, att datorn 1000 ej utnyttjas under avspelning. De i dessa figurer visade konsolkretsarna fungerar följ- aktligen på ett sätt, som är i huvudsak likartat det sätt som be- skrivits i detalj tidigare i de ovan nämnda patentskrifterna. Det påpekas emellertid, att medelst kretsarna på en sekvensstyrskiva 1060 tre olika typer av adresshoppsmoder är åstadkomna, identifierade som JMP, JMP-R och JMS. I JMP-moden hoppar manipulatorn helt enkelt till en ny adress och fortsätter serievis i steg från denna nya adress. I moden JMP-R hoppar manipulatorn till en ny adress och fort- sätter därifrån till dess att en unik "subrutinslut"-bit detekteras, varefter den återgår till det ursprungliga programmet. I moden JMS hoppar manipulatorn till en ny adress, stegar ett fast programmerat antal steg n och återgår sedan till det ursprungliga programsteget (N + 1). 61 761192-0-5 Före närmare diskussion av adresshoppsmoderna skall systemets arbetssätt i repetermoden under ett rättfran1progran1utan hopp be- skrivas. Programmets startadress inställes-av programväljaren 1062 och efterföljande adresser följer serievis som gensvar pâ program- stegsändringssignalen WSP. Utsignalen från ett register 1064 matas till ett register 1065 och utsignalen från registret 1065 matas till en adderare 1081 för +1 eller -1 steg. Om registret 1064 befinner sig i steget N, uppträder följaktligen-steget N + l på adderarens 1081 utgång. Varje gång en signal WSP uppträder, stegas registret 1064 fram ett steg via en ELLER-grind 1067, men registret 1065 stegas ej fram som följd av en inverterare 1069. Efter det att signalen WSP har försvunnit verksamgöres registret 1065 och stegas fram till registrets 1064 inställning. Närhelst en icke-sekvensiell adress skall införas i adressregistret 678 alstras en signal WAR, som styr registren 1064 och 1065 via ELLER-grinden 1067 samt även styr MUX7, så att registret 1064 ej längre styres av utsignalen från adderaren 1081 utan i stället styres av externa adressdata An.
Signalen WAR förinställer således registret 1064 med hjälp av ingångs- adressledningarna An via MUXl och MUX2, såsom bestämt av programvälja- ren 1062. Adressregistrets 678 utgångsledningar ACn styr minnets 628 adress med undantag för de tre lägsta binära siffrorna, vilka styres av gruppräknarutsignalerna GC (0-2). Om önskat kan adress- registerutsignalerna ACn ändras till binärkodad decimalform av en läsminneskodomvandlare, vars utsignal driver en adressindikator 1066. En framstegningsknapp 1068 på en adresstyrpanel 1070 utnyttjas för att stega adressregistret antingen framåt eller bakåt i beroende av inställningen av en stegriktningsströmställare 1072. Snabb steg- ning i vardera riktningen erhålles genom att framstegningsknappen 1068 hâlles nere.
Under avspelning matas först instruktionssignalsutdata MDn från huvudminnet 628 till buffertregistren 1058, vilka åstadkommer lämplig drivkapacitet för andra kretsar. I buffertregistren 1058 är nämnda data MDn låsta under perioderna Gl och G2 samt avkodas för alstring av hjälpstyrsignalbitarna. De återstående minnesdata MDn buffertlagras också i registren 1058 och matas som data SDn till sekvensstyrskivan 1060. Dessa data kopplas också till datapresenta- tionsenheten på frontpanelen och till det inbyggda testdonet 1020.
TDn-data föres också ut till bandspelarenheten 1056, såsom i detalj beskrives ovan. De buffertlagrade data BDn och CDn matas också till en linjär interpolator 1074. Den linjära interpolatorn 1074 kan vara 7611920-5 a sa i huvudsak sådan som den i samband med fig. 25 i detalj tidigare beskrivna samt matar data över ledningarna LDn till inlärnings- skivan 1032 med sluten slinga. I repeteroperationsmoden är MUX4 i läget l och därmed matas data LDn över ledningarna Dn till kompara- torn 626. I punkt-punktavspelningsoperationsmoden lämnar de buffert- lagrade data BDn och CDn den linjära interpolatorn utan ändring såsom data LDn, såsom beskrivits i detalj ovan i samband med fig. 25.
Under hastighetsoperationsmoden, identifierad som CP, modifieras datasignalerna BDn och CDn av interpolationsenheten för åstadkommande av de ovan beskrivna artificiella inkrementinstruktionssignalerna,. vilka såsom data LDn tillföres komparatorn 626. I komparatorn 626 jämföres Dn-data med kodardata Én för erhållande av lägesfelsignalen EER och riktningssignalerna P och M, såsom beskrivet i detalj ovan.
Under repeteroperationsmoderna är hjälpstyrsignalerna låsta i buffertregistren 1058 under intervallen S1' och S2', som motsvarar de senare delarna av intervallen Gl och G2. Dessa styrsignaler är visade schematiskt i fig. 62 och 63 samt kan programmeras antingen genom inställning av strömställarna på huvudstyrpanelen 1022 eller av datorn 1000 under en datorassisterad inlärningsoperation. Med hänvisning till dessa figurer utnyttjas vad det gäller punkt-punkt- moden PTP bitar l och 2 i perioden Gl för programmering av signaler noggrannhet 2 och noggrannhet 3, såsom beskrivet i detalj i nämnda amerikanska patentskrift 3 661 051. Bit 3 i Gl programmerar en lång- sam inlärningshastighet för alla axlar, bit 4 är programslutbiten, bitarna 5-9 är signaler OX, bitarna 12 och 15 är signaler WX och bitarna 13 och 14 är lâsningsstyrsignaler. Bitarna 10 och ll i Gl utnyttjas för att styra vilken mod, dvs PTP, CP (hastighetsmoden), JMS eller JMP, som manipulatorn skall arbeta i för ett särskilt pro- gramsteg. I perioden G2 utnyttjas ej bitarna l-9 för moden PTP, biten 10 är en annan signal QX, biten ll är en tidsfördröjningssignal, som anger att det nästa programsteget skall väljas efter en förut- bestämd tidsfördröjning, och bitarna 12-15 är ytterligare signaler WX.
I CP- eller hastighetsmoden styr bitarna l-3 i perioden Gl programmeringen av räknaren 742, som bestämmer antalet interpola- ' tionsintervall mellan två programsteg, såsom beskrivet i detalj ovan.
När bitarna 1-3 är noll, styres närmare bestämt räknaren 742 att åstadkomma sexton interpolationsintervall, och när bitarna 1-3 är 001 åstadkommas trettiotvå interpolationsintervall, etc upp till 256 sådana intervall. Bit 4 är en programslutsignal i moden CP, 6; 7611920-5 bitarna 5-15 är likartade de i den ovan beskrivna PTP-moden. I perioden G2 utnyttjas bitarna l-6 för att styra programmeringen av räknaren 672, som bestämmer varaktigheten av varje multiplex- period. Närmare bestämt styr bitarna l-6 i G2 räknaren 672 så, att den räknar från ett minimum på 64 till ett maximum på 127, såsom tidigare beskrivet. Bitarna 7-9 i G2 utnyttjas för att styra antalet dividerarsteg som utnyttjas i divideraren 744. När bitarna 7-9 är 000, dividerar divideraren 744 med 24 och när dessa bitar är 100 dividerar divideraren 744 med 28. De återstående bitarna 10-15 är likartade motsvarande bitar i den ovan beskrivna moden PTP.
I moden JMS ger bitarna l-9 och 12 startadressen för subrutin- listan, bitarna 10 och ll utmärker operationsmoden JMS och bitarna 13-15 anger subrutinnumret, vilket kan variera från l till 7, om upp till sju pallar samtidigt utnyttjas under en sammansättnings- operation. I moden JMS betecknar bitarna l-3 i G2 antalet steg i den särskilda JMS-sekvensen, medan övriga bitar i G2 ej utnyttjas.
I moderna JMP och JMP-R ger bitarna 1-9 och 12 i Gl startadressen, till vilken hoppet skall göras, och bitarna 10 och 11 anger moderna JMP och JMP-R. En "l" i bit 13 anger moden JMP-R, varvid armen _ återgår till steget N + 1, när en "l" (subrutinslutbit) är åstadkommen i bit 15 i G2. Alla övrigabitar i G2 användes ej för moderna JMP och JMP-R.
Adresshoppmoden JMP skall nu beskrivas närmare i detalj. Start- adressen för moderna JMP, JMP-R och JMS är inrymd i bitarna l-9 och 12 i Gl. Dessa startadressdata matas över ledningarna BDn, CDn till en serie av startadresslåskretsar 1080 i adressingångsväljaren 680 samt låses i dessa låskretsar, när en signal JPS tillföres. Signalen JPS utvecklas av en JMP/JMS-detektor 1082, vilken är styrd av G1 och alstrar en utsignal på ledaren JPS, när bitarna 10 och ll i G2 är antingen "1“, "O" eller "l", "l". Detektorn 1082 alstrar också en signal på ledaren JMP, när bitarna 10 och ll är "l", "l", och alstrar en signal på ledaren JMS, när bitarna 10 och ll är "l", "O".
Startadressen i moden JMP matas således till läge 1 för MUX3 på adressingångsväljaren 680. När en läs/skrivstyrenhet 1083 mottager antingen en signal JMP eller en signal JMS från detektorn 1082, matar den en signal över en ledare 1084 till en adressåterställnings- logikenhet 1085, som i sin tur matar en signal över QAl till MUX2 i adressingångsväljaren 680 för att föra MUX2 till läge 2, så att startadressen JMP matas från låskretsarna 1080 via MUX3, MUX2 och MUX1 till MUX7. MUX7 är styrd av signalen WAR till läge 1, så att 7611920-5 "° startadressen tillföres registret l064 samt via ledningarna ACn till- föres minnet 628. Minnet 628 hoppar följaktligen omedelbart till den nya startadressen och fortsätter successiva programsteg från denna punkt. I moden JM? göres ingen återgång till ett tidigare programsteg.
I moden JM?-R göres en återgång till steget N + l efter det att minnet 628 har hoppat till den nya startadressen och därefter påträffar en subrutinslutbit "l" i bit 15 i G2, såsom visat i fig. 63.
Vid början av en mod JMP-R_matas adressen för programsteget N + l, vilken adress uppträder på adderarens 1081 utgång, över ledningarna LAn till RAM2. RAM2 är ett direktaccessminne med åtta adresslitsar, varvid nolladresslitsen utnyttjas för att lagra adressen för program- steget N + l och de andra sju slitsarna utnyttjas för lagring av nya startadresser för var och en av de sju JMS-sekvenser som samtliga kan fortskrida samtidigt, såsom kommer att beskrivas närmare i detaljl lägre fram i samband med hoppsekvensen JMS. Signalen på ledaren 1084 vid början av moden JMP-R för MUX8 på sekvensstyrskivan 1060 till ' läget l, så att adressen för programsteget N + l lagras i nolladress- slitsen i RAM2. När en subrutinslutbit påträffas i bit 15 i G2, vilket anger att moden JM?-R har avslutats och minnet 628 skall återgå till programsteget N + l, matas en signal E/S till en läs/skrivstyrkrets l083, vilken styr RAM2 via en ledare 1086 för utläsning av den adress som är lagrad i nolladresslitsen i RAM2, och denna adress matas via ledningar EXE till läge 2 för MUX3. Styrkretsen matar också en signal över ledaren QAD till MUX3, så att denna föres till läge 2. Adressen till programsteget N + 1 matas sedan via MUX3, MUX2, MUXl och MUX7 till registret 1064, så att minnet 628 återföres till programsteget N + l och fortsätter serievis från denna punkt.
Moden JMS utnyttjas, när ett antal detaljer skall avlägsnas från olika ställen på en pall under successiva avspelningscykler. Moden JMS innefattar typiskt ett litet antal steg, vilka erfordras för att lyfta en detalj från pallen och förflytta den till ett förutbestämt läge. Samma antal programsteg erfordras således för varje avspel- ningscykel, men detaljens läge på pallen skiljer sig för varje av- spelningscykel. I arrangemanget enligt föreliggande uppfinning be-' räknas de nödvändiga lägesinstruktionerna för upplockning av varje detalj från en pall av datorn 1000 samt lagras i en sekvensiell serie programsteg i minnet 628 under inlärningsoperationen, vilken opera- tion betecknas operationsuppgift III, såsom beskriven i detalj längre fram. Om en serie på tre steg måste utföras för upplockning av varje 71 1611920-5 detalj från pallen, kommer lägesinstruktioner att lagras i minnet 628 i på varandra följande trestegsgrupper. När ett programsteg påträffas, vilket begär en sekvens JMS, är den första trestegsgruppens startadress angiven av bitarna 1-9 och 12 i Gl, såsom diskuterat ovan i samband med fig. 62. Om det antages, att den första trestegs- gruppen i sekvensen JMS är lagrad vid programstegen 512, 513 och 514, skulle startadressen för programsteget 512 ges av bitarna 1-9 och 12 i Gl och minnet 628 skulle bringas att hoppa till steget 512. När dessa tre steg är avslutade, skulle minnet bringas att återgå till steget N + 1 samt avsluta programmet. Under nästa avspelningscykel, när steget N, som kräver denna sekvens JMS, åter påträffas, skall emellertid minnet bringas att hoppa till steget 515, som avser det korrekta stället för avlägsnande av den nästa detaljen från pallen, snarare än steget 512, vars adress uppträder i bitarna l-9 och 12 i steget N. Programstegen 515, 516 och 517 ger då de korrekta inf struktionssignalerna för avlägsnande av den andra detaljen från pallen. Dessutom kan en serie olika pallar, upp till maximalt sju, samtliga användas vid olika punkter i programmet och minnet 628 bringas att hoppa till den korrekta adressen för varje pallsubrutin som begäres.
Antalet steg i sekvensen JMS (instruktioner W) för en särskild pall är givet av bitarna l, 2 och 3 i G2 och tillföres en W-låskrets 1087 varje gång ett JMS-modprogramsteg påträffas. En räknare 1088 räknar då antalet på varandra följande programsteg och när räknarens utsignal är lika med det i W-låskretsen 1087 inställda talet alstrar en komparator 1089 en utsignal, som tillföres läs/skrivstyrkretsen 1083 och även återställer räknaren 1088 och låskretsen 1087.
Sättet, på vilket sekvensstyrkretsen 1060 arbetar för att bringa minnet 628 att hoppa till den första startadressen för den första detaljen på pallen och därefter till successiva nya steggrupper under successiva avspelningscykler, skall nu beskrivas under antagande av en trestegssekvens samt att det första stegets startadress är 512, vilken startadress 512 först lagras i startadresslåskretsarna 1080, när detektorn alstrar en signal JPS. Stegets N + 1 adress är också lagrad i nolladresslitsen i RAM2, såsom tidigare beskrivits, och subrutinnumret för pallen, angivet av bitarna 13, 14 och 15 i Gl, är lagrat i en av ett flertal subrutinlåskretsar 1090, av vilka det finns en för var och en av de sju pallrutinerna. Det lagrade sub- rutinnumret avkodas i en avkodare 1091 och verksamgör den motsvarande av ett flertal första passeringens detektorvippor 1092, så att en 7611920-5 72 vippa inställes, vilken motsvarar det subrutinnumret. Dessa vippor återställes, när strömmen först slås till, av ett pulsknippe från en oscillator 1093, vilken är kopplad till en startstyrkrets 1094, som i sin tur styr återställningen av RAM2 samt läs/skrivstyrkretsen 1083. Den första passeringens vippdetektorer 1092 återställes ocksâ, när subrutinslutbiten påträffas i det sista programsteget i sekvensen JMS, för avlägsnande av den sista detaljen från pallen, såsom kommer att beskrivas närmare i detalfi längre fram.
Så snart startadressen 512 är lagrad i låskretsarna 1080 och signalen JPS är alstrad, matas denna startadress till minnet 628 och de tre programstegen 512, 513 och 514 i denna sekvens JMS ut- föres. Efter det att stegets N + 1 adress är lagrad i nollslitsen i RAM2 föres MUX8 till läge 2, så att RAM2 nu adresstyres av det sub- rutinnummer som är lagrat i en av lâskretsarna 1090. Om sekvensen JMS exempelvis avser den första pallen, kommer.RAM2 att adresseras så, att adresserna för programstegen 513, 514 och 515 successivt skrives in i adresslitsen i RAM2, vilken slits motsvarar den första pallen, varvid det påminnes om att stegets N + 1 adressdata tillföres RAM2 över ledningarna LAn. När de tre stegen är avslutade och kompa- ratorn 1089 alstrar en utsignal, lagras följaktligen adressen till steget 515, som är det första steget i nästa sekvens JMS, i den _slits i RAM2 som är tilldelad den första pallen. Läs/skrivkretsen - 1083 reagerar för komparatorutsignalen genom att föra MUX8 till läge 1 och styra RAM2 så, att steget N + l läses ut från nolladress- slitsen i RAM2 över ledningar JAn och via MUX3 till adressregistret 2678, så att minnet 628 återföres till steget N + l. Eftersom vippan i den första passeringens detektorer 1092 förblir inställda, sändes emellertid nästa gång steget N påträffas och en startadress 512 lagras i låskretsarna 1080 denna startadress ej till minnet 628.
I stället reagerar läs/skrivkretsen 1083 för É-signalen, som utveck- las av den inställda vippan, genom att mata en signal på ledningeni QAD till MUX3, så att adressen för steget 515, vilken adress är lagrad i den motsvarande slitsen i RAM2, matas över ledningarna JAn och via MUX3, MUX2 och MUXl till adressregistret 678.
Ovanstående operation kommer att fortsätta under successiva _ avspelningscykler, tills den sista detaljen har avlägsnats från paller När detta inträffar har det sista steget i den sekvensen JMS en "l" i bit 15 i G2, vilken utnyttjas för att alstra en subrutinslutsignal E/S, vilken tillföres detektorerna 1092 samt läs/skrivkretsen 1083 för âterställning av dessa kretsar. När en ny pall tillföres, kommer 73 7611920-5 adressen att styras av lâskretsarna 1080, eftersom ingen första passeringens vippa 1092 ännu har inställts. I detta sammanhang påpekas det, att detektorerna 1092 innefattar en vippa för vart och ett av de sju subrutinnummer som kan lagras i lâskretsarna 1090, så att detaljer kan avlägsnas från upp till sju pallar under samma program.
En kort beskrivning ska1l~nu lämnas av de särskilda uppgifter som datorn 1000 kan utföra under inlärningshjälpoperationen.
Den första uppgift som datorn kan utföra under inlärningshjälp- operationen, vilken uppgift kan betecknas som uppgift I, består i att utföra alla de nödvändiga beräkningarna för förflyttning i en önskad riktning en angiven sträcka och med en angiven hastighet, såsom beskrivits i detalj ovan i samband med fig. 31-49, samt att lagra de beräknade resultaten i minnet 628 på de erforderliga adresserna. Det är i detta sammanhang klart, att inlärningsopera- tören kan förflytta manipulatorarmen till ett önskat läge och rikta in den i en önskad riktning, när strömställaren 1024 är i det l normala inlärningsläget 1026, och också kan programmera önskade hjälpstyrsígnaler via hjälpstyrpanelen 1044, när strömställaren 1024 är i det manuella inlärningsläget 1027. Närhelst datorn 1000 skall utföra en inlärningsuppgift är emellertid strömställaren 1024 i datorläget 1028, såsom beskrivet i detalj ovan.
En typisk ínlärningsoperation av typ uppgift I är visad nedan: UPPGIFT I Interaktiv styrning dator-manipulator (1) UPPGIFT? 1 (2) R NÄR ROBOT KLAR R (3) ROBOT NR: l (4) B “: ø (5) C ": -3 (6) S ": -2 (7) VEL: 12ø (8) F ELLER G: G (9) X FöR x BITAR: x (10) øøøøøøWWWWWW (11) xxxxxxxxxxxx (12) 1234561234S6 (13) øøøøøøøøøøøø (14) K FöR ANDRA BITAR= K (15) KKTE mv.. 761192Û"5 - 74 (16) l2DP (17) løøø (18) P FoRTsÄTT= P (19) sKRIv ADRESS ocn 6 VÄRDEN (20) øløøøø ø22315 ø15653 ø227ø3 ø3717ø ø4øøøø ø4ø644 (21) “P FoRTsÄTT= P (22) UT RoBoT (23) løøøø løøøl løøø2 løøø3 løøø4 løøø5 løøøö løøø72 (24) 12øø2 ø 21553- 15631 22545 3666ø 4øø74 4ø63ø (25) UT RoBoT _ (26) løølø løøll løøl2 1øøl3 1øøl4 løøl5 løølö løøl7 (27) l2øø2 ø Zlølø 15613 224ø7 3635ø 4øl67 4ø6l6 (28) UT RoBoT (29) løø2ø løø2l løø22 løø23 løø24 løø25 løø26 løø27 (30) _l2øø2 ø 2ø244 l56øø 22252 36ø4ø 4ø262 4ø6ø6 (31) UT RoBoT (32) 1øø3ø 1øø31 1øø32 1øø33 1øø34 1øø35 1øø36 1øø37 (33) 12øø2 ø 175øø 15s7ø 22117 35531 4ø354 4ø6øø (34) UT RoBoT- (35)) løø4ø løø4l 1øø42 løø43 løø44 1øø45 løø46 løø47 (36) 12øø2 ø 16734 15563 21764 35223 4ø446 4ø575 (37) UT RoBoT - (38) 1øø5ø 1øø51 1øø52 1øø53 1øø54 1øø55 1øø56 1øø57 _(39) 12øø2 ø 1617ø 15561 21633 34715 4ø54ø 4ø573 (40) ~UT RoBoT Å (41) løøöø løøöl 1øø62 løø63 løø64 1øø65 løø66 løø67 ((42) 12øø2 ø 15426 15563 215ø3 _3441ø 4ø631 4ø572 (43) UT RoBoT (44) 1øø7ø 1øø71 1øø72 1øø73 1øø74 1øø75 1øø76 1øø77 (45) 12øø2 ø 14664 15567 21354 341ø3 4ø722 4ø574 (46) UT RoBoT _ (47) løløø 1ø1ø1 1ø1ø2 1ø1ø3 1ø1ø4 1ø1ø5 1ø1ø6 1ø1ø7 (48) 'l2øø2 1 l4l2ø 15577 21226 33575 4løl3 4ø577 (49) SLUT (50) SISTA STEG = 52ø (51) UPPGIFT I fråga om följden av händelser vid utförande av ovanstående inlärningsoperationsuppgift I skriver datorn först uppgift? (rad l) på fjärrskrivmaskínsenheten 1004 samt väntar. Inlärningsoperatören skriver då numret på den tilldelade uppgiften, dvs "l". Datorn 75 7611920-5 skriver sedan på rad 2 R NÄR ROBOT KLAR och väntar. Operatören kan nu rikta in manipulatorhanden i den önskade riktningen, om han ej redan har gjort detta, och skriver så R på slutet av rad 2.
Datorn skriver sedan på rad 3 ROBOT NR: och väntar, tills operatören- skriver numret på den robot som skall styras, i detta fall robot nr l. Ett sådant arrangemang erfordras då två eller fler robotar betjänas av en dator. Datorn skriver sedan på rad 4 B": och väntar på att operatören skall skriva den önskade rörelsesträckan längs axeln b, såsom beskrivits i detalj ovan i samband med fig. 29. I detta fall önskas nollrörelse längs b och operatören skriver 0 vid slutet av rad 4. På likartat sätt kompletteras raderna 5 och 6 av operatören för att ange de önskade sträckorna längs axeln c och längs svepaxeln (S). I detta fall önskas en sträcka på -3'2,54 cm längs axeln C och -2-2,54 cm längs axeln S. På rad 7 skriver datorn sedan VEL: och väntar på att operatören skall fylla i den önskade rörelsehastigheten för den önskade riktningen. I detta fall skriver operatören "l20“, vilket anger en hastighet på 120-2,54 cm/min.
Såsom allmänt beskrivits ovan grundar sig de i fig. 31-49 visade beräkningarna på antagandet, att de tre yttre punkterna, dvs punkten 3, punkten 5 och punkten 6, samtliga rör sig parallellt.
Om en sådan parallell rörelse antages över en relativt stor sträcka, så kommer väsentliga fel att införas i beräkningarna. Datorn 1000 delar därför först upp den önskade sträckan i små rörelseinkrement i den önskade riktningen samt gör separata beräkningar av kodar- värdena för alla sex axlarna, vilka värden är nödvändiga för att förflytta manipulatorarmen successivt till dessa punkter. Dessa inkrement kan vara antingen grova eller fina i beroende av den önskade noggrannheten, med vilken rörelsen skall utföras. För detta ändamål skriver datorn på rad 8 "F ELLER G:" och väntar på att operatören skall ange huruvida den erfordrade sträckan skall delas upp i fina (F) eller grova (G) intervall. I detta fall skriver operatören G pâ slutet av rad 8. _ Pâ rad 9 skriver datorn sedan X för X BITAR: samt väntar.
Om operatören önskar ändra någon av hjälpstyrsignalerna i G1 och G2 skriver han "X" vid slutet av rad 9. Om han ej önskar göra några ändringar från det manuella inlärningstillståndet, skriver han VR (vagnretur) vid slutet av rad 9. I föreliggande fall skriver operatören X och datorn reagerar genom utskrift av raderna 10, ll och 12. I vertikala kolumner anger dessa rader de sex signalerna OX och de sex signalerna WX. Operatören skriver sedan på rad 13 7611920-5 75 den önskade beteckningen för varje signal OX och varje signal WX. I föreliggande fall skrevs nollor för alla kolumnerna, vilket anger att inga signaler OX eller WX erfordras för detta program- steg.
På rad 14 skriver datorn sedan K FÖR ANDRA BITAR: samt väntar.
Operatören kan ändra andra bitar genom att skriva K på slutet av rad 14. Datorn skriver raderna 15 och 16 samt väntar på att operatören skall fylla i rad 17. I föreliggande fall programmeras låskretsen Kl att verksamgöras genom att en "l" skrives under Kl, medan nollor skrives under de andra kolumnerna.
Datorn 1000 har nu all den information den behöver för att slut- föra den tilldelade uppgift I samt skriver på rad 18 P FORTSÄTT: samt väntar. Operatören skriver P, när han är klar för datorns utförande av beräkningarna och lagringen av den på de önskade *adresserna i minnet 628. I den åskådliggjorda utskriften skrives emellertid adress- och kodarvärdena för manipulatorns förhanden- varande läge ut på raderna 19 och 20, men det är klart, att denna information normalt tillföres datorn 1000 via ledningarna Dn utan att någon utskrift göres. Alla adress- och kodarvärden skrives ut i oktalkod, varvid varje oktalsiffra är omvandlingsbar till tre binära siffror enligt följande: Oktal siffra ' Binär grupp ' ooo 001 010 011 100 101 110 lll ~: m un ß ua Nlhfl o I föreliggande fall anges adressen 512 för lagringen av den första beräknade gruppen av värden av oktalkodstalet 010000 på rad 20 samt de sex förhandenvarande kodarvärdena av de sex oktaltal som följer därefter. Raderna 21-98 åskådliggör sedan sättet, på vilket datorn beräknar successiva inkrement i den önskade riktningen och lagrar dem på successiva adresser i minnet 628, varvid det är klart att dessa rader normalt ej skrives ut under en inlärningsoperation.
Lagringen i minnet 628 av de beräknade kodarvärdena uppnås genom sändning av adressdata för en grupp beräknade värden över ledningarna 77 7611920-5 CAn samt via MUXI och MUX7 till registret 1064 i adresstyrenheten 678. Den sänder också passande gruppadressinformation över ledningar- na CGC (0-2) och via MUX5 för styrgruppsadressering av minnet 628 i stället för gruppräknaren 674. De beräknade kodarvärdena sändes via gränssnittet 1002, ledningarna CEn, MUX6 och MUX9 till minnet 628. Med hänvisning till rad 23 är adresserna för de åtta perioderna Gl-G8 i programsteget S12 givna i oktalkod och de mot varje period svarande instruktionerna är lämnade på rad 24. Gl-instruktionen 12002 motsvarar således i binär kod 001 010 000 000 010, som måste läsas i omvänd ordning, såsom angivet i fig. 62 och 63. Denna in-I struktion anger en signal Acc. 3 i bit 2, en CP-modsignal i fig. ll (angivande att vid avspelning rörelsen för detta programsteg sker i hastighetsmoden, såsom beskriven i detalj ovan) samt en lâssignal Kl i bit 13, motsvarande den information som skrevs in av operatören på rad 17. Inga instruktionssiffror uppträder i perioden G2 på rad 24, och de sex oktaltal som därefter följer är de beräknade kodar- värdena, vilka lagras i minnet 628 på det i detalj ovan beskrivna sättet. Raderna 25, 26 och 27 i utskríften motsvarar den nästa gruppen kodarvärden, som beräknas av datorn 1000, varvid det påpekas, att hjälpstyrsignalerna förblir desamma. Detta nästa stegs adress är emellertid 5l3, såsom angivet av raden 26. På samma sätt utföres sju andra grupper beräkningar, angivna på raderna 28-48, av datorn samt lagras i successiva adresser i minnet 628. På rad 49 skriver datorn sedan SLUT och på rad 50 skrives den sista adressen, dvs 520, i decimal kod, så att operatören har en indikering på det antal programsteg som har fyllts av datorberäkningarna.
Efter det att dessa beräkningar gjorts och lagrats i minnet 628 avvaktar datorn nästa uppgiftstilldelning. Om önskat kan inlärninge- operatören gå till manipulatorn och kasta om inlärnings-repeter- strömställaren till repetermoden och kontrollera stegen, vilka just har beräknats, genom att iakttaga manipulatorhandens rörelse som gensvar på de beräknade grupperna av kodarvärden, vilka har lagrats i minnet 628.
Datorn 1000 kan också utnyttjas för utförande av en annan uppgift, betecknad uppgift II, under inlärningsoperationen. Vid utförande av uppgift II matas manipulatorarmens lägen vid två ändpunkter av en önskad bana till datorn, som sedan beräknar hastighetsstyrkon- stanterna och registrerar dem i intervallen Gl och G2 för det pro- gramsteg som är inbegripet vid rörelse mellan de tvâ önskade änd- punkterna, så att ändeffektpunkten, dvs punkt 6, kommer att röra 7611920-5 78 sig i en rät linje mellan dessa två ändpunkter. En sådan dator-' assistans vid en inlärningsoperation är särskilt fördelaktig vid ljusbågssvetsning eller liknande, där ändeffektpunkten (t ex ljus- bågssvetsspetsen) måste förflyttas i en krökt eller sinusformig bana.
Identidigare teknikens arrangemang, exempelvis beskrivna i den amerikanska patentskriften 3 885 295, måste inlärningsoperatören programmera manipulatorn i exakta, lika små intervall för att uppnå en konstant hastighet vid avspelning.1ü1sådan fysisk mätning medför nödvändigtvis en viss grad av onoggrannhet i fråga om intervallängden, för vilken programstegen registreras, så att vid avspelning denna variation i programstegsintervall resulterade i motsvarande varia- tioner i manipulatorhandens rörelsehastighet. Vid inlärningsopera- tionsuppgiften II enligt föreliggande uppfinning beräknar datorn 1000 AS, dvs sträckan mellan de två önskade ändpunkterna, och beräk- nar sedan hastighetskonstanterna, vilka erfordras för förflyttning över denna sträcka med en önskad hastighet. Inlärningsoperatören behöver således ej ställa in manipulatorarmen i exakt lika åtskilda punkter utmed den önskade, krökta banan utan ställer i stället helt enkelt in armen i två punkter längs banan och informerar datorn om den erfordrade hastigheten mellan punkterna. Detta förenklar väsent- ligt inlärningsoperationen för programmering av krökta banor, efter- som operatören endast behöver programmera nära varandra belägna punkter på skarpa kurvor utan hänsyn till exakt lika avstånd mellan dessa punkter och datorn bestämmer och lagrar de korrekta hastig- hetskonstanterna, så att rörelse längs en rät linje med önskad hastig- het uppnås vid avspelning.
En typisk inlärningsoperationsuppgift II lämnas genom följande utskrift: UPPGIFT II Interaktiv styrning dator-manipulator (1) UPPGIFT? 2 (2) R NÄR Rosor KLAR R (3) _RoBoT NR: 1 (4) sxRIv ADRESS ocn 6 VÄRDEN (5) øøø73ø ø22315 ø15653 ø227ø3 ø3717ø ø4øøøø ø4ø644 (6) R FoRmsÄTm= P (7) RLYTTA Rosor, R DÅ KLAR R (8) T FöR vERKTYGsoFFsET= T (9) QFFSET B: 9,75 (10) OFFSET c: -1 '(11) -OFFSET S: 0,5 79 761 TÉ-ÉÛ-*S (12) vEL= 120 (13) x rön x ß1TAn= x (14) øøøøøøwwwwww (15) xxxxxxxxxxxx (16) 1234s61234ss '(11) øøøøøøøøøøøø (18) K FÖR ANDRA BITAR: K (19) RKTE (20) l2DP (21) lløø (22) P FORTSÄTT: P (23) SKRIV ADRESS OCH 6 VÃRDEN (24) øøø73ø øø6222 ølöløø øl777ø ø3ø276 ø42ø2l ø4ø726 (25) P FORTSÄTT: P (26) UT ROBOT (27) 73ø 731 732 733 734 735 736 737 (28) 32øø4 llø 6222 l6løø l777ø 3ø276 42ø2l 4ø726 (29) SLUT (30) SISTA STBG = 59 (31) UPPGIFT? Vid en inlärningsoperationsuppgift II förflyttar den inlärande operatören först manipulatorhanden till den första ändpunkten samt går sedan till skrivmaskinen 1004 och skriver "R" vid slutet av rad 2 samt robotens nummer på rad 3, såsom diskuterat ovan i samband med en operationsuppgift I. I åskådliggörande syfte visar ovanstående utskrift adress- och kodarvärden för den första ändpunkten på rad 5, ehuru raderna 4 och 5 normalt ej skulle skrivas ut. Efter det att dessa data har mottagits av datorn skriver den på rad 7 FLYTTA ROBOT, R DÅ KLAR samt väntar. Inlärningsoperatören tager då åter upp inlär- ningsstyrpistolen 656 och förflyttar armen till den önskade banans andra ändpunkt. Efter att ha förflyttat armen till detta läge anger operatören att armen är i den andra ändpunkten genom att skriva R vid slutet av rad 7. I âskådliggörande syfte är denna nya grupp kodarvärden lämnade på rad 24. Datorn skriver sedan rad 8 T FÖR VERKTYGSOFFSET: samt väntar. Om ändeffektpunkten (punkten 6 i ovan- stående beskrivning) är förskjuten från de förutbestämda värdena på b, c och s, såsom exempelvis med en bâgsvetsningsspets, skriver operatören dessa konstanter vid slutet av raderna 9, 10 och ll efter att ha skrivit T vid slutet av rad 8. Operatören skriver sedan den 7011920-5 2 80 önskade hastigheten mellan ändpunkterna, i detta fall 120-2,54 cm/min.
Operatören kan också programmera OX, WX och andra hjälpstyrbitar i Gl, G2, såsom visat med raderna 13-21.
Efter det att-nämnda kodardata för de önskade ändpunkterna har tillförts datorn 1000 beräknar denna först AS, dvs sträckan mellan ändpunkterna, genom att först omvandla kodarvärdena till kartesiska koordinater medelst transformationsekvationerna (19), (20) och (21) samt beräknar As = VQX2 _ Xl)2 + (YZ _ Yl)2 + (22 _ Zl)2 . Efter det att AS bestämts fastställer datorn det antal interpolationsintervall som skall användas i enlighet med följande tabell: I AS (-2,54 cm) Antal interpola- _ Kod tionsintervall 0,1 - 0,2 16 000 0,2 - 0,4 32 4 001 0,4 - 0,8 64 010 0,8 - 1,6 128 011 1,6 - 3,2 256_ 2 100 Datorn kodar sedan interpolationsintervallsantalet för regi- ' strering i bitarna l, 2 och 3 i G2, såsom beskrivits ovan i samband med fig. 62. Datorn beräknar sedan den totala tid som erfordras för rörelse mellan ändpunkterna genom att dividera AS med hastigheten samt väljer det korrekta antalet delarsteg i frekvensdelaren 744, vilket antal innesluter den beräknade totala tiden, enligt följande tabell: Total tid (us) Delarsteg Kod 3,125 - 6,250 424 000 6,250 - 12,500 ' 25 001 12,500 - 25,000 '26 010 25,000 - 50,000 27 011 50,000 - 100,000 28 100 Datorn kodar sedan det valda antalet delarsteg för registrering i bitarna 7, 8 och 9 i G2, såsom beskrivits ovan i samband med fig. 63.
Om det antages, att den totala tiden är 7027 us skulle datorn välja 25 som det korrekta antalet delarsteg. Eftersom valet av antalet delarsteg emellertid endast är approximativt, såsom framgår av ovan- 81 7611920-5 stående tabell, beräknar datorn sedan den korrekta räknehastigheten för den programmerbara räknaren 672 så, att oscillatorklockpulserna delas med det exakt rätta beloppet för att ge den erforderliga totala tiden. Datorn kodar sedan den önskade räknehastigheten för regi- strering i bitarna 1-6 i Gl. I ovanstående utskrift av uppgiften II ger rad 28 instruktionsdata för Gl och G2 samt sex kodarvärden för punkt z. Dessa kodarvärden är desamma som på raden 24, som visar kodarvärdena, när manipulatorn från början förflyttas till den andra punkten före datorberäkningarna. Det påpekas också, att adressen för 'data pâ raden 28 är lämnad på rad 27, vilken adress är densamma som först åstadkoms, när den första punkten tillfördes datorn, såsom visat på rad 5. I ovanstående utskrift motsvarar det första instruk- tionstalet 32004 i oktal form på rad 28 för perioden Gl det 15 bitar uppvisande binära talet 011-010-000-000-100. När detta tal läses från höger till vänster för bitarna 1-15 i Gl (fig. 62), framgår det att bitarna 1-3 visar 32 som antalet interpolationsintervall.
Det andra oktala talet 00110 på rad 28 för perioden G2 motsvarar det 15 bitar uppvisande binära talet 000-000-001-001-000. Bitarna l-6 lästa från höger till vänster anger en delningshastighet på 72 för räknaren 672, varvid det påminnes om att denna räknare har en minsta räknetakt på 64, vilken adderas till det kodade 0001 i bitarna 1-6 .för att ge 72. Bitarna 7-Q lästa från höger till vänster anger en delartakt på 25 för delaren 744, liksom i ovanstående exempel.
I enlighet med en annan sida av uppfinningen kan datorn 1000 utnyttjas för att beräkna kodarvärdena och hastighetsstyrkonstanterna, vilka erfordras för att förflytta manipulatorhanden under successiva avspelningscykler för upplockning av olika detaljer från en pall, på vilken detaljerna är belägna i olika lägen, varvid denna uppgift betecknas uppgift III. Om manipulatorhanden 96 skall programmeras att successivt plocka upp olika detaljer från pallen 58 (fig.3), är det således nödvändigt att programmera manipulatorhanden 96 så, att den är vinkelrät mot pallens 58 plan och befinner sig omedelbart över en av de på pallen belägna detaljerna. Handen måste sedan pro- grammeras att förflytta sig längs en rät linje till ett läge för gripning av en av detaljerna samt att gripa detaljen efter det att en luftventil verksamgjorts, varefter handen skall förflyttas till- baka längs denna linje. Eftersom pallens 58 plan lutar, är det emel- lertid klart, att rörelsen till ingrepp med detaljen och för avlägs- nande av detaljen från pallen sker längs en linje, som ej är paral- lell med någon av de styrda axlarna. 7611920-5 82 Den ovan beskrivna operationsuppgiften I kan utnyttjas för att åstadkoma rörelse längs axeln b, t ex till ingrepp med detaljen och för avlägsnande av detaljen från pallen. För att förenkla upp- giften att lära manipulatorn att plocka upp var och en av ett stort antal detaljer från samma pall under successiva avspelningscykler är operationsuppgift III anordnad att ge alla de nödvändiga lägena för âstadkommande av upplockningen av varje detalj under successiva avspelningscykler frân olika lägen på pallen 58. För detta ändamål tillföres datorn 1000 koordinaterna, vilka definierar pallens 58 plan, den önskade riktningen, längden och hastigheten för införingén och tillbakadragningen samt antalet lägen på pallen. Datorn gör sedan de nödvändiga beräkningarna för upplockning av varje detalj samt I lagrar de beräknade grupperna av kodarvärden, vilka motsvarar upp- plockning av varje detalj enligt successiva programsteg i manipula- torminnet 628, såsom beskrivet ovan i samband med operationsmodsekven- sen JMS. Närmare bestämt flyttar inlärningsoperatören först manipula- torhanden till ett läge över en av detaljerna i ett hörn av pallen 58, såsom detaljen 58a (fig. 3), och flyttar manipulatorhanden ned till ett läge, där fingrarna griper detaljen 58a under det att denna fortfarande befinner sig på pallen 58. Denna nedåtriktade rörelse kan åstadkommas medelst en operationsuppgift I, beskriven ovan. När manipulatorarmen förflyttas till ett läge för gripning av detaljen 58a, matas denna information till datorn. Manipulatorhanden förflyttas sedan till ett läge för gripning av en detalj 58b vid ett annat hörn av pallen 58 och efter det att dessa data har tillförts datorn för- flyttas manipulatorarmen till ett läge för gripning av en detalj 58c vid ett tredje hörn av pallen 58, vilken information också till- föres datorn. Efter det att informationen beträffande punkterna, i vilka detaljerna 58a, 58b och 58c måste gripas av manipulatorhanden, har matats till datorn är datorn informerad om alla nödvändiga data för beräkning av pallens 58 plan. Genom att dessutom tillföra data beträffande de övre och nedre lägena för detaljen 58a blir datorn också informerad om de nödvändiga data för att utföra likartade be- räkningar för införing och tillbakadragning vid var och en av de andra punkterna på pallen 58. När datorn sedan tillförts information avseende antalet detaljer på pallen och avståndet mellan detaljerna, beräknar den sedan mellanliggande lägen, vilka manipulatorhanden 96 måste intaga för att gripa var och en av de olika detaljerna på pallen under olika, successiva avspelningssammansättningscykler.
En typisk inlärningsdperationsuppgift III är visad genom följande 81 7611920-5 stående tabell, beräknar datorn sedan den korrekta räknehastigheten för den programmerbara räknaren 672 så, att oscillatorklockpulserna delas med det exakt rätta beloppet för att ge den erforderliga totala tiden. Datorn kodar sedan den önskade räknehastigheten för regi- strering i bitarna l-6 i Gl. I ovanstående utskrift av uppgiften II ger rad 28 instruktionsdata för Gl och G2 samt sex kodarvärden för punkt z. Dessa kodarvärden är desamma som på raden 24, som visar kodarvärdena, när manipulatorn från början förflyttas till den andra punkten före datorberäkningarna. Det påpekas också, att adressen för 'data på raden 28 är lämnad på rad 27, vilken adress är densamma som först åstadkoms, när den första punkten tillfördes datorn, såsom visat på rad 5. I ovanstående utskrift motsvarar det första instrukß tionstalet 32004 i oktal form på rad 28 för perioden Gl det 15 bitar uppvisande binära talet Oll-010-000-000-100. När detta tal läses från höger till vänster för bitarna l-15 i Gl (fig. 62), framgår det att bitarna l-3 visar 32 som antalet interpolationsintervall.
Det andra oktala talet 00110 på rad 28 för perioden G2 motsvarar det 15 bitar uppvisande binära talet 000-000-001-001-000. Bitarna 1-6 lästa från höger till vänster anger en delningshastighet på 72 för räknaren 672, varvid det påminnes om att denna räknare har en minsta räknetakt på 64, vilken adderas till det kodade 0001 i bitarna l-6 för att ge 72. Bitarna 7-¶ lästa från höger till vänster anger en delartakt på 25 för delaren 744, liksom i ovanstående exempel.
I enlighet med en annan sida av uppfinningen kan datorn 1000 utnyttjas för att beräkna kodarvärdena och hastighetsstyrkonstanterna, vilka erfordras för att förflytta manipulatorhanden under successiva avspelningscykler för upplockning av olika detaljer från en pall, på vilken detaljerna är belägna i olika lägen, varvid denna uppgift betecknas uppgift III. Om manipulatorhanden 96 skall programmeras att successivt plocka upp olika detaljer från pallen 58 (fig,3), är det således nödvändigt att programmera manipulatorhanden 96 så, att den är vinkelrät mot pallens 58 plan och befinner sig omedelbart över en av de på pallen belägna detaljerna. Handen måste sedan pro- grammeras att förflytta sig längs en rät linje till ett läge för gripning av en av detaljerna samt att gripa detaljen efter det att en luftventil verksamgjorts, varefter handen skall förflyttas till- baka längs denna linje. Eftersom pallens 58 plan lutar, är det emel- lertid klart, att rörelsen till ingrepp med detaljen och för avlägs- nande av detaljen från pallen sker längs en linje, som ej är paral- lell med någon av de styrda axlarna. 7611920-5 82 Den ovan beskrivna operationsuppgiften I kan utnyttjas för att åstadkomma rörelse längs axeln b, t ex till ingrepp med detaljen och för avlägsnande av detaljen från pallen. För att förenkla upp- giften att lära manipulatorn att plocka upp var och en av ett stort antal detaljer från samma pall under successiva avspelningscykler är operationsuppgift III anordnad att ge alla de nödvändiga lägena för âstadkommande av upplockningen av varje detalj under successiva avspelningscykler från olika lägen på pallen S8. För detta ändamål tillföras datorn 1000 koordinaterna, vilka definierar pallens S8 plan, den önskade riktningen, längden och hastigheten för införingen och tillbakadragningen samt antalet lägen på pallen. Datorn gör sedan de nödvändiga beräkningarna för upplockning av varje detalj samt lagrar de beräknade grupperna av kodarvärden, vilka motsvarar upp- plockning av varje detalj enligt successiva programsteg i manipula- torminnet 628, såsom beskrivet ovan i samband med operationsmodsekven- sen JMS. Närmare bestämt flyttar inlärningsoperatören först manipula- torhanden till ett läge över en av detaljerna i ett hörn av pallen 58, såsom detaljen 58a (fig. 3), och flyttar manipulatorhanden ned till ett läge, där fingrarna griper detaljen 58a under det att denna fortfarande befinner sig på pallen 58. Denna nedåtriktade rörelse kan åstadkommas medelst en operationsuppgift I, beskriven ovan. När manipulatorarmen förflyttas till ett läge för gripning av detaljen 58a, matas denna information till datorn. Manipulatorhanden förflyttas sedan till ett läge för gripning av en detalj 58b vid ett annat hörn av pallen 58 och efter det att dessa data har tillförts datorn för- flyttas manipulatorarmen till ett läge för gripning av en detalj 58c vid ett tredje hörn av pallen 58, vilken information också till- föres datorn. Efter det att informationen beträffande punkterna, i vilka detaljerna 58a, 58b och 58c måste gripas av manipulatorhanden, har matats till datorn är datorn informerad om alla nödvändiga data för beräkning av pallens 58 plan. Genom att dessutom tillföra data beträffande de övre och nedre lägena för detaljen 58a blir datorn också informerad om de nödvändiga data för att utföra likartade be- räkningar för införing och tillbakadragning vid var och en av de andra punkterna pâ pallen 58. När datorn sedan tillförts information avseende antalet detaljer på pallen och avståndet mellan detaljerna, beräknar den sedan mellanliggande lägen, vilka manipulatorhanden 96 måste intaga för att gripa var och en av de olika detaljerna på pallen under olika, successiva avspelningssammansättningscykler.
En typisk inlärningsóperationsuppgift III är visad genom följande 83 7611920-5 utskrift: UPPGIFT III Interaktiv styrning dator-manipulator UPPGIFT2 3 " (1) RoBoT NR: 1 (2) OFFSRT B: 8,75 (3) OFFSET C: 0,25 (4) OFFSET s: 0,25 (5) VEL: 24ø (6) X FÖR X BITAR: X '(7) øøøøøøWWWWWW (8) XXXXXXXXXXXX (9) l23456l23456 (10) løøøøøøøøøøø (ll) K FÖR ANDRA BITAR= K (12) KKTE (13) lznp (14) zøøø (15) STARTADRESS: 512 (16) sus NR: 2 (I7) W: 2 (18) N-MAX: 4 .(19) M-MAX: 2 (20) R NÄR RoBoT KLAR R (21) sKRIv AnREss ocn 6 VARDEN (22) øøø77ø ø2ø537 ø32773 øsø413 ø3s436 ø4øøøø ø37747 (23) P RoRTsATT= P (24) R NÄR RoßoT KLAR R (25) sRRIv AnREss oca 6 VARDEN (26) øøø77ø ø17146 ø3234s ø47744 ø3s436 ø4øøøø ø37772 (27) R FoRTsATT= P (28) R NÄR RoBoT KLAR R (29) SKRIV ADRESS OCH 6 VÄRDEN _ (ao) øøø77ø ø1714e ø3z347 ø47744 ø4ø726 ø4øøøø ø37ø12 (31) P RoRTsATT= 2 ~ (32) R NÄR ROBOT KLAR R (33) sRR1v AnREss ocn 6 VARDRN (34) øøø77ø ø1777s ø31212 ø47s74 ø3s4ø2 ø4øøøø ø4øø11 (35) P FORTSATT: P (36) UT RoBoT (37) 77ø 771 772 773 774 775 776 777 i (38) (39) (40) (41) (42) (43) (44) (45) (46) (47) (48) (49) (50) (51) (52) (53) (54) (55) (56) (57) (58) (59) (60) (61) (62) (63) (64) (55) (66) (67) (68) (69) (70) (71) (72) (73) (74) (75) (76) (77) 7611920-5 25øøø UT RoBoT løøøø løøøl løøø2 løøø3 løøø4 løøø5 løøøfi 2ø UT RoBoT løølø løøll løø12 2øøl3 løøl4 løøl5 løølö l2øø2 UT ROBOT løø2ø løø2l løø22 løø23 1øø24 løø25 løø26 2ø UT RoBoT løø3ø løø3l løø32 løø33 løø34 løø35 løø36 l2øø2 UT ROBOT løø4ø løø4l løø42-løø43 løø44 løø45 lUø46 2ø ' UT ROBOT løø5ø løø5l løø52 løø53 løø54 løø55 løø56 l2øø2 UT ROBOT løø6ø4løø6l løø62 løø63 løø64 løø65 løø66 2ø UT RoBoT "1øø7ø 1øø71 1øø72 1øø73 1øø74 1øø75 1øø76 l2øø2 UT ROBOT løløø løløl lølø2 lølø3 lølø4 løløå løløß 2ø UT RoBoT løllø lølll løll2 løll3.1øll4 løll5 løl16 12øø2 UT_RoBoT løl2ø løl2l løl22 løl23 løl24 løl25 løl26 2ø UT RoBoT 1øl3ø løl3l løl32 løl33 løl34 løl35 løl36 l2øø2 UT ROBOT 1ø14ø 1ø141 1ø142 1ø143 1ø144 1ø145 1ø146 Zø 54 2 i ø ø 0 (9 ø 2ø537 32773 5ø413 35436 7ø 17146 32345 47744 35436 ø 2ø563 32751 25ø41ø 36531 7ø 17171 32323 47741 36531 ø 2ø563 32752 5ø411 37627 7ø 17171 32324 47741 37627 ø 2ø536 32776 5ø414 4ø726 7ø 17145 3235ø 47745 4ø726 ø 21sø1 31545 5ø16ø 354ø2 7ø 2øø33 3113ø 475ø2 3s4ø2 ø 21526 31523 5ø15s 3652ø 7ø zøøss 311ø6 47476 3625ø ø 21525 31524 5ø155 37641 ø løøø7 4øøøø løø17 4øøøø løø27 4øøøø løø37 4øøøø 1øø47 4øøøø løø57 4øøøø 1øø67 4øøøø løø77 4øøøø lølø7 3776ø 1øll7 3776ø løl27 37743 1ø137 4øøøø 1ø147 4øøøø 37747 37772 375ø2 37525 37234 '37257 36767 37øl2 4øøø5 4øø3ø 37543 37542 37243 as 7611920-5 (78) ur Rosor _ (79) 1ø15ø 1ø151 1ø152 1ø1s3 1ø1s4 1ø1s5 1ø1s6 1ø1s7 (80) 12øø2 7ø zøøss 311ø7 47476 37641 4øøøø 37267 (81) Ur Rosor (sz) 1ø16ø 1ø161 1ø162 1ø163 1ø164 1ø165 1ø166 1ø167 (83) 2ø ø 215ø1 3155ø 5ø16ø 4ø763 4øøøø 3677ø (84) Ur Rosor (as) 1ø17ø 1ø171 1ø172 1ø173 1ø174 1ø17s 1ø176 1ø177 (86) 12øø2 4øø7ø 2øø33 31133 475ø1 4ø763 4øø36 36765 (87) sIsrA sRfADREss = 527 (88) stur (89) sIsrA sras = 63 (90) UPPGIFT? Enligt en betydelsefull sida av uppfinningen skriver inlärnings- operatören offsetinformation på slutet av raderna 2, 3 och 4 för b-axeln, c-axeln och svepaxeln (fig. 29), så att när en detalj på pallen 58 gripes av handen de faktiska koordinater som användes under datorns beräkningar kommer att definiera punkten, där detaljen berör pallen, snarare än en mellanliggande punkt på detaljen, där handen i själva verket gör kontakt med detaljen. Denna information tillföres avoperatören isamband med varje uppgift III och måste bestämmas genom mätning av en av detaljerna på varje pall. Raderna 5-14 i ovanstående utskrift av uppgift III är i huvudsak likartade densom beskrivits ovan i samband med uppgifterna I och II. Det påpekas också, att för låsning nr l (Kl) en "2“ programmeras (rad 14). Denna tolkas av datorn såsom krävande att det första steget i varje JMS-se- kvens skall ske i punkt-punktmoden samt att de återstående stegen 1 sekvensen skall ske i hastighetsmoden vid avspelning.
Inlärningsoperatören väljer en passande startadress, vilken är tillräckligt skild från återstoden av programmet för att rymma alla programstegen i sekvensen för tömning av hela pallen, samt skriver denna adress vid slutet av rad 15. Identifieringen av subrutinen eller pallnumret skrives sedan vid slutet av rad 16, i detta fall programme- ras pall nr 2. Antalet steg i varje JMS-sekvens skrives sedan vid _ slutet av rad 17, dvs "2', som anger att_varje JMS-sekvens inbegriper endast två steg. Denna information registreras sedan som bitar l-3 i G2, såsom tidigare beskrivits i samband med fig. 63. Operatören skriver sedan antalet detaljer i den horisontella riktningen på pallen på rad 18, dvs “4" i ovanstående exempel, samt antalet detaljer i den vertikala riktningen på rad 19, dvs 12". 7611920-5 36 De sex kodarvärdena, som motsvarar manipulatorarmens läge över en detalj i det övre vänstra hörnet av pallen (såsom 58a), är givna på rad 22, kodarvärdena, när armen griper denna detalj, är givna på rad 26, kodarvärdena, när armen griper detaljen 58b, är givna på rad 30 och kodarvärdena, när armen griper detaljen 58c, är givna på rad 34. Ingen av dessa rader skulle uppträda under en faktisk opera- tionsuppgift III utan operatören förflyttar helt enkelt armen till dessa tre lägen i följd som gensvar på raderna 20, 24, 28 och 32.
Datorn fortsätter sedan att göra de nödvändiga beräkningarna för att bestämma alla armlägen som är nödvändiga för upplockning av alla åtta detaljerna från pallen samt registrerar dessa beräknade kodar- värden i minnet 628 med början i steg 512, såsom visat på rad 40-86 i ovanstående utskrift. Det påpekas, att manipulatorn ursprungligen var i steg 770 (oktalt), när operationsuppgiften III initierades, men de beräknade kodarvärdena lagras med början i steg 512 (l0000 oktalt), såsom visat på rad 40. Det påpekas också, att de beräknade kodarvärdena för gripläget för den fjärde detaljen, lämnade på rad 62, mycket nära överensstämmer med de kodarvärden som är lämnade på rad 30 och motsvarar det läge som inlärningsoperatören förflyttade armen till för-gripning av detaljen 58b. De beräknade kodarvärdena på raden 68 för den femte detaljen överensstämmer också mycket nära_ med värdena på rad 34. Samtliga de datorberäknade kodarvärdena regi- streras således i minnet 628 snarare än att några beräknade och nâgra faktiska värden användes. De ursprungliga kodardata användes emeller- tid som det första steget i den första sekvensen, dvs raderna 22 och 41 uppvisar identiska kodarvärden.
Beträffande rad 86 i ovanstående utskrift skall det påpekas, att det oktala talet för G2 motsvarar det binära talet 101-000-000-lll-000. Läst från höger till vänster uppvisar detta en "l" i bit 15, som anger slutet på de JMS-sekvenser som avser tömning av denna särskilda pall. Såsom tidigare beskrivits användes denna subrutinslutbit för att återställa den första passeringens detektorer 1092 samt läs-skrivkretsen 1083 i sekvensstyrkretsen 1060 (fig. 55) under avspelning såsom förberedelse för en ny pall med detaljer.
I samband med de ovan diskuterade datorassisterade operations-- uppgifterna I, II och III skall det påpekas, att fjärrskrivmaskins- tangentbordet l004 kan vara placerat på vilken som helst för inlär- ningsoperatören bekväm punkt, så att han kan förflytta manipulator- handen och också kommunicera med datorn 1000 på ett bekvämt sätt under utförandet av dessa uppgifter. När väl de programmerade punkterna 87 7611920-5 är registrerade i minnet 628 komer manipulatorhanden att förflyttas till de motsvarande punkterna under avspelning utan datorns 1000 hjälp, såsom i detalj beskrivits.
Ehuru det i fig. 51-58 visade arrangemanget utnyttjar datorn 1000 som ett inlärningshjälpmedel för utförande av olika uppgifter under inlärningsoperationen, kräver ett sådant arrangemang ett sepa- rat huvudminne 628 för varje manipulatoranordning. Enligt en ytter- ligare sida av föreliggande uppfinning kan detta arrangemang förenklas väsentligt, när ett antal par av programmerbara manipulatorer utnytt- jas för att samtidigt utföra sammansättningsoperationer. Ett sådant. arrangemang är visat i fig. 59, 60 och 61, till vilka nu hänvisas.
En minidator l000a utnyttjas såsom en styrdator i förening med ett skivminne 1100 av stor kapacitet för betjäning av en serie på åtta manipulatcrer. Varje manipulatorpar är förbundet med minidatorn l000a via gränssnittsenheter 1102, 1104, 1106 och 1108. Det gemensamma, stora minnet 1100 utnyttjas i stället för de enskilda minnen 628 som är förknippade med varje manipulator, såsom beskrivitsi.samband med det i fig. 51-58 visade arrangemanget. Minidatorn l000a utnyttjas för att "on line" utföra de styrfunktioner som är nödvändiga för till- försel av digitala, programmerade instruktionssignaler till var och en av manipulatorerna 1-8, när dessa manipulatorer drives i repeter- moden, så att paren av dessa manipulatorer samtidigt kan utnyttjas vid sammansättning av detaljer, såsom ovan beskrivits. Minidatorn l000a kan dessutom “off line" utföra de beräkningar som beskrivits i detalj ovan i samband med det i fig. 51-58, 62 och 63 visade arrange- manget. Skivminnet 1100 har ett skivminnesgränssnitt 1110, vilket är anordnat att som gensvar på en begäran om skivdata från någon av de fyra gränssnittsenheterna 1102, 1104, 1106 och 1108 mata de begärda data till datorn l000a. I' 1 I fig. 60 är en avgränssnittsenheterna.1102 visad närmare i detalj, varvid denna enhet mottager tid- och styrsignaler från centralenheten i minidatorn l000a via ledningar 1116. En databuss 1118 med sexton ledare är kopplad mellan skivminnesgränssnittet 1110 och de andra gränssnittsenheterna. Dessutom är en databuss 1120 med sexton ledare kopplad mellan datorn l000a och de andra gränssnitte- enheterna. I Gränssnittet 1102 är sammankopplat med två manipulatorers lokala minnes- och styrkretsar, varvid en sådan lokal minnes- och styrkrets är visad i fig. 61. Med hänvisning till fig. 61 utnyttjas ett par instruktionsregister RAM A och RAM B i varje manipulator i stället 7611920-5 ss för huvudminnet 628, som beskrivits i detalj ovan. Registren RAM A och RAM B kommer företrädesvis att innefatta instruktionsregister om endast ett eller två steg (åtta ord/steg), varvid data läses in i endera RAM A eller RAM B, som tjänstgör som en buffert, medan den andra enheten styr manipulatorn. En vippa 1122 styr vilket av RAM A och RAM B som användes vid avspelning och tjänar också till att leda den nästa instruktionen till eller från det andra registret. 7 Data klockas in från gränssnittsenheten 1102 med en relativt hög hastighet. Alla styrsignaler som erfordras för att åstadkomma lagring av den nästa instruktionen kommer att tillföras av gräns- snittsenheten ll02. En treledargruppadress styr varje underord till rätt position i RAM A och RAM B. En minnesinitieringsinstruktion åstadkommer initieringen av korrekt tidsstyrda skrivinstruktioner och på likartat sätt matas den nödvändiga modsignalen till det register av RAM A och RAM B som användes såsom buffert för det nästa stegets instruktion. Skivminnet 1100 har tvâ arbetshastigheter i beroende av om det mottager nya data från motsvarande gränssnittsenhet under en inlärningsoperation eller om det betjänar manipulatorn vid avspel- ning. Alla tidssignaler är synkrona och erhålles från huvuddatorns klocka.
Under inlärningsoperationen utnyttjas endast RAM A och detta register insamlar data allt eftersom var och en av de sex styrda axlar- na förflyttas till det nya läget. När en av inlärningsrörelseknappar- na för någon axel, identifierad som P.B.3-P.B.8 i fig. 61, nedtryckes, registreras således den motsvarande rörelsen i RAM A. När tryckknappen släppes, bibehâlles emellertid nämnda data i RAM A under aktiv styr- ning och det ovan beskrivna inlärningsarrangemanget med sluten slinga utnyttjas för att hålla instruktionsläget. Den slutliga registreringen till skivminnet 1100 äger endast rum när manipulatorns huvudregi- streringsknapp nedtrycks, varvid gränssnittsenheten instruerar RAM A att läsa ut hela det lagrade ordet på ungefär 15 us. Omedelbart där- efter tager den lokala styrning som är åstadkommen i manipulatorstyr- kretsen, visad i fig. 61, över och håller manipulatorn i det sista stegets läge, såsom beskrivits i detalj ovan i samband med fig. 22 och 23. Gapet på 15 ns för att åstadkomma överföring av det lagrade ordet i RAM A till skivminnet 1100 kommer ej att påverka servofölj- ningsförmågan för varje axel och därmed bibehâlles det lagrade läget.
Gränssnittsenhetens ll02 funktion vid betjäning av två manipula- torer är att verka som tolk eller översättare mellan datorn lO00a och de lokala styrenheterna (fig. 61) i varje manipulator. När mani- 89 76T192Û*5 pulator nr 1 exempelvis begär den nästa instruktionen, genereras en begäran till datorn för gränssnittet nr 1 via ledningen 1124.
När datorn är klar att effektuera begäran, reagerar den genom att sända det nästa dataordet för manipulatorn nr l på databussen 1120 om sexton ledare. Gränssnittsenheten matar nämnda data till styr- enheten för manipulatorn nr 1 tillsammans med de nödvändiga styr- och tidssignalerna_för lagring av instruktionen i buffertregistret RAM A eller RAM B i beroende av vippans 1122 tillstånd. Förbindelse_ från datorn till de lokala styrenheterna i varje manipulator står under styrning av gränssnittsenheten och sker vid den nominella cykeltiden på 1,6 us per bit hos en konventionell minidator.
Gränssnittsenheten 1102 spelar en liknande roll, när data skall registreras i skivminnet från en särskild lokal styrenhet, som är förknippad med en manipulator, vilken programmeras. Vid exempelvis registrering från manipulator nr 1 lagras de data som skall regi- streras i RAM A. Nedtryckning av registreringsknappen vid manipulator nr l talar om för gränssnittsenheten 1102 att manipulator nr 1 önskar sända data till huvudminnet 1100. Gränssnittsenheten 1102 lämnar då en begäran via ledningarna 1124 till datorn om att den önskar betjäning. Datorn bekräftar sedan begäran. Gränssnittsenheten lämnar de rätta tid- och styrsignalerna till manipulatorns nr 1 lokala styr- enhet, vilket resulterar i utläsning av innehållet i RAM A på bussen 1120 om sexton ledare. Det utlästa matas genom till datorn 1000a för lagring. Efter utläsningen tager den lokala styrenheten över upprätthållandet av den särskilda manipulatorns läge. 7 Särskilda instruktionssignaler tjänar till att informera datorn 1000a om särskilda rutiner eller uppgifter, vilka skall utföras under inlärningsoperationen, såsom beskrivits i detalj ovan i samband med fig. 51-58. Det skall påpekas, att datorns 1000a inlärningshjälpfunk- tion har den lägsta prioriteten, eftersom dess centralenhet betjänar avspelningskrav “on line" alltefter deras uppträdande för att de åtta manipulatorerna skall fungera samtidigt. Om någon fördröjning upp- träder i betjäningen, kommer den således att inträffa för de särskilda “off line" utförda uppgifterna, som beskrivits i detalj ovan.
Minidatorn 1000a kan ha en ordlängd på sexton bitar, en minnes- cykeltid på 1,6 us (kärnminne), en additions-subtraktionshastighet på 3,2 us, en divisionshastighet (maskinvara) på 16 us och en multi- pliceringshastighet (maskinvara) på 13,2 us. Skivminnet 1100 kan ha vilken som helst storlek som svarar mot det antal operationer som erfordras av den därav styrda gruppen av manipulatorer. Även de minsta 7611920-5 90 skivminnen har en lagringskapacitet på l 000 000 bitar, vilket skulle ge tillräcklig minneskapacitet för ungefär 15 min drift av åtta manipulatorer, om en medelarbetstid på l s per steg och manipulator antages. Det är i detta sammanhang klart, att ehuru initialkostnaden för skivminnet ll00 är hög så ersätter det ett stort antal enskilda minnen i varje manipulator, vilka konventionellt är av typen med pläterade ledare och är relativt billiga.
Minidatorns l00Oa arbetsbelastning skall nu diskuteras. Under avspelning erfordras ett relativt litet tidsbelopp för betjäning av alla krav från de åtta manipulatorerna. Om det exempelvis åtgår' ungefär 30 us av datorns tid för betjäning av en rutinbegäran för nästa stegs data från en manipulator, skulle betjäningen av åtta manipulatorer kräva ungefär 250 us totalt för betjäning av en be- gäran för varje manipulator. Eftersom en manipulatorbegäran alstras i medeltal en gång per sekund, är det klart, att en väsentlig del av minidatorns l00Oa tid är tillgänglig för andra uppgifter, såsom inlärningsoperationer för enskilda manipulatorer och liknande.
För att exekvera avspelningskrav vid en hastighet på 30 us tjänar kärnminnet i minidatorn l00Oa som en källa för sekvensiella instruktioner (verkar som en buffert) och mottager datablock från skivminnet ll00 under intervall utan krav. Denna teknik eliminerar effektivt medelaccesstiden på 8 us vad avser skivminnesdata. Alter- nativt kan minidatorn l00Oa helt enkelt styra kraven till och från skivminnet, i vilket fall 8 us kommer att krävas för access till varje krav från en av de åtta manipulatorerna. Även med detta arrange- mang finns emellertid väsentlig tid tillgänglig för betjäning av alla krav från de åtta manipulatorerna under avspelningsoperationen samtidigt som väsentlig tid finns för beräkningar "off line“.
Såsom allmänt diskuterats ovan är datorn 1000 företrädesvis en Model Nova 2/10 med ett kärnminne på 32 kbit från Data General.
De särskilda program som har utvecklats för att göra det möjligt för denna dator att utföra de ovan beskrivna uppgifterna innefattar ett huvud- eller övervakningsprogram, en subrutin, som motsvarar stegen i uppgift I, beskriven i detalj ovan och i samband med ut- skriften av uppgift I, en subrutin, som motsvarar stegen i uppgift II, beskriven i detalj ovan, en subrutin, som motsvarar stegen i upp- gift III, beskriven i detalj ovan i samband med en operation för avplockning av detaljer från en pall, samt en subrutin, som utnyttjas för ändring av robotkonstanter, såsom längden av elementen b och c, ovan beskrivna, eller någon annan av de fasta manipulatorarmkonstanter-

Claims (8)

91 7611920-5 na, så att manipulatorarmar av olika mekaniska dimensioner kan ut- nyttjas. Denna subrutin utnyttjas också för skrivning av robot- konstanternas aktuella värden. De särskilda programmen innefattar också en subrutin, vilken utnyttjas under feleliminering för ut- skrivning av provisoriska värden, vilka erhålles under de ovan be- skrivna matematiska beräkningarna, för kontrolländamål. De särskilda programmen innefattar vidare subrutiner, som ut- nyttjas på olika punkter under utförandet av de ovan beskrivna upp- gifterna, en subrutin, som utnyttjas för formatuppställning av hjälp- styrbitarna, vilka användes under perioderna Gl och G2, såsom be- skrivna i detalj ovan i samband med fig. 62 och 63, en subrutin, som utnyttjas för omvandling av kodarvärden till motsvarande vinklar, en subrutin, som utnyttjas för omvandling av nya vinklar till kodar- värden, såsom beskriven i detalj ovan, en subrutin, som utnyttjas för uttagning av data från manipulatorkodarna och införing av dem i datorn 1000 via gränssnittet 1002, såsom beskrivet i detalj ovan, samt en subrutin, som utnyttjas för överföring av data från datorn till den korrekta slitsen i manipulatoranordningens minne 628, såsom beskrivet i detalj ovan. Ehuru olika utföringsformer av föreliggande uppfinning har åskåd- liggjorts och beskrivits, är det klart, att en mängd olika ändringar och modifieringar av uppfinningen är uppenbara för fackmannen på området. De efterföljande kraven är avsedda att inbegripa alla sådana ändringar och modifieringar, vilka faller inom föreliggande uppfinnings ram. PATENTKRAV
1. Sätt att programmera och styra en manipulator, som har en arm (50), vilken är rörlig kring ett flertal axlar och har kodar- organ (t ex 608, 610, 614) för axlarna, vilka kodarorgan är anord- nade att alstra lägessignaler, som motsvarar armens faktiska läge kring var och en av nämnda flertal axlar, varjämte manipulatorn innefattar en hand (96), som är kopplad till den yttre änden av armen och är rörlig kring ett flertal axlar relativt den, k ä n - n e t e c k n a t av åtgärderna att för en första inlärningsope- ration flytta handen till ett en startpunkt utgörande första läge, att inrikta handen i en önskad riktning under inlärningsopera- tionen, att under den första inlärningsoperationen beräkna (1000) digitala representationer, vilka motsvarar en önskad serie lägen 7611920-5 '92 av armen, utan förflyttning av armen till något av den önskade seriens lägen, varvid för denna beräkning de av kodarorganen, när handen är inriktad i nämnda riktning, alstrade lägessignalerna utnyttjas, att lagra de beräknade, digitala representationerna i ett minne (628) under inlärningsoperationen samt att förflytta armen till serien av lägen under repetitiva avspelningscykler under styrning av de lagrade digitala representationerna och kodarorganen. '
2. Sätt enligt patentkravet l, k ä n n e t e c k n a t därav, att åtgärden att beräkna digitala representationer innefattar åt- gärderna att först omvandla lägessignalerna till motsvarande sig- naler i kartesiska koordinater, att sedan beräkna den önskade serien lägen för armen i kartesiska koordinater ur de omvandlade läges- signalerna samt att därefter omvandla de beräknade kartesiska ko- ordinaterna för den önskade serien lägen till digitala instruktione- signaler, som motsvarar armens rörelse kring nämnda flertal axlar till den önskade serien lägen, och lagra instruktionssignalerna i minnet.
3. Sätt enligt patentkravet 2, varvid manipulatorn innefattar handkodarorgan (612, 6l6) för alstring av handlägessignaler, som motsvarar handens läge kring nämnda flertal handaxlar, k ä n n e - t e c k n a t av åtgärderna att först omvandla lägessignalerna och handlägessignalerna till signaler i kartesiska koordinater, vilka representerar läget för ett flertal punkter på handen, att addera lika tillskott till signalerna i kartesiska koordinater för åstad- kommande av modifierade kartesiska koordinater, motsvarande en trans- lationsrörelse av handen till vart och ett av den önskade seriens lägen, samt att sedan omvandla de modifierade kartesiska koordi- naterna till digitala instruktionssignaler, som-motsvarar armens rörelse kring nämnda flertal axlar och handens rörelser kring nämnda flertal handaxlar till den önskade serien lägen, och lagra instruk- tionssignalerna i minnet (628).
4. Programmerings- och styranordning för åtminstone en mani- pulator av den typ som innefattar en manipulatorarm (50), organ (t ex l46, 224) för att förflytta armen till olika lägen kring ett flertal oberoende axlar, minnesorgan (628) för lagring av digi- tala representationer, som motsvarar olika lägen av armen 7611920-5 93 kring axlarna, och kodarorgan (t ex 608, 610, 614) för var och en av axlarna, vilka kodarorgan är anordnade att alstra läges- signaler, som motsvarar armens läge kring nämnda flertal axlar, k ä n n e t e c k n a d av organ (l000a), som är gemensamma för ett flertal manipulatorarmar, för beräkning av digitala repre- sentationer under en första inlärningsoperation, vilka repre- sentationer motsvarar en önskad serie lägen av armen, utan för- flyttning av armen till något av de önskade lägena medelst arm- förflyttningsorganen (t ex 146, 224), organ för lagring av de beräknade digitala representationerna i minnesorganen (628), som är gemensamma för nämnda flertal manipulatorarmar, under den första inlärningsoperationen, organ (626, 640), som är styrda av de lagrade digitala representationerna och kodaror- ganen (t ex 608, 610, 614) för att styra armförflyttningsorganen att förflytta armen till serien av lägen under repetitiva av- spelningscykler, organ (656) för förflyttning av armen till ett första läge under den första inlärningsoperationen, organ (704) för lagring av de lägessígnaler som motsvarar det första läget i minnet (628) under den första inlärningsoperationen, varvid beräkningsorganen (1000) utnyttjar de lagrade lägessignalerna för beräkning av de digitala representationerna under den första inlärningsoperationen och styrorganen (626, 640) reagerar för både de lagrade lägessignalerna och de lagrade digitala representatio- nerna under de repetitiva avspelningscyklerna, organ (1000) för omvandling av de lagrade lägessignalerna till kartesiska koordinater, som motsvarar det första läget, organ (1000), som utnyttjar de kar- tesiska koordinaterna för beräkning av serien av lägen för armen i kartesiska koordinater samt organ (1000) för omvandling av de beräknade kartesiska koordinaterna för den önskade serien av lägen till digitala representationer, som motsvarar armens rörelser kring nämnda flertal axlar till den önskade serien lägen.
5. Anordning enligt patentkravet 4, k ä n n e t e c k n a d därav, att manipulatorn innefattar en hand (96), som är kopplad till armens yttre ände och är rörlig kring ett flertal handaxlar relativt armen, samt handkodarorgan (612, 616) för alstring av handlägessignaler, som motsvarar handens läge kring nämnda flertal handaxlar, organ (1000) för omvandling av lägessignalerna och hand- lägessignalerna till signaler i kartesiska koordinater, som repre- 7611920-5 ' 94 senterar läget för ett flertal punkter på handen, organ (1000) för addering av lika tillskott till signalerna i kartesiska koordinater för åstadkommande av modifierade kartesiska koordinater, som mot- svarar en translationsrörelse av handen till vart och ett av den önskade seriens lägen, samt organ (l000) för omvandling av de modi- fierade kartesiska koordinaterna för den önskade serien lägen till de digitala representationerna, som motsvarar armens rörelse kring nämnda flertal axlar och handens rörelser kring nämnda flertal hand- axlar till den önskade serien lägen.
6. Anordning enligt patentkravet 5, k ä n n e t e c k n a d äV Organ (656) för förflyttning av armen och handen så, att handen inriktas i en önskad riktning, varvid beräkningsorganen (1000) är styrda av kodarorganen och handkodarorganen för beräkning av en serie önskade lägen i den önskade riktningen.
7. Anordning enligt patentkravet 6, k ä n n e t e c k n a d därav, att handens translationsrörelse går i den önskade riktningen.
8. Anordning enligt patentkravet 4, k ä n n e t e c k n a d av organ (lll0, l0O0a), som är gemensamma för nämnda flertal manipulatorarmar, för lagring av den lagrade, digitala repre- sentationen_samt styrorgan (t ex ll02, ll04) som är förknippade med var och en av manipulatorarmarna och anordnade att i beroende av läsorganen förflytta den förknippade manipulatorarmen till den önskade serien lägen.
SE7611920A 1975-10-28 1976-10-27 Sett att programmera och styra en manipulator samt programmerings- och styranordning for genomforande av settet SE446071B (sv)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/625,932 US4163183A (en) 1975-10-28 1975-10-28 Programmable automatic assembly system

Publications (2)

Publication Number Publication Date
SE7611920L SE7611920L (sv) 1977-04-29
SE446071B true SE446071B (sv) 1986-08-11

Family

ID=24508237

Family Applications (6)

Application Number Title Priority Date Filing Date
SE7611920A SE446071B (sv) 1975-10-28 1976-10-27 Sett att programmera och styra en manipulator samt programmerings- och styranordning for genomforande av settet
SE8305518A SE8305518L (sv) 1975-10-28 1983-10-07 Programmerbar manipulator
SE8305519A SE8305519L (sv) 1975-10-28 1983-10-07 Programmerbar manipulator
SE8305520A SE8305520L (sv) 1975-10-28 1983-10-07 Sett att programmera en manipulator
SE8305517A SE8305517L (sv) 1975-10-28 1983-10-07 Programmerbar manipulator
SE8305521A SE8305521L (sv) 1975-10-28 1983-10-07 Sett att programmera en manipulator

Family Applications After (5)

Application Number Title Priority Date Filing Date
SE8305518A SE8305518L (sv) 1975-10-28 1983-10-07 Programmerbar manipulator
SE8305519A SE8305519L (sv) 1975-10-28 1983-10-07 Programmerbar manipulator
SE8305520A SE8305520L (sv) 1975-10-28 1983-10-07 Sett att programmera en manipulator
SE8305517A SE8305517L (sv) 1975-10-28 1983-10-07 Programmerbar manipulator
SE8305521A SE8305521L (sv) 1975-10-28 1983-10-07 Sett att programmera en manipulator

Country Status (8)

Country Link
US (1) US4163183A (sv)
JP (1) JPS5284669A (sv)
CA (1) CA1084966A (sv)
DE (2) DE2649123C2 (sv)
FR (4) FR2357339A1 (sv)
GB (4) GB1561256A (sv)
IT (1) IT1075776B (sv)
SE (6) SE446071B (sv)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4086522A (en) * 1976-09-08 1978-04-25 Unimation, Inc. Computer assisted teaching arrangement for conveyor line operation
US4263538A (en) * 1977-05-30 1981-04-21 Societa Di Elettronica Per L'automazione Sepa S.P.A. Control system for an automatic machine
EP0001686B1 (en) * 1977-10-20 1981-11-04 Imperial Chemical Industries Plc An industrial manipulator for placing articles in close proximity to adjacent articles and a method of close packing articles therewith
US4420812A (en) * 1979-09-14 1983-12-13 Tokico, Ltd. Teaching- playback robot
US4385358A (en) * 1979-10-19 1983-05-24 Tokico Ltd. Robot
US4445184A (en) * 1980-07-19 1984-04-24 Shin Meiwa Industry Co., Ltd. Articulated robot
DE3033202C2 (de) * 1980-09-03 1984-04-19 Siemens AG, 1000 Berlin und 8000 München Verfahren zur Werkzeugbahn-Interpolation
CH645564A5 (de) * 1980-09-05 1984-10-15 Heinz Hossdorf Verfahren und vorrichtung fuer das formen der oberflaeche eines werkstuecks.
CH639584A5 (fr) * 1980-10-10 1983-11-30 Microbo Sa Automate susceptible d'apprentissage.
JPS5769314A (en) * 1980-10-13 1982-04-28 Fanuc Ltd Numerical control system
US4379335A (en) * 1980-10-28 1983-04-05 Auto-Place, Inc. Electronic controller and portable programmer system for a pneumatically-powered point-to-point robot
US4468695A (en) * 1980-11-20 1984-08-28 Tokico Ltd. Robot
JPS57113114A (en) * 1980-12-30 1982-07-14 Fanuc Ltd Robot control system
JPS584377A (ja) * 1981-03-18 1983-01-11 株式会社安川電機 関節形産業用ロボツトの制御装置
IT1144709B (it) * 1981-05-15 1986-10-29 Dea Spa Sistema di misura dimensionale servito da una pluralita di bracci operativi e controllato da un sistema a calcolatore
US4581893A (en) * 1982-04-19 1986-04-15 Unimation, Inc. Manipulator apparatus with energy efficient control
FR2530173B1 (fr) * 1982-07-14 1987-08-14 Kuka Schweissanlagen & Roboter Procede et montage pour freiner une partie de machine et pour l'arreter
US4558420A (en) * 1982-10-25 1985-12-10 Gerber Scientific Inc. Computer generated mold for contoured garment piece formation
JPS59106007A (ja) * 1982-12-10 1984-06-19 Toyota Central Res & Dev Lab Inc 多関節型ロボツトの軌跡制御装置
JPS59172013A (ja) * 1983-03-22 1984-09-28 Mitsubishi Electric Corp 数値制御装置の刃物台同期方式
DE3337782A1 (de) * 1983-10-18 1984-11-29 Daimler-Benz Ag, 7000 Stuttgart Verfahren zum programmieren und wiederholten ausfuehren einer bewegung eines roboters
US4557663A (en) * 1984-01-09 1985-12-10 Westinghouse Electric Corp. Modular, low cost, pogrammable assembly system
GB2155212A (en) * 1984-02-29 1985-09-18 Dowty Group Services Apparatus for assembling component parts
US4688983A (en) * 1984-05-21 1987-08-25 Unimation Inc. Low cost robot
US4973215A (en) * 1986-02-18 1990-11-27 Robotics Research Corporation Industrial robot with servo
US4878801A (en) * 1986-05-19 1989-11-07 Invention Design Engineering Associates, Inc. Machine for handling circuit package storage tubes
US4748552A (en) * 1986-05-28 1988-05-31 Goro Kikuchi Sequence control system
US4822238A (en) * 1986-06-19 1989-04-18 Westinghouse Electric Corp. Robotic arm
DE3803040A1 (de) * 1988-02-02 1989-08-10 Eke Robotersysteme Gmbh Schwenkantrieb fuer den arm eines industrieroboters
DE3931964C2 (de) * 1989-09-25 1996-05-30 Rexroth Mannesmann Gmbh Vorrichtung zur Steuerung des Bewegungsablaufs mehrerer, von je einem Stellglied gleichzeitig zu betätigender hydraulischer Antriebe
US5126948A (en) * 1989-11-08 1992-06-30 Ltv Aerospace And Defense Company Digital position encoder and data optimizer
JP2573547B2 (ja) * 1991-04-01 1997-01-22 ファナック ロボティクス ノース アメリカ インコーポレイテッド 組立体を変更自在に組み立てるための方法及びシステム
JPH0553634A (ja) * 1991-08-29 1993-03-05 Matsushita Electric Ind Co Ltd 複腕干渉回避システム
FR2687523B1 (fr) * 1992-02-18 1995-01-20 Telediffusion Fse Regie de diffusion de programmes audiovisuels.
US5475797A (en) * 1993-10-22 1995-12-12 Xerox Corporation Menu driven system for controlling automated assembly of palletized elements
SE512338C2 (sv) * 1998-06-25 2000-02-28 Neos Robotics Ab System och metod för reglering av en robot
US6612143B1 (en) 2001-04-13 2003-09-02 Orametrix, Inc. Robot and method for bending orthodontic archwires and other medical devices
DE10148519A1 (de) * 2001-10-01 2003-04-24 Siemens Ag Programmierverfahren zur Erstellung eines Steuerungsprogramms einer industriellen Maschine
DE10258633A1 (de) * 2002-12-16 2004-07-08 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Positionieren von zusammenzufügenden Bauteilen
US20080172857A1 (en) * 2007-01-05 2008-07-24 Tennessee Rand Automation Systems and Methods for Manipulating a Frame in a Manufacturing Process
JP5507587B2 (ja) * 2012-01-11 2014-05-28 ファナック株式会社 補助指令の実行機能を有する数値制御装置
US9517895B2 (en) * 2013-10-30 2016-12-13 GM Global Technology Operations LLC Vehicle frame turnover system and method
US9804593B1 (en) * 2014-12-12 2017-10-31 X Development Llc Methods and systems for teaching positions to components of devices
US10506751B2 (en) * 2014-12-22 2019-12-10 Fuji Corporation Board work management device
WO2018165674A1 (en) * 2017-03-10 2018-09-13 University Of Washington Methods and systems to measure and evaluate stability of medical implants
US11625023B2 (en) * 2017-09-29 2023-04-11 Donald Scott Rogers Device and method for automated assembly of interlocking segments
JP7118628B2 (ja) * 2017-12-01 2022-08-16 キヤノン株式会社 ロボット装置、およびロボット装置の制御方法
WO2019139815A1 (en) 2018-01-12 2019-07-18 Duke University Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects
TWI822729B (zh) 2018-02-06 2023-11-21 美商即時機器人股份有限公司 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備
DE102018105041A1 (de) * 2018-03-06 2019-09-12 Dürr Systems Ag Schwenkeinheit für einen Handhabungsroboter und zugehöriges Verfahren
EP3769174B1 (en) * 2018-03-21 2022-07-06 Realtime Robotics, Inc. Motion planning of a robot for various environments and tasks and improved operation of same
CN108188736B (zh) * 2018-03-23 2023-08-15 浙江亿宝科技有限公司 一种换向器自动装配机
JP7417356B2 (ja) * 2019-01-25 2024-01-18 株式会社ソニー・インタラクティブエンタテインメント ロボット制御システム
JP7190919B2 (ja) 2019-01-25 2022-12-16 株式会社ソニー・インタラクティブエンタテインメント 画像解析システム
CN113905855B (zh) 2019-04-17 2023-08-25 实时机器人有限公司 运动规划图生成用户界面、系统、方法和规则
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
CN112093471B (zh) * 2020-07-29 2022-03-04 强信机械科技(莱州)有限公司 一种切拼下摆机的机械手
CN113771045B (zh) * 2021-10-15 2022-04-01 广东工业大学 视觉引导的直角机器人手机中框高适应定位抓取方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2822094A (en) * 1953-09-29 1958-02-04 Greer Hydraulics Inc Bridge manipulator
BE582789A (sv) * 1958-09-19
FR1371685A (fr) * 1963-10-15 1964-09-04 Lemer & Cie Manipulateur à distance commandé par vérins
CA918789A (en) * 1969-03-18 1973-01-09 F. Engelberger Joseph Programmed manipulator apparatus
US3701888A (en) * 1970-08-05 1972-10-31 Bendix Corp Time shared position feedback system for numerical control
US3624371A (en) * 1970-08-06 1971-11-30 Cincinnati Milacron Inc Apparatus for generating and recording a program and producing a finished part therefrom
JPS4921672Y1 (sv) * 1970-08-21 1974-06-10
FR2183584B1 (sv) * 1972-05-10 1974-09-27 Commissariat Energie Atomique
DE2226407C3 (de) * 1972-05-31 1978-10-12 Industrie-Werke Karlsruhe Augsburg Ag, 7500 Karlsruhe Gerät zur maschinellen, durch veränderbare Programme steuerbaren Handreichung
US3909600A (en) * 1972-06-26 1975-09-30 Cincinnati Milacron Inc Method and apparatus for controlling an automation along a predetermined path
JPS5425300B2 (sv) * 1973-01-25 1979-08-27
JPS5214900B2 (sv) * 1973-02-28 1977-04-25
JPS5024686A (sv) * 1973-07-09 1975-03-15
US3920972A (en) * 1974-07-16 1975-11-18 Cincinnati Milacron Inc Method and apparatus for programming a computer operated robot arm
US4011437A (en) * 1975-09-12 1977-03-08 Cincinnati Milacron, Inc. Method and apparatus for compensating for unprogrammed changes in relative position between a machine and workpiece

Also Published As

Publication number Publication date
US4163183A (en) 1979-07-31
FR2357339A1 (fr) 1978-02-03
DE2649123C2 (de) 1986-07-24
GB1561259A (en) 1980-02-13
FR2361207B1 (fr) 1985-08-23
SE8305521D0 (sv) 1983-10-07
DE2660912C2 (de) 1986-07-17
SE8305521L (sv) 1983-10-07
SE8305518D0 (sv) 1983-10-07
FR2361207A1 (fr) 1978-03-10
SE8305520D0 (sv) 1983-10-07
FR2361206B1 (sv) 1984-07-20
SE8305519D0 (sv) 1983-10-07
DE2649123A1 (de) 1977-05-12
IT1075776B (it) 1985-04-22
SE8305518L (sv) 1983-10-07
SE8305517D0 (sv) 1983-10-07
GB1561258A (en) 1980-02-13
JPS5284669A (en) 1977-07-14
FR2361205A1 (fr) 1978-03-10
SE8305517L (sv) 1983-10-07
FR2361206A1 (fr) 1978-03-10
SE8305519L (sv) 1983-10-07
CA1084966A (en) 1980-09-02
GB1561256A (en) 1980-02-13
GB1561260A (en) 1980-02-13
FR2357339B1 (sv) 1984-10-19
SE8305520L (sv) 1983-10-07
SE7611920L (sv) 1977-04-29

Similar Documents

Publication Publication Date Title
SE446071B (sv) Sett att programmera och styra en manipulator samt programmerings- och styranordning for genomforande av settet
US4260941A (en) Programmable automatic assembly system
US4260940A (en) Programmable automatic assembly system
Paul Robot manipulators: mathematics, programming, and control: the computer control of robot manipulators
Russo The design and implementation of a three degree of freedom force output joystick
Mason Manipulator grasping and pushing operations
US5459382A (en) Method and system for providing a tactile virtual reality and manipulator defining an interface device therefor
Jarrassé et al. How can human motion prediction increase transparency?
EP0075792A2 (en) Control system for robot hand
Lambert et al. A 7-DOF redundantly actuated parallel haptic device combining 6-DOF manipulation and 1-DOF grasping
Mihelj et al. Robotics
CN1947960A (zh) 用于识别环境和进行作业的仿人机器人
Slutski Remote manipulation systems: quality evaluation and improvement
Baumann et al. Haptic interface for virtual reality based minimally invasive surgery simulation
Groome Force feedback steering of a teleoperator system.
CN109605378A (zh) 运动参数的处理方法、装置和系统及存储介质
Bejczy Toward advanced teleoperation in space
Abut et al. Interface design and performance analysis for a haptic robot
CN202816198U (zh) 小学用模块化机器人教学辅助平台
Corke et al. Human skill transfer using haptic virtual reality technology
Gosselin et al. Design and integration of a dexterous interface with hybrid haptic feedback
Hor Control and task planning for a four finger dextrous manipulator
JP2645866B2 (ja) マニピュレータの制御方法および装置
Fischer et al. Structure of a robot system: Karlsruhe dextrous hand II
Sato et al. Human skill analysis based on multisensory data

Legal Events

Date Code Title Description
NUG Patent has lapsed

Ref document number: 7611920-5

Effective date: 19880627

Format of ref document f/p: F