Email question from a student Part 2
Okay, here's one method for determining if the sensors are returning all True values or all False value or a mixture of values.... This means in my previous post that we're talking about a condition of (1 - 1 - 1) to get the Switch block to execute a True path - any other combination will have the Switch block execute the False path.
One of the easiest ways to do this is to use a Logic block configured to do an AND operation. Read over the Logic block's help files to learn about the other options (OR, XOR, NOT), but for now all you need to know is that the Logic block will take two logic values (one in data plug A and one in data plug B). The AND operation simply looks at the two values and returns a logic value of its own (coming out of the last data plug, called Result). If both values (A and B) are True, then the Result is True. If both values (A and B) are False then the Result is False. If one or the other (A or B) is False, then Result is False. So, the only way you'll get a Result value of True from a Logic block is if both A and B data plugs have a True value coming in.
Next, we take that Result from the first Logic block and run it a second Logic block (data plug B in my picture) configured to do an AND operation. I take the final sensor's logic value (the Touch sensor in my picture) and connect that sensor's Yes/No data plug to data plug B on the second Logic block. I then run a wire out of the second Logic block's Result data plug into a Switch block's data plug.
See if you can figure out what happens now that you understand that both Logic blocks are performing AND operations on the A and B values sent to them. By using just two Logic blocks, you can check to see if all 3 sensors are reporting True or all 3 are reporting False. All it takes is one sensor to report a False and the Switch block will receive a False signal. Follow along and test this little bit of programming and you'll figure it out.