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

Nixie zegar, sprawdzenie schematu.

26 Wrz 2013 20:56 4266 23
  • Poziom 22  
    Witam Serdecznie,

    Chciałbym poprosić o rzucenie okiem na schemat zanim oddam go do produkcji :)
    Zegareczek jest na święta dla Taty, także ważna sprawa.

    Sterowany jest przez 74HC595, mosfety - BSS131 sot23 ;).
    Oczywiście brak multipleksacji. Sterowanie bezpośrednie

    płytka sterująca:

    Nixie zegar, sprawdzenie schematu.

    płytka z nixie:

    Nixie zegar, sprawdzenie schematu.

    Oraz załączam 2 pliki schematów.

    Zainteresowanym, wrzuce w post pliki brd.
    Pozdrawiam i licze na szybki odzew ;)
  • PCBwayPCBway
  • Poziom 43  
    Mało czytelny ten schemat, plątaniny linii poprowadzone z lewego dolnego rogu jednej kartki idą w prawy górny tylko po to żeby tam przejść na druga kartkę i znowu trafić w lewy dolny róg, mało kto się nie pogubi, lepiej używaj etykiet, źle podłączyłeś klawiaturę.

    Cytat:
    Prosze o odzew, sprawa jest bardzo ważna i pilna. Smile

    Co ci szkodzi zrobić prototyp na płytce uniwersalnej, będziesz miał pewność.
  • Poziom 22  
    Witam,

    Czemu źle podłączyłem klawiaturę ? Podłączyłem je do portów I/O (przyciski)

    Chodzi mi głównie o podłączenie DS1307, budowe przetwornicy - reszta podłączona jest do złącza taśmowego isp, przez które podłączone są elementy na drugiej płytce drukowanej.

    Czemu mi szkodzi, otóż elementy które są na płytce, są typu smd, a ja nie mam ich w technologii tht. Dużo kosztów by to pochłonęło.
  • PCBwayPCBway
  • Poziom 30  
    Schemat to poprawy, jak będzie bardziej czytelny to będzie większy odzew, ale to już wiesz ;)

    b]jarek_lnx[/b], czemu podłączenie przycisków jest błędne? Biorąc pod uwagę że detekcja naciśnięcia pinu będzie przez sprawdzenie czy pin jest w stanie niskim (wewnętrznie podciągnięty do VCC) oraz że rezystor oraz kondensator tworzą filtr, będzie to działać.

    Co prawda lepiej by było użyć przerwań np. chodź jednego INTx aby nie skanować cały czas klawiatury no ale...

    Ale przede wszystkim do poprawy schemat, nie wiadomo np. gdzie idzie i do czego służy pin PD4.
  • Poziom 43  
    ADI-mistrzuRezystor pull-up w mikrokontrolerze może mieć min 20kΩ, ściąganie do masy rezystorem 10kΩ da napięcie w stanie niskim 1,7V, bardzo blisko progu przełączania, są szanse że się nie załapie, można by zastosować mniejszy rezystor, albo się go w ogóle pozbyć zmienia on tylko stałą czasową rozładowania, stała czasowa ładowania jest określona przez pull-up i kondensator, więc i tak uniemożliwi szybkie zmiany spowodowane drganiami styków.

    DS1307 ma wbudowany oscylator do kwarcu, wystarczy podłączyć kwarc, stosowanie dodatkowego oscylatora może mieć sens tylko jeśli da ci on jakieś zalety (lepszą dokładność?) i nie zje zbyt szybko baterii litowej.

    Tranzystory wyjściowe nie mają rezystorów bazowych, a powinny.
  • Admin Grupy Retro
    Schemat wykonany niechlujnie. Przypadkowa numeracja elementów, opisy zachodzą na siebie.
    Elementy C5-C9-C11 i R4-R5-R6 źle podłączone, nie spełnią swojej roli.
    R30 i R31 powinny mieć mniejszą wartość, koło 3,3-4,7k.
    SG2 to jakiś buzzer? Jaki prąd pobiera?
    MC34063A nie ma pomiaru prądu (w datasheet jest rezystor włączony szeregowo z zasilaniem, sprawdź)

    Jeszcze jedno - jak stosujesz MOSFETy, to stosuj, proszę, symbole tranzystorów MOSFET. Teraz masz NPN z opisem BSS131.

    Każda lampa ma własny rezystor 80k (skąd taka wartość?), a do tego wszystkie razem sa zasilane z rezystor 47k? Nie ograniczasz im za mocno tego prądu?
  • Poziom 22  
    Witam,

    Dziekuję za odpowiedź, Wasze sugestie wezmę sobie do serca i zastosuje zmiany.

    Co do tranzystorów MOSFET, owszem uzyłem nazw tzn. IRFL024NPBF -> link http://www.irf.com/product-info/datasheets/data/irfl024npbf.pdf

    Co do pinu PD4 - słuzy on do podłączenia Dallasa ds18b20.

    Jutro - albo dzisiaj (lecz wątpie) ułożę na nowo schemat + opisze szczegółowo go, a zrobie to raczej jutro bo jestem u dziewczyny.

    Pozdrawiam, życzę dobrej nocy :)
  • Poziom 43  
    Cytat:
    Co do tranzystorów MOSFET, owszem uzyłem nazw tzn. IRFL024NPBF

    Kolega powyżej pisał o BSS131 który ma symbol bipolarnego, nieczytelne oznaczenie BSS1,BSS2,BSS3.., typ? SOT23.
    Ja się dałem nabrać, dlatego napisałem o braku rezystorów bazowych, jeszcze nie przywykłem do tego że użytkownicy Eagle'a oszukują w symbolach, zamieniają elementy na byle jakie, jak im wypadnie :)
  • Poziom 22  
    Witam, poprawiłem schemat.

    Do portu SPI, zostały podłączone rejestry przesuwne 74HC595 (zostały podłączone poprzez złącze KANADA ISP 10 pin z górną częścią płytki).

    Do pinów PD3,PD5,PD6 podłączyłem MOSFETY IRFL024NPBF(http://www.irf.com/product-info/datasheets/data/irfl024npbf.pdf), które odpowiadają za sterowanie pwm 6 diodami RGB LED 5050. (http://www.wayjun.com/Datasheet/Led/5050%20SMD%20LED.pdf)
    Pin PD2 odpowiada za miganie neonówkami, na drugiej płytce jest mosfet(bezpośrednio do uc) który steruje 2 neonówkami, a ich anody zostały podłączone do 200V przez rezystor 330k 1,4W

    Do Pinu PB6 podłączyłem buzzer (w celu ew. modulacji dźwięku) - będzie on używany do alarmu.

    Jako wzorca czasowego, użyłem DS1307 (http://datasheets.maximintegrated.com/en/ds/DS1307.pdf) oraz bardzo dokładnego oscylatora DS32KHZ z kompensacją temperaturową. (http://datasheets.maximintegrated.com/en/ds/DS32kHz.pdf)
    Pin7 SQW DS1307 podłączyłem,zgodnie z datasheet, opcjonalnie do uC (może się przydać)

    Przetwornicę na MC34063 wykorzystałem z projektu AVT - http://ep.com.pl/files/8813.pdf a za przetwornicą, użyłem ściemiacza lamp nixie pomysłu Zulugula123 z Tego tematu: https://www.elektroda.pl/rtvforum/topic1888282.html

    Do pinów PC0,PC1,PC2 oraz PD7 (PD7 opcjonalnie dodatkowy przycisk) zostały podłączone przyciski do ustawiania daty,czasy oraz alarmu (pobudki).

    Do Pinu PD4 został podłączony czujnik temp. DS18B20, (1 i 2 pin zwarte do masy, środkowy do uc + rezystor 4,7k do 5V).

    Płytka numer 2. (górna).

    Sterowanie lampami nixie odbywa się bezpośrednio, nie multipleksuje ich. Pomiędzy katodami a 74HC595 podłączyłem MOSFET'y BSS131 (http://www.platan.ru/pdf/1dist/infineon/bss131.pdf)

    Rezystory Anody lamp mają wartość 80k 1W, sugerowałem się obliczeniami:
    I lampy: 2.5mA
    U 200v

    korzystając z prawa Ohma, a następnie wzór na moc P= I(kwadrat) * R, wyszło mi, że musze uzyc rezystora 80k 0,5W.

    Mam nadzieje, że o niczym nie zapomniałem. Czekam na sprawdzenie schematu :)
  • Admin Grupy Retro
    Templarious napisał:
    Rezystory Anody lamp mają wartość 80k 1W, sugerowałem się obliczeniami:
    I lampy: 2.5mA
    U 200v

    korzystając z prawa Ohma, a następnie wzór na moc P= I(kwadrat) * R, wyszło mi, że musze uzyc rezystora 80k 0,5W.

    Pytanie za 100 punktów: czy umiesz posługiwać się prawem Ohma? Ponieważ właśnie obliczyłeś oporność statyczną lampy NIXIE w tym punkcie pracy.
    Templarious napisał:
    KANADA ISP 10 pin

    KANDA ;)
    Templarious napisał:
    Mam nadzieje, że o niczym nie zapomniałem. Czekam na sprawdzenie schematu

    Do estetyki dalej mu daleko, ale jest już lepiej.
    Templarious napisał:
    Do pinów PC0,PC1,PC2 oraz PD7 (PD7 opcjonalnie dodatkowy przycisk) zostały podłączone przyciski do ustawiania daty,czasy oraz alarmu (pobudki).

    Ale elementy RC wokół nich dalej są poustawiane nieprawidłowo.
  • Poziom 22  
    "Do pinów PC0,PC1,PC2 oraz PD7 (PD7 opcjonalnie dodatkowy przycisk) zostały podłączone przyciski do ustawiania daty,czasy oraz alarmu (pobudki). "

    Zmieniłem na:
    Nixie zegar, sprawdzenie schematu.

    Umiem posługiwać się prawem Ohma, na pytanie za 100 punktów odpowiadam tak:

    W Datasheecie nixie in-14 http://tubehobby.com/datasheets/in14.pdf jest:
    Allowable limits
    Power supply voltage 200V
    Current for digits 2.0 - 3.5mA
    Current for commas 0.3 – 0.7mA

    Na tej podstawie obliczyłem jaki musze zastosować rezystor anody, aby przy napięciu 200V na katody cyfr było natężenie prądu 2.5 mA.

    Co do statyczności dynamicznej, nie musze jej obliczać. Wydaje mi się, że ma ona raczej zastosowanie do multipleksowania (ze względu na bezwładności cieplne) tychże lamp.

    Czy jest coś źle zaprojektowane na schemacie ? Nie chciałbym odbiegać od tematu :). Co do przycisków, czy dobre jest ich podłączenie w taki sposób i w pętli while(1) skanować klawiaturę oraz pobierać czas z DS1307 i wyświetlać go ?

    Pozdrawiam
  • Poziom 22  
    To prosze o powiedzenie czemu jest to źle. Ja miałem prawie zawsze, jak prze zmianą w moim ostatnim poście i zawsze to działało - więc czemu teraz ma nie działac ?
  • Admin Grupy Retro
    ADI-mistrzu napisał:
    Futrzaczek czemu RC jest źle? Przecież to klasyczny filtr dolnoprzepustowy a przecież o to w tym chodzi.

    Odpowiedź już padła:
    jarek_lnx napisał:
    ADI-mistrzuRezystor pull-up w mikrokontrolerze może mieć min 20kΩ, ściąganie do masy rezystorem 10kΩ da napięcie w stanie niskim 1,7V, bardzo blisko progu przełączania, są szanse że się nie załapie, można by zastosować mniejszy rezystor, albo się go w ogóle pozbyć zmienia on tylko stałą czasową rozładowania, stała czasowa ładowania jest określona przez pull-up i kondensator, więc i tak uniemożliwi szybkie zmiany spowodowane drganiami styków.

    Na ogół rozwiązuje się to inaczej: rezystor (np. 10k) włączony jest między dany pin a +5V, przycisk między ten sam pin a GND. Wtedy mamy pewne logiczne "0" i zapewnioną logiczną "1" po puszczeniu. Jeżeli ktoś chce, można kondensatorem zbocznikować styki, lecz nie jest to konieczne - prościej jest zapewnić kilkudziesięciomilisekundową zwłokę w wykonywaniu programu po zarejestrowaniu stanu niskiego.


    Templarious napisał:
    Na tej podstawie obliczyłem jaki musze zastosować rezystor anody, aby przy napięciu 200V na katody cyfr było natężenie prądu 2.5 mA.

    Podając 200V na anodę, która wymaga 200V przez rezystor, który "zje" 200V będzie Ci brakowało sporo napięcia.

    Na rezystorze ma się odkładać nadmiar napięcia, a nie całe napięcie, które ma się odłożyć na lampie!
  • Poziom 22  
    Futrzaczek napisał:

    Podając 200V na anodę, która wymaga 200V przez rezystor, który "zje" 200V będzie Ci brakowało sporo napięcia.

    Na rezystorze ma się odkładać nadmiar napięcia, a nie całe napięcie, które ma się odłożyć na lampie!


    W takim razie mam rezystor policzyć dla prądu 2,5mA ale np. dla 170v ?

    Poprawiony schemat - przyciski.
    Nixie zegar, sprawdzenie schematu.

    Pytanie nadal jest: Czy lepiej użyc Atmega 32 i podłączyć przyciski pod INT'ty czy w pętli while(1) skanować klawiaturę oraz pobierać czas z DS1307 i wyświetlać go ?
  • Admin Grupy Retro
    Templarious napisał:
    W takim razie mam rezystor policzyć dla prądu 2,5mA ale np. dla 170v ?

    $$R=\frac{U_{zasilania}-U_{pracy}}{I_{katody}}$$

    Cytat:
    Poprawiony schemat - przyciski.

    Tak jest dobrze, a na pewno nie jest źle :)

    Cytat:
    Pytanie nadal jest: Czy lepiej użyc Atmega 32 i podłączyć przyciski pod INT'ty czy w pętli while(1) skanować klawiaturę oraz pobierać czas z DS1307 i wyświetlać go ?

    Osobiście, przy niedużych programach (taki, jak ten) preferuję nieskończoną pętlę, która wykonuje się w przeciągu 2-3ms. Możesz sobie zawrzeć prosty licznik na jednobajtowej zmiennej pomocniczej, by odczyt z DSa wykonywać co np. 50 "okrążeń" tej pętli. Ale nie narzucam tego rozwiązania; po prostu opisuję, jak ja to robię.
  • Poziom 22  
    Ok, ok. W takim razie zapytam się bardziej doświadczonych forumowiczów - który z mikrokontrolerów ma co najmniej 4 INT'ty, 8 kb pamięci i nie powala na kolana pod względem kosztów ? Chciałbym jednak zrealizować ten projekt na przerwaniach. Myślę, że nie jestem aż na tyle doświadczony aby wykonywać operacje na bajtach tak aby co 50 okrążeń wykonywać odczyt DS'a.

    Czy sterowanie rejestrami przesuwnymi, jest w porządku ? (schemat na początku tego tematu)
  • Admin Grupy Retro
    Templarious napisał:
    Ok, ok. W takim razie zapytam się bardziej doświadczonych forumowiczów - który z mikrokontrolerów ma co najmniej 4 INT'ty, 8 kb pamięci i nie powala na kolana pod względem kosztów ?

    Oprócz kosztów weź też pod uwagę dostępność. ATMEGA32 kosztuje koło 13-15zł i można go kupić wszędzie, a takiego cudaka jak np. ATTINY48 już nie (cena 12zł - dane ze sklep.avt.pl na dzień 30 IX 2013 r.)
  • Poziom 22  
    Posiadam 3 sztuki ATMegi 32- smd. Wrzucę ją do projektu. Czy oprócz tego, co poprawiłem, musze coś zmienić - dodać do projektu ?

    Chce przerzucic tylko przyciski pod INT'ty :)

    Edit:

    Policzyłem R anody i moc wydzielaną na oporniku.
    Uzasilania 200V, Upracy 170V
    Prąd anody 2,5 mA

    R=(Uzasilania - Upracy)/Ianody
    R=12000 = 12k ohm

    P=I2*R=0,075W ??

    Znalazłem źródła gdzie mowią, że trzeba użyc rezystora 1W.
    Pytanie: Jeżeli użyje 1W rezystora 12k (na zapas 1W), nie wpłynie to na moje lampy ?

    Dodałem Atmege 32 i podłączyłem przyciski pod INT0,1,2, oraz PD1.
  • Poziom 30  
    Zawieranie kondensator bezpośrednio do masy jest dużym błędem!
    Atmega168 w pełni wystarczy, niema sensu pchania 32, po za tym więcej kosztuje.

    Jak wrócę do domu to napiszę jak zrobić poprawnie przyciski z wykorzystaniem INTx, teraz piszę z telefonu.

    Dodano po 52 [minuty]:

    Układ dla przycisku powinien wyglądać mniej więcej tak:
    Nixie zegar, sprawdzenie schematu.
    Pin wejścia powinien byś ustawiony bez podciągnięcia do zasilania.

    Dlaczego tak?
    Rezystor ~73kΩ stanowi podciągnięcie do zasilania, kondensator robi za filtr zaś rezystor 10kΩ ogranicza prąd oraz wydłuża czas rozładowania kondensatora (w tym przypadku około 2ms).
    W czasie zwarcia przycisku napięcie na PIN jest niższe niż 1V.

    I własnie ze względu na prąd rozładowania nie wolno przyciskiem bezpośrednio zwierać kondensatora do masy (kompatybilność elektromagnetyczna się kłania).
    Może spowodować to lokalnie podniesienie potencjału masy do wartości gdzie procesor przestanie być zasilany przez ułamek sekundy przez co złapie błąd bądź się zrestartuje.


    Co do przycisków z przerwania, do pinu INTx podłączamy je wszystkie przy pomocy diod o niskim spadku napięcia. Do samego pinu INTx można także zastosować taki filtr, w tym że zamiast przycisku są anody diod.

    Dzięki takiemu zabiegowi w przerwaniu sprawdzamy tylko stany pinów przycisków aby dowiedzieć się który został naciśnięty.

    Pozdrawiam
  • Poziom 22  
    Jakie diody nieskiego napięcia ? (model).

    Rozumiem ze porty normalnie podłączoczam poprzez te diody, ale wszystkie mają mieć podłączenie do INT0 (tzn 1 inta) ?
  • Moderator Mikrokontrolery Projektowanie
    Generalnie :
    ADI-mistrzu napisał:
    Zawieranie kondensator bezpośrednio do masy jest dużym błędem!
    ...
    I własnie ze względu na prąd rozładowania nie wolno przyciskiem bezpośrednio zwierać kondensatora do masy (kompatybilność elektromagnetyczna się kłania).
    Może spowodować to lokalnie podniesienie potencjału masy do wartości gdzie procesor przestanie być zasilany przez ułamek sekundy przez co złapie błąd bądź się zrestartuje.

    jest naprawdę istotne, a efekt można zobaczyć na poniższym filmie:


    Link


    Dlaczego tak się dzieje? Ponieważ zwierając przyciskiem końcówki kondensatora powodujemy po prostu zwarcie i w zależności od rezystancji wewnętrznej kondensatora i jego pojemności, przez bardzo krótki czas cały zgromadzony ładunek zostaje uwolniony, co oznacza bardzo krótki impuls prądu o dużej wartości. Prąd ten powoduje indukowanie się zakłóceń na ścieżkach, kondensatorze i przycisku, przez co sąsiednie (i nie tylko) elementy narażone są na ... tak, nawet na uszkodzenie.

    Faktem natomiast jest, że ten mikrokontroler posiada na pinach INT diody zabezpieczające, które chronią go przed tego typu problemami. Jednakże zakłócenie jest i nic tego nie zmieni. Dlatego ADI-mistrzu, ma słuszne argumenty.

    @Templarious
    W jakim celu mając ten mikrokontroler, w ogóle potrzebujesz zastosować kondensatory na przyciskach?

    EDIT:
    A propos czytelności schematu, projektuj w przyszłości tak: http://mikrokontrolery.blogspot.com/2011/04/jak-projektowac-czytelne-schematy.html
  • Admin Grupy Retro
    dondu napisał:
    W jakim celu mając ten mikrokontroler, w ogóle potrzebujesz zastosować kondensatory na przyciskach?

    Też nie wiem, po co ten upór. Można programowo pozbyć się problemu iskrzenia styków. Lecz rezystory podciągające bym pozostawił w spokoju - niekiedy wewnętrzne pull-upy są za słabe w warunkach dużych zakłóceń.
  • Poziom 22  
    Witam,

    Wybrałem jednak ATMega 32, przyciski podłączyłem pod INT'y a przyciski poprzez rezystor podciągający 10k do +5v - wymuszam w ten sposób logiczną 1 na tychże portach.

    Temat uważam za zamknięty, wysłałem do produkcji płytki.

    Pozdrawiam ! :)