2016年1月16日 星期六

Arduino UNO學習310.內建範例-接收類比訊號



Arduino學習310.內建範例-接收類比訊號

Arduino UNO除了數位訊號也設置了六個類比訊號A0~A5,
類比訊號透過電壓的高低變化來轉換成數據的大小,
Arduino UNO的最大讀取值為1024,輸出值為255,最大電壓為5V,
因此可換算每一刻度為5V/1024=0.0049V,
進而運用於溫度,距離,光度等等的數據運用,

打開Arduino的內建範例,,檔案>範例>Basics>AnalogReadSerial
 

會跳出另一個視窗顯示程式內容,直接上傳並開啟監控視窗
 

會看到類比腳位A0的數據,不斷的回傳顯示在監控視窗上,
若接上不同種類的傳感器,可作不同的運用,如溫度,距離,磁位,阻值等等,

再開啟另一個內建範例,,檔案>範例>Basics>ReadAnalogVoltage
 

一樣跳出另一個視窗顯示程式內容,上傳後不要急著打開監控視窗
 

Arduino還有另一個監控視窗,打開工具>serial plotter,會跳出一個視窗


因回傳時間短,數據一直傳送著,如無法順利上傳或無法開啟視窗,
可關閉Arduino重新執行或機板Reset或斷開USB線再重上,
會發現文字式監控和圖像式監控,2者是無法同時打開的,
要開一個監控視窗,另一個則需關閉,
也因為數據不斷的傳送著,所以無法很快的再接收上傳程式,

注意第一個範例和第二個範例的不同,此篇開頭已提到,Arduino輸入範圍0~1023,
而電壓為5V,因此程式中多了一段(5.0 / 1023.0),即是將訊號轉換成電壓來顯示,
因此第一個程式單純的顯示輸入數據,第二程式則是將輸入數據轉換成電壓比,
拿一條導線一端插上A0腳位,一端不插空著,並調整輸入時間,看看有啥變化,
數值會由0~1023再由1023~0,持續的偵測著,直到有感應元件的訊號輸入
 


沒有留言:

張貼留言