2017-02-16 88 views
2

我无法从字段中访问数据,其中包含错误值为非数字(NaN)的值数组。这些值在发送前存储在缓冲区中,因为网站只能在15分钟内访问一次。当使用缓冲区值(存储值)时,是否必须遵循任何特定方法从RaspberryPi发送数据(使用Python)?如何从特定的ThingSpeak字段访问值(一个数组)?

附由ThingSpeak(CSV文件)接收的值的屏幕截图。有没有办法通过在15秒内访问一次来将多个值发送到一个字段。

Screenshot of CSV file generated with ThingSpeak

回答

0

我无法答复张贴到你的问题,但我想请教一个后续问题。您是否正在尝试使用MATLAB从ThingSpeak频道读取多个值,并且这是您看到NaN的位置?如果是这样,我可以引导你通过它。

我创建了一个ThingSpeak信道和存储4,8,15,16,23,和42在它作为[4 8 15 16 23 42]。 ThingSpeak将字符串中的数据存储为最多255个字符的字符串。

这里的信道进料:https://api.thingspeak.com/channels/228314/fields/1/last.json

在MATLAB中,使用下面的代码来获取数据返出ThingSpeak信道,并用它作为一个正常的向量。

fieldData = webread('https://api.thingspeak.com/channels/228314/fields/1/last.json') 
field1Vector = str2num(fieldData.field1) 
field1Vector(1) 

如果你的MATLAB版本没有str2num,你可以用同样的方法使用eval。

+0

我读它thingSpeak网站本身。使用你的代码,我可以在数据制作完成之后检索数据** public **。 – sanmega

+0

'fieldData = webread(的' https://api.thingspeak COM /信道/ ChannelD /馈送/ last.json结果= 1&API_KEY = [API_KEY]? ')' 修改的URL来访问私有信道。 – sanmega

+0

私人频道看起来正确。我很高兴解决方案帮助你。 – iohans