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

4 vues (au cours des 30 derniers jours)
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 commentaire
John Anderson
John Anderson le 21 Juin 2019
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 );

Connectez-vous pour commenter.

Réponses (1)

Vinod
Vinod le 10 Sep 2019
Modifié(e) : Vinod le 10 Sep 2019
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 commentaires
Raphael Mukaro
Raphael Mukaro le 24 Nov 2020
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!!!

Connectez-vous pour commenter.

Communautés

Plus de réponses dans  ThingSpeak Community

Catégories

En savoir plus sur Run on Target Hardware dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by