Transkript
1 COMAU C3G ROBOT EĞİTİMİ ISO TR 8373 tanımına göre endüstriyel robot, üç veya daha fazla programlanabilir ekseni olan otomatik kontrollü, programlanabilir, çok amaçlı, bir yerde sabit duran veya tekerlekleri olan endüstriyel uygulamalarda kullanılan manipülatördür. Amerikan Robot Enstitüsü ise robot tanımını, "programlanabilir, çok fonksiyonlu, malzemeleri, parçaları, aletleri ve özel aygıtları taşıyabilir ve çeşitli programlanmış fonksiyonları yaparak çeşitli görevleri yerine getirir" şeklinde yapmaktadır. Japonya'da ise robot, hafıza aygıtı takılmış, rutin işleri yaparak insanın yerini alabilen, belirlenmiş hareketleri otomatik olarak yerine getirebilen, ekipmanı tamamen sağlanmış makine olarak tanımlanmaktadır. Robot kelimesi ilk olarak 1921 yılında Çekoslovak oyun yazarı Karel Capek tarafından yazılan Rossum's Universal Robots adlı bilimsel oyunda kullanılmıştır. Robot kelimesi Çekçe'de köle gibi çalışan anlamına gelen "robota" ve "robotnik" kelimelerinden türemiştir. Robotun
2 tarihçesine bakılacak olunursa 3000 yıl önce robot fikri üzerine roman yazımı ile başlayan gelişme, M.Ö. 1000'de abaküsün icadı, 1623'te dört fonksiyonlu hesap makinesi, 1801 'de otomatik dokuma tezgâhları, 1938'de programlanabilir sprey boyama makinesi, 1939'da ilk elektronik bilgisayar, 1956'da ilk programlanabilir robot tasarımı, 1973'te ilk minibilgisayar kontrollü endüstriyel robot olarak süregelmiş ve günümüzdeki yapay zekâlı gelişmiş endüstriyel robotlara ulaşmıştır. TEACH PENDANT TUŞLAR VE KOMUTLAR: U1:Weld Timer. Execute ve Inculute yapar. U2:Weld On-Off U3:Yanıyor ise timer ile ilgili alarm yoktur.basıldığında timer ile ilgili alarmlar resetlenir. U4: Yedek A1:punta ile ilgili parametreleri görmemizi sağlar.weld program noyu görürüz. A2:eğer robot sialer robotuysa kullanılır. REC:Yeni bir Liner,Joint hareket satırını oluşturur. T1:Tabanca yarım açık T2:Tabanca tam açık Back:Geriye alma Step Dısb:Startı sürekli hale getirir. MOD:Hareket satırını kaydetme.final posisyonunu gördükten sonra. JoıntPos( JNTPOS):Eksene göre kayıt. Nokta sonunda JNT yazar. POS:Tabancaya göre kayıt yapar. Nokta sonunda PNT yazar. FLY: Nokta tanımlanır. Dairesel hareketlerde kullanılır. 1.noktadan sonra ikinciye uğrar fakat durmadan 3.noktaya geçer.bu üç noktayıda aynı satır içinde tanımlarız.daha çok sealer uygulamalarında kullanırız. JNT:Eksenlerin en rahat şekliyle gider. LİNER: X-Y-Z olarak hareketle, düz olarak gider. CIRC:Dairesel hareket. 3 nokta verilir. 1.nokta: başlama noktası 2.nokta: orta nokta 3.nokta: bitiş noktası Kayıt ederken 2.noktadan 3.noktaya git şeklinde kayıt eder.1.noktayı zaten Rec yaptığımızda tanımlamış oluruz. EXUC:Robot stroke end alarmı verirse yani eksen zorlanması varsa bu tuş ile bu alarm 30 sn. Devreden çıkartılır. ARM:Tool değiştirmede kullanılır. TYP:coordinat sistemi seçimi. Tool, User,Joint EZ:Yeni program çağırma. EZ- Program no Enter Star+Step Diseb:Hareketi sürekli hale getirir. ARM:Tool değiştirmede kullanılır. USER:Herhangi bir düzlemde X-Y-Z koordinatlarını kendim ayarlarım. Comau Robotlarında iki çeşit programlama dili vardır. EZ ve PDL programlama dilleridir.
3 EZ kullanıcı ile TP arasında arayüz programıdır. PDL yeni program açma,yeni rutin oluşturma,aynı rutin ve programları EXPORT ederek başka programlarda da kullanama gibi vs.. işlemleri yapabiliriz. Pcint:Teacpendant üzerindeki görüntüyü pc,e görmemiz için kullandığımız bir programdır. Comau Robot Program Yapıları: Program 0: Robotun ana programıdır. Diğer programlar ; program1,program2,program33,program34 vs.. bunun içindedir. Program 0 içinde sürekli bir cycle vardır.robot otomotik konumdayken ve home pozisyonundayken sürekli tarama yapar. Goto 1_1 satırını okur ve 1_1,den tekrar başlar.bu sırada eğer PLC,sen uygun şarlar gelirse gelen şarta göre program seçer. Çift tabancalı robotlarda MOVE TO pnt0001 j satırı gun 1 için home pozisyonu,, MOVE TO pnt0002 j satırı gun 2 için home pozisyonudur.bu satırlar global satırlardır ve her programın içinde kullanılır. Program 1: Short model için kullanılır.bu programın içinde modellere göre model rutinleri,flap açmakapama,çene açma-kapama,tipdress,tipchange,toolchange,balans,weld vs..programlar vardır. Buradaki rutinler IF sorgulaması ile döngüye dahil edilir. IF BIT_TEST($WORD[28],16 ON ) Camlı araç eğer buradaki word 26 bıt 16 ON geliyorsa robot bu IF içindeki ilgili routini çalıştırır.gelmiyorsa endıf satırını okuyup devam eder.aynı IF döngüsünde farklı rutinler çalıştırmak istersek ; IF BIT_TEST, ELSE, Komutlarını kullanırız. Program 2: Long model için kullanılır.bu programın içinde modellere göre model rutinleri,flap açmakapama,çene açma-kapama,tipdress,tipchange,toolchange,balans,weld vs..programlar vardır. Buradaki rutinler IF sorgulaması ile döngüye dahil edilir.
4 Program33: Tipdress programısır.tek tabancalı programlarda tk bir rutin vardır.çifttabancalı programlarda ravv_cg ve ravv_xg olmak üzere tabanca tipine göre isimlendirilmiş iki adet rutin varır. BIT_SET($WORD[102],1) komutuyla kalemtraş başlatılır BIT_CLEAR($WORD[102],1) komutuyla kalemtraş dururulur. Pre_alarm_test:timer da girilen stepper değerlerine göre kalamtraşa gitmesini sağlar. Program34: Program 34 tıpchange programıdır.manuel yada otomotik olarak çalıştırılır.timerda ayarlanan punta sayısı kadar puntayı atar ve punta adeti dolduğunda elektrod değişimine gider. Checkgun: Robotun adaptörlerini kontrol ettiğimiz manuel olarak civi noktasına görürdüğümüz bir programdır. Robot bu notaya giderken normal punta noktasına gidiyormuş gibi balans,press1 vs. Rutinlerini çalıştırıp gider. Hareket Satırı Yazma: Program içinde REC tuşu ile yeni bir hareket satırı oluştururuz. Kaynak Satırı Yazma: Ins Appl Weld 1(1.program için 1) Enter False Not:kaynak satırı için öncelikle hareket satırı oluşturmamız gerekir. Spot Noktası Yazma: Open Program Spot.Lib.Cod Shıft+Help Open Program Program. * File name= Spot.Lib.Cod Shıft+Help WP---istediğimiz ismi yazarız--- Save Program No(düzeltme yaptığımız program noyu yaz) Wp. Yaz. Program İçinde Çene Açma-Kapama Satırı Yazma: Ins Set Hand Open yada Close Open Hand1:Çene yarım açık Open Hand2:Çene tam açık. Programdan Satır Silme: Kürsörü silmek istediğimiz satırın üzerine getirip SHIFT +DEL tuşlarına aynı anda basarız. Program İçinde Bilgi Satırı Yazma: Ins Lıne Char Program İçinde Nokta Bypasslama: Hangi satırı bypass yapıcaksak o satırın üzerine gelerek Chng Comm yaparız. Delay Komutu: Ins Flow Delay Enter istenilen süreyi yaz.
5 Begin:Başlangıç komutu. END MOVE:Kaynak satırı ile beraber oluşur.kaynak bitti komutu. Satırlar Arasına Boşlu Verme: Ins Line Enter Return Komutu Yazma: Geri dönüş komutudur. Ins Cool Rtrn Move L olan satırı Move J yapma: Chng Motn Jnt Yes Enter Robotu Kalibrasyon Pozisyonuna Götürme: (F3)Exec Shıft+Help Move Arm(1) To $ Cal_Sys Enter Enter Enter Start Kalibrasyonda Kaçıklık Var İse Yeniden Bu Değerlerin Yüklenmesi: Conf Arm Rmem Load (1) Yes Cont_Save ( SM yükleme ) Kalibrasyon Değerlerinin Okunması: Conf Arm Vcal (1) eğer panoya bir robot bağlıysa 1 değerini gireriz. Hangi Eksenin Kalibrasyonunun Olmadığını Görme: Display Arm Status 1 Enter Eğer Turn= ise robot kalibrasyondadır. Eğer Turn=1 2 3 _ 5 6 ise 4.eksenin kalibrasyonu yoktur. Kalibrasyon Ayarlama: Conf Arm Turn1 Enter Arızaları Görme: Filr Util Sear Shift+Help Error Log Enter Buradan robotun o anki ve geçmişteki son 20 arızasını görebiliriz. Tabanca Tam Açık-Yarım Açık İnputlarını Görme: Disp İnp DIN 1 Enter 2.İnput 1 ise çene tam açık 3.İnput 1 ise çene yarım açık 2-3 İnputları her ikiside 0 ise çene tam kapalıdır. Hız Satırı Yazma: Ins Var ARM_SPD Robotta hareketleri istediğimiz yerde hızlandırıp yavaşlatabiliriz.
6 P P P P4 %15 %80 %100 Move Joint P1 $ ARM_SPD : =15 Move Joint P2 $ ARM_SPD : =80 Move Joint P3 $ ARM_SPD : =100 $ARM_OVR:=100 $ARM_SPD_OVR:=50 $SPD_OPT:=SPD_LIN $LIN_SPD:=1 MOVE LINEAR TO pnt0001p MOVE LINEAR TO pnt0002p, WITH $LIN_SPD:=0.5 END MOVE MOVE LINEAR TO pnt0003p, WITH $ARM_SPD_OVR:=100 WITH $LIN_SPD:=0.5 END MOVE MOVE LINEAR TO pnt0004p Hızlanma Zamanı Sabit Hız Yavaşlama Zamanı $GEN_OVR:=50 (2.5 sn. Verilen hızın yarısı kadar hızla çalışır) $ARM_OVR:=50(5sn. Verilen hıza daha çabuk ulaşır) $ARM_ACC:=5(Hızın yükselme zamanı) $ARM_DEC:=5(Yavaşlama zamanı) $ARM_SPD:=50(sabit hızı) MOVE LINEAR TO pnt0001p $ARM_ACC_OVR:=50 MOVE LINEAR TO pnt0002p, WITH $ARM _DEC_OVR:=50 END MOVE MOVE LINEAR TO pnt0004p Noktaya Yaklaşma Açısı:
7 Nosette: yavaş yaklaşma Coarse :kaba yaklaşma (1.5 mm. Hassasiyet ile yaklaşır) Fıne :hassas yaklaşma ( 0.5 mm. hassasiyet ile yaklaşır) Program içerisinde yazılış şekli: $TERM_TYPE:=FINE Koordinat Sistemi: Tüm Programların COD ve VAR dosyalarını Kopyalama: Filr copy pr. * Dairesel Hareket ( cırc motion): P3. P1.----P2..P P5 CIRC komutta p2,yi kaydettikten sonra robotu p3 noktasına getirip CIRC seçip REC yaparız.robotu p4,e getirip modpos yaparız.yes Enter yaparız. FLY Hareket : P3
8 P P2 P4...P5 Robot p2,den p3,e lineer gider.p3,ün yakınından geçip p4,e gider.p3,de durmaz. $FLY_PER:=50 (noktanın yanından geçme mesafesi) Sıcura Programını Skıpleme: Char sağ tuş shıft+sel char yes Shıft+Sel Kaynak Satırı Ekleme: Ins Appl Spot Weld Progno False Enter Yeni bir kaynak satırı ekleyebilmek için hareket satırının bitiminde END MOVE olması gerekir, bunu koymak için stır sonuna Virgül konulur. Kaynak Satırı İptal Etme: WITH CONTITION FALSE Chg com Weld Program No Değiştirme: Chng( F3 ) Line( F5) Hangi program ile kaynak yapmak istiyorsak onu gir. Input FORCE İşlemi: Set( F7) Inp(F3) Forc(F1) DIN(F2) Port Index: Hangi input Force yapılacaksa onu yaz. FORCE İşlemini İptal Etme: Set (F7) Turnf(F5) Yes EZ_PDL2 Yükleme: Filr Unıtl Inst Shıft+Help EZ_PDL2 APPL Enter Enter Conf Cntl Rstr Cold Yes Robot Çalışırken PDL,de programı Görme: Robotu manuele alırız. Prog Edit Prog no gir otomotiğe al exıt oklarla bakarız. PDL,deki Programı EZ,de çalıştırma: Chng Enum Yes(Y) Enter Prog Edit Shift+Help Check.Cod Enter Enter Shift+ yukarı tuş Program check Bir boşluk bırak EZ yaz Save Exit Mem Load Check.Cod Yes(Y) Enter
9 PDL,de Programı Çalıştırma: Dspl Prog hangi programın aktif olduğunu gör buradan prog(0) deactıve et hangi programı kullanacaksan : Prog Edit Shift+Help Program seç Run Run Start Program İçinde Satır Silme: Shift+Del yaparak satırı silebiliriz. Program İçinde JUMP komutu kullanma: Ins Flow Goto arası bir adres. Ins Flow Labl arası bir adres. Not:Goto adresi ile Labl adresi aynı olmalı. Robot İçin TCP Tanımlama. SETp var Pos Jnt Pos Tabanca İçin TCP Tanımlama: Tbl(F5) Tool Edit Tabanco no gir Y Z X Tabanca ucunu X,e getirip F1(X) yap Tabanca ucunu X,e getirip F2(Y) yap Tabanca ucunu X,e getirip F3(Z) yap Tbl Tool View Tabanca üzerinki değerleri sırayla gir. Programa TOOL Tanımlama. Ins Caol +BI Tool tanıttıktan sonra startlayarak programı çalıştır. Robotta Profibus Adresini görme. A1 View Comm PFDP(profibusDP) Slave Type:PRIMARY
10 System Words: 1 User Words: 3 Privileged Words:0 Slave Adress:116 ( PROFİBUS ADRESİ) Id Number: 1185 Not:Slave Profibus adresi hariç diğer değerler tüm robotlarda standart. Profibus ON olmuyorsa: Filr Unitility Inst RI_ınst Cold Start Profibus Run Olduğunu Görme: Dspl(F2) Fbus(F3) Slv(F2) PFDP=Run Olmalı, eğer stop ise profibus PLC ile haberleşmiyordur. Profibus Adresini Tanımlama: Prog View Shift+Help RI_Inst.cod.( *. pdl.cod disketini yükle) Prog Go RI_Inst.cod Mem Erase Prog EZ. * Prog Prog. * Prog Tool. * Go RI_Inst.cod PFP/MOD: (ekranda sorular gelir) NO YES Profibus adresi gir YES NO NO YES Save.Mod Save Conf Cont Restart Wormstart Prog Act View buradan aktif olup olmadığını görürüz. Profibus Devre Dışı Bırakma: Exec Smt: BIT_SET ( $ PROFDP_INIT [ 1 ], 2) Profibus Devreye Alma: Exec Smt: BIT_CLEAR ( $ PROFDP_INIT [ 1 ], 2) Tıp Dress Zamanının Ayarlanması: Edit Par(F1) Dress(F1) 2000ms.. vs..
11 Elektrod Değişiminden Sonraki Zaman: Edit Par(F1) Hand(F1) 2000ms.. vs.. Tıp Dressing Resetleme: Exec Smt: BIT_SET ( $ WORD [ 101 ], 6) Exec Smt: BIT_CLEAR ( $ WORD [ 101 ], 6) Tıp Change Resetleme: Exec Smt: BIT_SET ( $ WORD [ 101 ], 7) Exec Smt: BIT_CLEAR ( $ WORD [ 101 ], 7) Exec Smt: Shıft+Help CAL (Resume Arm1) Enter LOCK yazıyorsa UNLOCK ARM Enter Enter Eğer Exec,den UNLOCK olmuyorsa : Ins(F2) Line(F7) Shıft+char ile UNLOCK yaz. Hava Basıncı Ayarı: U1 Smt: INC_APPL(ON) Enter Context.Prog:Sb_Apll. Tabanca Çeneler Açılmadığında, Hava Basıncı Yetmediğinde. Bu urumda tabanca silindirinde problem olabilir.hava kayıpları vardır,silindirde çizilmeler vardır vs.. Exec PRESS(1) Enter Enter Smt Press(1) Prog.Contex Shıft+Help Sb- Appl Enter U1,U2,U3, ON yap. T1ve T2 ile tekrar açmayı dene Trafo Thermal Switch Kontrol Etme: A2 Wiew I/O listesinden Slot4 içinde Robot üzerinde tabanca varken sürekli 1,dir. Owertemperature Alarmını Bypasslama: Trafo aşırı ısınma alarmıdır.trafo soğutma suyunun yetersizliğinden yada trafo su kanallarının tıkanmasınan kaynaklı olabilir. X90- X X30 95 X90- J X X30 95 Ve 104 Nolu uçları köprüle. Spot Librari Spot İlave Etme: Mem Load Program Name(OPT): SPOT_LİB Enter Robotu Kaynaksız Çalıştorma: Exec INCL_APPL(OFF) Enter Contex_Program=Shıft+Help Sb_appl,yi rutinlerden seç Robotu Kaynaklı Çalıştorma: Exec INCL_APPL(ON) Enter Contex_Program=Shıft+Help Sb_appl,yi rutinlerden seç
12 Tool Change Outputları: DOT:25=OFF Take Gun DOT:26=ON DOT:25=ON Leave Gun DOT:26=OFF Robottan End Off sinyali gönderme: Word 18, Bit 6 = 1 yap Robottan Home sinyali gönderme: Word 18, Bit 1 = 1 yap Cold Start İşlemi: Conf Cntl Rstr Cold Enter Y Enter EZ mod kilitlendiğinde,save edilmeyen eski programları geri alma işlemlerinde cold start yapmak gerekir. Program Reset İşlemi: Prog Reset Y Enter Programı başa almak için yapılır. Programları Save Etme: Prog open Save All Y Programlarda herhangi bir değişiklik yapıldıysa bunları kaybetmemek için yapılır. Robot RES olmuşsa bunu kaldırma: Exec: Resume ARM[1] Enter TP,nin üst kısmında CAL yerine RES yazıyorsa bu işlem yapılır. Const: Burada robotun sinyallerine isim veririz.word ve bitlere buradan istediğimiz ismi verebiliriz.örneğin home pozisyon sinyali word18 bit 1,dir. Program içinde bu sinyali BIT_SET ($WORD[18],1) kullanabiliriz.bu sinyalleri kolay bir şekilde anlamak için const,ta tanımlamalıyız. CONST --\\\\\\\\\\\\\\\\\\\\\\ --\\ profdp inputs and --\\ outputs addresses --\\\\\\\\\\\\\\\\\\\\\\ --\\ robot outputs --\\\\\\\\\\\\\\\\\\\\\\ home_position = 1801 tipchng_running = 1803 tipchange_pos = 1804
13 tipdressing = 1805 end_of_program = 1806 program_in_execution = 1807 end_of_weld_1 = \\ orange lamp blinks prealarm_elec = \\ orange lamp on alarm_elec = 1813 workarea_free_to_op = \\\\\\\\\\\\\\\\\\\ --\\ robot inputs --\\\\\\\\\\\\\\\\\\\ start_program = 2601 req_tipchng = 2609 tipchange_done = 2610 req_tipdress = 2613 workarea_free_from_op = \\\\\\\\\\\\\\\\\\\ --\\ robot flaps --\\\\\\\\\\\\\\\\\\\ open_flap1 = 2001 close_flap1 = 2002 open_flap2 = 2003 close_flap2 = //* flap1_open = 2801 flap1_close = 2802 flap2_open = 2803 flap2_close = 2804 Exported(Çağırma): Herhangi bir programıbir başka rutin yada programın içinde kullanmak istersek bunu exported yapmalıyız. Bütün programları kandi başına açarız ve daha sonra nerede kullanmak istersek o programa yazılıp exported ederiz. Eğer exported edilmezlerse kullanılamazlar.örneğin ez_ulib programının içinde magazin kapaklarının açılıp kapanması için Ve bunların sinyal kontrolü için rutinler vardır.hangi programda çalışmasını istiyorsak o programın PDL,de ilgili satırın altına Open _flaps yazmak yeterlidir.fakat exported edileceği zaman bunların içindeki rutinler tek tek exported edilmelidir. Kapağın Açılması için ROUTINE open_flap1 EXPORTED FROM ez_ulib denilir.açık olduğunun kontrolü ve kapatmak için rutinler vardır.bu rutinler tek tek yazılıp ez_ulib,den exported edilir. Örneğin: VAR
14 time_swb : INTEGER EXPORTED FROM ford time_lwb : INTEGER EXPORTED FROM ford model : INTEGER EXPORTED FROM prog_0 stepper1 : BOOLEAN EXPORTED FROM prog_0 stepper2 : BOOLEAN EXPORTED FROM prog_0 pnt0001j : JOINTPOS home_pos : JOINTPOS EXPORTED FROM lrobot ROUTINE press(ai_wprog : INTEGER) EXPORTED FROM sb_appl ROUTINE tf(ai_tool_idx, ai_frame_idx : INTEGER) : INTEGER EXPORTED FROM tt_tool ROUTINE rtf(ai_rmt_tool_idx, ai_rmt_frame_idx : INTEGER) : INTEGER EXPORTED FROM tt_tool ROUTINE z(ai_zone : INTEGER) : INTEGER EXPORTED FROM hmove ROUTINE vl(ar_lin_spd : REAL) : REAL EXPORTED FROM hmove ROUTINE ver EXPORTED FROM hmove ROUTINE v(ai_spd : INTEGER) : INTEGER EXPORTED FROM hmove ROUTINE orn(ai_orn_type : INTEGER) : INTEGER EXPORTED FROM hmove ROUTINE mp(ai_ref, ai_spd, ai_zone : INTEGER) : INTEGER EXPORTED FROM hmove ROUTINE gp(ai_ref : INTEGER; ar_lin_spd : REAL; ai_zone, ai_orn_type : INTEGER) : INTEGER EXPORTED FROM hmove ROUTINE ap(ai_ref, ai_orn_type : INTEGER) : INTEGER EXPORTED FROM hmove ROUTINE check_home EXPORTED FROM prog_0 ROUTINE reset_ios EXPORTED FROM prog_0 ROUTINE close_flaps EXPORTED FROM prog_0 ROUTINE open_flaps EXPORTED FROM prog_0 ROUTINE check_stepper EXPORTED FROM prog_0 ROUTINE gun_stepper2 EXPORTED FROM prog_0 ROUTINE gun_stepper1 EXPORTED FROM prog_0 ROUTINE check_stepper2 EXPORTED FROM prog_0 ROUTINE check_stepper1 EXPORTED FROM prog_0 ROUTINE weld_init EXPORTED FROM sb_appl ROUTINE dcp_fault(ai_numero_allarme : INTEGER; as_mod_name : STRING) EXPORTED FROM lrobot ROUTINE code_prg : INTEGER EXPORTED FROM lrobot ROUTINE home_check EXPORTED FROM lrobot ROUTINE sendsig(n : INTEGER; stato : BOOLEAN) EXPORTED FROM lrobot ROUTINE waitsig(n : INTEGER; stato : BOOLEAN) EXPORTED FROM lrobot ROUTINE a_tool(ai_t_idx : INTEGER) EXPORTED FROM tt_tool ROUTINE l30lhr2_swb EXPORTED FROM prog_1 ROUTINE l30lhr2_lwb EXPORTED FROM prog_2 ROUTINE l30lhr1_swb EXPORTED FROM prog_1 ROUTINE l30lhr1_lwb EXPORTED FROM prog_2 ROUTINE l30rhr2_swb EXPORTED FROM prog_1 ROUTINE l30rhr2_lwb EXPORTED FROM prog_2 ROUTINE l30rhr1_swb EXPORTED FROM prog_1 ROUTINE l30rhr1_lwb EXPORTED FROM prog_2 ROUTINE x20lhr2_swb EXPORTED FROM prog_1 ROUTINE x20lhr2_lwb EXPORTED FROM prog_2
15 ROUTINE x20lhr1_swb EXPORTED FROM prog_1 ROUTINE x20lhr1_lwb EXPORTED FROM prog_2 ROUTINE x20rhr2_swb EXPORTED FROM prog_1 ROUTINE x20rhr2_lwb EXPORTED FROM prog_2 ROUTINE x20rhr1_swb EXPORTED FROM prog_1 ROUTINE x20rhr1_lwb EXPORTED FROM prog_2 ROUTINE x20lhr3_swb EXPORTED FROM prog_1 ROUTINE x20lhr3_lwb EXPORTED FROM prog_2 ROUTINE x20lhr4_swb EXPORTED FROM prog_1 ROUTINE x20lhr4_lwb EXPORTED FROM prog_2 ROUTINE x20rhr3_swb EXPORTED FROM prog_1 ROUTINE x20rhr3_lwb EXPORTED FROM prog_2 ROUTINE x20rhr4_swb EXPORTED FROM prog_1 ROUTINE x20rhr4_lwb EXPORTED FROM prog_2 ROUTINE x30lhr2_swb EXPORTED FROM prog_1 ROUTINE x30lhr2_lwb EXPORTED FROM prog_2 ROUTINE x30lhr1_swb EXPORTED FROM prog_1 ROUTINE x30lhr1_lwb EXPORTED FROM prog_2 ROUTINE x30rhr2_swb EXPORTED FROM prog_1 ROUTINE x30rhr2_lwb EXPORTED FROM prog_2 ROUTINE x30rhr1_swb EXPORTED FROM prog_1 ROUTINE x30rhr1_lwb EXPORTED FROM prog_2 ROUTINE x30lhr3_swb EXPORTED FROM prog_1 ROUTINE x30lhr3_lwb EXPORTED FROM prog_2 ROUTINE x30lhr4_swb EXPORTED FROM prog_1 ROUTINE x30lhr4_lwb EXPORTED FROM prog_2 ROUTINE x30rhr3_swb EXPORTED FROM prog_1 ROUTINE x30rhr3_lwb EXPORTED FROM prog_2 ROUTINE x30rhr4_swb EXPORTED FROM prog_1 ROUTINE x30rhr4_lwb EXPORTED FROM prog_2 ROUTINE service EXPORTED FROM prog_34 ROUTINE tipdress EXPORTED FROM prog_33 ROUTINE incl_appl(ab_sts : BOOLEAN) EXPORTED FROM sb_appl ROUTINE main EXPORTED FROM prog_0 COMAU ROBOTTA KALİBRASYONUN AYARLANMASI Robotun kalibrasyonu doğruysa, Teach Pendant da ekranın sağ üst köşesinde Ar:CAL yazar ; eğer herhangi bir şekilde eksenlerin bir veya birkaçında kaçıklık olduysa Ar:Turn yazar ki bu da Turn değerlerinin ayarlanmasını gerektirir. NOT : Eğer Ar: --- yazıyorsa bu kalibrasyon yapmak gerekiyor anlamına gelmez, kalibrasyon bilgilerini Flash Memory den çağırmak yeterlidir. Bunun için şu komutları kullanırız : Configure Arm Reten_Mem Load (CARL)
16 Hangi eksen(ler)de problem olduğunu görmek için durum penceresinin altındaki komutlardan sırayla Display Arm Status (DAS) seçilir. Örnek : Cal : Turn : 12_456 Örnekten de görüldüğü gibi açılan pencerede problem olan eksenin numarası gözükmüyor. Sadece bu eksenin turn değerini ayarlamak yeterlidir. Eğer Cal numaralarından herhangi biri gözükmüyorsa, bu kalibrasyon sabitlerinde problem olduğunu gösterir. Bu durumda robot panosunun içindeki kağıttan daha önce kaydedilmiş kalibrasyon sabitlerinin TP dekiyle aynı değerler olup olmadığı kontrol edilir. TP deki değerler Configure Arm Vcal (CAV) komutlarıyla görülür. Farklılık varsa ilk olarak kalibrasyon işlemi yapılmalıdır( İşlemi yaparken Dr:ON olmalıdır. ) 1) İşlem yapılacak ekseni uygun konuma getirdikten sonra Configure Arm Calibrate (CAC) komutları seçilir, Arm numarası girilir (1), eksen numarası girilir, şifre girilir ve Yes komutu seçilir. Eğer koordinat, kağıtta yazanla birebir tutmuyorsa ki bu ilk denemede çok zor, bu işlem robotun hızı düşürülerek daha hassas bir şekilde aynı rakamı tutturana kadar yapılmalıdır. 2) Kalibrasyon sabitleri ayarlandıktan sonra Turn-Set değerlerini de ayarlamak gerekir. Bunun için hareket şekli JNT olmalıdır(typ tuşuyla seçilir.) ve robot hızının da düşük olması gerektiği unutulmamalıdır( İşlemi yaparken Dr:ON olmalıdır. ). Configure Arm Turn_Set (CAT) komutları kullanılarak eksenler sırayla kalibrasyon çizgilerine getirilerek ayarlanır; milimetrik ayar yapmak gerekli değildir. Eğer çok kaçıklık olursa nolu arızalar ekranda gözükür uyarısı geliyorsa + yönde ; uyarısı geliyorsa yönde ayar yapmak gerekir. 3) Robot kalibrasyon pozisyonunun doğruluğunu gözle kontrol etmek için menüden EXEC : SHIFT +HELP tuşlarına birlikte basarak çıkan komutlar menüsünden MOVE TO $CAL.SYS seçilir ve 2 defa ENTER tuşuna basılır. Dr:ON butonuna basıldıktan sonra düşük hızda START tuşuna basılarak robot kalibrasyon pozisyonuna gönderilir ve kalibrasyon çizgilerinin her eksen için ayrı ayrı tutup tutmadığı kontrol edilir. *** Eğer TURN değeri kaybolmamışsa ve ayarlamak istiyorsak programları deaktif etmemiz gerekir. BACKUP İKİ ŞEKİLDE ALINIR 1-DİSKETE BACKUP ALMA 2-PG, YE BACKUP ALMA DİSKETE BACKUP ALMA PROSÜDÜRÜ : 1-DİSKET BOŞMU KONTROL ET 2-DİSKETİ ROBOT FLOPY,SİNE YERLEŞTİR
17 2-TEACPENDANT ÜZERİNDEN Filr (F4)---Util (F7)---Bkup (F2) MENÜLERİNİ SEÇEREK KOMLE BACKUP ALIRIZ DİSKETTEN BACKUP YÜKLEME : 1- Fılr (F4)---Copy (F1)---Sour file (OPT) (*) : FD : ---- Dest filename (*) : RD: MENÜLERİNİ KULLANARAK KOMPLE BACKUP YÜKLERİZ. PG, YE BACKUP ALMA : 1-BACKUP KABLOSUNU PG ÜZERİNDE COM_1 KONNEKTÖRÜNE TAK 2-KABLONUN DİĞER UCUNU ROBOT ÜZERİNDEKİ COM P KONNEKTÖRÜNE TAK 3-PG İÇİNDE C DOSYASINDA ÖRNEĞİN A ADINDA BİR KLOSÖR AÇ 4-DAHA SONRA PCINT PROGRAMINI AÇ 5-DOWLOAD SYSTEM SOFWARE SEÇENEĞİNİ SEÇ 6-C : / PCINT YAZISI ÇIKAR BURADA ESC TUSUNA BAS 7-COM 1 - COM 2 ÇIKAR COM 1 SEÇ VE ROBOTU MANUELE AL 8- Filr(F4)----Copy (F1)--- )---Sour file (OPT) (*) : *.* YAZIP ENTER TUŞUNA BAS DAHA SONRA ALT + D TUŞLARINA BAS. BURADA KARŞIMIZA C : PCINT YAZISI ÇIKAR, PCINT YAZISINI SİLİP DAHA ÖNCEDEN C DOSYASINDA AÇYIĞIMIZ ( örneğin A klasörü ) KLOSÖRÜN ADINI YAZARIZ. SONRA Dest filename (*) : YAZISI CIKAR BURAYA COMP : YAZIP ENTER,LARIZ. BACKUP ALMAYA BAŞLARIZ. ALT + X YAPARAK PROGRAMDAN CIKARIZ.EN SON EXIT YAPARAK PROGRAMI KAPATIRIZ. PG, DEN BACKUP YÜKLEME : 1-BACKUP KABLOSUNU PG ÜZERİNDE COM 1 KONNEKTÖRÜNE TAK. 2-KABLONUN DİĞER UCUNU ROBOT ÜZERİNDEKİ COM P KONNEKTÖRÜNE TAK 3- PG İÇİNDE C DOSYASINDA ÖRNEĞİN A ADINDA BİR KLOSÖR AÇ 4-DAHA SONRA YÜKLEYECEĞİN PROGRAMI YENİ AÇTIĞIN DOSYANIN İÇİNE YÜKLE. 5- PCINT PROGRAMINI AÇ C : / PCINT YAZISI ÇIKAR BURADA ESC TUSUNA BAS COM 1 - COM 2 ÇIKAR COM 1 SEÇ VE ROBOTU MANUELE AL 6- Filr(F4)----Copy (F1)--- )---Sour file (OPT) (*) : COMP :YAZIP ENTER TUŞUNA BAS DAHA SONRA ALT + D TUŞLARINA BAS. BURADA KARŞIMIZA C : PCINT YAZISI ÇIKAR, PCINT YAZISINI SİLİP DAHA ÖNCEDEN C DOSYASINDA AÇYIĞIMIZ ( örneğin A klasörü ) KLOSÖRÜN ADINI YAZARIZ. SONRA Dest filename (*) : YAZISI CIKAR BURAYA RD :YAZIP ENTER,LARIZ. BACKUP YÜKLEMEYE BAŞLARIZ. ALT + X YAPARAK PROGRAMDAN CIKARIZ.EN SON EXIT YAPARAK PROGRAMI KAPATIRIZ. NOT: EĞERKİ KOMPLE BACKUP YÜKLEMESİ YAPTIYSAN COLD START YAP. SADECE BİR PROGRAM YÜKLEDİYSEN O PROGRAMI MEMORY LOAD YAPMAK YETERLİDİR
18 C3G ROBOTLARDA SOFTWARE YÜKLEME - Laptopımızda herhangi bir sürücüye (c sürücüsü olsun) yeni bir folder(dosya) yaratıyoruz. - Gerekli 3 sistem disketini buraya kopyalıyoruz(1 tanesi o robota ait, 2 tanesi tüm robotlarda genel, versiyon numarasına dikkat etmemiz gerekiyor.).versiyon numarasını robot paneli kapaklarından alabiliriz.yada system disketlerinden o robota ait olan 1/3 içinden C3GLOAD.BCF dosyası notepad ile açarak bakabiliriz.(her notebookta C Sürücüsünde tüm robotların System Disketleri klosöründe bulabiliriz.) C3G load data for S/W version şeklinde yazar. - INSERT DISKETTE NUMBER 2/3, INSERT DISKETTE NUMBER 3/3 satırlarından sonraki WAIT komutlarının önüne! koyarak bekleme kaldırılacak ve save edilecek. - Bu folderın yanına tool.pdl ve tool.doc folderlarını yaratıp içlerine disketleri kopyalıyoruz. (C3G.PDL2.TOOL *.PDL *.DOC) (çok gerekli değil) - WinPcInt programını açıyoruz. - Pano ile laptop arasında parallel port kablosu takılmalı.(daha hızlı yükleme işlemi için,bu şekilde 40 dk işlem 10dk,ya düşüyor.) - - PC de Help-Key mapping altında gerekli kısayollar gösteriliyor. - EXEC komutuyla $CAL_USER:=ARM_JNTP yapıp configure-save yapıyoruz. Robotun home unu kullanıcı kalibrasyon pozisyonu olarak tanıtmak yararımıza olacaktır. Bu sayede sistem disketleri yüklendikten sonra çizgilere almadan home da kalibrasyon işlemi yapabiliriz. - Daha sonra properties açtık. Burada PORT=COM 1 File transfer folder : C:\COMAU ROBOT BACKUPS\C3G\UNDERBODY R1 System download folder : C:\COMAU C3G SYSTEM DISKS\VERSION 5.52\H4 RZDC1470 Bu 2 folder backup ve software bilgilerinin nereden alınacağını gösteriyor. Folderları önceden oluşturmak gerekiyor. - Filer Copy Source yapıp bir şey yazmadan entera basıyoruz, destination olarak COMP: yazıyoruz. Şimdi otomatik olarak backup C sürücüsüne yarattığımız foldera kaydedilir. - Direkt olarak UNDERBODY R1 kısayolunu kullanarak yükleme yaparız. Yaklaşık 4 dakika sürüyor. Bu işlemi yaparken kısayoluna basıp on-line olmalıyız. - Yükleme işlemi bittikten sonra parallel port kablosunu çıkarabiliriz. - Şimdi: Filer Copy Source: COMP:C3G.SYS DEST:C3G.OLD yapıyoruz. Daha sonra Conf Load C3G.OLD ve Conf Save yapıyoruz.
19 - Normal olarak bütün eksenlerin turn olduğunu görüyoruz. Kullanıcı kalibrasyonunu önceden robotun Home pozisyonu olarak tanıttıysak problem yok. Conf Arm Turn yapıp Shift +7 ye basarak tp deki gibi / işaretine basarak opsiyonları çıkarıyoruz ve user kalibrasyon pozisyonunu seçiyoruz. Arm numarasını 1, eksen numarasını * olarak giriyoruz. - Conf Save işlemi sırasında : SCC: RPT/FLASH-MEM bad checksum on hour meter yazısı ekranda (TP) gözükür ama önemli değildir. TP den alarm tuşuna basıp silmek gibi laptoptan CTRL+Home yaparak alarmı cancel ederiz. - Şimdi diğer kalan dosyaları yükleyeceğiz. Filer Copy Source: COMP Dest:boş bırakıyoruz. Bunu yaptıktan sonra ekrana not all files transferred yazısı gelir, önemli değil; C3G.SYS ve ERROR.LOG dosyalarının üzerine yazılamadığı için olur. - Daha sonra cold-start yapıyoruz ve EZ ile Spot-welding otomatik olarak yükleniyor. - TP de A_SW1B available on CRT yazıyorsa, laptopla bağlandıktan sonra çıkarken SWAP yapmayı unutmuşuz demektir. - C3G de software yüklerken bir şekilde sistem tekrar bootmon a geçer ve işlem yarıda kalırsa (mesela disketlerde problem varsa) RESET/ INIT yapılıp Y(yes) yapılır. C3G PANOSU RBC2 + SCC2 SAU Motor 300V AC Resolver C4G PANOSU SMP+MCP DSA Motor 600 V AC Encoder MCP : MOTION CONTROL PROCESSOR SMP : SYSTEM MASTER PROCESSOR MCP üzerinde 32 MB lık, SMP üzerinde de 64 MB lık flash memory modülleri var. Bunlar okunabilir, üzerinde işlem yapılabilir fakat biz kullanmayacağız. Formatlanmamalı yoksa bir daha kullanamayız. İçinde COMAU ya ait özel yazılımlar var. Panoda MCP kartı ayrı olarak gözükmüyor, SMP nin içinde hem MCP hem de SMP kullanılarak tek kart yapılmış. Bu kart yandığı zaman, üzerindeki flash memory modülünü alıp yeni karta takıyoruz ve hiç bir yükleme işlemi yapmadan sadece kartı takıp enerjiyi açıyoruz.
20 *** C3G panolarındaki anex modülleri (SCC üzerinde ve 3 tane) analog sinyalleri, dijital sinyale çevirmeye yarıyor. Her 2 eksen için 1 adet anex kartı var. Robot Following error out of range, high current required gibi arızalar veriyorsa, titreyerek hareket ediyorsa veya uzun süre enerji kapalı kaldığında herhangi bir eksenin kalibrasyonu kayboluyorsa bu kart arızalı olabilir. C4G panolarında da aynı mantıkta anex cardları ve eksen kartları (current loop module) var. *** C3G de motor frenlerini dışarıdan kontrol etmek için (herhangi bir şekilde robot kilitlendiğinde) Brake Release Module var (COMAU kodu : CR ). C3G de X30 kablosu 108 pinli idi, C4G de bu sayı 42 pine indirilmiş; IOM modülüne ait kablolar yok, sadece güvenlik devresi elemanlarıyla ilgili kablolar var. C4G de acil stopu devre dışı bırakmak için 27 ve 28 nolu pinler köprüleniyor. WinPCint programında File Transfer Folder backup ı nereye alacağımızı gösterir. NH UD (USER DIRECTORY) : Yapılan robot programları bunun içindedir. Dosyaların üzerine geldiğimizde sağ click,leyerek translate yaptığımızda otomatik olarak PDL e çevirir. Bu işlem sadece dışarıda bir bilgisayarda çalışma yapacağımız zaman gerekli normalde çift tıklayınca gözüküyor. DATA : Tool, Base ve Frame e ait datalar vardır. To-set ten gelen bilgiler var. Bunlar sistem disketleri dışında olan 2 disketin içinde olan bir program. EZ : EZ dosyaları, INST : Install ile ilgili programlar var. SYS : Eski robottaki C3G.SYS yerine NH c4g gibi bir dosya var. , log, util ve vdt kısımlarından oluşuyor. Eski robotta sadece error.log vardı, şimdi action.log da var. SMP : user-programs, system software, application software( EZ, glue, stud,vs...), kalibrasyon parametreleri var. (C3G deki RBC2 ve SCC2 kartlarını kapsıyor) Kartı değiştirdiğimiz zaman bazen System in minimum configuration arızası gelebilir.