Dev pour retour du LoRa au chalet
This commit is contained in:
parent
75f1a4d1c3
commit
1dadad4b09
@ -44,29 +44,6 @@ HEADERS += \
|
||||
Sources/Chalet/ChaletDataLogger.h \
|
||||
Sources/Chalet/ChaletUbidotsInterface.h \
|
||||
Sources/Chalet/ThingsBoardInterface.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qabstracthttpserver.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qabstracthttpserver_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserver.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserver_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverfutureresponse.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverliterals_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrequest.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrequest_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverresponder.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverresponder_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverresponse.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverresponse_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrouter.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrouter_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrouterrule.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrouterrule_p.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverrouterviewtraits.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverviewtraits.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qhttpserverviewtraits_impl.h \
|
||||
Lib/QtHTTPServer/include/QtHttpServer/qthttpserverglobal.h \
|
||||
Lib/QtHTTPServer/include/QtSslServer/qsslserver.h \
|
||||
Lib/QtHTTPServer/include/QtSslServer/qsslserver_p.h \
|
||||
Lib/QtHTTPServer/include/QtSslServer/qtsslserverglobal.h \
|
||||
Sources/ImageCropper/imagecropper.h \
|
||||
Sources/ImageCropper/imagecropper_e.h \
|
||||
Sources/ImageCropper/imagecropper_p.h \
|
||||
@ -134,6 +111,6 @@ INCLUDEPATH += $$PWD/ \
|
||||
$$PWD/Sources/HttpServer \
|
||||
$$PWD/blynk-library-master/src/ \
|
||||
$$PWD/Sources/Modbus \
|
||||
# $$PWD/Lib/QtHTTPServer/include/ \
|
||||
# $$PWD/Lib/QtHTTPServer/include/ \
|
||||
|
||||
LIBS += -L$$PWD/Lib/QtHTTPServer/ -lQt5HttpServer
|
||||
|
||||
@ -12,6 +12,7 @@ CChaletMainStatus::CChaletMainStatus()
|
||||
mHarakiriDone = false;
|
||||
mStatusToggleBit = 0;
|
||||
mLostRequestPercentage = 0;
|
||||
mChaletTemperature = -100;
|
||||
|
||||
}
|
||||
|
||||
@ -57,6 +58,7 @@ QByteArray CChaletMainStatus::ToByteArray()
|
||||
Strm << mThisStatusDateTime;
|
||||
Strm << mLastLoraStatus;
|
||||
Strm << mStatusToggleBit;
|
||||
Strm << mChaletTemperature;
|
||||
|
||||
return Data;
|
||||
}
|
||||
|
||||
@ -6,6 +6,32 @@
|
||||
#include <QByteArray>
|
||||
|
||||
|
||||
//Read registers
|
||||
#define CHALET_MODBUS_ONLINE_STATE_REG 2000
|
||||
#define CHALET_MODBUS_WIFI_STATE_REG 2001
|
||||
#define CHALET_MODBUS_CURRENT_SENSOR_STATE_REG 2002
|
||||
#define CHALET_MODBUS_HARAKIRI_DONE_REG 2003
|
||||
#define CHALET_MODBUS_STATUS_TOGGLE_REG 2004
|
||||
#define CHALET_MODBUS_WATCHDOG_STATUS_REG 2005
|
||||
#define CHALET_MODBUS_INVERTER_REG 2006
|
||||
|
||||
#define CHALET_MODBUS_BATTERY_VOLTAGE_REG_1 2010
|
||||
#define CHALET_MODBUS_BATTERY_VOLTAGE_REG_2 2011
|
||||
#define CHALET_MODBUS_BATTERY_CURRENT_REG_1 2012
|
||||
#define CHALET_MODBUS_BATTERY_CURRENT_REG_2 2013
|
||||
#define CHALET_MODBUS_BATTERY_SOC_REG 2014
|
||||
#define CHALET_MODBUS_LOST_REQUESTS_REG_1 2015
|
||||
#define CHALET_MODBUS_LOST_REQUESTS_REG_2 2016
|
||||
#define CHALET_MODBUS_TEMPERATURE_VAL_REG_1 2017
|
||||
#define CHALET_MODBUS_TEMPERATURE_VAL_REG_2 2018
|
||||
|
||||
|
||||
//Write registers
|
||||
#define CHALET_MODBUS_SET_INVERTER_STATE_REG 3000
|
||||
#define CHALET_MODBUS_SET_WIFI_STATE_REG 3001
|
||||
#define CHALET_MODBUS_REBOOT_CPU_REQUEST_REG 3002
|
||||
|
||||
|
||||
|
||||
class CChaletMainStatus
|
||||
{
|
||||
@ -34,6 +60,8 @@ public:
|
||||
|
||||
float mLostRequestPercentage;
|
||||
|
||||
float mChaletTemperature;
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
@ -7,6 +7,8 @@ CChaletInterface::CChaletInterface(int Address, CAbstractNetworkCommIF *NetworkI
|
||||
mChaletLoraDevice = DevicePtr;
|
||||
mChaletDataLogger = mChaletLoraDevice->GetDataLoggerHandle();
|
||||
|
||||
connect(mChaletLoraDevice,SIGNAL(DeviceWifiStoredParamsReceived()),this,SLOT(DeviceWiFiDataReceived()));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -94,6 +96,18 @@ int CChaletInterface::NewDeviceFrameReceived(int DeviceID, int DeviceAddress, in
|
||||
delete data;
|
||||
break;
|
||||
}
|
||||
case CHALET_INTERFACE_WIFI_GET_DEVICE_PARAMS_REQUEST:
|
||||
{
|
||||
mChaletLoraDevice->SendGetWifiParams();
|
||||
break;
|
||||
}
|
||||
case CHALET_INTERFACE_WIFI_SET_DEVICE_PARAMS_REQUEST:
|
||||
{
|
||||
mChaletLoraDevice->SendSetWifiParams(Data);
|
||||
break;
|
||||
}
|
||||
case CHALET_INTERFACE_WIFI_GET_DEVICE_PARAMS_RESPONSE:
|
||||
case CHALET_INTERFACE_WIFI_SET_DEVICE_PARAMS_RESPONSE:
|
||||
case CHALET_INTERFACE_GET_DATA_LOG_RESPONSE:
|
||||
case CHALET_INTERFACE_GET_TODAYS_DATA_LOG_RESPONSE:
|
||||
case CHALET_INTERFACE_GENERAL_STATUS_RESPONSE:
|
||||
@ -120,3 +134,9 @@ void CChaletInterface::SendChaletCommActivityBeacon()
|
||||
{
|
||||
mNetworkInterfacePtr->SendNetworkMessage(ID_CHALET_INTERFACE,mDeviceAddress,CHALET_INTERFACE_CHALET_ACTIVITY_RESPONSE,0,0);
|
||||
}
|
||||
|
||||
void CChaletInterface::DeviceWiFiDataReceived()
|
||||
{
|
||||
QByteArray Data = mChaletLoraDevice->GetDeviceWiFiStoredParams();
|
||||
mNetworkInterfacePtr->SendNetworkMessage(ID_CHALET_INTERFACE,mDeviceAddress,CHALET_INTERFACE_WIFI_GET_DEVICE_PARAMS_RESPONSE,Data.size(),&Data);
|
||||
}
|
||||
|
||||
@ -18,6 +18,9 @@ private:
|
||||
CChaletLoraDevice *mChaletLoraDevice;
|
||||
CChaletDataLogger *mChaletDataLogger;
|
||||
|
||||
public slots:
|
||||
void DeviceWiFiDataReceived();
|
||||
|
||||
};
|
||||
|
||||
#endif // CCHALETINTERFACE_H
|
||||
|
||||
@ -1,7 +1,5 @@
|
||||
#include "ChaletLoraDevice.h"
|
||||
#include "GlobalDefine.h"
|
||||
#include "ChaletInterface.h"
|
||||
|
||||
|
||||
|
||||
CChaletLoraDevice::CChaletLoraDevice(int Address, CAbstractNetworkCommIF *NetworkInterface):
|
||||
@ -16,10 +14,15 @@ CChaletLoraDevice::CChaletLoraDevice(int Address, CAbstractNetworkCommIF *Networ
|
||||
mChaletStatusTimer->setSingleShot(true);
|
||||
connect(mChaletStatusTimer,SIGNAL(timeout()),this,SLOT(CommTimerExpired()));
|
||||
|
||||
mJFUbidotsInterface = new CChaletJFUbidotsInterface("BBFF-tEq4lGAegEyP1H4EaYckNQ7ZHdZYzI");
|
||||
// mJFUbidotsInterface = new CChaletJFUbidotsInterface("BBFF-tEq4lGAegEyP1H4EaYckNQ7ZHdZYzI");
|
||||
|
||||
mThingsBoardInterface.mChaletLoraDevice = this;
|
||||
|
||||
mChaletModbusRepo.AddHRDataMap(0x2000,50);
|
||||
mChaletModbusServer = new CChaletModbusServer(&mChaletModbusRepo,512,1);
|
||||
|
||||
mDeviceWiFiParameters.fill(0xFF);
|
||||
|
||||
ResetCommStats();
|
||||
}
|
||||
|
||||
@ -55,6 +58,7 @@ int CChaletLoraDevice::NewDeviceFrameReceived(int DeviceID, int DeviceAddress, i
|
||||
qint16 temp2;
|
||||
qDebug("Chalet Status RX");
|
||||
char VoltageArray[4];
|
||||
char TemperatureArray[4];
|
||||
char SolarPanelCurrentArray[2];
|
||||
char BatterySOCArray[2];
|
||||
|
||||
@ -79,6 +83,13 @@ int CChaletLoraDevice::NewDeviceFrameReceived(int DeviceID, int DeviceAddress, i
|
||||
memcpy(&temp2,BatterySOCArray,2);
|
||||
mChaletMainStatus.mBatterySOC = temp2;
|
||||
|
||||
TemperatureArray[0] = Data[10];
|
||||
TemperatureArray[1] = Data[11];
|
||||
TemperatureArray[2] = Data[12];
|
||||
TemperatureArray[3] = Data[13];
|
||||
memcpy(&temp,TemperatureArray,4);
|
||||
mChaletMainStatus.mChaletTemperature = temp;
|
||||
|
||||
mChaletMainStatus.mStatusToggleBit = !mChaletMainStatus.mStatusToggleBit;
|
||||
mChaletMainStatus.mLastLoraStatus = QDateTime::currentDateTime();
|
||||
|
||||
@ -90,18 +101,36 @@ int CChaletLoraDevice::NewDeviceFrameReceived(int DeviceID, int DeviceAddress, i
|
||||
|
||||
mChaletDataLogger.LogChaletLORAData(&mChaletMainStatus);
|
||||
|
||||
mJFUbidotsInterface->LogUbidotsChaletData(&mChaletMainStatus);
|
||||
// mJFUbidotsInterface->LogUbidotsChaletData(&mChaletMainStatus);
|
||||
|
||||
mBlynkInterface.UpdateChaletCurrent(mChaletMainStatus.mBatteryCurrent);
|
||||
mBlynkInterface.UpdateChaletVoltage(mChaletMainStatus.mBatteryVoltage);
|
||||
// mBlynkInterface.UpdateChaletCurrent(mChaletMainStatus.mBatteryCurrent);
|
||||
// mBlynkInterface.UpdateChaletVoltage(mChaletMainStatus.mBatteryVoltage);
|
||||
// mBlynkInterface.UpdateChaletWifiStatus((int)mChaletMainStatus.mInverterRelayStatus);
|
||||
mBlynkInterface.UpdateChaletInverterStatus((int)mChaletMainStatus.mInverterRelayStatus);
|
||||
mBlynkInterface.UpdateChaletStatusLed(((int)mChaletMainStatus.mStatusToggleBit)*255);
|
||||
// mBlynkInterface.UpdateChaletInverterStatus((int)mChaletMainStatus.mInverterRelayStatus);
|
||||
// mBlynkInterface.UpdateChaletStatusLed(((int)mChaletMainStatus.mStatusToggleBit)*255);
|
||||
|
||||
// mThingsBoardInterface.UpdateChaletVoltage(mChaletMainStatus.mBatteryVoltage);
|
||||
mThingsBoardInterface.UpdateChaletData(mChaletMainStatus.mInverterRelayStatus,mChaletMainStatus.mWiFiModuleStatus,mChaletMainStatus.mCurrentSensorStatus,mChaletMainStatus.mBatteryVoltage,mChaletMainStatus.mBatteryCurrent,mChaletMainStatus.mBatterySOC,mChaletMainStatus.mIsOnline);
|
||||
//mThingsBoardInterface.UpdateChaletData(mChaletMainStatus.mInverterRelayStatus,mChaletMainStatus.mWiFiModuleStatus,mChaletMainStatus.mCurrentSensorStatus,mChaletMainStatus.mBatteryVoltage,mChaletMainStatus.mBatteryCurrent,mChaletMainStatus.mBatterySOC,mChaletMainStatus.mIsOnline);
|
||||
mThingsBoardInterface.UpdateChaletData(&mChaletMainStatus);
|
||||
|
||||
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_ONLINE_STATE_REG,(quint16)mChaletMainStatus.mIsOnline);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_WIFI_STATE_REG,(quint16)mChaletMainStatus.mWiFiModuleStatus);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_CURRENT_SENSOR_STATE_REG,(quint16)mChaletMainStatus.mCurrentSensorStatus);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_HARAKIRI_DONE_REG,(quint16)mChaletMainStatus.mHarakiriDone);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_STATUS_TOGGLE_REG,(quint16)mChaletMainStatus.mStatusToggleBit);
|
||||
//mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_WATCHDOG_STATUS_REG,(quint16),mChaletMainStatus.m)
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_INVERTER_REG,(quint16)mChaletMainStatus.mInverterRelayStatus);
|
||||
|
||||
quint16 TempInt16;
|
||||
memcpy(&TempInt16,&VoltageArray[0],2);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_BATTERY_VOLTAGE_REG_1,TempInt16);
|
||||
memcpy(&TempInt16,&VoltageArray[2],2);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_BATTERY_VOLTAGE_REG_2,TempInt16);
|
||||
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_BATTERY_CURRENT_REG_1,mChaletMainStatus.mBatteryCurrent);
|
||||
mChaletModbusRepo.WriteSingleReg(CHALET_MODBUS_BATTERY_SOC_REG,mChaletMainStatus.mBatterySOC);
|
||||
|
||||
break;
|
||||
}
|
||||
case CHALET_AC_POWER_STATE_STATUS_RESPONSE:
|
||||
@ -167,6 +196,21 @@ int CChaletLoraDevice::NewDeviceFrameReceived(int DeviceID, int DeviceAddress, i
|
||||
CmdResponseReceived(CHALET_DO_HARAKIRI_REQUEST);
|
||||
break;
|
||||
}
|
||||
case CHALET_GET_STORED_WIFI_SETTINGS_RESPONSE:
|
||||
{
|
||||
|
||||
CmdResponseReceived(CHALET_GET_STORED_WIFI_SETTINGS_REQUEST);
|
||||
mDeviceWiFiParameters = Data.left(8);
|
||||
emit DeviceWifiStoredParamsReceived();
|
||||
break;
|
||||
}
|
||||
case CHALET_SET_STORED_WIFI_SETTINGS_RESPONSE:
|
||||
{
|
||||
CmdResponseReceived(CHALET_SET_STORED_WIFI_SETTINGS_REQUEST);
|
||||
emit DeviceWifiSetParamsResult(Data[0]);
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
return RET_ERROR;
|
||||
@ -280,6 +324,15 @@ int CChaletLoraDevice::SendRebootCmd()
|
||||
|
||||
return ScheduleChaletCommand(CHALET_REBOOT_CPU_REQUEST,Data);
|
||||
}
|
||||
int CChaletLoraDevice::SendGetWifiParams()
|
||||
{
|
||||
return ScheduleChaletCommand(CHALET_GET_STORED_WIFI_SETTINGS_REQUEST,QByteArray());
|
||||
}
|
||||
|
||||
int CChaletLoraDevice::SendSetWifiParams(QByteArray Data)
|
||||
{
|
||||
return ScheduleChaletCommand(CHALET_SET_STORED_WIFI_SETTINGS_REQUEST,Data);
|
||||
}
|
||||
|
||||
int CChaletLoraDevice::SendChaletCommand(int CmdID, int DataSize, QByteArray Data)
|
||||
{
|
||||
|
||||
@ -13,6 +13,8 @@
|
||||
#include "ChaletDataLogger.h"
|
||||
#include "ChaletUbidotsInterface.h"
|
||||
#include "ThingsBoardInterface.h"
|
||||
#include "ChaletModbusServer.h"
|
||||
#include "ModbusRepository.h"
|
||||
|
||||
|
||||
#define LORA_MAGIC_WORD 0xBAADCAFE
|
||||
@ -24,7 +26,6 @@
|
||||
#define LORA_CHALET_STATUS_POWER_RELAY_MASK 0x01
|
||||
#define LORA_CHALET_STATUS_CUR_SENSOR_MASK 0x02
|
||||
|
||||
|
||||
class CChaletLoraDevice : public QObject, public CNetworkDevice
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -39,8 +40,11 @@ public:
|
||||
int Start();
|
||||
|
||||
CChaletMainStatus GetChaletMainStatus() {return mChaletMainStatus;}
|
||||
QByteArray GetDeviceWiFiStoredParams() {return mDeviceWiFiParameters;}
|
||||
CBlynkCloudClient mBlynkInterface;
|
||||
CThingsBoardInterface mThingsBoardInterface;
|
||||
CChaletModbusServer *mChaletModbusServer;
|
||||
CModbusRepository mChaletModbusRepo;
|
||||
|
||||
CChaletMainStatus mChaletMainStatus;
|
||||
QList<CChaletNetworkMessage> mPendingNetworkMsgList;
|
||||
@ -52,6 +56,8 @@ public:
|
||||
|
||||
CChaletDataLogger *GetDataLoggerHandle() {return &mChaletDataLogger;} //for Interface use...
|
||||
|
||||
QByteArray mDeviceWiFiParameters;
|
||||
|
||||
|
||||
|
||||
int SendWiFiModuleSetState(bool State);
|
||||
@ -61,12 +67,17 @@ public:
|
||||
int SendChaletCommand(int CmdID,int DataSize, QByteArray Data);
|
||||
int ResetCommStats();
|
||||
int ComputeCommStats();
|
||||
int SendGetWifiParams();
|
||||
int SendSetWifiParams(QByteArray Data);
|
||||
|
||||
int CmdResponseReceived(int CmdID);
|
||||
int ScheduleChaletStatusRequest();
|
||||
int ScheduleChaletCommand(int CmdID, int DataSize, QByteArray Data);
|
||||
int ScheduleChaletCommand(int CmdID,QByteArray Data);
|
||||
|
||||
signals:
|
||||
void DeviceWifiStoredParamsReceived();
|
||||
void DeviceWifiSetParamsResult(char);
|
||||
|
||||
public slots:
|
||||
void CommTimerExpired();
|
||||
|
||||
@ -5,3 +5,19 @@ CChaletModbusServer::CChaletModbusServer(CModbusRepository *Repo, int ModbusPort
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
CChaletModbusServer::~CChaletModbusServer()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
void CChaletModbusServer::RegistersDatabaseUpdated(quint16 StartAddress, quint16 Length)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void CChaletModbusServer::ModbusRequestException(quint8 ExceptionCode, quint8 FctCode)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@ -4,6 +4,8 @@
|
||||
#include <QObject>
|
||||
#include <ModbusBackend.h>
|
||||
|
||||
class CChaletLoraDevice;
|
||||
|
||||
class CChaletModbusServer : public CModbusBackend
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@ -30,7 +30,7 @@ int CThingsBoardInterface::RegisterThingsboardRPC()
|
||||
{
|
||||
|
||||
QNetworkRequest Req;
|
||||
Req.setUrl(QUrl("http://192.168.50.100:8085/api/v1/aQIocLkJM2ECSqVT2VRx/rpc"));
|
||||
Req.setUrl(QUrl("http://192.168.50.225:8080/api/v1/qpJ6tWCkXHJzDQviDJ64/rpc"));
|
||||
|
||||
mThingsBoardRPCReply = mThingsBoardRPCSocket->get(Req);
|
||||
// connect(mThingsBoardRPCReply,SIGNAL(readyRead()),this,SLOT(RPCData()));
|
||||
@ -49,7 +49,7 @@ void CThingsBoardInterface::UpdateChaletVoltage(float Voltage)
|
||||
|
||||
QNetworkRequest Req;
|
||||
Req.setHeader(QNetworkRequest::ContentTypeHeader,"application/json");
|
||||
Req.setUrl(QUrl("http://192.168.50.100:8085/api/v1/aQIocLkJM2ECSqVT2VRx/telemetry"));
|
||||
Req.setUrl(QUrl("http://192.168.50.225:8080/api/v1/qpJ6tWCkXHJzDQviDJ64/telemetry"));
|
||||
|
||||
mThingsBoardSocket->post(Req,JsonByteArray);
|
||||
|
||||
@ -82,7 +82,7 @@ void CThingsBoardInterface::UpdateChaletData(quint8 mInverterRelayStatus, quint8
|
||||
|
||||
QNetworkRequest Req;
|
||||
Req.setHeader(QNetworkRequest::ContentTypeHeader,"application/json");
|
||||
Req.setUrl(QUrl("http://192.168.50.100:8085/api/v1/aQIocLkJM2ECSqVT2VRx/telemetry"));
|
||||
Req.setUrl(QUrl("http://192.168.50.225:8080/api/v1/qpJ6tWCkXHJzDQviDJ64/telemetry"));
|
||||
|
||||
mThingsBoardSocket->post(Req,JsonByteArray);
|
||||
|
||||
@ -96,6 +96,39 @@ void CThingsBoardInterface::UpdateChaletData(quint8 mInverterRelayStatus, quint8
|
||||
// }
|
||||
}
|
||||
|
||||
void CThingsBoardInterface::UpdateChaletData(CChaletMainStatus *Data)
|
||||
{
|
||||
QByteArray JsonByteArray = "{\"Bat_Voltage\":";
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mBatteryVoltage)).toUtf8().data());
|
||||
|
||||
JsonByteArray.append("\"Bat_SOC\":");
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mBatterySOC)).toUtf8().data());
|
||||
|
||||
JsonByteArray.append("\"WiFi_State\":");
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mWiFiModuleStatus)).toUtf8().data());
|
||||
|
||||
JsonByteArray.append("\"CurrentSensor_State\":");
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mCurrentSensorStatus)).toUtf8().data());
|
||||
|
||||
JsonByteArray.append("\"Bat_Current\":");
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mBatteryCurrent)).toUtf8().data());
|
||||
|
||||
JsonByteArray.append("\"LoRa_State\":");
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mIsOnline)).toUtf8().data());
|
||||
|
||||
JsonByteArray.append("\"Inverter_State\":");
|
||||
JsonByteArray.append((QString("%1, ").arg(Data->mInverterRelayStatus)).toUtf8().data());
|
||||
|
||||
JsonByteArray = "{\"Temperature_Sensor\":";
|
||||
JsonByteArray.append((QString("%1}").arg(Data->mChaletTemperature)).toUtf8().data());
|
||||
|
||||
QNetworkRequest Req;
|
||||
Req.setHeader(QNetworkRequest::ContentTypeHeader,"application/json");
|
||||
Req.setUrl(QUrl("http://192.168.50.225:8080/api/v1/qpJ6tWCkXHJzDQviDJ64/telemetry"));
|
||||
|
||||
mThingsBoardSocket->post(Req,JsonByteArray);
|
||||
}
|
||||
|
||||
void CThingsBoardInterface::ThingsBoardServerFinished(QNetworkReply *NetworkReply)
|
||||
{
|
||||
if(NetworkReply->isFinished() == false)
|
||||
|
||||
@ -5,6 +5,7 @@ class CChaletLoraDevice;
|
||||
|
||||
#include <QObject>
|
||||
#include <QNetworkAccessManager>
|
||||
#include "ChaletData.h"
|
||||
|
||||
class CThingsBoardInterface : public QObject
|
||||
{
|
||||
@ -18,6 +19,7 @@ public:
|
||||
int RegisterThingsboardRPC();
|
||||
void UpdateChaletVoltage(float Voltage);
|
||||
void UpdateChaletData(quint8 mInverterRelayStatus, quint8 mWiFiModuleStatus, qint8 mCurrentSensorStatus, float mBatteryVoltage, qint16 mBatteryCurrent, qint16 mBatterySOC, qint8 LoraState);
|
||||
void UpdateChaletData(CChaletMainStatus *Data);
|
||||
|
||||
private:
|
||||
QNetworkAccessManager *mThingsBoardSocket, *mThingsBoardRPCSocket;
|
||||
|
||||
@ -61,6 +61,7 @@ int CLoraNetworkCommIF::SetLoraSerialPortSettings(QString PortName, qint32 BaudR
|
||||
|
||||
int CLoraNetworkCommIF::SendLoraFrame(unsigned short DestAddress, unsigned char DestChannel, QByteArray Payload)
|
||||
{
|
||||
|
||||
mLoraDeviceSerialPort.write(GetLoraFrame(DestAddress,DestChannel,Payload));
|
||||
mLoraDeviceSerialPort.waitForBytesWritten(500);
|
||||
return RET_OK;
|
||||
|
||||
@ -92,7 +92,7 @@ void CMasterCtrl::Start()
|
||||
mAVReceiverDevice->Start();
|
||||
|
||||
mChaletLoraNetworkCommInterface->SetLoraSerialPortSettings("COM3",QSerialPort::Baud9600);
|
||||
// mChaletLoraNetworkCommInterface->SetLoraSerialPortSettings("COM5",QSerialPort::Baud9600);
|
||||
// mChaletLoraNetworkCommInterface->SetLoraSerialPortSettings("COM5",QSerialPort::Baud9600);
|
||||
mChaletLoraDevice->Start();
|
||||
|
||||
|
||||
|
||||
@ -351,7 +351,7 @@ void CNetworkProtocol::PrepareForNewPacket()
|
||||
int CNetworkProtocol::AnalyzeRxBuffer(QByteArray Buffer)
|
||||
{
|
||||
int ret = PROTOCOL_RET_ERROR_EMPTY_BUFFER;
|
||||
// qDebug("Rx %d bytes",Buffer.size());
|
||||
// qDebug("Rx %d bytes",Buffer.size());
|
||||
for(int i = 0; i < Buffer.size(); i++)
|
||||
{
|
||||
ret = RxStateMachine(Buffer.at(i));
|
||||
|
||||
@ -270,6 +270,11 @@ enum CHALET_INTERFACE_CMDS
|
||||
CHALET_INTERFACE_CHALET_ACTIVITY_RESPONSE,
|
||||
CHALET_INTERFACE_GET_DATA_LOG_REQUEST,
|
||||
CHALET_INTERFACE_GET_DATA_LOG_RESPONSE,
|
||||
CHALET_INTERFACE_WIFI_GET_DEVICE_PARAMS_REQUEST,
|
||||
CHALET_INTERFACE_WIFI_GET_DEVICE_PARAMS_RESPONSE,
|
||||
CHALET_INTERFACE_WIFI_SET_DEVICE_PARAMS_REQUEST,
|
||||
CHALET_INTERFACE_WIFI_SET_DEVICE_PARAMS_RESPONSE,
|
||||
|
||||
|
||||
MAX_CHALET_INTERFACE_CMD
|
||||
};
|
||||
@ -295,6 +300,10 @@ enum CHALET_CMDS
|
||||
CHALET_DO_HARAKIRI_CONFIRMATION,
|
||||
CHALET_REBOOT_CPU_REQUEST, //12
|
||||
CHALET_REBOOT_CPU_RESPONSE,
|
||||
CHALET_GET_STORED_WIFI_SETTINGS_REQUEST, //14
|
||||
CHALET_GET_STORED_WIFI_SETTINGS_RESPONSE,
|
||||
CHALET_SET_STORED_WIFI_SETTINGS_REQUEST,
|
||||
CHALET_SET_STORED_WIFI_SETTINGS_RESPONSE,
|
||||
|
||||
|
||||
MAX_CHALET_CMD
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user