kassa systeem met rfid

Arduino specifieke Software
Berichten: 4
Geregistreerd: 02 Jul 2013, 23:22

kassa systeem met rfid

Berichtdoor bob_csv » 02 Jul 2013, 23:34

Hoi,
Ik ben nieuw op dit forum dus als ik iets verkeerd doe moet u het zeggen.

ik ben bezig met een project voor bij de scouting. wij hebben nu een consumptiekaart maar we willen overstappen op rfid tags als betaalmiddel.
er is 1 persoon die de betalingen ontvangt en die je pas dan opgewaardeerd.
deze waarde moet opgeslagen worden op een sd-kaart.
nu is het de bedoeling dat als je je pas er 1 keer langs haalt dat hij je saldo laat zien op een display. dit moet hij uitlezen van de sd-kaart. als je vervolgens op een knop klikt word er 1 "punt" vanaf geschreven
als er een nieuwe kaart word herkent (deze staat dan niet op de sd kaart) dan moet hij dit aanmaken met het saldo 10.

nu is het probleem dat ik het niet voor elkaar krijg met de SD-kaart. ik wil het graag opslaan als een .csv en dan als volgt:

tag,tegoed
1234567890,10
0987654321,12
1122334455,32
6677889900,12

nu wil ik weten hoe ik de data van de sd kaart kan vergelijken met de data van de tag. en als dat dan gelijk is dat hij dan de eerst volgende waarde laat zien.
Bijvoorbeeld:
ik haal pas 0987654321 erlangs en dan moet hij gaan vergelijken met de sd kaart. daarna zou hij dan 12 moeten laten zien.

zou iemand mij hiermee op weg willen helpen?
Groetjes
Bob

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: kassa systeem met rfid

Berichtdoor nicoverduin » 03 Jul 2013, 16:15

Bob
Er zitten een paar addertjes in deze:
a) direct access is niet echt geweldig wat ik tot nu toe zie in SD file handling. Dus zou je beter de tabel in eeProm kunnen zetten. Ik weet niet over hoeveel klanten het gaat?
b) je zou dan altijd een kopie kunnen maken (functie uitschrijven) die de eeprom uitleest naar de SDkaart als een gewoon sequentieel programma. Om de tekst te krijgen zoals je wilt zou de sprintf(string, "... opmaak....\r\n", variabelen) functie kunnen gebruiken en de string daarna naar de sdkaart schrijven.
c) heb je de tag lees functie al in orde?
d) zijn 10 cijfers voor de ID noodzakelijk? Als je 9 cijfers max gebruikt, dan blijf je binnen een long veld (4 bytes) + 1 byte voor het aantal (>65000 aantal). Dan zou je in een eeprom van de uno rond de 200 klanten kwijt kunnen en 800 in de atMega.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 4
Geregistreerd: 02 Jul 2013, 23:22

Re: kassa systeem met rfid

Berichtdoor bob_csv » 03 Jul 2013, 22:51

eeprom is nieuw voor me, vandaar dat ik had gekozen voor een SD kaart.
maar zonder is nog mooier.

Het gaat om max 50 klanten denk ik.
1 cijfer minder moet wel kunnen bij de tags.

ik kan de tags uitlezen en deze komen in een string.
ik gebruik een atmega328.

Alvast bedankt!

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: kassa systeem met rfid

Berichtdoor nicoverduin » 03 Jul 2013, 22:58

Nou het voordeel van de eeprom is dat als de arduino uitvalt, alles nog wel in het eeprom staat. Ik ben wel benieuwd naar je rfid ervaringen
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 4
Geregistreerd: 02 Jul 2013, 23:22

Re: kassa systeem met rfid

Berichtdoor bob_csv » 03 Jul 2013, 23:26

heeft u misschien een voorbeeld van hoe ik een long(9 cijfers) naar de eeprom schrijf en hoe ik dat makkelijk uit kan lezen?

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: kassa systeem met rfid

Berichtdoor nicoverduin » 03 Jul 2013, 23:32

Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: kassa systeem met rfid

Berichtdoor nicoverduin » 03 Jul 2013, 23:41

Als je maar 50 klantjes hebt zou je zelfs een kopie kunnen maken in ram geheugen (50x5 = 250 bytes). En alleen naar eeProm schrijven als er wat muteert of een keer per zoveel tijd. EEProm is gelimiteerd tot iets van 10.000 lees/schrijf acties. Dus zou je kunnen overwegen om als je ze inleest vanaf de SD kaar, ze gelijk te kopieren naar RAM en EEPROM. Dan werk je gewoon met de ram versie en kopieer je 1 x per uur oid alles naar de EEPROM. Dan heb je in ieder geval je backup tot een uur terug. Als je aan het einde van de avond weer naar de SD wil schrijven (om zo alles in de PC te laden) doe je een laatste EEPROM update en schrijf je naar de PC. Daarna zou je de Arduino gewoon weer kunnen herprogrammeren. De data staat immers op de SD.
Komt er nu een nieuwe klant bij, dan kun je de SD weer bijwerken.. naar de Arduino etc etc.
Als je de andere zoekacties (de TAG in de tabel) in RAM houdt, minimaliseer je het EEPROM geheugen verbruik. En je kan dan de sorteer functie aan de PC overlaten wat weer het zoeken versnelt.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 4
Geregistreerd: 02 Jul 2013, 23:22

Re: kassa systeem met rfid

Berichtdoor bob_csv » 04 Jul 2013, 01:48

ik heb de code van het RFID lezen veranderd.
er komt nu een waarde uit tussen ongeveer 500 en 700 (tot nu toe kreeg elke pas een uniek nummer)
ik bestel meer pasjes dan dat ik nodig heb dus als er een dubbele tussen zit houd ik die apart en dan kijk ik wel hoe ver ik kom.

ik ga morgen verder. dan vertel ik verder wat ik heb!

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Google [Bot], RussellAlets en 20 gasten