Arduino projecten

Arduino projecten

Arduinoprojecten

In deze WIKI staan een aantal projecten die je moet gaan maken.

Hierdoor begrijp je beter hoe je een Arduino kunt programmeren.
We spreken af dat elke "sketch" je naam en de programmeerdatum bevat.

Veel plezier met de projecten.

 

 

 

Maar eerst;

  • hoe sluit je een arduino aan?
  • hoe zet je er een programma in?
  • hoe sluit je een led of eenweerstand enz. aan?
  • hoe gebruik je de bibliotheek enz, enz, enz....

Dit lees je in de introductie

 

1. Je eerste Arduino project.

aansluit voorbeeld 'blink'
aansluit voorbeeld 'blink'

Dit wordt jullie eerste project met een Arduino.

Om jezelf bekent te maken met de Arduino, loop je eerst door de stappen heen van het simpelste project: het aan- en uitschakelen van een LEDje.

 

Project 1.1

Nadat het gelukt is om een LED-lampje te laten knipperen met een aan/uit tijd van 1 seconde moet je nog 2 projecten maken.
Sla de "sketches" op en zorg ervoor dat in de sketc jouw naam staat en de datum van programmeren. (Later handig om te kijken wat de laatste versie is)

 

Project 1.2.

Pas de sketch zodanig aan dat het LED-lampje 1,5 seconde brandt en 0,5 seconde uit is.

 

Project 1.3.

Maak een programma die er voor zorgt dat een LED-lampje 2 seconden op uitgang 10 brandt.

Op uitgang 8 zit ook een LED-lampje die aangaat gedurende 1 seconde als LED-lampje op 10 uitgaat.
Dit blijft zich herhalen tot je de stroom uitzet.

________________________________________________________________________________

Klik op de onderstaande link om weer terug te keren naar de lessen "Arduino Programmeren voor Beginners".

Arduino Programmeren voor beginners

2. Een tweetal projecten waarbij we een arduino en de serieële monitor gebruiken.

Het is de bedoeling dat je het volgende project helemaal gaat nadoen.

Zorg ervoor dat de code in jouw arduino komt te staan en controleer de werking van deze arduino-rekenmachine.

Project 2.2

Nadat je de "calculator" met succes hebt gemaakt is het nu de bedoeling dat je een omreken machine maakt die decimale getallen gaat omzetten in hexadecimaal- en in binaire getallen.

Zie hiervoor ook blz 20 van deel 3 Arduino Programmeren voor Beginners. Werken met informatie

Opdracht:

Project 2.3

Maak een code die vraagt om een decimaal getal. Dat getal wordt in hexadecimaal en binair omgerekend en afgedrukt op je beeldscherm.

 

----------------------------------------------------------------------------------------------------------------------------------------

3: LED met schakelaar PULL_DOWN en PULL_UP

 

We gaan zorgen dat de arduino het verschil kent tussen een hoog (HIGH) en een laag (LOW) signaal.

We gaan eerst zorgen dat als je de schakelaar indrukt een led gaat branden daarna het omgekeerde.

Als je de schakelaar indrukt gaat de led uit.

 

Als de ene knop ingedrukt wordt gaat de ene Led aan, enz.

Hoe je dit kunt oplossen ga je zien in project 3.2 .

4. Programma met If...then; if ....else.

We gaan kennismaken met de functie if ... then en if ... else.

 

Een mooi voorbeeld is in het voorbeeld spaceshipinvaders te zien te zien.

Druk op de knop Spaceshipinterface.

Het programma kom je ook standaard tegen in jouw aduino. Je kunt hem bereiken door in het programma van de Arduino te kiezen ; bestand - voorbeelden - Starterkit_BasicKit - p02_Spaceshipinteface.

Opdracht 1.

 

Ga dit prgramma uitproberen.

Sluit de arduino aan op de componenten.

 

Opdracht 2.

 

Een ander programma is het maken van een dobbelsteen met behulp van de arduino.

Ga hiervoor naar project 7 .

Bouw dit project na.

5. Programmeren met for..., while..., en do....while loop.

Arduino Stopwatch Project

 

Werk het onderstaande voorbeeld door.

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Arduino Stopwatch Project

Here is a project that will help you build your own Arduino stopwatch using the Arduino Board and few other components. After working on this basic Arduino countdown timer, a user suggested adding few more functionality to it, which is why we are coming back with this other timer with a short list of additions: You can set the time without having to change the code and it actually let you know when it reaches zero.

Arduino stopwatch

Here is what we need:

http://tutorial45.com/wp-content/uploads/2017/09/DSC00699.jpg

  • 1 x Arduino Uno board
  •  
  • 1 x LCD with I2C converter
  •  
  • 1 x Buzzer
  •  
  • 1 x Potentiometer
  •  
  • Jumper wires
  •  
  • 1 x Breadboard

Here is schematic:

http://tutorial45.com/wp-content/uploads/2017/09/schematic-1.png

http://tutorial45.com/wp-content/uploads/2017/09/DSC00694.jpg

http://tutorial45.com/wp-content/uploads/2017/09/DSC00697.jpg

http://tutorial45.com/wp-content/uploads/2017/09/DSC00698.jpg

When you are done with the connections, you can upload the following program into the board.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

 

LiquidCrystal_I2C lcd(0x27,20,4);

