beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  ·...

25
ARDUINO INHOUDSOPGAVE INLEIDING 2 PUNTENTELLING 2 OPDRACHTEN 3 01 BUTTON 3 02 LED FLOWING LIGHTS 4 03 BUZZER 5 04 PFOTORESISTOR 6 05 RGB 7 06 RELAY 10 07 SERVO 11 08 LCD 1609 12 09 THERMISTOR 13 10 VOLTMETER 14 EINDOPDRACHT PROCESSING 16 INLEVER FORMAT 17 Pagina 1 van 25

Transcript of beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  ·...

Page 1: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

ARDUINO

INHOUDSOPGAVE

INLEIDING 2

PUNTENTELLING 2

OPDRACHTEN 3

01 BUTTON 302 LED FLOWING LIGHTS 403 BUZZER 504 PFOTORESISTOR 605 RGB 706 RELAY 1007 SERVO 1108 LCD 1609 1209 THERMISTOR 1310 VOLTMETER 14

EINDOPDRACHT PROCESSING 16

INLEVER FORMAT 17

Pagina 1 van 22

Page 2: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

INLEIDINGVolgens wikipedia is:Arduino is een opensource-computerplatform dat is opgebouwd rond de ATmega168-microcontroller van Atmel en het softwareontwikkelplatform Processing. Dit platform is bedoeld voor hobbyisten, artiesten, kunstenaars en iedereen die geïnteresseerd is in het maken en ontwerpen van slimme en creatieve objecten die kunnen reageren op hun omgeving.

Met Arduino is het mogelijk apparaten en objecten te creëren die reageren op hun omgeving door middel van digitale en analoge inputsignalen. Op basis van deze input kan een Arduinoschakeling autonome actie initiëren door het afgeven van digitale en analoge outputsignalen. Input kan bijvoorbeeld worden gegenereerd door schakelaars, lichtsensoren, bewegingsmeters, afstandsmeters, temperatuursensoren, of op basis van commando's afkomstig van internet, een radiomodule of een ander apparaat met een seriële interface. Outputsignalen kunnen bijvoorbeeld motoren, lampjes, pompjes en beeldschermen aansturen, maar ook input genereren voor een andere Arduinomodule.

Daarnaast bestaan ook zogenaamde "shields". Deze integreren vaak verschillende sensoren en modules in één printplaat. Deze kan dan gemakkelijk op de Arduino aangesloten worden door hem te plaatsen op de input-/outputpinnen van de Arduino. Vele van deze shields worden verkocht als kit en dienen dus zelf nog gesoldeerd te worden. Veelvoorkomend zijn de wifi- en gps-kits. Naast deze kits kan ook een ProtoShield gekocht worden die dienstdoet als breadboard om op te experimenteren.

Kijk voor meer ondersteuning op de volgende sites:

https://www.arduino.cc/ https://learn.adafruit.com/category/learn-arduino http://www.ladyada.net/learn/arduino/ https://www.youtube.com/ fritzing https://www.youtube.com/Jeremyblum www.youtube.com P. Simons

Nu jullie bekend zijn geraakt met het visueel programmeren (Processing) maken wij de overstap naar Arduino om uiteindelijk tot een zelfverzonnen project te komen. Dit project gaan jullie helemaal designen van PCB tot aan het programma aan toe.

Voordat jullie echter zover zijn, daag ik jullie uit om alle opdrachten die beschreven staan in dit boek, te maken. Voor alle duidelijkheid het zijn in totaal 11 opdrachten, waarvan 10 opdrachten 3 delen bevatten (deel A, B & C). Deel A is altijd een uitgewerkt voorbeeld dat jullie moeten programmeren. Deel B is een variatie op deel A waarbij jullie zelf aan de slag moeten gaan. Deel C is een opdracht die jullie veel vrijheden geeft. Jullie kunnen je creativiteit naar hartenlust uitbuiten!

Jullie leveren 1 hele opdracht in op fronter in de daarvoor bestemde ruimte. Achterin dit boek vinden jullie het format waarin jullie de opdrachten moeten aanleveren. Hierin is plaats opgenomen voor de code, een afbeelding of foto van het breadbord, het schematic en de printlayout zie figuren 1, 2 en 3.

Dus deel A, B & C in 1 document inleveren!

Pagina 2 van 22

Page 3: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

FIGUUR 1, AFBEELDING VAN SCHAKELING OP HET BREADBORD

FIGUUR 2, SCHEMATIC

FIGUUR 3, PRINTLAYOUT

Pagina 3 van 22

Page 4: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

PUNTENTELLINGDe puntentelling is als volgt:

De deel opdrachten A & B moeten jullie inleveren! Zijn de opdrachten juist, krijgen jullie het cijfer 5,5 voor het onderdeel “opdrachten” van processing. Voor elk ingeleverd en werkend deel C krijgen jullie 0,45 punt boven op het cijfer. Dit cijfer telt 1x mee.

Voor de eindopdracht krijgen jullie ook een cijfer dat 1x mee telt.

De 2 cijfers samen zorgen voor een eindpunt voor het onderdeel processing van het van project ECA.

Pagina 4 van 22

Page 5: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

OPDRACHTEN

01 BUTTON

1A. Voorbeeld 1B. Opdracht 1C. Eigen opdrachtOnderstaand programma geeft een voorbeeld van een LED aangestuurd door een pushbutton. Type dit over in Arduino en kijk voor jezelf.

//Turns on and off a LED ,when pressings button attach to pin12/**********************************/const int keyPin = 12; //the number of the key pinconst int ledPin = 13;//the number of the led pin/**********************************/void setup(){

pinMode(keyPin,INPUT);//initialize the key pin as input

pinMode(ledPin,OUTPUT);//initialize the led pin as output}/**********************************/void loop(){

//read the state of the key value//and check if the kye is pressed//if it is,the state is HIGHif(digitalRead(keyPin) ==HIGH ){

digitalWrite(ledPin,HIGH);//turn on the led

}else{

digitalWrite(ledPin,LOW);//turn off the led

}}/************************************/

Breid de schakeling uit opdracht A uit met een 2e

schakelaar en een 2e LED. Zorg dat bij het bedienen van de ene schakelaar ook de andere bedient kan worden.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 5 van 22

Page 6: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

Pagina 6 van 22

Page 7: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

02 LED FLOWING LIGHTS

2A. Voorbeeld 2B. Opdracht 2C. Eigen opdrachtOnderstaand programma geeft in processing een gezicht weer. Type dit over en kijk voor jezelf.

/**************************************/const int lowestPin = 2;//the lowest one attach toconst int highestPin = 7;//the highest one attach to/**************************************/void setup(){

//set pins 1 through 6 as outputfor(int thisPin = lowestPin;thisPin <=

