• Nie Znaleziono Wyników

Ćwiczenie nr 8_2019

N/A
N/A
Protected

Academic year: 2021

Share "Ćwiczenie nr 8_2019"

Copied!
7
0
0

Pełen tekst

(1)

PRACOWNIA MIERNICTWA ELEKTRONICZNEGO/

INTERNETU RZECZY

ĆWICZENIE NR 8

Temat

:

Raspberry Pi jako podstawa systemów wizualnych

Komponenty:

 Raspberry pi3 B+

 Opornik 200Ω

 Mała płytka stykowa

 Switch THT

 Dioda LED

 Raspberry Pi Camera

Cel ćwiczenia:

 Złożenie i zaprogramowanie układu, w który pozwoli na zapalenie i zgaszenie diody LED przy

pomocy guzika

 Dołożenie do zestawu kamery i napisanie skryptu, który prosi o podanie nazwy zdjęcia i po

wciśnięciu guzika wykonuje zdjęcie o podanej nazwie

(2)

Rysunek 2- Schemat układu do złożenia

Teoria

Rysunek 1- Schemat pinów w Raspberry pi3 B+

Instrukcja

Krok 1.

(3)

Złożony zestaw:

Rysunek 3 - Złożony zestaw do pierwszej części ćwiczenia

Aby uruchomić skrypt należy w katalogu ze skryptem wpisać „python nazwa skryptu”.

Kod:

import RPi.GPIO as GPIO //import modułuRPi.GPIO

import time //import modułu time

GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.IN, pull_up_down = GPIO.PUD_UP) //przyporządkowanie 23 do switcha

GPIO.setup(24, GPIO.OUT) //przyporządkowanie pinu 24 dla diody LED

Led_status = 1//flaga, która pozwala na sprawdzenie czy dioda jest zapalona

try :

while True : //nieskończona pętla w której wykonuje się program

button_state = GPIO.input(23)//odczyt stanu switch-a(czy jest wciśnięty)

if button_state == False and Led_status == 1 : //jeżeli switch zostanie wciśnięty i dioda jest zgaszona

Led_status = 0//ustawienie flagi na zero

(4)

print('Led light') //wypisanie ‘Led light’ na ekran

time.sleep(0.5) //program zatrzymuje się na pół sekundy

elif button_state == False and Led_status == 0: //jeżeli switch zostanie wciśnięty i dioda jest zgaszona

Led_status = 1 //ustawienie flagi na jeden

GPIO.output(24, False) //zgaszenie diody LED

print('Led off') //wypisanie ‘Led off’ na ekran

time.sleep(0.5) //program zatrzymuje się na pół sekundy

except :

GPIO.cleanup() //wyczyszczenie wszystkich używanych portów

Krok 2.

Rozbudowa złożonego zestawu o kamerę

(5)

Konfiguracja kamery:

Aby można było używać kamery należy wpisać następujące komendy do terminala oraz włączyć

obsługę kamery w ustawieniach.

 sudo apt-get update

 sudo apt-get upgrade(może trwać do 30 minut)

 sudo raspi-config

Konfiguracja:

(6)

Rysunek 6 - wybrać "P1 Camera" i potwierdzić wybór

Kod:

import RPi.GPIO as GPIO//import modułuRPi.GPIO

import time//import modułu time

from picamera import PiCamera//import modułu PiCamera

camera = PiCamera()//stworzenie obiektu typu PiCamera

GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.IN, pull_up_down = GPIO.PUD_UP) //przyporządkowanie 23 do switcha

GPIO.setup(24, GPIO.OUT) //przyporządkowanie pinu 24 dla diody LED

name = raw_input("Write photo name: ")//skrypt prosi o podanie nazwy zdjęcia

try :

while True :

button_state = GPIO.input(23) )//odczyt stanu switch-a(czy jest wciśnięty)

if button_state == False : //jeżeli guzik jest wciśnięty

GPIO.output(24, False) //Zgaszenie diody LED

print('Wait for photo!') //wypisanie na ekran ‘Wait for photo!’

camera.start_preview()

time.sleep(2) //program zatrzymuje się na dwie sekundy

camera.capture("/home/pi/Pictures/" + name + ".jpg")//wykonanie zdjęcia i zapisanie we wskazanej lokalizacji

camera.stop_preview()

GPIO.output(24, True) //Zapalenie diody LED

print('Photo is made!') //wypisanie na ekran ‘Photo is made’

name = raw_input("Write photo name: ")//program prosi o podanie nazwy kolejnego zdjęci

(7)

except:

GPIO.cleanup()//wyczyszczenie wszystkich używanych portów

Zadanie dodatkowe:

Przerobienie kodu w taki sposób aby z obu skryptów można było wyjść poprzez wciśnięcie guzika.

Wymagania opracowania teoretycznego:

Cytaty

Powiązane dokumenty

Jeżeli stan epidemii zostanie odwołany a dzieci powrócą do szkół, decyzja o organizacji uroczystości pierwszokomunijnych będzie uzależniona od woli rodziców w porozumieniu

Ponieważ wszystkie wnioski PA s¸ a spełnione w (N, +, ·, <, 0, 1), powyższe oznacza, że T h(N ) składa si¸e ze wszystkich wniosków

Wtedy nie zakładamy, że przyrost argumentu dx jest mały, ale różniczka wyznacza punkt na prostej stycznej, który dla dużych dx może być daleki od wykresu funkcji.. Uwaga 4:

Okazuje się 273 , że w kontekście funkcji ciągłych najodpowiedniejszą miarą tego, jak bardzo różnią się dwie funkcje, jest spojrzenie na największą 274 możliwą ich różnicę

In mathematical logic, we don’t really bother with determining whether a given sentence has truth value 0 or 1 – instead we will be investigating truth values of sentences combined

Wykazać, że funkcja charakterystyczna zbioru liczb wymiernych nie jest całkowal- na na [0, 1]..

Ile różnych deserów może z tego sporządzić ekspedientka, jeśli w pucharku mieści się nie więcej niż 5 kulek lodów, a pusty pucharek nie jest deserem..

Uwaga, dwa sposoby usadzenia uważamy za takie same, jeśli w obu sposobach każda z osób ma tych samych sąsiadów zarówno po lewej, jak i prawej stronie..