Arduino Programmierung mit MATLAB: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 60: | Zeile 60: | ||
</source> | </source> | ||
|} | |} | ||
= Aufgabe | = Aufgabe 4: LED mit MATLAB<sup>®</sup> dimmen = | ||
# Stecken Sie eine Diode in D11 gegen GND. | # Stecken Sie eine Diode in D11 gegen GND. | ||
# Dimmen Sie die Diode mit einem MATLAB<sup>®</sup>-Skript mittels | # Dimmen Sie die Diode mit einem MATLAB<sup>®</sup>-Skript mittels Potentiometer (vgl. Aufgabe 2). | ||
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" | {| role="presentation" class="wikitable mw-collapsible mw-collapsed" | ||
| <strong>Musterlösung </strong> | | <strong>Musterlösung </strong> | ||
Version vom 31. März 2025, 14:04 Uhr
Inhalt
- Erste Schritte mit dem MATLAB-Supportpaket für Arduino-Hardware
- Arduino Explorer App
- Erste Schritte mit MATLAB
- Arduino Programmierung mit MATLAB®
- Ultraschallsensor einlesen
Aufgabe 1: Arduino Explorer
Testen Sie zuerst die Verbindung zum Arduino mit dem Arduino Explorer. Den passenden port finden Sie über den Windows Geräte-Manager.
>> arduinoExplorer
- Schließen Sie ein Potentiometer an den analogen Eingang
A0an. - Visualisieren Sie die Spannung an
A0mit demarduinoExplorer. - Stecken Sie eine Diode in D13 gegen GND.
- Schalten Sie die Diode via
arduinoExploreran uns aus.
Aufgabe 2: Poti mit MATLAB® lesen
- Schließen Sie ein Potentiometer an den analogen Eingang
A0an. - Visualisieren Sie die Spannung an
A0mit einem MATLAB®-Skript für 100 Werte über der Zeit in s.
| Musterlösung |
close all; clc; % Initialisierung
if ~isobject(hArduino)
hArduino = arduino('COM8','Uno') % Verbindung aufbauen
end
tic % Timer starten
for i=1:100
Spannung(i)= readVoltage(hArduino,'A0');
Zeit(i) = toc;
pause(0.1) % in s
end
plot(Zeit,Spannung,'r.-')
xlabel('Zeit in s')
ylabel('Spannung in V')
|
Aufgabe 3: LED mit MATLAB® schalten
- Stecken Sie eine Diode in D13 gegen GND.
- Schalten Sie die Diode mit einem MATLAB®-Skript zyklisch an und aus.
| Musterlö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
writeDigitalPin(hArduino, 'D13', 0);
pause(0.5);
writeDigitalPin(hArduino, 'D13', 1);
pause(0.5);
end
clear hArduino
|
Aufgabe 4: LED mit MATLAB® dimmen
- Stecken Sie eine Diode in D11 gegen GND.
- Dimmen Sie die Diode mit einem MATLAB®-Skript mittels Potentiometer (vgl. Aufgabe 2).
| Musterlö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
|
→ zurück zum Hauptartikel: BSE Angewandte Informatik - SoSe24