.. note:: Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten. **Warum beitreten?** - **Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams. - **Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern. - **Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken. - **Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte. - **Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil. 👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei! .. _py_room_temp: 7.2 Raumtemperaturmessgerät ====================================== Mit einem Thermistor und einem I2C LCD1602 können wir ein Raumtemperaturmessgerät erstellen. Dieses Projekt ist sehr einfach und basiert auf :ref:`py_temp`, wobei ein I2C LCD1602 zur Anzeige der Temperatur verwendet wird. **Erforderliche Komponenten** Für dieses Projekt benötigen wir die folgenden Komponenten. Es ist definitiv praktisch, ein ganzes Kit zu kaufen, hier ist der Link: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - Name - ARTIKEL IN DIESEM KIT - LINK * - Kepler-Kit - 450+ - |link_kepler_kit| Sie können sie auch separat über die unten stehenden Links erwerben. .. list-table:: :widths: 5 20 5 20 :header-rows: 1 * - SN - KOMPONENTE - MENGE - LINK * - 1 - :ref:`cpn_pico_w` - 1 - |link_picow_buy| * - 2 - Micro-USB-Kabel - 1 - * - 3 - :ref:`cpn_breadboard` - 1 - |link_breadboard_buy| * - 4 - :ref:`cpn_wire` - Mehrere - |link_wires_buy| * - 5 - :ref:`cpn_resistor` - 1(10KΩ) - |link_resistor_buy| * - 6 - :ref:`cpn_thermistor` - 1 - |link_thermistor_buy| * - 7 - :ref:`cpn_i2c_lcd` - 1 - |link_i2clcd1602_buy| **Schaltplan** |sch_room_temp| **Verkabelung** |wiring_room_temp| **Code** .. note:: * Öffnen Sie die Datei ``7.2_room_temperature_meter.py`` im Pfad ``kepler-kit-main/micropython`` oder kopieren Sie diesen Code in Thonny, und klicken Sie dann auf "Aktuelles Skript ausführen" oder drücken Sie einfach F5. * Vergessen Sie nicht, im unteren rechten Eck den "MicroPython (Raspberry Pi Pico)"-Interpreter auszuwählen. * Für detaillierte Anleitungen siehe :ref:`open_run_code_py`. .. code-block:: python from lcd1602 import LCD from machine import I2C, Pin import utime import math # Initialize the thermistor (ADC on pin 28) and LCD display thermistor = machine.ADC(28) # Analog input from the thermistor # Initialize I2C communication for the LCD1602 display i2c = I2C(1, sda=Pin(6), scl=Pin(7), freq=400000) # Create an LCD object for controlling the LCD1602 display lcd = LCD(i2c) # Main loop to continuously read temperature and display it while True: # Read raw ADC value from the thermistor temperature_value = thermistor.read_u16() # Convert the raw ADC value to a voltage (0-3.3V range) Vr = 3.3 * float(temperature_value) / 65535 # ADC value to voltage conversion # Calculate the thermistor resistance (using a voltage divider with a 10kOhm resistor) Rt = 10000 * Vr / (3.3 - Vr) # Rt = thermistor resistance # Use the Steinhart-Hart equation to calculate the temperature in Kelvin # The values used are specific to the thermistor (3950 is the beta coefficient) temp = 1 / (((math.log(Rt / 10000)) / 3950) + (1 / (273.15 + 25))) # Temperature in Kelvin # Convert temperature from Kelvin to Celsius Cel = temp - 273.15 # Display the temperature on the LCD in Celsius string = " Temperature is \n " + str('{:.2f}'.format(Cel)) + " C" # Format string for the LCD lcd.message(string) # Display the string on the LCD utime.sleep(1) # Wait for 1 second lcd.clear() # Clear the LCD for the next reading Nach dem Ausführen des Programms wird die LCD die aktuelle Temperatur im Raum anzeigen. .. note:: Wenn der Code und die Verkabelung in Ordnung sind, aber das LCD dennoch keinen Inhalt anzeigt, können Sie das Potentiometer auf der Rückseite drehen, um den Kontrast zu erhöhen.