I’m trying to a create a sensor that can detect when a car is parked above it. It’s located on the ground, outside, so I can’t use an ultrasonic sensor as dirt and other particles may intefere with the readings. I’m unsure about which magnetometers would work for this product, and the hall effect sensor I have tried did not sense any vehicles. It would also ideally be housed inside some sort of case, and used with the Arduino Uno. What sensor would be the best to detect these vehicles (generally cars)?
I’m not sure any magnetometer we carry would be able to pickup a car parked above it, but I could be wrong. (Never tried it before.) You might give it a try, but the data you get back might not be good enough to accurately detect a car.
The way this is done commercially is to use a loop of wire buried in the pavement and a alternating current runs through the loop. When a large piece of metal (a car) goes over the loop, the loops impedance changes. There’s a circuit connected to the loop that detects the change in impedance and signals that a car is present. You see these all the time in parking garages and sometimes at intersections. Cameras that recognize what a car looks like are slowly taking over inductive loops, but they are still used quite a bit.
It might be tough to do an inductive loop on your own and if ultrasonic isn’t going to work, you might want to try something simpler like a beam of light and a light detector. A post with a small laser mounted on one side of the parking space with a second post on the other that has a light detector might work. With no car present, the laser will shine on the light detector. When a car is parked, it blocks the beam and no light is detected.