This is not a cheap version of the $20 commercial motion sensor chime, nor a fancy one. I built this because I have the parts on hand, I enjoy building it, and I learn how to control ultrasonic sensor, relay module and solenoid with Arduino.
My office is free to enter for almost any workers, because I keep the tools in it. We also keep mineral water by the door, so regular customers just open my door and grab the cups of water. Well, sometimes we are just too busy to get them so we tell them to take by themselves.
When I am in my room, the door is at my back. You can say it is not good in Feng Shui way, but what can I say, this is the best position for me to get a better air circulation in this non air-conditioned room. And also this way I can see the front gate through my window. So let's say it is the door that is misplaced :D
I see that this solenoid can do the knock for me, to let me know when someone is entering my office and I can take a glance at the door before it is opened. Some uninvited will just shock with the knocking sound and decide to leave because they know that the room is under surveillance. I hope so...
As I say, this is not a cheap version, but you can switch with any cheap parts to get the same result but with certain changes in wiring and code. Arduino Uno can be switched to any microprocessor you are familiar with. 12V solenoid can be switched to 5V version for simplycity, controlled directly from microprocessor without a relay module, but this is quite unsafe to the microprocessor because solenoid used to draw large current. You can simply use a 5-pin relay without the relay module. You can solder things directly and save a breadboard. This switching parts can make it cheaper than the commercial one for sure.