Inhoudsopgave:

Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker - Ajarnpa
Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker - Ajarnpa

Video: Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker - Ajarnpa

Video: Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker - Ajarnpa
Video: Raspberry pi is overated 2024, November
Anonim
Image
Image
Het idee
Het idee

Movie Tracker is een clapperboard-vormige, Raspberry Pi-aangedreven Release Tracker. Het gebruikt de TMDb API om de poster, titel, releasedatum en overzicht van aankomende films in uw regio, in een bepaald tijdsinterval (bijv. filmreleases deze week) op thermisch papier af te drukken. Er is een LED op de achterkant van het bord die oplicht wanneer er nieuwe releases zijn. Het heeft ook twee magneten, zodat u de films die u wilt bekijken op het bord kunt bevestigen.

Overzicht

In de eerste stap zal ik het hebben over het idee achter dit project. Vervolgens geef ik je een lijst met alle onderdelen en gereedschappen die zijn gebruikt om dit project te bouwen. Vervolgens laat ik je zien hoe je je Raspberry Pi instelt om dit programma uit te voeren. Nadat ik je een stapsgewijze montagehandleiding heb gegeven, beëindig ik deze instructable met een gids voor probleemoplossing en de volgende sectie.

Laten we beginnen!

Stap 1: Het idee

Ik ben een enorme filmfan, ik bewaar mijn kaartjes altijd en plak ze in mijn dagboek. Op een dag dacht ik: "Het zou geweldig zijn als er posters op de bioscoopkaartjes zouden staan." Dus dit project begon met het afdrukken van posters voor mijn dagboek. Later heb ik een releasedatum op de poster toegevoegd zodat ik me kan herinneren wanneer het werd uitgebracht en dat evolueerde langzaam naar een filmplanbord.

Stap 2: Gereedschap & Onderdelen

Gereedschap:

  • 3D-printer
  • Soldeerbout
  • Oefening
  • Tang
  • Afplakband
  • Zwarte spuitverf

Onderdelen:

  • Raspberry Pi 3 (ik heb dit in de buurt gehad, maar Raspberry Zero is beter vanwege zijn grootte)
  • Drukknop (5mm)
  • Adafruit thermische printer & thermische papierrol
  • Groene LED (5mm)
  • 330 ohm weerstand
  • Blik (0,5 mm)
  • 3 x (30 mm M3 bout en moer)
  • 4 x (15 mm M3 bout en moer)
  • 4 x (5x5mm M3 warmte-inzet)

3D-geprinte onderdelen:

  • board.stl
  • boardLid.stl
  • klepelbodem.stl
  • clapperLids.stl
  • klepelTop.stl
  • driehoek.stl

Stap 3: Je Raspberry Pi instellen

Uw Raspberry Pi instellen
Uw Raspberry Pi instellen

Raspbian installeren

Om de Pi met ons programma te laten werken, moeten we eerst de SD-kaart instellen waarop hij zal opstarten. Als je een beginner bent, kun je deze gedetailleerde tutorial bekijken:

www.instructables.com/id/Setting-Up-Raspberry-Pi-3/

Vervolgens moet je SSH op je Raspberry Pi inschakelen, ook hier is een gedetailleerde tutorial over, www.instructables.com/id/How-To-Use-SSH-with-Raspberry-Pi-2/

Door SSH in te schakelen, kunnen we op afstand toegang krijgen tot de Raspberry Pi, zodat we niet elke keer een toetsenbord en monitor hoeven te gebruiken.

Log nu in op je raspberry pi met SSH en volg de onderstaande stappen.

Bibliotheek thermische printers

Om de thermische printer met je Raspberry te gebruiken, moet je eerst de bibliotheek installeren die Adafruit levert.

Maak eerst een map om alle bestanden van dit project te ordenen door simpelweg:

mkdir movie-tracker-project

en ga naar die map door:

cd film-tracker-project

laten we nu de vereiste bibliotheken installeren. We zullen git gebruiken om alle code naar de Raspberry Pi te downloaden. Installeer de thermische printerbibliotheek door:

git clone

Filmtrackercode

Installeer de Movie Tracker Code door:

git clone

om onze code nu te laten werken, zou deze zich in dezelfde map moeten bevinden als de thermische printerbibliotheek. om ze in dezelfde map te krijgen, ga eerst naar de map Movie Tracker door:

cd filmtracker

en kopieer het bestand vervolgens naar de bibliotheek van de thermische printer door:

cp tracker.py /home/pi/Pyhton-Thermal-Printer

nu is uw code klaar voor aanpassing.

Opmerking: de code wordt momenteel niet uitgevoerd omdat deze moet worden aangepast met een API-sleutel.

Stap 4: De Movie DB API

De Movie DB API
De Movie DB API

We zullen TMDb gebruiken om de filmgegevens voor dit project te krijgen. TMDb is een geweldig platform dat gratis te gebruiken is, waar je filmlijsten enz. kunt maken (zoals IMDB) Het beste van TMDb is dat ze een gratis API-service hebben waarmee je filmgegevens, inclusief posters, releasedatums, enz. programmatisch kunt krijgen. Om deze service te gebruiken, moet u eerst een account aanmaken en de instructies hier volgen om uw API-sleutel te verkrijgen.

Stap 5: De code aanpassen

API sleutel

Log in op je Raspberry Pi met SSH en ga naar de map waar je het tracker.py-bestand hebt geplaatst. Nu om het bestand te bewerken:

sudo nano tracker.py

in het bestand ziet u de plaats van de API-sleutel aangegeven als [YOUR_API_KEY]. Kopieer de sleutel die je van TMDb hebt gekregen en plak deze hier. Nu is uw code klaar om te worden uitgevoerd, test deze eenvoudig door:

python tracker.py

Het zou de nieuwste informatie over de filmrelease moeten krijgen en deze op de console moeten afdrukken. Als dit niet het geval is, raadpleeg dan de gids voor probleemoplossing aan het einde van dit instructable.

Als je de tracker met zijn standaardinstellingen wilt gebruiken, kun je het volgende deel overslaan.

Verdere aanpassing

In de standaardinstelling wordt de tracker elke dag bijgewerkt om nieuwe release-informatie te krijgen en deze op te slaan als de releasedatum in het interval van 10 dagen valt. U kunt deze instellingen naar wens wijzigen. door deze regel te wijzigen:

rDatum = 10

Stap 6: Montage - Elektronica

Montage - Elektronica
Montage - Elektronica

Na het aansluiten van de elektronica zoals weergegeven op de afbeelding, zullen we elk onderdeel testen om te controleren of ze werken.

Thermische printer

Ga naar de bibliotheekmap van de thermische printer en voer het volgende uit:

cd Python-Thermische Printer

python printertest.py

dit zou een testblad moeten afdrukken. I er een probleem is controleer de printeronderdelen en test opnieuw.

LED

Maak een nieuw bestand "LED_Test.py" door het volgende te typen:

nano LED_Test.py

en kopieer dit naar het bestand:

importeer RPi. GPIO als GPIOimporteer tijd GPIO.setmode(GPIO. BCM)GPIO.setwarnings(False) GPIO.setup(18, GPIO. OUT) print "LED aan" GPIO.output (18, GPIO. HIGH) time.sleep(1) print "LED uit" GPIO.output (18, GPIO. LOW)

Wanneer u deze code uitvoert door:

sudo python LED_Test.py

de LED moet oplichten. Zo niet, dan is er een probleem met uw LED

Stap 7: Eerste prototype en test

Eerste prototype en test
Eerste prototype en test

Voor dit project heb je geen 3D-behuizing nodig. U kunt het gebruiken zoals weergegeven op de afbeelding op het prototypestadium.

Laten we nu de tracker testen. Voer de tracker uit door:

sudo python tracker.py

