16
Teach by Compliance Sample Application RC7M Controller This application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot. It uses the RC7M/TP-1 (Color touch screen pendant) and the Panel screen function The robot is set into current limit mode and the user can move all 6 axis by hand to a desired location. The user can teach that location and continue to move and teach additional positions. Once all the desired positions are taught, the user can automatically move through all the positions as a Move P, Move L or Move S (Spline). Please refer to the Programs section to be sure all the necessary programs are included. Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 1

RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

Embed Size (px)

Citation preview

Page 1: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

Teach by Compliance Sample Application

RC7M Controller

This application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot.

It uses the RC7M/TP-1 (Color touch screen pendant) and the Panel screen function

The robot is set into current limit mode and the user can move all 6 axis by hand to a desired location.

The user can teach that location and continue to move and teach additional positions.

Once all the desired positions are taught, the user can automatically move through all the positions as a Move P, Move L or Move S (Spline).

Please refer to the Programs section to be sure all the necessary programs are included.

Some programs need to be imported from the “Program Bank” using Wincaps III programming software. See the section on Programs.

This sample is free to distribute.

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 1

Page 2: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

Contents

I. RC7 Controller Setup Procedure........................................................................................3

II. Main Screen..........................................................................................................................4

1. Header................................................................................................................................4

2. Body...................................................................................................................................5

a. Joint Current Limiting settings....................................................................................5

b. Start position.................................................................................................................5

c. Move Type Options.......................................................................................................5

d. Teach and Increment button........................................................................................5

e. Ret each button.............................................................................................................6

3. Status bar..........................................................................................................................6

4. Function keys....................................................................................................................6

III. Programs...........................................................................................................................7

1. Current_Limit_Prg.pac.................................................................................................7

2. MoveTaughtPos.prg......................................................................................................9

3. GetPosition.pac...........................................................................................................10

IV. Used Global Integer variables.............................................................................................10

V. Panel program.......................................................................................................................11

1. Panel program code:..................................................................................................11

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 2

Page 3: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

I. RC7 Controller Setup Procedure

1. Connect the robot arm to the RC7 controller (M&E cable)2. Connect the Color teach pendant to the RC7 Controller3. Connect the Safety I/O cable to the RC7 Controller

a. Minimum requirements i. Jumper Protective Stop circuitii. Wire in E-Stop circuitiii. Wire in Auto Enable circuit.

4. Connect the Power cable to the RC7 Controllera. Check voltages for specific modelsb. Provide circuit protection between power source and the RC7 Controller

5. Power up the RC7 controller6. Enable both the Panel extension and the Compliance extension

a. From the Main screen, Set > Options > Extensionsb. InputID 1453 (Panel)c. OKd. InputID 6519 (Compliance)e. OKf. Reboot the controller

