Elektroda.pl
Elektroda.pl
X
Elektroda.pl
PCBway
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterownik rolet sterowany telefonem.

lm3886 10 Maj 2019 23:50 4341 12
  • #1
    lm3886
    Poziom 4  
    Sterownik rolet sterowany telefonem.

    Witam,
    jest to mój pierwszy projekt, który tutaj zamieszczam więc proszę o wyrozumiałość. Zrobiłem to dla siebie ale może komuś się przyda wiec go udostępniam.

    Na początek o samych roletach. Zakupiłem trzy najtańsze rolety w supermarkecie. Kupiłem 3 silniki prądu stałego z przekładnią 1:48 takie jak na zdjęciu poniżej

    Sterownik rolet sterowany telefonem.

    Do tego zaprojektowałem we FreeCadzie uchwyt rolety, w którym zmieścił się silnik i przyczepiłem rolety do okien. Projekt uchwytów udostępniam do pobrania. Rolet nie da się ręcznie ustawiać, zastąpiłem jeden uchwyt rolety ten ze sznurkiem uchwytem, który wydrukowałem. Jako czujnik pozycji rolet wykorzystałem kontaktrony. Po jednym na każdą roletę i 2 magnesy, jeden na dole, drugi na górze na rolecie. Kupiłem małe magnesy 10x5x1 mm. Wystarczają aby załączyć kontaktron i są małe więc nie przeszkadzają w zwijaniu się rolety.

    I teraz najważniejsze - sterownik rolet. Skleciłem go z atmegi328, 2 sterowników silników L293D, modułu bluetooth HM-10 i układu czasu rzeczywistego DS1307. Schemat udostępniam. Zasilam to wszystko zasilaczem 9V 4A. Na początku miałem jakiś chiński zasilacz 9V 1A ale spalił się już pierwszego dnia.

    Sterownik rolet sterowany telefonem. Sterownik rolet sterowany telefonem.
    Sterownik rolet sterowany telefonem. Sterownik rolet sterowany telefonem. Sterownik rolet sterowany telefonem. Sterownik rolet sterowany telefonem. Sterownik rolet sterowany telefonem.

    Hex do zaprogramowania atmegi też udostępniam.

    Rolety steruje się za pomocą telefonu komórkowego przez bluetooth. Nie pisałem dedykowanej aplikacji na telefon tylko wykorzystałem Serial Bluetooth Terminal: Link do aplikacji na androida

    Teraz trochę o opcjach. Roletami można sterować czasowo, podnosić i opuszczać o podanej godzinie. Można tez sterować każdą osobno. Oprócz podnoszenia i opuszczania jest też możliwość ustawienia rolety w jednej z 5 pozycji "po środku". Sterownik posiada też funkcje wykrywającą błędy w działaniu rolet. Jeśli taki błąd wystąpi roleta zostaje wyłączona i nie działa na niej czasowe jak i "ręczne" podnoszenie i opuszczanie do czasu wymazania błędu z programu. Sterownik posiada dużo opcji konfiguracyjnych aby można go było dostosować do różnych rolet i silników.

    Poniżej zamieszczam pełną listę komend:
    up[X] - [X - roller blind] podnosi rolety
    down[X] - [X - roller blind] opuszcza rolety
    posX - [X: 1 to 5] ustawia wszystkie rolety w danej pozycji
    posXY - [X: 1 to 5, Y - roller blind] ustawia jedna roletę w danej pozycji
    stop - zatrzymuje wszystkie rolety
    /enable[X] - [X - roller blind] włącza czasowe ustawianie rolet
    /disable[X] - [X - roller blind] wyłącza czasowe ustawianie rolet
    date - pokaż datę i godzinę
    time - to samo co date
    /delayXYYY - [X - roller blind, YYY - time * 100ms] ustawia opóźnienie włącznik sensorów wyłączających rolety
    /calibration - mierzy czasy podnoszenia się wszystkich rolet, potrzebne aby ustawić roletę w środkowej pozycji
    /status - pokazuje status rolet
    /options - pokazuje opcje
    /settimeupHHMMSS - ustaw czas podniesienia rolet - format HHMMSS
    /settimedownHHMMSS - ustaw czas opuszczenia rolet - format HHMMSS
    /setmaxmovetimeXYYY - [X - roller blind, YYY: 0 to 254] ustawia maksymalny czas przez jaki roleta może się poruszac, po tym czasie wystąpi błąd i roleta zostanie wyłączona (1 = 100ms)
    /clearerrorX - [X - roller blind] czyści błąd rolety
    /timeHHMMSS - ustaw godzinę - format HHMMSS
    /dateDDMMYYYY - ustaw datę - format DDMMYYYY
    /setupspeedXYYY - [X - roller blind, YYY: 000 to 255] ustaw prędkość podnoszenia rolety
    /setdownspeedXYYY - [X - roller blind, YYY: 000 to 255] ustaw prędkość opuszczania rolety
    /help - pokazuje listę komend (bez opisu bo zabrakło pamięci RAM)
    /uptime - pokaż kiedy sterownik został włączony
    /version - pokaż wersję oprogramowania

    To tyle, mam nadzieję że komuś się przyda.
    roller_b..d.zip Download (1.13 MB)

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • PCBway
  • #2
    Slawek K.
    Poziom 30  
    Możesz pokazać fotki zamontowanego mechanizmu oraz sterownika na oknie? Jakiego rodzaju błędy wykrywa sterownik? W zasadzie chyba tylko softwarowe bo nie widzę żadnych zewnętrznych czujników.

    Pozdr
  • PCBway
  • #3
    maras52
    Poziom 14  
    Apke można napisać prosto i szybko w MIT App Inventor ;) uprościło by to strasznie sterowanie.
  • #4
    lm3886
    Poziom 4  
    Dodałem zdjęcia zamontowanych rolet i sterownika.
    Wykrywanie błędów jest programowe. Każda roleta ma ustawiany maksymalny czas, w którym może być włączona. Czas ten jest ustawiany w konfiguracji. Jeśli np wydamy komendę aby opuścić roletę i jeśli po tym maksymalnym czasie roleta się nie wyłączy tzn, że coś ją przyblokowało albo kontaktron nie zaskoczył. Wtedy roleta jest wyłączana i już nie reaguje na kolejne komendy do czasu wykasowania błędu. Pozostałe rolety działają normalnie.

    Wiem, że można dość szybko napisać program na telefon ale ten w zupełności mi wystarcza. Można w nim przypisać komendy pod buttony więc korzystanie z niego nie jest wielką udręką.
  • #5
    hetm4n
    Poziom 20  
    Super projekt, Ja ostatnio zrobiłem sterownik rolet na module do sterowania Ledami TC420. Minus tego taki że trzeba było na kompie ustawić sobie kilka programów czasowych do odsłaniania i zasłaniania, i potem wybierać do odpowiedniej pory roku , dorobiłem na przyciskach również ręczne załączanie. Obecnie napisałem program na sterownik PLC i panel HMI Delty, który kupiłem jako złom i naprawiłem. Na panelu HMI mam nastawy czasu osobno do rolet, oraz sterowanie automatyczne / ręczne tzn z panelu możemy sterować roletą trzymając przycisk, lub pojedyncze naciśniecie automatycznie zaczyna odsuwać / zasuwać. Dodatkowo można przez wifi eRemotem łączyć się zdalnie do panelu :) A tu widzę kolega bardzo fajny Tani projekt tego zrobił z wykorzystaniem komunikacji bluetooth :) Rzeczywiście można by było jeszcze finalnie napisać aplikacje na telefon by łatwiej i szybciej się to obsługiwało :)
  • #6
    szeryf3
    Poziom 17  
    @lm3886 bardzo fajny i funkcyjny projekt. Plus ode mnie.
  • #7
    vinetu_
    Poziom 12  
    Ciekawy patent na napęd rolety, chociaż zastanawiam się ile te silniki wytrzymają.
    Brakuje mi tu enkodera podpiętego do wału wystającego z drugiej strony, jego wartość można byłoby zapisać w pamięci RTC, mamy łatwą możliwość ustawiania niepełnego otwarcia rolety.

    Jak na pierwszy projekt, jest potencjał - ogromny plus!
  • #8
    lm3886
    Poziom 4  
    Co do tych silniczków też się zastanawiam ile wytrzymają. Mają plastikowe zębatki w przekładniach. Ale z drugiej strony koszt takiego silniczka to około 6 zł.
    Na pomysł z enkoderami też wpadłem ale jak już miałem wykonaną płytkę i nie chciało mi się robić drugi raz. Na początku chciałem zastosować silniki krokowe z przekładnią ale mają one dwie wady. Są wolne, podniesienie rolety trwało 70 sekund, na tym co jest teraz trwa około 7 sekund. Silnik krokowy ma więcej pinów do podłączenia. Przy 3 roletach ilość kabli robi się trochę za duża.

    W opisie nie napisałem, że wszystkie ustawienia zapisują się w EEPROM więc po wyłączeniu i włączeniu zasilania rolety są gotowe do pracy.
  • #9
    LChucki
    Poziom 29  
    lm3886 napisał:
    Na początek o samych roletach. Zakupiłem trzy najtańsze rolety w supermarkecie. Kupiłem 3 silniki prądu stałego z przekładnią 1:48 takie jak na zdjęciu poniżej

    Jakie są parametry silników?

    Pytam, bo użyłeś podstawek (swoją droga bardzo, bardzo kiepskich) pod L293 a jego niektóre nogi odprowadzają ciepło i powinny, BEZ PODSTAWEK, być połączone z radiatorem z miedzi wykonanym na PCB. W nocie L293 jest napisane co i jak.
  • #10
    lm3886
    Poziom 4  
    Silniki są na 6V 180mA, ja podaje na układ L293D około 7.5 V. Na tym układzie jest spory spadek napięcia, na silnik wychodzi niecałe 6V. Poza tym podniesienie rolety trwa 7-8 sekund więc grzanie się układu nie jest dużym problem bo w ciągu doby nie będzie sterował silnikami nawet przez minutę.
  • #11
    LChucki
    Poziom 29  
    lm3886 napisał:
    grzanie się układu nie jest dużym problem bo w ciągu doby nie będzie sterował silnikami nawet przez minutę.

    Czy to oznacza, że można np przeciążać sterownik 100 razy bo w ciągu doby korzystam tylko 1 minutę a 1'000 razy bo korzystam 6 sekund? Z tego wynika, że 10'000 razy jest dopuszczalne gdy używam 0,6 sekundy.

    W nocie katalogowej układu znajdziesz szczegółowe informacje ile może trwać krótkotrwałe przeciążenie i jaką może mieć wartość, bo ze swoim tokiem rozumowania to skoro max prąd dopuszczalny to 1A, to gdy używam raz na 356dni, mogę przeciążyć np 3650razy czyli prądem 3,650A. Tak nie jest.
    Poczytaj w nocie co piszą na temat tego radiatora na PCB, warto!

    Moderowany przez tmf:

    3.1.11. Nie wysyłaj wiadomości, które nic nie wnoszą do dyskusji. Wprowadzają w błąd, są niebezpieczne czy nie rozwiązują problemu użytkownika.
    Znowu kolega zaczyna dyskusje nie na temat. Radzę samemu poczytać notę, a przede wszystkim rozumieć co się do kolegi pisze.
    Silnik pobiera 180 mA i jest włączony przez kilka sekund, maksymalny prąd katalogowy drivera to 1,2A, więc o żadnym przeciążeniu nie ma mowy. Autor pisze, że ma spadek napięcia ok 1,5V, katalogowo max 1,8V, co nam daje maksymalne straty 0,32W, które będą przez kilka sekund, kiedy układ jest włączony. Łatwo policzyć do jakiej temperatury zdąży się nagrzać.
    Zresztą to koledze ułatwię: parametr junction to ambient 36,4 st. C/W, czyli układ nagrzeje się maksymalnie do 11,8 st. C ponad temp. otoczenia przy ciągłej pracy, jeszcze mniej przy chwilowej (pojemność cieplna obudowy). Może więc bezpiecznie pracować do temperatury otoczenia 138 stopni C, co raczej nie będzie miało miejsca podczas normalnego użytkowania.

  • #12
    terminux
    Poziom 23  
    Bardzo ciekawy projekt. Czy dobrze zrozumiałem, bo z opisu tak wynika, że masz jeden kontaktron a dwa magnesy na roletę? Czyli kontaktron jest zamontowany do rolety i przemieszcza się góra dół? Bo wydaje mi się, że mechanicznie łatwiej jest zamontować dwa kontaktrony a do rolety przyczepić magnes - odpada sprawa zwijanych przewodów od kontaktronu. Jak ten szczegół rozwiązałeś?
  • #13
    lm3886
    Poziom 4  
    Na jedna roletę przypada jeden kontaktron i 2 magnesy. Kontaktron przyczepiony jest na oknie, na górze zaraz pod roletą. Dwa magnesy przyczepione są na rolecie. Jak się rozwinie roletę na całe okno to jeden magnes przyczepiłem na dole, drugi na górze.