Sisukord:

TfCD - pluss: 7 sammu
TfCD - pluss: 7 sammu

Video: TfCD - pluss: 7 sammu

Video: TfCD - pluss: 7 sammu
Video: StarCrete: Вы не поверите, из чего сделан бетон будущего! 2024, November
Anonim
Image
Image
Koostisosad
Koostisosad

Plus on minimaalne nutivalgusti, mis mitte ainult ei teavita inimesi ilmastikutingimustest, vaid loob ka kasutajatele nauditava kogemuse, muutes valguse värvi, pöörates seda plussmärki. Selle kuju annab kasutajale võimaluse ühendada mitu plussmoodulit või luua tohutu lamp, millel on palju sõprade paigutatud plussosasid. See valgustusprojekt on osa TU Delfti ülikooli Advanced Concept Design (ACD) kursusest ja tehnoloogia, mis on rakendatud TfCD praktilise inspiratsiooniallikana.

Samm: koostisosad

Koostisosad
Koostisosad
Koostisosad
Koostisosad

1 Vaarika pi null w

1 Groove Adxl345 kiirendusmõõtur

4 Ws2812b LED

1 Prototüüpimislaud

3D trükitud ja laserlõigatud korpused

Samm: riistvara

Riistvara
Riistvara
Riistvara
Riistvara
Riistvara
Riistvara
Riistvara
Riistvara

LEDid

Neopixeli LED -idel on neli tihvti nimega: +5V, GND, Data In ja Data out.

  1. Vaarika pi tihvt 4 on ühendatud kõigi LED -ide +5V -ga
  2. Vaarika pi tihvt 6 on ühendatud kõigi valgusdioodide GND -ga
  3. Andmed esimese LED -i tihvt on ühendatud vaarika pi piiguga 12.
  4. Esimese valgusdioodi andmeväljundi tihvt on ühendatud teise sisendiga ja nii edasi.

Parema arusaamise saamiseks vaadake palun ühendusskeemi.

Kiirendusmõõtur

Kiirendusmõõturil on 4 tihvti nimega: VCC, GND, SDA ja SCL.

  1. Vaarika pi tihvt 1 on ühendatud VCC -ga.
  2. Vaarika pi tihvt 3 on ühendatud SCL -iga.
  3. Vaarika pi tihvt 5 on ühendatud SDA -ga.
  4. Vaarika pi tihvt 9 on ühendatud GND -ga.

Ehitamine

  1. Mugavuse huvides saab valgusdioodid jootma prototüüpimisplaadile. Oleme otsustanud plaadi lõigata plusskujuliseks, et see sobiks hästi 3D -kujundatud korpuse sisse.
  2. Kui oleme plaadil olevad valgusdioodid jootnud, jootame hüppajajuhtmed, et luua ühendused 0,1-tollise päiseühenduse ja valgusdioodide vahel. Päisepistikut kasutatakse vaarika pi lahtiühendamiseks ja edaspidiseks kasutamiseks.

Samm: tarkvara

Tarkvara
Tarkvara

Raspberry Pi operatsioonisüsteemi pilt

Peame kõigepealt Raspberry Pi tööle panema. Selleks toimime järgmiselt.

  1. Laadige Raspbiani uusim versioon alla siit. Saate selle alla laadida otse või torrentide kaudu. Teil on vaja pildikirjutajat, et kirjutada allalaaditud operatsioonisüsteem SD -kaardile (micro SD -kaart Raspberry Pi B+ mudeli ja Raspberry Pi Zero puhul).
  2. Nii et laadige siit alla "win32 kettakujutis". Sisestage SD -kaart sülearvutisse/arvutisse ja käivitage pildikirjutaja. Pärast avamist sirvige ja valige allalaaditud Raspbiani pildifail. Valige õige seade, see on SD -kaarti esindav draiv. Kui valitud draiv (või seade) erineb SD -kaardist, saab teine valitud draiv rikutud. Nii et ole ettevaatlik.
  3. Pärast seda klõpsake allosas nuppu "Kirjuta". Näitena vaadake allolevat pilti, kus SD -kaardi (või mikro -SD) draivi tähistab täht "G: \". OS on nüüd normaalseks kasutamiseks valmis. Kuid selles õpetuses kasutame Raspberry Pi peata režiimis. See tähendab, et ilma selle külge kinnitatud füüsilise monitori ja klaviatuurita!
  4. Pärast SD -kaardi põletamist ärge eemaldage seda arvutist! SD -kaardil oleva faili config.txt avamiseks kasutage tekstiredaktorit. Minge alla ja lisage viimasele reale dtoverlay = dwc2:
  5. Salvestage fail config.txt lihttekstina ja avage seejärel cmdline.txt Pärast rootwait'i (esimene sõna esimesel real) lisage tühik ja seejärel modules-load = dwc2, g_ether.
  6. Nüüd eemaldage SD -kaart arvutist ja sisestage see Raspberry Pi -sse ning ühendage see USB -kaabli abil arvutiga. Kui OS on käivitunud, peaksite nägema uut Etherneti vidina seadet.
  7. Tahvliga ühenduse loomiseks ja selle kaugjuhtimiseks saate kasutada aadressi ssh [email protected]. Peata töötamise kohta leiate täpsemaid juhiseid siit.

Raamatukogu rpi_ws281x on võti, mis võimaldab NeoPixelite kasutamist koos Raspberry Pi -ga.

Kõigepealt peame installima teegi koostamiseks vajalikud tööriistad. Raspberry Pi käivitamisel: sudo apt-get update && sudo apt-get install build-essential python-dev git scons swig Nüüd käivitage teegi allalaadimiseks ja kompileerimiseks need käsud:

git kloon https://github.com/jgarff/rpi_ws281x.git && cd rpi_ws281x && scons Lõpuks, pärast teegi edukat koostamist saame selle pythoni jaoks installida, kasutades järgmist:

cd python && sudo python setup.py install Nüüd tuleb pythoni kood, mis juhib LED -e. Kood on üsna lihtne ja mõned kommentaarid aitavad teid välja. neopikslite impordist * # NeoPixeli konfiguratsioonid LED_PIN = 18 # Raspberry Pi GPIO -nööp, mis on ühendatud pikslitega 5, vale, LED_BRIGHTNESS, 0, ws. WS2811_STRIP_GRB) # Teeki riba initsialiseerimine.begin () strip.setPixelColor (0, värv (255, 255, 255)) strip.show ()

ADXL345 draiver

Meie valitud kiirendusmõõturi anduril on I2C liides välismaailmaga suhtlemiseks. Meie õnneks on Raspberry Pi -l ka I2C liides. Peame lihtsalt lubama tal seda oma koodis kasutada.

Helistage Raspbiani seadistustööriistale, kasutades sudo raspi-config. Pärast käivitamist minge liidesesuvandite, täpsemate suvandite ja seejärel lubage I2C. Installige vastavad pythoni moodulid, et saaksime pythonis kasutada I2C -liidest:

sudo apt-get install python-smbus i2c-tools Järgnev python-kood võimaldab meil kiirendusmõõturi anduriga suhelda ja selle registriväärtusi lugeda. import smbus import struktuur Ribalaius 6,5 Hz bus.write_byte_data (aadress, 45, 0x08) # Minge mõõtmisrežiimi # Andmete lugemine buf = bus.read_i2c_block_data (aadress, 50, 6) # Pakkige andmed int16_t -st python täisarvuni data = structure.unpack_from ("> hhh", puhver (bytearray (buf)), 0)

x = ujuk (andmed [0]) * võimendus

y = ujuk (andmed [1]) * võimendus

z = ujuk (andmed [2]) * võimendus

Liikumise detektor

