I am working on a circuit that controls a solenoid through the use of an Arduino. One question I had was if there was any advantage to using a PNP transistor over an NPN transistor? From class, I know that PNP's are usually better for pulling devices high and NPNs are better for pulling devices low, although I am unsure why this is the case.
For reference, I want to use an Arduino to control the transistor that activates the solenoid. So when the Arduino outputs a HIGH signal, the solenoid should activate, and at LOW signal, it shouldn't do anything. After searching around online, it seems that a general schematic for that would look like this (asides from the BJT):
It seems like an NPN would be the best choice for this scenario, but I don't really understand how connecting the solenoid to ground would activate it? It seems to logically make more sense to have the solenoid connected to ground all the time, then when it's time to activate the solenoid, simply pull up the solenoid using a PNP. However due to the inverse behavior of a PNP to an NPN, it would take a little more work then just having the Arduino output a HIGH signal.