7. Using the Wincaps III programming software, download all the programs (See section on necessary (Custom PAC programs and Program Bank programs) to run the Compliance Sample application to the RC7 Controller.

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 3

Controller

Color Teach Pendant

6 axis robot arm

Global Safety I/O E-Stop Auto/Man switch

M&E cable

Power cable

Power source circuit breaker

Page 4: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

II. Main Screen

1. Header

Auto Enabled indicator: Be sure the Teach Pendant key switch is in the Auto position and the Auto Enable of the Safety I/O is made.

External Speed set: Set the external speed to between 1% and 10% when moving the arm under compliance mode.

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 4

Page 5: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

2. Body

a. Joint Current Limiting settings Enabled Joints: Check the boxes of the

joints (1 – 6) that you want to allow compliance mode to enable.

Allowable deviation/deg: This value is what you want each joint to error at when you exceed these values during the compliance movement. Be sure to set these values to at least 180 deg.

Current limit %: This is the maximum current in total percentage of each motor. The smaller the value, the more compliant the robot.

b. Start position Pressing the Start position number box will allow the

user to enter the position number they want to use as the starting increment position. Changing this value will rest the Teach & INC number box to the same value. Pressing Teach & INC button will teach the current robot location to this position as the first position in the group.

c. Move Type Options The Move Type Options allow you to run

through all the taught positions in any of the 3 options.

o P Type: Moves through each taught point in a “Move P,…” type move

o L Type: Move through each taught point in a “Move L… type moveo S Type: Creates a set of Spline points from the taught points and move through

a “Move S, 1” type motion.

d. Teach and Increment button The Teach & INC button, records the current

robot position to the displayed P type variable. Once the position is recorded, the position number increments by 1. For example, if you move the robot by hand and click the Teach & INC button, the robots current position would be recorded to P[50] and the position number would increment by 1.

Pressing on the position number opens the number input box where you can enter a new start position.

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 5

Page 6: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

Note the display will let you know how many positions have been recorded and their position number. In this example, if the Run function button was to be presses, the robot would move through P[50] to P[52] as a P type move.

e. Ret each button You can re-teach one of the positions by pressing

on the Reteach number input box and entering one of the currently taught positions. Then move the robot to the new position and click the Reteach button. The Status bar will let you know if the position was re-taught.

3. Status bar

The Status bar will let you know what is happening during an evento When a robot program is runningo When and what position has been taught or retaughto When compliance mode is enabled or disabled

4. Function keys

F1 Comply: Takes the Enabled Joints, Allowable deviation/deg and Current limit values and runs a program in the controller call Comply_Prg.pac program. This program sets the compliance for the current robot using these parameters. It runs once and ends. The robot can now be moved by hand.

o The Compliance Status ligth will be Green when the robot arm is in compliance mode and it can be moved by hand to desired positions.

F2 Reset: Disables the Compliance on the arm. F3 Run: Runs the motion program using the positions taught. The move type, P, L, Spline

is set by selecting the appropriate Move Type Option. F6 Back: Move back one panel screen

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 6

Page 7: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

III. Programs

Be sure all the programs listed are in the robot controller

Be sure to enable the Panel extension (1453) and the Compliance extension (6519)o SET > OPTIONS > Extensionso InputIDo Enter the Extension # and OKo Reboot the robot controller

1. Current_Limit_Prg.pac''!TITLE "Current Limiting Program"PROGRAM Currrent_Limit_Prg'***************************************************************' Enable the compliance extension 6519 ' Enable the Panel extension 1453'***************************************************************

DIM STR_MSG AS STRINGTAKEARMMOTOR ONSET IO[128]CALL Set GravityCall SetGrvOffset

STR_MSG = ""

IF I[10] = 1 THEN I[10] = -1GOTO *RESET_ALL

ENDIF

IF I[10] = -1 THENEND

ENDIF

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 7

Page 8: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

IF I[11] = 1 THEN 'J1 CURRENT LIMIT ENABLEDCALL SetCurLmt(1, I[13])CALL SetEralw (1, I[12])STR_MSG = "J1"

ENDIF

IF I[21] = 1 THEN 'J2 CURRENT LIMIT ENABLEDCALL SetCurLmt(2, I[23])CALL SetEralw (2, I[22])STR_MSG = STR_MSG + ", J2"

ENDIF

IF I[31] = 1 THEN 'J3 CURRENT LIMIT ENABLEDCALL SetCurLmt(3, I[33])CALL SetEralw (3, I[32])STR_MSG = STR_MSG + ", J3"

ENDIF

IF I[41] = 1 THEN 'J4 CURRENT LIMIT ENABLEDCALL SetCurLmt(4, I[43])CALL SetEralw (4, I[42])STR_MSG = STR_MSG + ", J4"

ENDIF

IF I[51] = 1 THEN 'J5 CURRENT LIMIT ENABLEDCALL SetCurLmt(5, I[53])CALL SetEralw (5, I[52])STR_MSG = STR_MSG + ", J5"

ENDIF

IF I[61] = 1 THEN 'J6 CURRENT LIMIT ENABLEDCALL SetCurLmt(6, I[63])CALL SetEralw (6, I[62])STR_MSG = STR_MSG + ", J6"

ENDIFS1 = "CURRENT LIMITS SET FOR " + STR_MSGEND

*RESET_ALL:SPEED 10ACCEL 10,10CALL ResetCurLmt(0)DELAY I[90]CALL ResetEralw(0)S1 = "CURRENT LIMITS DISABLED....."RESET IO[128]

END

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 8

Page 9: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

2. MoveTaughtPos.prg

'!TITLE "Move through taught positions"PROGRAM MoveTaught_Pos

TAKEARMS[1] = "Resetting Current......."MOTOR ONDIM iX AS INTEGERDIM StartPos as integer, EndPos as IntegerStartPos = I[9] - (I[7] -1)EndPos = I[9]

SPEED 10ACCEL 10,10CALL ResetCurLmt(0)DELAY I[90]CALL ResetEralw(0)RESET IO[128]Delay 100SELECT CASE I[8] 'MOVE TYPE

CASE 1 'MOVE PFOR iX = StartPos to EndPos

S[1] = "RUNNING THE P TYPE MOTION PROGRAM...(Move P, P[" + Str$(iX) + "] )...."MOVE P, P[iX]

NEXT iXCASE 2 'MOVE L

FOR iX = StartPos to EndPosS[1] = "RUNNING THE L TYPE MOTION PROGRAM...(Move L, P[" + Str$(iX) + "] )...."MOVE L, P[iX]

NEXT iXCASE 3 'MOVE S

CLRSPLINEPOINT 1FOR iX = StartPos to EndPos

SETSPLINEPOINT 1, P[iX]NEXT iXS[1] = "Moving to the start position of the Spline...(Moving to P[" + Str$(StartPos) +

") ..."MOVE P, P[StartPos]S[1] = "RUNNING THE SPLINE TYPE MOTION PROGRAM...(Move S, 1) ..."MOVE S, 1

CASE -1 'NO TYPE ERROREND SELECTS[1] = "MOVES COMPLETE...."

END

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 9

Page 10: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

3. GetPosition.pac

'!TITLE "Teach position. Called from Panel Screen"PROGRAM GetPos

TakearmIF I[8] > -1 THEN

P[I[8]] = CURPOSS[1] = "P" + Str$(I[8]) + " has been Re-taught..."I[8] = -1

ELSEP[I[9]] = CURPOSS[1] = "P" + Str$(I[9]) + " has been taught..."

ENDIF

END

IV. Used Global Integer variables

o Be sure not to assign the Global Integers shown to the left. These are reserved for program use.

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 10

Page 11: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

V. Panel program

Panel object names

1. Panel program code:DEF PB1_CLICKED() 'TEACH BUTTON

I[9] = NB1.valueRun GetPosNB1.value = NB1.value + 1I[7] = I[7] +1 'INC # OF TAUGHT POSITIONS

END

DEF IPB1_REFRESH() 'STATUS BARIPB1.caption = S[1]plComplianceState.state = IO[128]lblPosOfPos1.caption = "Recorded Positions:" + str$(I[7])lblPosOfPos2.caption = "Starting at position:" + STR$(NB3.VALUE)

END

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 11

Page 12: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

DEF Panel_INITIALIZE()RESET IO[128]NB1.value = 1I[9] = 0I[8] = -1I[7] = 0

END

DEF FK2_CLICKED() 'RUN FUNCTION KEYI[8] = -1 'Move type falseIf CBTypeP.State = 1 then 'Move P type

I[8] = 1EndifIf cbTypeL.State = 1 then 'Move L type

I[8] = 2EndIfIf cbTypeSpline.State = 1 then 'Move Spline type

I[8] = 3EndIfRun MoveTaught_Pos

END

DEF FK3_CLICKED() 'COMPLY FUNCTION KEYI[10] = 0

IF chk1.STATE = ON THEN I[11] = 1I[12] = nbDeviation1.ValueI[13] = nbLimitJ1.Value

ELSEI[11] = 0

ENDIF

IF chk2.STATE = ON THEN I[21] = 1I[22] = nbDeviation2.ValueI[23] = nbLimitJ2.Value

ELSEI[21] = 0

ENDIF

IF chk3.STATE = ON THEN I[31] = 1I[32] = nbDeviation3.ValueI[33] = nbLimitJ3.Value

ELSEI[31] = 0

ENDIF

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 12

Page 13: RC7 Controller Setup Procedure Teach by Compliance... · Web viewThis application demonstrates the RC7 controller’s Current Limiting capabilities on all the motors of a 6 axis robot

IF chk4.STATE = ON THEN I[41] = 1I[42] = nbDeviation4.ValueI[43] = nbLimitJ4.Value

ELSEI[41] = 0

ENDIF

IF chk5.STATE = ON THEN I[51] = 1I[52] = nbDeviation5.ValueI[53] = nbLimitJ5.Value

ELSEI[51] = 0

ENDIF

IF chk6.STATE = ON THEN I[61] = 1I[62] = nbDeviation6.ValueI[63] = nbLimitJ6.Value

ELSEI[61] = 0

ENDIF

RUN currrent_limit_prgEND

DEF FK4_CLICKED() 'RESET FUNCTION KEYI[10] = 1RUN currrent_limit_prg

END

DEF PB2_CLICKED() 'RETEACH BUTTONI[8] = NB2.valueRun GetPos

END

DEF NB3_DONE() 'START FROM... NUMBER BOXI[9] = NB3.VALUENB1.VALUE = I[9]I[7] = 0

END

Denso Robotics (RC7M) Teach by Compliance Sample Application (Ver 1.0) Page 13