Üks meie toodetud valguse omadustest on see, et see suudab tuvastada liikumist (või selle puudumist), et siseneda interaktiivsesse režiimi (kus valgus muutub pöörlemise põhjal) ja ilmateate režiimi (kus valgus muutub sõltuvalt ilmateadetest) tänaseks). Järgmine kood kasutab eelmist funktsiooni, et lugeda 3-telje kiirendusväärtusi ja hoiatada meid liikumise korral.

accel = getAcceleration ()

dx = abs (prevAccel [0] - accel [0])

dy = abs (prevAccel [1] - accel [1])

dz = abs (prevAccel [2] - accel [2])

kui dx> moveThreshold või dy To> moveThreshold või dz> moveThreshold:

trükk "teisaldatud"

liigutatud = tõsi

muidu:

liigutatud = vale

Weather API

Ilmateate saamiseks saame kasutada Yahoo Weather'i. See hõlmab rääkimist Yahoo Weather Rest API -ga, mis võib olla üsna keeruline. Meie õnneks kõva osa eest hoolitsetakse juba pythonile mõeldud ilm-api mooduli näol.

  1. Kõigepealt peame selle mooduli installima, kasutades järgmist: sudo apt install python-pip && sudo pip install weather-api
  2. Selle mooduli kohta lisateabe saamiseks külastage autori veebisaiti.

Pärast installimist saab järgmine kood selle hetke ilmastikutingimused

ilmastiku impordist Weatherweather = Ilm ()

asukoht = weather.lookup_by_location ('dublin')

tingimus = asukoht. tingimus ()

print (condition.text ())

Kõike kokku panema

Kogu projekti kood, mis ühendab kõik ülaltoodud osad, leiate siit.

Pythoni skripti automaatne käivitamine alglaadimise ajal

Vaarika pi kasti panemiseks ja selle käivitamiseks meie koodi iga kord, kui selle vooluvõrku ühendame, peame veenduma, et kood käivitatakse automaatselt alglaadimise ajal. Selleks kasutame tööriista nimega cron.

  1. Esmalt helistage croni tööriistale, kasutades: sudo crontab -e
  2. Eelmised sammud avavad konfiguratsioonifaili, kuhu lisame järgmise rea:

    @reboot python /home/pi/light.py &

4. samm: modelleerimine ja 3D -printimine

Modelleerimine ja 3D printimine
Modelleerimine ja 3D printimine
Modelleerimine ja 3D printimine
Modelleerimine ja 3D printimine

Plusi 3D -mudel on tehtud Solidworksis ja salvestatud. Stl -vormingus. Seejärel imporditi mudeli 3D -printimiseks. Stl -fail Cura tarkvarasse. Plusside kummagi poole valmistamiseks kulus 2:30 tundi; nii et iga täis Plusi printimiseks kulus umbes 5 tundi. Ja läbipaistvate külgede jaoks lõigati pleksiklaas laseriga.

Samm: kokkupanek

Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek

3D -trükitud osa, elektroonika ja tarkvara käepärast, saame lõpuks lõpptoote kokku panna.

  1. Leidsime, et 3D -trükitud ülemised ja alumised plaadid on oodatust läbipaistvamad. Alumiiniumfooliumi kiht lahendas valguse lekke probleemi.
  2. Need lehed on aga juhtivad ja võivad meie kaitsmata vooluringis põhjustada lühiseid. Nii et peal on liimitud veel üks valge kaardi kiht.
  3. Hajutatud pleksiklaasist segmendid on liimitud ühe külgplaadi külge.
  4. Ühele külgmisele 3D -prinditud paneelile puuritakse auk. Seda selleks, et saaksime toitejuhtmest läbi minna.
  5. Kui toitejuhe on augu kaudu paigaldatud, jootame selle oma prototüüpplaadile.
  6. Kinnitame anduri vaarika pi külge ja seejärel ühendame selle pistikuga.
  7. Lõpptoote saamiseks ühendame 2 tükki kokku.
  8. Soovi korral saate 2 tükki liimida, et luua püsivam ühendus. Pidage siiski meeles, et kui soovite koodi hiljem muuta, võib pärast selle liimimist olla raske karpi pääseda.

Soovitan: