# Arduino

Zodra dit boek 'af' is, zal er een pdf-versie gemaakt worden.

## Inleiding
### Wat is Arduino

Arduino is een soort van zeer klein en goedkoop moederbord. Hij kost in 2020 ongeveer 24 euro. Meer informatie is ook te vinden op Wikipedia, zie Arduino.

### Types van Arduino's

Zoals u op de afbeeldingen ziet, zijn er verschillende soorten Arduino's. Voor een gedetailleerde lijst kan u terecht op deze pagina (in het Engels).

### Toepassingen van Arduino

Arduino heeft door het grote aanbod uitbreidingen zeer veel toepassingen, gaande van led-lichtjes laten knipperen tot een alarm voor brand en gasgeur.

### Waar kan ik Arduino kopen?

Arduino is vooral online te koop. Geen fan van online kopen? Op de site staat ook een lijst met lokale verkopers. Officiële pagina met verkopers Naast het A-merk zijn er ook websites die B en C-merken aanbieden, zoals DealExtreme. Deze werken ook met de software.

### Vereiste kennis voor Arduino

Om met Arduino te kunnen werken moet u over volgende vaardigheden en apparatuur beschikken.
* U moet kunnen programmeren in een taal die lijkt op C;
* U weet hoe elektrische circuits in elkaar zitten;
* Het is handig als u kan solderen
* U beschikt over een pc met een usb-poort. Arduino werkt met Windows, Mac OS X en Linux.

### De software downloaden

Klik hier om de software te downloaden

#### Installatie op Windows

Er zijn twee downloads voor Windows. Voor de modale gebruiker is de installer het makkelijkste. De installer installeert de software met enkele klikken op next. Dan kan u Arduino IDE vanuit het start-menu opstarten. Als u voor het zip-bestand gaat, moet u gewoon het archief uitpakken en het bestand openen.

#### Installatie op Mac OS X

Helaas beschik ik niet over een Mac. Indien u weet hoe dit moet, gelieve dit aan te vullen.

#### Installatie op Linux

Pak het archief uit en open een terminal. Typ hier gksudo Pad/naar/uw/map/arduino en voer dit uit.
De gksudo is nodig om uw code naar een usb apparaat te kunnen versturen.

## Kennismaking met de Arduino IDE

Noot: voor deze cursus gebruiken we Arduino IDE 1.0.5. Het kan zijn dat er inmiddels een nieuwere versie is. De meeste dingen zullen hetzelfde werken.

### Aanpassen van basisinstellingen
#### Mijn Arduino selecteren

Ga naar Extra > Seriële poort kies uw Arduino. Hiervoor moet deze natuurlijk aangesloten zijn op de pc. Als u meerdere Arduino's aangesloten hebt, kan u hier kiezen welke u nu wil gebruiken.
Klaar? Duid ook bij Board aan welke Arduino u hebt.

#### Taal en lettergrootte instellen

Als u de Engelse interface ziet, kan u gaan naar File > Preferences (in het Nederlands Bestand > Voorkeuren). Hier kan u de taal, lettergrootte, map enz. instellen. Als u liever een andere tekst-editor gebruikt, kan u dat vinkje aanduiden.

### De knoppen

Onder de menu's ziet u enkele knoppen. We omschrijven ze van links naar rechts.
* Controleren: laat de code nakijken
* Uploaden met programmer: zet het programma op uw Arduino;
* Nieuw editor-venster: opent een nieuw venster;
* In nieuw venster openen: opent een programma in een nieuw venster;
* Opslaan: sla uw huidige code op;
* Seriële monitor: opent een statusvenster onderaan de interface;

### Voorbeelden

Arduino heeft ook een aantal voorbeeld scripts bij zich. Deze scripts zijn natuurlijk niet zo concreet, maar kunnen toch als snellere start dienen. Om deze scripts te raadplegen, ga naar Bestand > Voorbeelden > ... Zoals u al ziet, zijn er zeer veel voorbeelden beschikbaar. U kan deze natuurlijk direct op uw Arduino uploaden.

### Pas uw Arduino IDE aan (uitbreiding)

Opgelet: voor dit stuk hebt u kennis over een fotobewerkprogramma nodig.<br\>
Als u niet tevreden bent met de interface van Arduino kan en mag u in theorie alles aanpassen (Arduino is open-source). We gaan u echter niet vertellen hoe u bijvoorbeeld Eclipse kan gebruiken of iets dergelijks. Daarvoor zijn er zoekmachines genoeg. Ik ga u enkel vertellen hoe u de basis kan aanpassen. Als u een zip-bestand hebt uitgepakt, moet u naar de map lib (en eventueel daarin theme) gaan en daar ziet u de bestanden die gebruikt worden om de interface mee op te bouwen. Deze mag u aanpassen naar uw wensen. Wij gaan hier niet dieper op in.

## De onderdelen van een Arduino

Voordat we dingen kunnen gaan maken, zal u moeten weten hoe een Arduino in elkaar zit en wat waartoe dient. We gebruiken volgende versimpelde afbeelding van een Arduino UNO. Klik hier (of op de afbeelding) om de afbeelding te vergroten
U ziet een aantal kleine genummerde ingangen. Vrees niet, in het begin moet u ze niet allemaal kennen. We zullen enkel het absoluut noodzakelijke bekijken.
Ik stel voor dat we vanboven beginnen. De groenblauwe in-/uitgangen in het midden zijn digitaal. Dat betekent dat ze slechts twee standen hebben: aan en uit. Dit is anders dan de analogen (verder meer hierover). U ziet misschien dat in-/uitgangen 9 t.e.m. 11 aangeduid zijn met PWM of ~. Dit betekent dat ze pulserende stroom kunnen geven. PWM staat voor pulse-width modulation (nl: pulsbreedtemodulatie).
Iets meer naar beneden vindt u de USB ingang. Dit is waardoor de voeding, maar ook de data wordt doorgegeven. Als u uw Arduino op een pc aansluit, zal het programma, zodra het geüpload is, draaien, zelfs als uw Arduino nog op de pc aangesloten is.
Gaan we helemaal naar beneden, vinden we de analoge ingangen. Deze worden gekenmerkt doordat ze een stroomsterkte (in Ampère) geven (tegenovergesteld van digitale in-/uitgangen).
Links hiervan zien we de POWER poortjes. Op dit moment gebruiken we enkel de Gnd's. Deze vonden we trouwens ook bovenaan. Stel dat we de Digitale en Analoge poorten als +-polen van een elektrische kringloop beschouwen, dan zijn de Gnd's de --polen.
Zo, nu kent u al de poorten om een basis kringloop te kunnen maken. Nu kan u dus m.a.w. al beginnen.

## Fritzing (uitbreiding)

Omdat het programma Fritzing zeer sterk verband houdt met Arduino en omdat het handig kan zijn, hebben we ook een inleiding in dit programma toegevoegd.

### Wat is Fritzing en waartoe dient het?

Fritzing is een programma om elektrische schema's te tekenen, op te slaan en te verspreiden. Als u een schema hebt gemaakt en u moet iemand anders het programma uitleggen, dan kan een grafische voorstelling best handig zijn. Bovendien is Fritzing net als Arduino open-source.

### Downloaden en installeren

Fritzing is te verkrijgen op de officiële website. Downloaden en installeren is vaak hetzelfde, behalve dat u bij Windows alleen een archief hebt.