Shop OBEX P1 Docs P2 Docs Learn Events
RFID inventory system rack — Parallax Forums

RFID inventory system rack

aavargas94aavargas94 Posts: 2
edited 2022-04-20 03:47 in General Discussion

Good morning,
I would like to know if you have already developed or implemented an RFID rack inventory system with the RFID Read/Write Module - Serial (28440), and RFID R/W 30 mm Round Tag (32399) and if so, how did you implement it?

I want to implement an RFID system as a rack inventory system that counts inputs and outputs, and to be able to monitor it with the RFID Read/Write Module - Serial (28440), and RFID R/W 30 mm Round Tag (32399).

The bins are entered from the back of the rack and we want to count how many bins of material are available in the rack at that moment, and the bins are removed from the front of the rack and must be subtracted from the available inventory in the rack.
For each input of material in the rack we plan to use a 28440 module and another 28440 module for each output of material.

This would be a total of 88 28440 modules in the input and 88 28440 modules in the output.
I need to know how to connect several 28440 modules for the same purpose.

Comments

  • To connect that many devices (176 in total ?) that would need a lot of IOs.

    Couple techniques to save IOs...

    1) Join the SIN and SOUT pins together with a diode, then both SIN and SOUT can share one IO pin on your microcontroller.

    2) Join all the SIN pins together so they share one IO, and have all the SOUT pins on individual IO pins of your microcontroller. So you broadcast the same commands out to every module, and only listen to the reply from the module you are interested in.

    These techniques get you down to 88-89 IOs. That's still a lot of course!
    2x Propeller 2 Edge modules (or P2 Eval boards) would get you that many IOs. Or use 1x microcontroller and an IO expander (or multiplexer) that can handle serial data.

  • @VonSzarvas said:
    To connect that many devices (176 in total ?) that would need a lot of IOs.

    Couple techniques to save IOs...

    1) Join the SIN and SOUT pins together with a diode, then both SIN and SOUT can share one IO pin on your microcontroller.

    2) Join all the SIN pins together so they share one IO, and have all the SOUT pins on individual IO pins of your microcontroller. So you broadcast the same commands out to every module, and only listen to the reply from the module you are interested in.

    These techniques get you down to 88-89 IOs. That's still a lot of course!
    2x Propeller 2 Edge modules (or P2 Eval boards) would get you that many IOs. Or use 1x microcontroller and an IO expander (or multiplexer) that can handle serial data.

    Thank you very much, I will review the documentation and try to implement it.
    I will be equally attentive to any other advice to carry out the project.

  • This may be (way?) off the mark, but it may be possible to reduce your IO down to about 14 lines. A while back, I had wanted to grab the analog values of multiple test points simultaneously, something not possible with the 4/8 channel multiplexed microchip devices (Prop 2 may have eliminated the idea of multiple single channel ADCs). The way I came up with was to drive the CS and CLK parallel to all ADCs an read the data bits from each into an n byte/word/long depending on how many channels I wanted and then rotate the array into the actual 12 bit values for each channel, effectively capturing the monitored analog values at the same point in time. It may also work for your needs, but you would need to build an interface board to go between the prop and RFID units to allow the readers to be seen in groups of n depending on how many IOs you want to use and the speed you need.

    An interface/multiplexer could reduce your IO line count. One way could use 5 lines to be decoded into a select for one of 32 groups of readers organized as 8 per group (max 256 readers), a R/W line and SIN/SOUT bit (let interface allow bidirectional use for data). If I understood correctly you will have a total of 176 readers. Each group would connect to the input and output of two tri-state buffers such as the 74HC244 for SIN and SOUT. Not sure how the @VonSzarvas diode idea would work but if it does, then it can be reduced to a single 74HC245 for each group. You could then use software to send the read command to the group and then read the result of all 8 readers back (not sure if that part can work reliably for an async read back) This may be a vapor ware idea, but if you can do the read back for the group, then it would be a matter of just iterating continuously through the groups. Or use 8 IOs to select one of up to 256 channels, a R/W line and SIN/SOUT bit and iterate sequentially among each reader.

    Not much time to play these days, but I did build the 8 ADC device and tested it. Worked as expected. Did not put it up since OBEX had changed from its original way of doing things. Curious if this would work on an async source.

  • aavargas94,

    Do you care about what you have or just how many?

    If it's only how many then just place an object detector such as IR sensor where a bin should be.
    You can scan your array periodically or on-demand.

  • ercoerco Posts: 20,256

    Marginally related, I just saw this autonomous forklift Gideon. Perfect robotic application. Website loads slowly.

    https://www.gideon.ai/solutions/trey/

  • Gee, it looks like it runs off a micro:bit - compare the logos!
    https://microbit.org/

  • frank freedmanfrank freedman Posts: 1,983
    edited 2022-05-05 04:44

    Y'know, I probably should have asked which prop you may be using. The P2 has smart pins can be set to receive serial bits and present them as a data byte or whatever number of bits you choose, up to 32. Because of this if you went with the P2, you could still make a multiplexer to allow selection of one or more of the sensors as I mentioned above, but then simply receive the serial data directly from the given sensors, no arrays or other gyrations that I described for P1. Consider using the 28140, it may be simpler. use a micro-switch in the path of the bin going in and past the bin going out so that when a bin is going across the reader, the switch can enable read of the in bin, and when a bin goes off the rack the reader at the outside of the bin can read the outgoing bin. The 28140 seems easier since there is no command to it, only an enable read (logic low) and when it sees the card, it sends the value it reads. Decode the micro switch so the Prop knows which reader is sending data. Also use one reader and micro switch only on one side like product in and a second micro switch on the product out side assuming a switch signal and no reader data means removal. If the switches on a side are decoded on a row / column manner similar to a keyboards keys, you can identify the bin, since the 28140 does not seem to have a way to identify the reader itself, only the tag data gets sent.

Sign In or Register to comment.