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

Ochrona układu przed zakłóceniami - podwójna optoizolacja?

lupin22 12 Maj 2017 20:18 804 19
  • #1 12 Maj 2017 20:18
    lupin22
    Poziom 9  

    Witam,

    borykam się z następującym problemem:

    Robię coś na kształt sterownika CNC za pomocą arduino mega, wyświetlacza 5" z układem ft800 (komunikacja przez spi) i 2 sterowników silników krokowych SK5045 4.5A, silników krokowych 4A i zasilacza impulsowego 24V 250W 10A.

    Niestety, gdy do układu podłączone są jednocześnie sterowniki silników krokowych, jak i wyświetlacz, to na wyświetlaczu pojawiają się błędy, migotanie, aż do zawieszenia, wygląda to na błędy w komunikacji SPI (dane do wyświetlacza wysyłane są w głównej pętli programu), tak, jakby przekazywane dane zostały w jakiś sposób uszkodzone. Sęk tylko w tym, że ten sterownik silnika krokowego ma już optoizolację wejść sterujących, więc te zakłócenia nie mogą iść bezpośrednio z zasilacza, bo jest odseparowany galwanicznie.

    Udało mi się częściowo zaradzić problemowi poprzez rozplątanie kabli (postarałem się, żeby przewody sterujące były jak najdalej od wchodzących do sterownika kabli z zasilaniem 24V) i teraz błędy są mniejsze, ale wciąż praktycznie uniemożliwiają mi korzystanie z wyświetlacza.

    W jaki sposób mogę temu zaradzić? Wygląda to tak, jakby w przewodach sterujących wchodzących do sterownika silnika indukowały się jakieś zakłócenia, mimo, że od zasilania dzieli je kilka centymetrów (dalej już nie można, bo taka jest odległość między terminalami. Przewody SPI mają kilkanaście centymetrów długości, ale są daleko od sterowników i zasilacza, a zakłócenia zaczynają się w momencie, jak podepnę przewód z optoizolatorem w sterowniku. Więc chyba nic się bezpośrednio w przewodach SPI nie dzieje, tylko zakłócenia są przekazywane do masy i stąd problemy?

    Czy może dałoby się zrobić podwójną optoizolację? Zaraz przy mikrokontrolerze sterować poprzez optoizolatory optoizolatorami już na sterowniku? Jak taki układ łączący wtedy by wyglądał? Próbowałem linie MISO, MOSI i SCK podłączyć przez rezystor 10k do GND, ale to nic nie zmeniło.

    Z góry bardzo dziękuję za wszystkie sugestie. Bardzo nie chciałbym rezygnować z tego ekranu, bo jest genialny, ale w takim zastosowaniu nie mogę ryzykować, że się zawiesi.

    EDIT: Spróbowałem dać dłuższy rpzewód między sterownikiem silnika krokowego, a mikrokontrolerem i problem się nasilił. Nie wiem, czy to nie przypadek, ale po powrocie do krótszych przewodów ilość zakłóceń jest znacznie mniejsza.

    0 19
  • Arrow Multisolution Day
  • Pomocny post
    #2 12 Maj 2017 21:49
    jdubowski
    Specjalista - urządzenia lampowe

    lupin22 napisał:
    Udało mi się częściowo zaradzić problemowi poprzez rozplątanie kabli (postarałem się, żeby przewody sterujące były jak najdalej od wchodzących do sterownika kabli z zasilaniem 24V) i teraz błędy są mniejsze, ale wciąż praktycznie uniemożliwiają mi korzystanie z wyświetlacza.


    Poskręcać przewody, jak to dalej nic nie da to ekranować.

    lupin22 napisał:
    Nie wiem, czy to nie przypadek, ale po powrocie do krótszych przewodów ilość zakłóceń jest znacznie mniejsza.


    Na dłuższej antenie odbiór lepszy, to nie przypadek, ale ty akurat odbierasz zakłócenia ;)

    BTW - połaczania zasilania i mas jak sa zrobione? Ile jest zasilaczy?

    0
  • Pomocny post
    #3 12 Maj 2017 22:04
    michcior
    Poziom 30  

    Jaki jest zegar na SPI? Ten wyświetlacz jest połączony z procesorem wprost? Takie łączenie jest dobre w obrębie płytki/zamkniętego urządzenia. Jak wychodzimy na zewnątrz interfejsem który jest wysokoimepdancyjny to trudno się spodziewać że nie będzie się zakłócał. Radziłbym ten SPI ubrać w jakiś nadajnik odbiornik linii. Najprostszy RS422/485 stąd pytanie o zegar SPI, jest wiele różnych transmiterów/odbiorników od właśnie RS-a aż po LVDS i coś da się dobrać.

    0
  • #4 12 Maj 2017 22:44
    lupin22
    Poziom 9  

    @jdubowski
    W chwili obecnej sterowniki silników krokowych są zasilane bezpośrednio z zasilacza 24V. Arduino mega podpięte jest przez USB do komputera i stąd płynie zasilanie do niego. Nie ma żadnego połączenia masy zasilacza 24V i masy arduino. Ze sterownika jest wyjście + i - z optoizolatora, - łączę z GND arduino, a + łączę z pinem, który steruje. Tylko, że wystarczy nawet jeden z nich podłączyć ( + albo -, czyli obwód jest wciąż otwarty) i zakłócenia już przechodzą. Tak, jakby rzeczywiście przewód łączący sterownik z arduino je zbierał i przekazywał do układu. Mogę to rozrysować, jeśli mówię niejasno. Stąd moje pytanie właśnie o to, żeby jeszcze tuż przy samym arduino znowu zastosować optoizolację, wtedy te zakłócenia by nie przeszły dalej (jeśli dobrze myslę). Może też pomoże fakt, że te sterowniki wraz z zasilaczem będę chciał docelowo zamknąć w jakiejś skrzynce elektrycznej? Wtedy chyba te moje wychodzące z niej anteny na zakłócenia byłyby narażone w mniejszym stopniu?

    Ja rozumiem, że mówię o dość wysokim prądzie - 4A i ten sterownik generuje zakłócenia, ale żeby one się rozchodziły w tak dużym promieniu? Krótszy przewód miał około 20cm, dłuższy 100cm, a to by znaczyło, że nawet w odległości ponad 20cm zbierane są zakłócenia, skoro było ich więcej na tym dłuższym przewodzie.

    Pomyślałem sobie, że wstawię rezystor szeregowo z pinami miso, mosi i sck, bo wiem, że stosuje się takie np. w komunikacji USB i wygląda na to, że sytuacja znacznie się poprawiła. Jeżeli przewody SPI łaczące ekran z mikrokontrolerem nie są tuż przy sterownikach, to problem zniknął. Zobaczę jeszcze, co się stanie, jak podłączę drugi sterownik.

    Ostatecznie ekran z mikrokontrolerem będzie zamknięty w obudowie, która będzie się znajdowała co najmniej pół metra od sterowników, prawdopodobnie w aluminiowej obudowie, więc chyba problem zakłóceń w samych przewodach zniknie (zwłaszcza, że długość tych przewodów zmniejszy się z ok 20 cm teraz do 8-10cm, jak będą w obudowie.

    @michcior
    Tak, wyświetlacz był połączony wprost (teraz dodałem szeregowo te rezystory). Z ekranu wychodzi taka wstążka:
    Ochrona układu przed zakłóceniami - podwójna optoizolacja?
    i dalej użyłem przewodów goldpin żeńsko-męskich 15cm, żeby połączyć to z płytką. W wersji końcowej całe arduino będzie podpięte do PCB i poprowadzę ścieżki, żeby połączyć bezpośrednio tą wstążkę z płytką, bez udziału dodatkowych przewodów. Także będzie lepiej, no i to wszystko w obudowie aluminiowej lub plastikowej, a sterowniki i zasilacz zamknę w jakiejś blaszanej skrzynce, więc to też chyba powinno pomóc.

    Jeśli chodzi o zegar, to trochę wstyd się przyznać, ale nie jestem pewny, bo to wszystko jest w gotowych bibliotekach ustawione. Linia do tego się odnoszące to chyba:

    SPI.setClockDivider(SPI_CLOCK_DIV2);

    Arduino taktowane jest 16MHz, czyli wynikałoby z tego, że zegar SPI to 8MHz.
    próbowałem też zwiększać ten dzielnik nawet do 128, nie zauważyłem żadnej różnicy ani w działaniu, ani pod względem ilości zakłóceń.

    Ekran taki. Fantastyczna sprawa w porównaniu ze zwykłymi dedykowanymi do arduino tft lcd, w których mikrokontroler musi wszystkie dane przekazać. Tutaj całością zajmuje się procek ft800 i potrafi robić prawdziwe cuda, a do szczęścia potrzeba mu tylko kilku komend. Dlatego bardzo nie chciałbym z niego rezygnować.

    0
  • Arrow Multisolution Day
  • #6 12 Maj 2017 23:16
    lupin22
    Poziom 9  

    Ogólnie trzeba szukać wyświetlaczy z układami ft800 (ekran dotykowy rezystancyjny), ft801 (ekran dotykowy pojemnościowy) - do nich są biblioteki działające. Natomiast są już lepsze układy ft81x, np ft811 i ft813, które obsługują wyświetlacze o rozdzielczości 800x480, z tym, że zaszły pewne zmiany w tych układach i biblioteki trzeba dostosować sobie samemu. Te nowsze dostępne są w sklepie, który linkowałem. Ja swój egzemplarz kupiłem na allegro, była akurat jedna sztuka, ale dość ciężko je już dostać, dałem 120zł. Są dostępne zestawy riverdi w tme, ale tam ceny zaczynają się od 300zł.

    0
  • Pomocny post
    #7 13 Maj 2017 09:00
    jdubowski
    Specjalista - urządzenia lampowe

    lupin22 napisał:
    Arduino mega podpięte jest przez USB do komputera i stąd płynie zasilanie do niego.


    Bo nie miałes zasilcza 5V czy ten komputer do czegoś służy w twoim rozwiązaniu?

    lupin22 napisał:
    Nie ma żadnego połączenia masy zasilacza 24V i masy arduino.


    A jak to połączenie zrobisz to problem się nie rozwiązuje?

    lupin22 napisał:
    Ze sterownika jest wyjście + i - z optoizolatora, - łączę z GND arduino, a + łączę z pinem, który steruje.


    Ta komunikacja jest jednokierunkowa?

    lupin22 napisał:
    Tak, jakby rzeczywiście przewód łączący sterownik z arduino je zbierał i przekazywał do układu.


    Pokaż schematy obu interfejsów. Zdjęcie konstrukcji też by się przydało.

    lupin22 napisał:
    Stąd moje pytanie właśnie o to, żeby jeszcze tuż przy samym arduino znowu zastosować optoizolację, wtedy te zakłócenia by nie przeszły dalej (jeśli dobrze myslę).


    Optoizolacja nie jest panaceum. Pytanie o to co masz przy arduino jako bufor (jesli w ogóle).

    lupin22 napisał:
    Ostatecznie ekran z mikrokontrolerem będzie zamknięty w obudowie, która będzie się znajdowała co najmniej pół metra od sterowników, prawdopodobnie w aluminiowej obudowie, więc chyba problem zakłóceń w samych przewodach zniknie (zwłaszcza, że długość tych przewodów zmniejszy się z ok 20 cm teraz do 8-10cm, jak będą w obudowie.


    Ekranowanie to podstawa. Wyprowadzenie przewodów do sterowników też zrób przewodem w ekranie. przewody silnoprądowe powinny być tak prowadzone by pole powierzchni nimi ograniczone było jak najmniejsze.

    0
  • #8 13 Maj 2017 10:40
    _jta_
    Specjalista elektronik

    Czy optoizolacja jest na wejściach, czy na wyjściach? Sygnały można przesyłać skrętką, na jej końcu (przy wejściu układu odbierającego sygnał) dać transoptor.

    Nadajnik sygnału można zrobić o dopasowanej impedancji (impedancja skrętki to około 120 omów); z odbiornikiem jest trudniej, bo jest dioda, można spróbować dać opornik szeregowy 300R z diodą i równoległy do całości 150R. Ale przy zastosowaniu dopasowania z obu stron nadajnik musiałby być zasilany napięciem 6-9V, 5V nie da wystarczającego sygnału.

    Masy można połączyć przez opornik, kilkanaście omów, i lepiej, żeby takie połączenie było.

    0
  • #9 13 Maj 2017 11:18
    lupin22
    Poziom 9  

    jdubowski napisał:

    Bo nie miałes zasilcza 5V czy ten komputer do czegoś służy w twoim rozwiązaniu?


    Będzie zasilacz osobny, po prostu teraz jest to podłączone do komputera, bo jeszcze piszę program i ciągle coś zmieniam.


    jdubowski napisał:

    A jak to połączenie zrobisz to problem się nie rozwiązuje?

    _jta_ napisał:

    Masy można połączyć przez opornik, kilkanaście omów, i lepiej, żeby takie połączenie było.


    A czy zastosowanie optoizolacji w samym sterowniku nie ma na celu właśnie wyeliminowania konieczności łączenia tych mas? Żeby ochronić mikrokontroler sterujący przed jakimiś potencjalnymi szpilkami? Czy rezystor wystarczy do tej ochrony?

    jdubowski napisał:

    Ta komunikacja jest jednokierunkowa?


    Tak wygląda połączenie i sterownik: Ochrona układu przed zakłóceniami - podwójna optoizolacja?Ochrona układu przed zakłóceniami - podwójna optoizolacja?

    jdubowski napisał:

    Pokaż schematy obu interfejsów. Zdjęcie konstrukcji też by się przydało.


    Na razie wszystko leży na biurku, potem to poukładam i zrobię zdjęcia, żeby to jakoś wyglądało.

    _jta_ napisał:
    Czy optoizolacja jest na wejściach, czy na wyjściach? Sygnały można przesyłać skrętką, na jej końcu (przy wejściu układu odbierającego sygnał) dać transoptor.

    Optoizolacja jest na wejściu sterownika.

    _jta_ napisał:
    Nadajnik sygnału można zrobić o dopasowanej impedancji (impedancja skrętki to około 120 omów); z odbiornikiem jest trudniej, bo jest dioda, można spróbować dać opornik szeregowy 300R z diodą i równoległy do całości 150R. Ale przy zastosowaniu dopasowania z obu stron nadajnik musiałby być zasilany napięciem 6-9V, 5V nie da wystarczającego sygnału.


    Chodzi koncepcyjnie o coś takiego (plus jeszcze jakoś dobranie oporników)? Ochrona układu przed zakłóceniami - podwójna optoizolacja?

    Zmierzyłem prąd pobierany przez wejście na sterowniku przez transoptor i wynosi on około 13-14mA, jak rozumiem taką wartość trzeba mu zapewnić poprzez zastosowanie odpowiednich oporników i nieco wyższego napięcia?

    Dodam jeszcze, że układ już działał ze zwykłym lcd4x20, karta uSD bezproblemowo działała przez SPI nawet, jak była dosłownie kilka centymetrów od obudowy zasilacza, czyli znacznie bliżej, niż teraz próbuję z ekranem. Do karty uSD wykorzystuję moduł z botlandu. Trochę wstyd się przyznać, ale pojęcie buforowania jest mi obce, nigdy nie było konieczności się nad tym zastanawiać (wszystko działało bez problemu poprzez bezpośrednie połączenie linii), ale tutaj napisane jest, że bufor służy jedynie do zapewnienia możliwości sterowania za pomocą 3V3 i 5V, więc nie wiem, czy chodzi o to samo.

    Dziękuję serdecznie za odpowiedzi.

    0
  • #10 13 Maj 2017 12:01
    michcior
    Poziom 30  

    Tak trochę działamy "na ślepo". Może lepiej podejść do problemu analitycznie? Co jest źródłem zakłóceń? Albo ograniczymy emisję - działanie po stronie źródła (agresora) np. ekranując kable prądowe do silników. Albo ochrona narażonego układu. W każdym razie trzeba wiedzieć co nam zakłóca. Pytanie czy zakłócenia pojawiają się od momentu zasilenia uzwojeń silników? Np. do falowników są specjalne kable, ekranowane i o zmniejszonej pojemności rozproszonej.
    Często "wróg" dostaje się od tyłu, jeśli zarówno sterowniki silników i układ zasilane są zasilaczami impulsowymi a nie ma filtrów AC, to zakłócenia będą się przedostawać przez przewody AC, czy np. nie podłączone PE które spina oba zasilacze? Z pewnością obowiązkowo zasilacz do sterowników zaopatrzyłbym w filtr wejściu 230V.
    Wracając do połączenia SPI. Nawet jeśli zegar jest nie duży, np. 8MHz to jeśli szybkość narastania zbocza jest duża, harmoniczne wysokich częstotliwościach będą miały znacznie. Cała dziedzina wiedzy zajmuje się zagadnieniem dopasowania linii do nadajnika. Jeśli brak jest dopasowania, to energia wyższych harmonicznych odbija się od końców linii, to trochę jak walnięcie stalowym prętem w betonową podłogę cała energia uderzenia wraca nam po pręcie do rąk. Jeśli nie potrzebujemy wysokiego zegara, to najprościej ograniczyć szybkość narastania zbocza po stronie nadajnika, np. układem RC. Dlatego opornik szeregowo z nadajnikiem pomaga, bo tworzy dzielnik z impedancją linii. Jednak taka płaska taśma ma praktycznie żadną pojemność bo brak jest masy.

    0
  • #11 13 Maj 2017 13:18
    _jta_
    Specjalista elektronik

    Nadajnik powinien mieć wyjście push-pull, albo prądowe, to nie może być transoptor. Jaki masz zegar transmisji? 8MHz to dużo na transoptor, musi być jakiś super-szybki, typowe transoptory nadają się do kilkudziesięciu kHz.

    Dość proste wyjście push-pull stosowano w układach TTL, ale można prościej, wyjście nad diodą, a kolektor V4 do bazy V3, wtedy V2 jest zbędny. Trzeba by dodać opornik szeregowo z diodą, żeby mieć jednakową impedancję wyjściową dla stanu niskiego i wysokiego, oraz opornik szeregowo z wyjściem, żeby impedancja wyjściowa była 120R - taka, jak impedancja linii.

    A wyjście prądowe można zrobić tak: opornik 120R do +zasilania, do niego kolektor tranzystora NPN, który może być włączany i wyłączany, ale prąd przy włączeniu jest ograniczany przez sterowanie, tranzystor nie może dochodzić do nawet bardzo płytkiego nasycenia. Jeśli do transoptora też będzie przewód od +zasilania, to wystarczy niższe napięcie zasilania - np. na oporniku byłoby, zależnie od stanu logicznego, 0V albo 3V, prąd tranzystora byłby 0, albo 50mA (z tego 25mA płynęłoby przez opornik, i 25mA przez diodę transoptora + opornik równoległy do niej). Od biedy da się tak zrobić z zasilaniem 5V, ale nie mniej.

    Sposób ograniczenia prądu tranzystora: tranzystor NPN (np. BC338), w emiterze opornik 27R, do tego opornika baza i emiter drugiego tranzystora NPN (np. BC548), a jego kolektor do bazy pierwszego; i na bazę pierwszego dajesz sygnał przez opornik tak dobrany, żeby popłynęło przez niego około 5mA (czyli pewnie około 300R, jeśli na wyjściach masz około 3V w stanie '1').

    0
  • #12 13 Maj 2017 13:29
    lupin22
    Poziom 9  

    _jta_ napisał:
    Nadajnik powinien mieć wyjście push-pull, albo prądowe, to nie może być transoptor. Jaki masz zegar transmisji? 8MHz to dużo na transoptor, musi być jakiś super-szybki, typowe transoptory nadają się do kilkudziesięciu kHz.


    Ale ja mówię o tej optoizolacji nie na interfejsie SPI, tylko między mikrokontrolerem a sterownikiem silnika. Tam częstotliwość sygnału nie przekroczy kilku kHz, na pewno poniżej 5. Chcę po prostu, żeby cały układ sterujący (mikrokontroler, ekran, karta uSd, kilka przycisków i kontrolek) był w jednej obudowie i wszystkie sygnały do niego wchodzące (czyli te łączące go ze sterownikiem oraz zasilanie 5V z osobnego zasilacza) były na wejściu tej obudowy, żeby wszystko, co się wyindukuje ewentualnie w tych przewodach od sterownika wyeliminować. To będzie taki pilot na uwięzi, z kablem długości ok. 1 m.

    michcior napisał:
    Co jest źródłem zakłóceń? Albo ograniczymy emisję - działanie po stronie źródła (agresora) np. ekranując kable prądowe do silników. Albo ochrona narażonego układu. W każdym razie trzeba wiedzieć co nam zakłóca. Pytanie czy zakłócenia pojawiają się od momentu zasilenia uzwojeń silników? Np. do falowników są specjalne kable, ekranowane i o zmniejszonej pojemności rozproszonej.


    Tak, sam sterownik bez podłączonego silnika nie powoduje zakłóceń. Wtedy pobierany prąd z układu jest minimalny, a kiedy silniki są podpięte do obu sterowników, to pobierają one w sumie 8A. Nie wiem, na jaki dokładnie pobór z zasilacza to się przekłada, ale pewnie też niemało.

    michcior napisał:
    Często "wróg" dostaje się od tyłu, jeśli zarówno sterowniki silników i układ zasilane są zasilaczami impulsowymi a nie ma filtrów AC, to zakłócenia będą się przedostawać przez przewody AC, czy np. nie podłączone PE które spina oba zasilacze? Z pewnością obowiązkowo zasilacz do sterowników zaopatrzyłbym w filtr wejściu 230V.


    Chwilowo to zasilanie wychodzi z portu USB komputera, ono chyba nie powinno już zawierać zakłóceń, nawet, jeżeli komputer i zasilacz do sterowników podłączone są do jednego gniazdka?
    I jesli chodzi o ten filtr, to mówimy tutaj o np. takim ferrytowym zakładanym na przewód, czy coś takiego?

    0
  • Pomocny post
    #13 13 Maj 2017 13:35
    jdubowski
    Specjalista - urządzenia lampowe

    lupin22 napisał:
    A czy zastosowanie optoizolacji w samym sterowniku nie ma na celu właśnie wyeliminowania konieczności łączenia tych mas?


    Ale u ciebie nie ma potrzeby separacji mas - co innego gdyby z samej zasady połączenie mas nie było możliwe, na przykład część wykonawcza zasilana jest bezpośrednio z sieci 230V.

    lupin22 napisał:
    Żeby ochronić mikrokontroler sterujący przed jakimiś potencjalnymi szpilkami?
    Ochrony przed szpilkami powiadasz. A przez pojemnosć transoptora i przewodów dostaje się do układu składowa 50Hz z sieci i składowa o częstotliwości pracy przetwornicy (przez pojemności międzyuzwojeniowe transformatora - i masz skutek jak widzisz.

    lupin22 napisał:
    ale pojęcie buforowania jest mi obce, nigdy nie było konieczności się nad tym zastanawiać (wszystko działało bez problemu poprzez bezpośrednie połączenie linii), ale tutaj napisane jest, że bufor służy jedynie do zapewnienia możliwości sterowania za pomocą 3V3 i 5V, więc nie wiem, czy chodzi o to samo.


    Nie tylko do tego.

    0
  • #14 13 Maj 2017 13:41
    lupin22
    Poziom 9  

    Okej, to po południu postaram się ogarnąć ten układ i porobię zdjęcia. Tutaj taki szkic ideowy o co mi chodziło z tą podwójną optoizolacją:
    Ochrona układu przed zakłóceniami - podwójna optoizolacja?

    Kolorem niebieskim zaznaczyłem zakłócenia, które powodują indukcję zakłóceń w moim kablu łączącym, jeśli dobrze to rozumiem.

    0
  • Pomocny post
    #15 13 Maj 2017 13:59
    _jta_
    Specjalista elektronik

    Aha, czyli prawdopodobnie zakłócenia wchodzą na uC przez kabel, którym przesyłasz sygnały z uC, tak? Na to rzeczywiście dodatkowa optoizolacja może pomóc.

    Jeszcze pytanie: jakie ten układ ma połączenia do uziemienia? Bo może być tak, że prąd płynący przez uziemienie silnika daje zakłócenia na uziemieniu układu uC.

    0
  • #16 13 Maj 2017 14:13
    lupin22
    Poziom 9  

    _jta_ napisał:
    Aha, czyli prawdopodobnie zakłócenia wchodzą na uC przez kabel, którym przesyłasz sygnały z uC, tak? Na to rzeczywiście dodatkowa optoizolacja może pomóc.


    Dokładnie tak.

    _jta_ napisał:
    Jeszcze pytanie: jakie ten układ ma połączenia do uziemienia? Bo może być tak, że prąd płynący przez uziemienie silnika daje zakłócenia na uziemieniu układu uC.


    Hmm, nie do końca rozumiem. Chodzi o to, że mój komputer i zasilacz są podpięte do tego samego uziemienia i tędy by przechodziło coś? Tylko, że z zasilacza do sterownika nie wychodzi już uziemienie, tylko V+ i V-, więc chyba sam silnik w żaden sposób z uziemieniem kontaktu nie ma?

    Proszę o wyrozumiałość, jeśli tu jakieś herezje piszę, ale dział wybrałem nieprzypadkowo.

    Teraz też polutuję to wszystko, bo nawet bez sterowników jest problem przy jednoczesnym podłączeniu ekranu i karty uSD, wystarczy kabelek delikatnie gdzieś szturchnąć, dmuchnąć, chuchnąć i cuda się dzieją.

    Gdzieś w internecie czytałem już zarzut do tego ekranu, tylko chyba wersji wyższej, że samo podłączenie oscyloskopu spowodowało, że komunikacja SPI stanęła.

    0
  • Pomocny post
    #17 13 Maj 2017 15:38
    _jta_
    Specjalista elektronik

    Może są jakieś skoki obciążenia zasilacza spowodowane pracą silnika, i przechodzą na uziemienie, a stamtąd do układów, które się komunikują po SPI?

    A może komunikacja SPI jest zrobiona tak, że ma nadmierną wrażliwość na zakłócenia, i trzeba dodać jakieś oporniki, albo kondensatory, by ją uodpornić?

    0
  • #18 13 Maj 2017 16:45
    lupin22
    Poziom 9  

    _jta_ napisał:
    Może są jakieś skoki obciążenia zasilacza spowodowane pracą silnika, i przechodzą na uziemienie, a stamtąd do układów, które się komunikują po SPI?


    Niestety nie wiem, jak to sprawdzić. Ale jeżeli nie połączę sterownika z mikrokontrolerem to nie ma zakłóceń, a silniki są aktywne nawet w stanie spoczynku. Więc z tego by wynikało, że chyba aż takiej okrężnej drogi te zakłócenia nie pokonują.

    _jta_ napisał:
    A może komunikacja SPI jest zrobiona tak, że ma nadmierną wrażliwość na zakłócenia, i trzeba dodać jakieś oporniki, albo kondensatory, by ją uodpornić?


    Na to wygląda, chociaż nie wiem, jaki może być tego powód. Poszukam w internecie informacji na ten temat.

    EDIT: Dzisiaj już zdjęcia nie wstawię, nie zdążę tego zrobić. Natomiast polutowałem trochę układ, posprawdzałem wszystkie połączenia, odpiąłem i wpiąłem ponownie tą tasiemkę z wyświetlacza i wygląda to znacznie lepiej, tzn wszystkie problemy na razie zniknęły, działa i karta uSD i wyświetlacz, jeden sterownik podpiąłem krótkimi przewodami, drugi długimi i wszystko jest sprawne.

    Tak, czy siak porobię wszędzie ekranowanie, ale być może problemem było łączenie przez płytkę stykową i pewien bajzel w tych połączeniach.

    0
  • Pomocny post
    #19 13 Maj 2017 20:01
    _jta_
    Specjalista elektronik

    Czyli występowanie zakłóceń zależy od podłączenia kabla, który po jednej stronie jest połączony tylko z transoptorami?

    A co, jeśli ten kabel jest podłączony tylko po jednej stronie? Czy jest taka, że to też powoduje powstawanie zakłóceń?

    Można jeszcze spróbować przełożyć ten kabel przez pierścień ferrytowy (a jak nie masz, to choć kilka żelaznych kółek, np. podkładek pod śruby, ale pełnych, nie przeciętych, albo owinąć możliwie cienkim drutem żelaznym, najlepiej jakby był polakierowany, żeby miał izolację, i sporo tego drutu by się przydało).

    0
  • #20 13 Maj 2017 20:18
    lupin22
    Poziom 9  

    Obecnie problemy ustały, ale:

    _jta_ napisał:
    Czyli występowanie zakłóceń zależy od podłączenia kabla, który po jednej stronie jest połączony tylko z transoptorami?

    Dokładnie tak było. Nawet nie trzeba było podłączać obu przewodów (do - i + transoptora), wystarczyło jeden i ekran zaczynał wariować, czyli w zasadzie tak, jakby podłączyć antenę.

    _jta_ napisał:
    A co, jeśli ten kabel jest podłączony tylko po jednej stronie? Czy jest taka, że to też powoduje powstawanie zakłóceń?

    Tego nie sprawdzałem.

    No i tak, jak pisałem, obecnie problem ustał jak polutowałem sobie na małej płytce przewody SPI, zamiast na płytce stykowej robić pajęczą sieć. Układ zachowywał się trochę tak, jak port mikrokontrolera ustawiony jako wejście ale bez żadnego podłączenia - wtedy nawet zbliżenie ręki do mikrokontrolera powoduje losowe zmiany stanów (co uważam za bardzo ciekawy efekt, swoją drogą). Teraz nawet specjalnie ten długi przewód między transoptorem a mikrokontrolerem owinąłem wokół zasilacza i sterowników i wygląda na to, że zakłóceń nie ma. Czy jakieś słabo kontaktujące styki mogły być powodem takiego zachowania?

    Także dziękuję bardzo za pomoc, chwilowo alarm odwołuję, punkty porozdawałem. Tak, czy siak zrobię ekranowanie wszystkich przewodów (chyba, że są przeciwskazania jakieś? bo mam w planie i zasilanie z zasilacza do sterowników ekranować, przewody idące od sterownika do silnika, a także przewody idące od sterownika do mikrokontrolera, czyli praktycznie wszystko oprócz przewodu z zasilacza do sieci 230V).

    0