Skocz do zawartości

Projekt z Lilypad i diodą programowalną RGB, kilka pytań od laika w temacie


karatemistrz

Pomocna odpowiedź

Cześć,

Jestem początkująca i to mój pierwszy post (wiem, ominęłam post powitalny, przepraszam 🙂 )

Chcę zrobić dwa proste układy ubieralne z przyciskami (w tej roli małe czujniki piezoelektryczne), które będą działać tak:

Mam nazwijmy to "rękawicę" z przyciskiem piezo, która w drugiej rękawicy ma wywoływać wibracje i świecenie się diody na dany kolor (kwestie typu łączności między nimi zostawiam na później, na razie ogarniam podstawy). Dopóki układ był na płytce prototypowej, było git i dioda działała. Teraz, kiedy mam przetransplantować to rozwiązanie na Lilypad, który docelowo ma być wszyty w instalację, piętrzą mi się wątpliwości, które aż podzielę na sekcje:

 

PYTANIA O LILYPAD

lilypad.thumb.jpg.49a0d28b1eed76c0dc49c29c858b2dd2.jpg

czy 1/tx i 0/rx przy wyprowadzeniach (fot. schemat Lilypad) oznaczają to samo, co RXD i TXD na pinach? W sensie są to dwie opcje tego samego?

i czy zasilanie do wyprowadzenia vcc również będzie mi przewodzić sama nitka przewodząca, zamiast kabla?

 

PYTANIA O DIODĘ

Mam kilka diod o nazwie WS2812B 5050 RGB, kupionych pojedynczo. Zagwozdką jest dla mnie tych sześć metalowych pól lutowniczych - wiem, że te diody są raczej pomyślane do świecenia w jakimś szeregu czy innej taśmie.

 139281160_allegrodioda.thumb.jpg.55c0e20118363aa51d3609f451c3619b.jpg

Pytanie 1: o ile Din i Dout rozumiem jako wejście i wyjście sygnału cyfrowego odpowiadającego za barwę, zastanawiam się nad + i -.

Czy obydwa pola o oznaczeniu + i oznaczeniu - muszą być tutaj zlutowane, czy wystarczy podłączyć jeden + i jeden -, jeśli dioda jest jedyną podłączoną w układzie sztuką?

Pytanie 2: czy trzeba koniecznie lutować te pola, czy wystarczy przykleić nić np. na przezroczysty lakier? (w ten sposób usztywniam niektóre elementy, albo na klej na gorąco, ale w tej ich 1 cm skali nie zaryzykuję chlapania klejem)

Pytanie 3: czy jeśli trzeba koniecznie lutować, to musi tam być kabel, czy podobne rzeczy praktykuje się również z tą nicią?  

Przepraszam jeśli pytania mogą brzmieć głupio czy naiwnie, jeszcze stawiam pierwsze kroki i każde z nich starałam się sprawdzić wcześniej, a i tak zrobiło się tego sporo. Niestety w realu nie mam się od kogo dowiedzieć, a większość znajdowanych w internecie informacji to same schematy, oferty sprzedaży i opisy.

 

Edytowano przez karatemistrz
  • Lubię! 1
Link do komentarza
Share on other sites

No więc kolejno:

0/rx i 1/tx to to samo co RXD i TXD i to samo co 0 i 1;

Nitka powinna wystarczyć ale to zależy od jej długości (ma jednak stosunkowo sporą rezystancję). Najlepiej sprawdź póki to masz na płytce prototypowej zasilając ją po prostu odpowiednio długim kawałkiem nitki.

Co do diody:

Oba plusy i oba minusy są wewnętrznie połączone (dioda ma cztery piny), a są umieszczone w ten sposób po prostu dla wygody przy łączeniu kilku diod. Dla pojedynczej diody możesz spokojnie łączyć tylko jeden plus, tylko jeden minus i Din.

Niestety, tu musi być lutowanie - nitka raczej niechętnie się lutuje, a jeśli już to w dość wysokiej temperaturze, której dioda może nie przeżyć. Możesz przylutować kawałek cienkiego miedzianego przewodu i podpiąć go do zatrzasku, a dalej już normalnie nitką. Ewentualnie jeśli to możliwe możesz zastosować kynar zamiast nitki, tylko wtedy po zlutowaniu zabezpiecz to klejem tak, żeby złapał izolację na przewodzie, bo 0.25 srebrzanka lubi się ułamać tam, gdzie kończy się izolacja. Kynar można kupić na alledrogo na metry (chyba minimum 5m, zależnie od aukcji) w różnych kolorach, całkiem niedrogo (na zasadzie że jak kupisz sześć kolorów to masz dostawę smartem). Możesz również zastosować jakąś cienką linkę (np. AWG28) - pojedyncze dość ciężko dostać, ale można wypruć z taśmy (ja tak przynajmniej robię).

To chyba wszystko... daj koniecznie znać czy wyszło!

 

 

  • Lubię! 1
Link do komentarza
Share on other sites

(edytowany)

No więc nie wyszło za bardzo.

Zrobiłam dwie wersje tego samego układu, jedna jest z nicią przewodzącą a druga z kablem flry (kynar z jego grubością i łamliwością przy każdej okazji okazał się nie na moje nerwy) i żadna z obu tych wersji zdaje się z jakiegoś powodu nie przewodzić prądu. Nie wiem, o co chodzi ani co w tym poprawić.

IMG_20210612_205753.thumb.jpg.c113ed7e30fc1c583d52a44a1cdd07a5.jpgIMG_20210612_205820.thumb.jpg.864c82f4942a468376fb5bb67072eedf.jpgIMG_20210612_205837.thumb.jpg.45f902944fb23831bbf3390ea721ffc4.jpg

Efekty kilku zabaw multimetrem:

Multimetr przy pomiarze napięcia w losowych miejscach obwodu pokazuje jakieś nieznaczne odchylenia od normy chyba łapiąc dane z powietrza, a ani zlutowany kabel, ani zapleciona nitka nie chcą za bardzo przewodzić prądu.

Multimetr badający diodę w trybie diody pokazuje, że to nie z nią jest problem, bo zachowuje się ona zgodnie z przepływem prądu.

Minus miernika przyłożony do masy Lilypada, a plus do pozostałych diody (fot. 3) powoduje świecenie diody na niebiesko więc prąd chyba płynie.

Jest też problem z wgraniem sekwencji na Lilypad, który pokazuje błąd, nie precyzując na czym miałby polegać. (Problem uploading to board.  See https://support.arduino.cc/hc/en-us/sections/360003198300 for suggestions. i dalej nie wiadomo, co z tymi suggestions zrobić, bo nie wiem nawet, który problem mnie dotyczy, po prostu wiem ze nie działa)

 

Ostatnie zdjęcie to przybliżenie, tutaj nitki są związane i zabezpieczone klejem na gorąco (nitki też są upierdliwe w użyciu, rozwarstwiają się i są za sztywne do wiązania), klej użyłam też po to żeby oddzielić od siebie węzły na konkretnych ścieżkach które mogłyby się ze sobą stykać.

ps. Przepraszam za mało estetyczne ślady kota na trzecim zdjęciu, po wyczyszczeniu materiału z powrotem wskakuje mi na kolana nie pytając o zdanie, więc na razie odpuściłam odkłaczanie

Edytowano przez karatemistrz
  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

(edytowany)

Na podstawie tego zdjęcia zrobiłam sobie kabel męsko - żeński do komunikacji serial light adaptera z Lilypadem . Sugerowałam się tym zdjęciem:

shot_02.thumb.jpg.70cc6b0f43b3828e68fedbc8a2db14e8.jpg

i wyniknęło mi z niego, ze na drugim pinie (oznaczonym na schemacie wyżej jako CTS/GND) nie ma wyprowadzenia. Wcześniej dało się tym wgrywać na Lilypad proste szkice typu blink i zmusić do działania czujnik piezoelektryczny i prześledzić jego odczyty w monitorze portu szeregowego.

Samoróbka męsko-żeńska z 5 kabli i zaślepki w miejscu tego drugiego GND działała, ale później chciałam ją jakoś usztywnić żeby mieć po prostu jeden kabel zamiast myśleć o pinach, więc wsadziłam te kabelki w goldpin, zakleiłam klejem na gorąco i obwiązałam taśmą klejącą, żeby było sztywne.

Przestrzeń między goldpinami Lilypada a żeńskimi końcówkami kabla nie zostawia żadnego miejsca, no i okazało się, że nie można go do tego Lilypada wsadzić, bo dzięki warstwie kleju na spodzie kabel stał się za gruby (skleiłam ze złej strony), więc postanowiłam że po prostu odwrócę kabel. No i to odwrócenie kabla poskutkowało tym, ze zamiast braku sygnału na drugim GND dzięki temu jednemu zaślepionemu miejscu zabrakło go na TXD i najpierw myślałam że naprawienie tego i sklejenie kabla jeszcze raz rozwiąże mój problem.

Więc skleiłam jeszcze raz z dobrej strony, upewniłam się że oznaczenia na tym czarnym adapterze i na pinach Lilypad są w tej samej kolejności, zmieniłam zasilanie zworką na 3,5 V i... niestety nie działa dalej. Kable w żadnym miejscu się ze sobą nie stykają. Układ dalej działa tylko na multimetrze...

 

Edytowano przez karatemistrz
Link do komentarza
Share on other sites

Te kabelki mają to do siebie, że bardzo lubią nie stykać (żeńskie końcówki), szczególnie po potraktowaniu klejem.

Najlepsze rozwiązanie to kupić takie obudowy oraz piny męskie i żeńskie, kawałek taśmy (np. takiej) i zrobić sobie kabelek. Piny przy odrobinie wprawy można lutować i zacisnąć szczypcami. Na upartego możesz po prostu uciąć po kawałku goldpina męskiego i żeńskiego, dolutować taśmę zabezpieczając jakąś termorurką i masz przewód. Trzeba tylko uważać, bo żeńskie piny też lubią wyleźć przy wkładaniu do gniazda, ale taką prowizoryczną wtyczkę możesz jyż spokojnie zabezpieczyć termoglutem. Nawet bez rurki można się obejść, po prostu zalać to klejem i się cieszyć. Nie będzie  to co prawda rozwiązanie pozwalające na wtykanie i rozłączanie co pięć minut, ale parę Pro Mini takim prowizorycznym kabelkiem zaprogramowałem 🙂

 

  • Lubię! 2
Link do komentarza
Share on other sites

(edytowany)
Cytat

 

Jest też problem z wgraniem sekwencji na Lilypad, który pokazuje błąd, nie precyzując na czym miałby polegać. (Problem uploading to board.  See https://support.arduino.cc/hc/en-us/sections/360003198300 for suggestions. i dalej nie wiadomo, co z tymi suggestions zrobić, bo nie wiem nawet, który problem mnie dotyczy, po prostu wiem ze nie działa)

 

Pracuję na dwóch Lilypadach i okazało się, że każdy wybrał sobie inny port USB z komputera do wgrywania programu, istne szaleństwo 🙂 ale już działa, więc to było źródłem tej usterki.

Programy wgrywają się bez żadnego problemu tym kablem, jest natomiast problem z czujnikami piezo - na jednym rękawie w monitorze portu szeregowego są same zera, na drugim domyślnie jest wartość 1024, a po naciśnięciu przycisku wyświetlają się randomowe wartości od 0 do 1024, po puszczeniu przycisku rośnie od kiluset z powrotem do 1024.

Chciałam też poprosić o pomoc z kodem - założenie jest takie, żeby wciśnięcie czujnika z określoną siłą włączało diodę RGB. Słaby nacisk miałby włączać niebieskie światło, a coraz silniejszy - kierować spektrum światła w stronę czerwieni. Próbuję stworzyć jakąś hybrydę z kodu w którym RGB mieni się wszystkimi kolorami (jakimś cudem we wszystkich z 5 egzemplarzy diody

304fd369-10f4-4608-a5e0-141346e02e9b.thumb.jpg.0944c12242fe504d57655bbfecb79898.jpg

kolor zielony świeci dużo słabiej, stąd decyzja o użyciu czerwieni i niebieskiego) i takim oto kodem:

int RedPin = 3;
int BluePin = 5;
int GreenPin = 6;
int wypelnienie = 0;
int czujnikPiezo = A0;
int odczytZczujnika = 0;
volatile int power=128;

void setup() {
Serial.begin(9600);
pinMode(RedPin, OUTPUT);
pinMode(GreenPin, OUTPUT);
pinMode(BluePin, OUTPUT);
pinMode(3,INPUT);digitalWrite(3,HIGH);
  pinMode(5,INPUT);digitalWrite(5,HIGH);
}


void loop() {

odczytZczujnika = analogRead(czujnikPiezo);
   int sygnal = map(odczytZczujnika, 0,1025,0,250);

  analogWrite(wypelnienie, sygnal);
     Serial.println(odczytZczujnika);

   if(digitalRead(2)==LOW)power++;if(power>255)power=255;
   if(digitalRead(1)==LOW)power--;if(power<0)power=0;
   analogWrite(3,power); // tu dioda?
  
  
}
  

próbowałam to skompliować w jedno z kodu do wciskania czujnika piezo i kodu do zmieniania się kolorów RGB, ale w międzyczasie porzuciłam to na moment żeby zamiast kabli uszyć to jednak z pomocą nici przewodzącej żeby zniwelować bajzel i plątanie się kabli, wróciłam do tego i pogubiłam się 😄 w sumie i tak robiłam to na czuja i po omacku więc trochę nie wiem, w którą stronę to popchnąć

Edytowano przez karatemistrz
Link do komentarza
Share on other sites

A wiesz o tym, że do wyjścia lilypada możesz podłączyć dokładnie jedną diodę, a nie pięć? Musiałabyś zastosować dodatkowe tranzystory, a wątpię abyś miała ochotę na jakieś pałętające się płytki ze wzmacniaczami. A jeśli ograniczyć prąd diod do takiego, który wytrzyma Lilypad - może się okazać, że trzeba będzie strasznie blisko podejść do Ciebie żeby zobaczyć, że dioda świeci. Natomiast gdybyś chciała podłączyć każdą diodę do osobnego wyjścia... no cóż, trochę ich za mało, a w dodatku tylko kilku z nich możesz użyć jako PWM (czyli takich, które pozwalają na płynną regulację świecenia). Przy diodach programowalnych (takich, jak chciałaś użyć na początku) tego problemu nie ma, łączysz wszystkie w łańcuch i jednym pinem sterujesz wszystkimi. Ja bym na Twoim miejscu jednak wrócił do programowalnych. Może trochę więcej roboty - ale przecież tu najważniejszy jest efekt!

A co do kodu... wybacz, ale to pytanie muszę zadać: chcesz nauczyć sie jak to się robi i sama napisać kod, czy może po prostu zależy Ci na działającym urządzeniu i najlepiej by było aby zrobił to ktoś, kto się na tym cokolwiek zna? Bo jeśli chcesz się nauczyć to niestety - kurs Arduino, od tego musisz zacząć, nikt Ci nie będzie tłumaczył tego, co ktoś już ładnie wytłumaczył i zawarł w dobrym, wypróbowanym kursie. Jeśli chcesz mieć tylko działające urządzenie - napisz to uczciwie (najlepiej w dziale Praca i tak dalej, chociaż możemy kontynuować w tym wątku). Na pewno znajdzie się ktoś kto to zrobi za friko.

A tu dalej możemy sobie dalej pogawędzić o diodach, kabelkach, niciach, zasilaniu tego całego ustrojstwa i innych niemniej ważnych sprawach...

 

 

Link do komentarza
Share on other sites

(edytowany)

Tak, wiem, i to, że mam ich pięć, nie oznacza, że chciałam wszystkie podłączyć, jedynie zastanawiała mnie tendencja do tego, że we wszystkich niedomaga kolor zielony (z którego chcąc, nie chcąc zrezygnowałam, bo pozostałe dwa mi wystarczą).

W kodzie zatytułowałam to GreenPin, RedPin i BluePin, co oznacza, że są to trzy wyprowadzenia jednej diody RGB. Poprzestaję na jednej w jednym układzie.

Tak, chciałam się nauczyć, jeśli fragment kodu kłuje w oczy, trudno - usunę i zabiorę się za to od zera, choć wydawało mi się, że każdy miewa moment utkwienia w martwym punkcie i nie chodziło mi o żadne robienie roboty za mnie, a jedynie jakąś sugestię rzuconą świeżym okiem, jak ruszyć to dalej i czemu się przyjrzeć - tak zresztą to sformułowałam. Nie mam zielonego pojęcia, dlaczego zostało to odczytane jako chęć pójścia na skróty. Może za bardzo chciałam to przyspieszyć i faktycznie nie trzeba było wrzucać tej buły bez ładu i składu - mój błąd. Dzięki za sugestie.

Edytowano przez karatemistrz
Link do komentarza
Share on other sites

23 minuty temu, karatemistrz napisał:

zastanawiała mnie tendencja do tego, że we wszystkich niedomaga kolor zielony

Bo taka uroda tych diod - zielony zawsze jest jakiś ciemniejszy. Przy programowalnych efekt jest praktycznie niezauważalny, a poza tym można to skorygować w programie.

A co do sugestii:

Jeśli w Twoim kodzie widzę, że ustawiasz pin 3 jako OUTPUT, a dokładnie dwie linijki dalej ustawiasz go na INPUT, wykonujesz polecenie którego nawet stare dinozaury nie używają (chociaż całkiem poprawne) do połączenia pullupów, a potem czytasz wartość z pinu 1 (którego po pierwsze nigdzie nie ustawiałaś, po drugie raczej się z niego nie powinno korzystać o ile nie jest to naprawdę i bezwzględnie konieczne) to ja się czuję jakbym czytał poezję w Swahili, pisaną przez kogoś kto zna wyłącznie dialekt Czukczów i ma do dyspozycji słownik szkocko-holenderski.

I nikt Ciebie nie posądza o chęć pójścia na skróty. Sam też nie szyję ubrań dla swoich lalek ani nie robię im makijażu, i wcale nie uważam tego za jakiekolwiek "chodzenie na skróty", po prostu się na tym nie znam. Tyle, że chyba za szybko się bierzesz do pisania kodu, najpierw warto opanować podstawy przynajmniej języka którego używasz, nie wspominając już o trudnej sztuce odróżniania pinów. Dlatego zaproponowałem kurs.

 

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.