Ärm#
Introduktion#
6-axlig robotarm är en robotmanipulator som används i CTE-arbetscellen. I VEXcode EXP tillåter armblock en EXP-hjärna att röra 6-axlig arm, rotera dess ändeffektor, kontrollera om rörelser är möjliga och styra anslutna verktyg som magnetupptagningsverktyget eller pennhållarverktyget.
Den här sidan är för CTE Workcell-projekt där 6-axlig arm är ansluten till en EXP Brain. Om du använder 6-axlig arm ensam med CTE-plattan, använd sidan CTE Arm API istället.
Nedan följer en lista över tillgängliga block:
Åtgärder — Flytta 6-axlig arm till positioner eller orienteringar.
flytta armen till position — Flyttar 6-axlig arm till en specificerad x-, y- och z-koordinat.
öka armposition — Flyttar 6-axlig arm ett avstånd från dess aktuella position.
flytta armen till rätt orientering — Roterar ändeffektorn till en angiven orientering.
öka armorientering — Roterar ändeffektorn med ett angivet antal grader.
Inställningar — Konfigurera inställningar för rörelse, verktyg och kontroll.
ställ in armhastighet — Ställer in rörelsehastigheten för 6-axlad arm.
ställ in armändeffektor — Väljer verktyget som är fäst vid 6-axlig arm.
ställ in armmagnetläge — Aktiverar eller släpper magnetupptagningsverktyget.
ställ in armpennans offset — Ställer in den vertikala offseten för pennhållarverktyget.
ställ in armen på kontrollstopp — Stoppar 6-axlig arm och förhindrar ytterligare armrörelse.
Värden — Kontrollera om en rörelse kan köras, om rörelsen har avslutats, om en krasch har inträffat, läsa aktuell position eller orientering, eller köra block när armeringshändelser inträffar.
arm flytta till position? — Returnerar om 6-axlig arm kan flyttas till en specifik position.
arm increment position? — Returnerar om 6-axlig arm kan röra sig ett visst avstånd.
arm move end effector? — Returnerar om ändeffektorn kan rotera till en specificerad orientering.
armökningsorientering? — Returnerar om ändeffektorn kan rotera med ett angivet antal grader.
armen är klar med att röra sig? — Returnerar om 6-axlig arm har slutat röra sig.
armen har kraschat? — Returnerar om 6-axlig arm har kraschat under rörelse.
armposition — Returnerar den aktuella positionen för 6-axlig arm längs en vald axel.
armorientering — Returnerar ändeffektorns aktuella orientering längs en vald axel.
när armkontrollen stoppades — Kör den anslutna stacken när kontrollstopp är aktiverat.
när armen kraschade — Kör den anslutna stacken när en krasch upptäcks.
Åtgärder#
flytta armen till rätt position#
Stackblocket flytta arm till position flyttar 6-axlig arm till en specificerad x-, y- och z-koordinat.
X-, y- och z-koordinaterna beskriver ändeffektorns position i det tredimensionella rummet. Använd arm move to position? före detta block om målpositionen kan ligga utanför 6-axlarmens nåbara arbetsyta.
flytta [Arm1 v] till position x:[120] y:[0] z:[100] [mm v] ▶
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
x |
Målpositionens x-koordinat. |
y |
Y-koordinaten för målpositionen. |
z |
Z-koordinaten för målpositionen. |
enhet |
Enheten som används för x-, y- och z-koordinaterna: mm (millimeter) eller tum. |
expanderande pil |
Som standard slutförs 6-axlig arm innan nästa block körs. Expandera blocket till och vänta inte med att starta rörelsen och fortsätt omedelbart till nästa block. |
Exempel
när startad
[Move Arm1 to a standard position at the start of the project.]
flytta [Arm1 v] till position x:(120) y:(120) z:(75) [mm v] ▶
öka armpositionen#
Stackblocket öka armposition flyttar 6-axlig arm ett angivet avstånd från dess aktuella position längs x-, y- och z-axlarna.
Använd det här blocket för att flytta i förhållande till var ändeffektorn nu befinner sig. Använd arm increment position? före det här blocket om rörelsen kan placera 6-axlig arm utanför dess nåbara arbetsyta.
öka [Arm1 v] position med x:[0] y:[0] z:[0] [mm v] ▶
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
x |
Avståndet att förflytta sig längs x-axeln. |
y |
Avståndet att förflytta sig längs y-axeln. |
z |
Avståndet att förflytta sig längs z-axeln. |
enhet |
Enheten som används för x-, y- och z-avstånden: mm (millimeter) eller tum. |
expanderande pil |
Som standard slutförs 6-axlig arm innan nästa block körs. Expandera blocket till och vänta inte med att starta rörelsen och fortsätt omedelbart till nästa block. |
Exempel
när startad
[Move Arm1 100 millimeters along the x-axis.]
öka [Arm1 v] position med x:[100] y:[0] z:[0] [mm v] ▶
flytta armen till orientering#
Stackblocket flytta armen till orientering roterar ändeffektorn till en specificerad orientering.
Orientering beskriver hur ändeffektorn roteras. pitch lutar ändeffektorn uppåt eller nedåt, roll roterar den från sida till sida och yaw roterar den åt vänster eller höger.
flytta [Arm1 v] till orientering [pitch v] [0] grader ▶
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
orientering |
Axeln att rotera ändeffektorn runt:
|
grader |
Målets orienteringsvinkel, i grader. |
expanderande pil |
Som standard slutförs 6-axlig arm innan nästa block körs. Expandera blocket till och vänta inte med att starta rörelsen och fortsätt omedelbart till nästa block. |
Exempel
när startad
[Rotate the end effector to 270 degrees of yaw.]
flytta [Arm1 v] till orientering [yaw v] [270] grader ▶
öka armorientering#
Stackblocket ökningsarmorientering roterar ändeffektorn med ett angivet antal grader från dess nuvarande orientering.
Använd det här blocket för att rotera i förhållande till ändeffektorns aktuella lutning, roll eller yaw.
öka [Arm1 v] orientering med [pitch v] [0] grader ▶
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
orientering |
Axeln att rotera ändeffektorn runt:
|
grader |
Antalet grader att rotera ändeffektorn. |
expanderande pil |
Som standard slutförs 6-axlig arm innan nästa block körs. Expandera blocket till och vänta inte med att starta rörelsen och fortsätt omedelbart till nästa block. |
Exempel
när startad
[Rotate the end effector 40 degrees in pitch.]
öka [Arm1 v] orientering med [pitch v] [40] grader ▶
Inställningar#
ställ in armhastighet#
Stackblocket ställ in armhastighet ställer in rörelsehastigheten för 6-axlingsarmen.
6-axlig armhastighet är inställd på 50 % i början av ett projekt.
ställ in [Arm1 v] hastighet till [50] %
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
procent |
Rörelsehastigheten för 6-axlarmens arm, från 1 till 100 procent. |
Exempel
när startad
[Set Arm1's speed to 30%.]
ställ in [Arm1 v] hastighet till [30] %
flytta [Arm1 v] till position x:[120] y:[120] z:[70] [mm v] ▶
ställ in armändeffektorn#
Stackblocket ställ in armändeffektor väljer verktyget som är fäst vid 6-axlingsarmen.
När ändeffektorn ändras justerar 6-axlig arm automatiskt sin z-offset för att matcha det valda verktyget. Ändeffektorn ställs in på Magnetupptagningsverktyget i början av ett projekt.
ställ in [Arm1 v] ändeffektorn till [magnet v]
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
ändeffektor |
Verktyget som är fäst vid 6-axlingsarmen: magnet (magnetupptagningsverktyg) eller penna (pennhållarverktyg). |
Exempel
när startad
[Set Arm1 to use the Pen Holder Tool.]
ställ in [Arm1 v] ändeffektorn till [penna v]
ställ in armmagnetläge#
Stackblocket ställ in armmagnetläge aktiverar eller släpper magnetupptagningsverktyget.
Magnetläget förblir aktivt tills ett annat ställ in armmagnetläge-block ändrar det. Magnetläget återställs till släppt i början av ett projekt.
ställ in [Arm1 v] magnet till [aktiverad v]
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
läge |
Magnetupptagningsverktygets tillstånd: aktiverat för att plocka upp föremål eller släppt för att släppa ett föremål som hålls och inte plocka upp nya föremål. |
Exempel
när startad
[Pick up objects, then drop them after 2 seconds.]
ställ in [Arm1 v] magnet till [aktiverad v]
vänta [2] sekunder
ställ in [Arm1 v] magnet till [frigjord v]
ställ in armpennans offset#
Stapelblocket ställ in armpennans offset ställer in den vertikala offseten för pennhållarverktyget.
Ställ in ändeffektorn på penna innan du använder det här blocket. Om pennhållarverktyget inte är valt har det här blocket ingen effekt.
Pennans offset är avståndet från toppen av pennhållarverktyget till spetsen på whiteboardpennan. I början av ett projekt är pennans offset inställt på 0. En pennoffset på 0 placerar armens z-axelorigo vid den punkt där pennhållarverktyget ansluter till 6-axlad arm.
ställ in [Arm1 v] pennförskjutning till [0] [mm v]
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
offset |
Pennans offsetvärde. |
enhet |
Enheten som används för pennans offset: mm (millimeter) eller tum. |
Exempel
när startad
[Set the end effector to the Pen Holder Tool and set the pen offset to 1 inch.]
ställ in [Arm1 v] ändeffektorn till [penna v]
ställ in [Arm1 v] pennförskjutning till [1] [tum v]
flytta [Arm1 v] till position x:[120] y:[120] z:[0] [mm v] ▶
ställ in armen för att kontrollera att den har stoppats#
Stackblocket ställ in armen för att styra stoppad stoppar omedelbart 6-axlad arm och förhindrar att fler armblock körs.
När det här blocket körs kan 6-axlig arm inte återaktiveras förrän projektet startas om.
ställ in [Arm1 v] till styrstopp
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
Exempel
när startad
[Control stop after a movement.]
flytta [Arm1 v] till position x:[120] y:[120] z:[70] [mm v] ▶
ställ in [Arm1 v] till styrstopp
Värden#
Armen flyttas till rätt position?#
Det booleska blocket arm flytta till position? returnerar om 6-axlig arm kan flyttas till en specificerad x-, y- och z-koordinat.
Detta block kontrollerar en målposition innan 6-axlig arm rör sig. Det kan hjälpa till att förhindra att ett projekt försöker flytta armen utanför dess nåbara arbetsyta.
<kan [Arm1 v] flytta till position x:[0] y:[0] z:[0] [mm v]?>
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
x |
Målpositionens x-koordinat. |
y |
Y-koordinaten för målpositionen. |
z |
Z-koordinaten för målpositionen. |
enhet |
Enheten som används för x-, y- och z-koordinaterna: mm (millimeter) eller tum. |
Exempel
när startad
[Check if Arm1 can move to a position.]
om <inte <kan [Arm1 v] flytta till position x:[0] y:[0] z:[0] [mm v]?>> då
skriv ut [The 6-Axis Arm can't move to this position.] på skärmen ▶
avsluta
armökningsposition?#
Det booleska blocket arm increment position? returnerar om 6-axlig arm kan röra sig det angivna avståndet från sin nuvarande position.
Detta block kontrollerar en stegvis rörelse innan 6-axlig arm rör sig.
<[Arm1 v] öka position med x:[0] y:[0] z:[0] [mm v]?>
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
x |
Avståndet att förflytta sig längs x-axeln. |
y |
Avståndet att förflytta sig längs y-axeln. |
z |
Avståndet att förflytta sig längs z-axeln. |
enhet |
Enheten som används för x-, y- och z-avstånden: mm (millimeter) eller tum. |
Exempel
när startad
[Check if Arm1 can increment from its current position.]
om <inte <[Arm1 v] öka position med x:[0] y:[500] z:[0] [mm v]?>> då
skriv ut [The 6-Axis Arm can't move that distance.] på skärmen ▶
avsluta
Armrörelseändeffektor?#
Det booleska blocket arm move end effector? returnerar om ändeffektorn kan rotera till en specificerad orientering.
Använd det här blocket för att kontrollera om ett måls lutning, rullning eller girning ligger inom det tillåtna intervallet innan ändeffektorn roteras.
<kan [Arm1 v] flytta ändeffektorn till [pitch v] [0] grader?>
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
orientering |
Axeln att rotera ändeffektorn runt:
|
grader |
Målets orienteringsvinkel, i grader. |
Exempel
när startad
[Check if Arm1 can roll its end effector to an orientation.]
om <kan [Arm1 v] flytta ändeffektorn till [roll v] [40] grader?> då
skriv ut [The end effector can roll to that orientation.] på skärmen ▶
avsluta
orientering av armökning?#
Det booleska blocket arm increment orientation? returnerar om ändeffektorn kan rotera med ett angivet antal grader från sin nuvarande orientering.
Använd det här blocket för att kontrollera en stegvis lutning, rullning eller girrörelse innan ändeffektorn roteras.
<kan [Arm1 v] öka orientering med [pitch v] [0] grader?>
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
orientering |
Axeln att rotera ändeffektorn runt:
|
grader |
Antalet grader att rotera ändeffektorn. |
Exempel
när startad
[Check if Arm1 can increment yaw.]
om <kan [Arm1 v] öka orientering med [yaw v] [20] grader?> då
skriv ut [The end effector can increment yaw by 20 degrees.] på skärmen ▶
avsluta
Är armen klar att röra sig?#
Det booleska blocket är armen klar med att röra sig? returnerar om 6-axlig arm har rört sig färdigt.
Det här blocket är användbart efter att ett rörelseblock har expanderat till och vänta inte.
<[Arm1 v] klar med rörelse?>
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
Exempel
när startad
[Display the current y-position while Arm1 moves.]
flytta [Arm1 v] till position x:(-100) y:(200) z:(100) [mm v] ◀ och vänta inte
upprepa tills <[Arm1 v] klar med rörelse?>
skriv ut ([Arm1 v] position [y v] i [mm v]) på skärmen ◀ och flytta markör till nästa rad
vänta [0.25] sekunder
avsluta
är armen krockad?#
Det booleska blocket har armen kraschat? returnerar om 6-axlig arm har kraschat under rörelse.
När en krasch upptäcks stoppar 6-axlig arm motorns rörelse och kan verka slak. Detta minskar belastningen och hjälper till att skydda motorerna från oavsiktliga skador.
<[Arm1 v] är kraschad?>
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
Exempel
när startad
[Quickly move to the specified location.]
ställ in [Arm1 v] hastighet till [100] %
flytta [Arm1 v] till position x:[-20] y:[240] z:[40] [mm v] ◀ och vänta inte
[While moving, check for a crash.]
för alltid
om <[Arm1 v] är kraschad?> då
[Indicate a crash with the Signal Tower and Brain screen.]
skriv ut [Crash Detected] på skärmen ▶
ställ in [SignalTower2 v] till [grön v] och [av v]
ställ in [SignalTower2 v] till [röd v] och [fast v]
bryt
avsluta
avsluta
armposition#
Reporterblocket armposition returnerar den aktuella positionen för 6-axlingsarmen längs en vald axel.
Använd det här blocket för att avläsa var ändeffektorn för närvarande är placerad längs x-, y- eller z-axeln.
([Arm1 v] position [x v] i [mm v])
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
axel |
Positionsaxeln att rapportera:
|
enhet |
Enheten som används för positionsvärdet: mm (millimeter) eller tum. |
Exempel
när startad
[Display the current y-position while Arm1 moves.]
flytta [Arm1 v] till position x:(-100) y:(200) z:(100) [mm v] ◀ och vänta inte
upprepa tills <[Arm1 v] klar med rörelse?>
skriv ut ([Arm1 v] position [y v] i [mm v]) på skärmen ◀ och flytta markör till nästa rad
vänta [0.25] sekunder
avsluta
armorientering#
Reporterblocket armorientering returnerar ändeffektorns aktuella orientering kring en vald axel i grader.
Använd det här blocket för att läsa ändeffektorns aktuella lutning, roll eller girning.
([Arm1 v] orientering [pitch v] i grader)
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
orientering |
Orienteringsaxeln att rapportera:
|
Exempel
när startad
[Display the current yaw after rotating the end effector.]
flytta [Arm1 v] till orientering [yaw v] [90] grader ◀ och vänta inte
upprepa tills <[Arm1 v] klar med rörelse?>
skriv ut ([Arm1 v] orientering [yaw v] i grader) på skärmen ◀ och flytta markör till nästa rad
vänta [0.25] sekunder
avsluta
när armkontrollen upphörde#
Hat-blocket när armkontrollen stoppades kör den anslutna stacken när 6-axlig arms kontrollstopp har aktiverats.
när [Arm1 v] styrstopp :: hat events
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
när armen kraschade#
Hattblocket när armen kraschade kör den bifogade stacken när 6-axlig arm har kraschat under rörelse.
När en krasch upptäcks stoppar 6-axlig arm motorns rörelse och kan verka slak. Detta minskar belastningen och hjälper till att skydda motorerna från oavsiktliga skador.
when [Arm1 v] crashed :: hat events
Parameter |
Beskrivning |
|---|---|
anordning |
Den konfigurerade 6-axliga armen som ska användas. |
Exempel
when [Arm1 v] crashed :: hat events
[Indicate a crash with the Signal Tower and Brain screen.]
skriv ut [Crash Detected] på skärmen ▶
ställ in [SignalTower2 v] till [röd v] och [fast v]