highestPin;thisPin++){

pinMode(thisPin,OUTPUT); //initialize thisPin as an output

}}/****************************************/void loop(){

//iterate over the pins//turn the led on from lowest to the highest

for(int thisPin = lowestPin;thisPin <= highestPin;thisPin++)

{digitalWrite(thisPin,HIGH);//turn this led ondelay(100);//wait for 100 microseconds}//fade from the highest to the lowest

for(int thisPin = highestPin;thisPin>=lowestPin;thisPin--)

{digitalWrite(thisPin,LOW);//turn this led offdelay(100);//wait for 100 microseconds}

for(int thisPin = highestPin;thisPin>=lowestPin;thisPin--)

{digitalWrite(thisPin,HIGH);//turn this led offdelay(100);//wait for 100 microseconds}for(int thisPin = lowestPin;thisPin <=

highestPin;thisPin++){digitalWrite(thisPin,LOW);//turn this led ondelay(100);//wait for 100 microseconds}

}

Voeg aan deze schakeling en programma een drukknop toe. Bij het bedienen van de drukknop gaan de LED’s knipperen.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 7 van 22

Page 8: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

Pagina 8 van 22

Page 9: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

03 BUZZER

3A. Voorbeeld 3B. Opdracht 3C. Eigen opdrachtOnderstaand programma stuurt een buzzer aan. Type dit over en kijk voor jezelf.

int buzzer = 12;//the pin of the active buzzervoid setup(){pinMode(buzzer,OUTPUT);//initialize the buzzer }void loop(){

unsigned char i,j;while(1){

//output an frequencyfor(i=0;i<80;i++){digitalWrite(buzzer,HIGH);delay(1);//wait for 1msdigitalWrite(buzzer,LOW);delay(1);//wait for 1ms}//output another frequencyfor(i=0;i<100;i++){

digitalWrite(buzzer,HIGH);delay(2);//wait for 2msdigitalWrite(buzzer,LOW);delay(2);//wait for 2ms

}}

}

Breid deze schakeling uit met een looplicht (uit opdracht 2). Op het moment dat het laatste LED aan is geeft de buzzer gedurende 500 ms een signaal af.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 9 van 22

Page 10: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

04 PHOTORESISTOR

4A. Voorbeeld 4B. Opdracht 4C. Eigen opdrachtOnderstaand programma werkt met een photorisistor. Naar mate meer of minder licht op de cel valt gaan de LED’s meer of minder branden.

const int NbrLEDs = 8;const int ledPins[] = { 5, 6, 7, 8, 9, 10, 11, 12};const int photocellPin = A0;

const int wait = 30;

// Swap values of the following two constants if // cathodes are connected to Gndconst boolean LED_ON = HIGH;const boolean LED_OFF = LOW;

int sensorValue = 0; // value read from the sensorint ledLevel = 0; // sensor value converted into LED

void setup() {for (int led = 0; led < NbrLEDs; led+

+){pinMode(ledPins[led], OUTPUT); }

}

void loop() {//sensorValue = analogRead(analogInPin); // read the analog in value

sensorValue = analogRead(photocellPin);

ledLevel = map(sensorValue, 300, 1023, 0, NbrLEDs); // map to the number of LEDs

for (int led = 0; led < NbrLEDs; led++)

{if (led < ledLevel ) {

Pas de opdracht uit A zodanig aan dat de buzzer (uit opdracht 3) een signaal geeft als de lichtinval 50% of minder bedraagt.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 10 van 22

Page 11: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

digitalWrite(ledPins[led], LED_ON); // turn on pins less than the level

}else {

digitalWrite(ledPins[led], LED_OFF); // turn off pins higher than the level

}}

}

05 RGB5A. Voorbeeld 5B. Opdracht 5C. Eigen opdrachtHet programma stuurt een RGB LED aan. Deze LED wisselt per seconde van kleur deur 1 of meerdere uitgangen uit te sturen.

const int redPin = 11; // R petal on RGB LED module // connected to digital pin 11const int greenPin = 10; // G petal on RGB LED module // connected to digital pin 9const int bluePin = 9; // B petal on RGB LED module // connected to digital pin 10/*********************************************/void setup(){

pinMode(redPin, OUTPUT); // sets the redPin to be an output

pinMode(greenPin, OUTPUT); // sets the greenPin to be an output

pinMode(bluePin, OUTPUT); // sets the bluePin to be an output}/**********************************************/void loop() // run over and over again{

// Basic colors:color(255, 0, 0); // turn the RGB LED reddelay(1000); // delay for 1 secondcolor(0,255, 255); // turn the RGB LED green

Breid de schakeling uit door de LED pas van kleur te laten veranderen op het moment dat een drukknop bedient word.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 11 van 22

Page 12: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

delay(1000); // delay for 1 secondcolor(0, 0, 255); // turn the RGB LED bluedelay(1000); // delay for 1 second// Example blended colors:color(255,0,0); // turn the RGB LED reddelay(1000); // delay for 1 secondcolor(237,109,0); // turn the RGB LED orangedelay(1000); // delay for 1 secondcolor(255,215,0); // turn the RGB LED yellowdelay(1000); // delay for 1 secondcolor(34,139,34); // turn the RGB LED greendelay(1000); // delay for 1 secondcolor(0,0,255); // turn the RGB LED bluedelay(1000); // delay for 1 secondcolor(0,46,90); // turn the RGB LED indigodelay(1000); // delay for 1 secondcolor(128,0,128); // turn the RGB LED purpledelay(1000); // delay for 1 second

}/******************************************************/void color (unsigned char red, unsigned char green, unsigned char blue) // the color generating function{

analogWrite(redPin, red);analogWrite(bluePin, blue);analogWrite(greenPin, green);

}/******************************************************/

Pagina 12 van 22

Page 13: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

06 RELAY

6A. Voorbeeld 6B. Opdracht 6C. Eigen opdrachtOnderstaand programma stuurt een relais aan. Vervolgens schakelt dit relais de LED door middel van een voorschakelweerstand.

const int relayPin = 8; void setup(){

pinMode(relayPin, OUTPUT); }void loop(){

digitalWrite(relayPin, HIGH);

delay(1000); digitalWrite(relayPin, LOW); delay(1000);

}

Breid de schakeling uit A uit met 8 LED’s. zorg dat alle LED’s even fel branden.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 13 van 22

Page 14: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

07 SERVO

7A. Voorbeeld 7B. Opdracht 7C. Eigen opdrachtHet volgende programma stuurt een servo aan. De servo maakt telkens stappen 15⁰. Totdat hij bij 90⁰ is aangekomen, dat gaat hij weer terug naar 0⁰.

/************************************************/#include <Servo.h>/************************************************/Servo myservo;//create servo object to control a servo/************************************************/void setup(){

myservo.attach(9);//attachs the servo on pin 9 to servo object

myservo.write(0);//back to 0 degreesdelay(1000);//wait for a second

}/*************************************************/void loop(){

myservo.write(15);//goes to 15 degreesdelay(1000);//wait for a secondmyservo.write(30);//goes to 30 degreesdelay(1000);//wait for a second.33myservo.write(45);//goes to 45 degreesdelay(1000);//wait for a second.33myservo.write(60);//goes to 60 degreesdelay(1000);//wait for a second.33myservo.write(75);//goes to 75 degrees

Breid opdracht A uit met een looplicht. Bij elke stap van de servo zal dit visueel zichtbaar zijn aan de hand van de LED’s.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 14 van 22

Page 15: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

delay(1000);//wait for a second.33myservo.write(90);//goes to 90 degreesdelay(1000);//wait for a secondmyservo.write(75);//back to 75 degreesdelay(1000);//wait for a second.33myservo.write(60);//back to 60 degreesdelay(1000);//wait for a second.33myservo.write(45);//back to 45 degreesdelay(1000);//wait for a second.33myservo.write(30);//back to 30 degreesdelay(1000);//wait for a second.33myservo.write(15);//back to 15 degreesdelay(1000);//wait for a secondmyservo.write(0);//back to 0 degreesdelay(1000);//wait for a second

}/**************************************************/

Pagina 15 van 22

Page 16: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

08 LCD 16098A. Voorbeeld 8B. Opdracht 8C. Eigen opdrachtHet volgende programma stuurt een 1602 LCD display aan. 1602 staat voor 16 karakters over 2 regels.

#include <LiquidCrystal.h>

char array1[]="Hallo klas E24A "; //the string to print on the LCDchar array2[]="LCD programmeren = easy”; //the string to print on the LCDint time = 250; //the value of delay time// initialize the library with the numbers of the interface pinsLiquidCrystal lcd(12, 11,10,7,6, 5, 4);void setup(){

lcd.begin(16, 2); // set up the LCD's number of columns and rows:}void loop(){

lcd.setCursor(15,0); // set the cursor to column 15, line 0

for ( int positionCounter1 = 0; positionCounter1 < 26; positionCounter1++)

