阿杜諾
這阿杜諾是一台小型電腦。和便宜的.無論下一個假期是什麼時候,您附近的孩子都應該有一個,但是您應該先把它從盒子裡拿出來玩。 網上有很多支持用於硬件和開發系統。
該項目將 Arduino 連接到 JMP 並進行一些實時數據記錄。你需要Arduino 集成開發環境下載;這是保存該程序的 IDE 的圖片。

這個小程序做了兩件事:打開電源時初始化串行通信,然後在其剩餘的生命週期中讀取模擬信號並將值打印到串行端口。
電路
該項目的傳感器是CdS光敏電阻.這是麵包板電路的圖片。

光敏電阻(帶波浪線的圓形,中間後方)和旁邊的 43K 歐姆電阻(黃-橙-橙-金)在黑線(接地)和紅線(5 伏)電源之間形成分壓器.分壓器中心抽頭上的白線連接到藍色 Arduino UNO 板上的 A0。A0 是上面程序正在讀取的模擬輸入。當光敏電阻處於黑暗狀態時,其電阻非常高(與 43K 歐姆電阻相比,白線的電壓將接近地(0 伏)。明亮時,光敏電阻的阻值很低,白線將接近5伏。
您使用 USB 電纜作為串行端口將程序加載到 Arduino 中。它可能是 com3 或 com4 或者其他選擇。JMP 將監聽相同的 USB 串行連接。根據供應商的不同,Arduino 可能隨附一條很酷的藍色 USB 數據線。

JSL
製作一個包含兩列的數據表;時間列將填充自捕獲開始以來的秒數。sense 列將填充來自 Arduino 的數據。
dt = New Table( "capture",
Add Rows( 0 ),
New Column( "time", Numeric, Continuous, Format( ":day:hr:m:s", 21, 3 ) ),
New Column( "sense", Numeric( 2 ) ) // the analog sensor is 0..1023
);
記住開始時間
start = Tick Seconds();
打開 JMP 的數據饋送,設置參數,並提供一個腳本來處理來自 Arduino 的每一行數據。 COM3 可能不是您的 Arduino 所連接的。
feed = Open Datafeed(
Connect( Port( "com3" ), Baud rate( 9600 ), Parity( even ), DataBits( 7 ) ),
Set Script(
x = feed << getLine;
dt << addrows( 1 );
dt:time = Tick Seconds() - start;
dt:sense = Num( x );
)
);
運行控製圖(或圖形生成器腳本)以查看正在運行的數據收集。
dt << Control Chart( Sample Size( 1 ), KSigma( 3 ), Chart Col( :sense, Run Chart() ) );
行動
在這個 5 分鐘的剪輯中,您將看到控製圖隨著數據到達而更新;數據值根據到達傳感器的光而變化。您還會看到軸滾動以顯示更多數據,並註意到在 JMP 趕上數據時響應時間滯後。沒有握手;數據很可能丟失。Arduino 代碼中的 200 毫秒暫停(上述方式)旨在為 JMP 提供時間來處理數據和更新顯示。
阿杜諾 - YouTube

謝謝克雷奇。 在 JMP 15 中,我遇到了一個錯誤。 “無法為‘時間’列設置值,因為行號 (0) 無效。”傳感器在 Arduino IDE 中運行,將值發送到 Com7。
謝謝。有很多傳感器的可能性; Arduino 數字輸入也可以與物理開關一起使用。我也喜歡圓周率; JMP(Windows 或 Mac)可以使用帶有 PI 的套接字,這可能使遠程連接比 Arduino 更容易。
我正在做一些非常相似的事情來測量距離。 我正在使用連接到 Arduino Uno 的超聲波 ping 傳感器。 效果很好,但它需要一台裝有 JMP 的計算機。 對於其他項目,我將數據寫入 SD 卡盾上的文件,但實時查看數據感覺很好。
如果有一種方法可以在樹莓派上運行 JMP 並將 arduino 連接到樹莓派,那將會很有用。 使用樹莓派,您可以直接連接到樹莓派的 GPIO 而不需要 arduino。