# :bulb: Tutorial ljussensor :bulb:
___
#### I denna tutorialen visar jag hur man kan skapa en ljussensor som tänder lampor vid olika ljus samt visar hur ljust det är med en LCD-display.

####

####

####

##
## Du behöver:

##### 1. USB-kabel
##### 2. 4 x Motstånd 1000 Ohm
##### 3. Breadboard
##### 4. LCD-display
##### 5. Potentiometer 10kOhm
##### 6. Ljussensor
##### 7. Arduino UNO
##### 8. 20 stycken kablar i diverse färger.

#### Såhär ser ljussensorn ut i Tinkercad
## Steg 1: Ljussensor
#### Kopplar ljussensorn till breadboarden och Arduinon

# :arrow_down::fire::lightning::warning: **OBS!** :warning::lightning::fire::arrow_down:
###### Ljussensorn i Tinkercad är inte samma som den jag använt i verkligheten och ska kopplas på annat sätt. Därför har jag i denna bilden klistrat in ljussensorn jag använt och satt sladdarna så som de ska sitta i verkligheten.
#### 5V till +
#### GND till -
#### A0 till ljussensorns högra ben
#### + till ljussensorns vänstra ben
#### - till ljussensorns mittben
## Steg 2: LCD-display
### Kopplar LCD:n till Breadboarden och Arduinon.

### Arduino till LCD:
#### Pin 12 till LCD pin 4
#### Pin 11 till LCD pin 6
#### Pin 5 till LCD pin 11
#### Pin 4 till LCD pin 12
#### Pin 3 till LCD pin 13
#### Pin 2 till LCD pin 14
### LCD till Breadboard:
#### LCD pin 1 till -
#### LCD pin 2 till +
#### LCD pin 5 till -
#### LCD pin 15 till +
#### LCD pin 16 till - med ett motstånd (1000 Ohm) istället för kabel
## Steg 3: Potentiometer
### Kopplar potentiometern till Breadboarden och LCD-displayen.

#### Vänstra benet till -
#### Mittbenet till LCD pin 3
#### Högra benet till +
## Steg 4: Dioder
### Kopplar dioderna till breadboarden

### Diod 1: (Blå)
#### Höger ben till Arduino pin 7
#### Vänster ben till -, motstånd 1000 Ohm
### Diod 2: (Grön)
#### Höger ben till Arduino pin 6
#### Vänster ben till -, motstånd 1000 Ohm
### Diod 3: (Röd)
#### Höger ben till Arduino pin 13
#### Vänster ben till -, motstånd 1000 Ohm
## Steg 5: Kod
```
#include <LiquidCrystal.h> // LCD-display
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //
int sensorPin = A0;
int sensorValue = 0;
int bright = 500;
int notBright = 250;
int NotBrightAtAll = 100;
int ledPin0 = 7;
int ledPin1 = 6;
int ledPin2 = 13;
void setup(){
Serial.begin(9600);
lcd.begin (16, 2);
lcd.setCursor (0, 0);
pinMode(ledPin0, OUTPUT);
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
}
void loop(){
sensorValue = analogRead(sensorPin);
lcd.print("Brightness: ");
lcd.print(sensorValue);
if (sensorValue < bright) {
lcd.setCursor (0, 1);
lcd.print("Light 0: on");
digitalWrite(ledPin0, HIGH);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
if (sensorValue < notBright && sensorValue > NotBrightAtAll){
lcd.setCursor (0, 1);
lcd.print("Lights 0, 1: on");
digitalWrite(ledPin0, HIGH);
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
}
else if(sensorValue < NotBrightAtAll){
lcd.setCursor (0, 1);
lcd.print("Lights 0,1,2: on");
digitalWrite(ledPin0, HIGH);
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
}
else {
lcd.setCursor(0,1);
lcd.print("Light 0: on");
digitalWrite(ledPin0, HIGH);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
}
}
else {
lcd.setCursor(0,1);
lcd.print("Lights: off");
digitalWrite(ledPin0, LOW);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
}
delay(500);
lcd.clear();
}
```