//this values will help us to choose the time

long last_change;

long last_value;

long timer_value;

void setup()

{

//inti lcd

lcd.init();

//turn on backlight

lcd.backlight();

pinMode(A0, INPUT);

pinMode(8, OUTPUT);

}

 

void loop()

{

//if the value was changed less than 5 seconds ago this loop will work

while(millis() - last_change < 5000){

timer_value = map(analogRead(A0), 0, 1023, 1, 120);

if(timer_value != last_value){

lcd.clear();

lcd.setCursor(0,0);

lcd.print("Timer");

lcd.setCursor(0,1);

lcd.print(timer_value);

last_value = timer_value;

last_change = millis();

}

delay(10);

}

//after 5 seconds this will happen

lcd.clear();

lcd.print("starting...");

delay(3000);

long target = last_change + (timer_value * 60 * 1000);

//and then it will start displaying how much time there is until end of counting

while(millis() < target){

lcd.clear();

lcd.setCursor(0,0);

lcd.print("Time left:");

lcd.setCursor(0, 1);

lcd.print((target - millis()) / 1000 / 60);

delay(50);

}

//and few beeps at the end

for(int a = 0; a < 10; a++){

digitalWrite(8, HIGH);

delay(500);

digitalWrite(8, LOW);

delay(500);

}

while(1);

}

This is what the user can do: Set the time between 1 and 120 minutes. After specifying the time, it waits for 5 seconds and starts counting down. When the time is up, it beeps few times. As simple as that.

Here is a sample of my Arduino stopwatch at work.

Hope it helped. Catch you on the next project.

 

6. Meerdere projecten

We gaan werken met de LCD display.

Zorg ervoor dat er 16 pinnetjes aan het bordje met de LCD display zijn gesoldeerd.

Ga naar het handbook 

PART 4: LCDS
PROJECT 12: LCD SCREEN WRITER
HOW IT WORKS
PREPARING THE LCD SCREEN
THE BUILD
THE SKETCH

zorg er voor dat je elke tekst kunt laten zien.

Als voorbeeld maak je de display zo dat op de bovenste regel jouw voornaam komt te staan en op de onderste regel jouw achternaam.

7. Een weerstation met LCD display

We gaan verder met project 13

WEATHER STATION IN THIS PROJECT YOU’LL SET UP A WEATHER STATION TO MEASURE TEMPERATURE AND HUMIDITY, AND DISPLAY THE VALUES ON AN LCD SCREEN.

 

Hiervoor hebben we een censor nodig die de luchtvochtigheid en temperatuur kan meten.

Op school hebben we de censor AM2302.

Zoek met google de aansluitgegevens.

Behalve de censor hebben we ook de bibliotheek van Arduino nodig.

De docent geeft een uitlegover het gebruik hiervan.

Let goed op want jij moet deze bibliotheek zelf gaan beheren.

 

Opdracht;

  1. maak deze schakeling
  2. zorg ervoor dat de temperatuur in C komt te staan.

 

 

 

De koppeling naar het handbook en de code staat bij 6.

  • Het arrangement Arduino projecten is gemaakt met Wikiwijs van Kennisnet. Wikiwijs is hét onderwijsplatform waar je leermiddelen zoekt, maakt en deelt.

    Auteurs
    Rob van der Es Je moet eerst inloggen om feedback aan de auteur te kunnen geven.
    Laatst gewijzigd
    2018-11-29 10:26:13
    Licentie

    Dit lesmateriaal is gepubliceerd onder de Creative Commons Naamsvermelding 4.0 Internationale licentie. Dit houdt in dat je onder de voorwaarde van naamsvermelding vrij bent om:

    • het werk te delen - te kopiëren, te verspreiden en door te geven via elk medium of bestandsformaat
    • het werk te bewerken - te remixen, te veranderen en afgeleide werken te maken
    • voor alle doeleinden, inclusief commerciële doeleinden.

    Meer informatie over de CC Naamsvermelding 4.0 Internationale licentie.

    Aanvullende informatie over dit lesmateriaal

    Van dit lesmateriaal is de volgende aanvullende informatie beschikbaar:

    Eindgebruiker
    leerling/student
    Moeilijkheidsgraad
    gemiddeld
    Studiebelasting
    4 uur en 0 minuten
  • Downloaden

    Het volledige arrangement is in de onderstaande formaten te downloaden.

    Metadata

    LTI

    Leeromgevingen die gebruik maken van LTI kunnen Wikiwijs arrangementen en toetsen afspelen en resultaten terugkoppelen. Hiervoor moet de leeromgeving wel bij Wikiwijs aangemeld zijn. Wil je gebruik maken van de LTI koppeling? Meld je aan via info@wikiwijs.nl met het verzoek om een LTI koppeling aan te gaan.

    Maak je al gebruik van LTI? Gebruik dan de onderstaande Launch URL’s.

    Arrangement

    IMSCC package

    Wil je de Launch URL’s niet los kopiëren, maar in één keer downloaden? Download dan de IMSCC package.

    Meer informatie voor ontwikkelaars

    Wikiwijs lesmateriaal kan worden gebruikt in een externe leeromgeving. Er kunnen koppelingen worden gemaakt en het lesmateriaal kan op verschillende manieren worden geëxporteerd. Meer informatie hierover kun je vinden op onze Developers Wiki.