Inhoudsopgave:

Food Cam: 18 stappen (met afbeeldingen)
Food Cam: 18 stappen (met afbeeldingen)

Video: Food Cam: 18 stappen (met afbeeldingen)

Video: Food Cam: 18 stappen (met afbeeldingen)
Video: Als Dit Niet Was Gefilmd Zou Niemand Het Geloven 2024, Juli-
Anonim
Voedselcamera
Voedselcamera
Voedselcamera
Voedselcamera

Dit project is geïnspireerd op het food cam-project van het MIT Media Lab. Dit project maakt deel uit van de universiteitsdienst Coding For Good bij UWCSEA East in Singapore. Het doel van dit project is om de hoeveelheid voedsel die door onze gemeenschap wordt verspild te verminderen door mensen een alternatief te bieden voor het weggooien van hun niet-opgegeten voedsel.

Met het food cam-project kan voedsel dat anders verspild zou zijn, onder een camera worden geplaatst, er een foto van worden gemaakt en naar Twitter worden geüpload zodat de hele gemeenschap het kan bekijken. Waardoor iedereen het gratis eten kan komen afmaken. Deze instructable neemt je mee op onze reis van het maken en implementeren van de Food Cam in onze schoolgemeenschap.

Stap 1: Verzamelen van de elektronica

De elektronica verzamelen
De elektronica verzamelen
De elektronica verzamelen
De elektronica verzamelen
De elektronica verzamelen
De elektronica verzamelen
De elektronica verzamelen
De elektronica verzamelen

Om aan de slag te gaan met het elektronicagedeelte van het project, moeten we eerst de volgende lijst met onderdelen verzamelen (hieronder). De powerbank is optioneel en alleen nodig als dit apparaat draagbaar moet zijn. In ons geval waren we van plan om een stationair product te hebben met een verlengde micro-USB naar USB-kabel die de Pi van stroom voorziet. Bovendien doen de specificaties van de knop er niet zoveel toe, behalve dat de knop een PTM-schakelaar (push to make) of een momentschakelaar is. Dit zal later van belang zijn voor de functionaliteit van zowel de camera als de code.

Wat betreft de hardware, maak je daar voorlopig geen zorgen over. Als u dat wilt voltooien, gaat u verder met stap 11.

Dit is wat je moet hebben als voorwaarde om dit project te proberen:

1. Een stabiele internetverbinding

2. HDMI-kabel

3. Monitor

4. Muis

5. USB-poort

De elektronica (BOM) *Soldeerbout vereist:

1x Raspberry Pi 3 Model B

2x LED's (1x rood, 1x groen)

1x Raspberry Pi-camera (V2.1)

6x vrouwelijke naar vrouwelijke draden

1x Grote Rode Knop (PTM)

2x 470 Ohm Weerstand

1x Powerbank (5500 mAh) (Optioneel)

1x USB naar micro-USB-kabel

1x Micro SD-kaart

1x Micro SD-kaartlezer

Stap 2: Plaats de camera in de Raspberry Pi

Plaats de camera in de Raspberry Pi
Plaats de camera in de Raspberry Pi

Steek de flexkabel van de camera in de flexkabelpoort op het Raspberry Pi-bord. Doe dit met zorg, want het vervangen van deze onderdelen kan behoorlijk duur zijn!

Stap 3: Soldeer de weerstanden aan de kathodepoten op elke LED

Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED
Soldeer de weerstanden aan de kathodepoten op elke LED

Als u dit project eerst op een breadboard wilt voltooien, zoals weergegeven in de foto rechtsboven, kunt u deze stap overslaan. Als u echter van plan bent het permanent te maken, gaat u verder met deze stap.

Zorg voor het solderen voor de juiste setup. Je zou moeten werken op een hittebestendige mat, met een bril en goede ventilatie. Deze veiligheidsstappen zijn cruciaal om het risico op letsel of schade bij een ongeval te minimaliseren.

Er zijn twee manieren om de weerstanden op de pootjes van de LED's te solderen. U kunt de weerstand rechtstreeks op de LED solderen of een draad gebruiken om zowel de weerstand als de LED aan te sluiten (hierboven weergegeven). Welke kant u ook kiest, zorg ervoor dat u uw draden isoleert om kortsluiting te voorkomen. Dit is te zien op de foto rechtsonder. De kathode van de LED is het kortere been.

Stap 4: Sluit de LED's en de PTM-schakelaar aan op de Raspberry Pi

