Commit 4150f8d9 authored by Lena Hagenauer's avatar Lena Hagenauer

Add new file

parents
import time
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
dType.SetPTPJumpParams(api, 65, 90, isQueued=0)
dType.SetPTPCommonParams(api, 100, 200, isQueued=0)
aufbau=True
#aufbau=False
t=7
class Block():
def __init__(self,a):
self.a=a
def setPos(self,x,y,z):
self.x=x
self.y=y
self.z=z
def setNummer(self,n):
self.n=n
def getNummer(self):
return self.n
def getX(self):
return self.x
def getY(self):
return self.y
def getZ(self):
return self.z
def setAV(self,a):
self.a=a
def getAV(self):
return self.a
def get1h(h):
if int(h)<10:
return 0
if 10<=int(h)<20:
return 1
if 20<=int(h):
return 2
else:
return 0
def get0h(h):
if int(h)<10:
return int(h)
if 10<=int(h)<20:
return int(h)-10
if 20<=int(h):
return int(h)-20
def get1m(m):
if int(m)<10:
return 0
if 10<=int(m)<20:
return 1
if 20<=int(m)<30:
return 2
if 30<=int(m)<40:
return 3
if 40<=int(m)<50:
return 4
if 50<=int(m):
return 5
def get0m(m):
if int(m)<10:
return int(m)
if 10<=int(m)<20:
return int(m)-10
if 20<=int(m)<30:
return int(m)-20
if 30<=int(m)<40:
return int(m)-30
if 40<=int(m)<50:
return int(m)-40
if 50<=int(m):
return int(m)-50
def setStartTime(h,m):
h1=get1h(h)
seth1Time(h1)
h0=get0h(h)
seth0Time(h0)
m1=get1m(m)
setm1Time(m1)
m0=get0m(m)
setm0Time(m0)
home()
def seth1Time(h):
for i in range (30):
print(b[5].getNummer())
if (h == b[i].getNummer() and b[i].getAV()==1):
if (aufbau == True):
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(0)
dType.SetPTPCmd(api, 0,float(anzeige[0].getX()), float(anzeige[0].getY()), float(anzeige[0].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
else:
b[i].setAV(0)
time.sleep(t)
break
def reseth1Time(h):
for i in range (30):
if (h == b[i].getNummer() and b[i].getAV()==0):
if (aufbau == True):
b[i].setAV(1)
time.sleep(t)
break
else:
if (h == b[i].getNummer() and b[i].getAV()==0):
dType.SetPTPCmd(api, 0,float(anzeige[0].getX()), float(anzeige[0].getY()), float(anzeige[0].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(1)
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
def seth0Time(h):
for i in range (30):
if (h == b[i].getNummer() and b[i].getAV()==1):
if (aufbau == True):
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(0)
dType.SetPTPCmd(api, 0,float(anzeige[1].getX()), float(anzeige[1].getY()), float(anzeige[1].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
else:
b[i].setAV(0)
time.sleep(t)
break
def reseth0Time(h):
for i in range (30):
if (h == b[i].getNummer() and b[i].getAV()==0):
if (aufbau == True):
b[i].setAV(1)
time.sleep(t)
break
else:
if (h == b[i].getNummer() and b[i].getAV()==0):
dType.SetPTPCmd(api, 0,float(anzeige[1].getX()), float(anzeige[1].getY()), float(anzeige[1].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(1)
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
def setm1Time(m):
for i in range (30):
if (m == b[i].getNummer() and b[i].getAV()==1):
if (aufbau == True):
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(0)
dType.SetPTPCmd(api, 0,float(anzeige[2].getX()), float(anzeige[2].getY()), float(anzeige[2].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
else:
b[i].setAV(0)
time.sleep(t)
break
def resetm1Time(m):
for i in range (30):
if (m == b[i].getNummer() and b[i].getAV()==0):
if (aufbau == True):
b[i].setAV(1)
time.sleep(t)
break
else:
if (m == b[i].getNummer() and b[i].getAV()==0):
dType.SetPTPCmd(api, 0,float(anzeige[2].getX()), float(anzeige[2].getY()), float(anzeige[2].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(1)
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
def setm0Time(m):
for i in range (30):
if (m == b[i].getNummer() and b[i].getAV()==1):
if (aufbau == True):
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(0)
dType.SetPTPCmd(api, 0,float(anzeige[2].getX()), float(anzeige[2].getY()), float(anzeige[2].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
else:
b[i].setAV(0)
time.sleep(t)
break
def resetm0Time(m):
for i in range (30):
if (m == b[i].getNummer() and b[i].getAV()==0):
if (aufbau == True):
b[i].setAV(1)
time.sleep(t)
break
else:
if (m == b[i].getNummer() and b[i].getAV()==0):
dType.SetPTPCmd(api, 0,float(anzeige[3].getX()), float(anzeige[3].getY()), float(anzeige[3].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 1, 1)
b[i].setAV(1)
dType.SetPTPCmd(api, 0,float(b[i].getX()), float(b[i].getY()), float(b[i].getZ()), 40, 1)
dType.SetEndEffectorSuctionCup(api, 1, 0, 1)
break
if (aufbau == True):
xst=192.0
yst=-67.0
zst=-71.0
xa=xst
ya=yst-25
za=-75.0
else:
xst=297.0
yst=63.0
zst=-72.0
xa=xst
ya=yst+26
za=-75.0
def home():
if(aufbau == True ):
dType.SetPTPCmd(api, 0,0,-200,0, 40, 1)
else:
dType.SetPTPCmd(api, 0,0,200,0, 40, 1)
anzeige = {}
for i in range(4):
anzeige[i] = Block(0)
for i in range(4):
if(aufbau == True):
anzeige[i].setPos(xa+i*35,ya,za)
#dType.SetPTPCmd(api, 0,xa+i*35,ya ,za, 40, 1)
else:
anzeige[i].setPos(xa-i*35,ya,za)
#dType.SetPTPCmd(api, 0,xa-i*35,ya ,za, 40, 1)
b = {}
for i in range(32):
b[i] = Block(1)
for xi in range(4):
for yi in range(8):
if(aufbau == True):
#print(xi*8+yi)
b[xi*8+yi].setPos(xst+xi*35,yst+yi*24 ,zst)
#dType.SetPTPCmd(api, 0,xst+xi*35,yst+yi*24 ,zst, 40, 1)
else:
print(xi*8+yi)
b[xi*8+yi].setPos(xst-xi*35,yst-yi*24 ,zst)
#dType.SetPTPCmd(api, 0,xst-xi*35,yst-yi*24 ,zst, 40, 1)
b[0].setNummer(0)
b[1].setNummer(0)
b[2].setNummer(0)
b[3].setNummer(0)
b[4].setNummer(1)
b[5].setNummer(1)
b[6].setNummer(1)
b[7].setNummer(1)
b[8].setNummer(2)
b[9].setNummer(2)
b[10].setNummer(2)
b[11].setNummer(2)
b[12].setNummer(3)
b[13].setNummer(3)
b[14].setNummer(3)
b[15].setNummer(4)
b[16].setNummer(4)
b[17].setNummer(4)
b[18].setNummer(5)
b[19].setNummer(5)
b[20].setNummer(5)
b[21].setNummer(6)
b[22].setNummer(6)
b[23].setNummer(7)
b[24].setNummer(7)
b[25].setNummer(8)
b[26].setNummer(8)
b[27].setNummer(9)
b[28].setNummer(9)
H=time.strftime("%H")
M=time.strftime("%M")
setStartTime(H,M)
#aktuelle Zeit
a1h=get1h(H)
a0h=get0h(H)
a1m=get1m(M)
a0m=get0m(M)
while(True):
H=time.strftime("%H")
M=time.strftime("%M")
#print(time.strftime("%H:%M"))
#old Time
o1h=a1h
o0h=a0h
o1m=a1m
o0m=a0m
print(o0m)
#aktuelle Zeit
a1h=get1h(H)
a0h=get0h(H)
a1m=get1m(M)
a0m=get0m(M)
#print(a0m)
dType.SetWAITCmd(api, 1, isQueued=0)
if(o1h!=a1h):
reseth1Time(o1h)
if(o0h!=a0h):
reseth0Time(o0h)
if(o1m!=a1m):
resetm1Time(o1m)
if(o0m!=a0m):
resetm0Time(o0m)
if(o1h!=a1h):
seth1Time(a1h)
if(o0h!=a0h):
seth0Time(a0h)
if(o1m!=a1m):
setm1Time(a1m)
if(o0m!=a0m):
setm0Time(a0m)
home()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment