Wanderlust

 

Een van de opdrachten die ik via Arduino heb gedaan, is een schuifpotentiometer.

De bedoeling van deze opdracht was dat je iets maakte waarbij, als je een knopje (de schuifregelaar) verschuift, de lampjes langs de schuiflijn aangaan.

Ik heb deze opdracht gedaan in een groepje van drie personen. Twee mensen waren bezig met het bouwen: zij koppelden de meter, de schuifregelaar en de lampjes aan elkaar met kabeltjes en andere onderdelen. De derde persoon hield zich bezig met de code. De bedoeling daarvan was dat je de code overschreef op het Arduino-kastje. Die code kregen we van onze docent.

Helaas heb ik geen foto meer van het bouwwerk, maar ik kan wel de code laten zien zodat jullie kunnen zien hoe het eruitzag.

Ook kan ik een voorbeeldfoto van een schuifpotentiometer van Google laten zien.

zie hieronder hoe de code eruitzag.

 

 
 
// Definieer pinnen
const int potPin = A0;   // Pin voor de potentiometer
const int led1Pin = 9;   // Pin voor de eerste LED
const int led2Pin = 10;  // Pin voor de tweede LED
 
int potValue = 0;        // Variabele om de potentiometerwaarde op te slaan
 
void setup() {
  // Stel LED-pinnen in als uitvoer
  pinMode(led1Pin, OUTPUT);
  pinMode(led2Pin, OUTPUT);
 
  // Start seriële communicatie
  Serial.begin(9600);
}
 
void loop() {
  // Lees de waarde van de potentiometer (0 tot 1023)
  potValue = analogRead(potPin);
 
  // Schrijf de waarde naar de seriële monitor
  Serial.print(“Potentiometer waarde: “);
  Serial.print(potValue);
 
  // Regels voor LED 1 (brand bij lage waarde)
  if (potValue < 400) {
    digitalWrite(led1Pin, HIGH);  // LED 1 aan
    digitalWrite(led2Pin, LOW);   // LED 2 uit
  }
  // Regels voor LED 2 (brand bij hoge waarden)
  else if (potValue > 600) {
    digitalWrite(led1Pin, LOW);  // LED 1 uit
    digitalWrite(led2Pin, HIGH);  // LED 2 aan
  }
  // Beide LED´s uit als de waarde tussen 400 en 600 ligt
  else{
    digitalWrite(led1Pin, LOW);  // LED 1 uit
    digitalWrite(led2Pin, LOW);  // LED 2 uit
  }
 
  // Wacht even voordat de volgende waarde wordt gelezen
  delay(100);
}
 
 
 
 
// Definieer pinnen
const int potPin = A0;   // Pin voor de potentiometer
const int led1Pin = 9;   // Pin voor de eerste LED
const int led2Pin = 10;  // Pin voor de tweede LED
 
int potValue = 0;        // Variabele om de potentiometerwaarde op te slaan
 
void setup() {
  // Stel LED-pinnen in als uitvoer
  pinMode(led1Pin, OUTPUT);
  pinMode(led2Pin, OUTPUT);
 
  // Start seriële communicatie
  Serial.begin(9600);
}
 
void loop() {
  // Lees de waarde van de potentiometer (0 tot 1023)
  potValue = analogRead(potPin);
 
  // Schrijf de waarde naar de seriële monitor
  Serial.print(“Potentiometer waarde: “);
  Serial.print(potValue);
 
  // Regels voor LED 1 (brand bij lage waarde)
  if (potValue < 400) {
    digitalWrite(led1Pin, HIGH);  // LED 1 aan
    digitalWrite(led2Pin, LOW);   // LED 2 uit
  }
  // Regels voor LED 2 (brand bij hoge waarden)
  else if (potValue > 600) {
    digitalWrite(led1Pin, LOW);  // LED 1 uit
    digitalWrite(led2Pin, HIGH);  // LED 2 aan
  }
  // Beide LED´s uit als de waarde tussen 400 en 600 ligt
  else{
    digitalWrite(led1Pin, LOW);  // LED 1 uit
    digitalWrite(led2Pin, LOW);  // LED 2 uit
  }
 
  // Wacht even voordat de volgende waarde wordt gelezen
  delay(100);
}
 
 
// definieer de pin
int buzzerPin = 9;
 
void setup() {
  pinMode(buzzerPin, OUTPUT); // Stel de pin in als output
}
 
void loop() {
  digitalWrite(buzzerPin, HIGH); // Zet de buzzer aan
  delay(1000);
  digitalWrite(buzzerPin, LOW);
  delay(1000);
}