User Tools

Site Tools


2019_cargo_present_sensor

This is an old revision of the document!


Way back on our 2018 intake, we used an infrared break beam sensor to detect power cubes. Since we have a bunch of maller sensors left over, we wondered about using them to detect the orange cargo ball in Deep Space.

The large width of our cargo intake is too long a distance for even the larger adafruit break-beam sensor to be reliable. Give up? find an expensive industrial break-beam sensor?

Proximity sensors were suggested. But we'd need a bunch of those, since the ball can be in one of several positions across the intake. As of this writing, the rollers aren't succeeding in centering the cargo. Turns out we already have a bunch of infrared proximity sensors - the break-beam sensors can be used in reflective mode!

(drawing)

The adafruit sensors open-collector output is low when the beam is broken (not received), and high when the beam is received. Experimentally, we need 4 of them, spaced every 5 inches across the intake to sense the ball in any position. We could just run 4 cables to RoboRIO digital IO inputs, and call it good.

combining 4 signals into one

But can we do better and run fewer cables? Can't we wire things together somehow, and present just one signal to the RIO? Almost. Suppose we connect the 4 signal (white) wires together. What happens? The sensor's signal output is essentialy connected to ground by a transistor that turns on like a switch when the beam is broken. If we wire the signal pins together, those switches are essentially in parallel. If any one is closed, the combined signal will be low.

We can clarify this by writing out the truth table for all combinations of two sensors. Remember that the sensor output is low (closed, grounded, 0) when the beam is not recieved, and high (open, 1) when the beam is recieved.

See https://en.wikipedia.org/wiki/Open_collector for a related explanation.

2019_cargo_present_sensor.1550808317.txt.gz · Last modified: 2019/02/21 23:05 by tell