阿杜诺
这阿杜诺是一台小型电脑。和便宜的.无论下一个假期是什么时候,您附近的孩子都应该有一个,但是您应该先把它从盒子里拿出来玩。 网上有很多支持用于硬件和开发系统。
该项目将 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。