U zou de aankomende filmlijst op de opdrachtregel moeten zien. Druk nu op de knop en wacht tot de printer klaar is met afdrukken. controleer of er een fout is in de informatie op de pagina. Zo niet, dan is uw project klaar voor de zaak.

Stap 8: 3D-afdrukken

3D-afdrukken
3D-afdrukken

Het wordt ten zeerste aanbevolen om alle onderdelen af te drukken voordat u ze in elkaar zet.

De printer die ik heb gebruikt is de TEVO Tornado met de volgende instellingen:

  • Pijp: 0.4mm
  • vulling: %20
  • Filament: PLA

Zorg ervoor dat u de stukken schuurt voordat u ze schildert.

Stap 9: Maskeren en schilderen

Maskeren en schilderen
Maskeren en schilderen
Maskeren en schilderen
Maskeren en schilderen
Maskeren en schilderen
Maskeren en schilderen

Elke blauwe strook afplakband heeft een diameter van 20 mm. Ik keek naar de hoek van de strepen.

Stap 10: Montage - Klepel

Montage - Klepel
Montage - Klepel
Montage - Klepel
Montage - Klepel

Ik gebruikte een tinnen plaat en sneed het met een Dremel in deze vorm. De spanning van het blik werd aangepast door het te buigen. Je kunt ook andere verende onderdelen gebruiken, het hoeft niet van blik te zijn.

Stap 11: Montage - Bord

Montage - Bord
Montage - Bord
Montage - Bord
Montage - Bord
Montage - Bord
Montage - Bord
Montage - Bord
Montage - Bord

Gebruik een soldeerbout om de inzetstukken te verhitten

Stap 12: Solderen

Solderen
Solderen
Solderen
Solderen

Soldeer de weerstand aan de LED en gebruik een krimpkous om deze te bedekken. Je hoeft de knop niet te solderen, ik heb twee startkabels gebruikt om ze aan de Raspberry Pi te bevestigen.

Stap 13: Eindmontage & Test

Eindmontage & Test
Eindmontage & Test
Eindmontage en test
Eindmontage en test
Eindmontage & Test
Eindmontage & Test

Ik heb een pingpongbal gebruikt om de led te verspreiden. Het werkt als magie. Je hoeft alleen maar een klein gaatje te boren en de led in de bal te plaatsen zoals op de afbeelding.

Stap 14: Problemen oplossen

+ Printer loopt vast en stopt met afdrukken

- dit kan te wijten zijn aan de stroomleverancier, probeer er een te gebruiken met een grotere stroomsterkte

+ Kan geen gegevens van de API krijgen

- Er zijn dagelijkse limieten voor API-gebruik. Als u boven de limiet zit, wordt de toegang van uw sleutel afgesloten. Meestal wordt de limiet aan het einde van de dag opnieuw ingesteld.

Aarzel niet om een reactie achter te laten als u problemen ondervindt. Ik zal ze verzamelen en proberen ze hier te beantwoorden.

Stap 15: Wat nu?

Wat is het volgende
Wat is het volgende

In deze stap zal ik een aantal dingen opsommen die ik in mijn hoofd had. Maar vond niet de tijd/bronnen om ze toe te voegen. Voel je vrij om meer ideeën of manieren toe te voegen om dit project te verbeteren in de opmerkingen:

  • Autosnijder, zodat je het papier niet elke keer handmatig hoeft af te snijden.
  • Volglijstintegratie, alleen de films die op uw volglijst staan, worden afgedrukt.
  • RGB-LED's kunnen van kleur veranderen voor verschillende genres (horror + rood enz.)
  • Een muurbeugel zou fijn zijn.

Dit is geen voltooid project. Ik hoop dat velen van jullie proberen hun eigen consoles te bouwen, zodat we dit samen kunnen ontwikkelen.

Als je vragen hebt, stel ze gerust! & vertel me over je build!

IoT-uitdaging
IoT-uitdaging
IoT-uitdaging
IoT-uitdaging

Tweede plaats in de IoT-uitdaging

Aanbevolen: