RC Remote.PY

Guten Tag,


 


bei Mu schmeißt mir das Programm einen Fehler, sowie auch in der Joy-Car Datei.


In der Joy-Car.py war der Fehler die Musik Anbindung (Ich hab diese einfach entfernt)


Nur bekomme ich denn Fehler in der Remote Datei nicht weg



 


Danke im vorraus


 


MfG


 


 

Damian

21.04.22 12:44

# Import der benoetigten Module
from microbit import *
from neopixel import *
import radio
import music


# Initalisierung der RGB LEDs
np = NeoPixel(pin0, 8)


# Einschalten der Funkhardware
radio.on()


# Vordefinitionen für die Beleuchtung
headlights = (0, 3)
backlights = (5, 6)
led_white = (60, 60, 60)
led_red = (60, 0, 0)
led_off = (0, 0, 0)


# Funktion um die Motoren zu steuern
def drive(PWM0, PWM1, PWM2, PWM3):
i2c.write(0x70, b'\x02' + bytes([PWM0]))
i2c.write(0x70, b'\x03' + bytes([PWM1]))
i2c.write(0x70, b'\x04' + bytes([PWM2]))
i2c.write(0x70, b'\x05' + bytes([PWM3]))


# Abblendlicht einschalten
def lightsON():
for x in headlights:
np[x] = led_white
for x in backlights:
np[x] = led_red
np.show()


# Licht ausschalten
def lightsOFF():
for x in headlights:
np[x] = led_off
for x in backlights:
np[x] = led_off
np.show()



# Steuerungsschleife
while True:
incoming = radio.receive() # Empfang über Funkhardware in Variable incoming
if incoming is not None: # wenn incoming ist nicht None (leer) dann:
if incoming[0] == "l": # Abfrage des 1. Zeichens für die Richtung
drive(0, 0, 40, 255)
elif incoming[0] == "r":
drive(40, 255, 0, 0)
elif incoming[0] == "f":
drive(40, 255, 40, 255)
elif incoming[0] == "b":
drive(255, 40, 255, 40)
else:
drive(0, 0, 0, 0)


if incoming[0] == "b": # ein und ausschalten des Rueckfahrlichts
np[4] = (led_white)
np.show()
else:
np[4] = (led_off)
np.show()


if incoming[1] == "a": # Abfrage fuer die Funktionen (Licht und Hupe)
music.play("c4:1", pin=pin16)
elif incoming[1] == "b":
lightsON()
elif incoming[1] == "c":
lightsON()
else:
lightsOFF()


else: # incoming = None, dann wird das Joy-Car geparktausserhalb der Reichweite der Fernbedienung oder Fernbedienung aus
drive(0, 0, 0, 0)
for x in range(0, 8):
np[x] = (50, 0, 0)
np.show()

Umlaute sollten vermieden werden, außerdem hat beim if incoming ein tab gefehlt und für denn Ton Hupe muss ein "Import music" eingefügt werden

Damian

22.04.22 08:35

Hallo Damian, bitte entschuldige unsere verspätete Antwort.


Also konntest du dein Problem bereits lösen? 🙂


Liebe Grüße
Jens

Jens

25.04.22 07:32

Die Verbindung mit der Fernbedienung hat geklappt.


Das Hupen und Aufleuchten der Scheinwerfer auch, allerdings Fährt es noch nicht.


Mit denn .Hex Demo Dateien Läuft alles, Allerdings funktioniert hier du Hupe nur einmalig.


MfG


Damian

Damian

27.04.22 05:54

Hallo Damian,


vielen Dank für den Hinweis. Wir werden unseren angebotenen Beispieldateien noch einmal auf den von dir angesprochenen Fehler untersuchen und eventuelle Fehler korrigieren.


Liebe Grüße
Jens

Jens

28.04.22 14:23

Achtung!

Ihr Webbrowser ist veraltet. Wechseln Sie jetzt zu einem aktuellen Browser für mehr Sicherheit, Geschwindigkeit und den besten Komfort auf dieser Seite.