Пример #1
0
        diff_neg = +(phase_neg - phase_previous_neg + np.pi)%(2*np.pi)-np.pi

        diff = diff_pos + diff_neg/2

        data = np.roll(data, -1, axis=0)
        temperature = temperature + 0.015 * diff / (2*np.pi)
        data[-1] = temperature
        string = str(time.time())+','+str(temperature)+'\n'
        f.write(string)
        print(string)
        phase_previous_pos = phase_pos
        phase_previous_neg = phase_neg

f.close()

driver.stop_laser()
driver.close()
plt.show()


# Plot temperature

temperature_data = np.genfromtxt('temperature.csv', delimiter=',')

n_pts = len(temperature_data[:,0])

time = temperature_data[:,0]-temperature_data[0,0]
T = time[-1]
f_fft = np.arange(n_pts/2 + 1) / T

temperature = temperature_data[:,1]
Пример #2
0
driver.start_laser()

# Set laser current
current = 30  # mA
driver.set_laser_current(current)

# Modulation on DAC
amp_mod = 0.2
freq_mod = 1e6
driver.dac[1, :] = amp_mod*np.sin(2 * np.pi * freq_mod * driver.sampling.t)
driver.set_dac()

# Signal on ADC
driver.get_adc()
signal = driver.adc[0, :]

# Plot
plt.plot(driver.sampling.t, signal)
plt.show()

# Plot
psd_signal = np.abs(np.fft.fft(signal)) ** 2

plt.semilogy(1e-6 * np.fft.fftshift(driver.sampling.f_fft), np.fft.fftshift(psd_signal))
plt.xlabel('Frequency (MHz)')
plt.show()

# Disable laser
driver.stop_laser()
driver.close()