0

1 秒あたり約 3 回の電圧読み取りを行う Python プログラムがあります。私は通常、Linux デスクトップ Lxterminal から実行します。その後、電圧対時間を Pylab で使用してプロットを作成します。ただし、電圧の読み取りを行うと一時停止することがあり、データにギャップが生じ、テストが台無しになる可能性があります。これらのギャップは 1 ~ 6 秒続きます。一時停止は、プログラムの 'print >> logfile, time(), (volts)' スクリプトが原因であることに気付きました。しかし、ログファイル スクリプトを削除してコマンド プロンプト (別名「ターミナル」、「コンソール」、「シェル」) から実行すると、これらの一時停止は発生しません。コマンド プロンプトからプログラムを実行すると、モニターに表示される長い一連の電圧が出力されますが、プロットの作成に使用するログ ファイルがありません。私の質問は、これらの電圧を端末シェルに保存し、後で Pylab でこれらのギャップのない電圧を使用する方法はありますか? 私は試した:

 list = time(), volts

しかし、次に何をすべきか、あるいは正しい方向に向かっているかどうかさえわかりません。これが私のプログラムです。

import time, sys, signal, math    
from Adafruit_ADS1x15 import ADS1x15    
from time import time, sleep    
def signal_handler(signal, frame):    
    sys.exit(0)    
signal.signal(signal.SIGINT, signal_handler)    
ADS1115 = 0x01    
adc = ADS1x15(ic=ADS1115)    

while True:    
   voltsdiff = adc.readADCDifferential01(4096, 8)    
   logfile = open('logfile.txt', 'a')    
   print >> logfile, time(), voltsdiff    
   logfile.close()    
   sleep(0.25)  
4

1 に答える 1