Gintek Marzec 5, 2022 Autor tematu Udostępnij Marzec 5, 2022 Napisałem to bardzo ogólnie bo to dużo pisania żeby wyjaśnić szczegółowo zasadę działania. Ale działa to jak serwomechanizm modelarski i chodzi o to żeby tak zrobić że jak silnik nie osiągnie ustalonej pozycji żeby się wyłączył bo inaczej może się spalić. Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Marzec 5, 2022 Udostępnij Marzec 5, 2022 Pozwól, że o tym czy to za dużo pisania będzie decydował ktoś, kto będzie ten program pisać. Ty nie wiesz co jest ważne... 1 Cytuj Link do komentarza Share on other sites More sharing options...
Belferek Marzec 5, 2022 Udostępnij Marzec 5, 2022 2 godziny temu, Gintek napisał: chodzi o to żeby tak zrobić że jak silnik nie osiągnie ustalonej pozycji żeby się wyłączył bo inaczej może się spalić To ty potrzebujesz poza kryterium czasowym jeszcze odczytać "pozycję" silnika, a raczej elementu jaki jest tym silnikiem sterowany. Napisz coś o tym. Cytuj Link do komentarza Share on other sites More sharing options...
_LM_ Marzec 5, 2022 Udostępnij Marzec 5, 2022 Dodał bym jeszcze zabezpieczenie termiczne, w razie zablokowania wału Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. 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
SOYER Marzec 5, 2022 Udostępnij Marzec 5, 2022 53 minuty temu, _LM_ napisał: Dodał bym jeszcze zabezpieczenie termiczne, w razie zablokowania wału Jeśli urządzenie jest do użytkowania 24/7, należałoby uwzględnić sterowanie chłodziarką do piwka na dni weekendowe. Cytuj Link do komentarza Share on other sites More sharing options...
Gintek Marzec 18, 2022 Autor tematu Udostępnij Marzec 18, 2022 Mam takie pytanie jak zrobić żeby czas przez funkcję millis został odliczany po naciśnięciu przycisku a nie po naciśnięciu i puszczeniu. Cytuj Link do komentarza Share on other sites More sharing options...
farmaceuta Marzec 18, 2022 Udostępnij Marzec 18, 2022 (edytowany) static long = 0; static bool stan = 0; static bool stan2 = 0; if (digitalRead(5) == LOW && stan == 0) { last = millis(); stan = 1; stan2 = 1; } else if(digitalRead(5) == HIGH) { stan =0; } if (millis() - last > 1000UL && stan2 == 1) { //zrob cos tam stan2 = 0; } Tak mi sie napisalo, choc prawidlowo powinny byc odrebne zmienne "stan" dla obu if'ow Edytowano Marzec 18, 2022 przez farmaceuta Cytuj Link do komentarza Share on other sites More sharing options...
Gintek Marzec 18, 2022 Autor tematu Udostępnij Marzec 18, 2022 Niestety to nie działa Cytuj Link do komentarza Share on other sites More sharing options...
farmaceuta Marzec 18, 2022 Udostępnij Marzec 18, 2022 1 godzinę temu, Gintek napisał: Niestety to nie działa Wszystkie zmienne zadeklarowales?? Cytuj Link do komentarza Share on other sites More sharing options...
Gintek Marzec 18, 2022 Autor tematu Udostępnij Marzec 18, 2022 Znaczy działa ale jak poprzedni przykład to znaczy dopiero po puszczeniu przycisku zaczyna odliczać czas i led gaśnie. A ja chciałbym uzyskać efekt żeby z chwilą wciśnięcia przycisku uruchamiał się czas i led zgasł nie ważne jak długo będzie wciśnięty przycisk. Cytuj Link do komentarza Share on other sites More sharing options...
farmaceuta Marzec 18, 2022 Udostępnij Marzec 18, 2022 Do edytowalem powyzej...spruboj, chociaz wczesniejsza wersja robila to czego chcesz Cytuj Link do komentarza Share on other sites More sharing options...
Anonim Marzec 18, 2022 Udostępnij Marzec 18, 2022 Jeśli mogę coś podpowiedzieć to zastosuj biblioteki Timers.Na tym forum jest wątek Proste podświetlanie schodów na Arduino. Prośba o pomoc w stworzeniu programu.Jest tam na stronie 5 mój program z zastosowaniem tej biblioteki.Jedną z najważniejszych rzeczy jest uwolnienie się od millsów i delay w programie.Dobrze przeanalizuj to co jest napisane w programie i niech to będzie dla Ciebie inspiracją dla Twojego rozwiązania.W załączniku są potrzebne pliki.Zdaje się,że biblioteka Timers w tej wersji obsługuje 8 wątków i w swej istocie jest genialna. Problem uruchomienia czasu jest pokazany w moim programie bez zastosowania przerwań zewnętrznych. Ale można to zrobić w inny sposób stosując właśnie zewnętrzne przerwania.Niestety Arduino oparte na ATMEL 328 jest ubogie w wejścia gdzie można stosować przerwania zewnętrzne - zdaje się ,że są tylko dwa piny.Ale jeśli zastosujesz stm32 to praktycznie rzecz biorąc każdy pin może zostać skonfigurowany jako wejście z przerwaniem zewnętrznym EXTI. Cytuj Link do komentarza Share on other sites More sharing options...
Krawi92 Marzec 18, 2022 Udostępnij Marzec 18, 2022 Atm328p ma nie tylko przerwania int, są jeszcze pcint, które jest dostepne prawie na każdym porcie. Jakby chciał to by sobie poradził 🙃 Cytuj Link do komentarza Share on other sites More sharing options...
Gintek Marzec 19, 2022 Autor tematu Udostępnij Marzec 19, 2022 Założony cel osiągnięty. Dziękuję wszystkim za zainteresowanie tematem a w szczególności dla farmaceuty. 1 Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
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!