From 974dd247e2e25f26ecbc4a36b9ddcb6811cb51bd Mon Sep 17 00:00:00 2001 From: Ruben Seitz <2211567@stud.hs-mannheim.de> Date: Tue, 18 Nov 2025 12:36:34 +0100 Subject: [PATCH] =?UTF-8?q?main.llsp3=20gel=C3=B6scht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.llsp3 | 88 ------------------------------------------------------ 1 file changed, 88 deletions(-) delete mode 100644 main.llsp3 diff --git a/main.llsp3 b/main.llsp3 deleted file mode 100644 index d46ffdc..0000000 --- a/main.llsp3 +++ /dev/null @@ -1,88 +0,0 @@ -from hub import button, port, motion_sensor as ms -import motor -import motor_pair as mp -import color_sensor as cs -import color -import sys -import runloop -import time - -# Notes ############################################################################### - -# Wippe Notizen -def flipflop(state, r, s): - """ - Logik implementiert in Rampen Logik. Bleibe stehen, wenn der Rollwinkel sich um mehr als 10 (?) ändert. - RS-Flipflop-Logik: - Set (= tue nichts), wenn der Winkel sich ändert; - Reset (= bleibe stehen), solange sich der Rollwinkel ändert, danach fahre normal weiter - """ - return False if r else (True if s else state) - -# Obstacle Notizen -""" -- Sensor ~12cm über dem Boden einbauen; insg. 3 Abstandssensoren benötigt (oder 2 mit aufwändigerer Logik und drehendem Sensor) - 1. Wenn vorderer Sensor bestimmten Abstand feststellt, stoppen, zurückfahren bis ein Abstand d feststeht - 2. Drehen, bis ein Seitensensor Abstand d oder kleiner feststellt. Kleinsten Abstand bestimmen: - 2.1 Bei Drehung niedrigsten Wert des Sensors merken - 2.2 Wenn Abstand größer wird, zurückdrehen, bis kleinster Wert wieder erreicht ist -3. Losfahren und in entsprechende Richtung drehen, wenn Abstand kleiner/größer wird -4. Abbrechen, wenn Farbsensoren Schwarz erkennen -""" - -# Ziellinie Notizen -# Wenn beide Sensoren Farbe rot feststellen, stoppe die Motoren, beende das Programm - - -# Implementation of Basic operations and misc. ############################################## - -# await mp.move_for_degrees(mp.PAIR_1, 360, 45, velocity=280) - -# motor.run_for_degrees(portNum, 200, 300) -# await runloop.sleep_ms(2000) - -# mp.move_tank(mp.PAIR_1, 280, -280) -# await runloop.sleep_ms(2000) - -# WANTED_COLOR = color.BLACK - -# Productive Code ################################################################# - -async def move_on_color(): - start_time = time.time() - print(ms.tilt_angles()) - while True: - roll_value = ms.tilt_angles()[2] - # Change to switch case - if cs.reflection(port.C) < 60: - mp.move_tank(mp.PAIR_1, -100, 100) - elif cs.reflection(port.E) < 60: - mp.move_tank(mp.PAIR_1, 100, -100) - elif roll_value < -150: # uphill function - mp.move(mp.PAIR_1, 0, velocity=450) - else: - mp.move(mp.PAIR_1, 0, velocity=200) - - # Geradeaus - - # linkskurve - # rechtskurve - - # Kreuzung (grüner Punkt) - # wenn grün, dann biege um 90 Grad in die richtung ab (wenn vor schwarzer linie) - - # Sackgasse (= zwei grüne Punkte) - # -> Drehung 180 Grad - - # Bergauf - # Bergab - - # Speedbumper (Schräge Bumper) - -async def main(): - mp.pair(mp.PAIR_1, port.A, port.D) - await move_on_color() - - sys.exit() - -runloop.run(main())