Modul fusion_hat.modules.grayscale_module
- class fusion_hat.modules.grayscale_module.Grayscale_Module(pin0: ADC, pin1: ADC, pin2: ADC, reference: int = None)[Quellcode]
Basisklasse:
object3-Kanal-Graustufenmodul
- LEFT = 0
Linker Kanal
- MIDDLE = 1
Mittlerer Kanal
- RIGHT = 2
Rechter Kanal
- REFERENCE_DEFAULT = [1000, 1000, 1000]
- reference(ref: list = None) list[Quellcode]
Referenzwert abrufen oder setzen
- Parameter:
ref (list) – Referenzwert, None um den Referenzwert abzurufen
- Rückgabe:
Referenzwert
- Rückgabetyp:
list
- read_status(datas: list = None) list[Quellcode]
Linienstatus lesen
- Parameter:
datas (list) – Liste der Graustufendaten, None liest vom Sensor
- Rückgabe:
Liste der Linienzustände, 0 für Weiß, 1 für Schwarz
- Rückgabetyp:
list
- read(channel: int = None) list[Quellcode]
Einen Kanal oder alle Daten lesen
- Parameter:
channel (int/None) – zu lesender Kanal, leer lassen um alle zu lesen. 0 , 1 , 2 oder Grayscale_Module.LEFT , Grayscale_Module.CENTER , Grayscale_Module.RIGHT
- Rückgabe:
Liste der Graustufendaten
- Rückgabetyp:
list
- class fusion_hat.modules.grayscale_module.LineTracker(left: ADC, middle: ADC, right: ADC, slopes: list = None, offsets: list = None)[Quellcode]
Basisklasse:
objectLinienverfolger
- LINE_DIFF = 200
- CLIFF_THRESHOLD = 120
- LINE_REFERENCE_UPDATE_RATE = 0.05
- read_channel(channel: int, raw: bool = False) int[Quellcode]
Einen Kanal lesen
- Parameter:
channel (int) – zu lesender Kanal, 0 , 1 , 2 oder Grayscale_Module.LEFT , Grayscale_Module.CENTER , Grayscale_Module.RIGHT
raw (bool) – wenn True , Rohdaten zurückgeben, False für kalibrierte Daten
- Rückgabe:
Graustufendaten
- Rückgabetyp:
int
- calibrate_data(data: list) list[Quellcode]
Graustufendaten kalibrieren :param data: Liste der Graustufendaten :type data: list
- Rückgabe:
Liste der kalibrierten Graustufendaten
- Rückgabetyp:
list
- read(raw: bool = False) list[Quellcode]
Linienstatus lesen
- Parameter:
raw (bool) – wenn True , Rohdaten zurückgeben, False für kalibrierte Daten
- Rückgabe:
Liste der Linienzustände, 0 für Weiß, 1 für Schwarz
- Rückgabetyp:
list
- is_on_cliff(data: list = None) bool[Quellcode]
Prüfen ob sich der Roboter an einer Klippe befindet
- Parameter:
data (list) – Liste der Graustufendaten, leer lassen um vom Sensor zu lesen
- Rückgabe:
True wenn sich der Roboter an einer Klippe befindet, sonst False
- Rückgabetyp:
bool
- get_line_position(data: list = None)[Quellcode]
Linienposition abrufen
- Parameter:
data (list) – Liste der Graustufendaten, leer lassen um vom Sensor zu lesen
- Rückgabe:
Linienposition, -1 für links, 0 für Mitte, 1 für rechts
- Rückgabetyp:
float
- is_on_line(data: list = None) bool[Quellcode]
Prüfen ob sich der Roboter auf der Linie befindet
- Parameter:
data (list) – Liste der Graustufendaten, leer lassen um vom Sensor zu lesen
- Rückgabe:
True wenn sich der Roboter auf der Linie befindet, sonst False
- Rückgabetyp:
bool
- set_calibration_data(slopes: list, offsets: list)[Quellcode]
Kalibrierdaten setzen :param slopes: Liste der Steigungen :type slopes: list :param offsets: Liste der Offsets :type offsets: list
- set_cliff_threshold(threshold: int)[Quellcode]
Klippen-Schwellenwert setzen :param threshold: Klippen-Schwellenwert :type threshold: int
- get_calibration_data()[Quellcode]
Kalibrierdaten abrufen :returns: Tupel aus Steigungen und Offsets :rtype: tuple
- calibrate(light_data: list, dark_data: list)[Quellcode]
Linienverfolger kalibrieren :param light_data: Liste der Hell-Daten :type light_data: list :param dark_data: Liste der Dunkel-Daten :type dark_data: list
- update_line_background_reference(current_values)[Quellcode]
Hintergrundwert der Linie aktualisieren
- update_line_reference(current_values)[Quellcode]
Referenzwert der Linie aktualisieren