Advertisement
pogen

runWavemeter

Mar 31st, 2025
428
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.97 KB | Source Code | 0 0
  1. import sys
  2. import time
  3. from wavemeter_client import WavemeterClient
  4.  
  5. def main(interval_sec):
  6.     print(f"Polling Wavemeter every {interval_sec} seconds. Press Ctrl+C to stop.")
  7.     try:
  8.         while True:
  9.             try:
  10.                 with WavemeterClient() as wm:
  11.                     idn = wm.send_command("*IDN?", expect_response=True)
  12.                     print(f"[{time.strftime('%H:%M:%S')}] *IDN?: {idn}")
  13.                     wm.send_command("DATA:QSAVE", expect_response=False)
  14.             except Exception as e:
  15.                 print(f"Error during communication: {e}")
  16.             time.sleep(interval_sec)
  17.     except KeyboardInterrupt:
  18.         print("\nStopped by user. Exiting cleanly.")
  19.  
  20. if __name__ == "__main__":
  21.     interval = 30
  22.     if len(sys.argv) > 1:
  23.         try:
  24.             interval = int(sys.argv[1])
  25.         except ValueError:
  26.             print("Usage: python runWavemeter.py [interval_in_seconds]")
  27.             sys.exit(1)
  28.     main(interval)
  29.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement