Inbraakdetectie met Lazarus
|
|
|
- Fanny Adam
- 9 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Inbraakdetectie met Lazarus Michaël Van Canneyt July 8, 2012 Abstract Een laptop of desktop kan met behulp van een klein Lazarus programma eenvoudig omgetoverd worden tot een inbraakalarm. De Windows API staat toe fotos te maken van een kamer, en met behulp van een eenvoudig algoritme kunnen wijzigingen in de fotos gebruikt worden om een verwittigingsmail te sturen. 1 Introductie De meeste - zo niet alle - laptops of tablets zijn uitgerust met een webcam. Modernere webcams hebben een ingebouwde bewegingssensor, maar oudere webcams kunnen eenvoudig gebruikt worden als bewegingssensor door middel van huis-tuin en keuken algoritmes. In dit artikel tonen we aan hoe zoiets kan gedmaakt worden met Lazarus. Lazarus heeft geen kant-en-klaar componenten die kunnen dienen om webcams aan te spreken. De Lazarus-CCR site bevat echter wel een voorbeeld programma (geschreven door Bogdan Razvan Adrian) voor het werken met de Windows API voor video. Voor dit artikel zal dat programma aangepast worden om als bewegingssensor te dienen, en om een mail met in bijlage een beeldje te sturen als er beweging waargenomen wordt. Windows heeft 2 APIs voor het werken met video. Een oude, legacy API (Video For Windows) en een nieuwe: DirectShow (deel van DirectX). De nieuwe API is veel krachtiger, maar ligt dichter bij de hardware en vereist het gebruik van callbacks en interfaces, deze API is dan ook moeilijker in gebruik dan de oudere Video For Windows. Om het eenvoudig te houden maken we gebruik van de oude API - die overigens nog steeds werkt onder Windows 7. Het sturen van een mailtje met Lazarus is in een vorig artikel uitvoerig belicht, we zullen daar dan ook niet dieper op ingaan. 2 Video For windows De Video For windows interface werkt heel eenvoudig. Er wordt een Window Handle aangemaakt, en daarin wordt dan de video stream van de webcam getoond. De webcam (of andere video bron) wordt bestuurd door het sturen van Windows messages naar de handle van de webcam; er zijn een hoop messages die naar de webcam handle gestuurd kunnen worden, we zullen er maar een paar gebruiken. De API van Video For Windows is vertaald naar Object Pascal. De macros die in de C/C++ interface beschikbaar zijn, zijn ook vertaald. Zij verbergen het gebruik van messages, en leveren een procedurale API op. Dit alles is beschikbaar in de VFW unit, die meegeleverd is met de sources van dit artikel. Alle functies nen met de prefix cap, van het eng capture. 1
2 De belangrijkste functies (of messages) die we nodig hebben, zijn de volgende: capcreatecapturewindow Maakt een window handle aan waarmee het beeld van de camera getoond kan worden. Deze handle is nodig voor alle andere operaties. capdriverconnect Verbindt de window handle met een camera. Er kunnen tot 10 cameras verbonden worden. capdriverdisconnect Verbreekt de verbinding met de camera. capdrivergetcaps Haalt de eigenschappen op van de camera? capoverlay Start of stopt het tonen van het camera beeld in het aangemaakte window. Het tonen gebeurt dmv. video overlay. cappreview Start of stopt het tonen van het camera beeld in het aangemaakte window. Het tonen gebeurt dmv. software rendering. cappreviewrate Zet het framerate van de camera. cappreviewscale Zet herschalen van het beeld aan of af. capgrabframenostop Zet het huidige frame van de camera in een buffer, maar stopt de camera niet. capfilesavedib Bewaart het frame in de buffer in een bmp bestand. capfilesetcapturefile Stelt een bestandsnaam in voor het opnemen van een filmpje (.avi). capcapturesequence Begint een filmpje op te nemen. De bestandsnaam moet gezet zijn via capfilesetcapturefile. capfilesaveas bewaart het bestand met het opgenomen filmpje. capcapturestop Stopt met het opnemen van een filmpje. Er zijn nog meer functies, maar de bovenstaande zijn voldoende om een kleine applicatie mee te maken. De functie van elk van deze functies is duidelijk, en behoeft geen verdere uitleg. Buiten de capcreatecapturewindow functie, moet aan elke functie de window handle van het capture window worden meegegeven. 3 Een voorbeeld programma De applicatie de we zullen maken is heel eenvoudig: een scherm, met daarin een panel en dat panel toont de output van de webcam. Er zijn wat knoppen om de camera te starten en stoppen, en wat standaard windows dialogen te tonen die de eigenschappen van de camera instellen. Er is 1 knop die de bewegingsdetectie start en stopt, en een status balk die gebruikt wordt om wat staus berichten te tonen. Bij opstart van de main form wordt de windows video handle gemaakt, dmv. de capcreatecapturewindow functie. Deze functie krijgt de handle van een parent window mee (in dit geval de handle van de pcapture panel): procedure TMainForm.CapCreate; // Destroy if necessary CapDestroy; with pcapture do 2
3 FCapHandle := capcreatecapturewindow( Video Window, WS_CHILDWINDOW or WS_VISIBLE or WS_CLIPCHILDREN or WS_CLIPSIBLINGS, 5, 5, Width-10, Height-10, Handle, 0); if Not CapCreated then stcapture.caption := ERROR creating capture window!!! ; De capture window handle wordt als child window met een rand van 5 pixels binnen het pcapture panel gemaakt. De CapCreated functie is een functie van de TMainForm class, en kijkt na of FCapHandle verschillend is van nul: als de handle 0 is, is het aanmaken van de video capture window mislukt. Nadat de capture window is gemaakt, kan er geconnecteed worden met de webcam driver. Dit gebeurt met de CapConnect functie binnen de form, die de capdriverconnect functie oproept met de capture window handle als argument: procedure TMainForm.CapConnect; l : integer; m : string; if Not CapCreated then Exit; // Disconnect if necessary CapDisconnect; // Connect the Capture Driver FConnected:=capDriverConnect(FCapHandle, 0); if Not FConnected then M:= ERROR connecting capture driver. L:=SizeOf(TCapDriverCaps); capdrivergetcaps(fcaphandle,@fdrivercaps,l); if FDriverCaps.fHasOverlay then M:= Driver connected, accepts overlay M:= Driver connected, software rendering ; end stcapture.caption:=m; Als de driver zonder problemen aan de capture window is gekoppeld, wordt d.m.v. de capdrivergetcaps de driver eigenschappen opgehaald: Het FDriverCaps record van type TCapDriverCaps wordt opgevuld met de eigenschappen van de webcam. Specifiek wordt nagekeken of de camera in staat is het beeld direct in het video kaart geheugen te schrijven of niet (fhasoverlay): indien mogelijk wordt deze eigenschap gebruikt, dit werkt aanzienlijk sneller. Nadat de connectie met de webcam is gelegd, kan het eigenlijke tonen van het beeld dat de camera opvangt, nen. Dit gebeurt met de cappreview of capoverlay functies: procedure TMainForm.CapEnableViewer; 3
4 M : String; FLiveVideo := False; if Not FConnected then Exit; cappreviewscale(fcaphandle, True); if FDriverCaps.fHasOverlay then cappreviewrate(fcaphandle, 0); FLiveVideo:=capOverlay(FCapHandle,True); M:= Hardware ; end cappreviewrate(fcaphandle, 33); FLiveVideo:=capPreview(FCapHandle, True); M:= Software ; if FLiveVideo then M:=Format( Video Capture - Preview (%s),[m]) M:= ERROR configuring capture driver. ; stcapture.caption :=M // Allow stretching // Driver accepts overlay // Overlay framerate is auto // Driver doesn t accept overlay // Preview framerate in ms/frame Merk op dat aan de capoverlay of cappreview de waarde True wordt doorgegeven. Na het oproepen van deze functies (hetgeen gebeurt in de OnCreate van het hoofdvenster), is de camera actief, en wordt het beeld getoond in het hoofdscherm. De breconnect knop roept de 2 functies ook op, en kan gebruikt worden om alsnog de camera te activeren indien er iets is misgelopen. Om het tonen van het beeld van de camera te stoppen, worden opnieuw de capoverlay en cappreview functies gebruikt, maar i.p.v. True wordt als argument False doorgegeven. de CapDisableViewer functie roept de correcte functie op: procedure TMainForm.CapDisableViewer; if FLiveVideo then if FDriverCaps.fHasOverlay then capoverlay(fcaphandle,false) cappreview(fcaphandle,false); FLiveVideo := False; Om een filmpje op te nemen, volstaat het de capfilesetcapturefile,capcapturesequence en capfilesaveas functies op te roepen. Tijdens het opnemen is het best het tonen van het camera beeld op scherm te stoppen. Dit gebeurt met de hierboven getoonde capdisableviewer functie. Als bestandsnaam wordt een naam met het opname start tijdstip gebruikt: procedure TMainForm.CapRecord; 4
5 Const FN = "Clip-"yyyy-mm-ss-hh-nn-ss".avi" ; // Stop if not yet stopped. CapStop; CapDisableViewer; // Construct filename FFileName:=ExtractFilePath(Application.ExeName); FFileName:=FFileName+FormatDateTime(FN,Now); stcapture.caption:= Recording +FFileName; brecord.caption := S&top ; // Set filename capfilesetcapturefile(fcaphandle,pchar(ffilename)); // Start recording capcapturesequence(fcaphandle); // Save file. capfilesaveas(fcaphandle, PChar(FFileName)); FRecording := True; Stoppen van video opname gebeurt met de capcapturestop functie. Zodra de opname gestopt is, wordt aan de bestandsnaam van het filmpje het tijdstip van stoppen toegevoegd, en wordt het beeld van de camera terug op het scherm getoond: procedure TMainForm.CapStop; Const FN = "---"yyyy-mm-ss-hh-nn-ss".avi" ; RFN : String: if Not FRecording then Exit; FRecording := False; // Stop recording capcapturestop(fcaphandle); // Rename file with timestamp RFN:=ChangeFileExt(FFileName, FormatDateTime(FN,Now)); RenameFile(FFileName, RFN); // Show preview again on screen CapEnableViewer; stcapture.caption := Recording stopped ; brecord.caption := &Record ; 4 Bewegingsdetectie Met dit alles kan de camera al gebruikt worden om filmpjes te maken en op schijf op te slaan. Maar wat als de camera als bewegingssensor gebruikt moet worden? 5
6 De camera API van Video For Windows kan ook het huidige video frame als een beeldje opslaan. Door dit op gezette tijdstippen te doen, en te kijken of er tussen de opeenvolgende beeldjes een betekenisvol verschil is, kan beweging voor de camera worden waargenomen, en kan er bevoorbeeld een mailtje met het beeld van de camera verstuurd worden. Om te vermijden dat er te veel mails verstuurd worden, wordt bij beweging slechts om de minuut een beeldje vestuurd. Om dit te doen, is dus een timer nodig (TMotion). De timer is gedisabled, en met een druk op een knop kan de timer aangezet worden. In het timer event wordt het volgende gedaan: procedure TMainForm.TMotionTimer(Sender: TObject); Inc(FTicks); SaveTempFrame; if CheckDifferent then If MinutesBetween(Now,FLastSend)>1 then FLastSend:=Now; SendPicture; FTicks is een tellertje. de SaveTempFrame functie schrijft het huidige camera frame naar schijf. De CheckDifferent functie kijkt of er een vorig beeldje was, en geeft True terug als er een significant verschil is tussen het vorige en het huidige beeldje. Indien dat zo is, wordt gekeken of er genoeg tijd verstreken is en zo ja, wordt het beeldje verstuurd. De interessante functies zijn SaveTempFrame en CheckDifferent. De eerste is heel eenvoudig: Procedure TMainForm.SaveTempFrame; capgrabframenostop(fcaphandle); capfilesavedib(fcaphandle,pchar(fframefile)); FFrameFile is de bestandsnaam, die wordt berekend als het programma start. De CheckDifferent functie is de moeilijkste functie in het programma: Het moet het beeldje dat in SaveTempFrame bewaard werd, laden en vergelijken met het vorige beeldje. Dit gebeurt door de pixels van het beeldje om te zetten in grijswaarden, en pixel voor pixel te vergelijken met het vorige beeldje (als er een was, de eerste keer is er natuurlijk nog geen). De grijswaarde wordt berekend door het gemiddelde te nemen van de R,G,B waardes van de kleur. Het verschil tussen 2 opeenvolgende beeldjes kan op 2 manieren uitgedrukt worden: het aantal pixels dat verschilt kan geteld worden, of het verschil in grijswaarde tussen de pixels kan geteld worden. Gewoon het aantal verschillende pixels tellen, levert slechte resultaten: De kleuren in de beeldjes die de camera maakt, fluctueren: Als de grijswaarden van 2 opeenvolgende stil- 6
7 staande beeldjes pixel voor pixel vergeleken worden, levert dat altijd een bijna 100% verschillend beeldje: geen 2 pixels op dezelfde locatie blijven hetzelfde. Een kleine statistiek maken toont aan dat de grijswaarden van de pixels met ongeveer 5 % fluctueren voor een stilstaand beeld. Dit brengen we in rekening door 2 opeenvolgende pixels pas als verschillend te nemen als de grijswaarde meer dan 5% verschilt. Eenmaal het aantal verschillende pixels tussen 2 opeenvolgende beeldjes geteld is, moeten besloten worden of het een betekenisvol verschil is. Een beetje experimenteren leert dat als er bewegen voor de camera, ongeveer 10% verschillende pixels oplevert. De 2 parameters van het algoritme zijn dus De fluctuatie die mag optreden tussen 2 kleurwaarden voor 1 pixel. Het relatieve aantal pixels dat mag verschillen tussen 2 beeldjes. In het programma zijn er 2 spinedits, die toestaan deze waarden in te stellen (in %). Deze percentuele waarden worden in het van de CheckDifferent functie omgezet naar absolute waarden. Het algoritme t met het beeldje te laden in een tijdelijke bitmap, en alloceert dan een array voor de grijswaarden. Kleuren in FPC beeldjes zijn een record van word-sized R,G,B waardes), dus de array bevat words voor de grijswaarden. function TMainForm.CheckDifferent : boolean; Const MaxColor = Cardinal($FFFF); A : Array of Word; R,C,I,PD,DC,TH,TC : Integer; D,MD: Int64; G : Word; P : TFPColor; Result:=Length(FLastImage)<>0; FTempBMP.LoadFromFile(FFrameFile); TC:=FTempBMP.Height*FTempBMP.Width; TH:=Round(MaxColor/100*SETreshold.Value); MD:=TC*MaxColor; SetLength(A,TC); De MD is het maximaal mogelijke kleurverschil tussen 2 beeldjes (Dus $FFFF maal het aantal pixels), De waarde TH is het minimale verschil in kleur tussen 2 pixels voordat ze als verschillend beschouwd worden. FLastImage is de array van grijswaarden die voor het vorige beeldje gebruikt werd. Dan kan de loop voor het vergelijken van de pixels gestart worden. Voor elke pixel wordt een grijswaarde berekend, en terug opgeslagen in het beeldje. Tegelijkertijd wordt het verschil met de vorige grijswaarde voor de pixel berekend, en opgeteld bij het totaal. Het totaal aantal verschillende pixels wordt ook opgehoogd, indien nodig. I:=0; D:=0; dc:=0; 7
8 For R:=0 to FTempBMP.Height-1 do For C:=0 to FTempBMP.Width-1 do P:=FTempBMP.Colors[C,R]; G:=(P.blue+P.red+P.Green) div 3; P.Blue:=G; P.Red:=G; P.Green:=G; FTempBMP.Colors[C,R]:=P; A[i]:=G; if (I<Length(FLastImage)) then PD:=Abs(G-FLastImage[i]); If (PD>TH) then inc(dc); D:=D+Abs(PD); Inc(i); Als de loop afgelopen is, slaan we de array met grijswaarden op in FLastImage, en wordt het resultaat van de functie berekend. De statusbalk wordt gebruikt om wat cijfers te tonen: het aantal verschillende kleuren, en het totaal aantal verschillende pixels. Als het functieresultaat aangeeft dat het beeldje verschilt, wordt het beeldje (dat nu is omgezet in een beeldje met alleen grijswaarden) ook opgeslagen op schijf: FLastImage:=A; STCapture.Caption:=Format( Try %d - Color: %d (%f %%) Pixels: %d/%d (%f %%), [FTicks, D, D/MD*100, DC, TC, DC/TC*100]); if Result then Result:=(D/MD*100)>SETrigger.Value; if Result then FTempBMP.SaveToFile(FBWFrameFile); Al wat nu nog moet gebeuren, is het opgeslagen beeldje mailen naar een mail adres. Dit gebeurt met behulp van synapse. De werking van synapse is al in een vorige bijdrage uitvoerig uitgelegd, zodat de werking van de SendPicture functie duidelijk zou moeten zijn: procedure TMainForm.SendPicture; Mime : TMimeMess; P : TMimePart; B : Boolean; AText,AServer,ATO : String; L : TStringList; 8
9 STCapture.Caption:= Sending picture ; ATO:= [email protected] ; AServer:= mail.blaisepascal.eu ; AText:=FormatDateTime( dd/mm/yyyy hh:nn:ss,now); AText:=Format( Camera heeft beweging ontdekt om %s,[atext]); Mime:=TMimeMess.Create; try Mime.Header.ToList.Text:=ATo; Mime.Header.Subject:= Beweging ontdekt ; Mime.Header.From:=ATo; P:=Mime.AddPartMultipart( mixed,nil); L:=TstringList.Create; try L.Text:=AText; Mime.AddPartText(L,P); Mime.AddPartBinaryFromFile(FFrameFile,P); Mime.EncodeMessage; B:=SendToRaw(ATo,ATo,AServer,Mime.Lines,, ); finally L.Free; if not B then STCapture.Caption:= Failed to send picture STCapture.Caption:= Sent picture to +ATo; finally Mime.Free; 5 conclusie Het is eenvoudig om een filmpje op te nemen met behulp van een webcam en lazarus. De webcam als bewegingssensor gebruiken is ook niet moeilijk, zoals de code hierboven aantoont: het hier gepresenteerde algoritme is misschien niet het best mogelijke, maar het is eenvoudig en begrijpbaar. Het is eenvoudig aan te passen, er is ruimte voor variatie: de grijswaarde zou anders berekend kunnen worden, het verschil tussen 2 pixels kan ook anders berekend worden. slechts een deel van het beeldje zou kunnen gebruikt worden. Er zijn waarschijnlijk ook betere algoritmes denkbaar dan rechttoe-rechtaan vergelijken van 2 beeldjes: de termen Motion, Detection Algorithm ingeven in Google levert een hoop wetenschappelijke publicaties op over het onderwerp. 9
Mails zenden met Lazarus
Mails zenden met Lazarus Michaël Van Canneyt May 13, 2012 Abstract Er bestaan veschillende componenten om allerlei TCP/IP protocols af te handelen met Lazarus. E-Mail zenden (via het SMTP protocol) is
lazarus en databanken
lazarus en databanken Michaël Van Canneyt October 13, 2012 Abstract In vorige bijdrages werd een anti-inbraak systeem ontwikkeld dat een beeldje per e-mail verstuurde. In dit artikel wordt getoond hoe
Een eenvoudige webserver maken in Lazarus
Een eenvoudige webserver maken in Lazarus Michaël Van Canneyt 2 december 2011 Samenvatting Free Pascal - en dus ook Lazarus - kan meerdere TCP/IP componenten compileren: Synapse, Indy en lnet. Free Pascal
Tutorial 1, Delphi: Geldspraak
Tutorial 1, Delphi: Geldspraak Versie Datum Auteurs Opmerkingen 1 25-09-2001 Kees Hemerik (code) Gebaseerd op Delphi 5 Enterprise. Roel Vliegen (tekst) 2 17-03-2005 Kees Hemerik Aanpassingen: Delphi 7,
Handleiding Dahua recorders (WEB Service) 28-10-2012
Inloggen Open de webservice in uw internetbrowser, bijvoorbeeld: http://243.273.23.125:85/ Vul uw gebruikersnaam (User Name) en wachtwoord (Password) in. Klik op Login om in te loggen. Krijgt u geen loginscherm
GV-VMS... 3. Live beelden... 3. Content List... 4. Ontwerp... 4. Inzoomen... 5 PTZ... 5. Opgenomen beelden... 6. Content List... 6. Opzoeken...
GEOVISION VMS INHOUD GV-VMS... 3 Live beelden... 3 Content List... 4 Ontwerp... 4 Inzoomen... 5 PTZ... 5 Opgenomen beelden... 6 Content List... 6 Opzoeken... 6 Object Search... 6 Bewaren... 8 2 GV-VMS
Screencast-O-Matic HANDLEIDING
Screencast-O-Matic HANDLEIDING Inhoud 1 Inleiding 3 2 Stap voor stap 3 3 Conclusie 9 4 Meer info 10 4.1 Hulp nodig? 10 4.2 Vragen en opmerkingen 10 4.3 Trefwoordenlijst 10 4.4 Lijst met afbeeldingen 10
HANDLEIDING VOOR SNELLE INSTALLATIE
Ref. INOGRB01 HANDLEIDING VOOR SNELLE INSTALLATIE 1.INLEIDING Uw GRABBINO is een apparaat dat speciaal is ontwikkeld om uw video's te converteren naar het MPEG-formaat en daarna HDD-beelden door te sturen
Handleiding Gold- en Superstation
1 Configuratie... 3 On Site... 4 Live bekijken... 4 Uitleg scherm... 4 1. Omschrijving beeld... 5 2. Selecteren Beeldscherm... 5 3. Selecteren Camera en weergave type Opname... 5 4. Datum en Uur van de
HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS)
HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) LES 4 In deze les gaan we een eenvoudig dobbelspelletje maken: Allereerst krijgt de speler de gelegenheid zijn/haar naam in te vullen en daarna op OK te klikken
Gebruiksaanwijzing Samsung PV 210 Tablet PC. Inhoudsopgave
Gebruiksaanwijzing Samsung PV 210 Tablet PC Inhoudsopgave 1 Introductie van uw TABLET...2 2 Accu...2 4 Interface en applicaties...4 5 HDMI & Host...5 6 Taal & keyboard...6 7 Beheren van Applicaties...7
Installatie-/Gebruikershandleiding. FluoMini Chlorofyl Fluorescentie.
Installatie-/Gebruikershandleiding FluoMini Chlorofyl Fluorescentie www.sendot.nl Inhoudsopgave 1. Algemeen... 3 2. Specificaties... 4 3. Installatie... 4 4. Meten met de Fluomini Chlorofyl sensor... 5
Derde Delphi Programma verkenning
Derde Delphi Programma verkenning In deze opdracht gaan we een aantal typische componenten en gegevenstypen van Windows en Delphi verkennen. We bouwen een eenvoudige rekenmachine en ondertussen leer je
DELPHI VOOR ELEKTRONICI. Deel 2: Een rekenmachine programmeren CURSUS
DELPHI VOOR ELEKTRONICI CURSUS Deel 2: Een rekenmachine programmeren Herman Bulle met dank aan Anton Vogelaar In het vorige artikel hebben we de programmeeromgeving van Delphi geïntroduceerd en zijn er
HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren
HOOFDSTUK 3 3.1 Stapsgewijs programmeren De programmeertalen die tot nu toe genoemd zijn, zijn imperatieve of procedurele programmeertalen. is het stapsgewijs in code omschrijven wat een programma moet
Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.
Algemeen C# Variabele Een variabele is een willekeurige waarde die word opgeslagen. Een variabele heeft altijd een datetype ( De soort waarde die een variabele bevat). Datatypes Een datatype is de sort
Hanwell temperatuur / vocht logger handleiding
Hanwell temperatuur / vocht logger handleiding De Hanwell temperatuur / vochtigheid datalogger Hanwell Hanlog32USB software (W200) USB set up communicatie kabel Y055 Verschillende mogelijkheden: -starten
GEBRUIKSAANWIJZING WEBCAM
GEBRUIKSAANWIJZING WEBCAM CC-10 OVERZICHT Camera USB driver Capture software CD-rom Gebruiksaanwijzing 3 2 1 1. camera lens 2. led indicatie 3. snapshot toets (foto) 4. stelschroef camera 5. stelvoetje
Klassen & objecten, overerving, abstracte klassen, debuggen, interfaces, formulieren, polymorfie, statische methoden, event-handlers
1 Inhoud Klassen & objecten, overerving, abstracte klassen, debuggen, interfaces, formulieren, polymorfie, statische methoden, event-handlers 2 Geluidsbronnen simulator, deel 2 Inleiding De weergave versnellen
VAN 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,
PIXresizer. Deel 1 Installatie
PIXresizer Deel 1 Installatie Als je via onderstaande link geen onmiddellijke download kan doen gaan we het programma eerst opslaan in een nieuw aangemaakte map op een drive naar keuze. Ik heb hiervoor
Handleiding voor installatie en gebruik van
Handleiding voor installatie en gebruik van Opticon OPN-2001 Data Collector Inhoud pakket: - OPN-2001 - USB Communicatie kabel - Neckstrap Voordat u kunt communiceren met de OPN-2001 dient u de volgende
VAN HET PROGRAMMEREN. Inleiding. Het spiraalmodel. De programmeertaal. vervolgens de berekening van het totale bedrag, incl. BTW:
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,
BSCW-WebDAV Handleiding
BSCW-WebDAV Handleiding Strategische informatievoorziening Februari 2005 versie 2 Gebruik van deze handleiding Deze handleiding is bedoeld om medewerkers en studenten te ondersteunen bij het gebruik van
Midi PDF Bladmuziek lezer
Inleiding. Ruim 20 ordners aan bladmuziek, meeste daarvan uitgeprint van een PDF. Even snel een nummer opzoeken wil dan ook niet, terwijl ik alles wel op alfabetische volgorde heb. Dat was het niet helemaal
The Nike+ SportWatch GPS Powered by TomTom
The Nike+ SportWatch GPS Powered by TomTom Overzicht Welkom bij de Nike+ SportWatch GPS ontworpen in samenwerking met TomTom. Het horloge werkt met GPS en een Nike+ Sensor om afstand, snelheid, verstreken
Hoofdstuk 1: Inleiding
Hoofdstuk 1: Inleiding 1.1 Inhoud van de verpakking Controleer bij ontvangst van uw TVGo A03 of de volgende items werden meegeleverd met uw USB TV Super Mini-pakket. TVGo A03 Cd met stuurprogramma Afstandsbediening
SMARTPHONE APPLICATIE HANDLEIDING
SMARTPHONE APPLICATIE HANDLEIDING INHOUD GV Smartphone applicatie handleiding... 3 1 Enkele nota s:... 3 2 Windows Smartphone GV-MSView... 3 2.1 GV-MSView Live beelden instellen... 3 2.2 GV-MSView Opgenomen
Belangrijke Informatie
Belangrijke Informatie Geachte relatie, Deze Dahua NVR beschikt over de nieuwste generatie firmware. Deze firmware beschikt over vele nieuwe mogelijkheden. Veel van deze nieuwe functionaliteiten worden
Variabelen en statements in ActionScript
Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer
HANDLEIDING SIMI AKTISYS
LESKIST SPORT EN BEWEGING HANDLEIDING SIMI AKTISYS Deze handleiding hoort bij de leskist Sport en Beweging. Onderdeel van deze leskist is het softwarepakket Simi Aktisys, met de bijbehorende hardware (o.a.
Pascal uitgediept Data structuren
Pascal uitgediept Data structuren MSX Computer & Club Magazine nummer 68-juni/juli 1994 Herman Post Scanned, ocr ed and converted to PDF by HansO, 2001 In deze aflevering wordt bekeken hoe zelf een datastructuur
Testplan. Versie 1 28-10-2004
Testplan Versie 1 28-10-2004 Groep 40 Naam Stud. nr. Vakken Jarry Claessen 0508757 SE, C2 Sebastian Groeneveld 0433350 SE, C2 Mark de Haas 0481832 SE Jeroen van Steenbergen 0515103 SE, C2 1 Unittestplan
HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS)
HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) Vereiste voorkennis Voldoende kennis van het besturingssysteem (in deze handleiding wordt uitgegaan van Windows) De basisprincipes van programmeren Vereiste
WELKOM BIJ UNICODING PROCESSING. Unicoding 1. Handleiding docent LES 1 DEEL A: Vormen, coördinaten en kleuren
WELKOM BIJ UNICODING Bedankt voor het kiezen van Unicoding Coding for Kids. Unicoding is een workshop coderen voor basisscholieren van groep 8. In de cursus leren de leerlingen stap voor stap hoe ze een
Workshop XIMPEL TV Winoe Bhikharie Vrije Universiteit Amsterdam www.ximpel.net / [email protected]
Workshop XIMPEL TV Winoe Bhikharie Vrije Universiteit Amsterdam www.ximpel.net / [email protected] In deze workshop maak je kennis met XIMPEL TV en interactieve video. Bij interactieve video kun je de video
Elektronisch factureren
Elektronisch factureren Inleiding Elektronisch Factureren in RADAR is mogelijk vanaf versie 4.0. Deze module wordt niet standaard meegeleverd met de RADAR Update maar is te bestellen via de afdeling verkoop
Threads programmeren in Lazarus: een inleiding
Threads programmeren in Lazarus: een inleiding Michaël Van Canneyt April 11, 2013 Abstract De ondersteuning van Thread programmeren in Free Pascal is grondig onder handen genomen, zodat het compatibel
811.1. Gebruiksaanwijzing WTW PC-software
811.1 Gebruiksaanwijzing WTW PC-software Inhoudsopgave 1 FUNCTIONELE SPECIFICATIES........................................................................... 1 2 INSTALLATIE.............................................................................................
mymanualsolarapp - What s Your Solar Power Today?
mymanualsolarapp - Inleiding De manual versie is speciaal gemaakt voor zonnesysteem eigenaren die hun pc niet de hele dag aan willen laten staan of geen computer gekoppelde inverter systemen hebben. Door
Ladibug Document Camera Image Software Gebruikershandleiding
Ladibug Document Camera Image Software Gebruikershandleiding Inhoud 1. Introductie...2 2. Systeemvereisten...2 3. Ladibug installeren...3 4. Beginnen met de Ladibug te gebruiken...5 5. Bediening...6 5.1
Instructie: Thuiswerken / remote werken
Instructie: Thuiswerken / remote werken Om vanaf thuis te kunnen werken zijn er wat extra stappen noodzakelijk. Zo dien je bijvoorbeeld naar een bepaalde internet pagina te gaan en éénmalig op iedere pc
Video bestanden afspelen met Free Pascal en Lazarus
Video bestanden afspelen met Free Pascal en Lazarus Michaël Van Canneyt December 17, 2012 Abstract In een vorige bijdrage toonden we hoe filmpjes konden opgenomen worden met lazarus op Windows. In deze
Gebruikershandleiding. Draadloze USB video-ontvanger. Model BRD10
Gebruikershandleiding Draadloze USB video-ontvanger Model BRD10 Inleiding Gefeliciteerd met uw aankoop van de Extech BRD10 Draadloze USB video-ontvanger voor gebruik met het assortiment van Extech Boroscopen.
1. Introductie 2. Omschrijving 2 Omschrijving van de onderdelen (voorzijde) 2. 2. Algemeen 3
HANDLEIDING Digitale Harddisk Recorder DVR DigitAll CCTV Doornseweg 2a Tel.: 0183-4016346 1. Introductie 2 Omschrijving 2 Omschrijving van de onderdelen (voorzijde) 2 2. Algemeen 3 Opstarten systeem 3
User Manual. ID station and ID station pro. December 2011. Page 1 ID station User Manual
Gebruikers Handleiding ID station and ID station pro December 2011 Page 1 Introductie Dit is de gebruikershandleiding van ID station, het biometrische pasfoto system. Deze gebruikershandleiding helpt u
Gebruikershandleiding V1.0
Gebruikershandleiding V1.0 Hoofd functie omschakel knop. Schakelt tussen videocamera (Camera icoon), Time-lapse (Klok icoon) en Uitzending (Wereldbol icoon) modi. Hoofdmenu Bediening bovenaan Met de volume
Stereo Photo Maker (SPM)
Stereo Photo Maker (SPM) Een korte handleiding 1. Download Download de meest recente versie van http://stereo.jpn.org/eng/stphmkr/ en installeer het programma op de windows-compuer. 2. Eerste gebruik 2.1
API...1 Identificatie...1 Opties...2 Acties...3 Webserver...6 Heartbeat...6 Buffer groottes...8
API API...1 Identificatie...1 Opties...2 Acties...3 Webserver...6 Heartbeat...6 Buffer groottes...8 Identificatie Alle programma's communiceren met elkaar door gebruik te maken van JSON objecten. Het normale
BEGINNER JAVA Inhoudsopgave
Inhoudsopgave 6 Configuratie Hallo wereld! Praten met de gebruiker Munt opgooien Voorwaarden Lussen......6 Configuratie Met deze Sushi kaarten ga je een simpel spel maken met één van de meest populaire
HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS)
HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) LES 3 De programma s die we in Les 1 en Les 2 gezien hebben, zagen er niet erg mooi uit. In deze les gaan we er onder andere naar kijken, hoe we de programma
ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers
ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers English Instructions Windows 8 out-of-the-box supports the ICARUS Illumina (E653) e-reader. However, when users upgrade their Windows
Programmeren in Java 3
26 september 2007 Deze les korte herhaling vorige les Unified Modelling Language notatie van een class afleiding pointers abstracte classes polymorphisme dubieuze(?) constructies interfaces Meer over class
HANDLEIDING INFOGRAPHIC SOFTWARE Versie 2.3 / jan 2014
HANDLEIDING INFOGRAPHIC SOFTWARE Versie 2.3 / jan 2014 Inhoudsopgave 1. Inleiding... 3 2. Systeemvereisten... 3 3. Installeren van de software... 4 4. Programma instellingen... 5 5. Importeren van een
Cijfers 1 t/m 4,8,16 hiermee kunt u van kanaal wisselen. Gebruik deze iconen om naar een split screen terug te gaan.
Inhoudsopgave 1. Belangrijke veiligheidsinstructies... 2 2. Mee geleverde producten voor de DVR... 2 3. Uitleg bedieningspaneel... 2 4. Uitleg afstandsbediening... 3 5. Aan de slag met de DVR... 3 5.1
Gebruikershandleiding MFP kleur systemen. Aanteken vel. infotec kenniscentrum. Infotec gebruikershandleiding
Gebruikershandleiding MFP kleur systemen Aanteken vel Het Bedieningspaneel Functie paneel Functietoetsen Geeft de keuze om te wisselen tussen de functies: Kopiëren - Doc. Server Faxen - Printen - Scannen
Montesquieu Learning Centre
AV-Faciliteiten in het Montesquieu Learning Centre (MLC) Inhoud Inleiding 3 AV-meubel toegankelijkheid 3 AV-meubel faciliteiten 3 AV-meubel software 3 AV-meubel bedieningspanelen 4 Zijpanelen 4 Zijpaneel
Een unit test is geen integratie test. Niet het hele systeem, maar onderdelen van een systeem worden getest.
WAT IS EEN UNIT TEST? Een unit test is een test om de functionaliteit van stukken code te controleren. Een goede unit test waarborgt een consistente werking van een klein onderdeel (een unit ) van de broncode.
Viewlog Viewlog Interface Functiepaneel Bestanden bewaren Dmv Logboek... 5
VIEWLOG HANDLEIDING INHOUD Viewlog... 3 1. Viewlog Interface... 4 1.1 Functiepaneel... 5 2. Bestanden bewaren... 5 2.1 Dmv Logboek... 5 2.2 Dmv Exporteren als AVI of EXE... 6 2.3 Dmv Favorieten... 7 2.4
Dieper in Visual Basic.Net
Visual Basic.NET Dieper in Visual Basic.Net 7.1 Inleiding Dit hoofdstuk is bedoeld om je wat handiger te maken in het programmeren in Visual Basic. Je leert geen nieuwe programmeervaardigheden, maar je
Programmeren in Excel VBA. Karel Nijs 2010/09
Programmeren in Excel VBA Karel Nijs 2010/09 Leswijze Eerst wat theorie Begeleid met (korte) oefeningen MsExcel 2003 Online hulp: http://www.ozgrid.com/vba/ http://msdn.microsoft.com/en-us/library/sh9ywfdk(vs.80).aspx
6.2 VBA Syntax. Inleiding Visual Basic
6.2 VBA Syntax Wij gaan de Visual Basic Editor opnieuw openen, om de instructie die wij zojuist getypt hebben, nader te bekijken. Klik te tab Hulpmiddelen voor databases Klik op Maken Macro s en Code -
1. WAT STAAT ER OP DE BORD... 3 2. HET LEERBORD TESTEN... 4 3. DE PC-VERBINDING TESTEN... 6
Testprocedure Handleiding INHOUD Algemene informatie 1. WAT STAAT ER OP DE BORD... 3 2. HET LEERBORD TESTEN... 4 3. DE PC-VERBINDING TESTEN... 6 Test- en voorbeeldsoftware 1. DE TESTPROGRAMMA'S DOWNLOADEN...
RF Monitoring: Handleiding
RF Monitoring: Handleiding 1 Algemeen Deze applicatie heeft als doel het monitoren van de status van de TCP/IP poorten van de RF Service en de RF Service herstarten in bepaalde situaties. Wanneer de toepassing
QUICK START. IP cam viewer.
QUICK START IP cam viewer www.profile.eu 1 Hardware Installation Verbind de camera met de stroom via de meegeleverde adaptor Verbind de camera met uw router via de meegeleverde netwerkkabel Verbind de
Inleiding 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)
Waarden persistent (blijvend) opslaan gaat in bestanden (files). Lege tekst: eof
Programmeren Blok A Persistente opslag van waarden http://www.win.tue.nl/ wstomv/edu/2ip05/ College 4 Tom Verhoeff Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica Software Engineering
1 Snapshot-knop 2 LED-indicator 3 Objectief 4 Basis met draaibare kop
Trek 320R elementen 1 Snapshot-knop 2 LED-indicator 3 Objectief 4 Basis met draaibare kop De Trek 320R installeren 1. Installeer eerst het stuurprogramma en sluit daarna de Trek 320R aan op de USB-poort.
R10 instellen via de Web Interface
R10 instellen via de Web Interface Een beschrijving van hoe er verbinding kan worden gemaakt met de Web Interface van een R10 en een overzicht van veel voorkomende instellingen die gemaakt kunnen worden
Introductie testtooling Wink
Introductie testtooling Wink SYSQA B.V. Almere Datum : 10-04-2013 Status : 1.0 Opgesteld door : Organisatie SYSQA B.V. Pagina 2 van 16 Inhoudsopgave 1 Inleiding... 3 1.1 Opbouw... 3 2 Wink... 4 2.1 Wat
Accelerometer 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
HANDLEIDING. Terug zoeken en archiveren met de Mobotix Control Center 2.2
HANDLEIDING Terug zoeken en archiveren met de Mobotix Control Center 2.2 De event player: Selecteer een camera door het desbetreffende beeld 1 keer aan te klikken met de muis. Rondom het live beeld verschijnt
Snelstart Gids. Menustructuur. Opstarten en Afsluiten. Formatteren van Disk. 72xxHVI-ST Series DVR
Menustructuur De menustructuur van de DS-72xxHVI-ST Serie DVR is als volgt: Opstarten en Afsluiten Het juist opstarten en afsluiten is cruciaal voor de levensduur van uw DVR. Opstarten van uw DVR: 1. Plaats
VinGa handleiding. Inhoudsopgave. 1 Inleiding. Vinga 1.1 www.vingerafdrukherkenning.nl Pagina 1 van 7
VinGa handleiding Inhoudsopgave 1 Inleiding... 1 2 Mogelijkheden van VInGa... 2 2.1 Bij binnenkomst van gasten... 2 2.2 2.3 Na afloop van de avond... 2 De ledenlijst... 2 2.4 De ledenpas (niet in VinGa
Belangrijke Informatie
Belangrijke Informatie Geachte relatie, Deze Dahua NVR beschikt over de nieuwste generatie firmware. Deze firmware beschikt over vele nieuwe mogelijkheden. Veel van deze nieuwe functionaliteiten worden
Inhoud 1. Minimale systeem vereisten.. pagina 01 2. Installatie Sissel Silencium Data Analyse Software. pagina 01
Gebruiksaanwijzing Sissel Silencium Analyse Software Inhoud 1. Minimale systeem vereisten.. pagina 01 2. Installatie Sissel Silencium Data Analyse Software. pagina 01 3. Hoe Sissel Silencium analyse software
Zonder deze toestemming krijg je meldingen zoals in de volgende plaatjes wanneer je bijvoorbeeld de tekstverwerker probeert op te starten.
Inhoud Java beveiliging... 1 Beveiligingscertificaat downloaden... 3 Java beveiliging instellen... 4 Beveiligingscertifcaat installeren... 10 Applets de eerste keer opstarten... 13 Java beveiliging Enkele
Handleiding 1a WAT JE NODIG HEBT. NewsMaker 2015 voor Windows Teevers Pte Ltd. Joy of Progress BV
Handleiding 1a WAT JE NODIG HEBT NewsMaker 2015 voor Windows www.newsmaker.tv 2016 Teevers Pte Ltd. Joy of Progress BV Wat je nodig hebt om NewsMaker te kunnen gebruiken Computer Desktop of laptop met
Elbo Technology BV Versie 1.1 Juni 2012. Gebruikershandleiding PassanSoft
Versie 1.1 Juni 2012 Gebruikershandleiding PassanSoft Versie 1.1 Juni 2012 2 Inhoud: Opstart scherm PassanSoft... 1 Het hoofdmenu van PassanSoft wordt geopend... 4 Verklaring extra knoppen weergegeven
Installatie app. voor Android en IOS
Installatie app voor Android en IOS Installatie van de gdmss Lite / idmss Lite app Android: Ga naar Google Play Zoek naar gdmss. Kies dan voor gdmss Lite, deze is gratis en biedt genoeg functies voor de
Zelftest Inleiding Programmeren
Zelftest Inleiding Programmeren Document: n0824test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST INLEIDING PROGRAMMEREN Deze
Externe pagina s integreren in InSite en OutSite
Externe pagina s integreren in InSite en OutSite Document-versie: 1.1 Datum: 04-10-2013 2013 AFAS Software Leusden Niets uit deze uitgave mag verveelvoudigd worden en/of openbaar gemaakt worden door middel
Gebruikershandleiding. DVB-T/A TV Tuner Stick
Gebruikershandleiding DVB-T/A TV Tuner Stick De gesprekskosten bedragen 0,18 /minuut. 2 INHOUD 1. Beginnen... 4 1.1 Inleiding... 4 1.2 Eigenschappen... 4 1.3 Inhoud van de Verpakking... 4 1.4 Systeemvereisten...
Beknopte handleiding SQ Vieuw software
Beknopte handleiding SQ Vieuw software Het startscherm met de verschillende opties: - Logger Set-up : het programmeren van de datalogger naar een gewenste configuratie - Download Data: het halen van data
Installatie Handleiding. Twan Wintjes
Installatie Handleiding voor AVCHDCoder Twan Wintjes 1 Hoofdstuk 1: Installatie... 3 1.1: Installeer AVCHDCoder... 3 1.2: Installeer ffdshow, Avisynth en Haali Media Splitter... 3 1.3: Ffdshow configureren...
Online c++ leren programmeren:
Online c++ leren programmeren: Inhoud 1)Waar vind ik een c++ compiler?... 2 2)Hoe start ik een programma in c++?... 2 3)Een eerste c++ programma:... 3 Een eerste programma schrijven:... 3 Mijn eerste programma
Introductieles Videometen met Coachthuis
Introductieles Videometen met Coachthuis Inleiding Neem zelf een film op en verricht hieraan metingen. Stapsgewijs leer je hoe dit moet en wat er voor nodig is. Deze handleiding is als volgt opgebouwd:
DB9714. Installatie gids. www.fasttel.be Db9714 versie 2.2.3 Pagina 1 of 9
DB9714 Installatie gids Db9714 versie 2.2.3 Pagina 1 of 9 INLEIDING We stellen het zeer op prijs dat u hebt gekozen voor het systeem van video over PC. Er is voldoende aandacht besteed aan de erg eenvoudige
Handleiding. Opslag Online voor Windows Phone 8. Versie augustus 2014
Handleiding Opslag Online voor Windows Phone 8 Versie augustus 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Downloaden van KPN Opslag Online QR Code 4 2.2 Downloaden van KPN
Inleiding Visual Basic en VBA. Karel Nijs 2009/01
Inleiding Visual Basic en VBA Karel Nijs 2009/01 Leswijze Eerst wat theorie Begeleid met (korte) oefeningen Ms Excel 2003 Online hulp: http://www.ozgrid.com/vba/ http://msdn.microsoft.com/en-us/library/sh9ywfdk(vs.80).aspx
Huawei E220 Update Gids voor Vista
Huawei E220 Update Gids voor Vista 3 september 2007 Huawei E220 upgrade voor Vista Page 1 of 21 INHOUD 1 Introductie... 3 2 Installatie gids... Error! Bookmark not defined. Stap 1: Installeer de Vista
EMXXXX Product Title from CMS EW1228 Webcamera 2.0 megapixel met microfoon
EMXXXX Product Title from CMS EW1228 Webcamera 2.0 megapixel met microfoon 2 NEDERLANDS EW1228 Webcamera 2.0 megapixel met microfoon Inhoudsopgave 1.0 Introductie... 2 1.1 Functies en kenmerken... 2 1.2
Een eerste applicatie
Een eerste applicatie 2.1 Inleiding Programmeren in Visual Basic.NET doe je niet alleen door regels met code te schrijven. Je begint met het ontwerpen van een venster in de design mode met allerlei controls,
Inloggen. Het menu. Handleiding FaceTalk voor arts/behandelaar Windows PC en Mac
Deze handleiding is geschreven voor artsen en behandelaren die aan de slag gaan met FaceTalk voor het plannen van consulten met patiënten of voor het plannen van intercollegiaal overleg. Mocht u na het
Gebruikershandleiding NUUO Software
Gebruikershandleiding NUUO Software Handleiding voor het gebruik van de software wat geleverd wordt bij uw NUUO netwerkrecorder In deze handleiding wordt er vanuit gegaan dat uw installateur het programma
