Oberstufe

In der Oberstufe haben alle Schülerinnen und Schüler in der 5. Klasse zwei Stunden Informatik pro Woche. Aufbauend auf den anwendungsorientierten Inhalten der Unterstufe liegt der Schwerpunkt auf Publizieren im Internet, Kennenlernen der Programmiersprache C und der Arduino Mikrocontroller Boards und Bild- und Videobearbeitung.

Ergänzend dazu können sich unserer Schülerinnen und Schüler in der Oberstufe für den Besuch des Schwerpunkts Angewandte Informationstechnologie entscheiden. Dieser wird von der 5. bis zur 8. Klasse besucht und umfasst je zwei Wochenstunden pro Jahrgang.

Begleitend dazu werden für alle Schülerinnen und Schüler - unabhängig davon, ob sie den Schwerpunkt besuschen oder nicht - Wahlpflichtfächer aus dem Bereich der Informationstechnologie angeboten.

Übersicht über die Unterrichtsangebote in der Oberstufe

Übersicht über die thematischen Inhalte im Schwerpunkt Angewandte Informationstechnologie

Lehrpläne zum Download

BRG_Kepler_AIT_Lehrplan_O5.pdf

BRG_Kepler_AIT_Lehrplan_O5_SP_1_2.pdf
BRG_Kepler_AIT_Lehrplan_O6_SP_3_4.pdf
BRG_Kepler_AIT_Lehrplan_O7_SP_5_6.pdf
BRG_Kepler_AIT_Lehrplan_O8_SP_7_8.pdf

BRG_Kepler_AIT_Lehrplan_O6_O7_O8_WPF_Multimedia.pdf
BRG_Kepler_AIT_Lehrplan_O6_O7_O8_WPF_Robotik.pdf

 

5. Klasse Informatik

2 Wochenstunden, Philipp, Stadler

Semester 1 Netzwerktechnik und Publizieren im Internet

Netzwerktechnik

  • Ich kann Meilensteine in der Entwicklung der Informatik beschreiben.
  • Ich kann die Funktionsweise und das Zusammenwirken eines Netzwerkes beschreiben.
  • Ich kann die wichtigsten Netzwerkbestandteile beschreiben.
  • Ich weiß, was die IP-Adresse bei einem Computer ist und kann den Aufbau erklären.
  • Ich kann den Standort eines Servers ermitteln.
  • Ich verstehe die Kommandozeilenbefehle ipconfig – ipconfig/all – ping und tracert.
  • Ich kann die Funktionsweise des Nameservers anhand von Beispielen erklären.
  • Ich verstehe den Aufbau unseres Schulnetzwerkes.

HTML und CSS

  • Ich kann Webseiten mit HTML erstellen.
  • Ich verstehe den Aufbau einer Webseite (Head/Body) und weiß wo die jeweiligen HMTL-Tags hinkommen.
  • Ich kann Bilder, Aufzählungen, Nummerierungen, Überschriften, Absätze und Zeilenumbrüche in eine Webseite einfügen.
  • Ich kann einen Hyperlink setzen und Textteile linksbündig, zentriert oder rechtsbündig ausrichten.
  • Ich weiß über den Aufbau und Einsatz von Cascading Style Sheets Bescheid und kann darüber verschiedene Formatierungen von Webseiten festlegen.
  • Ich verstehe den Unterschied zwischen internen und externen CSS.
  • File Transfer Möglichkeiten
  • Ich kann mit Hilfe einer freien Server- und Client-Software Daten auf einen Server übertragen.

Content Management Systeme

  • Ich kenne die wichtigsten, derzeit aktuellen Content Management Systeme.
  • Ich kann ein CMS (GetSimple und Joomla) auf einem Web-Server installieren und konfigurieren.
  • Ich verstehe den Unterschied zwischen Frontend und Backend.
  • Ich weiß, wofür ein CMS verwendet wird und kenne die Vor- und Nachteile.
  • Ich kann mit CMS professionelle Webseiten erstellen und diese auch veröffentlichen.
  • Ich kann Templates und Plugins nachträglich installieren und bestimmte Rechte setzten.
  • Ich weiß, dass das Datenschutzrecht bei der Veröffentlichung von Informationen eingehalten werden muss.
  • Ich verstehe, die Funktionsweise des Urheberrechts und achte auf dessen Einhaltung.
  • Ich kann mittels Stapelverarbeitung Bilder bearbeiten.
  • Ich weiß, wie man ein Video erstellt und dieses auf Youtube veröffentlicht und auf einer Webseite einbettet.

Semester 2 Einführung in das Programmieren mit C und Bild- und Videobearbeitung

Programmieren eines Arduino UNO Boards mit C

  • Ich kenne die Anschlussmöglichkeiten eines Arduino UNO Boards und kann die Funktionsweise von digitalen Eingängen, digitalen Ausgängen, PWM Ausgängen und analogen Eingängen unterscheiden.
  • Ich verstehe die unterschiedlichen Schnittstellen (UART, I2C und SPI) über die Mikrocontroller miteinander kommunizieren können.
  • Ich weiß über die Stromversorgung eines Arduino-Boards kann dieses auch mit einem Netzgerät betreiben, wenn das Board nicht über USB mit einem Computer verbunden ist.
  • Ich kenne den grundlegenden Funktionsumfang der Arduino-Entwicklungsumgebung und finde mich in der Programmoberfläche zurecht.
  • Ich verstehe die Grundstruktur eines Arduino Programms und kann dieses kompilieren und auf ein Arduino-Board übertragen.
  • Ich weiß über die Einsatzmöglichkeiten und die interne Beschaltung der Kontakte eines Breadboards Bescheid.
  • Ich kann die LED am Arduino-Board ein- und ausschalten.
  • Ich kann den Vorwiderstand einer LED berechnen um diese an einen digitalen Ausgang anzuschließen und diese mit einem Programm ein- und ausschalten.
  • Ich kann den Zustand an einem digitalen Eingang unter der Verwendung eines externen Pull-Up-Widerstandes einlesen.
  • Ich kann den Zustand an einem digitalen Eingang unter der Verwendung eines internen Pull-Up-Widerstandes einlesen.
  • Ich kann Spannungen an analogen Eingängen messen.
  • Ich kann ein PWM-Signal an einem digitalen Ausgang erzeugen.
  • Ich kann durch Erzeugen von PWM-Signalen Töne mit einem Lautsprecher ausgeben, die an einem digitalen Ausgang angeschlossen sind.
  • Ich verstehe die grundsätzliche Funktion der virtuellen, seriellen Schnittstelle über die Daten vom Arduino-Board zu einem Computer zu senden um diese dort anzeigen zu lassen.
  • Ein kann die Größe eines lichtempfindlichen Widerstands messen, der an einem analogen Eingang angeschlossen ist.
  • Ich verstehe grundlegende Elemente einer Programmiersprache wie Variablen, Entscheidungsabfragen und Schleifen und kann diese in eigenen Programmen einsetzen.
  • Ich kann eine Auswahl der folgenden Projekte selbst realisieren:
    • Ampel mit drei LEDs
    • Reglung der Helligkeit einer LED mit einem Potentiometer
    • Alarmanlage mit einem lichtempfindlichen Widerstand und einer Sirene
    • Lichtschranke mit einem lichtempfindlichen Widerstand und einer LED
    • Einstellen der Tonhöhe mit einem Potentiometer
    • Musikinstrument mit Lichtsteuerung
    • Batterietester
    • Stoppuhr
    • Messen der Kapazität eines Kondensators

Bild-Videobearbeitung und Web 2.0 Einsatz

  • Ich kann animierte Gifs erstellen.
  • Ich kann in einem Bildbearbeitungsprogramm mit Ebenen arbeiten und verstehe deren Zweck.
  • Ich kenne unterschiedliche Bildbearbeitungsprogramme und kann mit ihnen umgehen.
  • Ich kann Bilder und Videos von einem mobilen Endgerät auf mein Laufwerk transferieren und anschließend bearbeiten.
  • Ich kann einfache Videos aufnehmen und mit einer Videoschnitt-Software bearbeiten.
  • Ich verstehe die Funktionsweise von Youtube und kann dort einen selbsterstellten Film veröffentlichen.

Fächerübergreifendes Arbeiten

  • Ich setze den Computer oder das Handy selbstverständlich auch in anderen Fächern sinnvoll ein.
  • Ich kann kleinere Webseiten (auch aus meinem Freundes- und Bekanntenkreis) erstellen und betreuen.

 

