Projekt 52: Lautstärkeanzeige und Visualisierung: Unterschied zwischen den Versionen
Zeile 86: | Zeile 86: | ||
== Quellcode in der Arduinosoftware == | == Quellcode in der Arduinosoftware == | ||
In den folgenden Zeilen ist der Quellcode, sowie er auf dem Arduino Uno implementiert worden ist, geskriptet. | |||
#include <LiquidCrystal.h> | #include <LiquidCrystal.h> |
Version vom 17. Januar 2018, 13:26 Uhr
Autor: Andre Adämmer und Dominik-Kai Meyer
Betreuer: Prof. Dr. Mirek Göbel
Einleitung
Dieser Artikel beschreibt das Projekt 52, welches im Rahmen des "Elektrotechnik Fachpraktikums" im WS 2017/2018 von den genannten Autoren des Studienganges "Business and System Engineering" im zweiten Fachsemester erstellt worden ist. Dieser Wikieintrag ist Teil der gesamten Projektleistung und dient dazu das Projekt hinreichend zu beschreiben und zu dokumentieren. Zum Projekt selber kann man sagen, dass es sich um die Verarbeitung von Signalen eines Loudness-Sensors mittels Arduino Uno und die daraus entsprechende Ausgabe an Aktoren handelt. Aktoren hier, sind LED und eine LCD-Anzeige. Allgemein wird mit der Verschaltung das Konzept der "Lernampel" verfolgt, das heißt das je nach unterschiedlicher Lautstärke eine grüne, orange oder bei unzulässiger Lautstärke eine rote LED leuchtet. Der LCD-Display liefert die Werte des Sensors in der Einheit Dezibel (dB). Die Idee für das Projekts leitete sich aus der oft zu hohen Geräuschkulisse in den PC-Pools ab.
Lernziele und Lösung der Problemstellung
Theoretischer Hintergrund
Arduino Uno
- mit verschiedenen Schachtelungen
- und so weiter
-
- mit erneuter Unterebene
Liste der notwendigen Bauteile
Tabelle 1: Liste der Bauteile.
Anzahl | Bauteil | Preis gesamt(€) |
---|---|---|
1 | Arduino Uno | 22,40 |
1 | Stromkabel | 2,95 |
2 | Scharnier | 3,58 |
1 | Trichter | 2,99 |
6 | Holzschrauben | 0,99 |
1 | Steckbrett | 2,50 |
3 | LED | 0,99 |
1 | LCD-Display | 2,99 |
3 | Widerstand | 0,99 |
15 | Kabel | 1,50 |
1 | Potentiometer | 0,87 |
Aufbau
Bauen Sie Bilder ein, am besten mit darin gekennzeichneten Stellen, die Sie dann im Text erklären.Bauen Sie Bilder ein, am besten mit darin gekennzeichneten Stellen, die Sie dann im Text erklären.Bauen Sie Bilder ein, am besten mit darin gekennzeichneten Stellen, die Sie dann im Text erklären.Bauen Sie Bilder ein, am besten mit darin gekennzeichneten Stellen, die Sie dann im Text erklären.
Quellcode in der Arduinosoftware
In den folgenden Zeilen ist der Quellcode, sowie er auf dem Arduino Uno implementiert worden ist, geskriptet.
- include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int soundSensor = A0; int ledPin1 = 8; int ledPin2 = 9; int ledPin3 = 10;
int dB, PdB; int adc; const int MIC = 0;
void setup(){
byte digitPins[] = {2, 3, 4, 5}; byte segmentPins[] = {6, 7, 8, 9, 10, 11, 12, 13}; Serial.begin(9600); pinMode(soundSensor, INPUT); pinMode(ledPin1,OUTPUT); pinMode(ledPin2,OUTPUT); pinMode(ledPin3,OUTPUT); lcd.begin(16, 2); lcd.clear();
}
void loop(){
PdB = dB; //Store the previous of dB here adc= analogRead(MIC); //Read the ADC value from amplifer //Serial.println (adc);//Print ADC for initial calculation dB = (adc+83.2073) / 11.003; //Convert ADC value to dB using Regression values if (PdB!=dB) { lcdDisplay(dB); Serial.println (dB);
if (dB<25) { //Green LED digitalWrite(ledPin1, HIGH); digitalWrite(ledPin2, LOW); digitalWrite(ledPin3, LOW); delay(150); } else if((dB>30) && (dB<70)) { //Yellow LED digitalWrite(ledPin1, LOW); digitalWrite(ledPin2, HIGH); digitalWrite(ledPin3, LOW); delay(150); } else if(dB>70) { //Red LED digitalWrite(ledPin1, LOW); digitalWrite(ledPin2, LOW); digitalWrite(ledPin3, HIGH); lcd.clear(); lcd.print(""); lcd.print(dB); lcd.print(" Dezibel"); lcd.setCursor(0,1); lcd.print("Bitte leiser."); delay(2000); } }
}
//Sensor Data to LCD void lcdDisplay(int dB) {
// delay(200); lcd.clear(); lcd.setCursor(0,0); lcd.print("Dezibel: "); lcd.print(dB);
}
Ergebnisse
Zusammenfassung
Zusammenfassung
Was ist das Ergbnis? Das Ergebnis dieses Artikels ist eine Vorlage, mit der Nutzer des Wikis schnell und leicht eigene Artikel verwirklichen können. Diese Vorlage ist Bestandteil der Anleitungen aus den How-To's.
Ausblick
Was kann/muss noch verbessert werden?
Literaturverzeichnis
Korrektur/Rückmeldungen
Hier können Nutzer oder kritische Leser (meist Professoren) Verbesserungen fordern/vorschlagen.
→ zurück zum Hauptartikel: Fachpraktikum Elektrotechnik (WS 15/16)