I see how it works, but if you're comparing it to the circuit from bobc, be aware that it's backwards. In nop's diagram, the Arduino is on the left labelled MPU, and the thermistor is on the right labelled "Therm". In bobc's diagram, the thermistor input is on the left, and the Arduino input is on the right labelled "Therm3"
With nop's design, if the thermistor input goes to the +V rail , you will get current flowing through the 4k7 to the 3.3v rail , which doesn't kill anything as the resistor has (+V - 3.3v) across it, so the appropriate amount of current flows through the 4k7 for that voltage. The current then passes through the 22R (which limits any current to a reasonable max value), plus the PTC (which, once it actually trips, reduces it even further).
After that, you have two diodes. One reversed biased (in parallel with the cap), and one forward biased (to the zener). The reverse biased diode acts to protect if someone connects a -ve voltage to the thermistor somehow. The 1k/3.3V zener produces a nice stable 3.3v rail (independent of the the Arduino regulator, which in turn is less likely to be fried). If the voltage gets over 3.3v + the voltage bias of the forward biased diode, it conducts and effectively clamps the rail at that combined voltage. The fact that the forward biased diode has to conduct means that the zener's inbuilt current passing at voltages lower than its trip voltage is effectively nullified.
The cap performs the same function as in the traditional circuit, which is just to smooth out the input voltage. By placing the cap after the two diodes, the voltage that appears across the cap should be limited. This stops any stray voltages on the thermistor input charging the cap up, which then would discharge into the Arduino, even if the voltage is removed from the thermistor input.
In normal operation, the voltage going through the voltage divider created by the 4.7k resistor and the thermistor is always less than 3.3v. The 22R and PTC aren't part of the voltage divider, so the voltage at the voltage divider should be pretty much unchanged at the Arduino input. How much it will actually change by would be determined by how the Arduino ADC is internally wired.
It might be worth dropping the zener to a slightly lower voltage (eg: 3v), due to the added difference caused by the forward biased diode.
Note: IMO you could probably use one zener/resistor for all the inputs, which reduces the component count slightly. If someone shorts all their thermistors to the hot end +V line at once, then they're probably well out of the league of our ability to offer protection.
PS: Regarding the change of the voltage divider from 4.7k: IMO 560R is too low a resistance, while 1k is reasonable. Thermistor tables for 1k are already in firmwares like Marlin, so it makes sense to use the same value. From memory, 1k also worked out to produce more reliable results from 180 up to 260 Deg C, while 4.7k seemed to have a nice sweet spot from 50-150 (which is perfect for a heated bed). Can't remember whose blog post it was, though I suspect it may have been nophead. ;)
PPS: As mentioned in my last post, I'm not really happy with PTC's either as, like nop says, they can do all sorts of weird things, including catch fire if you try and pull too much current through them. I've seen this first hand about 3 times now, which is about 4 times more than I ever wanted to.
With nop's design, if the thermistor input goes to the +V rail , you will get current flowing through the 4k7 to the 3.3v rail , which doesn't kill anything as the resistor has (+V - 3.3v) across it, so the appropriate amount of current flows through the 4k7 for that voltage. The current then passes through the 22R (which limits any current to a reasonable max value), plus the PTC (which, once it actually trips, reduces it even further).
After that, you have two diodes. One reversed biased (in parallel with the cap), and one forward biased (to the zener). The reverse biased diode acts to protect if someone connects a -ve voltage to the thermistor somehow. The 1k/3.3V zener produces a nice stable 3.3v rail (independent of the the Arduino regulator, which in turn is less likely to be fried). If the voltage gets over 3.3v + the voltage bias of the forward biased diode, it conducts and effectively clamps the rail at that combined voltage. The fact that the forward biased diode has to conduct means that the zener's inbuilt current passing at voltages lower than its trip voltage is effectively nullified.
The cap performs the same function as in the traditional circuit, which is just to smooth out the input voltage. By placing the cap after the two diodes, the voltage that appears across the cap should be limited. This stops any stray voltages on the thermistor input charging the cap up, which then would discharge into the Arduino, even if the voltage is removed from the thermistor input.
In normal operation, the voltage going through the voltage divider created by the 4.7k resistor and the thermistor is always less than 3.3v. The 22R and PTC aren't part of the voltage divider, so the voltage at the voltage divider should be pretty much unchanged at the Arduino input. How much it will actually change by would be determined by how the Arduino ADC is internally wired.
It might be worth dropping the zener to a slightly lower voltage (eg: 3v), due to the added difference caused by the forward biased diode.
Note: IMO you could probably use one zener/resistor for all the inputs, which reduces the component count slightly. If someone shorts all their thermistors to the hot end +V line at once, then they're probably well out of the league of our ability to offer protection.
PS: Regarding the change of the voltage divider from 4.7k: IMO 560R is too low a resistance, while 1k is reasonable. Thermistor tables for 1k are already in firmwares like Marlin, so it makes sense to use the same value. From memory, 1k also worked out to produce more reliable results from 180 up to 260 Deg C, while 4.7k seemed to have a nice sweet spot from 50-150 (which is perfect for a heated bed). Can't remember whose blog post it was, though I suspect it may have been nophead. ;)
PPS: As mentioned in my last post, I'm not really happy with PTC's either as, like nop says, they can do all sorts of weird things, including catch fire if you try and pull too much current through them. I've seen this first hand about 3 times now, which is about 4 times more than I ever wanted to.