Angewandte Informatik: Analoge und digitale Ein-und Ausgänge

| Autor: | Prof. Dr.-Ing. Schneider |
| Lektion 3 | Business and Systems Engineering, Angewandte Mathematik und Informatik, Übung, Sommersemester |
| Modulbezeichnung: | BSE-M-2-1.09 |
Inhalt
- Programmierrichtlinien
- Taster mittels Arduino auslesen, entprellen, Pull-Up/Pull-Down-Widerstand
- Zähler inkrementieren
switch..case-Verzweigung- Ansteuerung einer RGB-LED
- Programmierrichtlinie für MATLAB
Lernziele
Nach Durchführung dieser Lektion
- können Sie Quelltext entsprechend der Programmierrichtlinien schreiben.
- einen Taster über eine Iterrupt-Leitung einlesen und entprellen.
- können Sie mittels Taster und
switch..case-Verzweigung eine LED in verschiedenen Helligkeiten ansteuern - eine RGB-LED in verschiedenen Farben ansteuern.
Lernzielkontrolle
- Wurde der Taster erfolgreich eingelesen und entprellt?
- Wozu benötigt man einen Pull-Up/Pull-Down-Widerstand?
- Wurde der Quelltext durch Header und Kommentare aufgewertet?
- Welche Möglichkeiten gibt es einen Zähler zu in-/dekrementieren?
- Wurde in Aufgabe 3.3 ein
switch...caseverwendet? - Welche Version der RGB-LED haben Sie verwendet (gemeinsame Anode oder Kathode)?
Tutorials
- Erste Schritte mit dem MATLAB-Supportpaket für Arduino-Hardware
- Arduino Explorer App
- Erste Schritte mit MATLAB
- Arduino Programmierung mit MATLAB®
- Wiki-Artikel: Linearpotentiometer
- Wiki-Artikel: Piezo_Lautsprecher
- Wiki-Artikel: Passiver_Lautsprecher
- Studieren Sie den Artikel Interrupt Service Routine.
Versuchsvorbereitung
- Studieren Sie die Tutorials
- Versuchen Sie die Lernzielkontrollfragen zu beantworten
Aufgabe 2: LED mit MATLAB® dimmen


- Schließen Sie das Linearpotentiometer (vgl. Abb. 1) an deb analogen Eingang
A0des Arduino an. - Messen Sie den Verfahrweg des Potentiometers.
- Schließen Sie eine Diode mit 100 Ω Vorwiderstand gegen GND an einen PWM-fähigen Digitaleingang (z. B.
D11~). - Dimmen Sie die Diode mit einem MATLAB®-Skript mittels Potentiometer.
- Stellen Sie nachfolgende Ergebnis dar:
- Digitalwort D
- Widerstand in Ω
- Helligkeit in %
- Strecke in cm
| Teillösung |
close all; clc; % Initialisierung
if exist('hArduino')==0
hArduino = arduino('COM8','Uno'); % Arduino Objekt erzeugen
disp('Neues Arduino Objekt erzeugt.')
end
nMesswerte = 100;
%% Messschleife
for i=1:nMesswerte
Spannung = readVoltage(hArduino, 'A0') % Spannung messen
writePWMVoltage(hArduino, 'D11', Spannung); % LED via PWM dimmen
pause(0.1);
end
clear hArduino
|
| Tipp 1 |
| Die LED benötigt einen 100 Ω Vorwiderstand, damit Sie nicht kaputt geht (Farbcode: Braun-Schwarz-Braun). |
| Das lange Beinchen der Diode ist Plus (+) und das Kurze Minus (-, GND). |
| Die PWM-fähigen Ports sind mit ~ markiert. Nehmen Sie beispielsweise Digitalport 11~. |
Arbeitsergebnis: dimmeLED.m
→ zurück zum Hauptartikel: BSE Angewandte Informatik - SoSe26