Skocz do zawartości

Czujnik optyczny


KD93

Pomocna odpowiedź

Trochę zamotałem się z tym attiny2313 więc zakupiłem to co autor pokazał na początku (attiny13) 🙂

Tylko chciałbym wprowadzić jedną zmianę a dokładnie mówiąc po odczytaniu przez procesor odbitej fali miałby podtrzymać działanie przekaźnika na 15 minut. W jaki sposób to rozwiązać? Czy za pomocą komendy "Wait" ? Zmieniłem to tak: (ale tam jest 10 sekund i nie działa)

$regfile = "attiny13.dat"                                   'procesor Attiny13

$crystal = 1200000                                          'niższe taktowanie, CKDIV=0
                                                            'przy zmianie CKDIV = 1
                                                            'zmienić wartośc na 9600000

Config Portb.4 = Output                                     'output czujnika

Config Portb.1 = Output                                     'OC0B, wyjście generujące
                                                            'częstotliwość dla diody

Config Portb.2 = Output                                     'wyjście sterujące diodą

Config Pinb.3 = Input                                       'czujnik podczerwieni, SFH


Ocr0b = 16                                                  'obliczyć z działania:
                                                           'taktowanie / (częstotliwość * 2)
                                                           'np. 1200000 / (36000 * 2)

Ocr0a = 16                                                  'j.w.

Tccr0a = &B00010010                                         'rejestry timera, przepisać

Tccr0b = 1                                                  'j.w.


Set Portb.3                                                 'rezystor podciągający
                                                           'wejście czujnika


Do                                                          'pętla


If Pinb.3 = 1 Then Portb.4 = 1                              'warunki na widzenie czujnika

Waitms 10

Portb.4 = 0

Delay                                                       'opóźnienie zmniejszające
                                                           'zakłócenia


Loop                                                        'koniec pętli

End                                                         'koniec programu

Z góry dziękuję za odpowiedź 🙂

Link do komentarza
Share on other sites

To zależy czy przez te 15 minut chcesz mierzyć czujnikiem dalej czy go wyłączyć. Wyłaczyć będzie prościej, bo wtedy robisz sobie rzeczywiście coś w stylu wait i zliczasz 15 minut (no. 15 razy po 60s). Warto wtedy wprowadzić jakieś sprawdzanie pomiarów, np. zamiast delay dać waitms 10, zliczyć np. 20 impulsów i jeśli czujnik wykrył przeszkodę ponad 10 razy, to zmieniasz dopiero stan.

Jeśli chcesz w czasie tych 15 minut mierzyć, to już gorzej, tu przydałby się Timer, ale w tiny13 jest tylko 1. Wtedy mógłbyś obniżyć częstotliwość mierzenia do powiedzmy 50ms, zliczać w pętli, 20 takich cykli da Ci wtedy minutę.

Link do komentarza
Share on other sites

Chodzi mi o to aby po zauważeniu "przeszkody" czujnik przestał wysyłać fale podczerwone i po prostu załączył nóżkę PINB.4 na 15 minut. Po tym czasie wraca do poprzedniego stanu pracy. Bo przykładowo przeszkoda może się pojawić i za chwilę zniknąć a przekaźnik dalej ma być włączony przez te 15 minut 🙂

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

BlackJack, raczej źle zakładasz.

miałby podtrzymać działanie przekaźnika na 15 minut.
Bo przykładowo przeszkoda może się pojawić i za chwilę zniknąć a przekaźnik dalej ma być włączony przez te 15 minut 🙂

Nie wygląda mi to na czujnik do minisumo, a te 15min to nie pomyłka bo jest tak napisane 3 razy.

Link do komentarza
Share on other sites

Witam. Konstruuję właśnie czujnik z tematu i chciałbym zapytać o to czy mój schemat się zgadza. Chodzi mi głównie o poprawność pod katem tranzystorów bo nie jestem pewien na 100% czy będą spełniały swoją rolę (czy są poprawnie umieszczone/połaczone). Chciałbym jeszcze zapytać o to ile V potrzebuje taka dioda żeby dobrać odpowiedni rezystor w tym przypadku R3 i R4.

Pozdrawiam.

Link do komentarza
Share on other sites

Gość nemo-sas

Hello colleagues. What fuse and lock beats to show? Atiny 13

Aktualizacja:

Коллеги, кто собирал, нужна помощь. Запустил, но не стабильно работает. И у разных процессоров частоты разные.

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!

Gość
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.