initial commit

This commit is contained in:
GZod01 2023-03-25 10:33:33 +01:00
commit ef00cd438d
17 changed files with 551 additions and 0 deletions

28
beta/Driver.py Normal file
View file

@ -0,0 +1,28 @@
from Adafruit_PCA9685 import PCA9685
class PWMDriver:
def __init__(self):
self.driver = PCA9685()
self.driver.set_pwm_freq(50)
def set_pwm(self, slot, off, on):
self.driver.set_pwm(slot, off, on)
# comme map() dans arduino
def mappyt(self, x, inMin, inMax, outMin, outMax):
return (x - inMin) * (outMax - outMin) / (inMax - inMin) + outMin
def init_esc(self, slot):
self.set_pwm(slot, 0, 307)
def set_esc(self, slot, speed):
self.set_pwm(
slot,
0,
self.convert_speed_to_esc(speed)
)
def convert_speed_to_esc(self, speed):
return round(self.mappyt(speed, 0, 100, 210, 410))

55
beta/oldRobot.py Normal file
View file

@ -0,0 +1,55 @@
from Driver import PWMDriver as Driver
class driver():
def setvitesse(self,pin,vitesse):
print("le moteur avec le pin ",pin," avance à la vitesse", vitesse,".")
dri=Driver()
dri.set_esc(pin,vitesse)
class Robot():
d = [1,2]
g = [3,4]
motors = [d[0],d[1],g[0],g[1]]
class Translation():
motors = []
def init(self,v):
self.motors = v
def droit(self,v):
rb = driver().setvitesse
m = self.motors
for i in range(len(m)):
rb(m[i],v)
def trv(self,v,d):
rb = driver().setvitesse
m = self.motors
if d:
rb(m[0],v)
rb(m[3],v)
else:
rb(m[1],v)
rb(m[2],v)
def sd(self,v):
rb = driver().setvitesse
m = self.motors
rb(m[0],v)
rb(m[3],v)
rb(m[1],v*-1)
rb(m[2],v*-1)
def Rotation(self,v):
m = self.motors
rb = driver().setvitesse
rb(m[0],v)
rb(m[1],v)
rb(m[2],v*-1)
rb(m[3],v*-1)
Translation = Translation()
Translation.init(motors)
"""
r = Robot()
r.Translation.droit(1)
r.Translation.trv(2,True)
r.Translation.sd(5)
r.Translation.sd(-5)
r.Rotation(5)
r.Rotation(-5)
"""

17
beta/robottest.py Normal file
View file

@ -0,0 +1,17 @@
import Robot
x=""
r=Robot.Robot()
t = r.Translation
rot = r.Rotation
while x!="q":
x=input('command: ')
if x=="rotation":
rot(10)
elif x=="droit":
t.droit(10)
elif x=="diagonal":
t.trv(10, True)
elif x=="side":
t.sd(10)
else:
print('available commands: rotation , droit , diagonal , side')