Hi,
You have 2 way for clear message on TP USER:
- Use the karek with WRITE(CHR(128),CHR(137))
Or write the statement message empty like this picture below (On tp screen you have 10 lines)
Hi,
You have 2 way for clear message on TP USER:
Or write the statement message empty like this picture below (On tp screen you have 10 lines)
Hi,
This axis move is restricted in multigroup weaving motion.
When you welding, do you need to synchronize the positioner ? Try to copy an paste the same point without coord instructions( test slowly, there will probably be a collision )
Can you send the AOA backup of your installation ?
Hi,
This information below is for R30iA Mate, this information may change on other controller generations.
The DOSRC1 and DOSRC2 pins of the CRMA15 and CRMA16 are pins for
supplying power to drivers. (None of these pins can be left open.)
Yaskawa would sell us a course for touch. I asked for some files but nothing.
see the link below :
You can create a simple program for 1 or 2 search directions
see on the job header
Hi jafar90 , first of all, are you see your macro program in inform list ?
Hi DawnHill ,
for adding and setting up motion group , you can use this video below
However for synchronizing the robot with other axis, you should use the option
PROCESS SYNCHRONIZATION but this option is specific for the welding , probably there is another one.
Hi,
first all, you can see the good tutorial of DIY robotics below :
What is the version of you controller ? R30IB , R30IB+ ?
Do you add the option J567 and J568 ?
Hi cosmos_1
I have tried this file, but I'm getting system not matched error.
I tried your program on DX200 it working fine. Send me cmos i can check on motosim.
Hi cosmos_1
Try this file below or verify i the robot have the same setup in other program ///GROUP1 RB1 :
/JOB
//NAME JOB1
//POS
///NPOS 0,0,0,6,0,0
///TOOL 0
///POSTYPE BASE
///RECTAN
///RCONF 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//INST
///DATE 2025/02/08 07:33
///ATTR SC,RW
///GROUP1 RB1
NOP
GETS PX001 $PX001
SETE P001 (1) 0
SETE P001 (2) 0
SETE P001 (3) -500000
SETE P001 (4) 0
SETE P001 (5) 0
SETE P001 (6) 0
IMOV P001 V=50.0 SRCH RIN#(1)=OFF DIS=0.1
SETE P001 (3) 30000
IMOV P001 V=50.0
SETE P001 (3) 0
SETE P001 (2) -500000
IMOV P001 V=50.0 SRCH RIN#(1)=OFF DIS=0.1
TIMER T=2.00
GETS PX002 $PX001
GETE D004 P002 (2)
END
Display More
Hi rozzy323,
Normally the file should create itself, but you need to change your instruction below:
If the file doesn't exist before you can change RW to AP for "APPEND"
I think the absolute position of the Pulse coder has not been established.
You can try to recalibrate the axis number 6.
Go to Menu --> SYSTEM -->MASTER/CAL (if not appear go to system--> variables --> switch MASTER_ENB=1)
After that,
Select single axis master, turn the sixteenth axis in joint,
Enter 1 in SEL row and press F5 button for execute.
Press Prev button and press RES_PCA
And select calibrate, you should see the view below
turn off the controller and see if it's better
Hi,
Have you only the error message SRVO-075 ? or have you SRVO-062 before ? you can see on MENU-->Alarm log -->HIST
What is the group responsible (G:%)? Try to jog one motor revolution and try to single axis master the responsible axis
Are you set a payload or armload ? Remove all of them
Hi,
Isn't possible to configure a point without an axes, here the extend axis. however, you can set the same position of you E1 all the times, in running the robot's conveyor will not move anymore.
Go to P[1]--> P[2]
P[1]{
GP1:
UF : 0, UT : 1, CONFIG : 'N U T, 0, 0, 0',
X = 100 mm, Y = 0 mm, Z = -0 mm,
W = 0deg, P = -0deg, R = 0deg,
E1= 1500 mm
};
P[2]{
GP1:
UF : 0, UT : 1, CONFIG : 'N U T, 0, 0, 0',
X = 200 mm, Y = -0 mm, Z = 0 mm,
W = 0 deg, P = -0 deg, R = 0 deg,
E1= 1500 mm
};
For avoid the collision, you can use offset for set the right position of you robot on the E1, below an example
Hi, for the second scenario you can use the vision master recovery but is a option J992.
below the documentation
Hi cl_controls ,
I'm not sure it's works but you can use kldutil.kl, precesily the routines below :
ROUTINE strg_to_int(text:STRING): INTEGER FROM klutlext
ROUTINE int_to_strg(int:INTEGER):STRING FROM klutils
--
-- This material is the joint property of GMFanuc Robotics Corporation and
-- FANUC LTD Japan, and must be returned to either GMFanuc Robotics
-- Corporation or FANUC LTD Japan immediately upon request. This material
-- and the information illustrated or contained herein may not be
-- reproduced, copied, used, or transmitted in whole or in part in any way
-- without the prior written consent of both GMFanuc Robotics and FANUC.
--
-- All Rights Reserved
-- Copyright (C) 1991
-- GMFanuc Robotics Corporation
-- FANUC LTD Japan
--
-- Karel is a registered trademark of
-- GMFanuc Robotics Corporation
-- +
-- Include File: klrdutil - Routine declarations for KAREL utilities
--
-- Description:
--
--
-- Dependancies:
--
-- Routines declared FROM the program "klutils"
--
-- Language: KAREL
--
-- Source File: klrdutil.kl 03-OCT-91 08:35AM
--
-- Author: KARGLJT
-- GMFanuc Robotics Corporation
-- 2000 South Adams Road
-- Auburn Hills, Michigan 48326-2800
--
-- Modification history:
-- add strg_to_int,int_to_strg 25.10.91 gudatlx
-- modify parameters of strg_to_int,int_to_strg 04.11.91 brycetk
-- added pwd_level 11.10.96 steinlet
-- Dec-5-96 JAE Add pwd_lvl_set.
-- Dec-19-96 murrellr Added pwd_test.
-- Sep-07-01 JAE Add connect_id parameter to pwd_test.
-- Aug-03-2003 JAE Add pwd_login.
-- Jun-28-2005 JAE Add pwd_logout.
--
ROUTINE clear_win(p_file_name: FILE; status: INTEGER) FROM klutils
ROUTINE clr_stnd_scr(status: INTEGER) FROM klutils
ROUTINE clear_ln(p_file_name: FILE; status: INTEGER) FROM klutlext
ROUTINE att_stnd_win(status: INTEGER) FROM klutils
ROUTINE clr_fscr FROM klutlext
ROUTINE prompt_box(p_dict_name: STRING;
p_dict_ele: INTEGER;
p_curr_item: INTEGER;
p_resp_type: INTEGER;
p_response: INTEGER) FROM klutlext
ROUTINE prompt_box_s(p_dict_name: STRING;
p_dict_ele: INTEGER;
p_string: STRING;
p_curr_item: INTEGER;
p_resp_type: INTEGER;
p_response: INTEGER) FROM klutlext
ROUTINE prompt_box_d(p_device: INTEGER;
p_dict_name: STRING;
p_dict_ele: INTEGER;
p_curr_item: INTEGER;
p_resp_type: INTEGER;
p_response: INTEGER) FROM klutlext
ROUTINE tp_enabled: BOOLEAN FROM klutlext
ROUTINE strg_to_int(text:STRING): INTEGER FROM klutlext
ROUTINE int_to_strg(int:INTEGER):STRING FROM klutils
ROUTINE clr_ct06 FROM klutlext
ROUTINE pwd_level(p_pwd_const: INTEGER) : INTEGER FROM klutils
ROUTINE pwd_lvl_set(p_pwd_const: INTEGER;
p_level: INTEGER) FROM klutils
ROUTINE pwd_test(p_pwd_const: INTEGER;
p_prmp_file: FILE;
p_dev_stat: INTEGER;
p_connect_id: INTEGER) : BOOLEAN FROM klutils
ROUTINE pwd_logout(p_device: INTEGER) -- (in) password device to login
FROM klutils
ROUTINE pwd_login(p_username: STRING; -- (in) name of the user
p_password: STRING; -- (in) password of the user
p_device: INTEGER; -- (in) password device to login
p_logout: BOOLEAN; -- (in) logout current user if required
p_loginname:STRING; -- (out) name of the logged in user
p_status: INTEGER) -- (out) returned status
FROM klutils
ROUTINE feature(p_feature:STRING): BOOLEAN from klutils
ROUTINE check_home:INTEGER from klutils
ROUTINE noprv_load(p_file_name:STRING; p_status: INTEGER) from klutils
ROUTINE apckactv(p_softpid:INTEGER): BOOLEAN from klutils
ROUTINE ap_proc_dsb(p_taskid: INTEGER):BOOLEAN FROM klutils
Display More
warhound96 , I'm not sure to understand. If you want access of key button "enter" you need to swicth Rw=1 .