我有一个学校项目,涉及一个基于Arduino的传感器,需要发送传感器读数到服务器通过HTTP。传感器读数不需要加密(人们知道它们是什么是正常的),但我们确实希望(1)验证Arduino和(2)确保数据在传输过程中不被更改。
毕竟,我们不希望任何人都能把传感器读数发送到服务器,我们想知道这些读数是从哪里来的。
我已经考虑过使用JSON令牌(这些令牌非常紧凑,可以硬编码到Arduino或SD卡上)来验证Arduino,但是如果我们只是使用HTTP over TCP,那么中间人攻击仍然是一个问题。推荐使用HTTPS,但我在某个地方读到Arduino不具备HTTPS所需的马力。(这是真的吗?我还没有真
我遇到了一个奇怪的问题。我已经编写了一个应用程序,将建立一个与arduino的蓝牙SPP链接。Arduino上的蓝牙设备配置为9600波特。我可以从arduino接收数据,但似乎我收到了一些值为0或峰值较高的故障。这非常烦人,因为我确实需要图表部分的精确值,而且我知道arduino会发送良好的数据,因为我会将它发送的内容记录在一个文件中。
我希望修复或理解为什么会发生这种情况,而不是创建一个平均值或类似的东西,从而形成一个“补丁”。
谢谢你的帮助。
这张图片可以解释我的问题,arduino的数据范围在101到103之间:
下面是我创建连接和接收数据的代码:
private class C
我正在尝试将我的Arduino以太网作为客户端连接到我的ASP.NET API on Azure上。它应该将一些数据POST到API,然后将其持久化到MSSQL中。
因为我无法让它正常工作,所以我选择回到基本的EthernetClient示例,并使它们正常工作。最初,我让我的Arduino向我的网页发送一个GET请求,并将返回的HTML与响应一起返回。那里没问题。但是,如果我试图从我的Web中获取JSON数据,我就会得到错误。
首先,我认为可能是我的Web造成了一些问题,所以我找到了一个名为API的公共测试,它只是发送假JSON数据。这也不起作用。下面是我现在正在使用的代码:
#include
我们被困在这个问题上,当我使用字符串连接时,arduino不会向服务器发送数据。当我们使用localhost作为服务器时,它可以工作,但当我们使用真正的服务器时,它就不再工作了。我们需要将DO值发送到我们的服务器。
// This does not work
String data = "GET /dissolved/insertdata.php?dissolvedoxygen=" + String(disoxx) + "&temperature=" + floatToString(temp,2);
client.println(data);
//Thi