Skocz do zawartości

E-warcaby - rodzaj czujnika


Koko123

Pomocna odpowiedź

Cześć,
Planuję zrobić grę warcaby. Pod danym polem powinien być czujnik i w trakcie zmiany miejsca pionka, tj. kiedy staniemy na pole, czujnik powinien wysyłać sygnał do Arduino. Tu pada pytanie - jaki czujnik najlepiej się sprawdzi? Zarówno pod względem kosztów/niezawodności, jak i prostoty. Myślałem żeby to zrobić poprzez zamontowanie kontaktronu pod polem, a w pionek wsadzić od spodu magnes.

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

Z kontaktronem trzeba pomkombinować w którym miejscu i w jakiej orientacji umieszczać go pod polem. Odległość i pewność zadziałania zależy od położenia biegunów magnesu względem drutów czujnika. Typowe płaskie magnesiki mające bieguny na górze i na dole przyklejone od spodu kamienia nie zadziałają przy centralnym zbliżaniu a z kolei odsunięcie magnesu lub kontaktronu od centrum spowoduje, że ważna będzie orientacja piona w osi pionowej. Najpierw warto wiedzieć jak i dlaczego to działa, że by na głupa nie kupić i nie przykleić 64 kontaktronów i 24 magnesów.

W sumie czujniki stykowe to fajny pomysł, można je łatwo multipleksować więc 8+8=16 drutów bezpośrednich lub 2x3=6 kabelków z użyciem zestawu dekoder+multiplekser (np. 74HC138+74HC151) wystarczy.

Nie "widać" kolorów pionów, ale program powinien zauważać który podnosimy i rozumieć, że ten sam opuszczamy na nowe pole. Trzeba będzie w trakcie gry zachować pewną "higienę pracy" np. kolejność czynności przy biciu "wielodrogowym", żeby gra się nie zgubiła w nadążaniu za naszymi intencjami.

Tak samo trzeba przemyśleć sprawy sytuacji specjalnych, choćby początek czyli kto ma białe?

Przed napisaniem pierwszej linii kodu warto zapoznać się z tym:

http://archiwum.warcaby.pl/kodeks-warcabowy/134-rozdzial-i-oficjalne-reguly-gry-w-warcaby

Niektóre czujniki hallotronowe rozpoznają "biegunowość" magnesu, ale tu także trzeba zwrócić uwagę na typ scalaka, bo jedne "zatrzaskują się" w stanie włączonym do przyjścia pola odwrotnego a inne nie. W zasadzie jeśli chcemy znać kolor piona, trzeba użyć układów z wyjściem analogowym, mierzących wielkość i znak natężenia pola, podłączonych do ADC procesora a to trochę komplikuje ich multipleksowanie. Choć wszystko jest do zrobienia 🙂

Faktycznie, pierwszy z brzegu kontaktron:

https://www.tme.eu/pl/details/ksk-1a66_3-1015/kontaktrony/meder/

trochę przegrywa w porównaniu z analogowym czujnikiem pola:

https://www.tme.eu/pl/details/ss39et/czujniki-halla/honeywell/

ale różnica nie jest jakaś powalająca. Czujnik Halla potrzebuje zasilania i ten akurat ciągnie ok. 6mA co zsumuje się do prawie 400mA. Przy zasilaniu zestawu z baterii to może być istotna wada. Można próbować załączać zasilanie tylko tego czujnika/pola które akurat mierzymy, ale to dodatkowo komplikuje układ: nie wiadomo jak scalak zachowuje się przy włączaniu i jak długo trzeba czekać by wyjście pokazało coś zbliżonego do prawdy. W sumie jednak nie przewiduję tu poważnych ograniczeń i prędkość rzędu kilkunastu pełnych skanów całego pola na sekundę jest do uzyskania przy średnim prądzie na poziomie jednego czujnika, czyli tych 6mA.

EDIT: Damki które zwyczajowo są odwrócone, nawet przy użyciu hallotronów musiałyby być rozpoznawane z kontekstu gry.

EDIT2: Ha, jednak nie 🙂 Oto cytat z zasad:

"Damką jest pion ukoronowany (przykryty) drugim pionem tego samego koloru"

Nigdy tak nie grałem.. 🙁

  • Pomogłeś! 1
Link do komentarza
Share on other sites

Jeśli tylko warcaby to tak, ale myślałem, że skoro już robić taką rzeźbę to na całość..

Acha, i tak jeszcze myślę, że przyda się jakaś prosta sygnalizacja potwierdzająca czy gra zrozumiała co akurat zrobiliśmy. Nie wiem, jakieś wyświetlanie typu naszego ruchu i współrzędnych (nawet w oficjalnej notacji) czy coś.

A jak będzie w drugą stronę? Sami mamy przestawiać jej piony wg wskazówek (trochę słabe) czy planujesz ramię np. ze ssawką podciśnieniową żeby nie robić chwytaka z serwa?

Link do komentarza
Share on other sites

Powiem szczerze, że też myślałem o fototranzystorach/fotorezystorach. To są jednak czujniki analogowe, a arduino ma ich znacznie mniej niż cyfrowych. Mógłbym taki czujnik podpiąć pod wejście cyfrowe? I tu pada również drugie pytanie - czy istnieje jakiś moduł I/O do arduino? Mega posiada 54 z tego co kojarzę, gdybym chciał wykorzystać więcej wejść/wyjść to muszę dokupić drugi moduł i jakoś je połączyć?

PS. dzięki wielkie za szybkie odpowiedzi 🙂

[ Dodano: 04-06-2018, 13:48 ]

A, dodam, że myślałem również o zamontowaniu krańcówki. Tutaj powstaje jednak problem estetyczny - musiałyby być otwory wywiercone, no i wyglądałoby to chyba znacznie gorzej niż nawet z fotorezystorami (krańcówka byłaby ruchoma, w związku z czym dane pole ruszałoby się góra/dół).

[ Dodano: 04-06-2018, 13:51 ]

Chciałem założyć nowy temat, ale skoro tu jest został poruszony to od razu spytam o kwestię dotyczącą zasilania. Rozumiem, że najlepiej byłoby zasilić andruta z gniazdka. Ale co, gdybym chciał aby zagrać bez zbędnych kabli? Rozwiązaniem mogą być:

- komplet czterech paluszków

- bateria 9V

- powerbank - choć nie wiem czy zadziała.

Akumulator odpada - chodzi o koszty, chcę aby były możliwie niskie, a aku + ładowarka to już ładny wydatek.

Link do komentarza
Share on other sites

Odpowiem na razie na ostatnie pytanie.

Aku li-ion (ok. 30PLN), przetwornica (od 5 do 30 PLN, zależy ile prądu chcesz ciągnąć), moduł ładowarki (ok. 2 PLN).

To drogo?

Na baterie po tygodniu wydasz więcej niż przez rok na makaron...

Aha, aku kupisz nawet za dychę, tylko może być nieco za słaby...

Tak przy okazji - bateria 9V o ile w ogóle będzie w stanie to zasilić wystarczy na jakieś 5 do 7 minut pracy urządzenia.

  • Pomogłeś! 1
Link do komentarza
Share on other sites

Przy czujnikach optycznych będziesz zależny od oświetlenia zewnętrznego. Czujnik patrzący w górę będzie widział żyrandol albo nie, albo niebo albo nie, itd. Kalibracja tego będzie trudna, bo zawsze ktoś ręką przysłoni żarówkę - np. podczas ruchu pionem - i skucha. Poza tym powiercona szachownica wygląda kiepsko. A ponieważ i tak będziesz musiał mierzyć każdy fototranzystor analogowo bo warunki będą się zmieniały w zależności od tego gdzie położysz zestaw, to i tak potrzebujesz mnóstwa wejść ADC.

A liczbą się nie przejmuj, ludzie wymyślili jak to powielać więc nawet do małej płyteczki Nano możesz podłączać setki czujników, zarówno cyfrowych jak i analogowych. Jak rozumiem te zdania o multipleksowaniu w ogóle do Ciebie nie dotarły. Jakby co, to właśnie było o zwielokrotnianiu liczby wejść.

Korzystając z krańcówki nie musisz mieć ruchomego każdego pola. Wystarczy mały otworek w środku każdego kwadratu z lekko wystającym patyczkiem/popychaczem naciskającym na wyłącznik ukryty pod spodem. Odpowiednio ciężkie piony i działa, ale moim zdaniem rozwiązania mechaniczne szybko się psują. Nie mówiąc o kłopotach z porządnym i pewnym zrobieniem tego. Jeśli w czasie gry wciąż trzeba będzie poprawiać położenie pionów lub weryfikować czy stan gry znany programowi jest taki jak stan na szachownicy, to wczuwka spada do zera i nici z przyjemności.

W sprawie zasilania: po prostu musisz policzyć prąd całości. Co jeszcze tam będzie? Wyświetlacz? Jakieś diody? Czujniki aktywne też pobierają prąd. Jak już zdecydujesz jak chcesz to zrobić, wyjdzie prąd i z tego od razu będziesz wiedział jak długo pociągnie nap. komplet 2 czy 8 paluszków. To są proste rzeczy. No i zastanów się jak to będzie używane. Jeśli tylko jakiś pokaz raz na miesiąc, można odżałować pieniądze i zrobić na bateriach. Ale jeśli chcesz z tym walczyć częściej, to będziesz musiał wejść w akumulatory. Rachunek jest prosty.

Link do komentarza
Share on other sites

No wiem, powiedzmy, że taki rodzaj zasilania wyniesie 50 zł. Ja jednak chciałbym zasilanie zostawić po stronie użytkownika, czyli - ja zapewniam rodzaj zasilania, a użytkownik już sam stwierdzi czy lepiej kupić paluszki czy np. akumulatorki (paluszki) i ładowarkę swoją, bądź ładować we własnym zakresie z powerbanka. Coś jak widać to w zabawkach bądź myszkach/klawiaturach bezprzewodowych.

[ Dodano: 04-06-2018, 14:33 ]

Całość posiadałaby te 64 kontaktrony, moduł bluetooth (pobiera prąd do 20mA) no i arduino np. micro.

Link do komentarza
Share on other sites

No to wybierasz wtedy jakiś koszyczek na sensowną liczbę paluszków AA, np. na 8 sztuk. Wtedy przy bateriach masz od 12V gdy są nowe do 8V pod koniec pracy. Z kolei 8 akumulatorków da Ci od 9.6V po wyjęciu z ładowarki do ok. 7.2V przy rozładowanych. Ponieważ potrzebujesz 5V, wypadałoby użyć modułu przetwornicy impulsowej, bo ta jest oszczędna i najmniej marnujesz na ciepło.

Jeśli chcesz pójść na taniość, możesz wykorzystać stabilizator na płytce Arduino, ale musisz zapewnić, by w najgorszych warunkach (pod koniec cyklu pracy źródeł zasilania) nie dostał mniej niż jakieś 6V. Moim zdaniem koszyczek na 6 paluszków to minimum.

Tak naprawdę ważna jest fizyczna wielkość/objętość baterii bo to z tego bierze się ilość zmagazynowanej energii. Napięcia są rzeczą trochę wtórną, bo wszystko możesz dopasować elektroniką. Zastanów się jaka objętość przedziału baterii jest akceptowalna. Nie ma sensu oszczędzać miejsca gdy stosujesz gigantyczne Arduino Mega. Z drugiej strony bateria nie będzie mała jeśli wstawisz tam dużo LEDów, wyświetlacz lub czujniki wymagające prądu. Tak więc musisz przedstawić spójną koncepcję tego urządzenia. Dopiero wtedy można rozważać różne warianty zasilania. Napisz jak to widzisz, co tam będzie i jak tego będziesz używał.

EDIT: Ale przy czujnikach odbiciowych patrzących w sufit nie wiesz czy widzisz światło swojej diody odbite od piona czy światło żarówki. Diody oświetlające można multipleksować, nie muszą być włączona na stałe wszystkie, raczej zawsze tylko jedna.

Link do komentarza
Share on other sites

Czyli biorąc pod uwagę prostotę i energooszczędność, można powiedzieć, że kontaktron jest najlepszym wyjściem?

Teraz kwestia zasilania. Ile prądu pobierze taki kontaktron w czasie przyłożenia magnesu? Bo bez przyłożenia rozumiem, że nie pobierze prądu? I wtedy mnożę ilość kontaktronów razy pobór prądu przez jednego, dodaję 20mA z bluetooth i prąd z arduino (50mA?)? Czy dobrze rozumiem?

[ Dodano: 04-06-2018, 14:50 ]

Koncepcja to: arduino (raczej mega), moduł blu no i te kontaktrony. Tylko tyle.

[ Dodano: 04-06-2018, 15:05 ]

6 paluszków to trochę dużo. Co wypadałoby lepiej:

- bateria 9v

- 4 paluszki/akumulatorki

- powerbank (o ile można)

Wiem, że wydajność baterii w takiej konfiguracji jak przedstawiłem jest naprawdę słaba, jednak chcę przemyśleć czy iść właśnie w taką ilość baterii, czy sprawę olać i powalczyć z zasilaniem poprzez powerbank lub bezpośrednio z gniazdka. Chodzi mi ile 4 paluszki bądź jedna 9v "pociągnie".

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.