I run a transmitter/receiver simulation using QPSK, BPSK, and 8-PSK modulations. As far as I have noticed, the best SNR per bit results are obtained when simulating with 8-PSK modulation (and also at longer distances). For example - at a distance of 10 m (transmitter to receiver) Eb/N0 for QPSK was 22.9 and for 8-PSK it was 26. Does it depend on transmitting more bits symbols per cycle (8-PSK transmits 3 while QPSK/BPSK only 2)?
example - at a distance of 10 m (transmitter to receiver) SNR for QPSK was 22.9 and for 8-PSK it was 26. Does it depend on transmitting more bits symbols per cycle (8-PSK transmits 3 while QPSK/BPSK only 2)?
This makes no sense, physically: The attenuation through the channel is the same for all these signals, since you'd put them all through the same pulse shape to have a fair comparison.
The fact that they don't transport the same number of bits per symbol doesn't matter to physics.
Maybe you're confusing $E_b/N_0$ with SNR?
Ah yes, you were confusing $E_b/N_0$ with SNR. Now, you didn't compare fairly. In BPSK, a bit gets the energy of a full symbol. That's the transmit power times the symbol period.
Since you need to compare fairly, you need to keep both the transmit power constant (obvious) and either the bit rate constant, or the symbol rate constant:
- constant power, constant bit rate: Now your 8-PSK transmit signal has only 1/3 of the symbol rate of your BPSK signal. That means narrower bandwidth, 1/3 of BSPK. Which means 1/3 of the noise. You cheated here by reducing the bandwidth.
- constant power, constant bandwidth: your system now divides the transmit power on three times as many bits as BPSK, so $E_B/N_0$ actually is reduced, since within the same bandwidth, the same original noise occurs.
Note that in (almost) any sensible comparison of transceiver systems, you keep the $E_b/N_0$ constant and vary the bandwidth or necessary transmit power – your receiver cares less about the SNR than it cares about how likely it is that a bit gets mis-decided, which is a function of the energy per bit. This becomes slightly more obvious when one considers what interleavers and channel decoders do: they distribute noise energy that were concentrated on individual bits or symbol-bit-groups over a larger duration, and then correct these less-than-perfect bits using the knowledge from all the other bits.