第1步:Arduino代碼
Arduino將數(shù)據(jù)發(fā)送到與計(jì)算機(jī)的串行連接,就像Arduino將數(shù)據(jù)發(fā)送到串行監(jiān)視器一樣。例如,您可以使用以下代碼。 Arduino對(duì)A0模擬引腳采取措施。這非常簡(jiǎn)單!
您可以在我的網(wǎng)站上下載 Arduino代碼。
第2步:選擇正確的端口
打開(kāi)Arduino IDE并嘗試上傳剛剛下載的代碼。如果有效,請(qǐng)復(fù)制窗口右下角的端口名稱(chēng)。
步驟3:Python代碼:接收數(shù)據(jù)
現(xiàn)在我們想要收到Arduino用Python(Python3)發(fā)送的數(shù)據(jù)。因此我們需要安裝Pyserial。
您可以下載我的網(wǎng)站上的Python程序
首先我們導(dǎo)入模塊序列
然后我們嘗試打開(kāi)溝通;如果不可能我們打印錯(cuò)誤。
如果你想改變波特率,它實(shí)際上可能如下,但要確保它與Arduino IDE中使用的相同!
arduino = serial.Serial(“/dev/ttyACMO”,timeout=1, baudrate=whateverbaudrateyouwant)
然后在while循環(huán)中我們收到數(shù)據(jù)。通過(guò)選擇count 《3,我們將獲得3個(gè)值。
如果您只想打印數(shù)據(jù)而不存儲(chǔ)它,您可以使用無(wú)限循環(huán):
while True:
print(str(arduino.readline())
但是你可以在第二張圖片上看到數(shù)據(jù)顯示了一些你不想看的缺陷。.
第4步:清理數(shù)據(jù)并將其存儲(chǔ)在文本文件中
我編寫(xiě)了2個(gè)函數(shù),允許我清理rawdata,然后將其寫(xiě)入文本文件。
然后我使用numpy .loadtxt,分隔符設(shè)置為‘;’和matplotlib來(lái)繪制數(shù)據(jù)。
就是這樣!我希望你找到這個(gè)Instructable interresting和有用。
下載鏈接:如前所述,我的網(wǎng)站上免費(fèi)提供所有代碼。
責(zé)任編輯:wv
-
python
+關(guān)注
關(guān)注
56文章
4812瀏覽量
85158 -
Arduino
+關(guān)注
關(guān)注
188文章
6478瀏覽量
188287
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論