%*************************************************************** *
%                   Hochschule Hamm-Lippstadt                    *
%*************************************************************** *
% Modul	          : controlLED.m                                 *
%                                                                *
% Datum           : 25.10.2024                                   *
%                                                                *
% Funktion        : Ansteuern von 5 LEDs in Abhaengigkeit des    *
%                   Abstands zwischen Sensor und Waagschale      *
%                                                                *
% Implementation  : MATLAB 2024a                                 *
%                                                                *
% Req. Toolbox    : -                                            *
%                                                                *
% Author          : Dorothea Tege, Sophie Koerner                * 
%                                                                *
% Letzte Änderung : 11.01.2025                                   *
%*****************************************************************



function [LED1, LED2, LED3, LED4, LED5] = controlLED(sensorValue)
    % Inputs:
    % sensorValue: Wert des Sensors zwischen <=1.60*10^-5 und >=1.90*10^-5
    %
    % Outputs:
    % LED1, LED2, LED3, LED4, LED5: 0 (aus) oder 255 (an)

    % Standardmäßig alle LEDs aus
    [LED1, LED2, LED3, LED4, LED5] = deal(0, 0, 0, 0, 0);

    % Abstandsbereiche für die LEDs
    if sensorValue <= 1.60*10^-5                                               % Abstand der Schale am geringsten, Gewicht am hoechsten
        [LED1, LED2, LED3, LED4, LED5] = deal(255, 0, 0, 0, 0); % Nur LED1 (rot) an
    elseif sensorValue <= 1.65*10^-5
        [LED1, LED2, LED3, LED4, LED5] = deal(0, 255, 0, 0, 0); % Nur LED2 (gelb) an
    elseif sensorValue <= 1.67*10^-5
        [LED1, LED2, LED3, LED4, LED5] = deal(0, 0, 255, 0, 0); % Nur LED3 (gruen)an
    elseif sensorValue <= 1.70*10^-5
        [LED1, LED2, LED3, LED4, LED5] = deal(0, 0, 0, 255, 0); % Nur LED4 (gelb) an
    elseif sensorValue <= 1.90*10^-5                                           % Abstand der Schale am hoechsten, Gewicht am geringsten
        [LED1, LED2, LED3, LED4, LED5] = deal(0, 0, 0, 0, 255); % Nur LED5 (rot) an
    end
end