Compare commits
2 commits
Author | SHA1 | Date | |
---|---|---|---|
9ef67cb37d | |||
|
ce5fc4c445 |
7 changed files with 71 additions and 41 deletions
17
PWMDriver.py
17
PWMDriver.py
|
@ -12,6 +12,20 @@ class PWMDriver:
|
||||||
'rev': {'range': 270, 'min': 95, 'max': 600}, # 552
|
'rev': {'range': 270, 'min': 95, 'max': 600}, # 552
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#définir la fréquence du signal de sortie à 50hz
|
||||||
|
def ini_esc(slot):
|
||||||
|
slef.driver.set_pwm(slot,0,307) #307 est le signal neutre sous 50 Hz (1.5 / 20 x 4096 = 307)
|
||||||
|
time.sleep(1)
|
||||||
|
|
||||||
|
def initialiser_esc():
|
||||||
|
HZ = 50 #fréquence du signal vers les ESC
|
||||||
|
self.driver.set_pwm_freq(HZ)
|
||||||
|
LESC = (1, 13, 8, 9) #liste des ESC (avant gauche, avant droit, arrière gauche, arrière droit)
|
||||||
|
ini_esc(LESC[0])
|
||||||
|
ini_esc(LESC[1])
|
||||||
|
ini_esc(LESC[2])
|
||||||
|
ini_esc(LESC[3])
|
||||||
def setAngle(self, slot, angle, profileName = 'default'):
|
def setAngle(self, slot, angle, profileName = 'default'):
|
||||||
profile = None
|
profile = None
|
||||||
if type(profileName) is dict:
|
if type(profileName) is dict:
|
||||||
|
@ -30,9 +44,8 @@ class PWMDriver:
|
||||||
pulse = int(self.mappyt(angle, 0, profile['range'], profile['min'], profile['max']))
|
pulse = int(self.mappyt(angle, 0, profile['range'], profile['min'], profile['max']))
|
||||||
#print('setting slot', slot, 'to angle', angle, 'with profile', profileName, profile, pulse)
|
#print('setting slot', slot, 'to angle', angle, 'with profile', profileName, profile, pulse)
|
||||||
self.driver.set_pwm(slot, 0, pulse)
|
self.driver.set_pwm(slot, 0, pulse)
|
||||||
|
|
||||||
def setPwm(self, slot, off, on):
|
def setPwm(self, slot, off, on):
|
||||||
|
#self.driver.set_pwm(slot, off, on)
|
||||||
self.driver.set_pwm(slot, off,on)
|
self.driver.set_pwm(slot, off,on)
|
||||||
|
|
||||||
def mappyt(self, x, inMin, inMax, outMin, outMax):
|
def mappyt(self, x, inMin, inMax, outMin, outMax):
|
||||||
return (x - inMin) * (outMax - outMin) / (inMax - inMin) + outMin
|
return (x - inMin) * (outMax - outMin) / (inMax - inMin) + outMin
|
||||||
|
|
|
@ -16,7 +16,7 @@ class MotorizedPlatform:
|
||||||
}
|
}
|
||||||
escMapping = {
|
escMapping = {
|
||||||
'frontLeft': {
|
'frontLeft': {
|
||||||
'slot': 12, # 7
|
'slot': 1, # 7
|
||||||
'range': [307, 410]
|
'range': [307, 410]
|
||||||
},
|
},
|
||||||
'frontRight': {
|
'frontRight': {
|
||||||
|
@ -43,9 +43,9 @@ class MotorizedPlatform:
|
||||||
def init(self):
|
def init(self):
|
||||||
print("drive init start")
|
print("drive init start")
|
||||||
v = self.escMapping['turbine']
|
v = self.escMapping['turbine']
|
||||||
for i in range(220, 250, 1):
|
for i in range(240, 250, 1):
|
||||||
drive.setPwm(v['slot'], 0, i)
|
drive.setPwm(v['slot'], 0, i)
|
||||||
sleep(0.04)
|
sleep(0.02)
|
||||||
drive.setPwm(v['slot'], 0, 0)
|
drive.setPwm(v['slot'], 0, 0)
|
||||||
print("drive init stop")
|
print("drive init stop")
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
BIN
__pycache__/test_by_motor.cpython-39.pyc
Normal file
BIN
__pycache__/test_by_motor.cpython-39.pyc
Normal file
Binary file not shown.
4
robot_manual.py
Normal file
4
robot_manual.py
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
import RobotCompleteCOde
|
||||||
|
r = RobotCompletCode.MotorizedPlatform()
|
||||||
|
s = r.setSpeed
|
||||||
|
|
13
test_by_motor.py
Normal file
13
test_by_motor.py
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
from RobotCompletCode import MotorizedPlatform
|
||||||
|
m = MotorizedPlatform()
|
||||||
|
def frontLeft(speed):
|
||||||
|
m.setSpeed({"frontLeft":speed})
|
||||||
|
|
||||||
|
def frontRight(speed):
|
||||||
|
m.setSpeed({"frontRight":speed})
|
||||||
|
|
||||||
|
def backLeft(speed):
|
||||||
|
m.setSpeed({"backLeft":speed})
|
||||||
|
|
||||||
|
def backRight(speed):
|
||||||
|
m.setSpeed({"backRight":speed})
|
Loading…
Reference in a new issue