ABB Endüstriyel Robot Konusunda Bilgi Paylaşımı

ABB s4 ırb6400 robot ile pc seri port üzerinden bağlantı kurmak için hangi komponentler kullanılıyor.webware server ın kullanıldığını okudum.bunun yanında farklı olarak nasıl yapılabiliyor.
 
Webware server ücretli. Herhangi bir komponent kullanmaya gerek yok.
 
Operatör caya gıttıgınde robotu yarım bırakıyp olabılır bunu takıp etmenı tavsıye ederım.
 
PROC CycleClock()
!
IF not bClockWorking THEN
ClkReset Procclock;
ClkStart Procclock;
bClockWorking:=True;
ELSE
ClkStop Procclock;
nProcclock:=0;
nProcclock:=ClkRead(Procclock);
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPWrite "Cevrim Suresi :"\num:=nProcclock;
bClockWorking:=False;
!
ENDIF




yukardaki Cycle süresini ölçmeye yarıyan basit bir routine bundan yola çıkarak aynı rotutine nin içine bi yama gibi komut eklemeyi düşünüyorum ve ekranda çevrim süresi ile birlikte sayısınıda görmek istiyorum yardımcı olursanız sevinirim
 
Proses programının sonuna bir tane değişken koy.

Örnek:

Proses programı:

PROC Proses()
Uretimsayisi= Uretimsayisi+1
ENDPROC

PROC CycleClock()
!
IF not bClockWorking THEN
ClkReset Procclock;
ClkStart Procclock;
bClockWorking:=True;
ELSE
ClkStop Procclock;
nProcclock:=0;
nProcclock:=ClkRead(Procclock);
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPWrite "Cevrim Suresi :"\num:=nProcclock;
IF bEnableTpwrite TPWrite "Cevrim Sayisi :"\num:=Uretimsayisi;
bClockWorking:=False;
!
ENDIF
ENDPROC

Üretim sayısını sıfırlamak istediğinde bunu Buton yardımıyla yapabilirsiniz.

PROC Sifirla()
if DIUretimSifirla=1 then !Buton inputu
UretimSayisi=0
Endif
ENDPROC
 
fluke öncelikle teşşekür ederim proses programından kastin örneğin bu gönderdiğim servis routininin içindeydi aynı yere bu satırları ilave edip denesem olabilir mi yani şu aşağıdaki:



%%%
VERSION:1
LANGUAGE:ENGLISH
%%%

MODULE SrvSysInit
VAR num FKNumProd;

PROC Homecontrol(\switch noDisplay)
!!
WHILE DOutput(doHome)=0 DO
FKNumProd:=0;
!!
IF DOutput(doPark)=0 THEN
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPWrite "ROBOT HOME POZISYONUNDA DEGIL";
IF bEnableTpwrite TPWrite "HOME POZISYONUNA GIDECEK...";
IF bEnableTpwrite TPWrite " ";
IF bEnableTpwrite TPWrite "ROBOT GUVENLI BIR BOLGEDEYSE OK'YE BASIN";
IF bEnableTpwrite TPWrite "DEGILSE IPTAL'E BASIN VE GUVENLI";
IF bEnableTpwrite TPWrite "BOLGEYE ALIN SONRA TEKRAR DENEYIN";
TPReadFK FKNumProd,"","OK","","","","IPTAL";
IF bEnableTpwrite TPErase;
!!
TEST FKNumProd
CASE 1:
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPWrite "ROBOT BASLANGIC POZISYONUNA GIDIYOR...";
MoveAbsJ jHomePos\NoEOffs,v1000,fine,tGripper;
CASE 2,3,4,5:
Stop;
ENDTEST
ENDIF
!!
IF DOutput(doPark)=1 THEN
!!
Servis_03;
ENDIF
ENDWHILE
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPWrite "ROBOT BASLANGIC POZISYONUNDA";
FKNumProd:=0;
!!
ENDPROC

PROC SrResetSignals(\switch noDisplay)
!!
!==========================================
!Proses ile ilgili resetlenmesi gereken sinyaller
!==========================================
!Servis ile ilgili resetlenmesi gereken sinyaller
IF bEnableTpwrite TPWrite "PROSES VE SERVIS ILE ILGILI ";
IF bEnableTpwrite TPWrite "SINYALLER RESETLENIYOR...";
PulseDO\High\PLength:=0.5,doInit;
Reset doProcReqAck;
Reset doSrvReqAck;
Reset doProcDone;
Reset doSrvDone;
Reset doServiceHalf;
Reset doPB_31;
Reset doPB_32;
Reset doVakum1On;
Reset doVakum2On;
PulseDO\High\PLength:=0.5,doUfleme1On;
PulseDO\High\PLength:=0.5,doUfleme1On;
Reset doUfleme1On;
Reset doUfleme2On;
Reset doPressesStoppedAck;
Reset doGrpprDaParcaVar;
SetGO goCycleTime,0;
!!
IDelete nVakumOn;
IDelete nVakumOff;
IDelete nVakumOnKtrl;
IDelete nVakumOffKtrl;
!!
IDelete nPBOk;
CONNECT nPBOk WITH trapPBFault;
ISignalDI diPBusOk,0,nPBOk;
!!
ENDPROC

PROC ResetVariables(\switch noDisplay)
!!
bFirstCycle:=true;
nCalismaModu:=1;
bVakumKnl1Iptal:=FALSE;
bVakumKnl2Iptal:=FALSE;
bClockWorking:=False;
!!
IF bEnableTpwrite TPWrite " PROSES VE SERVIS ILE ILGILI ";
IF bEnableTpwrite TPWrite " DEGISKENLER RESETLENIYOR...";
!!
ENDPROC

PROC SrInit(\switch noDisplay)
!!
Init;
!!
ENDPROC

PROC Init(\switch noDisplay)
!!
Homecontrol;
PBFault;
SrResetSignals;
ResetVariables;
IF bEnableTpwrite TPErase;
IF bEnableTpwrite TPWrite " URETIME BASLATMA BUTONLARININ ";
IF bEnableTpwrite TPWrite " IKISINE BIRDEN BASINIZ...";
!!
ENDPROC



ENDMODULE
 
fluke öncelikle teşşekür ederim proses programından kastin örneğin bu gönderdiğim servis routininin içindeydi aynı yere bu satırları ilave edip denesem olabilir mi yani şu aşağıdaki:

Proses programından kastım;
Yapılan iş rutini. Değişkeni, yapılan işin yazıldığı rutine koymalısınız ki her bir parçada değişken değeri bir artsın.
 
Merhaba arkadaslar ben s4 ve s5 kullanicisiyim .Bazi eksikliklerim var yardimci olursaniz sevinirim
 
slm ;Fluke açıklamaların için teşekkürler.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…