I want to send acceleration data from a mobile phone sensor to ThingSpeak. Error: URL is incorrectly formed, or the requested feature is not supported in this version of ThingSpeak.
[acc, tacc] = accellog(m);
xAcc = acc(:,1);
yAcc = acc(:,2);
zAcc = acc(:,3);
InitialTime = datetime(m.InitialTimestamp,'InputFormat','dd-MMM-yyyy HH:mm:ss.SSS');
AccelTime = InitialTime + seconds(tacc);
channelID = XXXXX;
writeKey = XXXXXXXXXX;
tStamps = AccelTime;
data=[xAcc,yAcc,zAcc];
thingSpeakWrite(channelID,data,'TimeStamp',tStamps,'WriteKey',writeKey)

2 Kommentare

Vinod
Vinod am 5 Nov. 2021
What version of MATLAB are you using?
sicajios dsgvbdgs
sicajios dsgvbdgs am 5 Nov. 2021
R2021b

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Vinod
Vinod am 6 Nov. 2021

0 Stimmen

Thingspeak can only accept data sampled at 1hz or lower frequency. That is, tStamps should be at least 1s apart. My initial guess is that your accelerometer data is sampled at a much higher rate.

8 Kommentare

sicajios dsgvbdgs
sicajios dsgvbdgs am 6 Nov. 2021
When I set the sampling rate to 1 Hz, more than one value per second is recorded. How to solve this?
For the position sensor everything works. The error occurs when writing data from the other sensors.
[lat, lon, t, speed, course, alt, horizacc] = poslog(m);
InitialTime = datetime(m.InitialTimestamp,'InputFormat','dd-MMM-yyyy HH:mm:ss.SS');
PosTime = InitialTime+seconds(t);
channelID = XXXXXX;
writeKey = XXXXXXXXXXXXX;
tStamps = PosTime;
data=[lat,lon,alt,speed];
thingSpeakWrite(channelID, data,'TimeStamp',tStamps,'WriteKey',writeKey);
Christopher Stapels
Christopher Stapels am 9 Nov. 2021
Perhaps consider using retime:
newData=retime(myData,'secondly','mean');
sicajios dsgvbdgs
sicajios dsgvbdgs am 10 Nov. 2021
This function solved the problem. Thank you.
sicajios dsgvbdgs
sicajios dsgvbdgs am 11 Nov. 2021
Is it possible to record data in real time without a paid licence? I am using a loop for this, but I get the error 'requests are too frequent'.
Vinod
Vinod am 11 Nov. 2021
"Real time" means different things for different people. An RF engineer who is measuring phenomena in the Ghz or Thz range has a very different defintion of real time than does an engineer measuring heat transfer across a large body with high thermal capacity.
What is the timescale of the phenomena you are measuring? If you are looking to store raw accelerometer data at over 1Hz, you might be better served by something like the Arduino IO support package. If you are looking to do some feature detection on the edge node based on accelerometer data and send the feature changes to the cloud, when the rate of change of the features are at a longer timescale, ThingSpeak can meet your needs.
If you give more detail of your project someone can guide you towards the right solution.
sicajios dsgvbdgs
sicajios dsgvbdgs am 12 Nov. 2021
I want to update the accelerometer data on ThingSpeak every 1 second.
Vinod
Vinod am 12 Nov. 2021
That is possible.
If you have an unstable or slow internet connection, it might be that the data you send from your device does not reach the servers exactly 1s apart. You might want to add a 5-10% buffer to factor in network latencies.

Melden Sie sich an, um zu kommentieren.

Communitys

Weitere Antworten in  ThingSpeak Community

Kategorien

Mehr zu ThingSpeak finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2021b

Gefragt:

am 5 Nov. 2021

Kommentiert:

am 12 Nov. 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by