Innholdsfortegnelse:
- Trinn 1: Ingredienser
- Trinn 2: Maskinvare
- Trinn 3: Programvare
- Trinn 4: Modellering og 3D -utskrift
- Trinn 5: Montering
- Trinn 6: Sluttest
Video: TfCD - Pluss: 7 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Plus er et minimalt smart lys, som ikke bare varsler folk om værforholdene, men også skaper en hyggelig opplevelse for brukerne av endringene i lysfargen ved å rotere pluss. Formen gir brukeren muligheten til å kombinere flere plussmoduler eller lage en stor lampe med mange plussstykker plassert av venner. Dette belysningsprosjektet er en del av Advanced Concept Design (ACD) -kurset ved TU Delft universitet, og teknologien implementert ved å bruke TfCD praktisk som inspirasjonskilde.
Trinn 1: Ingredienser
1 Bringebær pi zero w
1 Groove Adxl345 akselerometer
4 Ws2812b LED
1 prototypebrett
3D-trykte og laserskårne skap
Trinn 2: Maskinvare
Lysdioder
Neopixel -lysdiodene har 4 pinner som heter: +5V, GND, Data In og Data out.
- Pin 4 av bringebær pi er koblet til +5V på alle lysdioder
- Pin 6 av bringebær pi er koblet til GND for alle lysdioder
- Data I pinnen til den første lysdioden er koblet til pinne 12 på bringebær -pi.
- Data out -pinnen til den første LED -en er koblet til Data in i den andre og så videre.
Ta en titt på koblingsskjemaet for en bedre forståelse.
Akselerometer
Akselerometeret har 4 pinner kalt: VCC, GND, SDA og SCL.
- Pin 1 av bringebær pi er koblet til VCC.
- Pin 3 av bringebær pi er koblet til SCL.
- Pin 5 av bringebær pi er koblet til SDA.
- Pin 9 av bringebær pi er koblet til GND.
Bygge
- For enkelhets skyld kan lysdiodene loddes på et prototypebrett. Vi har besluttet å kutte brettet i form av et pluss slik at det passer godt inn i 3D -designet etui.
- Når vi har loddet lysdiodene på brettet, lodder vi jumperkabler for å lage forbindelsene mellom en 0,1 "topptekst og LED-ene. Overskriftskontakten brukes til å la bringebær-pi kobles fra og brukes på nytt for et fremtidig prosjekt.
Trinn 3: Programvare
Raspberry Pi -operativsystembilde
Vi må først få Raspberry Pi i gang. For å gjøre dette følger vi disse trinnene:
- Last ned den siste versjonen av Raspbian herfra. Du kan laste den ned direkte eller via torrents. Du trenger en bildeskriver for å skrive det nedlastede operativsystemet til SD -kortet (micro SD -kort i tilfelle Raspberry Pi B+ -modell og Raspberry Pi Zero).
- Så last ned "win32 diskavbilderen" herfra. Sett inn SD -kortet i den bærbare datamaskinen og kjør bildeskriveren. Når den er åpen, bla gjennom og velg den nedlastede Raspbian -bildefilen. Velg riktig enhet, det vil si stasjonen som representerer SD -kortet. Hvis stasjonen (eller enheten) som er valgt er forskjellig fra SD -kortet, blir den andre valgte stasjonen ødelagt. Så vær forsiktig.
- Deretter klikker du på "Skriv" -knappen nederst. Som et eksempel, se bildet nedenfor, der SD -kort (eller micro SD) -stasjonen er representert med bokstaven "G: \" Operativsystemet er nå klart for normal bruk. I denne opplæringen skal vi imidlertid bruke Raspberry Pi i hodeløs modus. Dette betyr at uten en fysisk skjerm og tastatur festet til den!
- Etter å ha brent SD -kortet, må du ikke kaste det ut fra datamaskinen! Bruk et tekstredigeringsprogram til å åpne filen config.txt som er på SD -kortet. Gå til bunnen og legg til dtoverlay = dwc2 som siste linje:
- Lagre config.txt-filen som ren tekst, og åpne deretter cmdline.txt Etter rootwait (det siste ordet på første linje) legg til et mellomrom og deretter modules-load = dwc2, g_ether.
- Fjern nå SD -kortet fra PC -en og sett det inn i Raspberry Pi og koble det til PC -en med en USB -kabel. Når operativsystemet har startet opp, bør du se en ny Ethernet Gadget -enhet bli oppdaget.
- Du kan bruke ssh [email protected] til å koble til kortet og styre det eksternt. For mer detaljerte instruksjoner angående bruk av hodeløs bruk her. Neopixel Driver
Rpi_ws281x -biblioteket er nøkkelen som gjør det mulig å bruke NeoPixels med Raspberry Pi.
Først må vi installere verktøyene som trengs for å kompilere biblioteket. I din Raspberry Pi-kjøring: sudo apt-get update && sudo apt-get install build-essential python-dev git scons swig Kjør nå disse kommandoene for å laste ned og kompilere biblioteket:
git clone https://github.com/jgarff/rpi_ws281x.git && cd rpi_ws281x && scons Til slutt, etter at biblioteket ble kompilert, kan vi installere det for python ved å bruke:
cd python && sudo python setup.py install Nå kommer pythonkoden som driver lysdiodene. Koden er ganske enkel med noen kommentarer for å hjelpe deg. fra neopikselimport * # NeoPixel -konfigurasjoner LED_PIN = 18 # Raspberry Pi's GPIO -pin koblet til pikslene LED_BRIGHTNESS = 255 # Sett til 0 for mørkeste og 255 for lyseste LED_COUNT = 4 # Antall LED -piksler stripe = Adafruit_NeoPixel (LED_COUNT, LED_PIN, 800000, 5, False, LED_BRIGHTNESS, 0, ws. WS2811_STRIP_GRB) # Initialize the library strip.begin () strip.setPixelColor (0, Color (255, 255, 255)) strip.show ()
ADXL345 driver
Akselerometersensoren som vi har valgt har en I2C -interfae for kommunikasjon med omverdenen. Heldigvis for oss har Raspberry Pi også I2C -grensesnitt. Vi trenger bare å la den bruke den i vår egen kode.
Ring til Raspbian-konfigurasjonsverktøyet ved hjelp av sudo raspi-config. Når du har kjørt, går du til Grensesnittalternativer, Avanserte alternativer og aktiverer deretter I2C. Installere de relevante python -modulene slik at vi kan bruke I2C -grensesnittet i python:
sudo apt-get install python-smbus i2c-tools Følgende python-kode lar oss kommunisere med akselerometersensoren og lese dens registerverdier for våre egne formål. import smbus import struct # Akselerometer konfigurasjoner buss = smbus. SMBus (1) adresse = 0x53 gain = 3.9e-3 buss.write_byte_data (adresse, 45, 0x00) # Gå til standby-modus buss.write_byte_data (adresse, 44, 0x06) # Båndbredde 6,5 Hz bus.write_byte_data (adresse, 45, 0x08) # Gå til målemodus # Les data fra sensoren buf = bus.read_i2c_block_data (adresse, 50, 6) # Pakk ut dataene fra int16_t til python -heltalldata = struct.unpack_from ("> hhh", buffer (bytearray (buf)), 0)
x = float (data [0]) * gevinst
y = float (data [1]) * gevinst
z = float (data [2]) * gevinst
Bevegelsesdetektor
En av funksjonene til lyset vi lager, er at det kan oppdage bevegelse (eller mangel på) for å gå inn i interaktiv modus (hvor lyset endres basert på rotasjon) og værmeldingsmodus (hvor lyset endres avhengig av værmeldingen for i dag). Følgende kode bruker den forrige funksjonen til å lese akselerasjonsverdiene for 3-aksene og varsle oss når det er bevegelse.
accel = getAcceleration ()
dx = abs (prevAccel [0] - accel [0])
dy = abs (prevAccel [1] - accel [1])
dz = abs (prevAccel [2] - accel [2])
hvis dx> moveThreshold eller dy Til> moveThreshold eller dz> moveThreshold:
trykk 'flyttet'
flyttet = Sant
ellers:
flyttet = Feil
Vær -API
For å motta værmeldinger kan vi bruke Yahoo Weather. Dette innebærer å snakke med Yahoo Weather Rest API som kan være ganske komplisert. Heldigvis for oss er den harde delen allerede ivaretatt i form av weather-api-modulen for python.
- Først må vi installere denne modulen ved å bruke: sudo apt install python-pip && sudo pip install weather-api
- Besøk forfatterens nettsted for mer informasjon om denne modulen.
Når du har installert, får følgende kode værforholdene for dette øyeblikket
fra værimport Weatherweather = Vær ()
location = weather.lookup_by_location ('dublin')
condition = location.condition ()
print (condition.text ())
Sette alt sammen
Hele koden for prosjektet som forbinder alle de ovennevnte delene finner du her.
Start automatisk python -skriptet ved oppstart
For å kunne sette bringebær -pi i en boks og la den kjøre koden vår hver gang vi kobler den til strømmen, må vi sørge for at koden starter automatisk under oppstart. For å gjøre dette bruker vi et verktøy som kalles cron.
- Ring først cron -verktøyet ved å bruke: sudo crontab -e
-
De foregående trinnene åpner en konfigurasjonsfil, der vi legger til følgende linje:
@reboot python /home/pi/light.py &
Trinn 4: Modellering og 3D -utskrift
3D -modellen til Plus er laget i Solidworks, og lagret som. Stl -format. For 3D -utskrift ble modellen. Stl -fil importert i Cura -programvaren. Hver side av plusset tok 2:30 timer å produsere; så hver full pluss tok omtrent 5 timer å skrive ut. Og for de gjennomsiktige sidene ble plexiglass laserskåret.
Trinn 5: Montering
Med den 3D -trykte delen, elektronikken og programvaren for hånden, kan vi endelig sette sammen det endelige produktet.
- De 3D -trykte topp- og bunnplatene, vi fant å være mer gjennomsiktige enn forventet. Et lag aluminiumsfolie løste problemet med lett lekkasje.
- Disse arkene er imidlertid ledende og kan forårsake shorts i vår ubeskyttede krets. Så et annet lag hvitt kartong er limt på toppen.
- De diffuse plexiglas -segmentene limes til en av sideplatene.
- Det bores et hull i et av sidene i 3D -trykte paneler. Dette er slik at vi kan passere gjennom strømledningen.
- Når strømledningen er satt gjennom hullet, lodder vi den på prototypebrettet.
- Vi fester sensoren til bringebær -pi og kobler den deretter til kontakten.
- Vi fester det to stykket sammen for å få vårt sluttprodukt.
- Eventuelt kan du lime det to stykket for å få en mer permanent tilkobling. Vær imidlertid oppmerksom på at det kanskje er vanskelig å komme inn i esken etter at den er limt fast hvis du vil endre koden senere.
Anbefalt:
HAIKU, når mote og teknologi smelter sammen. TfCD -prosjekt. TU Delft .: 4 trinn
HAIKU, når mote og teknologi smelter sammen. TfCD -prosjekt. TU Delft .: Haiku er et konsept utviklet av Mucahit Aydin for et TU Delft MSc -kurs. Hovedprinsippet for denne kimonoen er å utvide følelsen av å bli klemt av noen. For å gjøre det, vil kimonoen avsløre et mønster etter å ha blitt berørt. Hvordan? Av implementerer
Lagre og gjenopprett forhåndsinnstilte verdier med NFC (TfCD): 4 trinn
Lagre og gjenopprett forhåndsinnstilte verdier med NFC (TfCD): Vi vil teste hvordan det fungerer å justere en bestemt verdi eller innstilling og senere huske denne innstillingen. For dette eksperimentet brukte vi en NFC -tag for å lese og deretter lagre verdien på den. Senere kan taggen skannes igjen og sende verdien tilbake for å gjenopprette en cer
Bærbart tilpasset lyspanel (Technology Exploration Course - TfCD - Tu Delft): 12 trinn (med bilder)
Bærbart tilpasset lyspanel (Technology Exploration Course - TfCD - Tu Delft): I denne instruksjonsboken lærer du hvordan du lager ditt eget opplyste bilde som du kan ha på deg! Dette gjøres ved å bruke EL -teknologi dekket med et vinyldekal og feste bånd til den slik at du kan bære den rundt armen. Du kan også endre deler av denne siden
Visual Object Detection With a Camera (TfCD): 15 trinn (med bilder)
Visual Object Detection With a Camera (TfCD): Kognitive tjenester som kan gjenkjenne følelser, ansikter til mennesker eller enkle objekter er for tiden på et tidlig utviklingsstadium, men med maskinlæring utvikler denne teknologien seg stadig mer. Vi kan forvente å se mer av denne magien i
E-textile Project: Sweat Light T-shirt (TfCD): 7 trinn (med bilder)
E-tekstilprosjekt: Sweat Light T-shirt (TfCD): Elektroniske tekstiler (E-tekstiler) er tekstiler som gjør det mulig å legge digitale komponenter og elektronikk inn i dem. Denne nye teknologien har mange muligheter. I dette prosjektet skal du prototype en sportsskjorte som oppdager hvordan