Your overlapping check for sensor1 will only happen if sensor2 overlapping check was successful.
You should add local variables s1 and s2 to fix this and to make the code easier to read:
s1=0
s2=0
Pick sensor1-> if it's overlapping obstacles-> set s1=1
Pick sensor2-> if it's overlapping obstacles-> set s2=1
after that you can do all those different checks with s1 and s2
By the way, if you add sensors and crawler to the same container, you'll not need their "parent" variable, sensors will be picked automatically for each crawler.