Arduino Programmierung mit MATLAB: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 85: Zeile 85:
= Aufgabe 5: Taster und Summer =
= Aufgabe 5: Taster und Summer =
[[Datei:ArduinoGettingStartedExample 03.png|thumb|rigth|300px|Abb. 2: Verkabelungsplan für taster und Summer]]
[[Datei:ArduinoGettingStartedExample 03.png|thumb|rigth|300px|Abb. 2: Verkabelungsplan für taster und Summer]]
# Stecken Sie eine Diode in D11 gegen GND.
# Lesen Sie den Taster via D12 ein (vgl. Abb 2).
# Dimmen Sie die Diode mit einem MATLAB<sup>®</sup>-Skript mittels Potentiometer (vgl. Aufgabe 2).
# Steuern Sie den Summer bei Tasterdruck via D11 an.
# Eine rote LED signalisiert die aktive Programmlaufzeit.
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Musterlösung&thinsp;</strong>
| <strong>Musterlösung&thinsp;</strong>
Zeile 92: Zeile 94:
| <source line lang="matlab" style="font-size:medium">close all; clc; % Initialisierung
| <source line lang="matlab" style="font-size:medium">close all; clc; % Initialisierung
if exist('hArduino')==0
if exist('hArduino')==0
  hArduino = arduino('COM8','Uno'); % Arduino Objekt erzeugen
    hArduino = arduino('COM8','Uno'); % Arduino Objekt erzeugen
  disp('Neues Arduino Objekt erzeugt.')
    disp('Neues Arduino Objekt erzeugt.')
end
end


configurePin(hArduino, 'D12', 'pullup');
nMesswerte = 100;
nMesswerte = 100;
%% Messschleife
%% Messschleife
for i=1:nMesswerte
for i=1:nMesswerte
     Spannung = readVoltage(hArduino, 'A0')       % Spannung messen
     writeDigitalPin(hArduino, 'D13', 1); % Achtung - System läuft
     writePWMVoltage(hArduino, 'D11', Spannung);   % LED via PWM dimmen
    speaker_status = readDigitalPin(hArduino, 'D12');
    pause(0.1);
     if speaker_status == 0
        playTone(hArduino, 'D11', 1200, 1);
    else
        % Change duration to zero to mute the speaker
        playTone(hArduino, 'D11', 1200, 0);
    end
end
end
writeDigitalPin(hArduino, 'D13', 0);
clear hArduino
clear hArduino
</source>
</source>

Version vom 31. März 2025, 14:14 Uhr

Inhalt

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

  1. Schließen Sie ein Potentiometer an den analogen Eingang A0 an.
  2. Visualisieren Sie die Spannung an A0 mit dem arduinoExplorer.
  3. Stecken Sie eine Diode in D13 gegen GND.
  4. Schalten Sie die Diode via arduinoExplorer an uns aus.

Aufgabe 2: Poti mit MATLAB® lesen

  1. Schließen Sie ein Potentiometer an den analogen Eingang A0 an.
  2. Visualisieren Sie die Spannung an A0 mit einem MATLAB®-Skript für 100 Werte über der Zeit in s.

Aufgabe 3: LED mit MATLAB® schalten

  1. Stecken Sie eine Diode in D13 gegen GND.
  2. Schalten Sie die Diode mit einem MATLAB®-Skript zyklisch an und aus.

Aufgabe 4: LED mit MATLAB® dimmen

Abb. 1: LED und Potentiometer mit dem Arduino verbinden
  1. Stecken Sie eine Diode in D11 gegen GND.
  2. Dimmen Sie die Diode mit einem MATLAB®-Skript mittels Potentiometer (vgl. Aufgabe 2).

Aufgabe 5: Taster und Summer

Abb. 2: Verkabelungsplan für taster und Summer
  1. Lesen Sie den Taster via D12 ein (vgl. Abb 2).
  2. Steuern Sie den Summer bei Tasterdruck via D11 an.
  3. Eine rote LED signalisiert die aktive Programmlaufzeit.

→ zurück zum Hauptartikel: BSE Angewandte Informatik - SoSe25