Skocz do zawartości
Komentator

Kurs Raspberry Pi - #13 - PWM, wejścia, skrypty z kamerą

Pomocna odpowiedź

html_mig_img
Za nami podstawy GPIO i pierwsze skrypty. Tym razem przetestujemy w praktyce generowanie sygnału PWM. Wykorzystamy również piny jako wejścia naszego układu.Na zakończenie napiszemy skrypt, który połączy GPIO oraz dedykowaną kamerę. Dzięki temu zamienimy Raspberry Pi w aparat fotograficzny.

UWAGA, to tylko wstęp! Dalsza część artykułu dostępna jest na blogu.

Przeczytaj całość »

Poniżej znajdują się komentarze powiązane z tym wpisem.

Udostępnij ten post


Link to post
Share on other sites

super! czekamy na kolejne części poradnika 🙂

kiedy można się ich spodziewać?

Udostępnij ten post


Link to post
Share on other sites

Inari, moja odpowiedź pozostaje niezmienna, tak jak pod każdą inną częścią tego kursu: staramy się, aby wszystko było publikowane równomiernie. W między czasie zachęcamy do własnych eksperymentów 🙂

Udostępnij ten post


Link to post
Share on other sites

Cześć, dzięki za podsumowanie wszystkich informacji podanych do tej pory w tym kursie.

Czy byłaby szansa również na propozycje "zadań" podsumowujących informacje z tego kursu oraz z kursów elektroniki. Jako że ten kurs jest z założenia dla początkujących, mogłyby to być zadania "z gwiazdką".

Mam jeszcze pytanie, próbowałam napisać skrypt z pętlą FOR i niestety program wysypał mi się przy ")" poniżej użyta przeze mnie formuła:

for i in range(3):

a pytanie brzmi, jak w skrypcie poprawnie zastosować pętle typu FOR

Udostępnij ten post


Link to post
Share on other sites
Czy byłaby szansa również na propozycje "zadań" podsumowujących informacje z tego kursu oraz z kursów elektroniki. Jako że ten kurs jest z założenia dla początkujących, mogłyby to być zadania "z gwiazdką".

Na ten moment nie planujemy dokładnie czegoś takiego, ale postaramy się publikować więcej artykułów o RPi (niekoniecznie jako odcinki kursu). Będziemy w nich pokazywać różne projekty, których sercem jest malinka.

Jeśli chodzi o korzystanie z pętli for to poradników o skryptach jest całkiem dużo, np. tutaj jest to ładnie opisane: https://www.lifewire.com/bash-for-loop-examples-2200575 Jeśli nadal będziesz miała problem to załóż proszę osobny temat w odpowiednim dziale, umieść tam cały swój kod i wtedy zobaczymy co dokładnie można tam poprawić 😉

Udostępnij ten post


Link to post
Share on other sites

wolno nowe wpisy się pojawiają..

Udostępnij ten post


Link to post
Share on other sites

W kodzie (Kurs Raspberry Pi – #13 – PWM, wejścia, skrypty z kamerą) - Symulacja świateł drogowych na Raspberry Pi - jest błąd: linijki 22, 23, 24 są niepotrzebne bo powodują wydłużenie pętli do 5 sekund podczas gdy na załączonej wizualizacji jest cykl 4 sekundowy. Po prostu czerwone (pin 16) będzie się paliło przez 3 sekundy zamiast przez 2.

Udostępnij ten post


Link to post
Share on other sites

@M.G., witam na forum 😉
Widzę, że to Twoje pierwsze kroki na Forbocie, jeśli chcesz przywitać się z innymi członkami naszej społeczności skorzystaj z tego tematu: Powitania użytkowników.

Słusznie, gratuluję czujności! Dziękuję za uwagę, już poprawione 🙂 

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Podłączyłem przycisk oraz diodę dokładnie tak, jak było to pokazane w artykule. Następnie stworzyłem następujący kod:

#!/bin/bash

gpio -g mode 12 out
gpio -g mode 21 up

gpio -g write 12 0

while true
do
        gpio -g wfi 21 falling
        gpio -g toggle 12
done

który w założeniu ma zmieniać stan diody po naciśnięciu przycisku. Zaobserwowałem, że podczas jednego naciśnięcia, od czasu do czasu, dioda zmienia swój stan dwa razy. Dlaczego? Czy problem jest spowodowany jakimiś zakłóceniami natury elektronicznej, czy to kod nie jest napisany poprawnie?

Edytowano przez ghost1313

Udostępnij ten post


Link to post
Share on other sites
3 minuty temu, ghost1313 napisał:

Czy problem jest spowodowany jakimiś zakłóceniami natury elektronicznej, czy kod nie jest napisany poprawnie?

Dokładnie tak, to są właśnie drgania styków. Które można obejść np. za pomocą filtru RC. Więcej na ten temat znajdziesz w kursie elektroniki: Kurs elektroniki II – #3 – przyciski, diody RGB, kontaktron Możesz też rozbudować swój program w taki sposób, aby był odporny na takie zakłócenia, hasło klucz to "debouncing" 🙂 

  • Pomogłeś! 1

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Kiedy mamy już w konsoli maliny ten przykładowy program sterujący diodami itp. napisany w Pythonie3 to jak zrobić żeby go jakoś sensownie zapisać w systemie plików i sensownie móc uruchomić jedną komendą bądź kliknięciem? Ewentualnie żeby się uruchamiał po włączeniu napięcia na malinę. 

Byłoby jeszcze lepiej gdyby można go było "zintegrować" z malinowym serwerem i móc kontrolować komendami z internetu. 

Być może to jest głupie zapytanie ale jakoś nie znalazłem informacji na ten temat.

Edytowano przez Czes

Udostępnij ten post


Link to post
Share on other sites
1 godzinę temu, Czes napisał:

Kiedy mamy już w konsoli maliny ten przykładowy program sterujący diodami itp. napisany w Pythonie3 to jak zrobić żeby go jakoś sensownie zapisać w systemie plików i sensownie móc uruchomić jedną komendą bądź kliknięciem? Ewentualnie żeby się uruchamiał po włączeniu napięcia na malinę. 

Byłoby jeszcze lepiej gdyby można go było "zintegrować" z malinowym serwerem i móc kontrolować komendami z internetu. 

Być może to jest głupie zapytanie ale jakoś nie znalazłem informacji na ten temat.

zapisz taki kod w pliku z rozszerzeniem .py na przykład app.py i uruchom go poleceniem:

python3 app.py

 

  • Lubię! 1
  • Pomogłeś! 1

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Dzieki za podpowiedź.

Edytowano przez Czes

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Zapisałem w katalogu 'Pulpit' coby mieć ikonkę pliku na pod reką. Kliknięcie ikonki uruchamia aplikację Thonny wyposażoną w przyciski RUN i STOP załączania i wyłączania skryptu Pythona i to działa.

Mało tego - można tam dokonywać edycji i zapisywania treści skryptu z tym że w przypadku gdy ten plik był wcześniej utworzony przy pomocy  'nano' na konsoli root'a to się nie da zapisywać pliku (brak uprawnień).

Jak widzę sumie to można pisać te skrypty pod Tekst Edytor'em i zapisywać menedżerem plików. A uruchamianie ustawić na Pythona. Wygodne. 

No ale co do punktu drugiego, czyli możliwości kontrolowania skryptu 'py' z internetu (przez serwer) to dalej jesteśmy w lesie.

Edytowano przez Czes

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Napisz odpowiedź...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...