How do I write to a ThingSpeak channel from a Raspberry pi via code deployed using the Matlab Coder?

3 次查看(过去 30 天)
I am making use of the Matlab Coder to deploy Matlab functionality to a Raspberry pi. I would like to be able to deploy the ability to write to a ThingSpeak channel from the pi. I realise that this is possible using Simulink (via the ThingSpeak block) but was wondering if there is a simple way to do this via code deployed using the Matlab Coder. I have tried the obvious and found that the Matlab Coder does not recognise the ThingSpeakWrite command. However, it also doesn’t appear to be very straightforward to deploy http methods to enable updating the channel via the POST method. Any advice welcome.
  1 个评论
John Anderson
John Anderson 2019-6-21
Using curl via the system command deploys via the coder without any problems. Not sure if it the most sensible way but does enable updating of a thingSpeak channel and is very easy to implement. Example code below adds random number to field 1 of channel.
% raspberry pi object
r = raspi();
% log file
fid = fopen( 'logFile.log', 'w' );
% write random number to thingSpeak channel
v = rand;
commandStr = [ 'sudo curl -s "https://api.thingspeak.com/update.json?api_key=<your api key here>&field1=' sprintf( '%f', v ) '"' ];
result = system( r, commandStr );
% log command
fprintf( fid, '%s \n', commandStr );
% log result
fprintf( fid, '%s \n', result );
% close log
fclose( fid );

请先登录,再进行评论。

回答(1 个)

Vinod
Vinod 2019-9-10
编辑:Vinod 2019-9-10
As you said, there is a block in the Raspberry Pi Support Package that you can use.
Curious why you don't want to use the built-in blocks.
  5 个评论
Raphael Mukaro
Raphael Mukaro 2020-11-24
John, thanks man for your brilliance! I can now update my thingspeak channel using the pi via code deployed using MATLAB coder. I have been struggling for months. Appreciated!!!

请先登录,再进行评论。

社区

更多回答在  ThingSpeak Community

类别

Help CenterFile Exchange 中查找有关 Modeling 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by