===== Einführung Raspberry Pi Pico und Mikropython ===== Wir verwenden für den Linefollower den [[https://www.raspberrypi.com/products/raspberry-pi-pico-2|Raspberry Pi Pico 2 WH]]. Es gibt verschiedene Pi Picos. Der Pi Pico 1 hat einen Raspberry RP2040 Prozessor. Der neue Pi Pico 2 hat einen Raspberry RP2350 Prozessor. Beide Picos gibt es jeweils mit Wifi - das ist das "W" - und mit fertig angelöteter Pinleiste - das ist das "H". Wir haben also einen Raspberry Pi Pico 2 WH mit * Raspberry RP2350 Prozessor * Wifi * fertig angelöteten Pinleisten Für den Linefollower macht das alles keinen großen Unterschied, aber man muss die richtigen Unterlagen und die richtige Firmware nutzen. ==== Software/Firmware zur Installation ==== Man kann den Pi Pico mit verschiedenen Programmiersprachen programmieren. Wir verwenden Micropython, da die Sprache besonders einfach zu lernen und zu benutzen ist. In der Veranstaltung "Programmieren ET" mit Prof. Dr.-Ing. Kay Werthschulte lernen sie die Programmiersprache C. Die Konzepte sind ähnlich, aber es gibt natürlich Unterschiede. Wir haben uns für Micropython entschieden, weil das interaktive Arbeiten mit der Programmierumgebung "Thonny" und die vielen Codebeispiele den Start besonders einfach machen. Sie benötigen: * [[https://micropython.org/download/RPI_PICO2_W/|Raspberry Pi Pico Micropython Firmware]] * [[https://thonny.org|Thonny Micropython IDE]] ==== Einführung ==== Sie finden für den Raspberry Pi und Mikropython viele Beschreibungen im Netz. Wir verwenden für die Programmierung mit Mikropython die Programmierumgebung "Thonny". Ein "Getting started" für den Pi Pico und Mikropython finden Sie hier: * [[https://projects.raspberrypi.org/en/projects/getting-started-with-the-pico|Raspberry Pi Foundation: Getting started with Raspberry Pi Pico]] Der Raspberry Pi Pico 2 basiert auf dem Raspberry 2350 Mikroprozessor. Das Board nennt sich "Raspberry Pi Pico 2" auf dem der "Raspberry Pi 2350" Mikrocontroller aufgelötet ist. Eine Beschreibung vom Raspberry Pi Pico 2 WH Board ist hier: * [[https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html#pico2w-technical-specification|Raspberry Pi Pico 2 WH]] Sie können erstmal nur den Raspberry Pi Pico mit dem USB Kabel am Computer betreiben und benötigen dafür nicht das Racershield. Der Pi Pico wird über USB versorgt. Sie sollten die Programmierumgebung "Thonny" installiert haben und die LED auf dem Pi Pico Board ein- und ausschalten können. Sie können dann auch die Racershieldplatine in Betrieb nehmen und beispielsweise die weiße LED auf dem mit Seeed Grove an- und ausschalten. Die Anordnung der Pins auf dem Pi Pico ist hier * [[https://datasheets.raspberrypi.com/picow/pico-2-w-pinout.pdf|Pi Pico 2W Pinout]] dargestellt. Der Schaltplan der Raspberry Pi Pico Platine ist hier * [[https://datasheets.raspberrypi.com/picow/pico-2-w-schematic.pdf|Pi Pico 2W Schematic]] und das Datenblatt des RP2350 Chips ist hier * [[https://datasheets.raspberrypi.com/rp2350/rp2350-datasheet.pdf|RP2350 Datasheet]] Welcher Pin dann auf dem Racershield mit welchen Seeed Grove Stecker verbunden ist, kann man dem Schematic im * [[ia-racershield]] entnehmen. ==== Racershield und Erweiterungen ==== Ich habe Democode im [[https://github.com/fredowski/ialf/tree/main/programming/demo|ialf github repository]] um den Pi Pico 2 WH, den Racershield und die Komponenten in Betrieb zu nehmen. Sie können mit dem [[https://github.com/fredowski/ialf/blob/main/programming/demo/first.py|first.py]] starten und benötigen dafür nur den Pi Pico und ein USB Kabel. Vielleicht in folgender Reihenfolge: * first.py (nur Pi Pico + USB Kabel notwendig) * ledblink.py (Pico + Racershield v1.2) * ledblink-timer.p (Pico + Racershield v1.2) * ialed.py (Pico + Racershield + ialed) * iagabellicht.py (Pico + Racershield + iagabel) * ialightsens (Pico + Racershield + ialed + ialightsens) * motor.py (Pico + Racershield + Akkus + Motoren) * motor-pwm.py (Pico + Racershied + Akkus + Motoren) Damit können Sie das System in Betrieb nehmen.