Съдържание:
- Стъпка 1: Съставки
- Стъпка 2: Хардуер
- Стъпка 3: Софтуер
- Стъпка 4: Моделиране и 3D печат
- Стъпка 5: Монтаж
- Стъпка 6: Последен тест
Видео: TfCD - Плюс: 7 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:54
Плюс е минимална интелигентна светлина, която не само уведомява хората за метеорологичните условия, но също така създава приятно изживяване за потребителите чрез промените, направени в цвета на светлината чрез завъртане на плюс. Формата му дава възможност на потребителя да комбинира няколко плюс модула или да създаде огромна лампа с много плюс парчета, поставени от приятели. Този проект за осветление е част от курса Advanced Concept Design (ACD) в университета TU Delft и технологията, внедрена чрез използване на практиката на TfCD като източник на вдъхновение.
Стъпка 1: Съставки
1 Малина pi нула w
1 Groove Adxl345 акселерометър
4 Ws2812b LED
1 Прототипна дъска
3D отпечатани и лазерно изрязани корпуси
Стъпка 2: Хардуер
Светодиоди
Светодиодите Neopixel имат 4 пина, наречени: +5V, GND, Data In и Data out.
- Пин 4 на малиновото пи е свързан към +5V на всички светодиоди
- Пин 6 на малиновото пи е свързан към GND на всички светодиоди
- Данни В пин на първия светодиод е свързан към щифт 12 на малиновото пи.
- Изходният извод за данни на първия светодиод е свързан към данните на втория и т.н.
Моля, разгледайте електрическата схема за по -добро разбиране.
Акселерометър
Акселерометърът има 4 пина, наречени: VCC, GND, SDA и SCL.
- Пин 1 на малиновото пи е свързан към VCC.
- Пин 3 на малиновото пи е свързан към SCL.
- Пин 5 на малиновото пи е свързан към SDA.
- Пин 9 на малиновото пи е свързан към GND.
Изграждане
- За удобство светодиодите могат да бъдат запоени върху прототипна платка. Решихме да изрежем дъската под формата на плюс, така че да се вписва добре в 3D проектирания калъф.
- След като запояваме светодиодите на платката, запояваме джъмперните проводници, за да осъществим връзките между 0.1 "заглавката на заглавката и светодиодите. Конекторът на заглавката се използва за разрешаване на малиновото пи да бъде изключено и повторно използвано за бъдещ проект.
Стъпка 3: Софтуер
Изображение на операционната система Raspberry Pi
Първо трябва да стартираме Raspberry Pi. За да направим това, следваме следните стъпки:
- Изтеглете най -новата версия на Raspbian от тук. Можете да го изтеглите директно или чрез торентите. Ще ви трябва писател на изображения, за да запишете изтеглената операционна система в SD картата (micro SD карта в случай на модел Raspberry Pi B+ и Raspberry Pi Zero).
- Затова изтеглете „win32 disk imager“от тук. Поставете SD картата в лаптопа/компютъра и стартирайте програмата за запис на изображения. След като отворите, прегледайте и изберете изтегления файл с изображение на Raspbian. Изберете правилното устройство, т.е. устройството, представляващо SD картата. Ако избраното устройство (или устройство) е различно от SD картата, другото избрано устройство ще се повреди. Така че внимавай.
- След това кликнете върху бутона „Пиши“в долната част. Като пример вижте изображението по -долу, където SD картата (или микро SD) устройството е представено с буквата "G: \" Операционната система вече е готова за нормална употреба. В този урок обаче ще използваме Raspberry Pi в режим без глава. Това означава без физически монитор и клавиатура, свързани към него!
- След изгаряне на SD картата, не я изваждайте от компютъра! Използвайте текстов редактор, за да отворите файла config.txt, който е в SD картата. Отидете до дъното и добавете dtoverlay = dwc2 като последния ред:
- Запишете файла config.txt като обикновен текст и след това отворете cmdline.txt След rootwait (последната дума на първия ред) добавете интервал и след това модули-load = dwc2, g_ether.
- Сега извадете SD картата от вашия компютър и я поставете в Raspberry Pi и я свържете към вашия компютър с помощта на USB кабел. След като операционната система се стартира, трябва да видите, че се открива ново устройство за Ethernet Gadget.
- Можете да използвате ssh [email protected], за да се свържете с платката и да я управлявате дистанционно. За по -подробни инструкции относно безглавната работа отидете тук. Неопикселов драйвер
Библиотеката rpi_ws281x е ключът, който прави възможно използването на NeoPixels с Raspberry Pi.
Първо трябва да инсталираме инструментите, необходими за компилиране на библиотеката. Във вашия Run на Raspberry Pi: sudo apt-get update && sudo apt-get install build-essential python-dev git scons swig Сега изпълнете тези команди, за да изтеглите и компилирате библиотеката:
git clone https://github.com/jgarff/rpi_ws281x.git && cd rpi_ws281x && scons И накрая, след като библиотеката е успешно компилирана, можем да я инсталираме за python, използвайки:
cd python && sudo python setup.py install Сега идва кода на python, който задвижва светодиодите. Кодът е сравнително прост с някои коментари, които да ви помогнат. от импортиране на неопиксели * # конфигурации на NeoPixel LED_PIN = 18 # GPIO щифтът на Raspberry Pi, свързан към пикселите LED_BRIGHTNESS = 255 # Задайте 0 за най -тъмните и 255 за най -ярките LED_COUNT = 4 # Брой ленти с LED пиксели = Adafruit_NeoPixel (LED_COUNT, LED_PIN, 800000, 5, False, LED_BRIGHTNESS, 0, ws. WS2811_STRIP_GRB) # Инициализирайте библиотеката strip.begin () strip.setPixelColor (0, Color (255, 255, 255)) strip.show ()
ADXL345 драйвер
Избраният от нас сензор за акселерометър има I2C интерфейс за комуникация с външния свят. За щастие за нас, Raspberry Pi също има I2C интерфейс. Просто трябва да му позволим да го използва в нашия собствен код.
Извикайте инструмента за конфигуриране на Raspbian, като използвате sudo raspi-config. След като стартирате, отидете на Interfacing Options, Advanced Options и след това активирайте I2C, Инсталирайте съответните модули на python, за да можем да използваме интерфейса I2C в python:
sudo apt-get install python-smbus i2c-tools Следният код на python ни позволява да комуникираме със сензора на акселерометъра и да четем стойностите на неговия регистър за собствени цели. import smbus import struct # шина за конфигурации на акселерометър = smbus. SMBus (1) адрес = 0x53 печалба = 3.9e-3 bus.write_byte_data (адрес, 45, 0x00) # Отидете в режим на готовност bus.write_byte_data (адрес, 44, 0x06) # Ширина на честотната лента 6.5Hz bus.write_byte_data (адрес, 45, 0x08) # Отидете в режим на измерване # Прочетете данни от сензора buf = bus.read_i2c_block_data (адрес, 50, 6) # Разопаковайте данните от int16_t в python integer data = struct.unpack_from ("> hhh", буфер (байтово (buf)), 0)
x = плаващ (данни [0]) * печалба
y = плаващ (данни [1]) * печалба
z = плаващ (данни [2]) * печалба
Детектор на движение
Една от характеристиките на светлината, която правим, е, че тя може да открие движение (или липса на такава), за да влезе в интерактивен режим (където светлината се променя в зависимост от въртенето) и режим на прогноза за времето (където светлината се променя в зависимост от прогнозата за времето за днес). Следният код използва предишната функция, за да прочете стойностите на ускорението за 3-осите и да ни предупреди, когато има движение.
accel = getAcceleration ()
dx = abs (prevAccel [0] - ускорение [0])
dy = abs (prevAccel [1] - ускорение [1])
dz = abs (prevAccel [2] - ускорение [2])
ако dx> moveThreshold или dy To> moveThreshold или dz> moveThreshold:
отпечатване „преместено“
преместено = Вярно
иначе:
move = False
API за времето
За да получавате прогноза за времето, можем да използваме Yahoo Weather. Това включва разговор с API на Yahoo Weather Rest, който може да бъде доста сложен. За наше щастие, за трудната част вече се погрижи под формата на weather-api модул за python.
- Първо трябва да инсталираме този модул, като използваме: sudo apt install python-pip && sudo pip install weather-api
- Моля, посетете уебсайта на автора за повече информация относно този модул.
След като инсталирате следния код получава метеорологичните условия за този момент
from weather import Weatherweather = Weather ()
location = weather.lookup_by_location ('dublin')
условие = местоположение. условие ()
печат (condition.text ())
Събирайки всичко заедно
Целият код за проекта, който свързва всички горепосочени части, може да бъде намерен тук.
Автоматично стартиране на скрипта на python по време на зареждане
За да можем да поставим малиновото пи в кутия и той да изпълнява нашия код всеки път, когато го свързваме към захранването, трябва да се уверим, че кодът се стартира автоматично по време на зареждане. За да направим това, използваме инструмент, наречен cron.
- Първо извикайте инструмента cron, като използвате: sudo crontab -e
-
Предишните стъпки ще отворят конфигурационен файл, в който добавяме следния ред:
@reboot python /home/pi/light.py &
Стъпка 4: Моделиране и 3D печат
3D моделът на Plus е направен в Solidworks и е запазен като. Stl формат. След това за 3D печат моделът. Stl файл беше импортиран в софтуера Cura. Всяка страна на плюса отне 2:30 часа за производство; така че всеки пълен плюс отне около 5 часа за отпечатване. А за прозрачните страни плексигласът беше изрязан с лазер.
Стъпка 5: Монтаж
С 3D отпечатаната част, електрониката и софтуера под ръка, най -накрая можем да сглобим крайния продукт.
- Открихме, че 3D отпечатаните горна и долна плочи са по -прозрачни от очакваното. Слой алуминиево фолио реши проблема с изтичането на светлина.
- Тези листове обаче са проводящи и могат да причинят късо съединение в нашата незащитена верига. Така че отгоре е залепен друг слой бяла картонена дъска.
- Дифузните сегменти от плексиглас са залепени към една от страничните плочи.
- В един от страничните 3D принтирани панели се пробива дупка. Това е така, за да можем да преминем през захранващия кабел.
- След като захранващият кабел е поставен през отвора, ние го запояваме върху нашата прототипна дъска.
- Прикрепяме сензора към малиновото пи и след това го включваме в конектора.
- Прикрепяме 2 части заедно, за да получим крайния продукт.
- По желание можете да залепите 2 части, за да направите по -трайна връзка. Имайте предвид обаче, че може да е трудно да влезете в кутията, след като е залепена, ако искате да промените кода по -късно.
Препоръчано:
HAIKU, Когато модата и технологиите се сливат заедно. Проект TfCD. TU Delft .: 4 стъпки
HAIKU, Когато модата и технологиите се сливат заедно. Проект TfCD. TU Delft .: Haiku е концепция, разработена от Mucahit Aydin за курс по магистърска степен TU Delft. Основният принцип на това кимоно е да разшири чувството да бъдеш прегърнат от някого. За да направи това, кимоното ще разкрие модел след докосване. Как? От изпълнителите
Запазване и възстановяване на предварително зададени стойности с NFC (TfCD): 4 стъпки
Запазване и възстановяване на предварително зададени стойности с NFC (TfCD): Искаме да тестваме как работи за регулиране на определена стойност или настройка и по -късно да извикаме тази настройка. За този експеримент използвахме NFC маркер за четене и след това запазваме стойността върху него. По -късно маркерът може да бъде сканиран отново и да изпрати стойността обратно, за да възстанови cer
Носещ персонализиран светлинен панел (Технологичен курс за изследване - TfCD - Tu Delft): 12 стъпки (със снимки)
Носещ персонализиран светлинен панел (Курс за изследване на технологиите - TfCD - Tu Delft): В тази инструкция ще научите как да създадете свой собствен осветен образ, който да носите! Това става чрез използване на EL технология, покрита с винилова ваденка и прикрепящи към нея ленти, така че да можете да я носите около ръката си. Можете също да промените части от тази страница
Визуално откриване на обект с камера (TfCD): 15 стъпки (със снимки)
Визуално откриване на обекти с камера (TfCD): Когнитивните услуги, които могат да разпознават емоции, лица на хора или прости обекти, в момента са все още в ранен етап на развитие, но с машинното обучение тази технология се развива все повече. Можем да очакваме да видим повече от тази магия в
Проект за електронен текстил: Светла тениска за пот (TfCD): 7 стъпки (със снимки)
Електронен текстил Проект: Светла тениска за пот (TfCD): Електронният текстил (E-текстил) са тъкани, които позволяват вграждането на цифрови компоненти и електроника в тях. Тази нововъзникваща технология идва с много възможности. В този проект ще направите прототип на спортна риза, която открива как