[問題] arduino 取樣問題

作者: hcf456 (O-H)   2015-05-21 22:14:17
大家好~最近再研究利用arduino做類比取樣的問題
使用訊號產生器做輸入訊號~輸入正弦波
在低頻的時候 可以把數值一個一個透過serial顯示出來
並且從取樣的數值可以大概猜測出這是一個正弦波來
但是來到1k Hz 之後就量測不出完整的波形了
有沒有先進 可以稍微講一下改善的方向? 謝謝
我的方法一開始是利用 DELAY(1) 每一毫秒去做取樣 這個在10HZ的時候
波形都還看得清楚~ 但是來到100HZ 之後就沒法將正弦波的每段訊號擷取
再後來 為了提高擷取頻率
所以使用了delayMicroseconds(3) 每三微秒 取擷取訊號~3微秒聽說是極限
可似乎狀況未見改善,所以後來索性就直接把delay拿掉 直接不斷取樣
可獲得的訊號還是一樣會有誤差的問題,所以才想說上來問問
作者: MasterChang (我愛ASM)   2015-05-21 22:21:00
先說你取樣頻率是多少吧?
作者: johnpage (johnpage)   2015-05-22 05:57:00
Delay的時間不是取樣頻率1K hz 需要 0.5 ms 的取樣率
作者: hongsiangfu   2015-05-23 15:48:00
arduino使用的atmega328or2560,一個取樣花13cycles加上analog.read的做法,從AD request到轉換完畢系統會呈現idle狀態,更耗費時間。另外就是用USART去print資料也有速限,所以...上述有誤之處,請其他前輩更正,感謝。
作者: ohm22k (紅紅紅)   2015-05-24 00:48:00
這直覺可以分兩個部分去看一是你的ADC取樣的時間最少要大於訊號變化的2倍(奈奎斯特)二是你用UART傳出來的速度問題這邊要看你的serial傳輸速度多快且看你一次傳多少筆數據去顯示
作者: escorpion (pavone先生)   2015-06-20 14:32:00
Serial.print會大大增加運算時間,建議把它拿掉用示波器看

Links booklink

Contact Us: admin [ a t ] ucptt.com