Isi kandungan:
- Langkah 1: Bahan
- Langkah 2: Perkakasan
- Langkah 3: Perisian
- Langkah 4: Pemodelan dan Cetakan 3D
- Langkah 5: Perhimpunan
- Langkah 6: Ujian Akhir
Video: TfCD - Plus: 7 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Plus adalah cahaya pintar minimum, yang tidak hanya memberi tahu orang tentang keadaan cuaca, tetapi juga menciptakan pengalaman yang menyenangkan bagi pengguna dengan perubahan yang dilakukan dalam warna cahaya dengan memutar nilai tambah. Bentuknya memberi pengguna peluang untuk menggabungkan beberapa modul tambah atau membuat lampu besar dengan banyak potongan tambah yang ditempatkan oleh rakan. Projek pencahayaan ini adalah sebahagian daripada kursus Advanced Concept Design (ACD) di universiti TU Delft, dan teknologi yang dilaksanakan dengan menggunakan praktik TfCD sebagai sumber inspirasi.
Langkah 1: Bahan
1 Raspberry pi sifar w
1 pecutan Groove Adxl345
LED 4 Ws2812b
1 Papan prototaip
Kandang cetak 3D dan potong laser
Langkah 2: Perkakasan
LED
LED Neopixel mempunyai 4 pin bernama: + 5V, GND, Data In dan Data out.
- Pin 4 raspberry pi disambungkan ke + 5V semua LED
- Pin 6 dari raspberry pi disambungkan ke GND semua LED
- Data In pin LED pertama disambungkan ke pin 12 pada raspberry pi.
- Pin keluar Data dari LED pertama disambungkan ke Data di kedua dan seterusnya.
Lihat rajah pendawaian untuk pemahaman yang lebih baik.
Pecut
Accelerometer mempunyai 4 pin bernama: VCC, GND, SDA dan SCL.
- Pin 1 dari raspberry pi disambungkan ke VCC.
- Pin 3 dari raspberry pi disambungkan ke SCL.
- Pin 5 raspberry pi disambungkan ke SDA.
- Pin 9 dari raspberry pi disambungkan ke GND.
Membina
- Untuk kemudahan, LED boleh disolder ke papan prototaip. Kami telah memutuskan untuk memotong papan menjadi bentuk tambah sehingga sesuai dengan casing yang dirancang 3D.
- Sebaik sahaja kami menyolder LED di papan, kami memasang kabel jumper untuk membuat sambungan antara penyambung header 0.1 "dan LED. Penyambung header digunakan untuk membolehkan pi raspberry terputus dan digunakan semula untuk projek yang akan datang.
Langkah 3: Perisian
Imej Sistem Operasi Raspberry Pi
Mula-mula kita perlu menghidupkan Raspberry Pi dan berjalan. Untuk melakukan ini, kami mengikuti langkah-langkah berikut:
- Muat turun versi terbaru Raspbian dari sini. Anda boleh memuat turunnya secara langsung atau melalui torrents. Anda memerlukan penulis gambar untuk menulis OS yang dimuat turun ke dalam kad SD (kad micro SD sekiranya model Raspberry Pi B + dan Raspberry Pi Zero).
- Oleh itu, muat turun "win32 disk imager" dari sini. Masukkan kad SD ke dalam komputer riba / komputer dan jalankan penulis gambar. Setelah dibuka, semak dan pilih fail gambar Raspbian yang dimuat turun. Pilih peranti yang betul, iaitu pemacu yang mewakili kad SD. Sekiranya pemacu (atau peranti) yang dipilih berbeza dari kad SD maka pemacu yang dipilih yang lain akan menjadi rosak. Jadi berhati-hati.
- Selepas itu, klik pada butang "Tulis" di bahagian bawah. Sebagai contoh, lihat gambar di bawah, di mana pemacu kad SD (atau mikro SD) diwakili oleh huruf "G: \" OS sekarang siap untuk penggunaan biasa. Namun dalam tutorial ini kita akan menggunakan Raspberry Pi dalam mod tanpa kepala. Ini bermaksud tanpa monitor fizikal dan papan kekunci yang terpasang padanya!
- Setelah membakar kad SD, jangan keluarkan dari komputer anda! Gunakan penyunting teks untuk membuka fail config.txt yang terdapat dalam kad SD. Pergi ke bahagian bawah dan tambahkan dtoverlay = dwc2 sebagai baris terakhir:
- Simpan fail config.txt sebagai teks biasa dan kemudian buka cmdline.txt Setelah rootwait (kata terakhir pada baris pertama) tambahkan ruang dan kemudian modul-load = dwc2, g_ether.
- Sekarang keluarkan kad SD dari PC anda dan masukkan ke Raspberry Pi dan sambungkan ke PC anda menggunakan kabel USB. Setelah OS dimuat, anda akan melihat peranti Ethernet Gadget baru ditemui.
- Anda boleh menggunakan ssh [email protected] untuk menyambung ke papan dan mengawalnya dari jauh. Untuk arahan yang lebih terperinci mengenai operasi tanpa kepala pergi ke sini. Pemandu Neopixel
Perpustakaan rpi_ws281x adalah kunci yang memungkinkan penggunaan NeoPixels dengan Raspberry Pi.
Pertama kita perlu memasang alat yang diperlukan untuk menyusun perpustakaan. Dalam Raspberry Pi anda jalankan: sudo apt-get update & sudo apt-get install build-essential python-dev git scons swig Sekarang jalankan arahan ini untuk memuat turun dan menyusun perpustakaan:
git clone https://github.com/jgarff/rpi_ws281x.git && cd rpi_ws281x && scons Akhirnya, setelah perpustakaan berjaya disusun, kita dapat memasangnya untuk python menggunakan:
cd python && sudo python setup.py install Sekarang datang kod python yang memacu LED. Kodnya agak mudah dengan beberapa komen untuk membantu anda. dari import neopixel * # Konfigurasi NeoPixel LED_PIN = 18 # Pin GPIO Raspberry Pi yang disambungkan ke piksel LED_BRIGHTNESS = 255 # Tetapkan ke 0 untuk paling gelap dan 255 untuk LED paling terang_COUNT = 4 # Bilangan jalur piksel LED = Adafruit_NeoPixel (LED_COUNT, LED_PIN, 800000, 800000, 5, False, LED_BRIGHTNESS, 0, ws. WS2811_STRIP_GRB) # Permulaan jalur perpustakaan.begin () strip.setPixelColor (0, Color (255, 255, 255)) strip.show ()
Pemandu ADXL345
Sensor pecutan yang telah kami pilih mempunyai antaramuka I2C untuk berkomunikasi dengan dunia luar. Nasib baik untuk kami, Raspberry Pi juga mempunyai antara muka I2C. Kita hanya perlu mengaktifkannya untuk menggunakan kod kita sendiri.
Panggil alat konfigurasi Raspbian menggunakan sudo raspi-config. Setelah berjalan, pergi ke Interfacing Options, Advanced Options dan kemudian aktifkan I2C. Pasang modul python yang berkaitan supaya kita dapat menggunakan antara muka I2C dalam python:
sudo apt-get install python-smbus i2c-tools Kod python berikut membolehkan kita berkomunikasi dengan sensor pecutan dan membaca nilai daftarnya untuk tujuan kita sendiri. import smbus import struct # Accelerometer configurations bus = smbus. SMBus (1) address = 0x53 gain = 3.9e-3 bus.write_byte_data (address, 45, 0x00) # Pergi ke mod tunggu sedia bus.write_byte_data (alamat, 44, 0x06) # Bandwidth 6.5Hz bus.write_byte_data (address, 45, 0x08) # Pergi ke mod pengukuran # Membaca data dari sensor buf = bus.read_i2c_block_data (alamat, 50, 6) # Membongkar data dari int16_t ke python integer data = struct.unpack_from ("> hhh", penyangga (bytearray (buf)), 0)
x = terapung (data [0]) * perolehan
y = terapung (data [1]) * perolehan
z = terapung (data [2]) * perolehan
Pengesan Pergerakan
Salah satu ciri cahaya yang kita buat, adalah ia dapat mengesan pergerakan (atau kurang) memasuki mod interaktif (di mana cahaya berubah berdasarkan putaran) dan mod ramalan cuaca (di mana cahaya berubah bergantung pada ramalan cuaca untuk hari ini). Kod berikut menggunakan fungsi sebelumnya untuk membaca nilai pecutan bagi 3-paksi dan memberi tahu kita apabila terdapat pergerakan.
accel = getAcceleration ()
dx = abs (prevAccel [0] - accel [0])
dy = abs (prevAccel [1] - accel [1])
dz = abs (prevAccel [2] - accel [2])
jika dx> moveThreshold atau dy To> moveThreshold atau dz> moveThreshold:
cetak 'dipindahkan'
bergerak = Benar
lain:
dipindahkan = Salah
API Cuaca
Untuk menerima ramalan cuaca, kita dapat menggunakan Yahoo Weather. Ini melibatkan bercakap dengan Yahoo Weather Rest API yang agak rumit. Nasib baik bagi kami, bahagian yang sukar sudah dijaga dalam bentuk modul cuaca-api untuk python.
- Mula-mula kita perlu memasang modul ini menggunakan: sudo apt install python-pip && sudo pip install weather-api
- Sila lawati laman web pengarang untuk maklumat lebih lanjut mengenai modul ini.
Setelah memasang kod berikut mendapat keadaan cuaca buat masa ini
dari import cuaca Weatherweather = Cuaca ()
location = weather.lookup_by_location ('dublin')
condition = location.condition ()
cetak (condition.text ())
Menggabungkan semuanya
Seluruh kod untuk projek yang menghubungkan semua bahagian di atas boleh didapati di sini.
Memulakan skrip python secara automatik pada waktu boot
Untuk dapat memasukkan raspberry pi ke dalam kotak dan memilikinya menjalankan kod kita setiap kali kita menyambungkannya ke kuasa, kita mesti memastikan bahawa kod itu dimulakan secara automatik semasa boot. Untuk melakukan ini, kami menggunakan alat yang dipanggil cron.
- Mula-mula memanggil alat cron menggunakan: sudo crontab -e
-
Langkah-langkah sebelumnya akan membuka fail konfigurasi, di mana kita menambah baris berikut:
@reboot python /home/pi/light.py &
Langkah 4: Pemodelan dan Cetakan 3D
Model 3D Plus telah dibuat dalam Solidworks, dan disimpan dalam format. Stl. Kemudian untuk mencetak 3D model, file. Stl diimport dalam perisian Cura. Setiap sisi tambah memerlukan 2:30 jam untuk menghasilkan; jadi setiap Plus penuh mengambil masa sekitar 5 jam untuk dicetak. Dan untuk bahagian yang telus, plexiglass dipotong dengan laser.
Langkah 5: Perhimpunan
Dengan bahagian bercetak 3D, elektronik dan perisian yang ada, akhirnya kita dapat mengumpulkan produk akhir.
- Plat atas dan bawah yang dicetak 3D, didapati lebih telus daripada yang dijangkakan. Lapisan aluminium foil menyelesaikan masalah kebocoran cahaya.
- Walau bagaimanapun, helaian ini bersifat konduktif dan boleh menyebabkan seluar pendek dalam litar kami yang tidak dilindungi. Sehingga lapisan papan kad putih dilekatkan di atas.
- Segmen Plexiglas yang tersebar terpaku pada salah satu plat sisi.
- Lubang digerudi di salah satu panel bercetak 3D sisi. Ini supaya kita dapat melalui kabel kuasa.
- Sekali, kabel kuasa dipasang melalui lubang, kami memasangkannya ke papan prototaip kami.
- Kami memasang sensor ke pi raspberry dan kemudian memasangkannya ke penyambung.
- Kami melekatkan 2 kepingan tersebut untuk mendapatkan produk akhir kami.
- Sebagai pilihan, anda boleh melekatkan 2 bahagian untuk membuat sambungan yang lebih kekal. Namun perlu diketahui bahawa mungkin sukar untuk masuk ke dalam kotak setelah terpaku jika anda ingin menukar kodnya kemudian.
Disyorkan:
HAIKU, Ketika Fesyen dan Teknologi Bergabung Bersama. Projek TfCD. TU Delft .: 4 Langkah
HAIKU, Ketika Fesyen dan Teknologi Bergabung Bersama. Projek TfCD. TU Delft: Haiku adalah konsep yang dikembangkan oleh Mucahit Aydin untuk kursus TU Delft MSc. Prinsip utama kimono ini adalah memperluas perasaan dipeluk oleh seseorang. Untuk melakukannya, kimono akan menampakkan corak setelah disentuh. Bagaimana? Dengan melaksanakan
Simpan dan Pulihkan Nilai Pratetap Dengan NFC (TfCD): 4 Langkah
Simpan dan Pulihkan Nilai Pratetap Dengan NFC (TfCD): Kami ingin menguji bagaimana ia berfungsi untuk menyesuaikan nilai atau tetapan tertentu dan kemudian mengingat semula tetapan ini. Untuk eksperimen ini, kami menggunakan tag NFC untuk membaca dan kemudian menyimpan nilai di atasnya. Nanti tag dapat diimbas semula dan menghantar kembali nilai untuk mengembalikan cer
Panel Lampu Custom Boleh Dipakai (Kursus Penerokaan Teknologi - TfCD - Tu Delft): 12 Langkah (dengan Gambar)
Panel Lampu Custom Boleh Dipakai (Kursus Eksplorasi Teknologi - TfCD - Tu Delft): Dalam Instruksional ini anda akan belajar bagaimana membuat gambar anda sendiri yang boleh anda pakai! Ini dilakukan dengan menggunakan teknologi EL yang ditutup dengan pelekat vinil dan melekatkan jalur ke dalamnya sehingga anda dapat memakainya di lengan anda. Anda juga boleh menukar bahagian p
Pengesanan Objek Visual Dengan Kamera (TfCD): 15 Langkah (dengan Gambar)
Pengesanan Objek Visual Dengan Kamera (TfCD): Perkhidmatan kognitif yang dapat mengenali emosi, wajah orang atau objek sederhana pada masa ini masih pada tahap awal pengembangan, tetapi dengan pembelajaran mesin, teknologi ini semakin berkembang. Kita boleh melihat lebih banyak sihir ini dalam
Projek E-tekstil: T-shirt Sweat Light (TfCD): 7 Langkah (dengan Gambar)
Projek E-tekstil: T-shirt Sweat Light (TfCD): Tekstil elektronik (E-tekstil) adalah kain yang membolehkan komponen digital dan elektronik tertanam di dalamnya. Teknologi baru ini muncul dengan banyak kemungkinan. Dalam projek ini, anda akan membuat prototaip baju sukan yang mengesan bagaimana