Modul modules
¶
Klasse Ultrasonic
¶
Beispiel
# Import Ultrasonic and Pin class from robot_hat import Ultrasonic, Pin # Create Motor object us = Ultrasonic(Pin("D2"), Pin("D3")) # Read distance distance = us.read() print(f"Distance: {distance}cm")API
Klasse ADXL345
¶
Beispiel
# Import ADXL345 class from robot_hat import ADXL345 # Create ADXL345 object adxl = ADXL345() # or with a custom I2C address adxl = ADXL345(address=0x53) # Read acceleration of each axis x = adxl.read(adxl.X) y = adxl.read(adxl.Y) z = adxl.read(adxl.Z) print(f"Acceleration: {x}, {y}, {z}") # Or read all axis at once x, y, z = adxl.read() print(f"Acceleration: {x}, {y}, {z}") # Or print all axis at once print(f"Acceleration: {adxl.read()}")API
- class robot_hat.ADXL345(*args, address: int = 83, bus: int = 1, **kwargs)¶
Basisklasse:
I2C
ADXL345-Module
- X = 0¶
X
- Y = 1¶
Y
- Z = 2¶
Z
- __init__(*args, address: int = 83, bus: int = 1, **kwargs)¶
ADXL345 initialisieren
- Parameter
address (int) – Adresse des ADXL345
- read(axis: int = None) Union[float, List[float]] ¶
Eine Achse des ADXL345 lesen
- Parameter
axis (int) – Wert (g) einer Achse lesen, ADXL345.X, ADXL345.Y oder ADXL345.Z, None für alle Achsen
- Rückgabe
Wert der Achse oder Liste aller Achsen
- Rückgabetyp
float/list
Klasse RGB_LED
¶
Beispiel
# Import RGB_LED and PWM class from robot_hat import RGB_LED, PWM # Create RGB_LED object for common anode RGB LED rgb = RGB_LED(PWM(0), PWM(1), PWM(2), common=RGB_LED.ANODE) # or for common cathode RGB LED rgb = RGB_LED(PWM(0), PWM(1), PWM(2), common=RGB_LED.CATHODE) # Set color with 24 bit int rgb.color(0xFF0000) # Red # Set color with RGB tuple rgb.color((0, 255, 0)) # Green # Set color with RGB List rgb.color([0, 0, 255]) # Blue # Set color with RGB hex string starts with “#” rgb.color("#FFFF00") # YellowAPI
- class robot_hat.RGB_LED(r_pin: PWM, g_pin: PWM, b_pin: PWM, common: int = 1)¶
Einfache 3-Pin-RGB-LED
- ANODE = 1¶
Gemeinsame Anode
- CATHODE = 0¶
Gemeinsame Kathode
- __init__(r_pin: PWM, g_pin: PWM, b_pin: PWM, common: int = 1)¶
RGB-LED initialisieren
- Parameter
r_pin (robot_hat.PWM) – PWM-Objekt für Rot
g_pin (robot_hat.PWM) – PWM-Objekt für Grün
b_pin (robot_hat.PWM) – PWM-Objekt für Blau
common (int) – RGB_LED.ANODE oder RGB_LED.CATHODE, Standard ist ANODE
- Verursacht
ValueError – wenn gemeinsam weder ANODE noch CATHODE ist
TypeError – wenn r_pin, g_pin oder b_pin kein PWM-Objekt ist
- color(color: Union[str, Tuple[int, int, int], List[int], int])¶
Farbe an RGB-LED schreiben
- Parameter
color (str/int/tuple/list) – Zu schreibende Farbe, Hex-String beginnend mit „#“, 24-Bit-Integer oder Tupel aus (Rot, Grün, Blau)
Klasse Buzzer
¶
Beispiel
Importieren und Initialisieren
# Import Buzzer class from robot_hat import Buzzer # Import Pin for active buzzer from robot_hat import Pin # Import PWM for passive buzzer from robot_hat import PWM # import Music class for tones from robot_hat import Music # Import time for sleep import time music = Music() # Create Buzzer object for passive buzzer p_buzzer = Buzzer(PWM(0)) # Create Buzzer object for active buzzer a_buzzer = Buzzer(Pin("D0"))Aktives Summer-Signal
while True: a_buzzer.on() time.sleep(0.5) a_buzzer.off() time.sleep(0.5)Passiver Summer Einfache Nutzung
# Play a Tone for 1 second p_buzzer.play(music.note("C3"), duration=1) # take adventage of the music beat as duration # set song tempo of the beat value music.tempo(120, 1/4) # Play note with a quarter beat p_buzzer.play(music.note("C3"), music.beat(1/4))Passiver Summer Manuelle Steuerung
# Play a tone p_buzzer.play(music.note("C4")) # Pause for 1 second time.sleep(1) # Play another tone p_buzzer.play(music.note("C5")) # Pause for 1 second time.sleep(1) # Stop playing p_buzzer.off()Ein Lied spielen! Babyhai!
music.tempo(120, 1/4) # Make a Shark-doo-doo function as is all about it def shark_doo_doo(): p_buzzer.play(music.note("C5"), music.beat(1/8)) p_buzzer.play(music.note("C5"), music.beat(1/8)) p_buzzer.play(music.note("C5"), music.beat(1/8)) p_buzzer.play(music.note("C5"), music.beat(1/16)) p_buzzer.play(music.note("C5"), music.beat(1/16 + 1/16)) p_buzzer.play(music.note("C5"), music.beat(1/16)) p_buzzer.play(music.note("C5"), music.beat(1/8)) # loop any times you want from baby to maybe great great great grandpa! for _ in range(3): print("Measure 1") p_buzzer.play(music.note("G4"), music.beat(1/4)) p_buzzer.play(music.note("A4"), music.beat(1/4)) print("Measure 2") shark_doo_doo() p_buzzer.play(music.note("G4"), music.beat(1/8)) p_buzzer.play(music.note("A4"), music.beat(1/8)) print("Measure 3") shark_doo_doo() p_buzzer.play(music.note("G4"), music.beat(1/8)) p_buzzer.play(music.note("A4"), music.beat(1/8)) print("Measure 4") shark_doo_doo() p_buzzer.play(music.note("C5"), music.beat(1/8)) p_buzzer.play(music.note("C5"), music.beat(1/8)) print("Measure 5") p_buzzer.play(music.note("B4"), music.beat(1/4)) time.sleep(music.beat(1/4))API
- class robot_hat.Buzzer(buzzer: Union[PWM, Pin])¶
- __init__(buzzer: Union[PWM, Pin])¶
Summer initialisieren
- Parameter
pwm (robot_hat.PWM/robot_hat.Pin) – PWM-Objekt für passiven Summer oder Pin-Objekt für aktiven Summer
- on()¶
Summer einschalten
- off()¶
Summer ausschalten
- freq(freq: float)¶
Frequenz des passiven Summers einstellen
- Parameter
freq (int/float) – Frequenz des Summers, verwenden Sie Music.NOTES, um die Frequenz der Note zu erhalten
- Verursacht
TypeError – wenn auf aktiven Summer eingestellt
- play(freq: float, duration: float = None)¶
Frequenz abspielen
- Parameter
freq (float) – abzuspielende Frequenz, Sie können Music.note() verwenden, um die Frequenz der Note zu erhalten
duration (float) – Dauer jeder Note in Sekunden, None bedeutet kontinuierliches Abspielen
- Verursacht
TypeError – wenn auf aktiven Summer eingestellt
Klasse Grayscale_Module
¶
Beispiel
# Import Grayscale_Module and ADC class from robot_hat import Grayscale_Module, ADC # Create Grayscale_Module object, reference should be calculate from the value reads on white # and black ground, then take the middle as reference gs = Grayscale_Module(ADC(0), ADC(1), ADC(2), reference=2000) # Read Grayscale_Module datas datas = gs.read() print(f"Grayscale Module datas: {datas}") # or read a specific channel l = gs.read(gs.LEFT) m = gs.read(gs.MIDDLE) r = gs.read(gs.RIGHT) print(f"Grayscale Module left channel: {l}") print(f"Grayscale Module middle channel: {m}") print(f"Grayscale Module right channel: {r}") # Read Grayscale_Module simple states state = gs.read_status() print(f"Grayscale_Module state: {state}")API
- class robot_hat.Grayscale_Module(pin0: ADC, pin1: ADC, pin2: ADC, reference: int = None)¶
3-Kanal-Graustufen-Modul
- LEFT = 0¶
Linker Kanal
- MIDDLE = 1¶
Mittlerer Kanal
- RIGHT = 2¶
Rechter Kanal
- __init__(pin0: ADC, pin1: ADC, pin2: ADC, reference: int = None)¶
Graustufen-Modul initialisieren
- Parameter
pin0 (robot_hat.ADC/int) – ADC-Objekt oder Integer für Kanal 0
pin1 (robot_hat.ADC/int) – ADC-Objekt oder Integer für Kanal 1
pin2 (robot_hat.ADC/int) – ADC-Objekt oder Integer für Kanal 2
reference (1*3 list, [int, int, int]) – Referenzspannung
- reference(ref: list = None) list ¶
Referenzwert abrufen oder einstellen
- Parameter
ref (list) – Referenzwert, None um den Referenzwert abzurufen
- Rückgabe
Referenzwert
- Rückgabetyp
list
- read_status(datas: list = None) list ¶
Zeilenstatus lesen
- Parameter
datas (list) – Liste der Graustufendaten, falls None, vom Sensor lesen
- Rückgabe
Liste des Zeilenstatus, 0 für Weiß, 1 für Schwarz
- Rückgabetyp
list
- read(channel: int = None) list ¶
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.MIDDLE, Grayscale_Module.RIGHT
- Rückgabe
Liste der Graustufendaten
- Rückgabetyp
list