Cuprins:

Dr Who Tardis Doorbell: 14 pași (cu imagini)
Dr Who Tardis Doorbell: 14 pași (cu imagini)

Video: Dr Who Tardis Doorbell: 14 pași (cu imagini)

Video: Dr Who Tardis Doorbell: 14 pași (cu imagini)
Video: VESTIREA CIUDATĂ A SĂPTĂMÂNII - 32 | Misterios | Univers | OZN | Ocult 2024, Iulie
Anonim
Dr Who Tardis Doorbell
Dr Who Tardis Doorbell

Acesta este un proiect cu care am venit pentru a crea o sonerie Tardis. Este o sonerie fără fir care, atunci când este apăsată, redă sunetul din spectacol. Am înregistrat și folosit audio din seria Matt Smith, deoarece acesta este un cadou pentru sora mea vitregă și acesta este dr. Ei preferat. Am realizat următorul videoclip pe youtube al produsului finit.

www.youtube.com/watch?v=3cZw3BYwqdc

Pasul 1: Comandați piesele carcasei

Comandați piese ale carcasei
Comandați piese ale carcasei
Comandați piese ale carcasei
Comandați piese ale carcasei
Comandați piese ale carcasei
Comandați piese ale carcasei

Primul lucru care trebuie făcut este cazul. Acesta este Tardisul de lemn în care va sta electronica în interior. Puteți găsi acest lucru pe Etsy. Există un magazin numit Lazer Models care vinde modelul din lemn tăiat lazer. Veți avea nevoie de lipici pentru lemn și puțin timp pentru a pune totul la loc și a-l lipi împreună.

*** Când sunteți la sfârșitul montării modelului împreună, nu lipiți și nu folosiți piesele superioare în care se află lumina superioară în spectacol. Un led va merge aici, care se aprinde mai târziu. ai nevoie de acea gaura acolo ****

Pasul 2: gaura de găurire pentru LED

Gaura de foraj pentru LED
Gaura de foraj pentru LED
Gaura de foraj pentru LED
Gaura de foraj pentru LED

Vârful Tardis ar trebui să aibă o mică gaură în care am lăsat bucăți afară. Utilizați un burghiu pentru a găuri o gaură care trece prin acea gaură până în centrul Tardisului. Există o piesă de lemn folosită pentru stabilitate în mijloc, care este solidă. Gaura de foraj ar trebui să treacă prin această piesă, astfel încât compartimentul ascuns inferior și partea superioară să se conecteze. Acest lucru va permite ca două fire mici să ruleze din compartimentul inferior în sus prin partea superioară în care va fi plasat LED-ul.

Pasul 3: Pictură

Pictura
Pictura

Aceasta a fost cea mai grea parte pentru mine. Am obținut vopseaua pe care am folosit-o din holul hobby-urilor. Vopseaua oficială Tardis este greu de găsit, iar piesele de pe Tardis din lemn sunt mici, așa că aveți nevoie de pensule fine. Am cumpărat vopsea manuală și pensule la holul hobby-urilor. Veți avea nevoie de Albastru pentru exterior și negru pentru partea de sus unde este scrisul alb și, de asemenea, alb. Am pictat literele doar pe partea din față, deoarece este foarte mică și este greu de făcut fără să mă încurc. A trebuit să mă întorc de câteva ori peste greșelile cu negru sau albastru. După terminarea straturilor de vopsea, veți avea nevoie de o cutie de poliuretan. Am făcut trei straturi de vopsea pentru a obține așa cum am vrut. Apoi, pulverizați 3 straturi de poliuretan pentru a sigila și lucia Tardis. Acest lucru ajută la deformare și, de asemenea, îi conferă o strălucire frumoasă.

Pasul 4: găuriți găurile laterale

Găuri găuri laterale
Găuri găuri laterale
Găuri găuri laterale
Găuri găuri laterale

Acum va trebui să găuriți și să tăiați câteva găuri în lateralul carcasei Tardis. Aveți nevoie de o gaură suficient de mare pentru butonul de calmar pentru alimentare. De asemenea, aveți nevoie de o gaură pentru cablul de alimentare și cablul USB care se vor conecta la placa de sunet. Am forat gaura inițială, apoi am folosit un cuțit exact pentru a netezi găurile suficient de mari și circulare.

Pasul 5: Raspberry Pi's

Raspberry Pi's
Raspberry Pi's
Raspberry Pi's
Raspberry Pi's
Raspberry Pi's
Raspberry Pi's

Acum va trebui să configurați Raspberry Pi. Pentru a face acest lucru, am achiziționat un Raspberry pi 3, cablu de alimentare, radiator pentru un Raspberry Pi, card micro sd de 32 GB, cabluri jumper de la mamă la mamă, un rezistor de 10 ohm, două butoane de tip squid, un convertor de putere de 10v la 5v, jumper cabluri și un kit de fabricare a cablurilor jumper și o placă de sunet USB, iar dacă aveți o tastatură fără fir cu un dongle USB, acest lucru este mai ușor. De asemenea, veți avea nevoie de un al doilea card Raspberry Pi și sd. Acesta va trebui să fie un Raspberry Pi zero și un pinp gpio în care să se lipească.

*** cardul SD nu trebuie să aibă 32 GB, 8 GB va merge bine ***

Va trebui să descărcați o imagine pe cardul SD pentru a o utiliza în Raspberry Pi. Apoi, puteți utiliza orice software gratuit pentru a scrie imaginea pe cardul SD. Folosesc Win32DiskImager.. Acesta este un proces destul de simplu. Pur și simplu introduceți cardul SD căruia i se va atribui o literă de unitate. Apoi navigați la imaginea descărcată și scrieți pe disc, apoi selectați cardul SD. Folosesc imaginea Raspian pe site. O căutare pe Google a Raspian și scrierea imaginii pe cardul SD vă va oferi tot ce aveți nevoie.

Odată ce imaginea este scrisă pe cardul SD, conectați-o la portul Raspberry Pi 3 și conectați cablul de alimentare pentru prima pornire. Imaginea Raspian se deschide către mediul desktop pixel. Există o imagine a unui pătrat negru, acesta este terminalul în care vom lucra la scripturile noastre pentru a face acest lucru să funcționeze. faceți clic pe acea imagine pentru a deschide terminalul.

*** În acest moment este important să rețineți că am obținut fișiere audio înregistrând emisiunea cu telefonul meu, apoi încărcând videoclipurile pe YouTube și folosind site-ul yt2mp3 pentru a le converti în mp3-uri. Apoi descărcați-le în Raspberry Pi și plasați-le în directorul / home / pi. puteți face acest lucru cu pictograma folderului și glisând fișierele din folderul de descărcări.

Am atașat o imagine a unei plăci GPIO care vă spune ce pini fac ce. Pentru simplitate, vă recomand să folosiți pinii pe care i-am făcut. Pinul 3 este butonul meu de pornire. Pinul 14 este ledul meu și pinul 18 este pinul programului. Nu există nimic atașat la acest lucru, deoarece acest lucru se face fără fir. Există, de asemenea, o imagine a MP3-urilor mele în directorul home / pi.

Pasul 6: Script Power Shell

Script Power Shell
Script Power Shell
Script Power Shell
Script Power Shell

Modul în care funcționează este că există două scripturi shell. Scripturile execută un bootup și pornesc scripturile python. Scripturile Python rulează și așteaptă intrarea fie prin apăsarea butonului, fie prin fluctuația tensiunii pinului. Scripturile shell sunt destul de simple, următorul este primul. care va începe scriptul python odată creat.

#! / bin / bash

#Butonul de pornire

cd /

cd / home / pi

sudo python3 power.py

cd /