5. Klasse Schwerpunkt Angewandte Informationstechnologie

Semester 1 Maker – Space

2D-CAD, 3D-CAD, 3D-Druck, Bau von elektr. Schaltungen, Leiterplattenentwurf, IoT-WiFi, LaTex

2 Wochenstunden, Brandl

Grundlagen der Elektronik und elektronische Bauteile

  • Ich kenne die physikalischen Größen Strom, Spannung und Wiederstand und verstehen deren Zusammenwirken in einem einfachen Stromkreis.
  • Ich kenne das Ohm´sche Gesetz und damit Berechnungen durchführen um z. B. den Vorwiderstand einer Leuchtdiode zu berechnen.
  • Ich kenn die physikalische Größe Leistung und weiß, wie dieser Zusammenhang von Strom und Spannung bei der Verwendung von Widerständen in einem Stromkreis zu berücksichtigen ist.
  • Ich kann elektronische Widerstände aufgrund der Bauform erkennen, die Größe des elektrischen Widerstands anhand der 4- oder 5-Ring-Kodierung ablesen und kenne auch das Schaltsymbol.
  • Ich verstehe die Funktion eines regelbaren Widerstands, kenne verschiedene Bauformen und das Schaltsymbol.
  • Ich weiß um die Funktion einer Diode in einem elektrischen Stromkreis Bescheid und kann das Schaltsymbol mit verschiedenen Bauformen von Dioden in Zusammenhang bringen, sodass ich diese richtig gepolt in Schaltungen einsetzen kann.
  • Ich kenne die Funktionsweise einer Leuchtdiode und weiß, was zu beachten ist, wenn eine Spannung an eine Leuchtdiode angelegt wird, um diese zum Leuchten zu bringen.
  • Ich verstehe die Funktion eines Kondensators in einer elektronischen Schaltung, kann unterschiedliche Bauformen unterscheiden und diese basierend auf den jeweiligen Schaltsymbolen richtig in elektronischen Schaltungen einsetzen.
  • Ich kann die Funktion eines Transistors erklären und weiß um dessen große Bedeutung für die gesamte Technik, wie auch Mikroelektronik Bescheid.

Aufbau von elektronischen Schaltungen auf einer Lochrasterplatine

  • Ich kann eine Schaltung zum Betrieb von drei Leuchtdioden an einer 9V-Blockbatterie aufbauen und weiß, was das bei der Wahl der Widerstände zu berücksichtigen ist.
  • Ich kann mit Hilfe eines Transistors eine Alarmanlage bauen, die bei Unterbrechung einer elektrischen Verbindung ein optisches oder akustisches Alarmsignal auslöst.
  • Ich kann mit Hilfe eines Kondensators und eines Transistors das Modell einer zeitgesteuerten Treppenhausbeleuchtung aufbauen, die nach dem Druck auf einen Taster für eine voreingestellte Zeitspanne eingeschaltet ist.

Leiterplattenentwurf

  • Ich kann einen einfachen Schaltplan analysieren und eine sinnvolle Platzierung von Bauteilen auf einer Platine festlegen.
  • Ich kann Bauteile aus der Bibliothek hinzufügen, diese Ändern und Bauteile neu erstellen.
  • Ich verstehe das Konzept der Verwendung unterschiedlicher Layer in einer Software zur Erstellung von Leiterplatten und kann sinngemäß Leiterbahnen und Informationen für den Bestückungsdruck auf den richtigen Layern zeichnen.
  • Ich kann das Rastermaß je nach Anforderung bewusst wählen und auch die Eigenschaften von Lötpunkten einstellen.

2D-CAD Konstruktion

  • Ich kenne den Unterschied zwischen einem Vektor-orientierten Konstruktions- und einem Pixel-orientierten Zeichenprogramm und kann die Vorteile des Einsatzes eines Vektor-orientierten Konstruktions-Programms bei der Erstellung von technischen Zeichnungen erklären.
  • Ich kann Einstellungen für Einheiten und den Zeichenraster einer Zeichnung für die jeweilige Anforderung praktikabel festlegen.
  • Ich kann Basiselemente wie Strecken, Rechtecke oder Kreise mit der Maus oder durch Eingabe von Koordinaten zeichnen.
  • Ich verstehe die Vorteile des Zeichnens auf unterschiedlichen Layern und kann die Funktionen zum Anzeigen oder Sperren von Layern sinnvoll unterstützend bei der Erstellung einer Konstruktionszeichnung einsetzen.
  • Ich kenne erweiterte Zeichenfunktionen wie drehen, spiegeln, verschieben, gruppieren oder aufbrechen von Objekten um Arbeitsschritte zu vereinfachen und komplexe Objekte aus den Grundformen zu erstellen.
  • Ich kann zu einer Konstruktionszeichnung Bemaßungen hinzufügen und Anzeigeeinstellungen dafür festlegen.
  • Ich kann eine Zeichnung ausdrucken und diese je nach Anforderung entsprechend skalieren.

3D-CAD Konstruktion und 3D-Druck

  • Ich kenne die grundlegenden Schwierigkeiten bei der Konstruktion von dreidimensionalen Objekten auf einem zweidimensionalen Anzeigemedium und einem auf zwei Dimensionen beschränkten Eingabegerät, wie es eine Maus darstellt.
  • Ich verstehe das Konzept der gleichzeitigen Verwendung von 2D- und 3D-Ansichten in Anwendungen zur Konstruktion von dreidimensionalen Objekten.
  • Ich kann elementare geometrische Formen wie Rechtecke, Kreise oder Polygone auf einer Ebene zeichnen und diese dann durch Verwenden des entsprechenden Werkzeugs zu einem dreidimensionalen Objekt aufziehen.
  • Ich kann dreidimensionale Objekte drehen, verzerren, spiegeln und skalieren.
  • Ich kann komplexe Körper mittels Durchdringen und Verschmelzen von elementaren Körpern erzeugen.
  • Ich kann mit einem Werkzeug Kanten abschrägen oder abrunden.
  • Ich kann ein Objekt als STL-File exportieren um dieses in anderen Anwendungen weiterverwenden zu können.
  • Ich kann ein STL-File in einer Software zur Erzeugung von Druckdaten für eine 3D-Drucker öffnen und dabei etwaige Probleme unterschiedlicher Skalierung lösen
  • Ich kann Druckdaten für einen 3D-Drucker erstellen und dabei Parameter wie Schichtdicke, Infill, … hinsichtlich Qualität und Stabilität des gedruckten Körpers je nach Anforderung beurteilen und richtig wählen.
  • Ich kann eine 3D-Drucker für die Fertigung eines Objekts vorbereiten, weiß über die Einstellungen und Eigenschaften des verwendeten Materials Bescheid und kann einen Druckauftrag starten und überwachen.

Internet of Things

  • Ich kann selbstständig ein Projekt realisieren dessen Ziel es ist, mit einer App am Handy über das Internet überall auf der Welt eine LED aus- und eingeschalten zu können
  • Ich kann Informationen über das ESP8266-Modul und das Startup-Projekt BLYNK recherchieren, sodass es möglich ist, davon ausgehend das vorliegende Projekt zu realisieren.
  • Ich weiß um die unterschiedlichen Möglichkeiten Bescheid ein ESP8266-Modul zu programmieren und kann mich aufgrund der vorliegenden Informationen für das praktikabelste Vorgehen entscheiden.
  • Ich kann eine Schaltung auf einer Lochrasterplatine zum Schalten einer LED aufbauen, auf der sich ein Steckkontakt für ein ESP8266-Modul befinden soll.
  • Ich kann die Firmware für ein ESP8266-Modul zum Schalten einer LED erstellen.
  • Ich kann auf einem Handy mit der App BLYNK ein Projekt zum Schalten der LED über das ESP8266-Modul erstellen.
  • Ich kann ausgehend von dem ersten Projekt ein weiteres realisieren, bei dem mit Hilfe eines ESP8266-Moduls, das über WLAN mit dem Internet verbunden ist, die aktuelle Temperatur eines LM35- oder DS18B20-Temperatursensors, wie auch der Verlauf der Temperaturkurve in einer BLYNK-App angezeigt wird.

Erstellen von Publikationen mit LaTex

  • Ich kenne den grundsätzlichen Unterschied zwischen der Erstellung von Dokumenten mit einem Textverarbeitungsprogramm und LaTex.
  • Ich kann ein einfaches Dokument in TeXstudio erstellen, dieses abspeichern und durch Kompilieren ein PDF-Dokument erzeugen lassen.
  • Ich kann Packages einbinden um einem Dokument erweiterte Formatierungsmöglichkeiten hinzuzufügen und kenne die grundlegenden Tags zur Formatierung von Text.
  • Ich kann eine sinnvolle Gliederung eines Dokuments durch die Verwendung der Tags für Kapitel, Unterkapitel, … vornehmen.
  • Ich kann die Formatierung von Aufzählungen automatisch generieren lassen.
  • Ich kann ein Inhaltsverzeichnis automatisch erstellen lassen und dieses zu Beginn des Dokuments nach einer Titelseite einfügen.
  • Ich kann Grafiken innerhalb eines Dokuments platzieren und diesen auch eine Beschriftung hinzufügen.

Semester 2 Planspiel IT-Firma Web 2.0 Tools

Publishing, Web, Foto, Audio, Video, verteiltes Arbeiten, e-Portfolio, … …

2 Wochenstunden, Stadler

In Vorbereitung ...

 

6. Klasse Schwerpunkt Angewandte Informationstechnologie

Semester 3 Einführung in das Programmieren mit C++

Steuern, Messen, Regeln mit Fischertechnik und dem Arduino-basierten KeplerFischBRAIN-Contoller

2 Wochenstunden, Bizjak

Grundlagen

  • Ich kenne die elektrischen Bauteile (Taster, Lämpchen, Motor und Fototransistor) des Fischertechnik Baukastensystems und weiß über deren Funktion und Einsatzmöglichkeiten Bescheid.
  • Ich kenne die Komponenten des KeplerFischBRAIN Controllers und kann die Anschlussmöglichkeiten mit der schematischen Darstellung der Controllers in einem Schaltplan in Beziehung setzen
  • Ich weiß um die Funktion des Displays, der vier User-Taster, der drei LEDs, wie auch die acht digitalen Eingänge, die vier analogen Eingänge, die vier Motor-Ports, wie des 9V-Ausgangs Bescheid.
  • Ich kann den KeplerFischBRAIN Controller an eine Stromversorgung und über USB an einen Computer anschließen.
  • Ich kenne den grundlegenden Funktionsumfang der Arduino-Entwicklungsumgebung und finde mich in der Programmoberfläche zurecht.
  • Ich kann die virtuelle COM-Schnittstelle des angeschlossenen Controllers bestimmen und die Einstellungen für das entsprechende Arduino-Board und den darauf verbauten Mikrocontroller festlegen.
  • Ich verstehe die Grundstruktur eines Arduino Programms, kann die KeplerFischBRAIN-Bibliothek einbinden und kann ein Programm kompilieren und auf ein Arduino-Board übertragen.

Grundlegende Programmierkenntnisse

  • Ich kann eine LED am Controller durch Anhalten der Programmausführung blinken lassen.
  • Ich kann ein Programm erstellen mit dem die LEDs in der Art eines Lauflichts oder wie einer Ampelsteuerung ein- und ausgeschaltet werden.
  • Ich kann statischen Text auf dem Display ausgeben.
  • Ich kann Text am Display ausgeben und diesen während der Laufzeit des Programms dynamisch verändern.
  • Ich kann ganzzahlige Variablen definieren, kenne unterschiedliche ganzzahlige Variablentypen und kann die Werte von Variablen auf dem Display anzeigen lassen.
  • Ich verstehe die Codestruktur von Entscheidungsabfragen und kann die Zustände der User-Taster am Controller einlesen.
  • Ich verstehe den Unterschied zwischen dem Ermitteln des aktuellen Zustandes eines Tasters und dem Feststellen, ob ein Taster gedrückt wurde und kann die entsprechenden Funktionen aus der KeplerFischBRAIN Bibliothek sinngemäß richtig anwenden.
  • Ich kann Werte von ganzzahligen Variablen mit Hilfe der User-Taster einstellen.
  • Ich kann den Zustand einer Lichtschranke ermitteln und diesen durch ein optisches Signal am Controller sichtbar machen.
  • Ich kann durch Einsatz einer Funktion aus der KeplerFischBRAIN Bibliothek zählen, wie oft ein Fischertechnik-Taster gedrückt wurde, der an den Controller angeschlossen ist.
  • Ich kann Motoren ansteuern, die an den Controller angeschlossen sind und deren Geschwindigkeiten und Drehrichtungen steuern.

Fortführende Programmieraufgaben

  • Ich verstehe autonome und zeitabhängige Steuer- und Regelprozesse und kann zwischen open loop- und closed loop-Verfahren unterscheiden.
  • Ich kann zeitabhängige Abläufe unter der Verwendung eines Zählers ohne Anhalten der Programmausführung implementieren
  • Ich kann Programme für komplexe Steuer- und Regelvorgänge für eine Auswahl aus den folgenden Modellen erstellen:
    • Händetrockner
    • Material und Aufbau
    • Ampel
    • Garagentor
    • Farbspiel
    • Stanzmaschine
    • Parkschranke
    • Schweißroboter
    • Tresor
    • Treppenhaus-Lift
    • Geldautomat
    • Turtle
    • Häckselmaschine
    • Hebebühne

Semester 4 Clientseitige WWW-Programmierung

Erstellung von interaktiven Web-Seiten mit HTML5, CSS, JavaScript

2 Wochenstunden, Brandl

JavaScript Grundlagen

  • Ich kenne die grundlegende Struktur einer HTML-Datei und kann JavaScript-Code in einen HTML-Code einbauen.
  • Ich kann Meldungsfenstern mit JavaScript anzeigen lassen.
  • Ich kann mit JavaScript Benutzereingaben durch Anzeige eines Fensters mit Ja/Nein-Buttons oder mit einem Textfeld einlesen.
  • Ich verstehe das Konzept einer Funktion mit der Übergabe von Parametern, wie auch von Rückgabe werten von Funktionen.
  • Ich kann mit JavaScript Entscheidungsabfragen implementieren und damit den weiteren Ablauf des Skript-Codes steuern.
  • Ich kann mittels JavaScript zu einer anderen Web-Seite weiterleiten.
  • Ich kenne die Vergleichs- und Verknüpfungsoperatoren in Entscheidungsabfragen und kann diese sinngemäß einsetzen.
  • Ich kann in JavaScript Variablen definieren und verstehe das Konzept der dynamischen Datentypen von Variablen.
  • Ich kann in HTML Formulare mit den gängigen Elementen (Textbox, Checkbox, Radio-Button, Textarea, Select-Box und Button) erzeugen und per JavaScript auf Formularelemente zugreifen.
  • Ich verstehe die Objektstruktur des Browser-Fensters (window.document. …) und kann mit JavaScript HTML-Code im Anzeigebereich eines Browsers ausgeben.
  • Ich kann mit Variablen des Typs string umgehen, Strings miteinander verknüpfen und verstehe die notwendige Typenkonvertierung beim Einlesen von Zahlenwerten aus Textboxen.
  • Ich kann Daten zwischen zwei HTML-Dateien mit Hilfe eines Query-Strings austauschen.
  • Ich kann mit JavaScript mathematische Berechnungen unter Zuhilfenahme des Objekts math durchführen.
  • Ich kenne Datums- und Zeitfunktionen zum Zugriff auf die aktuell am Client eingestellten Datums- und Uhrzeitwerte.
  • Ich kann mit Hilfe eines Timers oder der Funktion setTimeout() zeitgesteuerte, automatische Abläufe auf einer Web-Seite implementieren.
  • Ich verstehe das Konzept der Ereignisbehandlung und kann JavaScript-Funktionen als Event-Handler von Ereignissen bei HTML-Tags einsetzen.
  • Ich kann JavaScript-Code in externen Dateien auslagern und diesen in Web-Seiten einbinden.

Cascading Style Sheets

  • Ich verstehe das Konzept der absoluten Trennung von Formatierung und Inhalten bei der Erstellung von Web-Seiten.
  • Ich CSS-Definitionen in einen HTML-Code einbinden und kenne die fünf unterschiedlichen Möglichkeiten von Style-Definitionen und deren Anwendung auf HTML-Tags.
  • Ich kann CSS-Eigenschaften mittel JavaScript auslesen bzw. manipulieren.