Sluit de LED's en de PTM Switch aan op de Raspberry Pi
Sluit de LED's en de PTM Switch aan op de Raspberry Pi
Sluit de LED's en de PTM Switch aan op de Raspberry Pi
Sluit de LED's en de PTM Switch aan op de Raspberry Pi
Sluit de LED's en de PTM Switch aan op de Raspberry Pi
Sluit de LED's en de PTM Switch aan op de Raspberry Pi

Idealiter moeten mannelijke naar vrouwelijke draden worden gebruikt, zodat het gemakkelijk is om de draden op de Raspberry Pi-module aan te sluiten. Terwijl de andere (mannelijke) uiteinden van de draden kunnen worden gesoldeerd aan de LED's en schakelen. Als mannelijke naar vrouwelijke draden echter niet toegankelijk zijn, wordt aanbevolen om meeraderige draad te gebruiken in plaats van de massieve kern vanwege de flexibiliteit en het verminderde risico op droge verbindingen.

Hier zijn de vereiste aansluitingen (gebruik het GPIO-pinschema dat is bijgevoegd in de bovenstaande foto's):

  • Rode LED-anode: GPIO-pin 13
  • Rode LED-kathode: elke GND-pin
  • Groene LED-anode: GPIO-pen 7
  • Groene LED-kathode: elke GND-pin
  • Knop Been 1: GPIO Pin 12
  • Knoppoot 2: elke GND-pin

Elk van deze poorten kan worden gewijzigd door de code later aan te passen.

Stap 5: Voeding

Stroomvoorziening
Stroomvoorziening

Zoals eerder besproken, zijn er twee manieren waarop de Pi kan worden aangedreven, afhankelijk van het gebruik. Via powerbank (of externe batterij) of door een directe stekker in het stopcontact. In ons geval hebben we een micro-USB naar USB gebruikt, zodat deze door beide bronnen kan worden gevoed.

De kabel moet echter worden verlengd zodat de draad een poort kan bereiken gezien de hoogte van het eindproduct. Om dit te doen, moet de micro-USB-naar-USB-kabel doormidden worden gesneden, aan beide uiteinden worden gestript, en vervolgens kan een verlengsnoer van elke gewenste lengte de negatieve en positieve aansluitingen van beide helften van de draad verbinden, zoals hierboven weergegeven.

Stap 6: Raspbian installeren op de Micro-SD-kaart

Raspbian installeren op de Micro-SD-kaart
Raspbian installeren op de Micro-SD-kaart

Deze stap is cruciaal voor het instellen van je pi als je dat nog niet hebt gedaan.

U moet NOOBS downloaden:

En een SD-kaart formatter:

Bezoek deze website voor de volledige instructiegids over hoe u raspbian op uw kaart kunt installeren, aangezien deze uitstekend werk levert bij het gedetailleerd beschrijven van het installatieproces.

Stap 7: De Pi aansluiten op de monitor

De Pi aansluiten op de monitor
De Pi aansluiten op de monitor
De Pi aansluiten op de monitor
De Pi aansluiten op de monitor

Gebruik de bovenstaande foto als richtlijn en sluit elk van de relevante poorten aan op de monitor en aanvullende hardware zoals een toetsenbord, muis, enz. Als alles correct is ingesteld, moet het scherm, zodra de stroom is ingeschakeld, het Pi OS opstarten laten zien zoals te zien in de afbeelding hierboven.

Stap 8: Uw Twitter-API genereren

Uw Twitter-API genereren
Uw Twitter-API genereren

*Opmerking - om dit te doen, moet u een Twitter-account hebben met een geverifieerd telefoonnummer

Ga vanuit dezelfde webbrowser waarmee u bent aangemeld bij uw Twitter-account naar

1. Klik op Nieuwe app maken

2. Vul naam, beschrijving en website in (als u geen website voor uw project heeft, is elke geldige website voldoende - onthoud gewoon de "https://"

3. Ga akkoord met de algemene voorwaarden

4. Klik op Maak uw Twitter-toepassingsknop

5. Klik op het tabblad Machtigingen, selecteer Lezen en schrijven, druk op Instellingen bijwerken

6. Klik op het tabblad Sleutels en toegangstokens en klik vervolgens op de knop Mijn toegangstoken maken

7. Nadat u op de knop Mijn toegangstoken maken hebt gedrukt, ziet u de velden Toegangstoken en Geheim toegangstoken. Houd al deze veldwaarden bij de hand. Je hebt ze nodig voor de Python-code.

Consumentensleutel (API-sleutel)

Consumentengeheim (API-geheim)

Toegangstoken

Toegang tokengeheim

Stap 9: Uw Pi. programmeren

Uw Pi. programmeren
Uw Pi. programmeren

Download hier de bijgevoegde broncode. Lees de opmerkingen door en voeg de vereiste informatie toe, inclusief de sleutels die in de laatste stap zijn gegenereerd. Vergeet niet te controleren of de pinnummers die u invult de juiste nummers zijn waarop u de componenten eerder hebt aangesloten.

Stap 10: Uw code instellen om automatisch te worden uitgevoerd

Uw code instellen om automatisch te worden uitgevoerd
Uw code instellen om automatisch te worden uitgevoerd

Typ in uw Terminal (Pi OS):

sudo nano /etc/profile

Hiermee wordt een bestand geopend dat automatisch wordt uitgevoerd bij het opstarten. Het enige dat u hoeft te doen, is ervoor zorgen dat uw code ook wordt uitgevoerd door deze aan dit bestand toe te voegen. Typ hiervoor onderaan de regel:

sudo python /home/pi/myscript.py

waarbij /home/pi/myscript.py wordt vervangen door het pad (de mappen en vervolgens de naam van het bestand gescheiden door schuine strepen) van wat u uw codeerbestand noemde.

Druk vervolgens op Ctrl-X om af te sluiten, druk op Y om op te slaan en druk zo nodig op Enter om het bestand volledig op te slaan/te verlaten.

Stap 11: De huisvesting (BOM)

De huisvesting (BOM)
De huisvesting (BOM)

Voor de behuizing hebben we een black box future kit gebruikt en hebben we een stand gemaakt van extrusie om de camera boven het voedselplaatsingsbord te houden.

Wat hebben we gebruikt voor de behuizing:

1. Houten plank

2. Extrusie:

3. 2x M12 Moer

4. 2x M12 Bout

5. Zwarte toekomstige kitdoos

Stap 12: Boren van LED-, camera- en schakelgaten in de doos

Boren van LED-, camera- en schakelgaten in de doos
Boren van LED-, camera- en schakelgaten in de doos
Boren van LED-, camera- en schakelgaten in de doos
Boren van LED-, camera- en schakelgaten in de doos
Boren van LED-, camera- en schakelgaten in de doos
Boren van LED-, camera- en schakelgaten in de doos

Om de knop, camera en LED's op hun plaats te houden, moeten we gaten boren om elk onderdeel te plaatsen.

In ons geval zijn hier de diameters voor elk gat:

LED-houders: 8 mm

Camera-gat: 6 mm

Knoopsgat: 22 mm (afhankelijk van de knoop die je gebruikt)

Zorg er bij het boren voor dat u de boor loodrecht op het te boren oppervlak houdt en niet te veel druk uitoefent, wat het risico op barsten van de behuizing kan vergroten. Zorg ervoor dat u ringen en moeren gebruikt om elk onderdeel op zijn plaats te bevestigen.

Zorg ervoor dat het onderdeel waarvoor u een gat boort voldoende ruimte heeft om te passen voordat u het gat in dat gebied van de doos maakt!

Stap 13: Aan / uit-schakelaar en draad

Aan/uit-schakelaar en draad
Aan/uit-schakelaar en draad
Aan/uit-schakelaar en draad
Aan/uit-schakelaar en draad

Deze stap is optioneel en vereist een SPST-tuimelschakelaar om de voeding te regelen. Dit maakt het mogelijk om het apparaat uit te schakelen zonder de USB-kabel los te koppelen en is daarom een handige functie. U hebt de verlengde USB-naar-micro-USB-kabel nodig (zoals eerder besproken), omdat deze moet worden doorgesneden om deze door de schakelaar te laten lopen.

We hebben eerst de grootte van het gat gemeten en getekend dat we zouden moeten boren om de schakelaar te ondersteunen. Vervolgens hebben we met een 8 mm-boor twee gaten naast elkaar geboord, zodat we een rechthoekige sleuf konden uitvijlen om in de vorm van onze tuimelschakelaar te passen.

Nadat de tuimelschakelaar op zijn plaats was geduwd, werd de positieve verlengingsdraad doorgesneden. De twee uiteinden werden vervolgens gesoldeerd aan de gemeenschappelijke terminal en een aangrenzende terminal van de tuimelschakelaar zoals hierboven te zien is.

Stap 14: De camera aan de doos toevoegen

De camera aan de doos toevoegen
De camera aan de doos toevoegen
De camera aan de doos toevoegen
De camera aan de doos toevoegen
De camera aan de doos toevoegen
De camera aan de doos toevoegen

Het toevoegen van de camera aan de doos is een erg lastig onderdeel. We hebben dit gedaan met een heet lijmpistool waarmee we de camera relatief gemakkelijk kunnen verwijderen als er iets mis zou gaan.

Plaats eerst de camera op zijn plaats en zorg ervoor dat deze de foto op de juiste manier maakt. Zorg er ook voor dat de foto die hij maakt op geen enkele manier gekanteld is. Zodra deze variabelen zijn vastgesteld, neemt u het lijmpistool en lijmt u de zijkanten van de Pi-camera op de doos. Zorg er echter voor dat het pistool de cameralens niet raakt!

Stap 15: De doos aan extrusie bevestigen

De doos aan extrusie bevestigen
De doos aan extrusie bevestigen
De doos aan extrusie bevestigen
De doos aan extrusie bevestigen
De doos aan extrusie bevestigen
De doos aan extrusie bevestigen

Om deze stap te voltooien, pak je eerst een aluminium strip zoals hierboven te zien en buig je deze 90 graden zodat deze om je doos wikkelt. Boor vervolgens twee sets gaten (12 mm in diameter), zowel in de doos als op de aluminium strip, zodat ze op één lijn liggen. Gebruik M12 bouten en moeren om de aluminium strip op zijn plaats langs de rand van de doos te bevestigen. De overtollige strip die van de doos komt, kan vervolgens worden gebruikt om de doos aan extrusie te bevestigen, zoals in de volgende stappen wordt getoond.

Zorg ervoor dat u instrumenten zoals schuifmaat en linialen gebruikt om alles op één lijn te krijgen. Elke verschuiving kan leiden tot een kanteling van het geproduceerde beeld.

Stap 16: De standaard aan de basis bevestigen

De standaard aan de basis bevestigen
De standaard aan de basis bevestigen
De standaard aan de basis bevestigen
De standaard aan de basis bevestigen
De standaard aan de basis bevestigen
De standaard aan de basis bevestigen

Knip eerst een lang stuk extrusie uit (*zie hieronder). Pak dan twee beugels/ribben zoals hierboven getoond en maak een droge passing van de beugels en de extrusie op de houten plint. Neem vervolgens een potlood en markeer waar u de benodigde gaten gaat boren om de beugels aan het bord te bevestigen.

Boor die gaten (ongeveer 8 mm) en bevestig de beugels aan het bord met M8-bouten en moeren. Pak vervolgens de benodigde T-vormige schroeven voor extrusie en bevestig de extrusiekolom tussen de twee beugels zoals hierboven te zien is.

*Het is belangrijk op te merken dat de hoogte van de extrusie afhankelijk is van wat u wilt dat uw camera in zijn gezichtsveld ziet. Voor ons hadden we het op ongeveer 60 cm boven het bord zitten om de geschreven boodschap op het bord vast te leggen. We besloten tot deze hoogte na het testen van de camera op verschillende hoogtes en het bekijken van de beelden op Twitter.

Stap 17: De cameradoos aan de standaard bevestigen

De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen
De cameradoos aan de standaard bevestigen

Knip in deze stap eerst nog een kleiner stuk extrusie uit. De lengte ervan moet gebaseerd zijn op hoe ver u wilt dat uw camera reikt, zoals hierboven te zien is.

Neem vervolgens de aluminium strip die van de doos komt en boor er twee gaten van 6 mm doorheen (hoofdfoto). Neem vervolgens het kleinere stuk extrusie en bevestig onder de aluminium strip met behulp van de T-vormige schroeven (foto rechtsonder). Zorg ervoor dat de gaten zijn uitgelijnd zodat het beeld niet scheef lijkt.

Ten slotte hebben we, om de twee stukken extrusie in een hoek van 90 graden te bevestigen, een kleine beugel / ribbe gebruikt en deze aan de twee stukken vastgemaakt met de vereiste T-vormige schroeven die in de extrusie vergrendelen.

Stap 18: Conclusie

Conclusie
Conclusie
Conclusie
Conclusie

Voer tot slot gewoon de stroomkabel van de Pi naar een USB-poort en schroef de achterkant van de powerbox vast. Dat is het!

Het enige dat u nu nog hoeft te doen, is het apparaat in de buurt van een plek te plaatsen waar mensen eten en reclame te maken voor het gratis Twitter-account voor eten dat u hebt gemaakt.

Een link naar onze twitterpagina vind je hier.

Genieten van

Deze instructable is geschreven en gemaakt door Rehaan Irani en Justin Chan van de Coding For Good-service bij UWCSEA East onder toezicht van de heer David Kann. Dit is ook tot stand gekomen met de hulp van de collegeservice Circle Enterprise en de afdeling UWCSEA East DT. Extra dank aan Sewen Thy en Vatsal Agarwal voor hun bijdrage aan het project.

Aanbevolen: