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

[AVR] Prośba o sprawdzenie schematu dodatkowych i/o po I2C

22 Kwi 2012 18:10 3026 16
  • Poziom 9  
    Witam

    Zaznaczam odrazu że jestem początkującym w dziedzinie elektroniki, bliżej mi do programowania.
    Prośba jest taka czy to co wysmyczyłem w Eaglu będzie poprawnie działać, czy czegoś tam nie zapomniałem?

    Zadaniem tego projektu/układu jest rozszerzenie Atmegi o dodatkowe porty z przyporządkowanymi na sztywno funkcjami badania obecności fazy prądu na danym złączu. W przyszłości ma to być jeden z 4 modułów przeznaczonych do monitoringu pracy urządzeń pracujących na wysokie napięcie. Dokładność pomiaru nie jest tak aż istotna w tym przypadku ale chciałbym się zmieścić co najmniej w sekundzie sprawdzając wszystkie 64 wejścia.

    Ale czy schemat jest oki?

    [AVR] Prośba o sprawdzenie schematu dodatkowych i/o po I2C
  • Computer Controls
  • Poziom 38  
    Nie ma podciągnięcia linii danych i zegara do vcc (chyba, że jest gdzieś indziej).

    Sterowanie masz OC. Jeśli IO są tri-state to jeśli dioda nie będzie świeciła to IO będą w stanie HiZ, a chyba nie o to Ci chodziło. Popodciągaj dodatkowo rezystorem np 10k do VCC (między kolektorem a pinem IO).

    Czemu dioda nie ma rezystora ?

    Z liniami adresowymi można zrobić to samo co przy wejściach/wyjściach (10k do VCC)

    Czemu zasilanie nie jest filtrowane ?
  • Computer Controls
  • Poziom 9  
    Podciąganie SDA i SCL będzie przy mikrokontrolerze, bo ten moduł będzie jeden z czterech podłączonych to tych liń. Dlatego taką wtyczkę skombinowałem żeby tasiemką połączyć kolejny taki sam moduł, taki łańcuszek.

    Oki z tym rezystorem to go tam dokleję.

    A rezystor przed diodą tak myślałem że powinien być, ale ten przed mostkiem chyba odpowiednio obniża napięcie żeby mostka nie spalić no i dodatkowo diody w EL817.

    Zasilanie też z płytki mikrokontrolera, będzie podane po wyprostowaniu na 5V.

    [AVR] Prośba o sprawdzenie schematu dodatkowych i/o po I2C
  • Moderator Mikrokontrolery Projektowanie
    Ten przed mostkiem może być, ale:
    1. Po co ci w ogóle mostek? Kup transoptor z antyrównoległymi diodami (np. LTC814 bodajże) i po sprawie.
    2. Ten kondensator za mostkiem to tylko po to, żeby fazę przesunąć? Wywal go.
    3. Rezystor po stronie HV to wiesz, że musi być na odpowiednie napięcie, 400V to min. Lepiej dać dwa mniejsze szeregowo, napięcie się rozłoży, a i moc tracona także. Poza tym 2W to mocna przesada. Dla transoptorów o rozsądnym CTR 0,25 W będzie ok.
    Weź też pod uwagę, że magistrala I2C nie umożliwia łączenia układów znajdujących się daleko od siebie, to było projektowane, żeby łączyć moduły na jednej płytce - 10-15cm. Oczywiście czasami to działa i na 5m, ale trzeba pamiętać, że dłuższe połączenia to kłopoty i niepewne działanie.
  • Poziom 9  
    Odnośnie tego mostka i tego dlaczego taki a nie inny. Nie miałem możliwości sprawdzić jak to działa, ale widziałem już gotową płytkę z tymi 4 elementami: rezystor - mostek - kondensator - transoptor.
    Okazuje się że to najtańsze rozwiązanie, bo po przeliczeniu wychodzi mi że elementy na jeden kanał będą mnie kosztować ok 1.70zł netto, a potrzebuje tych kanałów wejściowych na wysokie napięcie aż 64. A ten LTC814 to gdzie mogę go kupić i za ile, bo cena jest ważna.

    Gdzieś czytałem że długość kabla roznoszącego magistrale I2C po układzie musi być jak najkrótsza. Prawdopodobnie jak dojdzie już do wytrawiania płytek to tak ją zaprojektuje że wszystkie cztery moduły będą piętrowo na śrubach dystansowych, co da mi możliwość połączeń I2C jak najkrótszych, szacuje tak na ~10cm .
  • Poziom 38  
    10cm da rade.

    Jeden taki transoptor kosztuje w tme w granicach 1zł (zależy ile sztuk). Za same transoptory wyjdzie około 60 zł + oporniki do nich, ale to już groszowe sprawy. Na allegro też widzę PC814 za 9zł za 15 sztuk. Jak się pospieszysz to kupisz 75 sztuk za 45 zł(tylko tyle jest).

    Są też takie które mają w sobie 4 kanały, ale drożej to wychodzi i lepiej (cenowo) wychodzi użycie 4 z pojedynczymi kanałami.
  • Poziom 9  
    Oki doszedłem że chodzi o LTV814, czyli na jego przeciwne diody daję tylko rezystor 100K i nic więcej?
    bo tak niby z noty katalogowej wnioskuje że tylko wystarczy. No i pytanie czy reszta za transoptorem taka sama jak mam na schemacie?


    ps. wybaczcie moją ciemność w temacie, ale już zbudowałem dość fajny sterownik na gotowej płycie a teraz chciałem się zająć czymś bardziej ambitnym no i przydatnym.
  • Moderator Mikrokontrolery Projektowanie
    Tak, za transoptorem to już to samo. Pytanie czego fazę badasz? Bo trudno jest mi sobie wyobrazić 64 kable sieciowe w których w każdym jest inna faza :) Generalnie zbadaj fazę jednego to będziesz miał fazy wszystkich. Nawet jeśli masz zasilanie III-fazowe, to znając fazę jednego przebiegu i mając opisane fazy wiesz wszystko. Może się mylę, ale napisz po co ci aż 64 takie detekcje, może się okazać, że coś koncepcyjnie masz nie tak.
  • Poziom 9  
    Już tłumaczę dlaczego 64 punkty pomiarowe.

    Te moduły sprawdzające obecność prądu fazy będą częścią sterownika opartego na Atmedze1284-P który będzie monitoringiem pracy urządzeń w zakładzie przetwórstwa mięsnego. Wygląda to tak że na dachu tego zakładu jest zainstalowane ponad 10 agregatów do prawie tylu chłodni, monitoring będę podłączać za stycznikiem silników siłowych od agregatów, wentylatorów, grzałek itd. Każde łącze będzie tak skonfigurowane że będzie miało opis i będzie się rejestrować kiedy i jak długo dane urządzenia działa. Dane będą się zapisywać na karcie SD. Sterownik ten będzie miał za zadanie głównie informować czy nie minął czas już do kolejnej zmiany oleju w sprężarkach, będzie liczyć tzw motorogodziny. W przyszłości zrobię też monitoring temperatur, ale to temat na inny wątek (kwestie odporności na hardcorowe warunki pracy czujek i długości kabla), oraz w planie jest monitoring ciśnień w układach chłodniczych i reakcja na stany alarmowe.

    Poprawiony schemat
    [AVR] Prośba o sprawdzenie schematu dodatkowych i/o po I2C
  • Moderator Mikrokontrolery Projektowanie
    Jeśli tak jak na schemacie wszystkie linie N są połączone razem, a badasz tylko L to możesz zrezygnować z transoptorów i połączyć L do wejść scalaka przez rezystor rzędu 1-2 Mom. Wymaga to wymiany scalaka na inny, przy okazji tańszy - zrób to po SPI i zastosuj rejestr równoległy z wyjściem szeregowym. To są standardowe scalaki serii 74xxx, które kupisz po mniej niż 1 zł/sztuka. W takiej sytuacji robisz tylko optoizolację linii SCK i MISO, MOSI możesz nie podłączać. Dzięki temu wywalisz 64 transoptory i drogie układy I2C.

  • Poziom 28  
    W analizatorach energii Diris Socomeca napięcia fazowe (poprzez rezystory o odpowiednio dużej wartości) podane są bezpośrednio na wejścia ADC Atmegi. Do tego dochodzą sygnały prądowe z przekładników, które również wchodzą na ADC bez żadnej izolacji (napięcie z rezystorów pomiarowych). Więc porady Kolegów są jak najbardziej na miejscu.
  • Poziom 16  
    Próbowałem podpinać linie A0, A1 i A2 układu PCA9555 tak jak na ostatnim schemacie, ale był problem. tzn gdy wszystkie linie były dopięte do masy układ reagował na polecenia prawidłowo znaczy adres był ustawiony na 64dec. Ale zmiana któregokolwiek jumpera (na adres 66, 68, 70 itd) powodowała że układ nie odzywał się pomimo właściwego adresowania. Pomogło podpięcie linii adresowych bezpośrednio do +5V.
  • Poziom 9  
    @tmf

    Co do tych rejestrów równoległych to mam o nich wiedzę dosyć znikomą. Pytanie, jak wygląda jakiekolwiek adresowanie od strony mikrokontrolera?
    czy tylko linie SCK, MISO, MOSI są zajęte i czy do tych liń mogę bez dodatkowych elementów mogę więcej tych rejestrów równoległych podpiąć?

    Co jak co to wybór tych rejestrów jest duży dosyć.
    Gdyby taka byłą możliwość to czy mógłbym prosić o nakierowanie lub ewentualnie na schemat w którym wykorzystano takie rejestry w ilości np 4.

    Dodano po 2 [minuty]:

    jousto napisał:
    ... Pomogło podpięcie linii adresowych bezpośrednio do +5V.

    Bardzo przydatna informacja, pewnie gdybym zabrnął już do budowania płytki i uruchamiania bym się na tym wyłożył. Dzięki
  • Moderator Mikrokontrolery Projektowanie
    Po prostu łączysz rejestry razem (dzięki temu unikasz stosowania linii SS), w efekcie w twoim przypadku będziesz miał jeden, długi na 64 bity rejestr przesuwny. Odczytujesz go podając po prostu 64 impulsy SCK, po każdym impulsie wysuwany jest 1 bit. Także masz łącznie 8 odczytów rejestru SPI - SDR. MOSI jest niepotrzebna, bo nic do tych rejestrów ładować nie będziesz. Alternatywą jest wykorzystanie 8 układów z których każdy ma własny sygnał wyboru ukłądu (SS). Sygnał ten może pochodzić z multipleksera, dzięki temu potrzebujesz tylko 3 linii adresowych. I tak całość na SPI wyjdzie cię taniej niż te układy I2C. W dodatku SPI jest o wiele prostsze w oprogramownaiu.
  • Poziom 9  
    Czy połączenie wejść na układ multiplekser mogłoby by wyglądać tak? czy raczej byłaby z tego kupa dymu?

    [AVR] Prośba o sprawdzenie schematu dodatkowych i/o po I2C

    Oczywiści to jak na razie cząstka, bo zostało mi odseparowanie go od mikrokontrolera oraz połączenie większej ilości 74HC151 tak żeby uzyskać co najmniej 64 wejścia, ale nie kosztem kolejnych pinów mikrokontrolera.
  • Moderator Mikrokontrolery Projektowanie
    Tak też można, ale źle mnie zrozumiałeś. Multiplekser masz wykortzystać do wyboru jednego z 8 układów rejestrów równoległo/szeregowych. Dzięki temu zamiast 8 linii IO procesora potrzebnych do generacji sygnału SS, masz tylko 3 linie adresowe.
  • Poziom 9  
    Oki rozumiem, ale jaki układ/rejestr by najlepiej zastosować jakbym mógł prosić o symbol?, bo tego jest dużo i nie orientuje się jeszcze. Najlepiej gdyby był w obudowie DIL i żeby miał tych rejestrów jak najwięcej.

    Już znalazłem :), to jest 74HC165... spróbuje coś naskrobać.



    No i coś takiego narysowałem:

    [AVR] Prośba o sprawdzenie schematu dodatkowych i/o po I2C

    Wzorowałem się na schemacie stąd:
    Link