Toon posts:

Het aansluiten van (heel) veel sensoren op een Raspberry Pi

Pagina: 1
Acties:

  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Hallo allemaal!

Sinds een tijdje ben ik aan het kijken om zelf een slim schaakbord te maken. Ik weet dat er al een aantal kant-en-klare bestaan, maar die zijn duur en werken vaak niet helemaal lekker. Ook lijkt het mij gewoon een heel leuk project om me mee bezig te houden. (Het gaat om de weg ernaartoe, niet het einddoel ;) ). De software komt wel goed, maar de hardware is voor mij iets onbekender terrein.

Ik had het idee om mijn schaakstukken te herkennen met RFID lezers aan de onderkant van het bord. Meer specifiek de RC522. Ik zou deze willen aansluiten op, bijvoorbeeld, een Raspberry Pi.

Maar dan zit ik met het probleem dat ik niet één vakje heb, maar 64. Is er iemand bekend met een manier om 64 ICS aan te sluiten op een RPI of vergelijkbaar? Ik zou niet graag voor elk vakje een losse controller kopen, dan loopt het allemaal wel heel erg de papieren in...

Alle ideeën worden zeer gewaardeerd!
Lars

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 26-09 22:03

SA007

Moderator Tweaking
Ik zou eerder problemen verwachten dat 64 rfid lezers met elkaar gaan storen.

Dat gezegd, je kan met multiplexer, bijvoorbeeld de 4051 prima schakelen tussen meerdere sensoren, zo'n beetje onafhankelijk van welk soort sensor dat is.

Ik zou voor iets anders gaan, bijvoorbeeld een kleursensor en een gekleurd vakje onderop de stukken of misschien iets wat elektrisch contact maakt als een 1-wire button oid.

Klok is stuk :(


  • pOZORjED
  • Registratie: Juli 2001
  • Nu online
Als je hem over I2C aansluit zou je er in theorie tot 128 aan moeten kunnen sluiten.
Denk alleen dat je een uitdaging gaat krijgen om je schaakstuk niet door meerdere RFID readers tegelijk te laten lezen, meestal is een stuk maar iets kleiner dan het vakje.
2e probleem zal zijn dat de meeste RC522 modules maar een beperkt aantal adressen beschikbaar heeft.

  • pOZORjED
  • Registratie: Juli 2001
  • Nu online
Je zou ook nog 1 reader met 64 antennes kunnen gebruiken, welke je continu het bord laat scannen.
Maar of je snel genoeg 64 rfid scans kunt registreren betwijfel ik even. Al is dat natuurlijk ook nog weer te behappen om 4x16 velden te scannen.

Soort multiplexer over je antennes heen leggen dus. Bijhouden welk veld je scant en wat daar staat.
Waarschijnlijk voordeliger dan 64 rfid lezers

[Voor 6% gewijzigd door pOZORjED op 21-09-2022 17:06]


  • wouter6022
  • Registratie: December 2012
  • Laatst online: 24-09 08:42
Ik raad je aan om machine learning met 1 camera te gebruiken. Hier is heel veel over te vinden op internet.

Zoals je zelf al zegt is RFID duurder en ik denk dat een camera nauwkeuriger is omdat elk stuk waarschijnlijk door 9 antennes geregistreerd wordt in het geval van RFID. En dat is bijna niet te filteren voor een beginner.

Het voordeel van machine learning is dat je de beeld verwerking met je eigen ogen kan debuggen en verbeteren. Bij RFID gaat dat niet tenzij je een 6e zintuig hebt dus dat is geen leuk leerproces.

Als je iets met RFID wil doen, begin dan met 1 ontvanger en kijk eens of dat leuk is.

  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Allereerst bedankt voor jullie reacties.

Het storen tussen de readers/antennes is wel een heel goed punt, denk ik. De aangegeven range is vaak 3 centimeter, en ze zouden 4 centimeter uit elkaar staan. Eventueel kan ik er 5 centimeter van maken. Maar dan loop ik natuurlijk alsnog het risico. Ik denk dat ik er 2 ga bestellen (ze zijn toch maar 5 euro per stuk) en eens ga kijken of ik storing krijg als ik ze zo ver uit elkaar laat werken.

Van de andere opties (camera en fysieke contact modules) ga ik eens onderzoeken wat de voor- en nadelen zijn.

  • pOZORjED
  • Registratie: Juli 2001
  • Nu online
iFre4ked schreef op donderdag 22 september 2022 @ 09:06:
(ze zijn toch maar 5 euro per stuk)
Dat is dus 320,- aan alleen al RFID readers als je er 64 gaat gebruiken ;)
Schaakbord van 500,- ?

  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Schaakbord van 500,- ?
Sommige mensen hebben twee auto's, dat heb ik dan weer niet... :)

  • Webgnome
  • Registratie: Maart 2001
  • Laatst online: 09:39
Kun je niet werken met een soort van 'mechanisch/electrisch' sensoren? Bijvoorbeeld door contactpunten onder je schaakstukken te maken in een bepaald patroon die je dan weer uit kan lezen via sensoren? Ik was even aan het denken over hoe old school core memory geheugne werkte. Aangezien er maar 6 soorten stukken zijn (dacht ik ) is je complexiteit hiermee beperkt. Het enige dat je hoeft te weten is

a) wat voor stuk staat er op plek a
b) wat mag dat stuk en wat was zijn vorige zet
c) controleer

dus een stuk minder geavanceerd dan beeldherkenning en dat soort zaken. Een gemiddeld 'slim' schaakbord doet dat namelijk ook niet met beeldherkenning

p.s. ik ben totaal niet bekend met electrotechniek etc maar denk wel graag even mee want lijkt mij een supergaaf project :)

[Voor 8% gewijzigd door Webgnome op 22-09-2022 09:58]

Strava, Twitter


  • Jaaap
  • Registratie: Februari 2000
  • Niet online
out-of-the-box:
Camera onder een glasplaat en dan @SA007's idee van een kleur (sticker) onderop de stukken?
Is wel lastig met vlakverdeling, waar je het glas zwart maakt zal de camera niet veel zien ;-)

Sláva Ukrayíni


  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 26-09 09:22
De RC522 werkt over een SPI bus, de MOSI, MISO, SCK en RESET pinnen kunnen gedeeld worden over alle sensoren. Alleen voor de SS (slave/chip select) pin zal je een lijn per sensor nodig hebben. Ik zou daar enkele I2C IO expanders voor gebruiken. Bijvoorbeeld de 4 x de MCP23016 of 8x de MCP23008, deze heeft 16 outputs en heeft 3 configureerbare adres pins zodat je er 8 op één I2C bus kan gebruiken. Je gebruikt dan deze IO expanders om steeds één chip select tegelijk hoog te maken zodat je steeds met MOSI, MISO, SCK tegen een chip tegelijk praat.
Voor wat betreft storing zou ik even uitzoeken of je de signaal sterkte van de sensors kan bijstellen. Desnoods kan je misschien met afscherming tussen de sensoren storing voorkomen.

[Voor 15% gewijzigd door jmzeeman op 22-09-2022 10:38]


  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Kun je niet werken met een soort van 'mechanisch/electrisch' sensoren? Bijvoorbeeld door contactpunten onder je schaakstukken te maken in een bepaald patroon die je dan weer uit kan lezen via sensoren? Ik was even aan het denken over hoe old school core memory geheugne werkte. Aangezien er maar 6 soorten stukken zijn (dacht ik ) is je complexiteit hiermee beperkt.
Dit is inderdaad een soort 'plan B'. Het liefste zou ik vanuit een leeg bord kunnen beginnen om een paar stukken neer te zetten om zo een eindspel na te bouwen. En dat dan zonder dat ik eerst de begin-state te moeten ingeven in de computer. (en voor het Harry Potter-gehalte, natuurlijk). En dat is lastig in dit geval.. Ook moet er rekening gehouden worden met dat stukken vaak niet exact in het midden van het vakje worden gezet, zeker niet in spellen met tijdsdruk. Vandaar dat RFID mij ideaal leek (maar dat is het zo te lezen waarschijnlijk niet).
out-of-the-box:
Camera onder een glasplaat en dan @SA007's idee van een kleur (sticker) onderop de stukken?
Oh, creatief! Gaaf! Ik heb toevallig nog een glazen schaakbord liggen. De witte vlakken zijn dan transparant, en de zwarte vlakken zijn mat glas. Een gekleurde sticker (of LEDje op het stuk), komt hier wel doorheen, denk ik.
Het liefst zou ik werken met een houten bord, voor het echte authentieke gevoel, maar deze gaat zeker op de lijst.
De RC522 werkt over een SPI bus, de MOSI, MISO, SCK en RESET pinnen kunnen gedeeld worden over alle sensoren. Alleen voor de SS (slave/chip select) pin zal je een lijn per sensor nodig hebben. Ik zou daar enkele I2C IO expanders voor gebruiken. Bijvoorbeeld de 4 x de MCP23016 of 8x de MCP23008, deze heeft 16 outputs en heeft 3 configureerbare adres pins zodat je er 8 op één I2C bus kan gebruiken. Je gebruikt dan deze IO expanders om steeds één chip select tegelijk hoog te maken zodat je steeds met MOSI, MISO, SCK tegen een chip tegelijk praat.
Voor wat betreft storing zou ik even uitzoeken of je de signaal sterkte van de sensors kan bijstellen. Desnoods kan je misschien met afscherming tussen de sensoren storing voorkomen.
Hier ga ik even rustig voor moeten zitten, dus vergeef me als ik iets verkeerd begrijp, haha :) .
Dit is wel exact iets waar ik naar zou zoeken. Ik ga me eens verdiepen in deze technieken; weet jij of het mogelijk zou zijn om de I2C bus met 8 sensoren te besturen met een Raspberry Pi of een vergelijkbaar 10-euro-achtige machine?

  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 26-09 09:22
Vrijwel al dit soort bordjes hebben de mogelijkheid om een I2C bus en een SPI bus aan te sturen. Dit zijn de meest basis bus technologieën die gebruikt worden voor bijna alle communicatie tussen chips op een printplaat. Dus elke Raspberri Pi, Arduino en vrijwel elke microcontroller zal I2C en SPI ondersteunen. Zolang de verschillende I2C sensoren allemaal een eigen adres hebben kan je er in theorie tot 128 aansluiten. De praktijk is wat lastiger, Het adres moet via hardware toegewezen worden of staat vast in de chip. Vaak kan je aan één soort chip 2 tot 8 verschillende adressen toewijzen door pinnen aan de ground of + (VDD) te hangen. De hoeveelheid sensoren hangt dus vooral af van hoeveel adressen je toe kan wijzen. En anders moet je met bus switches gaan werken maar dat is nog weer een stapje ingewikkelder.

[Voor 45% gewijzigd door jmzeeman op 22-09-2022 11:43]


  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Gaaf, dan ga ik er eens een paar bestellen en kijken of ik een werkend (2x2 of 3x3) prototype kan maken. Zijn er specifieke merken/winkels die je aanraadt?

  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 26-09 09:22
Niet echt, ik bestel de meest dingen die ik nodig heb via mijn werk bij een groothandel. De MCP23016 IO expander is een vrij courante chip die ook in DIP vorm te bestellen is waardoor je hem zelf makkelijk in een breadboard kan prikken.
Met een raspberry pi, één MCP23016 en negen RC522 zou je dan prima een 3x3 prototype moeten kunnen maken.

  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Met een raspberry pi, één MCP23016 en negen RC522 zou je dan prima een 3x3 prototype moeten kunnen maken.
Nog een vraagje, voor ik bestel: ik lees op veel plekken (Waaronder hier: https://www.teachmemicro.com/arduino-rfid-rc522-tutorial/ ) dat de RC522 bij het instellen op I2C altijd hetzelfde adres (0x3C) krijgt. Gaat dit een probleem opleveren bij gebruik met de MCP23016?

  • dirkus7
  • Registratie: Januari 2014
  • Laatst online: 09:52
Je moet hem via SPI gebruiken, dan heb je geen adressen nodig. Je moet dan de slave select pinnen (SS) aansluiten op de IO expanders.

  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 26-09 09:22
De bedoeling is ook niet om de RC522 via I2C aan te sluiten. Je gebruikt daar nog steeds SPI voor. De SPI bus hang je gewoon direct aan alle RC522s. Voor SPI heb je alleen ook een slave select of chip select pin nodig die individueel per chip is aan te sturen. Om daar niet 64 gpio's van je Raspberry pi voor nodig te hebben gebruik je de IO expander. Daarmee selecteer je over I2C met welke RC522 je via SPI wil communiceren.

Zoiets:

code:
1
2
3
4
5
6
7
8
 ____                              _______     _______     _______ 
|RPi |----SPI(MOSI)---------------|       |---|       |---|       |
|    |----SPI(MISO)---------------| RC522 |---| RC522 |---| RC522 |
|    |----SPI(CLK)----------------|_______|---|_______|---|_______|
|    |            ________          |             |           |
|    |---I2C-----|MCP23016|-----SS--/             |           |
|____|           |        |-----SS----------------/           |
                 |________|-----SS----------------------------/
dirkus7 schreef op donderdag 22 september 2022 @ 15:46:
Je moet hem via SPI gebruiken, dan heb je geen adressen nodig. Je moet dan de slave select pinnen (SS) aansluiten op de IO expanders.
Dit dus idd.

[Voor 11% gewijzigd door jmzeeman op 22-09-2022 16:30]


  • TimDJ
  • Registratie: Februari 2002
  • Laatst online: 09:37
Qua rfid ga je sowieso storing krijgen. ik heb ooit een project gedaan waar je via tag mocht kiezen uit een aantal keuzes. Hoe we het toen hebben opgelost is om ze zo snel mogelijk om en om te wisselen zodat tussen gelegen rfid readers even uit stonden.

Freelance Drupal developer


  • DexterDee
  • Registratie: November 2004
  • Laatst online: 26-09 09:55

DexterDee

I doubt, therefore I might be

Even out-of-the-box denkend, wat als je nu 64 magneetveld sensors gebruikt en in de schaakstukken verschillende diameters en aantallen neodymium magneetjes stopt. Daar kun je denk ik wel 32 variaties van maken? Een magneetveld lijkt me makkelijker te controleren dan RFID interferentie.

Klik hier om mij een DM te sturen • 3245 WP op ZW


  • TimDJ
  • Registratie: Februari 2002
  • Laatst online: 09:37
Of een half transparante plaat gebruiken als schaakbord en aan de onderkant van schaakstukken een kleine (QR?) code plaatsen en deze met een webcam van onderen inlezen. Je zou een soort schaaktafel kunnen maken.

Freelance Drupal developer


  • sypie
  • Registratie: Oktober 2000
  • Niet online
DexterDee schreef op donderdag 22 september 2022 @ 16:10:
Even out-of-the-box denkend, wat als je nu 64 magneetveld sensors gebruikt en in de schaakstukken verschillende diameters en aantallen neodymium magneetjes stopt.
Of... Simpelweg met reedcontacten. Daar zijn die dingen toch voor gemaakt?

Het enige nadeel: je kunt de schaakstukken niet onderscheiden van elkaar...

[Voor 0% gewijzigd door sypie op 23-09-2022 06:35. Reden: Tikfout verbeterd.]


  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 09:16

memphis

48k was toen meer dan genoeg.

Jaaap schreef op donderdag 22 september 2022 @ 10:05:
out-of-the-box:
Camera onder een glasplaat en dan @SA007's idee van een kleur (sticker) onderop de stukken?
Is wel lastig met vlakverdeling, waar je het glas zwart maakt zal de camera niet veel zien ;-)
QR codes onder de stukken.

