Taula de continguts:

Raspberry Pi Smart NightLight: 5 passos
Raspberry Pi Smart NightLight: 5 passos

Vídeo: Raspberry Pi Smart NightLight: 5 passos

Vídeo: Raspberry Pi Smart NightLight: 5 passos
Vídeo: Raspberry Pi: Freenove 4WD SmartCar for Raspberry Pi Infrared Line Tracking Demo (Student work: JW) 2024, De novembre
Anonim
Raspberry Pi Smart NightLight
Raspberry Pi Smart NightLight

Fa poc em vaig llevar d'hora, moltes vegades els dies a l'exterior encara són foscos, però no vull encendre els llums per afectar el descans de la meva dona, així que he estat pensant a comprar una llum de nit. Vaig buscar moltes botigues de llum nocturna, però no crec que la vulgui, però vaig veure una llum nocturna anomenada DockerPi en una botiga d’Amazon, controlada pel Raspberry Pi. És molt bo i pot proporcionar funcions de bricolatge. He llegit la descripció wiki d’aquest producte, es pot controlar directament mitjançant la línia d’ordres, com a programador que utilitza el sistema Linux, crec que és molt divertit, així que el vaig tornar a comprar i vaig començar aquest projecte.

Pas 1: Pas 1: prepareu totes les coses

Pas 1: prepareu totes les coses
Pas 1: prepareu totes les coses

Després de desempaquetar i desmuntar la coberta de protecció de la placa d’acrílic, i després muntar el mòdul d’aquest DockerPi al meu Raspberry Pi amb mànegues i pal de coure. es va fixar estable.

Pas 2: Pas 2: feu flaixar la darrera imatge del sistema operatiu Rasbpian a la targeta SD

Pas 2: introduïu la darrera imatge del sistema operatiu Rasbpian a la targeta SD
Pas 2: introduïu la darrera imatge del sistema operatiu Rasbpian a la targeta SD
Pas 2: introduïu la darrera imatge del sistema operatiu Rasbpian a la targeta SD
Pas 2: introduïu la darrera imatge del sistema operatiu Rasbpian a la targeta SD
Pas 2: introduïu la darrera imatge del sistema operatiu Rasbpian a la targeta SD
Pas 2: introduïu la darrera imatge del sistema operatiu Rasbpian a la targeta SD

Baixo la darrera imatge de Raspbian de:

i, a continuació, feu flash la imatge mitjançant un programari anomenat: etcher

es pot descarregar aquí:

descomprimiu el fitxer d’imatges del paquet gzip i obtindreu un fitxer *.img, seleccioneu la imatge i seleccioneu la unitat que el vostre PC ha reconegut la targeta TF, només heu de prémer "Flash" i esperar uns minuts, ja estarà.

i traieu la targeta TF i inseriu-la al vostre Raspberry Pi i engegueu-la.

Pas 3: Pas 3: activeu la funció I2C des de Raspi-config

Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config
Pas 3: activeu la funció I2C des de Raspi-config

Quan es va iniciar Raspberry pi, vaig obrir un terminal i escrivia aquesta ordre: sudo raspi-config

i aneu a "Opcions d'interfície" i seleccioneu "I2C" i l'activeu. per què hauria d'utilitzar aquesta ordre?

Com que el mòdul de llum nocturna del DockerPi utilitza el protocol I2C per comunicar-se amb Raspberry Pi.

Pas 4: Pas 4: Connecteu el tauler acrílic a la ranura

Pas 4: Connecteu el tauler acrílic a la ranura
Pas 4: Connecteu el tauler acrílic a la ranura
Pas 4: Connecteu el tauler acrílic a la ranura
Pas 4: Connecteu el tauler acrílic a la ranura
Pas 4: Connecteu el tauler acrílic a la ranura
Pas 4: Connecteu el tauler acrílic a la ranura

S'adapta molt bé a la ranura i es pot veure la imatge que el panell acrílic pot romandre quiet a la ranura.

