Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 13 lip 2025, o 03:06


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 54 ]  Przejdź na stronę 1, 2  Następna strona
    Autor Wiadomość
    PostNapisane: 23 kwi 2013, o 19:16 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Witam ,
    Niedawno temu ,był wątek na temat sterowania silnika do bramy .
    Problem banalny , choć wystarczająco "wielowątkowy" aby spróbować
    sformułować kilka podstawowych algorytmów , oraz rozwiązań sprzętowych
    komplikujących lub też upraszczających realizację.

    Zainteresowanym proponuję następującą zabawę :
    a. Dowolną bramę obsłużymy na ATTiny 2313 ,z przynajmniej dwukrotnym zapasem mocy obliczeniowej i zasobów.
    b. Poszukamy najwydajniejszych rozwiązań sprzętowych jako pierwszy etap
    optymalizacji .
    c. Wyznaczymy niezbędne "usługi" projektu i wyznaczymy ich algorytmy.
    d. Znajdziemy optymalny sposób ich zapisu w C.
    e. Pomijamy całą "pinologię" jako coś, co zainteresowani "skroją sobie na własną miarę"
    f. Utworzona notacja obejmuje tylko dane/zmienne potrzebne do obsługi samych algorytmów.
    g. Sterownik do "byle czego" zasilamy "byle czym" - stąd obsługa obejmuje obsługę sygnałów stykowych z histerezą,
    a z uwagi na bliskość silnika i jego sterowania , pilnujemy tylko schludności zasilania procesora .

    Na początek jako punkt wyjścia proponuję , w co najmniej jednym punkcie nadmiarowy schemat i algorytm.
    Obrazek

    Obrazek

    Jeśli ktoś jest zainteresowany , zapraszam do "sporu o bramę" - powinno być "sporu w bramie " - ta forma ma już dluuugą tradycję :lol:
    J.P.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 20:26 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 lis 2011
    Posty: 582
    Lokalizacja: okolice Wrocławia :)
    Pomógł: 24

    Cieszę się że kolega jp_elek podjął taki ciekawy temat jak sterownik do bramy.
    Wprawdzie popełniłem już kiedyś taki sterownik w asemblerze i ciekaw jestem rozwiązań w C.
    Nie wspomnę już o zagadnieniach sterowania mocą silnika indukcyjnego 230V poruszanych już na forum.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 20:42 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    Ja tam za bardzo się nie znam, ale jak widzę sterowanie kierunków za pomocą dwóch odzielnych pinów na przekaźnikach to mi się zaraz zapala taka ogromna czerwona lampka a nad nią pytanie. Co by się stało gdyby przez przypadek wysterowąc dwa przekaźniki na raz. Niestety nie znam się na tyle na elektronice żeby zaproponować jakąś alternatywę :(, dlatego napiszę tylko tyle że tutaj ja osobiście poszedłbym w kierunku jakiegoś rozwiązania hardwarowego które by wykluczyło przypadkowe załączenie dwóch przekaźników na raz.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 20:48 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 lis 2011
    Posty: 582
    Lokalizacja: okolice Wrocławia :)
    Pomógł: 24

    @Malutki_27 - właśnie od tego jest procesor żeby strzegł przed takimi przypadkami :).

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 20:50 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    O co on ma strzec skoro tym steruje ;) Mi tam i tak się tutaj ogromna czerwona lampka świeci , a jak jeszcze pomyslę żę tam jest 230 V to już mi ciarki przechodzą ;)

    ------------------------ [ Dodano po: 10 minutach ]

    Oki :) Problem po kilku minutach sam się rozwiązał ;) przecież wystarczy po stronie 230V zrobić odpowiednią kombinację w połączeniu styków i problem przestanie istnieć :D



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 21:18 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Ano ,
    Bardzo ważna uwaga malutki_27, może się zdarzyć bumm..
    Zatem może nieco udoskonalona wersja , jest jednak ale..,
    szukanie przekaźników z wieloma zestawami styków , nie jest ciekawym zajęciem , może więc
    styki użyjemy raz do załączenia silnika , oraz drugi raz do blokady , a "podtrzymanie/potwierdzenie załączenia
    przekaźnika na transoptorze - prąd diody "podobny" do prądu małego przekaźnika więc będzie ok.
    Gdyby silnik był większy to jeszcze na kolejnych stycznikach powtórzymy taką samą blokadę ze styków pomocniczych stycznika.

    oto propozycja lepszego schematu :
    Obrazek

    Pierwsza uwaga bardzo celna , szukajmy dalej...

    ps. Tak niechcący zyskujemy -przy transoptorach izolację na dzień dobry min.4000 V oraz styki "oddalamy od niskiego napięcia procesora .



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 21:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 10 sty 2013
    Posty: 844
    Lokalizacja: Przemyśl
    Zbananowany użytkownik

    Pomógł: 43

    W zależności od silnika można to znacznie uprościć, sprzętowo jak i programowo- jeden przekaźnik załącza nam silnik, drugi ustala kierunek obrotów. Jak bym miał wykonywać taki napęd to silnik pozyskałbym z wiertarki lub innego podobnego elektronarzędzia- po pierwsze komutatorowe są łatwe do regulacji, po drugie mamy wstępną przekładnię oraz sprzęgło w zestawie.

    Zwróciłbym też uwagę na brak możliwości wykrycia przeciążenia silnika w powyższym schemacie- a w zimie raz że opory mechaniki większe to do tego dochodzi jeszcze lód który może nam skutecznie zablokować bramę.

    _________________
    Klimatyzacja Przemyśl



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 21:32 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Przecież mamy kontrolę obrotów - to wykryje nam zarówno blokadę silnika ,
    jak też zbyt małe obroty..



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 21:38 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    Mi bardziej chodziło o coś takiego jak na schemacie :)
    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 21:39 
    Offline
    Użytkownik

    Dołączył(a): 29 lis 2012
    Posty: 1074
    Lokalizacja: Sochaczew
    Pomógł: 21

    Siedzę w automatyce do bram więc powiem jak to jest w centralach profesjonalnych (tak to nazwijmy).
    Jak kolega wyżej napisał, jeden przekaźnik włącza zasilanie ogólne a drugi zmienia kierunek obrotów, a do tego jest jeszcze triak który reguluje prędkość jak i siłę siłowników sterujących skrzydłami bramy.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 21:48 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Tak ,
    Nie do końca rozumiem pomysł ze schematem Malutki_27 , jeśli np. X1 to zasilanie , a X2 to silnik to nic się nie zmieni, niezależnie od tego który przekaźnik
    uruchomimy , chyba że silnik jest prądu stałego - ale to nie zdarza się - często, regulacja tak , ale po zdefiniowaniu silnika indukcyjny asynchroniczny , czy też
    szeregowy -uniwersalny, o tym proponuję nieco później , po ustaleniu jakie zdarzenia musimy obsłużyć , i jakie algorytmy "zatwierdzimy" jako zadowalające ..



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 22:19 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    Rzeczywiście masz rację , podszedłem do tego jak do silnika prądu stałego :(

    Co do zdarzeń no to według mnie taki sterownik powinien mieć:
    - regulację obrotów silnika
    - regulację mocy ale to raczej będzie współistniało automatycznie z regulacją obrotów
    - kontrolę przeciążenia silnika , blokady silnika
    - barierę przed przytrzaśnięciem ( chodzi o wykrywanie przeszkód przy otwarciu lub zamknięciu )
    - sygnalizację pracy w postaci lapmy ostrzegawczej
    - jakieś wyłączniki krańcowe by się przydały
    - ewentualnie jakieś sterowanie ryglem dla bramy bądź furtki.

    O takich rzeczach jak piloty czy też podłączenie do jakiejś "jenteligencji domu" wydaje mi się że nie ma co wspominać



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 kwi 2013, o 22:29 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Zgoda ,
    to w pierwszej kolejności chciałbym nazwać , które wymogi są rzeczywiście potrzebne.
    Wyłącznik krańcowe już zaproponowałem, sygnał Kolizja traktuję jako zarówno fotokomórka oraz "przytrzaśnięcie" , nie mam zdania - czy sygnalizacja otwierania jest użyteczna, chyba że jakieś nowe przepisy jej wymagają .
    Rygle owszem , ale z oddzielnego wyjścia - do rozważenia
    Odbiornik pilota i piloty - z reguły za kilkanaście złotych do kupienia,
    robienie "radia" to chyba nieuzasadniony - niełatwy temat,
    z punktu widzenia sterowania , niczego w sterowniku i tak nie zmieniają- dublują sygnały otwórz/zamknij/stop



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 kwi 2013, o 17:02 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Witam,
    Po wstępnej dyskusji proponuję przyjąć poniższe założenia , aby tworzenie projektu nie trwało miesiącami :
    - projekt wykonujemy , w postaci "modułów", którymi kolejno będziemy się zajmować od definicji po realizację-
    - moduł musi być spójnym elementem - zarówno sprzęt jak też oprogramowanie, jego wykorzystanie , będzie albo
    konieczne, albo opcjonalne ;

    Schemat = ogólny , zawiera tylko niezbędne elementy , dodatkowe wyposażenie - jako opcja na oddzielnym schemacie

    Oprogramowanie - podobnie , choć kolejność proponuję odwrócić - najpierw zbudować algorytm główny sterownika ,
    chciałbym aby to była funkcja "main" w pliku main.c i wyrzucone z niej wszystko, co jest w istocie usługą przygotowującą dane, i tak:
    - w osobnym pliku wszystkie funkcje czasówek
    - w osobnym obsługa styków , sygnałów pomocniczych , ogólnie IO,
    - w osobnym obsługa silnika -moment obrotowy, obroty itp.

    // wszystkie potrzebne, a jeszcze nie stworzone funkcje deklarujemy jako void funkcja(void) z pustym ciałem{} funkcje nazywamy zgodnie ze schematem/grafem algorytmów i tylko tymczasowo
    - do czasu ich sformułowania mają prawo obecności w pliku main.c, po nabraniu ciała - wynocha do swojego pliku //

    ps. wiem ,że to może mało dydaktycznie , ale zapewnia po zdeklarowaniu głównego algorytmu - wyartykułowanie potrzeb, i tworzenie usług - które niejako
    same się definiują przez nazwę i brakujące oprogramowanie zdarzeń.

    Teraz proponuję dokonać ostatecznego osądu poniższego schematu - pamiętamy iż ma zapewnić sprzętową informację o stanie bramy
    bez wnikania jeszcze w szczegóły czy kolizja to przecięcie wiązki fotokomórki , czy uderzenie w przeszkodę, czy naciśnięcie przycisku bezpieczeństwa,
    czy silnik będzie taki czy inny , dwa przekaźniki wystarczą do każdego silnika, regulację prędkości dopuścimy dopiero, gdy będziemy mieć sterowanie
    standardowej bramy - powiedzmy garażowej, lub co kto tam za najprostszą-bezpieczną uważa.

    Obrazek




    Po zaakceptowaniu schematu rozpoczynamy dyskusję nad algorytmem, wiedząc z góry iż funkcja zamknij załatwi wszystko ,
    wraz z poproszeniem pieska aby od bramy się odsunął :o , - ciałem obdarzymy ją w stosownym momencie jak naszym zdaniem będzie na nie zasługiwała :oops:

    Oto uzupełniony o ochronę przekaźników przed bumm.. :o algorytm sterowania bramą.
    Założyłem , że zawsze da się uznać iż jeden z kierunków jest mniej kolizyjny ,
    dlatego dla bramy otwórz/zamknij wybrałem priorytet otwieranie, dla góra / dół będzie to zapewne góra.


    Oto schemat algorytmu :
    Obrazek

    Zapraszam do wytykania braków - i podejmowania prób zapisu algorytmu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 kwi 2013, o 20:45 
    Offline
    Użytkownik

    Dołączył(a): 29 lis 2012
    Posty: 1074
    Lokalizacja: Sochaczew
    Pomógł: 21

    To może ja napiszę jeszcze coś od siebie.
    - fotokomórki - zapobiegają zamknięciu bramy jak coś podczas zamykania pojawi się w ich barierze
    - wyłączniki krańcowe nie są konieczne jeśli wyliczymy czas zamykania + czas dodatkowy (np centrala 452MPS)
    - czujnik amperometryczny (przeciw zgnieceniowy) - nie wszystkie centrale do bram skrzydłowych posiadają, powinny posiadać wszystkie garażówki
    - wejście STOP - obowiązkowe zabezpieczenie, rozłączenie wyłącza silniki centrali
    - wyjście na lampę sygnalizacyjną - mają wszystkie centrale
    - wyjście na elektrozamek - zwykle opcjionalne
    - wejście na encoder - do zliczania impulsów i precyzyjnego sterowania otwieraniem/zamykaniem
    - spowolnienia czyli regulacjia prędkości - zwykle na starcie i pod koniec zamykania/otwierania (nie jest równoznaczna z mocą)
    - druga linia fotokomórek (opcjonalnie)
    - wejście PP czyli tak zwane sterowanie KROK PO KROKU - wejście pełni taką funkcję jak sterowanie z pilota (zwykle są równoległe)
    - ustawianie logiki pracy czyli AUTO, PÓŁAUTO, DEADMEN (obecny operator), ZESPÓŁ MIESZKANIOWY i kilka innych
    - ? jak mi się przypomni to napiszę



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 maja 2013, o 17:28 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Witam ,

    Jak widać, temat nie okazał się nośny ... aby jednak zakończyć sensownie obietnicę złożoną na początku ..

    Przygotowałem najprostszą wersję sterownika bramy , z komentarzami wszystkich
    szczegółów , chyba łącznie z każdym przecinkiem .

    - W miarę swoich możliwości , użyłem nieco innych od dotychczas prezentowanych sposobów
    realizacji, podstawowych elementów programu .Znacznie na wyrost- niemal sztucznie , jednak podzieliłem
    program na odrębne pliki, aby zapewnić maksymalną przejrzystość .

    - Ponadto wyeksploatowałem preprocesor najbardziej jak potrafiłem aby ... sam kod był najbardziej jak
    to możliwe "ludzki",zrozumiały "dla każdego"( dla mnie to sposób na unikanie błędów ,
    przy pisaniu wiele razy tego samego - pierwszy raz zdarza się napisać poprawnie , drugi-może poprawnie, trzeci raz na pewno źle )

    - użyłem wzgardzanego w innym wątku ( topic2939.html ) rejestru GPIOR0 na pohybel prześmiewcom
    , za pogardę dla jego - rejestru - nieskazitelnej opinii i oczywistej WYŻSZOŚCI na mizerią "bandy 32"- która przecież jest -
    ale jak potrzeba akurat jej nie ma !

    - zaproponowałem bardzo szybką i skrajnie prostą , ale bardzo wydajną funkcję SIMPLE_DEBOUNCE , tam
    nazwałem ją Set_Sta();(nie dość ,że prosta to jeszcze prostsza do modyfikacji)

    - nieocenione usługi GPIORx użyłem również dla obsługi timer'ów programowych.

    - program zorganizowałem tak , iż wszystkie dane są przygotowane w przerwaniu(ach), a pętla main jest
    czysta jak łza , i równie prosta i banalna.

    - w załączeniu schemat i graf programu obsługi sterownika bramy oraz komplet plików.

    - temat sterownika bramy zamykam z oczywistych względów .

    - Zapraszam do dyskusji , "Czy przystoi ? " tak wydziwiać w "C", a także jak - jeszcze bardziej
    zmuszać "C" do " rozumienia " bardziej ludzkiego zapisu i nie wydziwiania ?" (To chyba oczywiste,iż
    kolejna wersja Eclipse zadowoli się tym iż zechcemy wypowiedzieć co ma dla nas wykombinować w "C" ,
    nie zaś zmuszać do wypisywania dziwolągów i jeszcze się czepiać, że za mało dziwolągowato piszemy ???) .


    Graf algorytmu :
    Obrazek

    Schemat jako odniesienie do programu :
    Obrazek

    Plik main.c na zachętę :
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    kompletny programik :


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



    Ostatnio edytowano 9 maja 2013, o 13:29 przez jp_elek, łącznie edytowano 2 razy

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 maja 2013, o 20:04 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27415
    Lokalizacja: Szczecin
    Pomógł: 1043

    taka mała pierwsza uwaga do kodu w C,

    TCCR0A |= ((0<<COM0A1)|(0<<COM0A0)|(0<<COM0B1)|(0<<COM0B0)|(1<<WGM01)|(0<<WGM00));

    tak się nie robi przesunięć :( zobacz tutaj:

    post36313.html#p36313

    bo jakbyś tam miał jedynki w tych bitach to po tej operacji by na dodatek zostały

    ------------------------ [ Dodano po: 13 minutach ]

    aż się zaparłem i szukałem użycia GPIOR ;)

    SZOK ;) ... no można - można oczywiście, że można i przede wszystkim nikt koledze nie broni a wręcz przeciwnie. Jak ktoś lubi tak się bawić ? - czemu nie ;)

    .... i znalazłem:

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    no ale takie korzyści to mnie jednak rozkładają na łopatki - tzn nie mam tu zamiaru prześmiewać kolegi broń boże, tylko tak patrzę sobie i myślę, że koledze jeszcze długo ten asembler tzn to asemblerowe podejście nie przejdzie. A tak z ciekawości skoro piszesz że korzystamy na wielkości kodu i szybkości działania to ile ? w porównaniu do czego ? - bo tak trzeba byłoby podejść do sprawy jakby się chciało pokazać korzyści ;) Dokładnie to samo można zrobić na zwykłej zmiennej w RAM ... i co że nawet wyszłoby kilka cykli więcej ? co z tego ? ;) program się zawiesi? przestanie działać? źle zacznie działać ?

    nie nie nie ;) ...

    ale daję sobie głowę obciąć, że za jakiś czas kolega sam będzie na to patrzył z lekkim uśmiechem na te swoje przeliczenia i porównywania do asemblera ;) na wyciskanie każdego cyklu zegara .... Musi minąć troszkę czasu zanim dotrze że C nie jest do tego ;)

    ale ja już widzę, że tak będzie z kolegą - bo co by dużo nie mówić - widać, że kolega programuje przede wszystkim NIE OD DZISIAJ ani OD WCZORAJ ;) ... że doświadczenie jest i to spore - to widać nawet po takich początkowych bojach w C .... bo widać dobre algorytmiczne podejście ....

    teraz tylko troszkę trzeba posiorbać C że tak powiem i samo przejdzie ;) tzn to asemblerowanie

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 maja 2013, o 20:50 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Co do wielkości kodu/ilości cykli ,
    w wątku o GPIOR to Domanoid wskazał na tą notę aplikacyjną Atmela ,
    zatem to jego zasługa , ja tylko pokażę interesujący fragment:

    (ilość cykli dopisałem sam !!!, Atmel nie precyzuje , bo jak wiadomo zależy od konstrukcji kodu, podałem minimum i takie sobie rozrzutne , na szybko optymalizowane)

    Obrazek


    Tak naprawdę , o takie dyskusje mi chodzi , przecież widać iż jest cztery razy tyle miejsca ile potrzeba , i tak by się zmieściło,
    raczej chodziło mi o taki projekt który nie zaabsorbuje uwagi wielkością, zrozumiały będzie prawie intuicyjnie , a uwaga dyskutantów
    skupi się na metodach , w końcu wcześniej czy później , ale nie da się uniknąć styków, czasówek , transmisji , które w projekcie będą tylko
    złem koniecznym, ale nieuniknionym , myślę iż wymiana myśli jak takie "zło" ukryć przed programem , który zupełnie nie dla styków itd.
    piszemy jest ciekawa . Tak, zaczynam z "C" , ale tak jak asemblerowi , nie pozwoliłem sobą rządzić i jemu się podporządkować--
    sam słusznie wytykałeś mi , że niby piszemy w asemblerze a tak naprawdę konstruujemy twory C-podobne, Basic'o- podobne itd.
    Dlaczego , miałbym C , objąć szczególną ochroną przed np. " uczynić go bardziej ludzkim " ???

    ------------------------ [ Dodano po: 37 minutach ]

    ps. spróbowałem kompilacji z najniższym poziomem optymalizacji ,
    i jeszcze się mieści ale.. ino ino - to ponad 1600 bytów , może jednak
    rozwaga w popuszczaniu cugli ma sens ??



    Ostatnio edytowano 9 maja 2013, o 14:30 przez jp_elek, łącznie edytowano 3 razy

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 maja 2013, o 21:32 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 10 sty 2013
    Posty: 844
    Lokalizacja: Przemyśl
    Zbananowany użytkownik

    Pomógł: 43

    Cytuj:
    Prawdziwy zysk z VirtualPort mamy , przy obsłudze szybkich transmisji itp., naprawdę 115200 bps po RS czy 400kHz po I2C ==> najbardziej kulawo napisane nie jest żadnym problemem , jednak wtedy każdy odebrany bajt obsługujemy także w przerwaniu z obliczaniem CRC, spr.błędów i co tam jeszcze potrzeba ... ps. Również nie wiadomo dlaczego ten skromny programik, Eclipse kompiluje do 472 bajtów flash , a AtmelStudio do 456 bajtów , niewinne złego początki ??? , czy też coś znacznie gorszego ??? ( na tym samym toolchain'ie Atmela, z tym samym poziomem optymalizacji)


    Dyskusja miała dotyczyć bramy, nie tego ile bajtów będzie miał program ;)

    Po drugie: listingi są na tyle krótkie że mogłeś śmiało wstawić je w SYNTAX- nie każdy ma ochotę od razu importować do eclipse i sprawdzać co tam napisałeś.

    _________________
    Klimatyzacja Przemyśl



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 maja 2013, o 21:53 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Hej ,
    Dyskusja o bramie - nie przyjęła się jak widzisz ,
    a zamiarem było "zrobić bramę" wspólnie ,tak aby wytykać słabości ,
    wspólnie optymalizować , przemycić przy okazji , "różne podejścia do tego samego".
    Założyłem iż projekt jest tak prosty iż nikt się w dyskusji nie pogubi , a brama byłaby bonusem.

    Dzięki za radę z , "opublikowaniem kodu " bezpośrednio w poście , jeśli dyskusja "złapie " to pewnie skorzystam .,
    problematyczne dla mnie były jednak komentarze na których mi zależało,a jak widać jest ich znacznie więcej niż samego kodu.
    J.P.



    Ostatnio edytowano 8 maja 2013, o 08:52 przez jp_elek, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 08:06 

    Pomógł: 0

    Wracając do tematu bramy, jako że sam jestem szczegółowy jeżeli chodzi o bezpieczeństwo i niezawodność.
    Brakuje mi jakiegoś nadrzędnego "procesu" który by pilnował czy aby ktoś lub coś nie znajduje się w zasięgu bramy, przy jej zamykaniu czy otwieraniu.
    Czy np. nasze auto wzięte na 8letni kredyt nie zostanie zmasakrowane ;) bramą, lub co gorsza, dziecko napędzane chęcią przywitania rodziciela nie wybiegnie na spotkanie z poruszającą się bramą. Lub co gorsza nie włoży rąk czy innych części ciała w mechanizm, bo pewnych jego elementów nie jesteśmy przecież w stanie zabudować dla 100% bezpieczeństwa.
    I dla mnie jako ojca to by było kluczowe przy sterowaniu bramy, czyli priorytet całkowity jakiekolwiek przerwanie "strefy bezpieczeństwa" to bezwzględne zatrzymanie bramy i odcięcie zasilania od wszelkich mechanizmów z koniecznością ich ręcznego zresetowania gdzieś na drugim końcu domu :P.
    Wiem, może przesadzam, ale szczerze mówiąc nie chciał bym być odpowiedzialny za jakikolwiek wypadek tylko z tego względu że ktoś jest zbyt leniwy by zrobić zabezpieczenie czy z niego korzystać.

    To taka luźna dygresja w temacie bramy.



    Góra
      
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 08:36 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    Witam , mimo , iż temat bramy jakby zamknąłem..

    Potwierdzam , sam to bez końca "wałkuję" przy wielu różnych sytuacjach .
    Otóż " legalnie - pożal się Boże "czyste ręce" mamy, jeśli we wspomnianej sytuacji odłączymy zasilanie " .

    Życie jednak ma w nosie przepisy , tworzy oczywiste sytuacje , gdzie takie podejście
    jest mocno szkodliwe - przecież oczywiste iż w takiej sytuacji należało by przede wszystkim
    rozsprzęglić silnik od napędu - jak to zrobić nie łamiąc przepisów( bez wyłączania zasilania , co najmniej opóźnionego ) ,
    a co jeśli monter uznał za niepotrzebną fatygę wyważenie bramy i po zwolnieniu sprzęgła
    zamiast uwolnić docisk , brama "runie" w tą czy inną stronę.,
    Jedna z przedstawionych wersji , próbuje "okpić" użytkownika , zatrzymując bramę przy pierwszej kolizji , jeśli zaś
    zostanie " powtórzona" ( kasowanie kolizji następuje niejako niezależnie od nas przez duże ujemne przyśpieszenie,
    w chwili zatrzymania napędu ) - to wtedy "niezwłocznie" załącza przeciwny kierunek . Rozwiązanie jak każde inne
    czasem się sprawdzi , czasem niestety nie .
    Dzięki za posta , to jest właśnie dyskusja, którą nazwę pożądanym sporem o bramę, - "sporem w bramie"

    ps. niestety nie mam wiele uznania dla legalistów - wolę świadomie współtworzących , nowe prawa !!! - uwaga karalne !!



    Ostatnio edytowano 8 maja 2013, o 09:16 przez jp_elek, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 08:46 

    Pomógł: 0

    Wiesz, ja tam bram nie montuje, domu nie mam, ale chciałem zwrócić uwagę na problem, co w obecnej w naszym i nie tylko naszym kraju, tandeciarstwie niestety bezpieczeństwo schodzi na dalszy plan.

    Jeżeli sam fakt zamykania bramy z "obecnym" samochodem w jej świetle można by jeszcze jakoś przeboleć - dupa jesteś gdzie stajesz :P - to kurtyna dla dziecka, czy zwierzęcia powinna być bezwzględna.

    Niestety w wielu projektach DYI bram w ogóle nie jest to brane pod uwagę, a szkoda.......



    Góra
      
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 08:56 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    No , tak źle nie jest , tutaj mamy sygnał Kolizja ,i jego obsługujemy ,
    niestety w przewrotności swojej, z ochrony wyłączył bym koty- ale to inny temat
    i nie całkiem poważny.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 09:06 

    Pomógł: 0

    Mam dwa, coś o tym wiem ;)......



    Góra
      
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 09:12 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27415
    Lokalizacja: Szczecin
    Pomógł: 1043

    rezasurmar napisał(a):
    Mam dwa, coś o tym wiem ;)......


    Ja mam aż trzy ;) ale jakbym miał mieć w ogóle bramę, która przez nieuwagę zrobiłaby mi np z jednego kota dwa (brrrr) - i miałbym ich mieć już 4 to nie nie ;) .... dziękuję

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 09:14 

    Pomógł: 0

    No Mirku jestem tego samego zdania :), ale spróbuj tylko na innym forum odezwać się, że brak zabezpieczeń w sterowniku ;) to cię zjedzą ;).
    Po prostu znając trochę mechanikę i bezwładność zaczął bym projektowanie od założeń czy brama się zatrzyma w właściwym momencie, a nie czy zamknie się 5sekund szybciej ;).



    Góra
      
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 09:28 
    Offline
    Użytkownik

    Dołączył(a): 07 sty 2013
    Posty: 89
    Pomógł: 5

    @mirekk36
    co do kotów , bydlę to jak wiadomo jest specjalnym przypadkiem stworzenia ,
    jeśli tak, to i poprzeczka na przeżycie kota - powinna być Specjalnego typu,
    a nuż owo bydlę pokazało by jak jeszcze można ratować się ( nas oczywiście nadal interesowało by
    jak ratować wszystkich oprócz kota ) z "opresji bramy " ???



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 09:34 

    Pomógł: 0

    Ja tam do żadnych zwierząt nic nie mam, no może po za najgorszym możliwym zwierzęciem, czyli człowiekiem :P.

    Jak już wspominałem, rozważenie bezwładności bramy nie jest takie skomplikowane, w końcu jeżeli robimy sami, wiemy ile i jakie materiału użyliśmy, co za problem zważyć, jeżeli zamówiona to też w dokumentacji będzie.
    Potem to już kwestia czy wahadłowa, dwu czy jedno skrzydła, czy przesuwna, dobrze zaprojektowana z przeciw wagami to się powinna sama zamknąć po lekkim tyknięciu paluszkiem :P.
    Sprzęgło na silniku też nie problem....wystarczy kawałek gumy, forma zależnie od przeniesienia napędu itp. wszystko zależy od konkretnego rozwiązania.
    Wolno zamykająca się brama krzywdy nie zrobi, jeżeli stanie w momencie naruszenia stref bezpieczeństwa.
    Przecież nie rozmawiamy o bramach do NORAD, ani bramkach zwalnianych na wielkiej pardubickiej gdzie bramka się ma otwierać szybko i bez opóźnień.

    PS. Problemem z "inżynierami" projektującymi bramy jest taki, że słabo się rozeznają w tematyce rozkładu mas, bezwładności czy nawet trwałości użytych materiałów ;).......nie mówię tutaj o każdym, ale niestety sporo projektów woła o pomstę do nieba.



    Góra
      
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 maja 2013, o 10:15 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 lis 2011
    Posty: 582
    Lokalizacja: okolice Wrocławia :)
    Pomógł: 24

    Co do kotów... podobno mają 7 żyć, więc za którymś razem się w końcu nauczą żeby w zamykającą się bramę nie wchodzić :lol: :lol:

    Według mnie powinna być ustawiana opcja obsługi kolizji, czy ma tylko zatrzymywać bramę czy zatrzymać i rozpocząć ruch przeciwny (otwieranie).
    Ja sam jestem zwolennikiem tej drugiej opcji ale oczywiście wszystko zależy od okoliczności wystąpienia zdarzenia.

    Ciekawą opcją dodatkową jest również automatyczne zamykanie, po otworzeniu bramy nic się nie dzieje do momentu przecięcia bariery, po jej przecięciu zaczyna być odliczany czas np. 2 minuty i jeżeli nie nastąpi kolejne przecięcie wiązki (reset czasu), brama automatycznie się zamyka.
    Opcję tę można powiązać z przyciskiem otwierania, np. standardowo jest ona włączona ale gdy w czasie otwierania zostanie ponownie użyty przycisk 'otwórz', opcja automatycznego zamykania zostaje zdezaktywowana (potrzebujemy zostawić otwartą bramę na jakiś czas).

    Co do kodu programu to na razie rozumiem komentarze :lol:, no może trochę więcej, ale ogólnie jak dla mnie jest w porządku.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 54 ]  Przejdź na stronę 1, 2  Następna strona

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO