Skocz do zawartości

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.

Link do komentarza
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 🙂

Link do komentarza
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

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

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ć 😉

Link do komentarza
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.

Link do komentarza
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 🙂 

Link do komentarza
Share on other sites

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
Link do komentarza
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
Link do komentarza
Share on other sites

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
Link do komentarza
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
Link do komentarza
Share on other sites

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
Link do komentarza
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!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   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...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.