Skocz do zawartości

Shield Forbota w logice 3V3


macias2k4

Pomocna odpowiedź

@Gieneq dziękuję za miłe powitanie 🙂

Mam nadzieje, że plan nie jest zbyt ambitny biorąc pod uwagę moją nędzną wiedzę w dziedzinie elektroniki 🙂 Właśnie z tego powodu nie chciałem projektować własnego PCB i skorzystam z gotowej płytki Robot Shield dla Arduino od Forbot 🙂 Dzięki temu nie muszę się przejmować stabilizatorem napięcia czy mostkiem H. Zależało mi jednak na architekturze ARM no ale jako laik za późno dowiedziałem się, że one działają z napięciem 3.3V a nie 5V jak Arduino i wybrany shield. Na szczęście większość pinów w Nucleo F411RE, które wybrałem ma FT(5V tolerance).  Problematyczne są 3 piny, do których chciałbym przeciąć ścieżki ale póki co nie wiem jak się za to zabrać, dlatego awaryjnie zamówiłem dwie płytki Nucleo 😄 

Gdy już będę miał co zaprezentować, to chętnie podzielę się efektami. Póki co muszę przejść kurs podstaw, który jak na razie bardzo mi się podoba 🙂

pozdrawiam ! 

 

Link do komentarza
Share on other sites

1 godzinę temu, macias2k4 napisał:

@Gieneq dziękuję za miłe powitanie 🙂

... Problematyczne są 3 piny, do których chciałbym przeciąć ścieżki ale póki co nie wiem jak się za to zabrać, dlatego awaryjnie zamówiłem dwie płytki Nucleo 😄

pozdrawiam !

Cześć,

zastosuj konwerter poziomów logicznych i możesz wykorzystać ten shield (5V) z NucleoXX(3,3V). Może to być np. jeden z tych modeli:

https://botland.com.pl/pl/konwertery-napiec/6117-konwerter-poziomow-logicznych-dwukierunkowy-4-kanalowy-msx-.html

https://botland.com.pl/pl/konwertery-napiec/2523-konwerter-poziomow-logicznych-dwukierunkowy-4-kanalowy-pololu-2595.html

https://botland.com.pl/pl/konwertery-napiec/4486-konwerter-poziomow-logicznych-dwukierunkowy-8-kanalowy-bss138-waveshare-9127.html

Na wszystkich sygnałach idących z płytki Nucleo do Shielda robisz konwersję 3,3V->5V jednym z takich konwerterów i po kłopocie (nie musisz rozcinać ścieżek).

Pozdrawiam

 

Link do komentarza
Share on other sites

Cześć @FlyingDutch i dzięki wielkie za podpowiedź.

Nie chciałbym zaspamować moim tematem wątku powitania użytkowników, jeśli to robię to przepraszam. 

Rozumiem, że powinienem użyć tyle sztuk konwerterów poziomów logicznych, żeby być w stanie pokryć wszystkie piny jakie występuj na łączeniu pomiędzy Shieldem a Nucleo ?

Sprawa wygląda tak, że ja chciałem je złożyć w "kanapkę". https://forbot.pl/blog/wszystko-do-robota-na-jednej-plytce-forbot-robot-shield-id20228 Jest to Shield do Arduino no i pod złącza kompatybilne z Arduino wystawione przez Nucleo chciałem go podłączyć. Nucleo ma być też zasilane z tego Shielda przez Vin. No i pytanie czy fakt, że mam to być kanapka nie utrudnia użycia tych konwerterów? No i czy da się to rozwiązać bez konieczności projektowania dodatkowej płytki pośredniej pomiędzy Shieldem a Nucleo?

Jeszcze raz dzięki i pozdrawiam 🙂

  • 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

17 godzin temu, macias2k4 napisał:

Problematyczne są 3 piny, do których chciałbym przeciąć ścieżki ale póki co nie wiem jak się za to zabrać, dlatego awaryjnie zamówiłem dwie płytki Nucleo 😄 

O których dokładnie pinach mówisz? Nie mam tego teraz jak sprawdzić, ale jest jakaś mała szansa, że to zadziała z Nucleo bez żadnego problemu. Powiedz tylko co chcesz właściwie przecinać 😉

Link do komentarza
Share on other sites

(edytowany)

To by była rewelacja 🙂 albo od razu po pracy albo wieczorem postaram się przykleić tu szczegółowe informacje. Przez chwile rozważałem nawet płytkę "DFRduino M0 Mainboard", która ma ARM'a działającego na 5V ale odpuściłem ze względu na niszowy procek i fakt, że później miałbym problem z toolchainem.  

Edytowano przez macias2k4
Link do komentarza
Share on other sites

Z tego co się dowiadywałem, to sygnały wychodzące z Nucleo ~3.3V powinny być wyłapane przez Shield jako logiczne jedynki. Na a na stronie: http://uczymy.edu.pl/wp/blog/2016/04/10/armit/ natrafiłem na następujące informacje:
image.thumb.png.1568852a83bf8ddbd4d7470e40736d5a.png

image.thumb.png.5cffc33f9c573c53f88bb5760cdd2ea0.png

 W związku z czym wychodzi na to, że  jeśli chodzi o sygnał zwrotny, to problematyczne (bez FT) są dwa piny analogowe: A0/PA0 i A2/PA4 i dwa piny cyfrowe: PB5/D4 i PA5/D13.

Gdy porównałem to ze schematem Shielda okazało się, że z tych czterech, używany jest tylko D4 jako B_DIR w silniku B. Więc jeśli się nie mylę, to jest to sygnał tylko wychodzący z Nucleo po to, żeby określić kierunek obrotów silnika. Zakładam więc, że żaden sygnał nie powinien wrócić z Shielda do Nucle. Dobrze dedukuję czy mogę się przejechać na tym ? 😛

Pozostałych trzech pinów póki co nie planuję używać w robocie, ale chyba możliwe jest w elektronice, że na takim luźnym pinie(w Shieldzie) pojawi się jakaś szpilka, która może uszkodzić Nucleo ? Żeby temu za pobiedź chciałem przeciąć te ścieżki. 

 

Więc przechodząc to pytań:

  1. Czy faktycznie powinienem przeciąć ścieżki lub nie wiem pozbyć się tych wyprowadzeń pinów w Nucleo, żeby za pobiedź jego uszkodzeniu ?
  2. No i takie pytanie przy okazji, jeśli mogę jeszcze głowę zawrócić. Ten Shield wystawia Expander portów I/O oparty na module 'MCP23008'. Z tego co doczytałem działa on po I2C. Więc używa pinów (PB9/SDA,PB8/SCL). Założyłem więc, że on też działa na 5V i w schemacie do robota podłączyłem tu dwa encodery https://kamami.pl/enkodery/204393-miniq-robot-chassis-encoder-modul-enkodera.html?search_query=MiniQ+Robot+chassis+Encoder&results=1, no i planuje je podłączyć w konfiguracji na 5V. Czy to nie jest błąd ?

Sorki, że się tak rozpisałem .. 🙂 

Link do komentarza
Share on other sites

Dnia 17.04.2020 o 20:32, macias2k4 napisał:

Gdy porównałem to ze schematem Shielda okazało się, że z tych czterech, używany jest tylko D4 jako B_DIR w silniku B. Więc jeśli się nie mylę, to jest to sygnał tylko wychodzący z Nucleo po to, żeby określić kierunek obrotów silnika. Zakładam więc, że żaden sygnał nie powinien wrócić z Shielda do Nucle. Dobrze dedukuję czy mogę się przejechać na tym ? 😛

Masz rację, ten pin musi działać jako wyjściowy, więc tutaj nic nie powinno się uszkodzić. A0 i A2 tylko są wystawione w formie goldpinów na shieldzie, jeśli nic do nich nie podłączysz to nic nie trafi do Nucleo.

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

Dzięki za dobre wiadomości 🙂

Pozostaje mi więc tylko kwestia pinu D13. Czyli, czy na nim też nie ma zagrożenia, że sygnał 5V trafi do Nucleo ?

No i to czy piny wystawione w expanderze portów (EX) działają na 3.3V czy na 5V ?

image.thumb.png.eaa0fa12e89da80bb300b955285b73cf.png

Ten wycinek ze schematu Shielda pokazuje, że powinno to być 5V. Rozumiem, że tak będzie gdy podłączam Shield do Arduino. Pytanie, czy tak samo będzie, gdy go podłącze do Nucleo ? 
 

Link do komentarza
Share on other sites

@macias2k4 z dokumentacji MCP wynika że da radę:

image.thumb.png.b45c6e3090893f0e3cfbd82b8cddce11.png

11 godzin temu, macias2k4 napisał:

Pozostaje mi więc tylko kwestia pinu D13. Czyli, czy na nim też nie ma zagrożenia, że sygnał 5V trafi do Nucleo ?

Masz na myśli te miejsce w schemacie?

image.thumb.png.7010e201e9316f48eda5941290946f21.png

Są odgrodzone kluczami, także jest ok. Ale na tych elementach i tak będziesz miał 3V3 co nie?

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

(edytowany)

@Gieneq pięknie dzięki, czyli z Expanderem nie będzie problemu 🙂 

To wygląda tak, że ja jako punkt wyjścia potraktowałem Shielda. Więc wszystkie komponenty do robota dobrałem pod niego, czyli na 5V. Dopiero później dowiedziałem się, że ARM'y pracują w 3.3V. Schemat stworzyłem tak jak umiałem. Utworzyłem luzem wszystkie złącza z shielda(starając się odtworzyć w miarę ich układ względem siebie zgodnie z tym na płytce), no i połączenia peryferiów do nich. To jest zrzut z mojego schematu:

image.thumb.png.d44c88865b720536e937724ea8d4633d.png

Faktycznie, Ja nie zauważyłem, że w tego miejsca w schemacie od Shielda, które wysłałeś jest użyty D13. Widziałem go tylko tu:
image.png.362a5399e4cc5aaf1659809ab334a232.png

No i myślałem, że jest wystawiony do mojego użytku na "złączu" DIGITAL i nie zamierzałem pod niego po prostu nic podpinać. Dlatego pytałem się, czy jeśli nic nie będzie tam podpięte to mimo wszystko może się pojawić jakiś pik 5V i uszkodzić Nucleo.

 

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

18 minut temu, macias2k4 napisał:

No i myślałem, że jest wystawiony do mojego użytku na "złączu" DIGITAL i nie zamierzałem pod niego po prostu nic podpinać. Dlatego pytałem się, czy jeśli nic nie będzie tam podpięte to mimo wszystko może się pojawić jakiś pik 5V i uszkodzić Nucleo.

Tranzystory mogą służyć do sterowania większym napięciem, w kursie masz przykłady sterowania np żarówką na bodajże 12V.

Musisz dokładnie przejrzeć ten schemat.

Na ilustracji masz podpięte enkodery do expandera?

Link do komentarza
Share on other sites

No właśnie jeśli znajdę czas, to ja dzisiaj planuję skończyć dopiero 3 rozdział w pierwszym kursie podstaw elektroniki. Więc poznaje dopiero potencjometry, także tranzystory jeszcze mam przed sobą 🙂 Póki nie przebrnę przez cały kurs nie zabieram się w ogóle za fizycznie podłączenie Nucleo z Shieldem.

Hmm ale dziwne dla mnie jest to, że D13 występuje w schemacie dwukrotnie. Faktycznie będę musiał spróbować dojść do tego, który z nich to wyprowadzenie D13 z Nucleo.

image.png.5555073a45ad21ce8c6d9b1d86c3cdb3.png

Tak encodery podpiąłem do expandera, nie bardzo nawet widziałem jakąś inną opcję bo już mi się kończyły piny.

Link do komentarza
Share on other sites

Na Arduichach z AVR na 13 pinie jest dioda świecąca, tu została ona powielona gdyż nie widać tej na UNO po przykryciu shieldem. Została dodatkowo oznaczona w tym białym prostokącie, zaś na listwie u góry zdjęcia są wolne piny cyfrowe - nawet z podłączonym LEDem pin jest dalej do własnego użycia. Gdyby nie był on dodany też na listwie, to ktoś musiałby się wlutowywać w linię przed tranzystorem sterującym tym LEDem 🙂 

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

Sorki za przerwę ale chciałem w pierwszej kolejności skonczyć kurs elektroniki I z Forbot. W czwartek mi się udało, jest świetny ! Dzieki wielkie za niego 🙂

 

  • Nucleo

Analizowałem schematy. No i jeśli chodzi o schemat Nucleo:

image.thumb.png.5f736922b3034ed8f01c01a1cdd856d4.png

To widzę, że w Nucleo jest dioda użytkownika (LD2), która jest podłączona do PA5 lub PB13 zależnie od wersji Nucleo. Z tabelki wnioskuje, że w moim przypadku jest to PA5 czyli interesujące mnie D13. Z tego co widzę, to jeśli most lutowniczy (SB21) jest zalutowany to dioda LD2 jest podłączona do D13:

image.thumb.png.8923604aa25f1ab41d2c7a10ad85c191.png
Znalazłem SB21 z drugiej strony na płytce Nucleo i wygląda na to że jest zworka 🙂 Co znaczy, że SB21 jest na ON, czyli LD2 jest podłączone do D13.

Poza schematami znalazłem tylko taką informację na temat złącz arduino w Nucleo:

image.thumb.png.81668e9418b54bcd5f6a11c356545203.png

 

-----------------------------------------------------------------------------------------------------------------

  • Shield

Teraz czas na schemat po stronie Shielda:

image.thumb.png.975906137311873f7a3dcf2f138164b0.png

Z tego co widzę, to sygnał przychodzący z Nucleo na pinie D13 wpada przez rezystor R13 (10k) nie na bazę a na bramę, bo to tranzystor unipolarny z tego co znalazłem w necie. Sterowany jest więc napięciem a nie prądem. Wydaje mi się, że chyba nawet wiem o czym piszę a to dzięki kursowi z Forbot 😄 Więc jeśli na bramie napięcie będzie większe niż na źródle to zacznie płynąć prąc przez tranzystor w związku z czym zacznie działać obciążenie, czyli zaświeci się nam dioda 🙂 

No dobrze, ale jeśli na pinie D13 do Shielda trafi z Nucleo napięcie 3.3V (a nie 5V jak były by w przypadku Arduino) to może ono okazać się za małe do przekroczenia tego napięcia progowego w BSS138 i prąd przez tranzystor nie popłynie zgadza się ? Wówczas świecenie diodą D3 w Shieldzie nie będzie działać.. 😕 No ale żaden negatywny skutek poza tym, że dioda się nie zaświeci nie powinno być zgadza się?

 

@Gieneq czyli mimo to, że mamy na tym pinie wyprowadzenie diody LD2 z Nucleo na Shield, żeby było ją widać, to mogę również użyć równolegle tego pinu na Shieldzie do sterowania czyms innym?

 

Pozostaje wówczas tylko pytanie, czy ten pin D13 wystawony do użytku ale bez podłączenia czegokolwiek może zaszkodzić Nucleo ? 

image.thumb.png.44325792c8bc0f13d6af2435faea6435.png

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.