Skip to content

tremaru/iocontrol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iocontrol

Библиотека Arduino IDE для работы с сервисом IoT iocontrol.ru

Библиотека совместима со всеми устройствами, которые используют базовый класс Client для работы с сетевыми соединениями.

Проверено на: Arduino UNO, Arduino MEGA 2560, Piranha UNO, Piranha ULTRA, ESP32 (Metro ESP-32), ESP8266 (Wemos D1 R1). Для работы с Arduino требуется аппаратная возможность подключения (например, Ethernet шилд) и маршрутизатор со свободным разъёмом LAN, подключённый к сети Интернет. Для ESP32 и ESP8266 требуется точка доступа WiFi с подключением к сети Интернет.

Пример/Example (Ethernet Shield):

#include <iocontrol.h>
#include <SPI.h>
#include <Ethernet.h>

// Данные Вашей панели
const char* myPanelName = "название_панели";
const char* myVarName = "название_переменной";

// Если панель использует ключ
// const char* key = "ключ";

// MAC адрес Ethernet шилда
byte mac[] = {
	0xFE, 0xED, 0xBE, 0xEF, 0xFA, 0xCC
};

// Настройки клиента (клиент должен быть передан в конструктор объекта панели)
EthernetClient client;
iocontrol mypanel(myPanelName, client);

// Если панель использует ключ
// iocontrol mypanel(myPanelName, key, client);

void setup()
{
	Serial.begin(9600);
	Ethernet.begin(mac);
	mypanel.begin();
}

void loop()
{
	mypanel.write(myVarName, millis());
	mypanel.writeUpdate();

	int status = mypanel.readUpdate();

	if (status == OK) {

		Serial.println(mypanle.readInt(myVarName));

	}
}

Пример/Example (ESP32):

#include <iocontrol.h>
#include <WiFi.h>

// Настройки для точки доступа
const char* mySSID = "название_точки_доступа_WiFi";
const char* mySSIDpass = "пароль_точки_доступа_WiFi";

// Данные Вашей панели
const char* myPanelName = "название_панели";
const char* myVarName = "название_переменной";

// Если панель использует ключ
// const char* key = "ключ";

// Настройки клиента (клиент должен быть передан в конструктор объекта панели)
WiFiClient client;
iocontrol mypanel(myPanelName, client);

// Если панель использует ключ
// iocontrol mypanel(myPanelName, key, client);

void setup()
{
	Serial.begin(9600);
	WiFi.begin(mySSID, mySSIDpass);

	// Ждём подключения
	while (WiFi.status() != WL_CONNECTED) {
		delay(500);
		Serial.print(".");
	}

	Serial.println();
	mypanel.begin();
}

void loop()
{
	mypanel.write(myVarName, millis());
	mypanel.writeUpdate();

	int status = mypanel.readUpdate();

	if (status == OK) {

		Serial.println(mypanel.readInt(myVarName));

	}
}