El següent pas és executar el codi de prova per comprovar si funciona correctament.

He descarregat el codi d'exemple de github escrivint aquesta ordre al terminal del raspberry Pi.

cd ~

git clone

cd dockerpi / Nightlight /

sudo./Nightligh.sh

i després la meva llum nocturna s’encén i brilla.

He llegit la instrucció del seu wiki i he trobat tot el gràfic del mapa de registre de la llum LED.

El següent pas serà la part més divertida, vull afegir un sensor piroelèctric d'infrarojos del cos humà, que detecti que estic il·luminat per il·luminar aquesta petita llum nocturna ~

Pas 5: Pas 5: configureu el sensor piroelèctric d'infrarojos

Pas 5: configureu el sensor piroelèctric d'infrarojos
Pas 5: configureu el sensor piroelèctric d'infrarojos
Pas 5: configureu el sensor piroelèctric d'infrarojos
Pas 5: configureu el sensor piroelèctric d'infrarojos
Pas 5: configureu el sensor piroelèctric d'infrarojos
Pas 5: configureu el sensor piroelèctric d'infrarojos

Aquí fem servir un sensor de moviment PIR. PIR significa infrarojos passius. Aquest sensor de moviment consisteix en una lent Fresnel, un detector d'infrarojos i circuits de detecció de suport. La lent del sensor enfoca qualsevol radiació infraroja present al seu voltant cap al detector d'infrarojos. Els nostres cossos generen calor per infrarojos i, com a resultat, aquesta calor és captada pel sensor de moviment. El sensor emet un senyal de 5 V durant un període d’un minut tan aviat com detecta la presència d’una persona. Ofereix un abast provisional de detecció d’uns 6-7 metres i és altament sensible. Quan el sensor de moviment PIR detecta una persona, emet un senyal de 5 V al Raspberry Pi mitjançant el seu GPIO i definim què ha de fer el Raspberry Pi quan detecta un intrús a través de la codificació Python. Aquí només estem imprimint "Intrus detectat".

Un cop hàgiu configurat el vostre Raspberry Pi, ara podem començar a jugar amb els pins GPIO. Aquí, intentarem parpellejar un LED mitjançant un script Python. Copieu i enganxeu el següent codi al vostre Raspberry Pi. Podeu fer-ho obrint l'editor de text "fullet" al vostre Raspberry Pi i copiant-hi el codi i deseu-lo com a fitxer Python: nightlight.py:

#importar biblioteques.

importar RPi. GPIO com a GPIO

temps d'importació

importar smbus

DEVICE_BUS = 1

DEVICE_ADDR = 0x15

GPIO.setwarnings (fals)

GPIO.setmode (GPIO. BOARD)

GPIO.setup (11, GPIO. IN) #Llegir la sortida del sensor de moviment PIR

bus = smbus. SMBus (DEVICE_BUS) # instància de smbus per al dispositiu i2c, significa la llum nocturna.

mentre que és cert:

provar:

i = GPIO.input (11)

si i == 0: #Quan la sortida del sensor de moviment és BAIXA

print ("Sense intrusos", i)

per a l'interval (1, 25):

bus.write_byte_data (DEVICE_ADDR, i, 0x00) #TURN LED

time.sleep (0,2)

time.sleep (0,1)

elif i == 1: #Quan la sortida del sensor de moviment és ALTA

print ("Intrús detectat", i)

per a l'interval (1, 25):

bus.write_byte_data (DEVICE_ADDR, i, 0xFF) #TURN LED

time.sleep (0,2)

time.sleep (0,1)

excepte KeyboardInterrupt com e:

print ("Surt del bucle")

i després deseu-lo i feu-lo funcionar durant l'arrencada de raspberry pi.

sudo vim.tiny /etc/rc.local

i afegiu aquesta línia abans de la sortida 0:

sudo python /home/pi/nightlight.py &

i després deseu-lo i reinicieu el Pi, funcionarà correctament …

Gràcies per veure ~

Recomanat: