2017-04-20 57 views
0

300個項目在一分鐘內從生產帶流動。使用pyserial和qthread的光學測微計,我試圖每秒接收200次。但我無法按預期做到。當我保持固定時沒有問題,但當對象移動時我無法獲得正確的結果。我需要檢測通過串口快速流動的物品的寬度。你會如何爲此推薦一種方法?使用串行端口檢測快速流動的數據

+0

似乎你的'串行連接'可以傳輸更多的'數據'。計算**項目*(每個測量的字節數)**結果。 – stovfl

+0

我每次測量只能得到25個字節。串口設置:baudrate = 115200,timeout = 0.0075 – bazo

+0

這些結果是** 1,000 ** bits/sec。遠離波特率限制。但是,你有沒有數過你收到1,000比特/秒?你能否解釋一下「不能得到正確的結果」。 – stovfl

回答

0

問題:。當我減少超時時,它偶爾會中斷數據流。

請嘗試以下操作,減小到9600 :.

Open port at 「38400,8,E,1」, non blocking HW handshaking: 

>>> ser = serial.Serial('COM3', 38400, timeout=0, 
...      parity=serial.PARITY_EVEN, rtscts=1) 
>>> s = ser.read(100)  # read up to one hundred bytes 
...       # or as much is in the buffer