VOOZH about

URL: https://qiita.com/ekzemplaro/items/4151144656fb06dac4fd

⇱ HTTP で温度と湿度を Harvest に送る #Arduino - Qiita


👁 Image
1

Go to list of users who liked

0

Share on X(Twitter)

Share on Facebook

Add to Hatena Bookmark

More than 3 years have passed since last update.

@ekzemplaro(内田 雅智)

HTTP で温度と湿度を Harvest に送る

1
Last updated at Posted at 2021-08-08

こちらのプログラムの送信プロトコルを udp から http に変えてみました。
UDP で温度と湿度を Harvest に送る

フォルダー構造

$ tree harvest_http/
harvest_http/
├── harvest_http.ino
├── setupLTE.ino
└── temperature.ino
harvest_http.ino
// ---------------------------------------------------------------
/*
	harvest_http.ino

					Aug/08/2021
*/
// ---------------------------------------------------------------
# include <WioLTEforArduino.h>
# include <ArduinoJson.h>
# include <stdio.h>

# define URL	"http://harvest.soracom.io"
# define SENSOR_PIN	(WIOLTE_D38)
# define INTERVAL	(10000)

DynamicJsonDocument doc(1024);

WioLTE Wio;
int TemperatureAndHumidityPin;

int icount = 0;

// ---------------------------------------------------------------
void setup() {
	setupLTE();

	TemperatureAndHumidityBegin(SENSOR_PIN);

	SerialUSB.println("*** Setup completed *** Aug/08/2021 PM 18:20");
}

// ---------------------------------------------------------------
void loop() {
	char data_json[128];
	int status;
	float temp;
	float humi;
	
	SerialUSB.println("*** loop ***");

	SerialUSB.println("icount = " + String(icount));
	
	if (!TemperatureAndHumidityRead(&temp, &humi))
		{
		SerialUSB.println("ERROR! *** TemperatureAndHumidityRead");
		}
	else
		{
		SerialUSB.print("Current humidity = ");
		SerialUSB.print(humi);
		SerialUSB.print("% ");
		SerialUSB.print("temperature = ");
		SerialUSB.print(temp);
		SerialUSB.println("C");
		}

	doc["temp"] = temp;
	doc["humi"] = humi;

	serializeJson(doc, data_json);	
	 
	SerialUSB.print("Post:");
	SerialUSB.print(data_json);
	SerialUSB.println("");

	if (!Wio.HttpPost(URL, data_json, &status))
		{
		SerialUSB.println("### ERROR! HttpPost ###");
		}
	else
		{
		SerialUSB.print("Status: ");
		SerialUSB.println(status);
 		}
 
	SerialUSB.println("### Wait.");

	Wio.LedSetRGB(0, 0, 1); 
	delay(INTERVAL / 4);
	Wio.LedSetRGB(0, 1, 0); 
	delay(INTERVAL / 4);
	Wio.LedSetRGB(1, 1, 1); 
	delay(INTERVAL / 4);
	Wio.LedSetRGB(0, 0, 0); 
	delay(INTERVAL / 4);

	icount++;
}

// ---------------------------------------------------------------

setupLTE.ino
temperature.ino
は、元と同じです。

1

Go to list of users who liked

0
0

Go to list of comments

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1

Go to list of users who liked

0