Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA

gosztekseba 25 Sep 2016 21:10 19659 57
Suntrack
  • Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA


    Sterownik PLC w oparciu o mikrokontroler AVR Atmega32

    Jakiś czas temu na forum elektrody zamieściłem pierwszy mój sterownik PLC w oparciu o mikrokontroler AVR Atmega8, który można było programować za pomocą języka drabinkowego https://www.elektroda.pl/rtvforum/topic3063168.html . Zapowiadałem, że kiedyś zmodyfikuję tą konstrukcję, aby bardziej upodobnić ją do urządzeń przemysłowych. Kilka miesięcy temu skończyłem swoja drugą wersję sterownika wraz z możliwością komunikacji na kilka sposobów. Nie obyło się bez kilku problemów (jakiś czas temu na forum pytałem o problem z flashowaniem ESP8266, który także jest częścią tej konstrukcji). Priorytetem było uzyskanie panelu HMI oraz połączenia z prostą aplikacją SCADA. Aplikacja Xscada umożliwia połączenie prototypowego sterownika z firmowymi urządzeniami przemysłowymi (np. Inne sterowniki PLC (MODBUS RTU), czujniki inteligentne (MODBUS TCP/IP)) ze względu na dużą ilość protokołów komunikacji. Każdy w domu posiada nieużywany telefon z systemem Android, który z powodzeniem można wykorzystać jako panel dotykowy do sterowania pseudo sterownikiem PLC, który opisze poniżej.

    Sterownik posiada 4 moduły:
    - Moduł CPU z Atmegą32 i wbudowanym programatorem USBasp oraz stabilizatorem liniowym 7805.
    - Moduł 4we/wyj 24V
    - Moduł 4we/wyj 24V
    - Moduł komunikacji i 2 wejść analogowych (potencjometr + zabezpieczenie diodą zenera 5V1)
    Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA
    Moduły połączone są taśmami ze złączami 10 pin.

    Prócz obudowy na szynę DIN została dodana możliwość komunikacji. Sterownik posiada 3 sposoby komunikacji (wybór DIP Switchem ):
    - przewodowa RS232
    - bezprzewodowa bluetooth z modułem HC-05 w formie mostu Bluetooth <-> UART
    - bezprzewodowa WiFi z modułem ESP8266 w formie mostu Wifi <-> UART (konieczne wgranie softu jako przeźroczysty most)

    Powstały 3 aplikacje typu SCADA:
    - Scada dla komputera klasy PC w oparciu o popularne środowisko XScada Micset
    - uniwersalna aplikacja SCADA napisana przy pomocy MIT App Inventor 2 dla Androida
    - aplikacja dla projektu inteligentnego domu także napisana w MIT App Inventor dla Androida

    XScada:
    Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA

    Uniwersalna SCADA dla Androida:
    Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA

    Aplikacja iDOM:
    Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA Sterownik PLC w oparciu o mikrokontroler AVR ver.2 + SCADA

    W załączniku umieściłem instrukcje do tworzenia aplikacji w MIT App Inventor oraz w środowisku XScada. Znajdują się tam także algorytmy komunikacji. W archiwum aplikacje znajdują się: iDom.apk, SCADA.apk oraz projekt SCADA dla środowiska Xscada. Zdjęć środka niestety nie posiadam, ale jest to dość mocno upchane więc dużo tam nie byłoby widać. Jeżeli komuś będzie potrzebny kod aplikacji w LDmicro to proszę pisać. W razie pytań także chętnie wytłumaczę wszelkie wątpliwości. Niestety nie znalazłem programu, który tworzy wirtualny port COM dla komunikacji WiFi. Sterownik komunikuje się z aplikacją SCADA poprzez RS232, a z aplikacjami mobilnymi poprzez Bluetooth. Komunikacja Wifi działa tylko przy użyciu Telnetu. Jeśli komuś potrzebne pliki źródłowe dla PCB to je udostępnię zainteresowanym dla programu Eagle. Załączniki są tylko uzupełnieniem artykułu dlatego pozwalam sobie nałożyć prowizję punktową za włożony trud w napisanie instrukcji oraz udostępnienie gotowych aplikacji.

    Cool? Ranking DIY
    About Author
    gosztekseba
    Level 31  
    Offline 
    Has specialization in: komputery, linux, sterowniki plc
    gosztekseba wrote 1588 posts with rating 171, helped 119 times. Live in city Kielce. Been with us since 2008 year.
  • Suntrack
  • #2
    scooba
    Level 15  
    Daje plus za prace, bo poswiecil kolega duzo pracy a i efekt koncowy jest wiecej niz zadowalajacy. Nie rozumiem tylko jaki cel przyswiecal, bo jesli byl to cel naukowy to chyle czola ale w innym wypadku mozna znalesc wiele podobnych rozwiazan siemensa, fateca, czy innych wynalazkow.
  • #3
    ditomek
    Level 22  
    świetna robota.
    Ale zwrócę uwagę na 2 rzeczy (nie żebym się czepiał)
    1. wejścia masz w najprostszej konfiguracji. brakuje filtrów RC. W niektórych aplikacjach mogą być potrzebne.
    2. Umieściłbym wszystko w jednej obudowie i dodał LEDy do sygnalizowania komunikacji

    Czy Twój system pozwala na dodawanie kolejnych modułów IO?
  • #4
    DmZ
    Level 18  
    Co do projektu - super. Ile takich sterowników możesz umieścić na jednym kablu?
    Co do siemensa, to irańskie wirówki atomowe pokazały ich przydadność...
  • #5
    coberr
    Level 20  
    Popieram zdanie przedmówcy - gratulacje za projekt - jednak pod kątem zakłóceń - układ zaprojektowany jest fatalnie - co może (i prawdop. będzie) skutkować występowaniem wielu problemów w przyszłości.

    - brak jakichkolwiek filtrów i zabezpieczeń za zasilaniu.
    - brak jakichkolwiek obwodów wejściowych - zwlaszcza filtrów
    - źle zaprojektowane obwody wyjściowe. (głownie to brak rezystorów przy tranzystorach wykonawczych (B-E) (w zasadzie ten sam bład powielony został kilkanascie razy zarówno w obwodach wejściowych jak i wyjściowych))
    - wręcz fatalnie zaprojektowana płytka CPU - zwłaszcza pod względem prowadzenia ścieżek masy - zwłaszcza dla układu generatora kwarcowego i elementów w nim pracujących. Jest to przykłąd tego - jak nie nalezy prowadzic płaszczyzny masy dla generatora kwarcowego oraz kondensatorów w nim pracujących .
    - kolejny problem to prowadzenie mas oraz odsprzężenie zasilania dla układów ADC.


    ale te uwagi to tak na przyszłość - abyw przyszlości tego typu błędów było jak najmniej :)
  • #6
    DmZ
    Level 18  
    J/w. ja zawsze będę za tym żeby wspierać polską myśl techniczną a nie jakiestam siemensy. polska musi mieć swoją mysl techniczną i swoją inteligencję. uzaleznienie sie od "wiedzy" z zachodu to strzał w stopę.
  • #7
    piotrek2914
    Level 16  
    coberr wrote:
    jak nie nalezy prowadzic płaszczyzny masy dla generatora kwarcowego oraz kondensatorów w nim pracujących .

    Znacie może jakieś zwięzłe i proste opracowania zaleceń projektowych dla takich właśnie konstrukcji opartych o Atmegi? Jestem ciekawy bo chciałbym coś podobnego popełnić ale może lepiej się wcześniej trochę doszkolić.
  • #8
    tronics
    Level 38  
    @DmZ to nie ma co jak od Microchipa się uzależniać żeby zrobić pseudo PLC :)

    Quote:
    Znacie może jakieś zwięzłe i proste opracowania zaleceń projektowych dla takich właśnie konstrukcji opartych o Atmegi? Jestem ciekawy bo chciałbym coś podobnego popełnić ale może lepiej się wcześniej trochę doszkolić

    Noty atmela np http://www.atmel.com/images/doc8128.pdf
  • #9
    Anonymous
    Anonymous  
  • Suntrack
  • #12
    michaljastrzebski
    Level 11  
    szymon122 wrote:
    Skąd masz takie fajne obudowy które tak zepsułeś wizualnie :D
    Szukałem ich po hurtowniach elektrycznych ale nigdzie nie mają.
    Jaka jest ich cena?


    Zgadzam się, zrobiona płytka z diodami, a w obudowie rozjeżdżają się ładnie :D

    Obudowy produkcji Kradex ma w swojej ofercie np. Gotronik:
    http://www.gotronik.pl/modulowe-na-szyne-din-c-162_165.html
  • #13
    michaljastrzebski
    Level 11  
    R-MIK wrote:

    A może kolega napisać po polsku?


    Płytka do sygnalizacji LED jest zrobiona, więc diody powinny być równo. Na zdjęciach widać że diody nie są zamontowane w równej linii.
  • #14
    gosztekseba
    Level 31  
    scooba wrote:
    Daje plus za prace, bo poswiecil kolega duzo pracy a i efekt koncowy jest wiecej niz zadowalajacy. Nie rozumiem tylko jaki cel przyswiecal, bo jesli byl to cel naukowy to chyle czola ale w innym wypadku mozna znalesc wiele podobnych rozwiazan siemensa, fateca, czy innych wynalazkow.


    Była to praca projektowa na Politechnice. Urządzenie zostało zbudowane dla zastosowań niezagrażających życiu człowieka.

    ditomek wrote:

    Umieściłbym wszystko w jednej obudowie i dodał LEDy do sygnalizowania komunikacji

    Czy Twój system pozwala na dodawanie kolejnych modułów IO?


    Poprzedni projekt był w jednej obudowie ale niestety nie znalazłem tak dużej obudowy na szynę DIN. Co do sygnalizacji komunikacji to słuszna uwaga.

    coberr wrote:
    Popieram zdanie przedmówcy - gratulacje za projekt - jednak pod kątem zakłóceń - układ zaprojektowany jest fatalnie - co może (i prawdop. będzie) skutkować występowaniem wielu problemów w przyszłości.

    - brak jakichkolwiek filtrów i zabezpieczeń za zasilaniu.
    - brak jakichkolwiek obwodów wejściowych - zwlaszcza filtrów
    - źle zaprojektowane obwody wyjściowe. (głownie to brak rezystorów przy tranzystorach wykonawczych (B-E) (w zasadzie ten sam bład powielony został kilkanascie razy zarówno w obwodach wejściowych jak i wyjściowych))
    - wręcz fatalnie zaprojektowana płytka CPU - zwłaszcza pod względem prowadzenia ścieżek masy - zwłaszcza dla układu generatora kwarcowego i elementów w nim pracujących. Jest to przykłąd tego - jak nie nalezy prowadzic płaszczyzny masy dla generatora kwarcowego oraz kondensatorów w nim pracujących .
    - kolejny problem to prowadzenie mas oraz odsprzężenie zasilania dla układów ADC.


    ale te uwagi to tak na przyszłość - abyw przyszlości tego typu błędów było jak najmniej :)


    Układ zaprojektowany tak fatalnie, że działa już nieprzerwanie od maja z małą instalacją fotowoltaiczną oraz wiatrową i nie ma żadnych problemów. Oczywiście jeżeli umieścimy taki sterownik blisko silników to może być problem. Co do sekcji wejścia, została ona wzorowana na tej ze strony autora LDmicro + optoizolacja według mnie jest to wystarczające. To nie jest mój pierwszy projekt w oparciu o mikrokontrolery i nigdy problemów nie było z niepoprawnym działaniem. Co do rezystorów w sekcji wyjścia - stosowałem takie rozwiązania już od kilku lat w różnych aplikacjach nigdy nie było problemów. Co do ścieżki masy - generator kwarcowy pracuje bez najmniejszych problemów o czym świadczy brak błędów w przesyłanych danych po UART. Miał kolega kiedyś problemy z wyżej wymienionymi błędami?
    Jedyne z czym się muszę zgodzić to ADC - to powinno zostać lepiej zaprojektowane z zastosowaniem wzmacniaczy operacyjnych.

    Otwory w obudowach niestety bez użycia wiertarki stołowej stąd wyszło tak a nie inaczej...

    R-MIK wrote:
    Czemu służą tranzystory w obwodach wejściowych, że o rezystorach szeregowych do CPU nie wspomnę?
    Czy drivery wyjściowe nie lepiej było zrobić na TD62783?
    Stabilizator mocno się grzeje przy zasilaniu 24V?
    dlaczego aż dwa napięcia zasilania? Nie dało się zasilić wszystkiego z 3V3?

    Mega32 i nie wykorzystać JTAG-a.


    Nie wykorzystałem JTAG-a ze względu na to, że nie programuję tego sterownika w C, a w LDmicro. Co do rezystorów to aplikacja autora LDmicro. 7805 nie grzeje się mocno, dlatego zrezygnowałem z przetwornicy Step-down. Co do driverów wejściowych pewnie bym wykorzystał powyższy układ gdybym o nim wiedział :)

    szymon122 wrote:
    Skąd masz takie fajne obudowy które tak zepsułeś wizualnie :D
    Szukałem ich po hurtowniach elektrycznych ale nigdzie nie mają.
    Jaka jest ich cena?


    Obudowy bez problemu do dostania na portalu aukcyjnym po hasłem: "Obudowa na szynę din".
  • #15
    Anonymous
    Anonymous  
  • #16
    gosztekseba
    Level 31  
    R-MIK wrote:
    Owszem, negują sygnał ale to sprawa programu.


    Czyli ustawiam w programie drabinkowym zamiast :

    --||-------------------( )---

    następująco:

    -|/|------------------( )---

    A wtedy mamy odwrotną logikę. Czy w sterowniku Siemensa czy Omrona też mam odwróconą logikę? (pytanie retoryczne). Gdy robię projekt w języku C to nie ma żadnego problemu, ale tutaj jest język drabinkowy i sterownik ma działać według znormalizowanych zasad, a nie odwrotnie.
  • #17
    Modecom601
    Level 13  
    Czy ktoś ma warte uwagi PDF'y/linki/tematy na forum o eliminacji zakłóceń z silników i innych urządzeń automatyki siejących czym się tylko da dla sterowników opartych o mikrokontrolery?
  • #18
    Anonymous
    Anonymous  
  • #19
    coberr
    Level 20  

    Była to praca projektowa na Politechnice. Urządzenie zostało zbudowane dla zastosowań niezagrażających życiu człowieka.


    W takim razie coś poziom nauczania na politechnikach znacznie się obnizył - śmiem twierdzić - ze już nawet poniżej starych dobrych 5- letnich techników :)
    Obawiam się, że w dalszej perspektywie (w wyniku błę2dów projektowych może dojśc do sytuacji , ktora będzie zagrażała mieniu (pożar) oraz życiu. Tego Tobie ani nikomu absolutnie nie życzę .



    Układ zaprojektowany tak fatalnie, że działa już nieprzerwanie od maja z małą instalacją fotowoltaiczną oraz wiatrową i nie ma żadnych problemów. Oczywiście jeżeli umieścimy taki sterownik blisko silników to może być problem.


    To nie jest problem tylko i wyłącznie silników ale rowniez wszelkich innych zakłoceń elektromagnetycznych.
    Poza tym instalacje fotowoltaiczne są na tyle specyficzne - ze przeciętny elektronik nie ma zielonego pojecia o zagrozeniach i problemach - jakie tam występują. Zwłaszcza jesli chodzi o bezpieczeństwo, zakłócenia oraz pewność działania.


    Co do sekcji wejścia, została ona wzorowana na tej ze strony autora LDmicro + optoizolacja według mnie jest to wystarczające. To nie jest mój pierwszy projekt w oparciu o mikrokontrolery i nigdy problemów nie było z niepoprawnym działaniem.


    Dlatego praktycznie nigdy nie wzoruję sie na gotowych konstrukcjach :)
    A jesli nawet - to staram sie je analizować bardzo szczegółowo.
    Z reguly wyłazi w nich sporo "baboli" lub czegoś, co można by poprawić lub zmienić :).
    Prawa Murphyego kolega zna? jak nie zna - to pozna :D

    Co do rezystorów w sekcji wyjścia - stosowałem takie rozwiązania już od kilku lat w różnych aplikacjach nigdy nie było problemów.

    Kolega jeszcze raz dokłądnie przeanalizuje to co napisałem w swoim poście powyżej - wczesniej czy poźniej sie pojawią :)
    Jesli tego jeszcze nie zauważyłeś - wskazówka: w stanie nieaktywnym bazy tranzystorów wykonawczych " dyndają" w powietrzu - jest to sytuacja niedopuszczalna zwłaszcza dla obciążeń indukcyjnych. Jednak nie ma znaczenia charakter obciązenia w środowisku obecnie silnie zaśmieconym elektromagnetycznie. Problemy i tak sie pojawią - a kolega bedzie bezskutecznie szukał przyczyny.


    Co do ścieżki masy - generator kwarcowy pracuje bez najmniejszych problemów o czym świadczy brak błędów w przesyłanych danych po UART. Miał kolega kiedyś problemy z wyżej wymienionymi błędami?

    NIe odnosilem sie tutaj do ukałdu UART a do wplywu pracy tak zaprojektowanej pcb na prace całego systemu mikroprocesorowego.

    Stworzyłes piekna pętlę masy, przez całą płytkę. W tej sytuacji - moze obecnie układ będzie działal ale przyjdzie taki moment - ze zacznie wariować.
    DO tego stworzyłes piekny nadajnik radiowy :)- który będzie siał dookoła na czestotliwości kwarcu i jego harmonicznych.

    A wystarczyło przerzucić kondensatory z nóg 12-13 - bezpośrednio pod scalak - do nogi 11-stej. Kwarc mogłby sobie tak pozostać jak jest.



    Jedyne z czym się muszę zgodzić to ADC - to powinno zostać lepiej zaprojektowane z zastosowaniem wzmacniaczy operacyjnych.


    Niekoniecznie na wzm. OP.Jednak o prawidłowe prowadzenie mas i odsprzężenie zasilania mogłbys sie następnym razem postarać.

    Kolega wspomniał jeszcze o zastosowanej optoizolacji...

    No niestety nie jest to zadna optoizolacja (spójrz na swoje PCB).
    Jest tu pieknie powielony bląd występujący wśrod większosci mlodych konstruktorów na całej elektrodzie. BRAK IZOLACJI GALWANICZNEJ.
    SAM PRZEANALIZUJ - CZY MASZ GDZIEKOLWIEK PRZERWĘ, KTÓRA WYTRZYMA PRZYNAJMNIEJ TE 2,5KV DC (przez conajmniej 10sek.)

    W zasadzie tak teraz patrzę - to nie ma żadnej, jakiejkolwiek izolacji galwanicznej w Twoim układzie :)

    A jak już chcesz tak dokładnie sprawdzić układ pod kątem zakłóceń (juz nawet nie przebić) - przytachaj kogoś ze spawarką i zacznijcie spawać w odl. kilku metrow.




    [quote="R-MIK"]Czemu służą tranzystory w obwodach wejściowych, że o rezystorach szeregowych do CPU nie wspomnę?

    @ R-mik

    co do tych rezystorów to mam mieszane "uczucia" :)

    Układy wejsciowe zostały zaprojektowane jak zostały - ok. niech sobie będą...
    Mozna by było ten stopien z tranzystorem i dać jedynie zewnętrzne pull-upy
    (nawet poniżej 4,7k) i w efekcie juz w programie zanegowac sobie te sygnały.

    Jednak dodatkowa zaleta takiego rozwiazania jest taka - że w przypadku błedu w programie - kolega nie upali sobie portu (dokładniej dolnego tranzystora mosfet)
    Jesli przez przypadek wystawi na danym porcie stan niski a na wejsciu pojawi sie sygnał - port mamy usmażony.

    Zatem projektowanie " na najgorszy przypadek" wskazane.
    Są oczywiscie wady takiego rozwiązania - m.in. niepotrzebnie zwiększona liczba elementów (całe szczęscie - ze przynajmniej są zastosowane zewn. pull-down).
    DOchodzą jeszcze ch-ki samego układu wejsciowego.


    Nie chodzi mo o to - aby Cie urazić czy objechać kolego gosztekseba...
    Każdy sie uczy i to całe zycie a na koniec stwierdza ze i tak g... wielkie umie :)
    Jednak błedow należy sie wystrzegac - na tyle na ile sie da. (i zawsze kuźwa jeszcze coś wylezie :) )

    W tym przypadku - aplikacja z pozoru bezpieczna i nie zagrażająca zyciu - moze nagle zacząć stanowic zagrozenie.
  • #20
    Modecom601
    Level 13  
    R-MIK
    Dzięki za odpowiedź, faktycznie ferryty to jak woda dla ryb, pytam o jakieś dobre praktyki, bo walczę z jedną dużą maszyną i mam losowe stopy, dlatego pytam o jakieś linki, dobre praktyki, rozwiązania sprawdzone nieopisane w internecie itp. ;-( Zastosowałem się do wszystkiego co znalazłem dotychczas w wyszukiwarce a losowość zatrzymań nadal występuję...
  • #21
    Anonymous
    Anonymous  
  • #22
    gosztekseba
    Level 31  
    R-MIK wrote:


    Wstydziłbym się to napisać. Bardziej by pasowało: Mam 15 lat i stawiam pierwsze kroki w projektowaniu urządzeń z mikrokontrolerem.


    Skoro ta konstrukcja jest aż tak tragiczna (nie wiem dlaczego aż tak mi się oberwało bo widziałem dużo gorszych projektów) niestety jestem zmuszony ją usunąć. Nikt nie skomentował napisanych aplikacji - jestem programistą i to był właśnie temat projektu. W projekcie ważne były protokoły komunikacji sterownika z aplikacjami typu SCADA. Sterownik był konstrukcją, która miała udowodnić poprawne działanie napisanych aplikacji. Nie mniej jednak sterownik radzi sobie bardzo dobrze od kilku miesięcy dlatego nie zgodzę się z tym że ta konstrukcja była aż taka tragiczna. Napewno zabolał mnie bardzo komentarz użytkownika R-MIK, który zmieszał mnie z błotem.

    Człowiek chce coś pokazać, aby inni dokonali trafnych modyfikacji konstrukcji i w tani sposób zbudowali sterownik, który programuje się bardzo prosto i poradzi sobie z tym każdy. Napisałem instrukcje dla osób zaczynających swoją przygodę z pisaniem aplikacji pod system Android oraz pokazałem prosty darmowy system SCADA. Pokazałem także, w jaki sposób zbudować można tani konwerter WIFI <-> UART . Jest tu dużo rzeczy które można wykorzystać w innych projektach i taki był zamysł, aby nie kopiować tego projektu a wykorzystywać tylko jego części. Wcale nie trzeba budować sterownika i programować go w LDmicro, komunikacja będzie działać także z urządzeniami programowanymi w języku C. Niestety to jest kolejny przykład, że nie warto pokazywać na tym forum cokolwiek. Przez takich ludzi jak R-MIK niejednokrotnie zniechęca się innych do pokazania swoich konstrukcji. W wolnym czasie od pracy zawodowej napisałem instrukcje, które mogą komuś pomóc stawiać pierwsze kroki w wyżej wymienionych tematach.

    Szkoda tylko, że tracą na tym inni użytkownicy tego forum - w wolnym czasie miałem napisać instrukcję i udostępnić gotowe algorytmy dla ESP8266 w języku LUA, który jest sercem "inteligentnych" czujników komunikujących się z urządzeniami przemysłowymi po protokole MODBUS TCP/IP. Urządzenie działa już jakiś czas(w tej chwili jest testowane) i przesyła ramkę danych ze stanem czujnika z wyjściem prądowym 4-20mA (w tej chwili jest to czujnik temperatury PT100). Sterownik pojawił się dopiero teraz także ze względu na testowanie. Niestety kolega R-MIK wie lepiej że to działać nie ma prawa i na tyle mnie do tego zniechęcił, że nie pokaże tutaj już żadnej konstrukcji.

    Ja rozumiem uwagi i inne uzasadnione rzeczy bo zawsze są niedociągnięcia, ale za mieszanie ludzi z błotem chociaż pewnie pierwszy nie jestem, tacy ludzie powinni zostać usuwani z tego forum.

    Jakoś kolega coberr potrafił uzasadnić swoje racje i to się ceni - takich ludzi tutaj trzeba.
  • #23
    gosztekseba
    Level 31  
    R-MIK wrote:
    gosztekseba wrote:
    Napewno zabolał mnie bardzo komentarz użytkownika R-MIK, który zmieszał mnie z błotem.

    1. Na pewno a nie napewno.
    2. Nie dostałem żadnej konkretnej odpowiedzi na moje pytania. I co? Mam za to głaskać po główce?


    Ad.1 Przed chwilą był elektronikiem teraz polonistą znalazł jeden błąd i się podnieca.

    Ad.2 Nie dostałeś?

    gosztekseba wrote:

    R-MIK wrote:
    Czemu służą tranzystory w obwodach wejściowych, że o rezystorach szeregowych do CPU nie wspomnę?
    Czy drivery wyjściowe nie lepiej było zrobić na TD62783?
    Stabilizator mocno się grzeje przy zasilaniu 24V?
    dlaczego aż dwa napięcia zasilania? Nie dało się zasilić wszystkiego z 3V3?

    Mega32 i nie wykorzystać JTAG-a.


    Nie wykorzystałem JTAG-a ze względu na to, że nie programuję tego sterownika w C, a w LDmicro. Co do rezystorów to aplikacja autora LDmicro. 7805 nie grzeje się mocno, dlatego zrezygnowałem z przetwornicy Step-down. Co do driverów wejściowych pewnie bym wykorzystał powyższy układ gdybym o nim wiedział :)


    Projekt oceniasz a przejrzałeś cały projekt? Czy za projekt uważasz tylko sterownik? A może oceniasz tylko cześć elektroniczną bo na niczym innym się nie znasz?
    R-MIK wrote:

    2. Dlaczego są dwa napięcia zasilające?


    Bo miałem pod ręką akurat MAX232, a nie MAX3232.
  • #24
    gosztekseba
    Level 31  
    Jeden błąd, a afera jakbym bez polskich znaków pisał. Sprawdź czy wszystkie przecinki są tam gdzie powinny być.
  • #25
    Modecom601
    Level 13  
    Jako neutralna osoba w tej dyskusji powiem tylko, że wszystkie uwagi, jakie tutaj zostały wymienione w aspekcie poprawnego rysowania PCB, schematu zasilania itp. są jak najbardziej trafne, ale można je napisać w nieco przyjemniejszy sposób ;-) Na pewno te porady nie są czyimś "widzi mi się", wszystkie te dobre rady można bardzo łatwo znaleźć nie zagłębiając się zbyt głęboko w blogi/poradniki/tematy na forum. Również powiem do znudzenia: to, że projekt teraz działa, nie oznacza, że będzie działał wiecznie i bezawaryjnie, stąd moje wtrącenie w temat o zakłóceniach pracy mikrokontrolerów. Wrzuć następny projekt bo ja się jednym rozwiązaniem zaciekawiłem ( od strony informatycznej).
  • #26
    tronics
    Level 38  
    Oczywiście, że część argumentów jest jak najbardziej słuszna, z drugiej strony te dot. prowadzenia masy czy montażu kwarcu jak najbardziej mają zastosowanie również do projektów z EP, ale nikt się nie czepia skoro działają... Myślę, że kolega R-MIK wprowadził dużo niepotrzebnej "negatywnej energii", to nie jest pod żadnym względem konstruktywna krytyka. Skoro platforma sprzętowa miała stanowić jedynie dowód działania aplikacji PLC to nie widzę sensu tej lawiny krytyki. Czy po wdrożeniu wszystkich zaproponowanych zmian od strony programowej zmieniłoby się COKOLWIEK? No właśnie... nie.
  • #27
    djfarad02
    Level 19  
    Nie ma o co bić piany, autor jak się kiedyś sparzy na niestabilności w jakimś ze swoich projektów to potraktuje poważnie temat odporności systemów mikroprocesorowych na zakłócenia. Przedstawione uwagi dotyczące projektu elektroniki są zasadne.
  • #28
    gosztekseba
    Level 31  
    djfarad02 wrote:
    Nie ma o co bić piany, autor jak się kiedyś sparzy na niestabilności w jakimś ze swoich projektów to potraktuje poważnie temat odporności systemów mikroprocesorowych na zakłócenia. Przedstawione uwagi dotyczące projektu elektroniki są zasadne.


    Jeszcze się nie sparzyłem bo zastosowanie mikrokontrolerów do przemysłu to raczej zły pomysł. W codziennej pracy używam sterowników PLC, ale często widzę, że ludzie pakują np. Eaton EASY 512 (tani nie jest jak do tego zastosowania) do sterowania oświetleniem klatki schodowej - bo w drabince prościej napisać kilka linii niż poszukiwać w notach jaki rejestr timera ustawić, aby uzyskać minutę stanu wysokiego na wyjściu... Temu służyć ma właśnie LDmicro, a dodatkowo możemy sterować wyjściami z poziomu telefonu. Ile kodu trzeba napisać w C, aby szybko wysterować z telefonu kilka pinów? Tu raczej się nie przejadę, a gdyby nawet się zresetował raz na rok to ktoś rękę straci? Do zastosowań przemysłowych raczej nikt o zdrowych zmysłach nie wstawi mikrokontrolera.


    R-MIK wrote:

    Ale gdy błędne rozwiązania zostaną skopiowane przez jakiegoś konstruktora to będzie dobrze? Ponadto, skoro autor chciał pochwalić się softem to po co pokazał budowę sprzętu?


    Po to są właśnie uwagi, które zostały wcześniej napisane. Napisałem wyraźnie, to jest tylko cześć projektu, która pokazuje że algorytmy działają i można śmiało wykorzystywać je w innych projektach. Jak dla mnie sterownik kilka miesięcy działa i nie ma problemów akurat w tym miejscu gdzie go zastosowałem. Ale trzeba było człowieka "zgnoić", mam nadzieje że ulżyło.

    tronics wrote:
    Oczywiście, że część argumentów jest jak najbardziej słuszna, z drugiej strony te dot. prowadzenia masy czy montażu kwarcu jak najbardziej mają zastosowanie również do projektów z EP, ale nikt się nie czepia skoro działają... Myślę, że kolega R-MIK wprowadził dużo niepotrzebnej "negatywnej energii", to nie jest pod żadnym względem konstruktywna krytyka. Skoro platforma sprzętowa miała stanowić jedynie dowód działania aplikacji PLC to nie widzę sensu tej lawiny krytyki. Czy po wdrożeniu wszystkich zaproponowanych zmian od strony programowej zmieniłoby się COKOLWIEK? No właśnie... nie.


    Zgadzam się w 100%.
  • #29
    tronics
    Level 38  
    Quote:
    bo zastosowanie mikrokontrolerów do przemysłu to raczej zły pomys

    Tu akurat trochę strzał w stopę bo mikrokontrolery nie zaczynają i nie kończą się na atmega8 :) I są dosłownie wszędzie... nawet w tych zastosowaniach o których kolega pisze. Co prawda nie oprogramowane z poziomu BASCOMa czy C, nawet nie LAD :) Ale są... jako komponenty tych urządzeń z HMI :)
  • #30
    gosztekseba
    Level 31  
    tronics wrote:
    Quote:
    bo zastosowanie mikrokontrolerów do przemysłu to raczej zły pomys

    Tu akurat trochę strzał w stopę bo mikrokontrolery nie zaczynają i nie kończą się na atmega8 :) I są dosłownie wszędzie... nawet w tych zastosowaniach o których kolega pisze. Co prawda nie oprogramowane z poziomu BASCOMa czy C, nawet nie LAD :) Ale są... jako komponenty tych urządzeń z HMI :)


    Tylko ktoś w razie wypadku musi za to odpowiedzieć jeżeli zawiedzie sterownik - brak znaku CE. Oczywiście nie mam na myśli produktów firmowych w oparciu o mikrokontrolery tylko tak jak w tym przypadku człowiek sam tworzy sobie układ sterujący w oparciu o mikrokontroler bez certyfikacji i umieszcza go w zakładzie produkcyjnym. Dla spokoju wtedy wybierze PLC.

    R-MIK wrote:
    gosztekseba wrote:
    Jak dla mnie sterownik kilka miesięcy działa i nie ma problemów akurat w tym miejscu gdzie go zastosowałem.

    Ja 20 lat przechodzę na czerwonym świetle i nigdy nic mi się nie stało. Czy to oznacza, że wszyscy mają postępować tak jak ja?


    A czy ktoś Ci każe przechodzić na czerwonym? Ja też nikomu nie każe stosować swojego rozwiązania tylko pokazuje, że u mnie to działa i to nie 30min, a kilka miesięcy. Jeżeli ktoś będzie chciał zbudować takie urządzenie to i tak od nowa je zaprojektuje według swoich zasad, tym bardziej ze względu na Twoje optymalizacje rozmiaru płytek (bez niepotrzebnych rezystorów i tranzystorów). Ja płytki tworzyłem w taki sposób, aby zmieściły się do obudów także ktoś i tak to zmieni.