motor eichen
This commit is contained in:
parent
08bea5ab6a
commit
cda9bffd2a
@ -26,6 +26,8 @@ m2 = motor('kippen', m2_a1, m2_b1, m2_a2, m2_b2, m2_t1, m2_t2, m2_te, m2_es, 1,
|
||||
m1.start()
|
||||
m2.start()
|
||||
|
||||
m1.eichen()
|
||||
|
||||
#m1.vorwaerts(10)
|
||||
#m1.stop()
|
||||
#m2.stop()
|
||||
|
@ -58,9 +58,16 @@ class motor():
|
||||
self.pwm3.stop()
|
||||
self.pwm4.stop()
|
||||
|
||||
def vorwaerts(self, schritte):
|
||||
def vorwaerts(self, schritte, eichen=0):
|
||||
ges_schritte = schritte * 8
|
||||
|
||||
if eichen == 1:
|
||||
temp_t1 = self.te
|
||||
temp_t2 = self.te
|
||||
else:
|
||||
temp_t1 = self.t1
|
||||
temp_t2 = self.t2
|
||||
|
||||
if self.halten == 1:
|
||||
self.pwm4.ChangeFrequency(self.freq)
|
||||
|
||||
@ -71,14 +78,14 @@ class motor():
|
||||
self.pos += 1
|
||||
|
||||
temp_pos = i * 8
|
||||
einzelschritt(self.pwm1, 1, ges_schritte, temp_pos, self.t1, self.t2)
|
||||
einzelschritt(self.pwm4, 0, ges_schritte, temp_pos + 1, self.t1, self.t2)
|
||||
einzelschritt(self.pwm2, 1, ges_schritte, temp_pos + 2, self.t1, self.t2)
|
||||
einzelschritt(self.pwm1, 0, ges_schritte, temp_pos + 3, self.t1, self.t2)
|
||||
einzelschritt(self.pwm3, 1, ges_schritte, temp_pos + 4, self.t1, self.t2)
|
||||
einzelschritt(self.pwm2, 0, ges_schritte, temp_pos + 5, self.t1, self.t2)
|
||||
einzelschritt(self.pwm4, 1, ges_schritte, temp_pos + 6, self.t1, self.t2)
|
||||
einzelschritt(self.pwm3, 0, ges_schritte, temp_pos + 7, self.t1, self.t2)
|
||||
einzelschritt(self.pwm1, 1, ges_schritte, temp_pos, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm4, 0, ges_schritte, temp_pos + 1, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm2, 1, ges_schritte, temp_pos + 2, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm1, 0, ges_schritte, temp_pos + 3, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm3, 1, ges_schritte, temp_pos + 4, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm2, 0, ges_schritte, temp_pos + 5, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm4, 1, ges_schritte, temp_pos + 6, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm3, 0, ges_schritte, temp_pos + 7, temp_t1, temp_t2)
|
||||
|
||||
if self.halten == 1:
|
||||
self.pwm4.ChangeFrequency(self.freq_halten)
|
||||
@ -86,9 +93,16 @@ class motor():
|
||||
else:
|
||||
self.pwm4.ChangeDutyCycle(0)
|
||||
|
||||
def rueckwaerts(self, schritte):
|
||||
def rueckwaerts(self, schritte, eichen=0):
|
||||
ges_schritte = schritte * 8
|
||||
|
||||
if eichen == 1:
|
||||
temp_t1 = self.te
|
||||
temp_t2 = self.te
|
||||
else:
|
||||
temp_t1 = self.t1
|
||||
temp_t2 = self.t2
|
||||
|
||||
if self.halten == 1:
|
||||
self.pwm4.ChangeFrequency(self.freq)
|
||||
|
||||
@ -100,14 +114,14 @@ class motor():
|
||||
self.pos -= 1
|
||||
|
||||
temp_pos = i * 8
|
||||
einzelschritt(self.pwm3, 1, ges_schritte, temp_pos, self.t1, self.t2)
|
||||
einzelschritt(self.pwm4, 0, ges_schritte, temp_pos + 1, self.t1, self.t2)
|
||||
einzelschritt(self.pwm2, 1, ges_schritte, temp_pos + 2, self.t1, self.t2)
|
||||
einzelschritt(self.pwm3, 0, ges_schritte, temp_pos + 3, self.t1, self.t2)
|
||||
einzelschritt(self.pwm1, 1, ges_schritte, temp_pos + 4, self.t1, self.t2)
|
||||
einzelschritt(self.pwm2, 0, ges_schritte, temp_pos + 5, self.t1, self.t2)
|
||||
einzelschritt(self.pwm4, 1, ges_schritte, temp_pos + 6, self.t1, self.t2)
|
||||
einzelschritt(self.pwm1, 0, ges_schritte, temp_pos + 7, self.t1, self.t2)
|
||||
einzelschritt(self.pwm3, 1, ges_schritte, temp_pos, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm4, 0, ges_schritte, temp_pos + 1, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm2, 1, ges_schritte, temp_pos + 2, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm3, 0, ges_schritte, temp_pos + 3, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm1, 1, ges_schritte, temp_pos + 4, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm2, 0, ges_schritte, temp_pos + 5, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm4, 1, ges_schritte, temp_pos + 6, temp_t1, temp_t2)
|
||||
einzelschritt(self.pwm1, 0, ges_schritte, temp_pos + 7, temp_t1, temp_t2)
|
||||
|
||||
if self.halten == 1:
|
||||
self.pwm4.ChangeFrequency(self.freq_halten)
|
||||
@ -115,6 +129,13 @@ class motor():
|
||||
else:
|
||||
self.pwm4.ChangeDutyCycle(0)
|
||||
|
||||
def eichen(self):
|
||||
if GPIO.input(self.endschalter) == GPIO.LOW:
|
||||
self.vorwaerts(10, 1)
|
||||
|
||||
self.rueckwaerts(self.schritte_max, 1)
|
||||
self.pos = 0
|
||||
|
||||
def einzelschritt(spule, status, ges_schritte, schritt, t1, t2):
|
||||
w = (schritt * 100 / (ges_schritte - 1)) * 1.8
|
||||
s = round(math.sin(math.radians(w)), 2)
|
||||
|
Loading…
x
Reference in New Issue
Block a user