Skocz do zawartości

RPi 3B - więcej pinów GPIO. 16<


kordyl13

Pomocna odpowiedź

Witam, 

szukam  rozwiązania dla 'maty' 4x4 lub 5x5. Wyjaśniając słowo mata, to przez to mam na mysli platformę która będzie miała swoje "gniazda", a w nie będą wkładane moduły które będą miały swoje instrukcje. Instrukcje musza być czytane od lewej do prawej (z góry na dół) tak aby stworzyć jedną większą instrukcję i np. wyslać ją na robota (np. lewo, lewo, prawo, prosto), dodatkowo mogą być użyte 2,3,4,5 gniazda jak i wszystkie razem. Szukam pomysłu jak stworzyć wyjście z RPi aby móc sprawdzać te pola w kolejności (aby każde miało swój adres w komórce i ściąganie instrukcji z klocków byłoby pobierane za pomocą np. petli do macierzy w programie). 

Druga kwestia to będzie jak rozwiązać klocki same w sobie, myślałem o jakimś zasilaniu ich, a później pobraniu danych przez jeden kabelek prosto do pinu w RPi. 

Jeśli coś jest zagmatwane, to wytłumaczę ;) 

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

Witamy na forum,

projekt wydaje się ciekawy ale chyba nie wszystko rozumiem. Zatem dopytam: to jest coś do nauki powiedzmy programowania, zabawka edukacyjna? Z tego co napisałeś wyobrażam sobie, że jest to taka kratownica, gdzie w pola wtyka się te klocki i każdy ma jakąś funkcję.

Myślę, że można zrobić to bardzo prosto, gdy każdy z klocków będzie się czymś charakteryzował. Pierwsze co przyszło mi na myśl to tagi RFID, ale to jest dużo zachodu.

Drugie to podłącz moduł przetwornika ADC np po I2C. Każdy klocek miałby jakiś dzielnik napięcia i rozróżniałbyś je po napięciu jakie pojawia się na wyjściu dzielnika. Odczyt mógłbyś wykonywać dla każdego klocka (multipleksowany) w momencie wpięcia klocka (krańcówka, goldpiny w roli włącznika).

Jeżeli ma to być ładne i kolorowe to może czujnik kolorów w każdym gnieździe? Albo transpotory w gniazdach, które sprawdzałyby jakieś znaczki w klockach (mógłbyś zakodować coś w postaci białych i czarnych kropek). Wtedy klocki nie wymagałyby zasilania. Tylko trzeba by wykombinować sposób ułożenia transoptorów, tak by klocek można było dowolnie umiejscowić, albo w jakiś sposób wymusić tylko jeden sposób ułożenia. Wtedy śmiało mógłbyś dać np 3 transoptory uzyskując 2^3 = 8 możliwych rodzajów klocków.

Link do komentarza
Share on other sites

Oczywiście, coś al'a Screenless Coding tylko jako projekt inż. 
Tak, chciałbym aby każdy klocek czymś się charakteryzował, nie musi być dużo klocków. 
 

Nie musi być to ładne i kolorowe, bliżej do tego aby bylo to proste i mało problematyczne. 
Podłączenie napięcia pod taki klocek nie powinno być problemem, jedyne problemy jakie się pojawiły to właśnie ten zapis w kolejności i to co musi być w klocku. Myśleliśmy nad jakimś małym modułem co ma zapisaną jakąś swoją wartośc i po podłączeniu do zasilania wyślę ją do RPi, ale nie wiedzieliśmy czy to zda egzamin. 

Był pomysł RFID, ale ile pól to tyle czytników musi być. 

 

 

Link do komentarza
Share on other sites

Ale klocek nie musi komunikować się bezpośrednio z RPi, tylko z matą. RPi wysyła do maty zapytanie typu "odczytaj mi klocek na pozycji X", mata komunikuje się z klockiem (jeśli tam jest), odczytuje w jakiś prosty sposób po serialu co on tam ma w środku i zwraca tę informację do RPi.

W prostszym przypadku mata to po prostu multiplekser a odczytem zajmuje się sam RPi osobiście.

Jeśli potrafisz do klocka podłączyć zasilanie, to trzeci pin (danych) nie powinien być problemem.

A w środku klocka siedzi sobie jakiś ATtiny...

Edytowano przez ethanak
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)

Trzeci pin nie powienien być problemem. 

Multiplekser, a robił już ktoś coś takiego podobnego ? Da się ujżeć część takiego rozwiązania ? 
Bo zastanawia mnie jak to wszystko połączyć między klockiem (w którym siedzi ATtiny), a samym RPi. 
Tak chodzilo głównie o to aby RPi już zajmował się sprawdzaniem jaka instrukcja jest stworzona z klocków i przesyłaniem prosto do robota komend uprzednio stworzonych przez ciąg klocków. 

Edytowano przez kordyl13
Link do komentarza
Share on other sites

Trochę mnie to dziwi.

Napisz jak stoisz w programowaniu, bo nie chciałbym wyjść na głupka proponując ci jakąś prostotę - ale z drugiej strony nie chciałbym wyjść na kogoś, kto proponuje skomplikowany algorytm chłopcu co właśnie skończył przedszkole...

Pozdrawiam wynalazcę Przyjaznego Forum.

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

Programowanie... z tym może nie jest najlepiej, nie jestem zapalonym "pisarzem" kodu, ale trochę umiem. Cieżko odpowiedzieć na takie pytanie 😉 
Właśnie tu chodzi o to aby było jak najłatwiejsza implementacja tego wszystkiego... Myślałem nad tym aby "jakoś" rozszerzyć ilość pinów które da się zaadresować w kodzie i sprawdzać je co dostają od klocka. Jest np. przycisk "czytaj" i włącza się zasilanie pod klockami których dane są odczytywane przez RPi. Raczej ja tak to widziałem przez chwilę, ale nie wiedziałem czy uda się to jakoś zaimplementować. 

Link do komentarza
Share on other sites

16 godzin temu, ethanak napisał:

Pozdrawiam wynalazcę Przyjaznego Forum.

Odsyłam 😀

16 godzin temu, kordyl13 napisał:

Myślałem nad tym aby "jakoś" rozszerzyć ilość pinów które da się zaadresować w kodzie

Poczytaj jak realizuje się sterowanie np klawiatury, tu masz w kursie. Poczytaj o multipleksowaniu. Jeżeli uważasz że masz za mało wyprowadzeń, skorzystaj z ekspandera. W ten sposób nieważne jaki sposób dekodowania adresów wybierzesz to będziesz miał pod dostatkiem pinów. Na pewnie nie radzę Ci podłączać wszystkich gniazd pod osobne wyprowadzenia. Za to ułóż je w macierz tak jak na rysunku z kursu i odczytuj (z dużą prędkością lub w momencie włożenia) adresy, przepytując każdy kolejny.

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

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.