"The H . K i n g ESC will not arm unless you
move your throttle stick to the lowest position. When
the H.King ESC receivesthe low throttle command, it
will arm and play a double tone through the motor,
indicating it is armed and now ready to run."
ca veut dire en langage RC "armer les moteurs (enfin les esc) en mettant la manette des gaz a 0 pour eviter de te couper un doigt avec les moteurs a pleine balle au branchement de la batterie , sinon ca demarre pas" , donc peu etre qu'il faut commencer par envoyer 1ms (0% ce qui revient a mettre les gaz a 0) et attendre les beeps d'armement avant de tenter d'envoyer 1.2ms (20%)
ca doit donner un truc comme ca :
Code: Select all
#!/usr/bin/python
from Adafruit_PWM_Servo_Driver import PWM
import time
# ===========================================================================
# Example Code
# ===========================================================================
# Initialise the PWM device using the default address
# bmp = PWM(0x40, debug=True)
pwm = PWM(0x40, debug=True)
#servoMin = 150 # Min pulse length out of 4096
#servoMax = 600 # Max pulse length out of 4096
def setServoPulse(channel, pulse):
pulseLength = 1000000 # 1,000,000 us per second
pulseLength /= 50 # 50 Hz
print "%d us per period" % pulseLength
pulseLength /= 4096 # 12 bits of resolution
print "%d us per bit" % pulseLength
pulse *= 1000
pulse /= pulseLength
pwm.setPWM(channel, 0, pulse)
pwm.setPWMFreq(50) # Set frequency to 50 Hz
#------------------- armement anti coupe doigt --------------
# 0% (1ms)
pwm.setPWM(0, 0, 4095)
time.sleep(5)
# ou alors car c'est pas tres clair les valeurs a entrer dans cette bibliotheque:
# pwm.setPWM(0, 0, 205)
# 50hz = 20ms , donc 1 tick = 20 ms/4096 = 0,0048828125 ms , pour faire 1ms il faut 205*0,0048828125
time.sleep(5)
#----------- le sleep je sais pas trop combien de temps ------------------
while (True):
# Change speed of continuous servo on channel O
# 20% (1.2ms)
pwm.setPWM(0, 819, 3277)
# ou
# pwm.setPWM(0, 0, 246)
# 1.2 / 0,0048828125 = 246
time.sleep(2)
# 50% (1.5ms)
pwm.setPWM(0, 2048, 2048)
# ou
# pwm.setPWM(0, 0, 307)
# 1.5 / 0,0048828125 = 307
time.sleep(3)
# 100% (2ms)
pwm.setPWM(0, 4095, 0)
# ou
# pwm.setPWM(0, 0, 407)
# 2 / 0,0048828125 = 407
time.sleep(1)
pour savoir si c'est un ou l'autre tente avec le servo pour voir dans quel cas il est au milieu avec 50% , pas tres claire l'explication de la bibliotheque
faut peu etre quand meme calibrer les esc pour avoir toute la plage d'utilisation (quoique ca doit déjà etre pas trop mal calibré d'origine ??)
D、THROTTLE RANGE SETTING
This setting is for first time using or a new transmitter is being used.
1.Allumer la radio (enfin le RPI et la carte adafruit) , pousser les gaz a fond (envoyer 2ms donc 100% de pwm) , connecter ESC power.
2.esc emet un beep pour dire que c'est bien connecter.
3.esc emet beep….beep…pour dir que les gaz sont a fond (100%pwm).
4.mettre les gaz a 0 (envoyer 1ms donc 0% de pwm) pendant 2s, esc emet beep….beep….beep….pour dire que les gaz sont a 0.
5.attendre 5s,esc emet beep pour dire que les réglages sont surs.
6.tout est ok pour la 1ere utilisation.