{lcd.scrollDisplayLeft();

//Scrolls the contents of the display one space to the left.lcd.print(array1[positionCounter1]); // Print a message to the LCD.

delay(time);

Pas het gegegeven programma en schakeling zodanig aan, dat als er op een drukknop word gedrukt op het LCD display wordt weergegeven hoe vaak er al gedrukt is geworden.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 16 van 22

Page 17: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

//wait for 250 microseconds}lcd.clear();

//Clears the LCD screen and positions the cursor in the upper-left corner.

lcd.setCursor(15,1); // set the cursor to column 15, line 1

for (int positionCounter2 = 0; positionCounter2 < 26; positionCounter2++)

{lcd.scrollDisplayLeft();

//Scrolls the contents of the display one space to the left.lcd.print(array2[positionCounter2]); // Print a message to the LCD.

delay(time); //wait for 250 microseconds

}lcd.clear();

//Clears the LCD screen and positions the cursor in the upper-left corner.}

Pagina 17 van 22

Page 18: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

09 THERMISTOR

9A. Voorbeeld 9B. Opdracht 9C. Eigen opdrachtOnderstaand programma meet de omgevingstemperatuur en schrijft dit op een 1602 display.

// include the library code:#include <LiquidCrystal.h>// initialize the library with the numbers of the interface pinsLiquidCrystal lcd(4, 5, 9, 10, 11, 12);

#define analogPin A0 //the thermistor attach to#define beta 4090 //the beta of the thermistor#define resistance 10 //the value of the pull-down resistor

void setup(){

// set up the LCD's number of columns and rows:

lcd.begin(16, 2);lcd.clear();

}

void loop(){

//read thermistor valuelong a =1023 -

analogRead(analogPin);//the calculating formula of

temperaturefloat tempC = beta

/(log((1025.0 * 10 / a - 10) / 10) + beta / 298.0) - 273.0;

Breidt opdracht A uit. Doe dit door het verschil in temperatuur visueel zichtbaar te maken met 8 LED’s. Hoe warmer het is, hoe meer LED’s branden. Denk goed na over de punten die je wilt gebruiken met de LED’s.

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 18 van 22

Page 19: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

float tempF = tempC + 273.15;// Print a message of "Temp:

"to the LCD.// set the cursor to column

0, line 0lcd.setCursor(0, 0);lcd.print("Temp: ");// Print a centigrade

temperature to the LCD.lcd.print(tempC);// Print the unit of the

centigrade temperature to the LCD.lcd.print(" C");// set the cursor to column

0, line 1// (note: line 1 is the

second row, since counting begins with 0):

lcd.setCursor(0, 1);lcd.print("Fahr: ");// Print a Fahrenheit

temperature to the LCD.lcd.print(tempF);// Print the unit of the

Fahrenheit temperature to the LCD.lcd.print(" F");delay(200); //wait for 100

milliseconds}

Pagina 19 van 22

Page 20: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

10 VOLTMETER

10A. Voorbeeld 10B. Opdracht 10C. Eigen opdrachtDit programma meet het potentiaal verschil. Dit verschil stel je in door middel van de 2 potmeters

#include <LiquidCrystal.h>/****************************************************///const int analogIn = A0;LiquidCrystal lcd(4, 6, 10, 11, 12, 13);float val = 0;/****************************************************/void setup(){

Serial.begin(9600);lcd.begin(16, 2);lcd.print("Voltage Value:");

}/****************************************************/void loop(){

val = analogRead(A0);val = 0.5*val +

0.5*analogRead(A0);val = val/1024*5.0;Serial.print(val);Serial.print("V");Serial.println();lcd.setCursor(6,1);lcd.print(val);lcd.print("V");delay(200);

Als aanvulling op opdracht A stel je alarmwaardes in. De ondergrens waarbij het alarm moet afgaan = 3.3 V. De bovengrens = 4.7 V. Het alarm is maakt gebruik van audiovisuele technieken (licht en geluid).

Breid de schakeling uit B uit. Denk hierbij aan extra LED’s, drukknoppen, andere componenten en uitbreidingen op het bestaande programma.

Pagina 20 van 22

Page 21: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

}

EINDOPDRACHT ARDUINO

Maak een shield voor op de Arduino Uno. Dit kan en mag vieren van een digitale dobbelsteen (7 segment display), een 3x3x3 LED kubus gestuurd door licht en geluid, een spel met behulp van drukknoppen en LED’s of LCD of andere belangrijke en leuke projectjes. Laat je idee eventjes weten aan de docenten. Samen met hen kun je dan goed inschatten of het een haalbare kaart is.

Maak gebruik van alle items die je in de voorgaande opdrachten hebt toegepast.

Pagina 21 van 22

Page 22: beeldverslagmlipatricksimons.weebly.combeeldverslagmlipatricksimons.weebly.com/.../80873996/2…  · Web viewPagina 8 van 20. Arduino. Inhoudsopgave. Inleiding2. Puntentelling2.

INLEVER FORMATNaam:

Klas:

Datum:

Opdracht: ???

Code Foto / afbeelding van breadbord opstelling

Schematic Printlayout

Deel A

Deel B

Deel C

Pagina 22 van 22