Project Embedded Linux Domaza. Elektronica-ICT. Dimitri Kozakiewiez Jonas Govaerts. Academiejaar
|
|
- Karen Devos
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Project Embedded Linux Domaza Elektronica-ICT Dimitri Kozakiewiez Jonas Govaerts Academiejaar Campus Geel, Kleinhoefstraat 4, BE-2440 Geel 5
2
3 2 INHOUDSTAFEL INHOUDSTAFEL DOMAZA Inleiding Wie zijn we? Wat doen we? Wat is domotica? Projecten BESCHRIJVING PROJECT DOMOTICA Inleiding Eisen Specificaties Hardware Software LAY-OUT Uitleg Visuele opstelling Schematische opstelling SOFTWARE Python Crontab PHP Uitlezen GPIO pins Layout Index Javascript SCHEMA ELEKTRONICA Opstelling... 9 BESLUIT BIJLAGE... 1 Lcd.py... 1 Index.php... 5 Script.js... 6
4 3 1 DOMAZA 1.1 Inleiding Wij zijn Domaza, al een jaar maken wij domotica solutions alsof ze voor onszelf zijn. Degelijk en op maat gemaakt, nergens vindt je de kwaliteit en service van Domaza aan betere kwaliteit of aan een scherpere prijs Wie zijn we? Domaza werd in 2014 opgericht door slechts 2 personen, Dimitri Kozakiewiez en Jonas Govaerts. Wij wisten toen dat er een grote toekomst zat in de domotica. Domaza sloot contracten af met Thomas More en later met de Domoticamaatschappij. Deze contracten waren van zeer groot belang voor het bestaan van Domaza. Anno 2014 is Domaza een van de wereldleiders in domotica solutions geworden Wat doen we? Domaza heeft een uitgebreid aanbod van domotica solutions. De prijzen van deze industriële installaties varieert van de aard van de opdracht, alsook de plaats en materiaal hiervan. Zo kan een Domaza klant hun domotica solution zelf naar eigen wensen laten personaliseren Wat is domotica? Domotica is de toepassing van diverse technieken in een woning met als bedoeling het leef- en wooncomfort te verhogen. De toegepaste technieken hebben betrekking op automatische regelingen op vijf verschillende domeinen: verlichting, klimatisatie, huishoudtoestellen, beveiliging en communicatie Projecten Een van onze eerste projecten was om een domotica solution uit te bouwen voor een klant. Meer informatie vindt u hieronder.
5 4 2 BESCHRIJVING PROJECT DOMOTICA 2.1 Inleiding De klant wou een domoticastructuur implementeren in zijn huis. Hiervoor moest het project uiteraard aan enkele eisen voldoen Eisen Hieronder vindt u de vereisten waaraan ons project moest voldoen. De klant kan in alle kamers in het huis de lichten aan of uit doen De klant kan de verwarming hoger of lager zetten De klant moet de streeftemperatuur alsook de huidige tijd kunnen aflezen van het LCD scherm Specificaties Hieronder vindt u de benodigdheden die we nodig hebben om ons project te kunnen realiseren Hardware Raspberry Pi Model B+ 8 x LED 8 x Weerstand Solderless Bread Board Software WiringPi Appache Web Server
6 5 3 LAY-OUT 3.1 Uitleg Op de modelweergave van de woning kan je de 8 lampen in de kamers zien. Deze led lampen kan je aan en uit zetten d.m.v. de web interface. Er is ook nog een LCD-scherm te zien bij de opstelling. Hierop kan de klant de huidige tijd en de temperatuur waarnemen. De temperatuur kan geregeld worden via de potentiometer. Als we de temperatuur regelen wordt ook een bijhorende LED zachtjes aangezet. 3.2 Visuele opstelling 3.3 Schematische opstelling
7 6 4 SOFTWARE 4.1 Python Op de Raspberry Pi B+ maken we gebruik van de programmeertaal Python. We hebben op de Raspberry Pi B+ Wiring Pi geïnstalleerd. Dit stukje software zorgt ervoor dat we onze GPIO pins kunnen gebruiken. We hebben de belangrijkste code hieronder uitgelegd. De volledige code kan u terugvinden in de bijlage. In bovenstaande code lezen we de potentiometer uit en bepalen we de temperatuur alsook de waarde van de bijhorende LED. Vervolgens bouwen we onze tekst op en geven deze weer op de LCD. De temperatuur en huidige tijd + datum worden afgebeeld op de LCD alsook onze namen.
8 7 4.2 Crontab We hebben gebruikt gemaakt van een Crontab. Een crontab is een proces dat op bepaalde tijd start. We hebben ingesteld dat ons programma automatisch opstart bij het opstarten van de Raspberry Pi. Na een stroompanne moet de klant het programma niet meer manueel starten maar gebeurd dit automatisch. 4.3 PHP Omdat onze klant de lichten in zijn woning wou beheren maken we gebruik van een webserver. Op de webserver draait een PHP-pagina waarmee we oproepen welke leds actief zijn en welke niet Uitlezen GPIO pins Omdat we zeker willen zijn dat het licht in een bepaalde kamer al dan niet al aan staat hebben we een PHP-script geschreven dat gaat lezen welke GPIO-pins actief staan en welke niet Layout We hebben een gebruiksvriendelijke interface gemaakt waarmee de lichten in huis makkelijk en overzichtelijk bestuurd kunnen worden.
9 Index Om de layout op te bouwen hebben we gebruik gemaakt van onderstaande code. Hierin gaan we via PHP kijken welke lichten al aan staan en geven we de juiste afbeelding. De volledige code en de bijhorende css kan u terugvinden in de bijlage Javascript We maken gebruik van javascript om de GPIO pins uit te lezen en de juiste waarde door te geven met de bijhorende afbeelding. De volledige javascript code kan u terugvinden in de bijlage.
10 9 5 SCHEMA ELEKTRONICA 5.1 Opstelling Hieronder vindt u de schematische opstelling van het elektronica schema.
11 10 BESLUIT. Dit was een uitdagend maar leuk project. We hebben bepaalde technieken leren combineren en samenbrengen naar 1 geheel. We zijn wel enkele obstakels tegengekomen maar we hebben deze op een goede manier kunnen oplossen. Het project was een leuke herhaling van de verschillende methodes die we in de les hebben gezien.
12 1 BIJLAGE Lcd.py import RPi.GPIO as GPIO import time import datetime GPIO.setmode(GPIO.BCM) # use GPIO numbers GPIO.setwarnings(False) LCD_RS = 7 LCD_E = 8 LCD_D4 = 25 LCD_D5 = 24 LCD_D6 = 23 LCD_D7 = 18 LED_ON = 15 LCD_WIDTH = 16 LCD_CHR = True LCD_CMD = False LCD_LINE_1 = 0x80 LCD_LINE_2 = 0xC0 E_PULSE = E_DELAY = def readadc(adc, clk, Din, Dout, cs): if ((adc > 7) or (adc < 0)): return -1 GPIO.output(cs, True) GPIO.output(clk, False) GPIO.output(cs, False) commandout = adc commandout = 0x18 commandout <<= 3 for i in range(5): if (commandout & 0x80): GPIO.output(Din, True) else: GPIO.output(Din, False) commandout <<= 1 GPIO.output(clk, True) GPIO.output(clk, False) adcout = 0 for i in range(12): GPIO.output(clk, True) GPIO.output(clk, False) adcout <<= 1 if (GPIO.input(Dout)): adcout = 0x1 GPIO.output(cs, True) adcout >>= 1 return adcout clk = 11 Dout = 9
13 2 Din = 10 cs = 22 GPIO.setup(Din, GPIO.OUT) GPIO.setup(Dout, GPIO.IN) GPIO.setup(clk, GPIO.OUT) GPIO.setup(cs, GPIO.OUT) GPIO.setup(5,GPIO.OUT) p=gpio.pwm(5,50) p.start(0) adc = 0 graden = 0 def main(): GPIO.setup(LCD_E, GPIO.OUT) GPIO.setup(LCD_RS, GPIO.OUT) GPIO.setup(LCD_D4, GPIO.OUT) GPIO.setup(LCD_D5, GPIO.OUT) GPIO.setup(LCD_D6, GPIO.OUT) GPIO.setup(LCD_D7, GPIO.OUT) GPIO.setup(LED_ON, GPIO.OUT) lcd_init() while True: trim_pot = readadc(adc, clk, Din, Dout, cs) if trim_pot < 100: graden = 15 led=10 elif trim_pot > 100 and trim_pot < 200: graden = 16 led=20 elif trim_pot > 200 and trim_pot < 300: graden = 17 led=30 elif trim_pot > 300 and trim_pot < 400: graden = 18 led=40 elif trim_pot > 400 and trim_pot < 500: graden = 19 led=50 elif trim_pot > 500 and trim_pot < 600: graden = 20 led=60 elif trim_pot > 600 and trim_pot < 700: graden = 21 led=70 elif trim_pot > 700 and trim_pot < 800: graden = 22 led=80 elif trim_pot > 800 and trim_pot < 900: graden = 23 led=90 elif trim_pot > 900: graden = 24 led=100 time.sleep(0.1) now = datetime.datetime.now()
14 3 tijd = now.strftime('%h:%m') datum = str(now.day) + "/" + str(now.month) + "/" + str(now.year) tijddatum = str(tijd) + " " + str(datum) temperatuur = "Temp: " + str(graden) + "C" p.changedutycycle(led) GPIO.output(LED_ON, True) time.sleep(2) lcd_byte(lcd_line_1, LCD_CMD) lcd_string("project Embedded Linux") lcd_byte(lcd_line_2, LCD_CMD) lcd_string("jonas / Dimitri") time.sleep(2) lcd_byte(lcd_line_1, LCD_CMD) lcd_string(temperatuur) lcd_byte(lcd_line_2, LCD_CMD) lcd_string(tijddatum) def lcd_init(): lcd_byte(0x33,lcd_cmd) lcd_byte(0x32,lcd_cmd) lcd_byte(0x28,lcd_cmd) lcd_byte(0x0c,lcd_cmd) lcd_byte(0x06,lcd_cmd) lcd_byte(0x01,lcd_cmd) def lcd_string(message): message = message.ljust(lcd_width," ") for i in range(lcd_width): lcd_byte(ord(message[i]),lcd_chr) def lcd_byte(bits, mode): GPIO.output(LCD_RS, mode) GPIO.output(LCD_D4, False) GPIO.output(LCD_D5, False) GPIO.output(LCD_D6, False) GPIO.output(LCD_D7, False) if bits&0x10==0x10: GPIO.output(LCD_D4, True) if bits&0x20==0x20: GPIO.output(LCD_D5, True) if bits&0x40==0x40: GPIO.output(LCD_D6, True) if bits&0x80==0x80: GPIO.output(LCD_D7, True) time.sleep(e_delay) GPIO.output(LCD_E, True) time.sleep(e_pulse) GPIO.output(LCD_E, False) time.sleep(e_delay) GPIO.output(LCD_D4, False)
15 4 GPIO.output(LCD_D5, False) GPIO.output(LCD_D6, False) GPIO.output(LCD_D7, False) if bits&0x01==0x01: GPIO.output(LCD_D4, True) if bits&0x02==0x02: GPIO.output(LCD_D5, True) if bits&0x04==0x04: GPIO.output(LCD_D6, True) if bits&0x08==0x08: GPIO.output(LCD_D7, True) time.sleep(e_delay) GPIO.output(LCD_E, True) time.sleep(e_pulse) GPIO.output(LCD_E, False) time.sleep(e_delay) main()
16 5 Index.php <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>raspberry Pi Gpio</title> <style> img{ margin: 15px 15px 5px 15px; ul { list-style: none; margin-left: 0px; li { float: left; width: 100px; text-align: center; li p { color: white; margin-top: 0px; </style> </head> <body style="background-color: Black;"> <?php $status = array (0, 0, 0, 0, 0, 0, 0, 0); $naam = array ("Badkamer","Living","Keuken","Hal","Slaapkamer 1","Slaapkamer 2","Garage","Veranda"); echo "<ul>"; for ($i = 0; $i < count($status); $i++) { //set the pin's mode to output and read them system("gpio mode ".$i." out"); exec ("gpio read ".$i, $status[$i], $return ); echo "<li>"; //if off if ($status[$i][0] == 0 ) { echo ("<img id='button_".$i."' src='data/img/red/red.jpg' alt='off'/>"); //if on if ($status[$i][0] == 1 ) { echo ("<img id='button_".$i."' src='data/img/green/green.jpg' alt='on'/>"); echo "<p>". $naam[$i]. "</p>"; echo "</li>"; echo "</ul>";?> <script src="script.js"></script> </body> </html>
17 6 Script.js var button_0 = document.getelementbyid("button_0"); var button_1 = document.getelementbyid("button_1"); var button_2 = document.getelementbyid("button_2"); var button_3 = document.getelementbyid("button_3"); var button_4 = document.getelementbyid("button_4"); var button_5 = document.getelementbyid("button_5"); var button_6 = document.getelementbyid("button_6"); var button_7 = document.getelementbyid("button_7"); function change_pin (pin, status) { var request = new XMLHttpRequest(); request.open( "GET", "gpio.php?pin=" + pin + "&status=" + status ); request.send(null); request.onreadystatechange = function () { if (request.readystate == 4 && request.status == 200) { return (parseint(request.responsetext)); else if (request.readystate == 4 && request.status == 500) { alert ("server error"); return ("fail"); else { return ("fail"); button_0.addeventlistener("click", function () { //if red if ( button_0.alt === "off" ) { var new_status = change_pin ( 22, 0); button_0.alt = "on" button_0.src = "data/img/green/green.jpg"; //if green if ( button_0.alt === "on" ) { var new_status = change_pin ( 22, 1); button_0.alt = "off" button_0.src = "data/img/red/red.jpg"; ); button_1.addeventlistener("click", function () { //if red if ( button_1.alt === "off" ) { var new_status = change_pin ( 23, 0); button_1.alt = "on" button_1.src = "data/img/green/green.jpg";
18 7 ); //if green if ( button_1.alt === "on" ) { var new_status = change_pin ( 23, 1); button_1.alt = "off" button_1.src = "data/img/red/red.jpg"; button_2.addeventlistener("click", function () { //if red if ( button_2.alt === "off" ) { var new_status = change_pin ( 24, 0); button_2.alt = "on" button_2.src = "data/img/green/green.jpg"; //if green if ( button_2.alt === "on" ) { var new_status = change_pin ( 24, 1); button_2.alt = "off" button_2.src = "data/img/red/red.jpg"; ); button_3.addeventlistener("click", function () { //if red if ( button_3.alt === "off" ) { var new_status = change_pin ( 25, 0); button_3.alt = "on" button_3.src = "data/img/green/green.jpg"; //if green if ( button_3.alt === "on" ) { var new_status = change_pin ( 25, 1); button_3.alt = "off" button_3.src = "data/img/red/red.jpg";
19 8 ); button_4.addeventlistener("click", function () { //if red if ( button_4.alt === "off" ) { var new_status = change_pin ( 26, 0); button_4.alt = "on" button_4.src = "data/img/green/green.jpg"; //if green if ( button_4.alt === "on" ) { var new_status = change_pin ( 26, 1); button_4.alt = "off" button_4.src = "data/img/red/red.jpg"; ); button_5.addeventlistener("click", function () { //if red if ( button_5.alt === "off" ) { var new_status = change_pin ( 27, 0); button_5.alt = "on" button_5.src = "data/img/green/green.jpg"; //if green if ( button_5.alt === "on" ) { var new_status = change_pin ( 27, 1); button_5.alt = "off" button_5.src = "data/img/red/red.jpg"; ); button_6.addeventlistener("click", function () { //if red if ( button_6.alt === "off" ) { var new_status = change_pin ( 28, 0); button_6.alt = "on"
20 9 ); button_6.src = "data/img/green/green.jpg"; //if green if ( button_6.alt === "on" ) { var new_status = change_pin ( 28, 1); button_6.alt = "off" button_6.src = "data/img/red/red.jpg"; button_7.addeventlistener("click", function () { //if red if ( button_7.alt === "off" ) { var new_status = change_pin ( 29, 0); button_7.alt = "on" button_7.src = "data/img/green/green.jpg"; //if green if ( button_7.alt === "on" ) { var new_status = change_pin ( 29, 1); button_7.alt = "off" button_7.src = "data/img/red/red.jpg"; );
Niveaudetectie van gevulde wijnflessen
Namen: Stijn Boutsen & Leendert Wilms Schooljaar: 2014 2015 Richting: MA EA-ICT Datum: 1 juni 2015 Niveaudetectie van gevulde wijnflessen 1 Algemene inleiding Voor het vak innovatie in de sensortechnologie
Nadere informatieProgrammeren van de Raspberry Pi. http://ardezo.home.xs4all.nl/rpi_programmeren/
Programmeren van de Raspberry Pi Zaterdag 21 september 2013 De Bilt Johan Swenker http://ardezo.home.xs4all.nl/rpi_programmeren/ Agenda Inleiding Raspberry Pi GPIO Programmeren bash python scratch Interfaces
Nadere informatieOm een ander voorbeeld aan te halen waar er wel een opsplitsing van toepassing is:
Inhoud Gebruikte programma s... 1 MPD... 1 MPC... 1 Installatie op de RPI... 2 Configuratie van de muziekspeler op de RPI... 2 Test met oude Packard Bell NAS... 3 Configuratie NAS... 3 Koppeling aan RPI...
Nadere informatieDOBBELSTEEN 2.0. Stap-voor-stap instructie
DOBBELSTEEN 2.0 Stap-voor-stap instructie 1. Project Een dobbelsteen met LED-jes en gesproken tekst, aangestuurd door de Raspberry Pi, geprogrammeerd met Python 2.7. 2. Benodigdheden Raspberry Pi (2 model
Nadere informatieChris de Kok 223548 TDI 3. Vak: Software Architectuur Datum: 21-01-2008 Docent: Fons van Kesteren
Chris de Kok 223548 TDI 3 Vak: Software Architectuur Datum: 21-01-2008 Docent: Fons van Kesteren Inhoud Inleiding... 3 Black box / White box... 3 XP... 3 SimpleTest... 3 Eclipse plugin... 4 GroupTest...
Nadere informatieWebsitecursus deel 2 CSS
Websitecursus deel 2 CSS A Eskwadraat WebCie www@a-eskwadraat.nl 5 oktober 2015 Introductie Vorige week HTML Deze week CSS Volgende week Javascript CSS CSS (Cascading Style Sheets) bepalen hoe een website
Nadere informatieRaspberry Pi Interfacing.
Als je met je Raspberry Pi contact wil maken met de buitenwereld heb je het GPIO ( General Purpose Input Output) interface van de RPi nodig. Met het GPIO interface kun je besturingen maken voor heel veel
Nadere informatieVoor vragen: http://www.richard3332.nl/ of mail naar Richard3332@gmail.com
Welkom bij mijn website tutorial (Deel 5) Ik ga uit van Microsoft XP voor de duidelijkheid. Ik heb dus geen idee of de programma s die ik gebruik ook op Vista werken. Notepad++ werkt zowieso op xp en Vista.
Nadere informatieGegevens uit een database tonen
Gegevens uit een database tonen In een eerdere handleiding heb ik jullie laten zien hoe je met behulp van MySQL en phpmyadmin een database kunt opzetten. We hebben toen een database aangemaakt en gevuld
Nadere informatieJavascript oefenblad 1
Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de
Nadere informatieHandleiding Woonz.nl iframe
Handleiding Woonz.nl iframe Woonz.nl biedt de mogelijkheid om uw actuele woningaanbod op Woonz.nl op uw website te tonen. Hiervoor dient u eerst een API-key te ontvangen van Woonz.nl, dit is een sleutel
Nadere informatieMonopoly: Howest edition
Elien Knockaert 1NMCT3 Monopoly: Howest edition Monopoly: Howest edition is een project die zich baseert op de originele Monopoly maar gebruik maakt van RFID kaarten in plaats van briefjes geld. De belangrijkste
Nadere informatieWORKSHOP ORANGE PI & PYTHON v september 2017
WORKSHOP ORANGE PI & PYTHON v1.1 21 september 2017 In deze workshop maak je kennis met een zogenaamde bord-computer ter grootte van een bankpas. Een bord-computer kan gebruikt worden als een normale computer
Nadere informatieRoc Zadkine. Javascript Car. Door: K.Bakker versie 1.0
Roc Zadkine Javascript Car Door: K.Bakker versie 1.0 mei 2016 distributielijst versie historie versie datum auteur Opmerkingen 1.0 2-2-2016 k.bakker inhoudsopgave 1. Project benodigdheden 3 2. Benodigdheden
Nadere informatieHTML en CSS gevorderd
HTML en CSS gevorderd Inhoudsopgave Inleiding! 3 Opbouw webpage en css! 4 DIVʼs of iframes?! 8 Eigen icoon in de adresbalk van de browser! 8 Web-editors! 8 Koppelen van css-bestanden! 9 Browser afhankelijke
Nadere informatieBasis-theme. Manage Wiki > Look and Feel > Themes > Change or make a new theme > Make a New Theme >
Basis-theme Manage Wiki > Look and Feel > Themes > Change or make a new theme > Make a New Theme > Naam invullen en de code van basis-theme kopiëren en erin plakken
Nadere informatieFFO Webdesign 1e jaar theorietoets NL niveau4... Totaal aantal vragen: 40
FFOUCHIER 01/11/2018 FFO Webdesign 1e jaar theorietoets NL niveau4... Totaal aantal vragen: 40 De meeste juiste antwoorden: #22 Minste Juiste antwoorden: #30 1. Selecteer de juiste HTML-code voor het maken
Nadere informatieSeven segments of Pi
Seven segments of Pi Seven segments of pi Aan de slag met seven segments of Pi! Seven segments is een klein add-on boardje voor de raspberry pi. Deze add-on bestaat uit een display en een knopje. Meer
Nadere informatieSoftware 1. php mysql. bachelor grafische en digitale media cross-media ontwerp & grafimediatechnologie academiejaar 2010-2011 semester 1
Software 1 php mysql bachelor grafische en digitale media cross-media ontwerp & grafimediatechnologie academiejaar 2010-2011 semester 1 Alain Simons alain.simons@artesis.be Basis php 1. Introductie 2.
Nadere informatieLes 9: formulier controle met javascript.
Les 9: formulier controle met javascript. Javascript is erg veel gebruikt bij internet toepassingen. In tegenstelling tot PHP, wat een server side scripting is, is java client side scripting. Dwz, niet
Nadere informatieI'VE GOT EM FRONTEND DEVELOPMENT LES 3
I'VE GOT EM FRONTEND DEVELOPMENT LES 3 VORIGE WEEK CSS bling Selectors deel 1 Even heel kort samenvatten waar we het ook al weer over hebben gehad vorige week. Niet te lang bij stilstaan want er is heel
Nadere informatieVersie: 1.0 Gemaakt door: Whisper380 Eigenaar: Whisper380-computerhulp Datum: 23-1-2011
Versie: 1.0 Gemaakt door: Whisper380 Eigenaar: Whisper380-computerhulp Datum: 23-1-2011 1 Inhoudsopgave Wat gaan we doen?... 4 Eerst wat uitleg:... 4 Wat is HTML:... 4 Wat is CSS:... 4 Wat is het resultaat
Nadere informatieHet hele scherm besturen
De Sense HAT programmeren Het hele scherm besturen Met de Sense HAT kun je allerlei omstandigheden in het ISS waarnemen en opslaan. Ook kun je ze laten zien als tekst of plaatje op het ledscherm. In deze
Nadere informatieEmSE presentatie. Raspberry Pi: Mijn eerste hapjes
EmSE presentatie Raspberry Pi: Mijn eerste hapjes Augustus 2012 Raspberry Pi Kees Moerman, EmSE 2 Wat is de Raspberry Pi Een kleine maar vrij krachtige single-board computer Ontworpen voor educatieve doeleinden
Nadere informatieMin-height en min-width
Oefening 15.5 Min-height en min-width Maak op van uw een webpagina s een div die u voorziet van een geschikte waarde voor min-height en min-width. Laat zien wat er gebeurt als u het lettertype verkleint
Nadere informatieWEBSITE-DESIGN CHRIS VERMAAS & FJODOR VAN SLOOTEN 2014-201000018-1B
WEBSITE-DESIGN CHRIS VERMAAS & FJODOR VAN SLOOTEN 2014-201000018-1B WEBSITE-DESIGN INHOUD COLLEGE Stappenplan: stap 4 HTML, Stylesheets vervolg slides @ vanslooten.com/websitedesign Website-design 1-12-2014
Nadere informatieTemplates maken voor Joomla! Hoe maak je zelf een template voor je Joomla! website
Templates maken voor Joomla! Hoe maak je zelf een template voor je Joomla! website Wat we gaan doen 1. Wie ben ik? 2. Voor- en nadelen bestaande templates en eigen templates 3. Eigen template op basis
Nadere informatieProgrammeren. a. 0, 0, 0 b. 0, 0, 27 c. 15, 12, 0 d. 15, 12, 27
Programmeren 0. (1 punt.) Stel, een "afhankelijk kind" is een persoon is die jonger is dan 18 jaar, en hooguit 8.000 euro verdient. Welke van de onderstaande expressies definieert een afhankelijk kind?
Nadere informatie1. De basis 2. De basis uitbreiden
Wordpress Theme Hoe moet je deze reader gebruiken? Deze reader is digitaal, zodat je makkelijk stukjes code kunt kopieren en plakken. 1. De basis 2. De basis uitbreiden Hier aan de linkerkant vind je een
Nadere informatie2014-2015 Beveiligingsmodule GIP 2014-2015. Niels Van Damme VTI-LOKEREN
2014-2015 Beveiligingsmodule GIP 2014-2015 Niels Van Damme VTI-LOKEREN Inhoud Voorwoord... 3 Doel... 4 Werking... 4 Benodigdheden... 4 Raspberry Pi... 5 Specificaties... 5 Programmeren... 5 HC-SR501...
Nadere informatieRESPONSIVE DRUPAL THEMING MET SASS, COMPASS, SUSY EN AURORA DRUPAL TECH TALK 25 APRIL 2013 MARC VAN GEND TRIQUANTA
RESPONSIVE DRUPAL THEMING MET SASS, COMPASS, SUSY EN AURORA DRUPAL TECH TALK 25 APRIL 2013 MARC VAN GEND TRIQUANTA AGENDA Het Doel #responsivemobilefirsthtml5buzzwordcompliant CSS preprocessing SASS Werken
Nadere informatieWat is een child-theme?
Child theme Waarschuwing 1. Het maken van een child theme is relatief eenvoudig, u hebt er wel FTP toegang voor nodig bij uw provider. 2. Het is soms lastig om precies uit te vinden welke css codes u moet
Nadere informatieZonnepanelen Hoe krijg je de data op je website?
Zonnepanelen Hoe krijg je de data op je website? Beste website-bezoeker, Omdat ik al heel wat vragen kreeg over het gedeelte zonne-energie op mijn website, heb ik besloten om de werkwijze die ik gevolgd
Nadere informatieInhoud. Pagina 2 van 13
Code Conventie Inhoud PHP algemeen... 3 Namen van variabelen... 3 Enkele of dubbele aanhalingstekens... 3 Globale variabelen... 3 Namen van functies... 3 Argumenten van functies... 3 Formattering... 4
Nadere informatieEigen Widgets in CRM. Introductie. Limitering. Widgets beschikbaar stellen. Tips & Tricks Eigen Widgets in CRM
Tips & Tricks Eigen Widgets in CRM Eigen Widgets in CRM Introductie De WebUI van CRM 7.0 maakt het mogelijk om je eigen widgets te maken en deze in je eigen view te gebruiken. Dat kan door gebruik te maken
Nadere informatieUSB 2x. USB 2x DSI (DISPLAY) http://www.raspberrypi.org. Audio HDMI. ETHERNET Power
AdHoc Netwerk AdHoc Netwerk...1 Introductie...1 Netwerk van zenders en ontvangers...1 Netwerk van (conflicterende) sensoren en relais...4 Stabiele hoofd daemon...6 Introductie Waarschijnlijk is de AdHoc
Nadere informatieRaspberry Pi. 14-04-2014 HCC- Haaglanden Tim Woldring
Raspberry Pi 14-04-2014 HCC- Haaglanden Tim Woldring De Raspberry Pi, een computer voor ca 35. De Raspberry Pi is een complete computer. De Raspberry Pi heeft alles aan boord om een scherm, muis en toetsenbord
Nadere informatieKatholieke Hogeschool Kempen ASP
Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 3de jaar Toegepaste Informatica ASP www.projectchatroom.be Yorkim Parmentier 3TI4 Andy Geluykens 3TI4 Academiejaar
Nadere informatieMINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara
MINICURSUS PHP Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2017-2018 Sebastiaan Franken en Rosalie de Klerk Bambara PHP Cursus Deze cursus is om de eerste stappen in de wereld
Nadere informatieTaak 2.1.9 - Strict or Strong. Inhoud
Taak 2.1.9 - Strict or Strong Inhoud Taak 2.1.9 Strict or Strong... 1 Inhoud... 1 Inleiding... 2 Wat is een Strict wachtwoord policy?... 3 Waarom een sterk wachtwoord?... 3 De controle methode... 4 PSDs...
Nadere informatieSoftware Instructions for Real Kids - Felix Plesoianu (2009) en Kris Merckx (2013) - Creative Commons License
SIRK Software Instructions for Real Kiddies (versie 0.247) De programmeeromgeving, interpreter en compiler kan je online gebruiken op www.ardeco.be/sirk Variabele Functies Functienaam Parameters Voorbeeld
Nadere informatieAccelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368
Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368 Handleiding bij het gebruik van een microcontroller in het Accelerometerproject (Project II) Er zijn speciaal voor het Accelerometerproject
Nadere informatieExercise assistant on-line
Exercise assistant on-line Onderwerpen - Introductie Exercise Assistant - On-line volgens MVC principe - Problemen bij MVC principe - Mogelijke oplossing - Richtingen onderzoek - Mogelijkheid tot meedoen
Nadere informatieSQL INJECTIE Door Eoghain Verdonckt Beveiliging december 2013
SQL INJECTIE Door Eoghain Verdonckt Beveiliging december 2013 Voor mijn werkje voor beveiliging ga ik een tutorial maken voor SQL injectie. En hoe we deze kunnen voorkomen. Allereerst heb ik een tabel
Nadere informatieWebsitecursus deel 3 JavaScript
Websitecursus deel 3 JavaScript A Eskwadraat WebCie www@a-eskwadraat.nl 12 oktober 2015 Introductie Twee weken geleden HTML Vorige week CSS Deze week JavaScript Javascript JavaScript (ook wel JS) is een
Nadere informatieSima. Programmeren. 2e graad
Sima Programmeren 2e graad David De Ruyter 23-4-2018 Inhoudsopgave Programmeren deel 1 - Een algoritme... 2 Voorbeelden... 3 Algoritme vs. programma... 3 Stappen naar succes... 4 Probleemstelling:... 4
Nadere informatieAJAX (XMLHttpRequest)
AJAX (XMLHttpRequest) Ajax is hot. De meesten die met webdesign bezig zijn hebben er wel al van gehoord, veronderstel ik. Voor diegenen die er nog niet van hoorden, of nog niet mee werkten volgt hier een
Nadere informatieScripting 2 TUTORIAL EEN APP ONTWIKKELEN VOOR ANDROID MET PROCESSING. ellipse(screenwidth/2, screenheight/2, 140,140); DOOR THIERRY BRANDERHORST
Scripting 2 ellipse(screenwidth/2, screenheight/2, 140,140); TUTORIAL EEN APP ONTWIKKELEN VOOR ANDROID MET PROCESSING. DOOR THIERRY BRANDERHORST ANDROID APPLICATIES Tegenwoordig zijn er duizenden applicaties
Nadere informatieVoor vragen: http://www.richard3332.nl/ of mail naar Richard3332@gmail.com
Welkom bij mijn PHP tutorial (Deel 1) Ik ga in deze delen PHP uitleggen, dit doe ik in het programma notepad++ (gratis) deze kunt u downloaden van www.richard3332.nl/downloads.php Als u beschikt over dreamweaver
Nadere informatieDynamische Websites. Week 9
Dynamische Websites Week 9 AGENDA Nut van een framework? Relatieve URLs Views Slicing 2 step design NUT VAN EEN FRAMEWORK? Heel veel code is voor jullie al geschreven, jullie moeten deze op de juiste plaatsen
Nadere informatieDe Sense HAT programmeren Je eerste computerprogramma
De Sense HAT programmeren Je eerste computerprogramma De Sense HAT is een uitbreiding voor de Raspberry Pi die speciaal voor de Astro Pi-wedstrijd is gemaakt. Met dit bord is het mogelijk om allerlei informatie
Nadere informatieBeleef het nieuwe Klantverwijssysteem
Beleef het nieuwe Klantverwijssysteem BLOOM is een klantverwijssysteem ontwikkeld op basis van de laatste technologieën en behoeftes uit de markt. Bloom is een krachtig, slim en gebruiksvriendelijk klantverwijssysteem
Nadere informatieBeleef het nieuwe Klantverwijssysteem
Beleef het nieuwe Klantverwijssysteem BLOOM is een klantverwijssysteem ontwikkeld op basis van de laatste technologieën en behoeftes uit de markt. Bloom is een krachtig, slim en gebruiksvriendelijk klantverwijssysteem
Nadere informatieAPI Specificatie Doc
API Specificatie Doc (reisafstanden.nl) Request Request Methode GET URL https://www.reisafstanden.nl/api? Request parameters Parameter Opties Verplicht Uitleg contenttype json of xml of jsonp of credits
Nadere informatieWorkshop Arduino voor beginners deel 2
Workshop Arduino voor beginners deel 2 Voor deze workshop is het van belang dat je deel 1 van de workshop hebt afgerond. In deze workshop zitten meerdere opdrachten die elkaar niet allemaal op hoeven te
Nadere informatieSINT JORISINSTITUUT RASPBERRY PI. Karl
10 5 2013 SINT JORISINSTITUUT RASPBERRY PI Karl 1 Opbouw 1.1 Layout 1.2 Specificaties CPU: RAM: Storage: Graphics Screen: Audio: Broadcom BCM2835 SoC (700MHz) 256MB (shared with GPU) SD / MMC/ SDIO card
Nadere informatieTaskCentre Web Service Connector: Creëren van requests in Synergy Enterprise
TaskCentre Web Service Connector: Creëren van requests in Synergy Enterprise Inhoudsopgave 1. Voorbereiding... 4 2. Web Service Connector tool configuratie... 5 3. TaskCentre taak voor het aanmaken van
Nadere informatieHosting. Bestelformulier en domeinnaamcontrole. Januari, 2013. WeFact B.V. Kuiper 7a 5521 DG Eersel Nederland. w: www.wefact.nl e: helpdesk@wefact.
Hosting Januari, 2013 Bestelformulier en domeinnaamcontrole WeFact B.V. Kuiper 7a 5521 DG Eersel Nederland w: www.wefact.nl e: helpdesk@wefact.nl Introductie Algemeen In deze handleiding wordt uitgelegd
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 19, 2018 Overzicht Grafische programma s en tekstgebaseerde programma s Stijladviezen (Jeff Knupp, Writing Idiomatic Python) File Processing (Zelle 5.9.2)
Nadere informatieTopic: College 3 opdrachten - analoge IO Modified: 27 september :12
Topic: College 3 opdrachten - analoge IO Modified: 27 september 2017 23:12 Opdrachten analoge I/O Leerconcept: de opdrachten zijn ideëen om met analoge I/O te leren programmeren. Advies is om nivo 1 opdrachten
Nadere informatieDrupal theming. 28 april 2014 - CVO Crescendo
Drupal theming 28 april 2014 - CVO Crescendo About-me.tpl.php Esther De Jonghe Drupal front end developer verleden: @cronos, @adforce, @puresign nu: freelance (wwwonderland) @estherdejonghe Wat is theming?
Nadere informatieJe hoeft je maar met twee bestanden bezig te houden:
1 2 3 Deze set Sushi Kaarten leert je hoe je een web-app maakt met een nogte-doen lijst. Als je op enig moment wilt zien hoe de web-app kan worden, kijk dan op dojo.soy/js-todo. Deze app kun je gebruiken
Nadere informatieLinux Gevorderden Basis installatie Linux. Elektronica-ICT. Selina Oudermans 2ICT4. Academiejaar 2015-2016
Linux Gevorderden Basis installatie Linux Elektronica-ICT Selina Oudermans 2ICT4 Academiejaar 2015-2016 Campus Geel, Kleinhoefstraat 4, BE-2440 Geel 65 3 INHOUDSTAFEL INHOUDSTAFEL... 3 INLEIDING... 4 1
Nadere informatie64 voor de BBC micro:bit
Bordindeling: De: GAME 64 is een programmeerbare gamepad voor de BBC micro:bit. Het beschikt over 64 adresseerbare LED's in een 8 x 8 display, een piezo-zoemer voor audiofeedback, een vibratiemotor voor
Nadere informatieDrICTVoip.dll v 2.1 Informatie en handleiding
DrICTVoip.dll v 2.1 Informatie en handleiding Nieuw in deze versie : Koppeling voor web gebaseerde toepassingen (DrICTVoIPwebClient.exe) (zie hoofdstuk 8) 1. Inleiding Met de DrICTVoIP.DLL maakt u uw software
Nadere informatieOpdrachtformulering (pagina 3 van 7)
Afstudeerovereenkomst van Tim Wils Bijlage 1 Opdrachtformulering (pagina 3 van 7) Dit project betreft een eigen framework (soort API) waarmee relatief gemakkelijk en in korte tijd eindproducten opgezet
Nadere informatieHandleiding: Whitelabel Customersite
ARGEWEB B.V. Handleiding: Whitelabel Customersite Controlportal.nl Argeweb Support 8-1-2009 Handleiding voor het gebruik maken van de Whitelabel Customersite op controlportal.nl, door Resellers van Argeweb.
Nadere informatieNVU work shop. Kees Moerman http://www.keesmoerman.nl November 2006. 1. Overzicht van een web site. Wat is een web site HTML files
NVU work shop Moerman http://www.keesmoerman.nl November 2006 1 1 Overzicht 1. Overzicht van een web site Wat is een web site HTML files 2. NVU: Een HTML editor Overzicht Een eerste pagina Configuratie
Nadere informatieAPI Specificatie Doc
API Specificatie Doc (reisafstanden.nl) Version Request versie Aanpassingen 1.2.0 Aankomstdatumtijd en vertrekdatumtijd toegevoegd als optie 1.1.0 Referentie toegevoegd als optie voor in en output 1.0.0
Nadere informatieKris Merckx Javascript Programming - DIVARC - trigonometry en wrapping/warping text
DIVARC Copyright: Kris Merckx 2013 Parameter Waarde Wat? size geheel getal aantal posities op de cirkel xpos getal x-positie middelpunt van de cirkel ypos getal y-positie middelpunt van de cirkel radius
Nadere informatieRaspberry Pi Recepten - Deel 7
Raspberry Pi Recepten - Deel 7 PWM op het menu Tot nu toe hebben we in deze serie gekeken naar allerlei digitale signalen: GPIO, Seriële UART, SPI en I 2 C. We hebben ook analoge signalen (via SPI) gezien.
Nadere informatieVAN HET PROGRAMMEREN. Inleiding
OVERZICHT VAN HET PROGRAMMEREN Inleiding Als je leert programmeren lijkt het nogal overweldigend om die eerste stappen te doorworstelen. Er zijn dan ook heel wat programmeertalen (Java, Ruby, Python, Perl,
Nadere informatieRaspberry Pi Webhosting Datacenter
Raspberry Pi Webhosting Datacenter Bram De Meester Bram Scheerder Jan Vernackt Projecten 1 Academiejaar 20132014 Professionele Bachelor ICT AJ 2013 2012 Inhoud Vastleggen projectvoorstel... 2 Omschrijving
Nadere informatieJoomla! 1.5 templates
Joomla! 1.5 templates De nieuwste versie van een van s werelds meest populaire CMS en Marco Corrò De onderdelen van een template? templatenaam templatedetails.xml XML installatiescript index.php template_thumbnail.png
Nadere informatieWebscripting. PCVO Gent & OBAC. Willem De Meyer
Webscripting PCVO Gent & OBAC Willem De Meyer Situering van de module De module webscripting kan na de cursus webdesign gevolgd worden. Kennis van html is noodzakelijk om op de opbouw van webpagina s te
Nadere informatieWat is Arduino? Arduino = microprocessor (Atmel)
Intro tot Arduino Wat is Arduino? Volgens de website: Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers,
Nadere informatieDe tag aan het begin van het PHPscript is "<?php" aan het einde van het PHPscript gebruik je "?>".
PHP Les 3 Commando ECHO Interessante links: o http://www.donboscozwijnaarde.be/~moermant/ o http://php.net/manual/en/function.echo.php o http://www.w3schools.com/php/default.asp Wat is PHP? PHP is een
Nadere informatie3-2013 GSM250 GSM OPENER PROGRAMMATIE HANDLEIDING
3-2013 GSM250 GSM OPENER PROGRAMMATIE HANDLEIDING 1. Voedingsspanning 12 VDC + aansluiten op + 12V - aansluiten op GND 2. SIM-kaart voorbereiden De SIM-kaart voorzien van abonnement of indien prepaid,
Nadere informatieDit document bevat een beschrijving van het proces van de Webdesign opdracht voor de cursus Informatie-uitwisseling van de opleiding Informatiekunde
Dit document bevat een beschrijving van het proces van de Webdesign opdracht voor de cursus Informatie-uitwisseling van de opleiding Informatiekunde [64] [Arthur Hemmer 5494753] [Mehul Mistry 4255704]
Nadere informatieUniversiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren
Universiteit van Amsterdam FNWI Voorbeeld van tussentoets Inleiding programmeren Opgave 1: Wat is de uitvoer van dit programma? public class Opgave { static int i = 0 ; static int j = 1 ; int i = 1 ; int
Nadere informatieDescendant selectors toepassen
HTML EN CSS de basis Oefening 13.4 Descendant selectors toepassen Maak een lijst binnen een definitielijstlijst en geef de binnenste lijst een totaal andere vormgeving. 13.7 Verticaal navigatieblok Een
Nadere informatieDomein API Handleiding
Domein API Handleiding Versie 1.6 Datum: 16-07-2014 1 Inhouds opgave 2 Inleiding 3 Result codes 4 Api functies 5 Api helpers 2 Inleiding: De API van 123 Hosting Service kan worden gebruikt om te registreren
Nadere informatieConnect a Thing! WORKSHOP solderen electronica raspberrypi websocket. onderzoek creativiteit IoT web sensoren. [ competenties 21 st Century Skills ]
Connect a Thing! WORKSHOP solderen electronica raspberrypi websocket www.creativehubs.nl [ competenties 21 st Century Skills ] onderzoek creativiteit IoT web sensoren 1 creativehubs.nl Sensoren, minicomputers,
Nadere informatieProgrammeren met Arduino-software
Programmeren met Arduino-software De software waarin we programmeren is Arduino IDE. Deze software is te downloaden via www.arduino.cc. De programmeertaal die hier gebruikt wordt, is gebaseerd op C en
Nadere informatieDeel 2 S7 Graph Ont4 - GA3
Deel 2 S7 Graph Ont4 - GA3 Deel 2 : Graph 09/05 1 Wanneer er in een installatie een sequentiële beweging geprogrammeerd moet worden is het interessant om gebruik te maken van S7 Graph. De progammastructuur
Nadere informatieLes 3. Gebruik in volledige programma Default argumenten Vergelijken van objecten
Les 3 Gebruik in volledige programma Default argumenten Vergelijken van objecten Een Python programma def foo( ):... def bar( ):... def baz( ):... def main():... main() Een Python programma class Drank:...
Nadere informatieLES 4 WERKEN EN ERVARING OPDOEN. NOG VIER WEBPAGINA'S MAKEN.
LES 4 WERKEN EN ERVARING OPDOEN. NOG VIER WEBPAGINA'S MAKEN. In Les 3 hebben we het eerste vers van De Ridderkerkse Meezinger, getiteld: 'Bolnesserbocht in De Nieuwe Maas', verwerkt tot een webpagina,
Nadere informatieOm te beginnen heb je een geraamte van je website nodig. Maak een nieuwe map met de naam gevorderden_website aan om je website in te zetten.
1 2 Als je de Beginner en Midden HTML & CSS Sushi Kaarten hebt afgerond, dan weet je al veel over het programmeren met deze twee talen. Deze kaarten leren je hoe je al die onderdelen samenvoegt om een
Nadere informatieAPPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts
APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN Onderdeel van SmartProducts INHOUD COLLEGE 3 Scope van variabelen {3.9} Class ontwerpen en maken,
Nadere informatieFormulier maken en opvangen met php
Welkom bij mijn PHP tutorial (Deel 2) Ik ga in deze delen PHP uitleggen, dit doe ik in het programma notepad++ (gratis) deze kunt u downloaden van www.richard3332.nl/downloads.php Als u beschikt over dreamweaver
Nadere informatieLes 12 : database koppeling, opmaken van template, webstructuur en afdrukken van gegevens. (deel2).
Les 12 : database koppeling, opmaken van template, webstructuur en afdrukken van gegevens. (deel2). In de volgende reeks lessen zal alle vorige leerstof uitgebreid aan het bod komen. Zie ook de vorige
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord en Leonie Bosveld December 19, 2016 Vandaag Naar aanleiding van de opdrachten Zelle hoofdstuk 11 Boolean variabelen: niet checken met == Fout: if clicked == True
Nadere informatieINHOUD. Dankwoord...xvi Inleiding... xvii De basis... 2
INHOUD Dankwoord...xvi Inleiding... xvii De basis... 2 Leds Project 1: Een led laten knipperen... 36 Project 2: Led-zaklamp met drukknop... 46 Project 3: Led dimschakelaar... 52 Project 4: Een grafische
Nadere informatieWeb building basis: HTML. Karel Nijs 2008/09
Web building basis: HTML Karel Nijs 2008/09 Web building basis eerste les HTML intro Browsers HTML elementen HTML basis tags HTML attributen HTML kleuren HTML formattering Extra: HTML entities Web building
Nadere informatieWEBSITE-DESIGN CHRIS VERMAAS & FJODOR VAN SLOOTEN 2014-201000018-1B
WEBSITE-DESIGN CHRIS VERMAAS & FJODOR VAN SLOOTEN 2014-201000018-1B WEBSITE-DESIGN INHOUD COLLEGE Afronding vak JQuery, mail(formulieren) en social media Testen Website-design 5-1-2015 2 AFRONDING VAK
Nadere informatieFoutcontrole met Javascript
Foutcontrole met Javascript Pol Van Dingenen Yannick Van Hauwe INLEIDING Het controleren van de gegevens die ingevuld zijn in formulieren is heel erg belangrijk. In de praktijk is enkel en alleen controle
Nadere informatieConfiguratiehandleiding
Configuratiehandleiding Polycom Type: All Configuratiehandleiding Polycom Versie 1.2 Contents 1 Inleiding 1 2 Begrippen en afkortingen 1 3 Firmware-versie controleren 1 4 Resetten naar fabrieksinstellingen
Nadere informatieJarno Verhoogt 21 mei 2014 Stud. Nr. 500684953 Docent: Joost Faber. Deeltoets 2: Hoe maak je met javascript een eenvoudige slideshow?
Jarno Verhoogt 21 mei 2014 Stud. Nr. 500684953 Docent: Joost Faber Deeltoets 2: Hoe maak je met javascript een eenvoudige slideshow? Inleiding Dit is een eenvoudige handleiding om in javascript een simpele
Nadere informatieAgenda. Wat is HTML? Meer over HTML... Waarom HTML leren? Aniel Bhulai. Inleiding Computergebruik - HTML 1. Waarin maak je een HTML-bestand?
Agenda HTML algemeen Wat is HTML? Korte historie Opbouw HTML document Aantal tags + voorbeelden Vragen 2 3 Opmaaktaal Letter Kleur Plaatjes Tabellen Formulieren Links Wat is HTML? Waarin maak je een HTML-bestand?
Nadere informatie