Inhoudsopgave:
- Benodigdheden
- Stap 1: Stel uw Google-account in
- Stap 2: De Raspberry Pi instellen
- Stap 3: Bouw de doos
- Stap 4: Bedrading van de lichtbron naar de RaspberryPi
- Stap 5: schiet time-lapses
Video: Time-Lapse-box: 5 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Deze tutorial laat zien hoe je een Raspberry Pi-setup bouwt om time-lapses te maken!
De opstelling bestaat uit een doos met daarin een lichtbron en een camera (PiCamera) die wordt bestuurd door een Raspberry Pi om foto's te maken en deze te uploaden naar Google Drive.
Ik pas mijn lichtbak toe om de groei van bacteriekolonies op het oppervlak van petrischalen te time-lapsen. Deze opstelling kan echter eenvoudig worden aangepast om te time-lapsen of alles wat u maar wilt visueel in de gaten te houden!
Ik zal je door alle stappen leiden die ik heb gevolgd om mijn systeem te laten werken:
Stap 1: U bereidt uw Google-account voor zodat uw Raspberry Pi autonoom foto's naar Google Drive kan verzenden
Stap 2: U stelt uw Raspberry Pi in om de lichtbron en de camera te bedienen en om toegang te krijgen tot uw GoogleDrive
Stap 3: Je gaat de doos bouwen en de Picamera monteren
Stap 4: Je bedraden de GPIO van de Raspberry Pi en de lichtbron via een relais
Stap 5: Begin met fotograferen!
Merk op dat de volgorde van de secties van deze tutorial er niet toe doet. Je kunt ze in elke gewenste volgorde volgen!
Laten we STAAAAAARTED worden
Benodigdheden
1) 1 Raspberry Pi (Hier Versie Pi 3 Model B+) + 1 Picamera (Hier Module V2) + 1SD-kaart (tussen 8 en 32Gb)
2) 2 5V voedingen, toetsenbord, muis, scherm en WIFI voor het werken met je Raspberry Pi
3) Een 5V-relais en een heleboel elektrische draden.
3) Een lichtbron (hier gebruik ik een lichtpad Gaomon GB4 om de petrischalen van onderaf te verlichten!)
4) Een grote kist (of houten planken om het te bouwen)
7) Algemeen gereedschap (tangen, schroevendraaier, tape, soldeerbout, boren) + 3 gedeeltelijk schroefdraad (2,2 tot 2,5 mm diameter)
Stap 1: Stel uw Google-account in
Inleiding tot deze stap
De foto's die met de Raspberry Pi zijn gemaakt, slaan we op in Google Drive. Naast het vermijden van het vullen van het geheugen van je Pi, kun je hiermee je time-lapse overal ter wereld controleren!
Google heeft een Python-pakket uitgebracht met de naam PyDrive waarmee je bestanden kunt uploaden en downloaden met … Python!
Google biedt voldoende documentatie om te begrijpen hoe u met PyDrive moet omgaan. Ik vond de tutorial van Annis ook erg nuttig. Als je echter een bioloog bent zoals ik, kan al dit programmeerjargon (API, scopes, flow, token …) een beetje overweldigend zijn. Dus hier is het verhaal zoals ik het begrijp:
U maakt een project aan op uw Google-account en schakelt de programmeeroptie voor dit project in. Google geeft je een naam en een toegangscode die je python-script gebruikt om verbinding te maken met je Google-account. Wanneer Python voor de eerste keer verbinding maakt, gebruikt Python een autorisatie "flow" waarbij het Google vertelt tot welke service het toegang wil hebben (de lijst met services waar Python toegang toe wil hebben, wordt de "scope" genoemd). Wanneer Google een stroomverzoek van python ontvangt, zal het uw autorisatie vragen. Zodra u handmatig accepteert, ontvangt Python inloggegevens en een token om in de toekomst zonder uw toestemming verbinding te maken met Google.
1) Ga naar Google Cloud Platform en klik op Selecteer een project op het blauwe lint. Klik op Nieuw project rechtsboven in het pop-upvenster. Geef uw project een naam en klik op Maken. Dit brengt u terug naar de welkomstpagina. Klik nogmaals op Selecteer een project op het blauwe lint. Klik nu op het nieuwe project dat u zojuist hebt gemaakt.
2) Klik op het Burger menu links bovenaan je scherm. Selecteer in de linkerkolom van het scherm API & Services >> Dashboard. Selecteer vervolgens net onder het blauwe lint + ENABLE APIS and SERVICES. Zoek vervolgens naar Drive in de zoekbalk en selecteer Google Drive. Klik vervolgens op de knop Inschakelen.
3)Ga terug naar het Burger-menu>> API & Services en selecteer deze keer Referenties. Ga op de volgende pagina naar het OAuth-toestemmingsscherm en geef uw toepassing een naam en sla op. Klik nu op de blauwe knop 'Create Credentials' en selecteer de optie OAuth Client ID. Vink nu de optie Overig aan en Aanmaken.
4) Nu kunt u een bestand downloaden met de naam client_secret.json. In dit bestand worden uw inloggegevens en token opgeslagen. Het wordt gebruikt door je python-script op je Raspberry Pi om te communiceren met je Google-account. Sla het nu op een flashdrive op als 'credentials.json', je zal het naar je Raspberry Pi overbrengen zodra het is ingesteld.
Stap 2: De Raspberry Pi instellen
Inleiding tot deze stap:
Hier installeert u de pakketten en het python-script om uw Raspberry Pi te laten werken. Het python-script lapr.py is het brein dat ons time-lapse-apparaat bestuurt. Het heeft drie hoofdfuncties:
1) Het gaat over de Google Drive. Zoals uitgelegd in sectie 1, als je meer wilt weten over dit onderdeel kijk dan hier, hier en hier). 2) Het activeert de GPIOs om de lichtbron in te schakelen. 3) Het activeert de PiCamera om foto's te maken.
Als je wilt begrijpen hoe het script werkt, heb ik elke stap uitgebreid becommentarieerd en de links toegevoegd naar de online tutorials die ik heb gebruikt om het te schrijven.
Goed, laten we beginnen:
1) Bereid je SD-kaart voor
Formatteer uw SD-kaart om FAT te formatteren. Download NOOBS van de Raspberry Pi-website. Kopieer en plak alle bestanden uit uw vers gedownloade map rechtstreeks op uw SD-kaart. Als je vastzit, kun je hier gedetailleerde instructies vinden.
2) Start je Raspberry Pi op
Plaats gewoon je SD-kaart in je Pi, zet hem aan en volg de opstartinstructies.
3) Zorg ervoor dat je Raspberry Pi op de juiste tijd is ingesteld:
>in het opdrachtvenster voer je het volgende commando in:
sudo date -s "ma 30 aug 15:27:30 UTC 2019"
4) Zorg ervoor dat u python 3. gebruikt
>in het opdrachtvenster voer je het volgende commando in:
python -versie
> als de python-versie niet 3 is, bewerk dan het.bashrc-bestand door de volgende opdracht in te voeren:
sudo nano ~/.bashrc
Scroll naar beneden aan het einde van het document en voeg de volgende regel toe aan het einde van het bestand:
alias python=‘usr/bin/python3.5’
opslaan en opnieuw opstarten
5) Installeer de benodigde pakketten:
>Voer in het opdrachtvenster de volgende opdrachten in:
pip installeer pydrive
sudo apt-get install libatlas-base-dev
pip installeer google-auth-oauthlib
python -m pip install -U matplotlib
python -m pip install -U
sudo apt-get install python-gi-cairo
6) Schakel PiCamera in:
> typ in de Terminal: sudo raspi-config
>Klik op 5 Interfacing-optie en vervolgens op P1 Camera, schakel vervolgens de camera-interface in en start opnieuw op
7) Sla het Python Script lapr.py en het bestand credentials.json op je Raspberry Pi op:
Download het python-script lapser.py in deze Instructable.lapser.py is het script dat wordt uitgevoerd om de time-lapse te maken. Ik heb het samengesteld door enkele stukjes code te kopiëren die online zijn gevonden (ik geef de adressen van de webpagina's die in het script worden gebruikt). referenties.json is het bestand dat je in de laatste stap van sectie 1 hebt gekregen, sla het op met lapser.py in de map Documenten van je Raspberry Pi.
8)Stel de authenticatiestroom in met uw Google Drive:
lapser.py bevat alle instructies om de eerste authenticatiestroom met uw Google-account tot stand te brengen met de applicatie die u in sectie 1 hebt gemaakt. Het verzendt de inloggegevens die zijn opgeslagen in credentials.json naar Google en opent uw webbrowser zodat u handmatig kunt inloggen in op uw Google-account en geef toestemming aan uw app om toegang te krijgen tot uw Google Drive. Zodra dit is gebeurd, geeft Google ons een token dat Lapser.py in uw documenten opslaat als een bestand met de naam token.pickles dat in de toekomst zal worden gebruikt om verbindingen tot stand te brengen zonder uw invoer.
Voer lapser.py uit, typ in de Terminal:
> cd-documenten
en dan:
> python lapser.py
Log in op uw Google-account en geef uw applicatie toegang tot Google Drive.
Controleer na deze stap of uw Raspberry Pi foto's maakt en deze op uw schijf opslaat.
9) Zorg ervoor dat je Raspberry Pi lapser.py uitvoert bij het opstarten zonder enige gebruikersinvoer:
Om je Raspberry Pi tijdens het opstarten lapser.py te laten uitvoeren, vertellen we hem om de terminal te openen tijdens het opstarten en om lapser.py uit te voeren wanneer de terminal wordt geopend:
Om de Pi te vertellen om de terminal te openen bij het opstarten, passen we het bestand autostart aan. Typ in het opdrachtvenster:
>sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
Typ vervolgens @lxterminal direct boven de regel '@xscreensaver'. Opslaan en sluiten door ctrl+x te typen en vervolgens y en dan enter.
Om lapr.py uit te voeren wanneer de terminal wordt geopend, bewerken we het.bashrc-bestand. Typ in het opdrachtvenster:
> sudo nano /home/pi/.bashrc
Scroll naar het einde van het bestand en typ:
echo Uitvoeren bij opstarten
sudo python /home/pi/Documents/lapser.py
Opslaan en sluiten door te typen: ctrl+x dan y en dan enter.
10) Verplaats enkele pakketten:
Nu zal lapr.py bij het opstarten worden uitgevoerd. De pakketten die het nodig heeft, worden nu echter opgeslagen op een plaats waar het geen toegang toe heeft (/home/pi/.local/lib/python3.5/site-packages). We moeten daarom die pakketten verplaatsen naar de locatie waartoe ze toegang hebben (/usr/lib/python3.5/dist-packages). Om die pakketten te verplaatsen, typt u de volgende opdracht in uw Raspberry Pi-terminal:
>sudo cp -a /home/pi/.local/lib/python3.5/site-packages/. /usr/lib/python3.5/dist-packages/
U kunt controleren of die pakketten zijn verplaatst door met bestandsbeheer naar die locatie te gaan. U moet met de rechtermuisknop klikken en Verborgen weergeven selecteren om.local in bestandsbeheer te laten verschijnen.
Dit is het einde van deze rubriek! De volgende secties zullen een beetje geslepener zijn: we zullen de doos bouwen en de Raspberry Pi aansluiten om onze time-lapses te maken!
Stap 3: Bouw de doos
Inleiding tot deze stap:
De beste time-lapses worden gemaakt in een omgeving met constant licht waar niets beweegt behalve het ding dat je aan het filmen bent. Je kunt elke ruimte gebruiken waar de verlichting niet te veel verandert, zoals een grote kaartendoos, een kast, een opslagruimte, zolang je opstelling niet gestoord wordt tijdens de opname.
Met een lasersnijder kunt u een nette doos bouwen met perfecte afmetingen voor uw opstelling. Je hebt echter niet zoiets speciaals nodig om geweldige time-lapses te maken. Je kunt ook elke ruimte gebruiken waar de verlichting niet te veel verandert, zoals een grote kaartendoos, een kast, een opslagruimte …
1) Ontwerp je doos.
Ik heb een lasersnijder (Trotec Speedy 360) gebruikt om een doos te bouwen (in 6 mm MDF-hout) die niet alleen de juiste afmetingen heeft, maar ook een geweldig ontwerp heeft.
Houd er rekening mee dat je box hoog genoeg moet zijn zodat de camera je hele scène kan vastleggen. Gebruik het horizontale en verticale gezichtsveld van de picamera om in te schatten hoe hoog uw camera moet zijn om vast te leggen wat u aan het filmen bent.
Ik gebruikte Make a Box met de volgende afmetingen (Breedte: 303 mm, Lengte: 453 mm, Diepte (= Hoogte): 350 mm, Plankbreedte: 6 mm) om de blauwdrukken te krijgen. Ik heb een paar gaten voor de Picamera en de draden toegevoegd en ook enkele coole trippy-tekeningen gegraveerd die op Freepik te vinden zijn.
2) Stel je doos samen
3) Monteer de Picamera
Het hebben van een stabiele camera die tijdens het fotograferen niet beweegt, is erg belangrijk om een goed uitziende time-lapse te krijgen. Na het proberen van tape, 3D-geprinte PiCamera-hoesjes en andere, bedacht ik een leuke truc om zowel de oriëntatie van de camera in te stellen als deze stevig op de doos te houden. Ik gebruik 3 schroeven die alleen aan hun uiteinden zijn voorzien van schroefdraad. Het deel zonder schroefdraad is het deel dat door de houtdiepte gaat, terwijl de punt met schroefdraad in het picamera-gat gaat. Wanneer u de schroef draait, zal de punt met schroefdraad de PiCamera-hoek dichter bij of weg van het oppervlak van de doos verplaatsen. Hiermee kunt u de hoek van uw camera nauwkeurig en stevig instellen om uw scène vast te leggen.
Houd er rekening mee dat dit het meest sluwe deel van deze Instructable is, omdat de plaatsing en hoek van de gaten precies moeten overeenkomen met die op de Picamera. Het is waarschijnlijk het beste dat u eerst op een reserve stuk hout oefent voordat u gaatjes in uw mooie doos gaat prikken!
Stap 4: Bedrading van de lichtbron naar de RaspberryPi
Inleiding tot deze stap:
Dit gedeelte zorgt voor de bedrading van uw lichtbron, uw 5V-relais en de Raspberry Pi via de GPIO.
Belangrijk: ik weet niet veel van het werken met elektriciteit en hoge spanningen (ik ben tenslotte maar een bioloog). Ik kan de veiligheid van deze tutorial en van de uiteindelijke set-up niet garanderen. Wees bijzonder voorzichtig met brandgevaar en bij het werken met hoogspanning!
Je kunt hier kijken om meer te lezen over hoe een 5V-relais werkt en hier voor een volledige tutorial over het besturen van de GPIO van de RaspberryPi.
Het is je misschien opgevallen dat ik geen weerstand heb opgenomen in het circuit dat het lichtpad van stroom voorziet. Dit komt omdat het vermoeden bestaat dat de LED-string erin ze al heeft.
Afgezien daarvan staat het allemaal op de video!
Stap 5: schiet time-lapses
En je bent klaar!
Veel plezier en deel je kunst in de reacties!
Aanbevolen:
Een real-time klokmodule gebruiken (DS3231): 5 stappen
Hoe een real-time klokmodule (DS3231) te gebruiken: De DS3231 is een goedkope, extreem nauwkeurige I2C real-time klok (RTC) met een geïntegreerde temperatuurgecompenseerde kristaloscillator (TCXO) en kristal. Het apparaat heeft een batterij-ingang en houdt de tijd nauwkeurig bij wanneer de hoofdstroom naar
RADAR Lidar-systeem VL53L0X Laser Time-of-Flight: 9 stappen
RADAR Lidar-systeem VL53L0X Laser Time-of-Flight: In deze tutorial leren we hoe u een RADAR Lidar-systeem maakt met behulp van de VL53L0X Laser Time-of-Flight-sensor.Bekijk de video
Time uw werknemer met behulp van SLabs-32: 6 stappen
Tijd voor uw werknemer met behulp van SLabs-32: in deze instructable gaan we een op nfc gebaseerd slim in / uit-beheersysteem voor werknemers maken dat de werkuren van uw werknemers bijhoudt. We krijgen de huidige tijdinformatie met behulp van het NTP (Network Time Protocol) ) met de Wi-Fi-module (Esp826
De DS3231 RTC (Real Time Clock) nauwkeurig, snel en geautomatiseerd instellen met Java (+-1s): 3 stappen
De DS3231 RTC (Real Time Clock) nauwkeurig, snel en geautomatiseerd instellen met Java (+-1s): Deze Instructable laat u zien hoe u de tijd op een DS3231 Real Time Clock kunt instellen met behulp van een Arduino en een kleine Java-toepassing die gebruik maakt van de seriële verbinding van de Arduino.De basislogica van dit programma:1. De Arduino stuurt een serieel verzoek
DS1307 en DS3231 real-time klokmodules gebruiken met Arduino: 3 stappen
DS1307 en DS3231 real-time klokmodules gebruiken met Arduino: We krijgen steeds verzoeken over het gebruik van DS1307 en DS3231 realtime klokmodules met Arduino van verschillende bronnen - dus dit is de eerste van een tweedelige tutorial over hoe ze te gebruiken. Voor deze Arduino-tutorial hebben we twee realtime klokmodules voor ons