De bedoeling is om met behulp van de Raspberry Pi (model B), de camera, 4 duo leds, en 5 lichtsensoren een parkeercontrole te maken waarbij er gemeten wordt of er een wagen de parking op rijdt. We laten dan ook zien of er nog parking is of deze vol staat. De bedoeling is dan om een slagboom (met behulp van een stappenmotor) omhoog te laten gaan. In de parking branden er rode leds aan elke parkeerplaats waar al een auto staat en groene leds waar de parkeerplaats nog vrij is. Of die parkeerplaatsen vrij zijn, controleren we met behulp van de lichtsensoren. We gaan ook en app maken waar we grafisch kunnen zien waar er nog plaats is in de garage, en waar we ook de fotos kunnen zien. De leds komen op een boog over de drie parkeerplaatsen. Er is ook een app waar de fotos van de camera naar worden gestuurd en waar we de huidige situatie van de parkeergarage kunnen zien.
1.2 Site We hebben met behulp van www.weebly.com een site gemaakt voor onze GIP waar ons dossier opstaat , ons logboek en een korte uitleg van onze GIP. Link naar de site : http://parkeercontrole.weebly.com/
Via het programma fritzing hebben we onze onderdelen van de GIP geschematiseerd. Ook de aansluitingen zijn hier gevisualiseerd. We hebben 4 grote blokken, namelijk de raspberry pi, de stappen motor via de ULN2803, de opstelling van de leds en de spanningsdeling.
GIP via fritzing GIP Parkeercontrole 4
2.Blokschema
Dit het blokschema van onze GIP. Het grootste deel van onze GIP is de rapsberry pi met de piface want vanuit de rapsberry pi sturen we alle signalen en ontvangen we ook al de signalen. Hier aan is ook een camera aangestuurd die we aansturen en ook fotos van ontvangen. De drie andere delen zijn de stappen motor en de ULN2803, de LEDS en de LDR. Deze blokken gaan we verder uitleggen.
Blokschema GIP Parkeercontrole 5
2.1 Raspberry pi model b
Voor onze GIP gebruiken we de raspberry pi model B. Hiervan gebruiken we de HDMI kabel om een scherm op aan te sluiten. We gebruiken ook de SD card ingang om ons besturingssysteem (Raspbian) te gebruiken. De 2 usb ingangen gebruiken we om de muis en het toetsenbord aan te sluiten. De micro usb sluiten we aan op onze oplader van 5V.
2.2 Piface
Als beveiliging hebben we op onze raspberry pi het uitbreidingsbordje piface geplaatst. We gebruiken de outputs om de stappenmotor aan te sturen. We gebruiken de inputs om de LDR sensoren in te lezen. De piface kan tot 20V aan als input.
2.3 Camera
We gaan een camera gebruiken aan de ingang van onze garage, deze neemt een foto zodra een auto binnenrijdt. In onze code zetten we hier dan datum en uur bij zodat we kunnen zien welke auto wanneer is binnengereden. De camera hoort bij de raspberry pi en kan makkelijk aangesloten worden aan het bordje. GIP Parkeercontrole 6
2.4 Stappenmotor
We gaan een stappenmotor gebruiken die als slagboom zal werken. We gebruiken het type Y129. Deze heeft een draaihoek van 1.8 en werkt normaal op 12V, maar wij gaan deze aan sturen op 5V omdat deze hierbij ook vlot draait en dan ook minder warm wordt. Deze gaan we 14 stappen moeten laten zetten om een kwartdraai te hebben. We gaan 4 pinnen moeten aansturen met de juiste sequentie willen we dit vlot laten verlopen. Via een microswitch gaan we meten of de stappenmotor terug op zijn juiste plaats is. Door dat er iemand zou kunnen tegen duwen of dat er slip zou zijn.
2.4.2 Schema
Onze stappenmotor heeft 4 draden die we aansturen , bruin = A , rood = A\ , oranje = B en geel = B\. De witte en de zwarte draad leggen we aan de ground.
2.4.3 Sequentie Dit is de volgorde waarin we de 4 draden van de stappenmotor aansluiten. Deze sequentie hebben we nodig om de motor vlot te laten draaien. Dit is wijzer zin. Step A B A\ B\ 0 1 1 0 0 1 0 1 1 0 2 0 0 1 1 3 1 0 0 1
Dit is het schema van de spanningsdeling die wij gaan gebruiken voor de LDR sensoren in te lezen. We leggen +5V aan en deze wordt dan gedeeld door deze spanningsdeling.
De LDR gaat zijn weerstandswaarde aan passen aan hoeveel lux (lichtsterkte) er is. De weerstandswaarde van een LDR wordt kleiner, naarmate de LDR sterker wordt belicht. Als het licht is heeft de LDR een weerstand van 35 k en als het donker is 1M. Deze zal dus ook de spanningswaarde laten variren die we doorsturen naar de raspberry pi. We hebben hier over de eerste LDR een condensator geplaatst, dit is de eerste LDR aan de ingang. Deze zorgt ervoor dat als er iets snel over de LDR gaat bv. Een vogel de raspberry pi dit niet als signaal 0 zal omzetten.
Schema spanningsdeling via fritzing GIP Parkeercontrole 8
Grafiek schmitt trigger De blauwe draden sturen we aan op de raspberry pi. De raspberry pi zet waarden lager als 1V om als 1 en waarden hoger als 1.9V om als een 0. Dit hebben we gemeten door een spanningsgenerator aan te sluiten op onze raspberry pi en zo de signalen te controleren. Deze heeft dus aan de inputs ingebouwde schmitt triggers. Als de auto weg is krijgen we 1V en als de auto er is krijgen we 2.5V dit is dus goed genoeg om een duidelijk verschil te hebben tussen 0 en 1.
GIP Parkeercontrole 9
2.8 Opstelling leds
Dit is de opstelling die we gebruiken om de leds te laten branden. Omdat we op onze PiFace weinig outputs hebben gaan we deze opstelling gebruiken. We hebben hier maar drie outputs voor nodig als we dit maken met behulp van de SN7406.
2.8.1 SN7406N
De SN7406N bestaat uit 6 transistors die werken als NOT poorten. De inputs 1,3,5 zitten aangesloten op de outputs van de Piface die we aansturen als er een auto op een parkeerplaats staat. Aan deze drie pinnen hangen we ook de groene leds met een weerstand van 470 . Aan de even pinnen hangen we de drie rode leds met ook bij alle drie een weerstand voor van 470 .
2.8.2 Werking transistor
En transistor is een component met drie aansluitingen, de base, de collector en de emitter. Emitter: heeft veel vrije elektronen, doel: vrije elektronen injecteren in de basis. Basis: meeste elektronen passeren hier rechtdoor, gezien het laagje zeer dun is en er maar weinig gaten zijn. Collector: collecteert de elektronen van de Basis. Wanneer Vbe (spanning basis-emitter) > 0,7V zal: 95% van de elektronen uit de emitter, de basis overleven en terechtkomen in de collector. 5% gaat naar de basis.
GIP Parkeercontrole 10
2.8.3 Schema
GIP Parkeercontrole 11
2.9 ULN2803
Om de draden van de motor aan te sturen gebruiken we een ULN2803. De uitgansspanning is beperkt tot 50V en de uitgangsstroom is beperkt 50Ma. Deze is opgebouwd uit 8 NPN darlington transistors waarvan we er 4 gebruiken voor de draden van de motor. Aan elke uitgang is er ook een vrijloopdiode geplaatst. Deze staan er om plotse spanningswisselingen op te vangen en om spanning in de tegenstelde richting tegen te gaan, want dan gaat deze sperren. Dit staat er dus vooral als beveiliging.
Hier op de tekening zien we dat de stappenmotor zit aangesloten op de ULN2803 de blauwe draden die uit de raspberry pi gaan naar de ULN2803 bepalen welke van de 4 draden gestuurd zullen worden. Door de juiste combinaties (sequentie) te sturen zal deze stappen motor volt draaien.
2.9.1 Werking ULN met transistors
Een ULN zal of spanning doorlaten of tegenhouden. We sturen deze aan op de base, als we genoeg aansturen (5V)
ULN2803 met aansluitingen GIP Parkeercontrole 12
2.10 Werking relais
Een relais is een door een elektromagneet bediende schakelaar. Door een elektrische spanning te zetten op S1 en S2 (de aansluitingen van de spoel) gaat er door de spoel een stroom lopen. De kern (lichtblauw) wordt gemagnetiseerd en het anker (donkerblauw) wordt hierdoor aangetrokken. Het anker is een moedercontact van de common (gemeenschappelijk). In rusttoestand is het NC (=normal closed) en in bekrachtigde toestand is dit NO (=normal open).
GIP Parkeercontrole 13
3 Flowchart stappenmotor
GIP Parkeercontrole 14
4.Bespreking code stappenmotor
# Hier gaan we onze librarys oproepen in ons programma. We importeren sleep om zo het programma voor een bepaalde tijd te laten pauzeren. Dan voeren we de digitale pinnen van de raspberry pi in. En als laatste gaan we ook de camera invoegen ins ons programma.
from time import sleep import pifacedigitalio import picamera # We hernoemen de pinnen en de camera voor later in het programma
pfd = pifacedigitalio.PiFaceDigital() camera = picamera.PiCamera()
5. Logboek 25/09/2013 Overleg voorstel GIP 27/09/2013 Overleg voorstel GIP met vakleerkrachten 01/10/2013 Opdracht GIP verder bespreken (definitief) 03/10/2013 Opmaken bestek GIP 12/10/2013 Opzoeken andere raspberry pi projecten 12/10/2013 Opzoeken werking PIR sensor 16/10/2013 Opzoeken raspberry pi camera (werking) 02/11/2013 Bestellen raspberry pi & camera (KIWI elektronics) 05/11/2013 Keuze opdracht stappenmotor + onderzoek werking stappenmotor 08/11/2013 Onderzoek GPIO headers van raspberry pi (Robbe, Jonas was ziek) 12/11/2013 Onderzoek werking stappenmotor + solderen van externe headers 15/11/2013 Aansluitingen raspberry pi onderzoeken voor sensoren en naar de PC 21/11/2013 Configuratie raspberry pi & camera met de computer (werkt!) 22/11/2013 Benodigd materiaal klaarleggen aan ons bureau (scherm, muis, toetsenbord, kabels ) 22/11/2013 Aanmaken website 25/11/2013 Verder ontwikkellen website 26/11/2013 Stappenmotor aansluiten op breadboard 29/11/2013 Onderzoek LDR en meting 27/12/2013 Bespreking uitvoering (materialen) 03/01/2014 Besturingssysteem downloaden en op SD kaart zetten 06/01/2014 Code stappenmotor schrijven 10/01/2014 Project visualiseren in smartdraw 13/01/2014 Stappen motor aansluiten op rapberry en code testen 17/01/2014 Onderzoek naar de ULN 2803 24/01/2014 Stappenmotor aansluiten aan de ULN 2803 op het breadboard 29/01/2014 Spanningsdeling uit testen met LDR op breadboard 03/02/2014 Code verder afwerken met ingang controle (LDR input inlezen) 04/02/2014 Geheel uit testen en code verder afwerken 06/02/2014 Materialen kiezen voor opstelling+ solderen van de print 11/02/2014 Verder solderen van de print 14/02/2014 Onderzoek naar relais op de piface 17/02/2014 Verslag van de LDR en de spanningsdeling + solderen print 20/02/2014 LDR aansluiten op de print + code voor de camera bijzetten 21/02/2014 Opstelling meten door een probleem op de print + oplossing 24/02/2014 Behuizing raspberry maken + opstelling in tina tekenen 05/03/2014 Solderen printplaat (draden stappenmotor ,ULN2803, LDR en weerstanden) (Jonas,Robbe kon niet) 11/03/2014 Berekenen spanning waarden 12/03/2014 Opstelling schema voor leds 13/03/2014 Aansluiten leds op breadboard 17/03/2014 Proberen enkele led aan te sluiten ipv duo led + aan dossier werken 18/03/2014 Dossier gip bijwerken + leds aansluiten 19/03/2014 Alle LDRs aansluiten op print en op bord + uittesten 21/03/2014 Project maken in fritzing 24/03/2014 Werken aan dossier 25/03/2014 Opstelling leds uitproberen 26/03/2014 Leds aansluiten met SN7406 GIP Parkeercontrole 17
27/03/2014 Dossier werken + ledjes aansluiten met SN7406 op breadboard 28/03/2014 Ledjes solderen op print + flowchart code 01/04/2014 Microswitch onderzoeken 25/04/2014 Voorstelling GIP aan 5des + microswitch aansluiten + solderen 29/04/2014 Code slagboom optimaliseren 07/05/2014 Microswitch afwerken + functies bijvoegen in code + ontwerp printplaat 08/05/2014 Site bijwerken + afwerken ontwerp printplaat 09/05/2014 Bijwerken dossier