Acest script va porni power.sh care este numele scriptului python pe care îl vom crea și noi. Modul în care creăm acest script de la terminal este tastând cd / home / pi, apoi introduceți. Apoi, trebuie să creăm un director pentru scripturile noastre, așa că tastați sudo mkdir bin, apoi introduceți. Aceasta va crea un folder bin pe care îl putem folosi pentru scripturile noastre. Apoi tastați cd / home / pi / bin, apoi introduceți. Apoi tastați sudo nano power.sh apoi introduceți. Aceasta va deschide un document gol în care va fi introdus scriptul de mai sus. Pentru a salva apăsați cntrl și x, atunci vă va întreba dacă doriți să salvați apăsați y pentru da, atunci va confirma locația și apăsați Enter. Aceasta creează scriptul, dar avem nevoie ca acesta să fie executabil. Deci, apăsați cd / home / pi enter. Apoi sudo chmod + x /home/pi/bin/power.sh apoi introduceți. Acest lucru va face ca scriptul de putere pe care tocmai l-am creat să fie executabil pentru toți utilizatorii. Acum avem nevoie de acest script pentru a rula la repornire. Adică va rula automat la început, care va începe celălalt script pe care îl vom crea. Tastați cd / home / pi, apoi introduceți. Apoi tastați sudo crontab -e apoi introduceți. Vă va întreba ce editor să utilizați selectați nano, care este 2 cred, apoi introduceți. Acest document are deja scris. Doar derulați în partea de jos și tastați @reboot sh /home/pi/bin/power.sh apoi salvați cu cntrl și x, confirmați cu y apoi introduceți. Acum, scriptul shell va rula la repornire.

Pasul 7: Power Python Script

Script Power Python
Script Power Python

Acum că scriptul shell este gata să pornească scriptul Python, trebuie să creăm scriptul Python. De la terminal introduceți cd / home / pi apoi introduceți. Scripturile python nu au nevoie de propriul lor director, salvându-le în acest director principal cu mp3-uri este bine. Tastați sudo nano power.py apoi introduceți. Aceasta va deschide din nou editorul de text gol. Scripturile din python depind foarte mult de spațiere, deci dacă primiți erori de sintaxă, spațierea este.

importați RPi. GPIO ca GPIO

timpul de import

subproces de import

GPIO.setmode (GPIO. BCM)

GPIO.setup (3, GPIO. IN, pull_up_down = GPIO. PUD_UP)

oldButtonState = 1

în timp ce este adevărat:

buttonState1 = GPIO.input (3)

dacă buttonState1! = oldButtonState1 și buttonState1 == False:

subprocess.call ("sudo shutdown -h now", shell = True, stdout = subprocess. PIPE, stderr = subprocess. PIPE)

oldButtonState1 = buttonState1

time.sleep (.1)

Apoi salvați cu cntrl și x apoi confirmați cu Y apoi introduceți. Acum, ceea ce se va întâmpla este că scriptul shell va rula la pornire și va porni acest script python, care va aștepta apăsarea unui buton pe pinul 3 pentru a închide raspberry pi în modul de repaus și a porni. Acum închideți zmeura pi de la terminal cu sudo închidere -h acum și intrați. Odată ce pi-ul este oprit și lumina verde este oprită, deconectați-o. Acum conectați comutatorul de calamar la pinul 3. Numărul de pinuri începe cu numere mici la capătul unde se află cardul SD. Pinul 3 și solul sunt pinul 5 și 6 atunci când numărătoarea inversă de la acel capăt. Numărați în jos 2 apoi 4 apoi 6. Acele două știfturi sunt știftul 3 și măcinate. Conectați comutatorul de calamar la acei pini. Alunecă chiar înainte. Care merge pe care pin nu contează. Odată ce comutatorul este pornit, conectați din nou pi-ul și acesta va porni. Deoarece scriptul nostru rulează la pornire, apăsați butonul pentru a testa și acesta ar trebui să se închidă în modul de repaus. Apoi apăsați-l din nou și va porni din nou. Unele butoane pot fi slăbite dacă nu funcționează, verificați conexiunea la pin și, de asemenea, unele butoane sunt slăbite și trebuie apăsate și menținute o secundă pentru ca conexiunea să fie la același nivel. Puteți testa acest lucru de câteva ori.

Pasul 8: Cabluri LED Jumper

Cabluri Jumper Led
Cabluri Jumper Led
Cabluri Jumper Led
Cabluri Jumper Led
Cabluri LED Jumper
Cabluri LED Jumper

Acum putem rula acest cablu, dar nu este conectat încă. Ledul mic pe care l-ați cumpărat are două pini de aluminiu care ies din el. Cea mai lungă este cea pozitivă. Conectați rezistorul de 10 ohmi la capătul pozitiv. Apoi, luați cablurile jumper cumpărate și conectați unul la pozitiv și unul la negativ. Apoi treceți cablurile prin orificiul din partea superioară a carcasei Tardis prin orificiul din mijloc și în compartimentul inferior. Puteți utiliza bandă electrică dacă doriți să țineți o parte din acestea împreună. Totuși, nu este cu adevărat nevoie. Nimic din toate acestea nu este foarte greu. Doar aveți grijă să nu trageți la greu, vor ieși afară. Nu conectăm încă acest lucru la Raspberry pi.

Pasul 9: Dr-who Shell Script

Dr-who Shell Script
Dr-who Shell Script

Acesta este scriptul shell la fel ca celălalt care va rula la repornire și pornește scriptul Python Dr-who pe care îl vom scrie. Acest lucru se face exact în același mod. de la terminalul cd / home / pi / bin și introduceți. Apoi sudo nano dr-who.sh și introduceți. Apoi tastați următoarele:

#! / bin / bash

#dr cine script de pornire

cd /

cd / home / pi

sudo python3 dr-who.py

cd /

Apoi cntrl și x apoi Y apoi introduceți. Apoi apăsați cd / home / pi apoi introduceți.

Apoi sudo chmod + x /home/pi/bin/dr-who.sh apoi introduceți. Apoi sudo crontab -e apoi derulați până jos și tastați

@reboot sh /home/pi/bin/dr-who.sh apoi salvați cu cntrl și x apoi Y și apoi introduceți. Acum ar trebui să existe două linii pe crontab care pornesc atât scriptul de shell de putere, cât și scriptul de shell dr-who la pornire.

*** În timp ce suntem aici, mai sunt încă două intrări de adăugat care vor intra în joc mai târziu **

introduceți următoarele:

@reboot sudo systemct1 activează pigpiod

@reboot sudo systemct1 pornește pigpiod

Apoi, salvați pigpiodul este un pachet necesar pentru a utiliza butonul wireless pe care îl vom folosi. Nu este instalat implicit. După salvare, ieșiți la terminal. Apăsați sudo apt-get install pigpiod apoi introduceți. Trebuie să fiți conectat la internet pentru a descărca acest lucru. Acest lucru se poate face de pe desktopul Raspberry pi.

Pasul 10: Dr-who Python Script

Dr-who Python Script
Dr-who Python Script
Dr-who Python Script
Dr-who Python Script
Dr-who Python Script
Dr-who Python Script

Aceasta este adevărata tupeu a soneriei. Acesta este principalul program în sine care rulează. Acest lucru rulează pe pinul 18, dar ieșirea este pe pinul 14 și 18. Acest program va face ledul să se aprindă, apoi va fi selectat un mp3, acesta va fi redat, apoi ledul va clipi din nou. Numele fișierelor mp3-urilor sunt exact ceea ce le-am numit pentru a le aminti. Le poți numi orice vrei. Amintiți-vă doar că nu pot avea nicio comandă python în nume, de exemplu am numit un fișier cu cuvântul sort în nume și a confundat python și așa a fost schimbat. Amintiți-vă de la terminalul cd / home / pi, apoi introduceți. Apoi sudo nano dr-who.py apoi introduceți. În text introduceți următorul script care va fi scris.

** Acesta este scriptul meu, al tău va fi diferit dacă ai un număr diferit de MP3-uri sau dacă acestea sunt denumite diferit **

importați RPi. GPIO ca GPIO

timpul de import

import aleatoriu

import os

GPIO.setmode (GPIO. BCM)

GPIO.setup (18, GPIO. IN, pull_up_down = GPIO. PUD_UP)

def randomnumber ():