HTML5 – Audio und Video

  • Ich kann Audio-Dateien auf einer Web-Seite mit den Möglichkeiten von HTML5 und dem Controlbar des Browsers abspielen.
  • Ich kann Audio-Dateien mittels JavaScript und Zugriff auf das entsprechende Audio-Objekt ohne Verwendung des Standard-Controlbars abspielen.
  • Ich kann Video-Dateien auf einer Web-Seite mit den Möglichkeiten von HTML5 und dem Standard-Controlbar des Browsers abspielen.
  • Ich kann Video-Dateien mittels JavaScript und Zugriff auf das entsprechende Video-Objekt ohne Verwendung des Standard-Controlbars abspielen.
  • Ich kann YouTube-Videos mit den Möglichkeiten von HTML5 auf einer Web-Seite einbinden.

HTML5 – Zeichnen am Canvas

  • Ich kann mit einem HTML-Tag eine Zeichenfläche auf einer Web-Seite erzeugen.
  • Ich verstehe das Konzepts der Objekt-orientierten Programmierung und kann mit JavaScirpt auf eine Zeichenfläche innerhalb einer Web-Seite zugreifen.
  • Ich kann mit den entsprechenden Funktionen Linien, Rechtecke, Kreisbögen und Farbverläufe zeichnen, wie auch Text ausgeben.

 

7. Klasse Schwerpunkt Angewandte Informationstechnologie

Semester 5 Fortsetzung Programmieren mit C/C++

Problemstellungen und algorithmische Lösungen aus der Robotik mit einem Arduino-Roboter

2 Wochenstunden, Bizjak

Das OpenROBOT Robotik-System

  • Ich kenne das zugrundliegende Konzept des Projekts OpenROBOT und kann die Komponenten und Bestandteile eines robotischen Systems benennen und erklären.
  • Ich kann einen Roboter des Robotik-Systems OpenROBOT ausgehend von grafischen Darstellungen und Bildern zusammenbauen.
  • Ich kann Motoren und Sensoren an die jeweiligen Ports anschließen.
  • Ich kenne den grundlegenden Funktionsumfang der Arduino-Entwicklungsumgebung und finde mich in der Programmoberfläche zurecht.
  • Ich kann die virtuelle COM-Schnittstelle des angeschlossenen Controllers bestimmen und die Einstellungen für das entsprechende Arduino-Board und den darauf verbauten Mikrocontroller festlegen.
  • Ich verstehe die Grundstruktur eines Arduino Programms, kann die OpenROBOT-Bibliothek einbinden und kann ein Programm kompilieren und auf ein Arduino-Board übertragen.
  • Ich kann den Roboter einschalten, ein Programm starten und beenden und den Roboter ausschalten.
  • Ich kann die verschiedenen Sensoren, ihre Funktionsweise und ihre Einsatzzwecke unterscheiden.

Programmieren eines OpenROBOT-Roboter

  • Ich kann die LEDs auf der OpenROBOT-Hauptplatine ein- und ausschalten.
  • Ich kann die Zustände der Taster auf der OpenROBOT-Hauptplatine ermitteln oder auf ein Drücken der Taster reagieren.
  • Ich kann statischen Text und den Inhalt von Variablen am Display der OpenROBOT-Hauptplatine ausgeben.
  • Ich kann den Zustand eines Berührungssensors ermitteln oder auf ein kurzes Schließen des Kontakts in einem Berührungssensor reagieren.
  • Ich kann die Reflexionsintensitäten eines Lichtsensors einlesen und auf dem Display anzeigen.
  • Ich kann einen Ultraschallsensor konfigurieren und die Entfernungswerte am Display anzeigen.
  • Ich kann die Bewegungen um alle drei Drehachsen eines AHRS-Sensors auslesen und am Display anzeigen.
  • Ich verstehe die Anforderungen an eine Software für autonome Roboter um zu jederzeit eine optimale Auswertung aller Sensordaten und deren Auswertung gewährleisten zu können.
  • Ich kann zeitgesteuerte Abläufe unter Verwendung eines Zählers implementieren und dabei jederzeit auf die Änderung des Werts eines Sensors reagieren.
  • Ich kann unter der Verwendung eines closed loop-Verfahrens mit einem Ultraschallsensor in einem fixen Abstand einer Wand entlangfahren.
  • Ich kann mit einem Lichtsensor mit direkter Auswertung der Lichtwerte entlang einer schwarzen Linie auf einem weißen Untergrund fahren.
  • Ich verstehe das P-, PI- und PID-Verfahren und kann die Vorteile dieser algorithmischen Verfahren erklären.
  • Ich kann unter der Verwendung eines P-Algorithmus die Werte eines Lichtsensors zur Berechnung der Motorgeschwindigkeiten heranziehen, sodass das Folgen einer schwarzen Linie mit unterschiedlichen Krümmungsradien möglich ist, ohne dass der Roboter den Linienverlauf verliert.
  • Ich kann unter Verwendung des I- und D- Faktors den P-Algorithmus dahingehend verbessern, dass die Bewegungen des Roboters beim Folgen einer Linie kleiner werden und dieser auch bei sehr großen Änderungen der Krümmung sicher und verlässlich dem Verlauf der Linie folgen kann.

Kenntnisse in der Programmiersprache C / C++

  • Ich kann Variablen definieren und kann unterschiedliche Variablentypen hinsichtlich ihrer Verwendung unterscheiden und zielgerichtet einsetzen.
  • Ich kann mit Entscheidungsabfragen und Mehrfachentscheidungsabfragen die weitere Ausführung des Programms steuern.
  • Ich kann unterschiedliche Arten von Schleifen zur wiederholten Ausführung von Codesegmenten einsetzen.
  • Ich kann Arrays definieren, zielgerichtet einsetzen und verstehe die Vorteile bei der Verwendung dieser Datenstruktur.
  • Ich kann Funktionen mit und ohne Parameterübergabe definieren und diese aufrufen.
  • Ich kann Funktionen mit und ohne Rückgabewert definieren, diese aufrufen, wie auch deren Rückgabewerte weiterverarbeiten.
  • Ich verstehe das Konzept der Objektorientierten Programmierung und kann mögliche Einsatzgebiete in Bereich der Robotik erklären.
  • Ich kann Strukturen erstellen und diese benutzerdefinierten Datentypen sinngemäß einsetzen.
  • Ich kann Klassen definieren und dabei Zugriffsrechte, Attribute und Methoden festlegen.
  • Ich Objekte als Instanzen eines zusammengesetzten Typs (Struktur oder Klasse) definieren.
  • Ich kann bei der Definition einer Klasse einen Konstruktor festlegen und diesen beim Erzeugen eines Objekts aufrufen.

Semester 6 Serverseitige WWW-Programmierung

Erstellung von Datenbank-basierenden Web-Applikationen mit PHP und MySQL

PHP Grundlagen

  • Ich kenne den Unterschied zwischen Client-seitigen und Server-seitigen Skriptsprachen bei der Erstellung von interaktiven Web-Seiten.
  • Ich weiß um die Voraussetzungen für die Bereitstellung von Web-Seiten, die PHP-Code enthalten Bescheid und kann mit einem FTP-Client Dateien auf eine Web-Server übertragen.
  • Ich kann PHP-Code in eine HTML-Datei einbinden.
  • Ich kann mittels PHP HTML-Code auf einer Web-Seite ausgeben.
  • Ich kann Variablen verwenden, elementare mathematische Berechnungen ausführen und die Werte von Variablen anzeigen lassen.
  • Ich kann mit Hilfe eines Query-Strings Werte zwischen mehreren Dateien austauschen.
  • Ich kann mit HTML Formulare innerhalb einer Web-Seite platzieren und die Formulardaten an eine Datei senden.
  • Ich kann Formulardaten auswerten, die durch einen Formular-Submit an eine Datei gesendet wurden
  • Ich kann Entscheidungsabfragen zur Ablaufsteuerung einsetzen und kenne die möglichen Vergleichs- und Verknüpfungsoperatoren, die in Bedingungen von Entscheidungsabfragen zum Einsatz kommen können.
  • Ich kenne Datums- und Zeitfunktionen und kann damit auch die gewünschte Formatierung Datums- und Zeitangaben festlegen.
  • Ich kann das wiederholte Ausführen von Codesegmenten mit Hilfe von Schleifenstrukturen implementieren.
  • Ich kann externe HTML- oder PHP-Dateien in eine Seite einbinden.
  • Ich kann Funktionen mit oder ohne Parameterübergabe definieren und diese sinnvoll einsetzen um mehrfach benötigte Codeteile auszulagern.

Datenbank-basierte Web-Applikationen mit PHP und MySQL

  • Ich weiß über benötigte Software- und Server-Voraussetzungen um eine Datenbank-Applikation zu implementieren, die auf einem Web-Server läuft und die Daten selbst auf einem MySQL-Server abgelegt werden.
  • Ich kann den Ablauf eines Zugriffs auf eine PHP-Datei mit Anbindung an einen MySQL-Server und die Datenübertragung zwischen allen beteiligten Stellen erklären.
  • Ich kann mit der Administrationsoberfläche phpMyAdmin eine Tabelle in einer bestehenden Datenbank anlegen und weiß, was dabei zu beachten ist.
  • Ich kann mit PHP die Verbindung zu einem MySQL-Server herstellen.
  • Ich kenne die Syntax der grundlegenden SQL-Befehle SELECT, INSERT, UPDATE und DELETE zum Abfragen, Hinzufügen, Ändern und Löschen von Datensätzen, wie auch mögliche Erweiterungen in der Syntax zum Sortieren oder Filtern von Datensätzen.
  • Ich weiß über die Gefahren von unerlaubten Eindringversuchen in Datenbank-basierende Web-Applikationen mit dem Verfahren einer SQL-Injection und weiß über Strategien und die Umsetzung Bescheid diese bei eigenen Projekten abzufangen.
  • Ich kenne den grundsätzlichen Aufbau der Oberfläche einer Datenbankverwaltung und kann die entsprechenden Seiten mit den jeweiligen Benutzerformularen für das Hinzufügen, Bearbeiten und Löschen von Datensätzen erstellen.
  • Ich kann eine Datei so strukturieren, dass diese Code für die Anzeige eines Formulars, wie auch für die Auswertung der Formulardaten derselben Seite beinhaltet.
  • Ich verstehe die Übergabe von Daten zwischen Dateien über einen Query-String oder Formularfelder und kann diese je nach Situation und Anforderung sinngemäß richtig einsetzen.

 

8. Klasse Schwerpunkt Angewandte Informationstechnologie

Semester 7 Einführung in das Programmieren von Apps mit JAVA

Erstellung von Apps für Android

2 Wochenstunden, Philipp

Entwicklungsumgebung

  • Ich kenne die Android-Plattform und weiß über das grundsätzliche Konzept der Erstellung einer Software für ein Betriebssystem unter Verwendung eines Frameworks Bescheid.
  • Ich kenne die Grundvoraussetzungen für die Entwicklung von Apps für das Betriebssystem Android und kann die benötigte Software auf einem Computer installieren und einrichten.
  • Ich finde mich in der Entwicklungsumgebung zurecht und kann neue Projekte anlegen und diese auch zur weiteren Bearbeitung wieder öffnen.
  • Ich kenne die Struktur von Android-Projekten und kann eine App in einem Emulator und auf einem Gerät testen.

Java Grundlagen

  • Ich kann Variablen definieren und diesen Werte zuweisen.
  • Ich kenne Bezeichner und Schlüsselwörter in Java und weiß über deren Verwendung in einer Programmiersprache Bescheid.
  • Ich verstehe das Konzept von Klassen und Objekten in Java.     
  • Ich kann Objekte erzeugen und initialisieren und auch Methoden von Objekten aufrufen.
  • Ich kann auf Eigenschaften von Objekten zugreifen und diese auch setzen.
  • Ich kann Interfaces und Java Packages einbinden und weiß, wie diese in eigenen Projekten zu verwenden sind.
  • Ich kann den Ablauf mit einer einfachen Verzweigung oder mit einer Mehrfachverzweigung steuern.
  • Ich kann die wiederholte Ausführung von Programmcode mit Schleifen implementieren.

Grundlagen von Layouts, Views und Komponenten

  • Ich kann eine einfache Oberfläche erstellen.
  • Ich weiß über den Unterschied von Layouts, Views, Komponenten und Widget Bescheid.

Grundlegende Bausteine einer Android-App     

  • Ich verstehe das Konzept von Layouts, Activities und Intents.    
  • Ich kann Layouts erstellen und auf Klick-Ereignisse der Oberfläche reagieren.     
  • Ich kann mit Intents eine andere Activity aus der aktuellen Activity aufrufen.
  • Ich kann ein Optionsmenü erstellen.    
  • Ich kann String-Ressourcen verwalten, anlegen und referenzieren.
  • Ich kann ActionBar-Icons erstellen und verwenden.
  • Ich verstehe die Konzepte von Arrays und Listen und kann Daten in ListViews anzeigen.
  • Ich kann eine Audio-Datei aufnehmen und wiedergeben.
  • Ich kann die Google Maps Api V und LocationService verwenden und in eigene Apps einbinden.

Veröffentlichung einer App im Play Store

  • Ich kann eine App in den Play Store mit eigener Signatur exportieren.
  • Ich kann eine App in den Play Store hochladen.
  • Ich kann einen Store-Eintrag erstellen und Icons und Screenshots verwalten.

Semester 8 Linux Grundlagen und Python

Raspberry Pi, Einführung Linux, Einführung Python, DIY-Hardware für den Raspberry Pi

2 Wochenstunden, Brandl

Raspberry Pi

  • Ich kenne den grundlegenden Aufbau eines Raspberry Pi Board und weiß über alle Anschlussmöglichkeiten externer Hardware Bescheid.
  • Ich kann ein fertiges Linux-Image auf eine SD-Karte spielen, ein Raspberry Pi Board mit Maus, Tastatur und Monitor verbinden und dieses in Betrieb nehmen.
  • Ich kenne die Konfigurationsoberfläche, die beim ersten Booten eines fertigen Images erscheint und kann die grundlegenden Einstellungen treffen um das Rapberry Pi Board als Desktop Computer zu verwenden.
  • Ich kenne die Möglichkeiten Netzwerkeinstellungen festzulegen und kann ein Raspberry Pi Board in einem lokalen Netzwerk einbinden.
  • Ich kann Anwendungsprogramme downloaden und installieren.

Grundlagen Linux

  • Ich kenne die Linux-Shell und weiß über deren Bedeutung bei der Administration und Verwaltung eines Linux-Systems Bescheid.
  • Ich kenne grundlegende Kommandozeilenbefehle für die Verwaltung von Dateien und Ordner.
  • Ich kann die Inhalte von Textdateien in der Linux-Shell anzeigen lassen und bearbeiten.
  • Ich kenne den Aufbau des Linux-Dateisystems, kenne die Möglichkeiten Berechtigungen für Dateien oder Ordner zu setzen.

Anschlussmöglichkeiten an die GPIO-Pins

  • Ich kenne die Anschlussmöglichkeiten der GPIO-Pins eines Raspberry Pi Boards und kann die Funktionsweise von digitalen Eingängen, digitalen Ausgängen, PWM Ausgängen und analogen Eingängen und deren Einsatzmöglichkeiten unterscheiden.
  • Ich verstehe die unterschiedlichen Schnittstellen (UART, I2C und SPI) über die Mikrocontroller miteinander kommunizieren können.
  • Ich kann ein Breadboard an die GPIO-Pins eines Raspberry Pi Boards anschließen und verstehe die interne elektrische Beschaltung der Kontakte eines Breadboards.

Grundlagen Python – Zugriff auf die GPIO-Pins

  • Ich kenne den Unterschied zwischen einer Programmiersprache und eine Skriptsprache und weiß über die Einsatzmöglichkeiten von Python auf unterschiedlichen Computersystemen Bescheid.
  • Ich kann in einem Texteditor ein Python-Skript erstellen, dieses abspeichern und in den Kommandozeilen-Shell ausführen.
  • Ich kann den Vorwiderstand einer LED berechnen um diese an einen digitalen Ausgang anzuschließen und diese mit einem Programm ein- und ausschalten.
  • Ich kann den Zustand an einem digitalen Eingang unter der Verwendung eines externen Pull-Up-Widerstandes einlesen.
  • Ich kann den Zustand an einem digitalen Eingang unter der Verwendung eines internen Pull-Up-Widerstandes einlesen.
  • Ich kann Spannungen an analogen Eingängen messen.
  • Ich kann ein PWM-Signal an einem digitalen Ausgang erzeugen um damit die Helligkeit einer Leuchtdiode zu steuern.
  • Ich verstehe grundlegende Elemente der Skriptsprache Python wie Variablen, Entscheidungsabfragen und Schleifen und kann diese in eigenen Programmen einsetzen.

 

Wahplflichtfach Multimedia "Die Welt durch eine Linse"

2 Wochenstunden 6., 7. oder 8. Klasse, Stadler

Semester 1

Grundlagen Videoschnitt

  • Ich kann unterschiedliche aktuelle Videoprogramme nennen und diese auch anwenden.
  • Ich kann vorgegebene Videoclips in einem Videoschnittprogramm bearbeiten.
  • Ich kann mit der Videokamera, meinem Handy und einem Stativ umgehen.
  • Ich kann mit Hilfe von Youtube-Tutorials eigene Videos bearbeiten.
  • Ich weiß, auf welche Punkte man beim Videodreh achten muss.
  • Ich verstehe die Notwendigkeit eines Drehbuches bei einer Filmerstellung.
  • Ich weiß, wie man Videos selbst mit einem Handy erstellt und diese Clips auf den eigenen PC übertragen kann.
  • Ich kenne unterschiedliche Videoformate und kann diese in andere Formate mit Hilfe eines Converters umwandeln.
  • Ich weiß, dass bei der Veröffentlichung von Medien das Urheberrecht eine wichtige Rolle spielt und beachte es.
  • Ich verstehe den Aufbau eines Stop-Motion-Videos und kann diese Art von Videos auch selbst erstellen.
  • Ich weiß, wie man einen Vorspann, Übergänge und einen Abspann im Videoschnittprogramm erstellt.
  • Ich kann ein eigenes Tutorial mit Hilfe von Onlineprogrammen erstellen.
  • Ich kann im Team eigene Ideen umsetzen und präsentieren.
  • Ich nutze die Möglichkeit von Lehrausgängen und etwaigen Exkursionen im Wahlpflichtfach.
  • Ich kann mit Hilfe der ePortfoliosoftware Mahara meine Unterrichtsergebnisse dokumentieren.

Audiobearbeitung

  • Ich verstehe die Wichtigkeit von Tönen und Musik bei der Videoerstellung.
  • Ich kann mit freien Programmen Audiodateien bearbeiten und selbst erstellen.
  • Ich kann mit Hilfe eines Headsets eigene Tonaufzeichnungen machen.
  • Ich weiß, wie man diese Audiodateien in ein Videoschnittprogramm laden und dort bearbeiten kann.
  • Ich weiß, wo man lizenzfreie Musik im Internet findet.
  • Ich kann Musikdateien in unterschiedliche Formate speichern oder mit Hilfe eines Converters konvertieren.
  • Ich kann ein vorgegebenes Video kreativ mit eigenen Geräuschen vertonen.
  • Ich habe Zeit um meine eigenen Ideen in Projekte einfließen zu lassen.

Praktische Arbeiten im ersten Semester

  • Erstellen eines eigenen Stop-Motion-Videos und streamen auf Youtube.
  • Erstellen eines Drehbuches für das Stop-Motion-Video.
  • Erstellen eines Tutorials zu einem bestimmten Arbeitsprozesses am Computer und streamen der Mediendatei auf Youtube.
  • Erstellen eines Anrufbeantworters mit Hilfe eines Audioprogrammes und streamen des Ergebnisses auf Youtube.
  • Vertonen eines bestehenden Videos mit Hilfe von selbst gemachten Geräuschen.
  • Alle erstellten Projekte werden in Mahara dokumentiert

Semester 2

Videoschnitt vertiefend

  • Ich kann unterschiedliche Schnitttechniken nennen und diese in einem Videoclip auch anwenden.
  • Ich weiß, wie man Blenden in einem Videoschnittprogramm erstellt und kann die Musikspur entsprechend modifizieren.
  • Ich verstehe die Wichtigkeit der präzisen Abstimmung von Film und Sound um ein spannendes Ergebnis zu erzielen.
  • Ich kann mit meinem Handy nach Youtube-Anleitung verschiedene „Handyhacks“ nachmachen oder auch neue erfinden.
  • Ich verstehe die Wichtigkeit der präzisen Abstimmung von Film und Sound um ein spannendes Ergebnis zu erzielen.
  • Ich habe Zeit um meine eigenen Ideen in Projekte einfließen zu lassen und aktuelle Themen zu bearbeiten.

Fotomontage und Fotobearbeitung

  • Ich weiß, dass man mit Bildern manipulieren kann und weiß wie man Manipulationen unterschiedlichster Art in einem Bildbearbeitungsprogramm erstellen kann.
  • Ich kann mit Web 2.0 Tools Collagen erstellen oder einfache Bearbeitungen am Bild durchführen.
  • Ich kann Inhalte von Youtube-Videos nachmachen/nachstellen und mit Hilfe des Perspektivenwechsels ansprechende Bilder erzeugen.

Praktische Arbeiten

  • Experimentieren im Audioprogramm mit der Frequenz, den verschiedenen Effekten und möglichen Kompressionsmöglichkeiten.
  • Arbeiten mit dem eigenen Handy – Vorlage ist ein Youtube Clip „Handyhacks“.
  • Erstellen eines Fake-Videos um hier gezielt auf die Problematik von Fakes im Internet zu zeigen.
  • Erstellen von Bildern/Collagen aus unterschiedlichen Blickwinkeln.
  • Aktuelle Themen können hier aufgegriffen werden.

Abschlussprojekt – Ende des Semesters

  • Am Ende des Semsters erstelle ich eigenständig ein kleines Video, welches auf Youtube gestreamt und in der Gruppe präsentiert wird.
  • Die Dokumentation erfolgt wie gewohnt in Mahara.

 

Wahplflichtfach Robotik

2,4 oder 6 Wochenstunden 6., 7. oder 8. Klasse, Brandl

Allgemeines

Die Lehr- und Lerninhalte aller sechs Semesterkurse orientieren sich grundsätzlich an Aufgabenstellungen von RoboCup Junior, der weltweit größten Bildungsinitiative im Bereich der Robotik deren Ziel es ist junge Menschen für Technik zu interessieren. Bei der Ausrichtung von nationalen und internationalen steht allerdings nicht der Wettbewerb, sondern primär der Erfahrungsaustausch der Teilnehmerinnen und Teilnehmer im Vordergrund.

Die Schülerinnen und Schüler entscheiden sich zu Beginn des Besuches dieses Wahlpflichtfach für eine der drei Aufgabenkategorien Rescue Line, Rescue Maze und Soccer.
Anhand einer diese drei konkreten Aufgabenstellungen sollen die, im Folgenden in den Semesterkursen angeführten Lerninhalte erarbeitet werden.

Begleitend dazu wird den Schülerinnen und Schülern die Möglichkeit geboten jedes Jahr an nationalen Wettbewerbe und - im Falle von Qualifikationen - an internationalen Wettbewerben, wie den Europa- oder Weltmeisterschaften teilzunehmen.

Didaktische Grundsätze

Als Unterrichtsprinzip gilt in diesem Wahlpflichtfach die Vorgabe der Bildungsinitiative RoboCup Junior, deren großes Anliegen es auch ist, junge Menschen zum selbstständigen Forschen, Entwickeln und Arbeiten im Team zu animieren und nicht nur Lerninhalte reproduzieren zu können.

Aus der Preambel zum Regelwerk von RoboCup Junior:

Construction and Programming have to be performed exclusively by the students
Robots must be constructed and programmed exclusively by student members of the team. Mentors, teachers, parents or companies should not be involved in the design, construction, assembly, programming or debugging of robots.

Die Schülerinnen und Schüler sollen großteils autonom und selbstständig arbeiten und sich Wissen und Kenntnisse auch durch die jahrgangsübergreifende Zusammenarbeit mit älteren und erfahrenen Schülerinnen und Schülern aneignen.

Begleitend zu der Verfügungstellung von Materialien, unserer Robotik-Werkstatt zum freien Forschen, Experimentieren und Arbeiten wird es von Seiten der Mentoren auch immer wieder Theorieblöcke geben, bei denen grundlegende Kenntnisse in der Form von Frontalunterricht vermittelt werden.

Semester 1 Kennenlernen des KeplerBRAIN Robotik-Systems

  • Ich kann einen Roboter des Robotik-Systems KeplerBRAIN ausgehend von Modellen aus den Vorjahren und Bildern zusammenbauen.
  • Ich kann Motoren und Sensoren an die jeweiligen Ports anschließen.
  • Ich kann den Roboter einschalten, ein Programm starten und beenden und den Roboter ausschalten.
  • Ich kenne die Eigenschaften und Besonderheiten von LiPo-Akkus, kann diese im Betrieb sicher einsetzen und auch laden.
  • Ich kann die verschiedenen Sensoren, ihre Funktionsweise und ihre Einsatzzwecke unterscheiden.
  • Ich kann die Entwicklungsoberfläche von mbed starten und einen Roboter über die USB-Schnittstelle verbinden mit einem Computer verbinden und das erfolgreiche Herstellen einer Kommunikationsverbindung überprüfen.
  • Ich kann in der Entwicklungsoberfläche mbed die notwendigen Einstellungen zum Kompilieren eines Programms setzen.
  • Ich kann ein neues Projekt anlegen und in aus der Projektverwaltung öffnen.
  • Ich kann ein Programm Kompilieren und auf den Mikrocontroller übertragen.
  • Ich kann die Grundstruktur eines Programms für ein KeplerBRAIN Mainboard schreiben und die KeplerBRAIN Bibliothek einbinden.
  • Ich kann Motoren in unterschiedlichen Geschwindigkeiten und Richtungen drehen lassen und abstoppen.
  • Ich kann die Ausführung eines Programms an einer bestimmten Stelle für eine gewünschte Zeit anhalten.
  • Ich kann mithilfe einer Schleife bestimmte Codesegmente mehrfach ausführen lassen.
  • Ich kann Text und Zahlen am Display ausgeben lassen.
  • Ich kann mithilfe einer Schleife ein Programm dauerhaft ausführen lassen.
  • Ich kann festlegen welcher Sensor an einem Port angeschlossen ist.
  • Ich kann die Werte eines Sensors in einer Entscheidungsabfrage überprüfen.
  • Ich kann mithilfe einer Entscheidungsabfrage den weiteren Ablauf eines Programms steuern.

Semester 2 Grundlagen der Programmiersprache C

KeplerBRAIN Robotik-System

  • Ich kann Motoren und Sensoren an die jeweiligen Ports anschließen.
  • Ich kann den Roboter einschalten, ein Programm starten und beenden und den Roboter ausschalten.
  • Ich kenne die verschiedenen Sensoren, ihre Funktionsweise und kann ihre Einsatzzwecke unterscheiden.

mbed - Entwicklungsoberfläche

  • Ich kann einen Benutzeraccount in der mbed Entwicklungsoberfläche anlegen und finde mich in der Oberfläche zurecht.
  • Ich kann neue Projekt anlegen, Bibliotheken importieren und Projekte aus der Projektverwaltung öffnen.
  • Ich kann ein Programm Kompilieren und auf ein KeplerBRAIN Mainboard übertragen.
  • Ich kann Meldungen im Statusfenster analysieren und zur Fehlersuche interpretieren.

Grundlagen der Programmiersprache C unter Verwendung der KeplerBRAIN Bibliothek

  • Ich kann die Grundstruktur eines Programms mit Einbindung der KeplerBRAIN-Bibliothek schreiben.
  • Ich kann festlegen an welchen Ports Motoren angeschlossen sind.
  • Ich kann Motoren mit unterschiedlichen Geschwindigkeiten und Richtungen drehen lassen.
  • Ich kann Motoren abstoppen.
  • Ich kann die Ausführung eines Programms an einer bestimmten Stelle für eine gewünschte Zeit anhalten.
  • Ich kann die LEDs am KeplerBRAIN Mainboard ansteuern.
  • Ich kann Text am Display eines KeplerBRAIN Mainboards ausgeben lassen.
  • Ich kann eine Integer-Variable definieren.
  • Ich kann mithilfe einer while-Schleife bestimmte Codesegmente mehrfach ausführen lassen.
  • Ich kann mithilfe einer while-Schleife ein Programm dauerhaft ausführen lassen.
  • Ich kann mit einer if-Entscheidungsabfrage auf Eingaben der Taster eines KeplerBRAIN Mainboards reagieren.
  • Ich kann mithilfe einer Entscheidungsabfrage den weiteren Ablauf eines Programms steuern.
  • Ich kann die verschiedenen Vergleichsoperatoren in Bedingungen einer if-Abfrage unterscheiden und richtig einsetzen.
  • Ich kann logische Operatoren zum Verknüpfen von Bedingungen sinngemäß einsetzen.
  • Ich kann festlegen welcher Sensor an einem Port angeschlossen ist.
  • Ich kann die Werte eines Sensors auslesen und in einer Variable ablegen.
  • Ich kann Werte von Integer-Variablen am Display ausgeben.

Semester 3 2D- und 3D-CAD-Konstruktion und Fertigen mechanischer Bauteile

2D CAD Konstruktion – Fertigen von 2D Teilen mit einer Portalfräse

  • Ich kenne den Unterschied zwischen einem Vektor-orientierten Konstruktions- und einem Pixel-orientierten Zeichenprogramm und kann die Vorteile des Einsatzes eines Vektor-orientierten Konstruktions-Programms bei der Erstellung von technischen Zeichnungen erklären.
  • Ich kann Einstellungen für Einheiten und den Zeichenraster einer Zeichnung für die jeweilige Anforderung praktikabel festlegen.
  • Ich kann Basiselemente wie Strecken, Rechtecke oder Kreise mit der Maus oder durch Eingabe von Koordinaten zeichnen.
  • Ich verstehe die Vorteile des Zeichnens auf unterschiedlichen Layern und kann die Funktionen zum Anzeigen oder Sperren von Layern sinnvoll unterstützend bei der Erstellung einer Konstruktionszeichnung einsetzen.
  • Ich kenne erweiterte Zeichenfunktionen wie drehen, spiegeln, verschieben, gruppieren oder aufbrechen von Objekten um Arbeitsschritte zu vereinfachen und komplexe Objekte aus den Grundformen zu erstellen.
  • Ich kann zu einer Konstruktionszeichnung Bemaßungen hinzufügen und Anzeigeeinstellungen dafür festlegen.
  • Ich kann eine Zeichnung ausdrucken und diese je nach Anforderung entsprechend skalieren.

3D CAD Konstruktion – Fertigen von 3D-Objekten mit einem 3D-Drucker

  • Ich kenne die grundlegenden Schwierigkeiten bei der Konstruktion von dreidimensionalen Objekten auf einem zweidimensionalen Anzeigemedium und einem auf zwei Dimensionen beschränkten Eingabegerät, wie es eine Maus darstellt.
  • Ich verstehe das Konzept der gleichzeitigen Verwendung von 2D- und 3D-Ansichten in Anwendungen zur Konstruktion von dreidimensionalen Objekten.
  • Ich kann elementare geometrische Formen wie Rechtecke, Kreise oder Polygone auf einer Ebene zeichnen und diese dann durch Verwenden des entsprechenden Werkzeugs zu einem dreidimensionalen Objekt aufziehen.
  • Ich kann dreidimensionale Objekte drehen, verzerren, spiegeln und skalieren.
  • Ich kann komplexe Körper mittels Durchdringen und Verschmelzen von elementaren Körpern erzeugen.
  • Ich kann mit einem Werkzeug Kanten abschrägen oder abrunden.
  • Ich kann ein Objekt als STL-File exportieren um dieses in anderen Anwendungen weiterverwenden zu können.
  • Ich kann ein STL-File in einer Software zur Erzeugung von Druckdaten für eine 3D-Drucker öffnen und dabei etwaige Probleme unterschiedlicher Skalierung lösen
  • Ich kann Druckdaten für einen 3D-Drucker erstellen und dabei Parameter wie Schichtdicke, Infill, … hinsichtlich Qualität und Stabilität des gedruckten Körpers je nach Anforderung beurteilen und richtig wählen.
  • Ich kann eine 3D-Drucker für die Fertigung eines Objekts vorbereiten, weiß über die Einstellungen und Eigenschaften des verwendeten Materials Bescheid und kann einen Druckauftrag starten und überwachen.

Semester 4 Bau und Programmierung von Robotern für den Bewerb RoboCup Junior Austrian Open

  • Ich verfüge über ausreichende Kenntnisse, um ausgehend von fertigen elektronischen Komponenten, die im Rahmen des KeplerBRAIN-Robotik-Systems zur Verfügung stehen neue Konzepte für den Bau von Robotern für die jeweilige Aufgabenstellung zu entwickeln.
  • Ich kenne meine erlernten Fertigkeiten und kenne meine Fähigkeiten, sodass ich mich bei der Aufgabenverteilung in einem Team für das gesamte Team gewinnbringend einbringen kann.
  • Ich kann, ausgehend von bereits vorliegenden Lösungen, oder komplett neue Ideen verfolgend, mechanische Komponenten für die Grundstruktur und das Antriebssystems eines Roboters planen, konstruieren und auch fertigen.
  • Ich verfüge über einen Überblick über zur Zeit käuflich erwerbbare Sensoren, die bei den jeweiligen Aufgabenstellungen eingesetzt werden könnten und kenne Bezugsquellen und die Kosten.
  • Ich kann Software für ein KeplerBRAIN Mainboard selbstständig erstellen und auch Informationen und Werte von bekannten oder bislang noch nicht verwendeten Sensoren einlesen und weiterverarbeiten.
  • Ich kenne unterschiedliche Systeme zur Erfassung und Auswertung digitaler Bilddaten, kann diese hinsichtlich Funktionsumfang, Leistungsfähigkeit und Kosten/Nutzer für die zu lösende Aufgabenstellung beurteilen und gegebenenfalls auch in das eigene Robotik-System einbinden.

Semester 5 Entwicklung und Bau von Sensoren und Herstellung von Leiterplatten

Grundlagen der Elektronik

  • Ich kenne die physikalischen Größen Strom, Spannung und Wiederstand und verstehen deren Zusammenwirken in einem einfachen Stromkreis.
  • Ich kenne das Ohm´sche Gesetz und damit Berechnungen durchführen um z. B. den Vorwiderstand einer Leuchtdiode zu berechnen.
  • Ich kenn die physikalische Größe Leistung und weiß, wie dieser Zusammenhang von Strom und Spannung bei der Verwendung von Widerständen in einem Stromkreis zu berücksichtigen ist.
  • Ich kann elektronische Widerstände aufgrund der Bauform erkennen, die Größe des elektrischen Widerstands anhand der 4- oder 5-Ring-Kodierung ablesen und kenne auch das Schaltsymbol.
  • Ich verstehe die Funktion eines regelbaren Widerstands, kenne verschiedene Bauformen und das Schaltsymbol.
  • Ich weiß um die Funktion einer Diode in einem elektrischen Stromkreis Bescheid und kann das Schaltsymbol mit verschiedenen Bauformen von Dioden in Zusammenhang bringen, sodass ich diese richtig gepolt in Schaltungen einsetzen kann.
  • Ich kenne die Funktionsweise einer Leuchtdiode und weiß, was zu beachten ist, wenn eine Spannung an eine Leuchtdiode angelegt wird, um diese zum Leuchten zu bringen.
  • Ich verstehe die Funktion eines Kondensators in einer elektronischen Schaltung, kann unterschiedliche Bauformen unterscheiden und diese basierend auf den jeweiligen Schaltsymbolen richtig in elektronischen Schaltungen einsetzen.
  • Ich kann die Funktion eines Transistors erklären und weiß um dessen große Bedeutung für die gesamte Technik, wie auch Mikroelektronik Bescheid.

Grundlagen der Mikrocontroller-Elektronik

  • Ich kenne die grundsätzliche externe Beschaltung eines AVR Mikrocontrollers und kann diese auf einer Lochrasterplatine aufbauen.
  • Ich kenne die Anschlussmöglichkeiten eines AVR Mikrocontrollers und kann die Funktionsweise von digitalen Eingängen, digitalen Ausgängen, PWM Ausgängen und analogen Eingängen unterscheiden.
  • Ich verstehe die unterschiedlichen Schnittstellen (UART, I2C und SPI) über die Mikrocontroller miteinander kommunizieren können.
  • Ich weiß über die Stromversorgung eines AVR Mikrocontrollers Bescheid und kann eine Schaltung zur richtigen Spannungsversorgung mit einem Festspannungsregler aufbauen.
  • Ich kann Projekte in der Entwicklungsumgebung Atmel Studio anlegen, verwalten, öffnen, kompilieren und mit einem Programmieradapter über die ISP-Schnittstelle auf einen Mikrocontroller übertragen.
  • Ich kann eine Firmware für einen AVR Mikrocontroller erstellen, die mit einem anderen Mikrocontroller Daten über I2C oder SPI austauschen kann.

Leiterplattenentwurf

  • Ich kann einen einfachen Schaltplan analysieren und eine sinnvolle Platzierung von Bauteilen auf einer Platine festlegen.
  • Ich kann Bauteile aus der Bibliothek hinzufügen, diese Ändern und Bauteile neu erstellen.
  • Ich verstehe das Konzept der Verwendung unterschiedlicher Layer in einer Software zur Erstellung von Leiterplatten und kann sinngemäß Leiterbahnen und Informationen für den Bestückungsdruck auf den richtigen Layern zeichnen.
  • Ich kann das Rastermaß je nach Anforderung bewusst wählen und auch die Eigenschaften von Lötpunkten einstellen.
  • Ich kann die benötigten Dateien für die Fertigung einer Leiterplatte mit dem Verfahren des Isolationsfräsens exportieren und die entsprechenden Einstellungen richtig festlegen.
  • Ich kann die benötigten Dateien (Gerber- und Excellon-Files) für die industrielle Fertigung erstellen, dabei die Layer-Namen sinngemäß richtig vergeben und den Export in einer Software zur Betrachtung dieser Fertigungsdateien kontrollieren.
  • Ich kann gefertigte Leiterplatten bestücken, diese Schritt für Schritt in Betrieb nehmen um keine Bauteile bei etwaigen Fehlern zu zerstören und kenne auch verschiedene Herangehensweisen bei der Fehlersuche mit einem Messgerät.

Erweiterte Programmierkenntnisse C/C++

  • Ich kann Arrays definieren, zielgerichtet einsetzen und verstehe die Vorteile bei der Verwendung dieser Datenstruktur.
  • Ich kann Funktionen mit und ohne Parameterübergabe definieren und diese aufrufen.
  • Ich kann Funktionen mit und ohne Rückgabewert definieren, diese aufrufen, wie auch deren Rückgabewerte weiterverarbeiten.
  • Ich verstehe das Konzept der Objektorientierten Programmierung und kann mögliche Einsatzgebiete in Bereich der Robotik erklären.
  • Ich kann Strukturen erstellen und diese benutzerdefinierten Datentypen sinngemäß einsetzen.
  • Ich kann Klassen definieren und dabei Zugriffsrechte, Attribute und Methoden festlegen.
  • Ich Objekte als Instanzen eines zusammengesetzten Typs (Struktur oder Klasse) definieren.
  • Ich kann bei der Definition einer Klasse einen Konstruktor festlegen und diesen beim Erzeugen eines Objekts aufrufen.

Semester 6 Bau und Programmierung von Robotern für den Bewerb RoboCup Junior Austrian Open

  • Ich weiß um den derzeitigen technischen Stand der Entwicklung hinsichtlich der bei Robotern eingesetzten Sensoren Bescheid.
  • Ich kann in Bezug auf den Selbstbau und die zur Verfügung stehenden finanziellen Mittel Kosten-Nutzen-Beurteilungen treffen und kenne Bezugsquellen elektronischer Bauteile, Sensoren und Aktoren.
  • Ich kenne unterschiedliche Systeme zur Erfassung und Auswertung digitaler Bilddaten, kann diese hinsichtlich Funktionsumfang, Leistungsfähigkeit und Kosten/Nutzer für die zu lösende Aufgabenstellung beurteilen und gegebenenfalls auch in das eigene Robotik-System einbinden.
  • Ich kann die erworbenen Kenntnisse aus den Semestern 1, 2, 3 und 5 für die eigenständige Entwicklung eines Roboters für den jeweiligen Bewerb anwenden und einsetzen.
  • Ich kann ein Konzept zur sinnvollen Aufgabentrennung durch die Verwendung mehrerer Mikrocontroller entwickeln und die Vor- und Nachteile abwiegen.
  • Ich kann selbst Sensoren (mit oder ohne eigenem Mikrocontroller) entwickeln oder weiterentwickeln und die dazu benötigten Leiterplatten selbst erstellen, fertigen lassen und bestücken.
  • Ich kann zweidimensionale oder dreidimensionale mechanische Komponenten konstruieren und diese mit einer CNC-Fräse fertigen lassen oder mit einem 3D-Drucker selbst fertigen.
  • Ich verfüge über Kenntnisse in der Programmiersprache C/C++ um Firmware für Sensoren oder objektorientierte Software für den Hauptprozessor eines Roboters erstellen zu können.

Published on