(V1) AVR Grundlagen

_images/avr_grundlagen.jpg

Beschreibung

Bei diesem Versuch lernen Sie den elementaren Umgang mit einem Microchip AVR Mikrocontroller. Sie werden selber eine Schaltung aus einzelnen Bauelementen auf einem Steckbrett aufbauen und in Betrieb nehmen. Wir werden dazu einen der Controller AVR Mega8, Mega88 oder Mega32 verwenden. Auf Ihrem Notebook werden Sie unter Linux die GCC Toolchain installieren und ein kleines Demo-Programm in der Sprache C schreiben, das nach dem Kompilieren mit Hilfe eines Download-Werkzeuges auf den AVR Controller übertragen („geflasht“) wird.

Ziele

Material

  • AVR Mikrocontroller

  • Drähte

  • ISP Wannenstecker

  • ISP Programmieradapter

  • Steckbrett

Links

(V2) Das Arduino Projekt

_images/arduino.jpg

Beschreibung

Im Versuch „AVR“ haben wir die Verwendung des Microchip AVR auf der untersten technischen Ebene gelernt. Das Arduino Projekt verwendet auch den AVR Controller, jedoch wird die Programmierung durch eine eigene IDE und einer eigenen Programmiersprache, die stark an C++ angelehnt ist, vereinfacht. Die Kehrseite dieser vereinfachten Verwendung ist, dass die zugrunde liegende Funktionweise verschleiert wird.

Ziele

  • Unterschiede zwischen low-level Programmierung und Arduino-Programmierung erkennen.

  • „Physical Computing“ Plattformen studieren.

Links

Material

  • Arduino UNO

  • USB Kabel

  • Steckbrett

(V3) mbed Mikrocontroller

_images/mbed_microcontroller.jpg

Beschreibung

Der „mbed“ Mikrocontroller ist eigentlich nur eine der üblichen kleinen Platine, die einen NXP LPC1768 Controller mit Cortex-M3 Kern enthält. Sie wird über USB an einen PC angeschlossen. Einige der auf dem Modul gespeicherten Daten erscheinen anschliessend im Dateimanager des PC. Zur sonst üblichen „schweren“ Entwicklungsumgebung (IDE) gelangt man hier aber federleicht durch Anklicken eines Links im Web-Browser. Die IDE läuft nämlich auf einem Server von NXP als Web-Applikation. Sie editieren und kompilieren Ihre Programmtexte also über das Web. Zum Flashen der Software wird das Kompilat über das Web zu Ihrem PC geholt und per USB in den Controller geschoben.

Ziele

  • Kennenlernen des LPC1768.

  • Kennenlernen der Web-IDE.

  • Anfertigen eines Beispielprogrammes.

Links

Material

  • 1 x mbed Modul mit LPC1768 Mikrocontroller (es gibt mittlerweile sehr viele mbed-kompatible Boards, siehe https://os.mbed.com/platforms).

  • 1 x USB Kabel

(V4) STM32 Nucleo

_images/stm32_nucleo.jpg

Hinweise: Verwenden der mbed-Umgebung (https://www.mbed.org) um das Board zu programmieren. Einfache IO-Operationen (LEDs ansteuern) und komplexere IO, z.B. mit I2C auf BMP180-Modul (Temperatur+Luftdruck) zugreifen.

Material:

  • STM32L476 Board

  • Mini-USB-Kabel

  • BMP180 Luftdruck- und Temperatursensor

  • Steckbrett mit LEDs und Kabeln

(V5) RS-485 Bussystem

_images/rs485_bussystem.jpg

Ziele

Wir werden einen einfachen Versuch mit dem Schnittstellen-Standard RS/EIA-485 machen, der zur preiswerten Vernetzung in der Fabrik und im Gebäudebereich verwendet wird. Zum Beispiel ist die berührungslose Türöffnungsanlage der Hochschule Augsburg mit diesem Bus realisiert.

Anregungen

Wie unterscheidet sich RS485 von anderen Bussystemen bzw. anderen seriellen Übertragungsstandards (wie z.B. RS232)? Betrachten der Signale mit Oszilloskop und Dokumentation um die Vorteile von RS485 darzulegen.

Material:

  • 2x RS485 USB-Adapter mit USB-Kabeln

  • Steckbrett mit Kabeln

Literatur

(V6) Controller Area Network

_images/can_controller-area-network.jpg

Beschreibung

Bei diesem Versuch werden Sie den CAN Feldbus kennenlernen. Mit Hilfe von zwei USB-zu-CAN Adaptern (http://www.fischl.de/usbtin) stellen Sie eine CAN Verbindung zwischen zwei PCs her (oder zwischen zwei USB Schnittstellen eines PC).

Ziele

  • Kennenlernen des CAN Übertragungsprinzips.

  • Ausblick auf die höhere CAN Schicht CANopen.

Tipps

Anregungen

Alternative kommerzielle Hersteller von CAN-Bus Adaptern

Literatur

Material

  • 2 x USBtin USB-zu-CAN Module

  • Steckbrett mit Kabeln (für evtl. Betrachtung der Signale/Messung mit Oszilloskop)

(V7) Global Positioning System

_images/gps.jpg

Beschreibung

GPS ist aus dem heutigen Leben kaum wegzudenken: von der zentimeter-genauen Vermessung bis zur Navigation auf der Erde und in der Luft werden Satelliten-basierte Systeme wie GPS, Glonass und Galileo verwendet. Während GPS-Empfänger meist in den entsprechenden Geräten „fest verbaut“ sind und man deren Präsenz nur erahnen kann, bieten USB-GPS-Empfänger den vollen Zugriff auf die Kommunikation und den Chipsatz. Sie beschäftigen sich in diesem Versuch mit der Schnittstelle zum GPS-Empfänger und untersuchen, inwiefern sich die gewonnenen Daten sinnvoll weiterverarbeiten lassen.

Ziele / Fragestellungen

  • Machen Sie sich mit dem Funktionsprinzip satellitengestützter Positionierungssysteme vertraut und beschreiben Sie die Funktionsweise.

  • Welche Informationen stellt der USB-GPS-Empfänger bereit, wie sind die „Rohinformationen“ aufgebaut?

  • Wie können Sie die vom Empfänger bereitgestellten Daten weiterverarbeiten, z.B. mit Python?

  • Wie werden sequentielle GPS-Daten normalerweise gespeichert (Stichwort „GPX-Tracks“)?

  • Mit welchen Mitteln können Sie den GPS-Empfänger konfigurieren? Gehen Sie hier mit Bedacht vor!

Tipps

Material

  • USB-GPS-Empfänger mit U-Blox-7-Chipsatz

  • USB-Verlängerungskabel

(V8) Raspberry Pi (RPI-HAT)

_images/rpi_hat.jpg

RPi + Sense HAT Shield

Das Sense HAT ist ein Aufsteckboard für den Raspberry Pi:

https://www.raspberrypi.org/products/sense-hat

(V9) Raspberry Pi (RPI-IO)

_images/rpi_io.jpg

Material

RPi + I/O Tasten

(V10) IoT mit ESP8266/NodeMCU

_images/esp8266_nodemcu.jpg

Beschreibung

Kleine Mikrocontroller sind bereits für wenig Geld zu bekommen, bieten jedoch bereits ausreichend Leistung um Mess- oder Steueraufgaben zuverlässig zu erledigen. Wichtig dabei ist eine Anbindung an eine Kommunikationsinfrastruktur. Der ESP8266, auch unter dem Namen „NodeMCU“ bekannt, vereint Mikrocontroller und WLAN-Modul in einem Chip.

Ziele

  • Sie machen Sich mit den Möglichkeiten der Programmierung des ESP8266 vertraut.

  • Erstellen Sie eine (kleine) IoT-Anwendung für Mess- und Steueraufgaben.

Material

  • ESP8266-Modul

  • Micro-USB-Kabel

  • DHT11 Luftfeuchte/Temperatur-Sensor

  • Steckbrett mit LEDs und Kabeln