număr = random.randint (1, 6

*** selectează un număr aleatoriu între 1 și 6, trebuie modificat dacă numărul dvs. de MP3-uri este diferit ***

dacă numărul == 1:

os.system ('mpg123 thedoctor.mp3')

time.sleep (1)

număr elif == 2:

os.system („mpg123 opening.mp3”)

time.sleep (1)

număr elif == 3:

os.system ('mpg123 thecrack.mp3')

time.sleep (1)

număr elif == 4:

os.system („mpg123 bowties.mp3”)

time.sleep (1)

număr elif == 5:

os.system ('mpg123 exterminated.mp3')

** Numele MP3 poate fi diferit depinde de ceea ce le-ați numit **

time.sleep (1)

altceva:

os.system ('mpg123 timespace.mp3')

time.sleep (1)

GPIO.setwarnings (Fals)

GPIO.setup (14, GPIO. OUT) ** setează ieșirea și la pinul 14 **

GPIO.output (14, fals) ** Ledul este pe pinul 14 îl stinge inițial **

în timp ce este adevărat:

GPIO.output (14, fals)

input_state = GPIO.input (18) ** pinul 18 este intrarea **

if (GPIO.input (18) == False):

GPIO.output (14, True)

time.sleep (1)

GPIO.output (14, fals)

time.sleep (1)

Număr aleatoriu()

GPIO.output (14, True)

time.sleep (1)

GPIO.output (14, fals)

time.sleep (.5)

GPIO.output (14, True)

time.sleep (1)

GPIO.output (14, fals)

Ceea ce face acest lucru este când pinul 18 este interacționat cu ledul de pe pinul 14 din partea de sus a tardisului va clipi, apoi va fi selectat un fișier audio și redat, apoi ledul va clipi de două ori și se va stinge. Iată ce se va întâmpla de fiecare dată când sună la ușă. De asemenea, vom avea nevoie de adresa IP a acestui raspberry pi pentru scriptul din celălalt, astfel încât semnalul wireless să fie recepționat, deci asigurați-vă că conectați raspberry pi la wifi prin desktopul GUI, apoi reveniți la terminal și introduceți sudo hostname -Eu intru apoi. scrieți adresa IP dată, veți avea nevoie de ea mai târziu. De asemenea, puteți conecta cablurile pentru ledul la pinul 14, urmăriți pinul GPIO pentru pinul 14 și pinul de masă care este diagonală de acesta.

Pasul 11: butonul frontal Raspberry Pi

Buton frontal Raspberry Pi
Buton frontal Raspberry Pi
Buton frontal Raspberry Pi
Buton frontal Raspberry Pi

Raspberry pi zero are nevoie de câteva lucruri. mai întâi pinii trebuie lipiți. Folosiți un fier de lipit și o parte din lipit pentru a lipi pinii pentru o conexiune solidă. Există o mulțime de resurse despre cum să faceți acest lucru online. Youtube este unul grozav. Odată ce știfturile sunt lipite în cardul SD va avea nevoie de imaginea raspian scrisă la fel ca înainte. Nu vom avea nevoie de un buton de pornire aici. vom avea nevoie de un script shell care să ruleze din nou la pornire și va porni scriptul nostru python care va semnaliza fără fir pinul 18 pe celălalt raspberry pi pentru a rula programul nostru.

Pasul 12: Scriptul Shell Doorbell

Scriptul Shell al clopoței
Scriptul Shell al clopoței
Scriptul Shell al clopoței
Scriptul Shell al clopoței

Acest script va fi aproape identic cu celelalte două. De la terminal introduceți cd / home / pi apoi introduceți. sudo mkdir / home / pi / bin apoi introduceți. cd / home / pi / bin apoi introduceți. sudo nano doorbell.sh apoi introduceți.

#! / bin / bash

cd /

cd acasă / pi

sudo python3 doorbell.py

cd /

Apoi salvați cu cntrl și x apoi Y apoi introduceți. Apoi sudo chmod + x /home/pi/bindoorbell.sh apoi introduceți. apoi cd / home / pi apoi introduceți. Apoi sudo crontab -e apoi introduceți selectați nano, apoi introduceți. În partea de jos introduceți

@reboot sh /home/pi/bin/doorbell.sh apoi salvați cu cntrl și x apoi Y apoi introduceți. Aceasta va rula scriptul shell la pornire și apoi vom crea un script python cu soneria din față atașată care, atunci când este apăsată, va semnala celălalt pi zmeură.

Pasul 13: Script Python Doorbell

Script Python Doorbell
Script Python Doorbell

Acesta este scriptul care va permite comunicarea fără fir între soneria din față și clopotul pe care l-am creat. Scriptul pentru a rula audio pe primul Raspberry pi rulează pe baza tensiunii joase. Este setat la nivel înalt, astfel încât odată ce se schimbă, rulează scriptul clipește lumina și redă sunetul. Acest script trimite un semnal scăzut către acel Raspberry pi și către acel pin, apoi îl setează înapoi la înalt, astfel încât să ruleze o dată când este apăsat. Scriptul este după cum urmează:

din LED-ul de import gpiozero

din butonul de importare gpiozero

din gpiozero.pins.pigpio import PiGPIOFactory

din pauza de import a semnalului

timpul de import

factory = PiGPIOFactory (gazdă = '192.168.1.13')

led = LED (18, pin_factory = factory)

buton = Buton (3)

în timp ce este adevărat:

dacă button.is_pressed:

led.off ()

A condus la()

altceva:

A condus la()

Modulul LED nu este utilizat pentru led, doar semnalizând acel pin de pe primul Raspberry pi care rulează programul. Odată ce acest lucru este salvat în directorul / hom / pi și de când shell-ul pentru a porni acesta a fost deja creat. Acum putem opri ambele Raspberry pi cu oprire sudo -h acum. Apoi, primul Raspberry pi trebuie să fie pornit mai întâi, care din cauza intrării crontab va porni pigpiodul care trebuie să înceapă mai întâi. Apoi, al doilea pi de zmeură pentru sonerie poate fi pornit. Apoi, atâta timp cât lipirea butonului fizic este realizată corect și conectată corect. O apăsare de buton va porni ledul și sunetul.

*** Este necesar un difuzor sau sunetul nu va funcționa. Am găsit online o placă de sunet care atrage puterea de la Raspberry pi prin portul USB. Ceea ce este perfect, deci nu are nevoie de propria priză. Îl recomand. Ieșirea audio se face prin mufa de 3,5 mm. Placa de sunet va fi conectată la clopotul Raspberry pi prin orificiul pe care l-am făcut în carcasă și un fir va intra în mufa de 3,5 mm, iar cealaltă în USB. Audi implicit este portul HDMI, deci trebuie să forțați pi în mufa de 3,5 mm. Acest lucru se face de la terminal cu sudo raspi-config apoi introduceți. Se va afișa un meniu selectați opțiuni avansate, apoi audio, apoi 3,5 mm, apoi salvați și ieșiți. După ce ați făcut acest lucru și difuzorul dvs. este conectat, puteți testa clopotul de câteva ori, ați terminat singurul lucru care rămâne este să conectați soneria Raspberry pi în casă.

Pasul 14: Convertor de putere

Convertor de putere
Convertor de putere
Convertor de putere
Convertor de putere

Acesta este ultimul pas. Mai întâi asigurați-vă că sunetul Raspberry pi este pornit. În spatele soneriei actuale există două fire pozitive și negative. Tensiunea este de 10 sau 12 volți. Ceea ce veți avea nevoie este un convertor de putere care convertește acest lucru la 5 volți, ceea ce folosește Raspberry pi. Dacă vă uitați la capetele cablurilor jumper pe care le-am folosit, capetele sunt din aluminiu feminin și masculin, cu un capac pe el. Puteți obține aceste capete de la sine în seturi pentru a vă crea propriile cabluri. Alegeți de ce parte doriți să fiți femeie și bărbat, banda care trebuie să fie înapoi pentru a expune cuprul. Apoi puneți capetele femele pe firele casei sau invers. Apoi, convertorul de putere are și două fire. Roșu pentru pozitiv și negru pentru negativ. Acum facem același lucru pentru a scoate firele înapoi pentru a expune cuprul. Așezați capetele masculine pe ele și folosiți cleștele pentru a le sertiza. Puteți așeza capacele de plastic dacă doriți. Apoi, puteți conecta convertorul de putere la firele casei. Pozitiv la pozitiv și negativ la negativ. Puteți fixa această conexiune cu bandă electrică, astfel încât să reziste mai bine. Dacă se face corect când conectați capătul 5v la Raspberry pi, acesta se va porni. Puteți testa dacă soneria funcționează apăsând butonul. Sunetul sonor ar trebui să pornească. Odată ce a făcut acest lucru, puteți plasa convertorul de putere, soneria Raspberry pi în interiorul orificiului de perete din spatele soneriei anterioare. Folosiți șuruburi pentru a înșuruba noul capac al soneriei. Acum, oricine apasă pe soneria din față, Tardis va clipi, apoi va reda sunetul, apoi va clipi din nou. Acest lucru poate fi realizat tehnic cu orice sunet și orice caz. Următorul pe care îl voi construi va fi unul Darth Vader. Clădire fericită

Recomandat: