View Full Version : Random access to a stack of physical cards

James Newman
01-07-2012, 07:02 PM
So, I want to build a machine to manage my collector playing cards. It will need to store all the cards in such a manner that it can keep track of which cards are where, and then retrieve a card from this storage. When all finished, I would like to be able to load a 'deck file' on the pc, then have the machine pull out all the cards to make this deck. Wear and tear on the cards needs to be minimal, and not mark the cards. I can't place each card in an individual holding place due to shear amount of cards and cost of space/money. I'm not against putting them all in card protectors (which is expensive in it's own right given the amount of cards I own...)

I'm still brainstorming on how random retrieval of the cards is going to work. My current top idea is to have all cards in card protectors. This better allows me to insert a thin metal tong type gripper into a stack of these cards with a low chance of damage. Now comes the hard part, knowing which card to pull out. I can keep the current order of the cards in a database, which tells me which card in the stack... however how can I count the cards to get to card 80 or whatever?

Currently I'm looking at storing the cards in a stack that is parallel to the ground. A small actuator will keep a certain amount of pressure on the side of the stack since it will grow and shrink when adding/removing cards. The cards will sit in a 'L' type channel with the corner pointing towards the ground. This will keep the cards from working their way out due to gravity, instead they will tend to settle into the 'L'.

The mechanism for inserting and removing cards will be a servo driven actuator with a couple of hobby servos to swing the gripper into the cards, clamp and remove.

I've thought about placing every other card at 90 degrees. So one card will have it's bottom left corner in the 'L', the next will have it's bottom right, repeat. This gives me a small gap between every other card where I can better insert the gripper, and I may possibly be able to use this to count the cards as I go by. So kind of using the gap/card/gap as an encoder for the position of the actuator. I'm still now sure what I would use to actually count the gaps though... A small laser and light based prox that moves with the actuator shining inbetween each card maybe?

Does anyone have any ideas, clues, or any useful information you could share? I'm just throwing all this out there in hopes that a few more pairs of eyes and some seasoned brains may come up with something I haven't thought of.

Here are some photos showing the orientation of the cards and the gap I'm speaking of. Ofcourse there may be a much better way.

01-08-2012, 07:15 PM
You could put tabs in 1 of 8 positions on the card protectors, spacers between each group of 8 cards, and a number of groups to a drawer , similar to the way phone number/address cards were used. A gantry could then select a group of cards and a gripper selects one of 8 tabs to pull the card from the drawer.

01-09-2012, 05:22 AM
Why not use something that is already made like a CD organizer (http://www.rbreb13.com/Reviews/KDS_CD_Organizer/kds_cd_organizer.html) just use cards in them instead of CD's.

For full automation you would have to interface the existing robotics motors to a Propeller and provide a robotic arm with a suction cup device to lift out and put the cards back in the CD trays.

01-09-2012, 04:33 PM
This is a really interesting project :) I hope you get to build it. I just wanted to send some encouraging words, but while I'm here, money counters better be 100% accurate, not to mention FAST, so I'd see if you can find out how that machine works before designing your system.

If you assign each card a number, you'd need a whole lotta cards to exceed one WORD sized address, so I don't think that would be a problem. One long row would be easier mechanically than several shorter rows.

James Newman
01-21-2012, 05:56 PM
kwinn> That would indeed work, however it would require adding the tabs. These are playing cards and that would mark them.
AJ-9000> I have about 15000 of these cards currently.
Spiral_72> Thanks! I hope I build it too :p Yes, one long row would be easier... however it would be like 20 foot long or longer.

Thanks for the feedback, still working on it. Haven't thought of a better system just yet, so I may try to build a small prototype here soon.

01-21-2012, 06:14 PM
How about like a computer tape storage system/robot...

01-22-2012, 02:00 AM
Post 1

I'm not against putting them all in card protectors (which is expensive in it's own right given the amount of cards I own...) ......My current top idea is to have all cards in card protectors. This better allows me to insert a thin metal tong type gripper into a stack of these cards with a low chance of damage.

Post 2

You could put tabs in 1 of 8 positions on the card protectors, spacers between each group of 8 cards.....

You could even buy plastic sheets and make your own card protectors with tabs built in or simply put tabbed separators between each card.

James Newman
01-23-2012, 01:20 AM
bill190> Space and cost go up quite a bit if every card is separated by some divider that isn't trivial (like maybe a very thin sheet of plastic). Really the robotic parts of the system are trivial. It's the parts directly dealing with the cards themselves that gets complicated.
kwinn> Yes, tabs on the protectors themselves makes them unusable in actual play. Separators between each card would work. The only problem is what are the separators attached to? What is the cost per separator? Remember 10s of thousands of cards really makes things expensive if quick. Just premade card protectors in bulk can still cost 2 cents per one, 15000*2 cents is 300 bucks. That is possibly an acceptable cost since the protectors can stay on during play and prevent wear/tear.

Not trying to be picky, I appreciate the suggestions so far!


01-23-2012, 03:19 AM
Sorry, didn't know the protectors stayed on or the cards were played with. Not a card collector. I was visualizing the cards stored in a tray like a narrower longer version of a CD tray with spacers between groups of cards that an optical sensor could use for positioning. There would be a fixed number of cards between each spacer, and a thin cardboard tabbed card between each card. Lets assume 10 cards and 8 tabbed cards between spacers, and we want card 43.
To start an access all the cards and separators are tipped towards the front of the tray and the gantry moves to the front of the tray (home position).
Gantry moves towards rear of tray (X direction) until it reaches spacer 5, and pushes spacer 5 to tip it and cards behind it back.
Gantry moves across tabs (Y direction) to tab 3 and pushes tabbed card to tip it and cards behind it back. Card 43 is now accessible in the front of the V gap created..
Vacuum gripper gently picks up card and gantry moves to placement position.

01-24-2012, 09:13 AM
AJ-9000> I have about 15000 of these cards currently.

I didn't realize how many cards you were talking about. I have an idea for a KDS CD organizer similar type system that could access thousands of trays and here's how that might work.

In picture#4 you can see a drawing of what I call a Handling robot that is mobile because the robotics are in the front of the tray rack (in the KDS there in the back) which enables the robot to move horizontally to access multiple playing card tray racks in addition to increasing the length of the up and down travel.

Picture#1 shows the back of the KDS CD organizer with the back cover removed, picture#2 shows a tray taken out of the KDS unit and picture#3 is a drawing of proposed trays for a playing cards type system.

To pull the trays out from the front I determined it would be best to use electromagnets which also requires using two kinds of trays which also requires two kinds of electromagnets attached to a push-pull servo. The reason for two types of trays is so when an electromagnet is energized it wouldn't be pulling on adjacent trays because the trays types are alternated in the tray slots like for instance if tray slot#1 uses a tray type one, then tray slot#2 uses a tray type two and tray slot#3 uses a tray type one ect. Note as yet this idea remains untested.

To go over the basics this Handling robot is planned to run on a single track using 90 degree angle iron usually cemented to a cement floor (the wheels have a 90 degree groove in them) that runs parallel probably to a wall that the playing card tray racks will be put against. Also since nothing is preventing it from falling over it needs a guide, a straight flat piece of metal that runs between the two guide rollers on the top and that is solidly affixed to the wall.

The plastic parts might be expensive to get custom made, so I suggest getting a 3D printer to make the parts (most of the parts needed are just 3 different parts, the tray, and the left and right playing card tray racks halves) and when your sure of the design you could have them inexpensively bulk manufactured.

01-24-2012, 04:37 PM
One thing you might be able to do is put all your cards in several of those card-dealing machines. You could "pop" a card out the bottom, then "push" it back on top with a robotic arm until you get the card you want. The arm could be on a track in front of several of these. The cards would be put in at the beginning in a pre-determined order, and then the robot could count how many cards it has moved, in order to keep track of where each card is. With this setup, it would take a while to put together a full deck, but it would be accurate.

Just a thought