Er zijn mensen die mij een GOD vinden


  • RobIII
  • Registratie: December 2001
  • Laatst online: 23:35

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

sypie schreef op donderdag 22 september 2022 @ 21:56:
Of... Simpelweg met readcontacten.
offtopic:
Reed
;)
iFre4ked schreef op donderdag 22 september 2022 @ 09:06:
Ik denk dat ik er 2 ga bestellen (ze zijn toch maar 5 euro per stuk) en eens ga kijken of ik storing krijg als ik ze zo ver uit elkaar laat werken.
Je kunt wel testen met 2, maar dat is natuurlijk een hele andere situatie dan wanneer je er 8 om elk vakje heen hebt en 64 die allemaal door elkaar staan te schreeuwen. Multiplexen is dan key, maar ik verwacht dat je dan behoorlijke latencies krijgt. Ik zeg niet dat 't onmogelijk is, maar ik zou 't in een andere hoek zoeken. Er zijn talloze 'digitale' schaakborden. Hoe doen die 't (even aangenomen dat ze stukken herkennen, en niet alleen maar of een positie bezet is of niet).

Wat nou als je elk vakje opdeelt in 2 (geleidende) delen, met in 't midden een hele fijne naad en tussen de vlakken in een wat grotere naad. Hell, je zou een schaakbord van een PCB zélf kunnen maken met zwart masker. Maak ze alle 64 identiek. Dan kun je met het afplakken van de helft van de vlakken de andere helft een 'brushed look' ofzo geven door 't op te schuren en heb je daarmee de 'zwart'/'wit' vlakken. En elk schaakstuk geef je een (andere) weerstand intern en die uiteindes maak je met een mooi 'loopvlakje' aan beide kanten van een schaakstuk. Zet er een magneet in zodat de stukken altijd noord/zuid staan et voila. :P

Zoiets:

Vergeef me even mijn paint skillz :+

[Voor 41% gewijzigd door RobIII op 22-09-2022 23:18]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • FuaZe
  • Registratie: April 2014
  • Laatst online: 08:00
In theorie begint elk schaakspel met de stukken op hetzelfde startpunt en kun je door het spel heen bijhouden welk stuk verplaatst wordt?
Durf niet te zeggen hoe stabiel dat blijft werken, maar maakt de sensoren een stuk makkelijker.

Voor unieke identificatie:

- Camera/beeld, maar dat past niet echt 'in' het schaakbord.

- Kleur sensoren is nog best een goed idee, je hebt 6 unieke stukken van twee verschillende teams, dus 12 kleuren?

- Als de schaakstukken een IR emitter met een bepaalde frequentie ingebouwd hebben, zou je voor elk vakje alleen een IR ontvanger nodig hebben.

- En anders, ja contactjes op het bord en magneetjes om ze juist uit te lijnen op elk vakje.

Edit:
Deze is ook wel leuk je kunt een "LED Tafel" maken met ingebouwde magneet (of IR sensoren).

Dan kun je d'r ook pong op spelen met een (magnetisch) blokje.

[Voor 16% gewijzigd door FuaZe op 22-09-2022 23:15]


  • RobIII
  • Registratie: December 2001
  • Laatst online: 23:35

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

FuaZe schreef op donderdag 22 september 2022 @ 23:08:
In theorie begint elk schaakspel met de stukken op hetzelfde startpunt en kun je door het spel heen bijhouden welk stuk verplaatst wordt?
Ik begrijp dat TS en willekeurige startopstelling wil maken:
iFre4ked schreef op donderdag 22 september 2022 @ 10:54:
Het liefste zou ik vanuit een leeg bord kunnen beginnen om een paar stukken neer te zetten om zo een eindspel na te bouwen. En dat dan zonder dat ik eerst de begin-state te moeten ingeven in de computer. (en voor het Harry Potter-gehalte, natuurlijk).

[Voor 37% gewijzigd door RobIII op 22-09-2022 23:14]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • FuaZe
  • Registratie: April 2014
  • Laatst online: 08:00
RobIII schreef op donderdag 22 september 2022 @ 23:13:
[...]

Ik begrijp dat TS en willekeurige startopstelling wil maken:

[...]
Hmm, fair; alleen 'items' detecteren is wel een stuk sneller, makkelijker en goedkoper.

En dan zou je bijvoorbeeld ook pong kunnen spelen met bierviltjes op en neer schuiven (als d'r ook in elk vakje een lesje zit), denk dat TS die optie niet overwogen heeft, maar misschien wel interessant vindt.

Als TS niet veel ervaring heeft met dit soort projecten, zal dammen wellicht ook een beter starter project zijn?

[Voor 26% gewijzigd door FuaZe op 22-09-2022 23:27]


  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 09:16

memphis

48k was toen meer dan genoeg.

sypie schreef op donderdag 22 september 2022 @ 21:56:
[...]

Of... Simpelweg met reedcontacten. Daar zijn die dingen toch voor gemaakt?

Het enige nadeel: je kunt de schaakstukken niet onderscheiden van elkaar...
Is het?
Bij de start weet je waar je schaakstukken staan dus uiteindelijk kan je volgen waar iets verdwijnt en waar een nieuwe positie opkomt, dus je kunt je schaakstukken volgen. En het is ook maar net hoe intelligent je de software maakt kan je ook de stap die erbij gemaakt wordt controleren of het voor het stuk klopt/mag..

Er zijn mensen die mij een GOD vinden


  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
Als TS niet veel ervaring heeft met dit soort projecten, zal dammen wellicht ook een beter starter project zijn?
Inderdaad niet veel ervaring, maar de magie zit hem voor mij in het schaakspel, daar draait het natuurlijk allemaal om. :)
Je kunt wel testen met 2, maar dat is natuurlijk een hele andere situatie dan wanneer je er 8 om elk vakje heen hebt en 64 die allemaal door elkaar staan te schreeuwen. Multiplexen is dan key, maar ik verwacht dat je dan behoorlijke latencies krijgt.
Ik ben inderdaad bang dat ik de storingen heb onderschat bij het fantaseren over het project. Toch laat ik me niet uit het veld slaan: Ik vind hier: https://forum.arduino.cc/...tag-read-tag-value/652553 dat een scanpoging max 35ms duurt.
Stel: ik zou het bord verdelen in vier vlakken van 4x4, en ik kan er voor zorgen dat deze simultaan op dezelfde volgorde worden gescand. Dan is de afstand tussen elke actieve scanner die aan staat steeds 3 speelvlakken, oftewel 12 tot 15 centimeter. Het scannen van een volledig bord zou dan een halve seconde duren, dat is een latency waar ik zeker mee kan leven.
Wat nou als je elk vakje opdeelt in 2 (geleidende) delen, met in 't midden een hele fijne naad en tussen de vlakken in een wat grotere naad. Hell, je zou een schaakbord van een PCB zélf kunnen maken met zwart masker. Maak ze alle 64 identiek. Dan kun je met het afplakken van de helft van de vlakken de andere helft een 'brushed look' ofzo geven door 't op te schuren en heb je daarmee de 'zwart'/'wit' vlakken. En elk schaakstuk geef je een (andere) weerstand intern en die uiteindes maak je met een mooi 'loopvlakje' aan beide kanten van een schaakstuk. Zet er een magneet in zodat de stukken altijd noord/zuid staan et voila. :P
Dit is ook een mooie invalshoek. Eventueel kan ik gaan zoeken naar materiaal wat op hout lijkt, maar het niet is, en stroom geleidt.. Hmm..

  • iFre4ked
  • Registratie: Juli 2017
  • Laatst online: 24-09 12:46
jmzeeman schreef op donderdag 22 september 2022 @ 15:55:
De bedoeling is ook niet om de RC522 via I2C aan te sluiten. Je gebruikt daar nog steeds SPI voor. De SPI bus hang je gewoon direct aan alle RC522s. Voor SPI heb je alleen ook een slave select of chip select pin nodig die individueel per chip is aan te sturen. Om daar niet 64 gpio's van je Raspberry pi voor nodig te hebben gebruik je de IO expander. Daarmee selecteer je over I2C met welke RC522 je via SPI wil communiceren.

Zoiets:

code:
1
2
3
4
5
6
7
8
 ____                              _______     _______     _______ 
|RPi |----SPI(MOSI)---------------|       |---|       |---|       |
|    |----SPI(MISO)---------------| RC522 |---| RC522 |---| RC522 |
|    |----SPI(CLK)----------------|_______|---|_______|---|_______|
|    |            ________          |             |           |
|    |---I2C-----|MCP23016|-----SS--/             |           |
|____|           |        |-----SS----------------/           |
                 |________|-----SS----------------------------/


[...]

Dit dus idd.
Dit maakt het duidelijk. Bedankt, dit helpt veel!

  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 26-09 09:22
FuaZe schreef op donderdag 22 september 2022 @ 23:08:
[...]
- Kleur sensoren is nog best een goed idee, je hebt 6 unieke stukken van twee verschillende teams, dus 12 kleuren?
[...]
Van alle alternatieve ideeën vind ik dit nog de beste, deze lijkt me heel goed te doen met een glazen bord en net als bij rfid hoef je de stukken niet significant aan te passen.

De andere met contactjes en magneten klinken mischien simpeler maar zijn waarschijnlijk in de praktijk lastig echt lekker werkend te krijgen. Alles moet perfect recht zijn, goed uitlijnen en wat stof tussen de contactjes kan al gezeur geven. Je hebt al snel wat lastiger te maken mechanische oplossingen nodig om dat te omzeilen.

Het mooie van de RFID oplossing ten opzichte van de andere oplossingen is dat het altijd duidelijk is of het werkt of niet werkt. Misschien ziet je bord een keer een stuk niet meteen maar hij zal nooit zeggen dat een paard een koningin is. Misschien is het mijn achetergrond in medische hulpmiddelen maar ik vind dat een heel fijne eigenschap.

Uiteindelijk is het voor een hobby project vooral belangrijk wat je leuk vind om te doen en met welke technieken je bezig wil zijn.

Ik zag trouwens bij aliexpress RC522 bordjes voor ongeveer 1 euro. Dan wordt het prijs technisch ook weer een stukje leuker.
TimDJ schreef op donderdag 22 september 2022 @ 16:00:
Qua rfid ga je sowieso storing krijgen. ik heb ooit een project gedaan waar je via tag mocht kiezen uit een aantal keuzes. Hoe we het toen hebben opgelost is om ze zo snel mogelijk om en om te wisselen zodat tussen gelegen rfid readers even uit stonden.
Met dit idee lijkt me het ook realistisch om storing te voorkomen en snel genoeg een respons te krijgen.

  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 09:16

memphis

48k was toen meer dan genoeg.

Zijn die RFID lezers niet met een I2C bus te krijgen, dan kan je max 128 apparaten op 1 bus hangen.

Er zijn mensen die mij een GOD vinden

Pagina: 1



Google Pixel 7 Sony WH-1000XM5 Apple iPhone 14 Samsung Galaxy Watch5, 44mm Sonic Frontiers Samsung Galaxy Z Fold4 Insta360 X3 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2022 Hosting door True

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee