neues Projekt, neue Probleme.
Ich würde gerne mit einem Raspberry Pico eine Drohne bauen, bzw. mal schauen, wie weit ich komme.
Mein Schaltplan sieht so aus:
https://www.dropbox.com/s/uh49b64g6gszd ... e.pdf?dl=0
Allerdings habe ich die MOSFET's IRL3803 verwendet, da mir die, die ich im Schaltplan angegeben habe zu klein zum löten waren.
Die Schaltung funktioniert auch, aber leider nicht wie gewünscht.
Mein aktueller Code um die Motoren zu testen:
Code: Alles auswählen
from machine import Pin, PWM
from time import sleep
POSITION_TO_PIN = {'vorne_rechts': 28, 'vorne_links': 26, 'hinten_links': 22, 'hinten_rechts': 21}
FREQUENCY = 1500
DUTY = 55_000
def main():
motors = {position: PWM(Pin(pin)) for position, pin in POSITION_TO_PIN.items()}
for motor in motors.values():
motor.freq(FREQUENCY)
for motor in motors.values():
motor.duty_u16(DUTY)
sleep(2)
for motor in motors.values():
motor.duty_u16(0)
if __name__ == "__main__":
main()
Man sieht im Code, dass der Pin 26 vom Schaltplan abweicht, das liegt daran, das in der Doku zu PWM etwas von 8 PWM Generatoren steht. Ich habe nicht rausgefunden, wie ich softwareseitig die Geneeratoren den einzelnen Pins zu ordnen kann, da habe ich das hardwareseitig geändert. Änderte aber an meinem Verhalten nichts und war eher ein Versuch aus Ahnungslosigkeit.
Ich habe auch die Frequenz runter gesetzt, bei einer Frequenz zwischen 10 und 80 Hz laufen die Motoren mit der hohen DutyCycle , aber die haben dann weniger Leistung und ab 90Hz laufen die nicht mehr. Ich dachte mir, vielleicht laufen die nicht gleich mit der hohen Frequenz an und habe die in einer Schleife von 10 Hz auf 1500 Hz hoch laufen lassen, aber die Motoren wurden nicht schneller (optisch und von den Geräuschen her) wie mit 80Hz.
Kann sich das jemand erklären und mir sagen, was ich falsch mache?
Vielen Dank vorab und viele Grüße
Dennis