Is there any way to find out the total no.of mining nodes in the Bitcoin network? In case of mining pools, the devices present in each pool.
I don't know if mining pools keep stats like that, and I doubt they would be public if they did. However, you can make a reasonable estimate of the physical hardware miners in the network by plugging a few numbers into an equation.
To get the lower bounds of our estimate, take the current network hashrate and divide it by the hashrate of the "best" ASIC miner on the market rated by hashrate. This calculation represents the fewest possible number of miners on the network that would be required to produce the current hashrate, given the best technology available.
To get the upper bound of the estimate, you'd need to figure out what is the "average worst" available ASIC and it's hashrate. That is to say, you need to figure out the ASIC that, on average, has the minimum required hashrate for miners to be profitable. Since electricity and cooling costs vary from location to location, there is no single answer for this, and an average must be taken. Once you have this average hashrate, divide the current network hashrate by it. Now you have an estimate for the most number of hardware miners that are likely on the network producing the current hashrate.