sobota, 28 grudnia 2013

Raspberry PI jak zacząć przygodę?



Raspberry PI jak zacząć.

Raspberry Pi to miniaturowy komputerek wielkością zbliżony do karty kredytowej.
W pierwszej części  mini poradnika przedstawię jak zacząć zabawę z tym komputerkiem na przykładzie sterowania diodami LED.
Co będzie nam potrzebne :
1)      Raspberry Pi z karta SD na której zainstalowany będzie system operacyjny, w moim przypadku będzie to Raspbian . 






2)      Diody LED – tu zastosowałem mój moduł linijki diodowej poniżej zdjęcie i schemat ideowy modułu


3)      Kilka przewodów połączeniowych lub taśma połączeniowa .

Linijkę podpinamy do Raspberry PI do następujących pinów GPIO 7,8,25,24,23,18,15,14
Porty te znajdują się na złączu na płytce minikomputera, rozpiszę portów przedstawia rysunek poniżej. 


Porty GPIO podobnie jak w mikrokontrolerach AVR poza standardowymi funkcjami wejść lub wyjść może pełnić alternatywna rolę jak UART,SPI,I2C. W naszym przykładzie nie będziemy ich używać , zajmiemy się tylko portami ustawionymi jako wyjścia.
Porty ustawione jaki wyjścia w Raspberry PI mają stan „1” logiczne na poziomie napięcia 3,3V , dlatego należy pamiętać aby nie  sterować układów cyfrowych o napięciu 5V gdyż możemy uszkodzić nasz komputerek PI. Porty GPIO są wyprowadzone bezpośrednio z procesora zainstalowanego w Raspberry PI bez żadnego zabezpieczenia. Dlatego w mojej linijce zastosowałem bufor logiczny który stanowi zabezpieczenie tych portów przed uszkodzeniem. W przypadku sterowania przekaźnikami z poziomu Raspberry Pi stosuję transoptory które stanowią również zabezpieczenie tych portów.
I to by było na tyle co nan będzie potrzebne do rozpoczęcia zabawy z diodami LED.
Teraz podłączamy zasilanie do naszego komputerka i przewód Ethernet, i nawiązujemy połączenie z naszym komputerkiem poprzez protokół SSH . Do tego celu proponuję program Putty . Wcześniej musimy odszukać jakie IP nadał nam Router. Uruchamiamy program Putty. W polu Host Name wpisujemy adres IP naszego Raspberry PI



Ja wcześniej przygotowałem sobie konfigurację programu i odczytam ją poprzez kliknięcie na nazwę Pi i naciśnięcie przycisku LOAD.
Zostawiamy domyślny port 22 jako port usługi SSH. W naszym przykładzie dostaliśmy adres 192.168.1.104 z serwera DHCP . 


Przy poprawnym zalogowaniu pojawi się okno terminala, i zostaniemy poproszeni o podanie loginu i hasła . Domyślnymi ustawieniami jest login : pi a hasłem raspberry

Musimy pamiętać że w systemie Linux wpisując hasło nie będą się nam wyświetlały wprowadzane znaki, dlatego należy to robić powoli w przypadku nowych użytkowników, którzy zaczynają  przygodę z 
Raspberry Pi.
Po prawidłowym zalogowaniu nasz komputerek zgłosi się informacjami o zainstalowanym systemie i linią gotowości do wprowadzania poleceń.


Do sterowania liniami GPIO użyję pakietu wiringPi, należy go zainstalować wpisując następujące polecenia w linii komend.
wget http://project-downloads.drogon.net/files/wiringPi.tgz
 
Teraz rozpakowujemy pobrane archiwum:
tar xfz wiringPi.tgz 

Następnie instalujemy wiringPi:
cd wiringPi/wiringPi
make
sudo make install
cd ../gpio
make
 
Po zakończonej instalacji mamy już dostęp do portów GPIO.  Teraz możemy sprawdzić czy porty działają , w tym celu wpisujemy:

gpio -g mode 7 out ‘ to polecenie ustawia nasz port jako wyjście
 
następnie ustawiamy nasz port w stan wysoki:

gpio -g write 7 1 ‘ ustawienie portu nr 7 w stan wysoki
 
W tym momencie na naszej linijce powinna zapalić się dioda LED podłączona do portu 7. 
Następnie gasimy naszą diodę LED wydając polecenie 
 
gpio -g write 7 0 ‘ ustawienie portu nr 7 w stan niski
 
Mając pewność że nasza konfiguracja przebiegło poprawnie i mamy władze nad portami GPIO 
przystępujemy do napisania pierwszego programu na Raspberry PI.
Program będziemy pisać w języku Pyton. Język ten jest domyślnie instalowany razem z systemem   
Raspbian.  Nasz program będzie się nazywał  linia_led.py
 


W oknie terminala wprowadzamy następujące polecenie
nano /home/pi/linia_led.py
 
Ważne jest zachowanie wszystkich widocznych przerw i znaków w tym poleceniu. 
Polecenie to oznacza otwarcie edytora tekstowego NANO i lokalizacji naszego pliku w katalogu /HOME/PI

Po naciśnięciu klawisza ENTER pojawi się okno edytora. Pamiętajmy że w tym edytorze poruszamy się 
kursorami i dla początkujących może się on wydać dość trudnym w obsłudze .

Teraz wpisujemy nasz kod sterujący linijką diodową.
 
     gpio -g mode 7 out
     gpio -g mode 8 out
     gpio -g mode 25 out
     gpio -g mode 24 out
     gpio -g mode 23 out
     gpio -g mode 18 out
     gpio -g mode 15 out
     gpio -g mode 14out
 
while true
do 
     gpio -g write 7 1
     sleep 1
     gpio -g write 8 1
     sleep 1
     gpio -g write 25 1
     sleep 1
     gpio -g write 24 1
     sleep 1
     gpio -g write 23 1
     sleep 1
     gpio -g write 18 1
     sleep 1
     gpio -g write 15 1
     sleep 1
     gpio -g write 14 1
     sleep 0.1
     gpio -g write 7 0
     sleep 0.1
     gpio -g write 8 0
     sleep 0.1
     gpio -g write 25 0
     sleep 0.1
     gpio -g write 24 0
     sleep 0.1
     gpio -g write 23 0
     sleep 0.1 
     gpio -g write 18 0
     sleep 0.1
     gpio -g write 15 0
     sleep 0.1
     gpio -g write 14 0
     sleep 0.1
 
done
 
Na początku programu konfigurujemy nasze porty jako wyjściowe, następnie ustawiamy porty w stan wysoki.
Diody będą zapalane kolejno z przerwą co 1 sekundę. Polecenie sleep 1  jest odpowiedzialne za odczekanie 1 sekundy. 
Następnie rozpoczniemy sekwencję gaszenia naszych diod LED wpisując do każdego z portu wartość ZERA, 
jednak tu zastosujemy przerwę co 100 ms . Wszystkie te operacje będą wykonane w nieskończonej pętli while.  
Tak przygotowany kod zapisujemy wciskając kombinację klawiszy  Crtl + O
 

Na tym etapie możemy zmienić nazwę naszego pliku, następnie kolkami ENTER.
Jeśli nie wystąpiły błędy pojawi się nam informacja o ilości linii naszego programu. 
Teraz wychodzimy z edytora naciskając Carl +X . Pojawi się nam okno terminala z linią do 
wprowadzania komend. Wydajemy polecenie ls i sprawdzamy czy nasz plik został zapisany.


Nasz plik został zapisany , ale jeszcze nie możemy go uruchomić musimy zmienić mu prawa
dostępu do pliku. ( plik linia_led.py  kolor biały)

 
Wydajemy polecenie 

 sudo chmod –R 777 linia_led.py

po naciśnięciu klawisza ENTER , powinna pojawić się linia komend jeśli wszystko poszło poprawnie.
Ponownie wydajemy polecenie ls  i w naszym oknie powinny pojawić się pliki oraz nasz plik sterujący diodami , tym razem powinien on mieć kolor zielony.


Jeśli tak jest to możemy uruchomić nasz program.
Program uruchamiamy poleceniem  ./linia_led.py

Efektem powinno być zapalanie się diod LED na naszej linijce w odstępach co 1 sekundę , i gaszenia ich co 100 ms. Aby przerwać działanie programu należy wcisnąć kombinację klawiszy Ctrl + C
I tak za pomocą linii komend mamy możliwość sterowania linijką diodową. Oczywiście program można napisać prościej w pętlach ale chciałem pokazać zasadę pisania programów w języku Pyton na Raspberry PI.



Brak komentarzy:

Publikowanie komentarza