fix WiFiEnable to pin 3, fix presentation of energy
This commit is contained in:
parent
5e433458c7
commit
023e557014
@ -29,10 +29,7 @@ uint16_t voltage;
|
|||||||
uint16_t cosphi;
|
uint16_t cosphi;
|
||||||
uint16_t current;
|
uint16_t current;
|
||||||
uint16_t power;
|
uint16_t power;
|
||||||
union {
|
uint16_t energy[2];
|
||||||
uint16_t in[2];
|
|
||||||
uint32_t v;
|
|
||||||
} energy;
|
|
||||||
|
|
||||||
float startEnergy = 0;
|
float startEnergy = 0;
|
||||||
|
|
||||||
@ -40,14 +37,19 @@ float startEnergy = 0;
|
|||||||
float getVoltage() { return (float)voltage; }
|
float getVoltage() { return (float)voltage; }
|
||||||
float getCurrent() { return (float)current * 0.1; }
|
float getCurrent() { return (float)current * 0.1; }
|
||||||
float getCosPhi() { return (float)cosphi * 0.01; }
|
float getCosPhi() { return (float)cosphi * 0.01; }
|
||||||
float getPower() { return (float)power * 0.01; }
|
float getPower() { return (float)power * 10; }
|
||||||
float getEnergy() { return (float)energy.v; }
|
|
||||||
float getNewEnergy() { return ((float)energy.v) - startEnergy; }
|
float getEnergy() {
|
||||||
|
uint32_t v = ((uint32_t)energy[1]) + (((uint32_t)energy[0]) << 16);
|
||||||
|
float vv = ((float)v) * 0.01;
|
||||||
|
return vv;
|
||||||
|
}
|
||||||
|
|
||||||
|
float getNewEnergy() { return getEnergy() - startEnergy; }
|
||||||
|
|
||||||
|
|
||||||
// void modbusAppBegin(Mudbus *mb) {
|
// void modbusAppBegin(Mudbus *mb) {
|
||||||
void modbusAppBegin() {
|
void modbusAppBegin() {
|
||||||
pinMode(ZEROING_PIN, INPUT_PULLUP);
|
|
||||||
// modbusSlave = mb;
|
// modbusSlave = mb;
|
||||||
|
|
||||||
|
|
||||||
@ -57,7 +59,7 @@ void modbusAppBegin() {
|
|||||||
modbus_construct(&packets[COSPHI], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 39, 1, &cosphi);
|
modbus_construct(&packets[COSPHI], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 39, 1, &cosphi);
|
||||||
modbus_construct(&packets[CURRENT], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 36, 1, ¤t);
|
modbus_construct(&packets[CURRENT], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 36, 1, ¤t);
|
||||||
modbus_construct(&packets[POWER], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 37, 1, &power);
|
modbus_construct(&packets[POWER], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 37, 1, &power);
|
||||||
modbus_construct(&packets[ENERGY], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 27, 2, energy.in);
|
modbus_construct(&packets[ENERGY], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 27, 2, energy);
|
||||||
// modbus_construct(&packets[POWER], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 1, 1, &power);
|
// modbus_construct(&packets[POWER], MODBUS_ADDRESS, READ_HOLDING_REGISTERS, 1, 1, &power);
|
||||||
|
|
||||||
|
|
||||||
@ -69,7 +71,7 @@ void modbusAppExec() {
|
|||||||
modbus_update();
|
modbus_update();
|
||||||
|
|
||||||
float nEnergy = getEnergy();
|
float nEnergy = getEnergy();
|
||||||
if (((0 == startEnergy) && (0 != nEnergy)) || (digitalRead(ZEROING_PIN) == 0)) {
|
if ((0 == startEnergy) && (0 != nEnergy)) {
|
||||||
startEnergy = nEnergy;
|
startEnergy = nEnergy;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,12 +14,11 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
const uint32_t MODBUS_BAUD = 9600;
|
const uint32_t MODBUS_BAUD = 19200;
|
||||||
const uint16_t MODBUS_TIMEOUT = 10000;
|
const uint16_t MODBUS_TIMEOUT = 10000;
|
||||||
const uint16_t MODBUS_SCANRATE = 1000;
|
const uint16_t MODBUS_SCANRATE = 1000;
|
||||||
const uint8_t MODBUS_RETRY_COUNT = 25;
|
const uint8_t MODBUS_RETRY_COUNT = 25;
|
||||||
const uint8_t MODBUS_TX_ENABLE_PIN = 2;
|
const uint8_t MODBUS_TX_ENABLE_PIN = 2;
|
||||||
const uint8_t ZEROING_PIN = 3;
|
|
||||||
const uint8_t MODBUS_ADDRESS = 1;
|
const uint8_t MODBUS_ADDRESS = 1;
|
||||||
|
|
||||||
// void modbusAppBegin(Mudbus *mb);
|
// void modbusAppBegin(Mudbus *mb);
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
#include <avr/wdt.h>
|
#include <avr/wdt.h>
|
||||||
|
|
||||||
|
|
||||||
const uint8_t WIFI_ENABLE_PIN = 4;
|
const uint8_t WIFI_ENABLE_PIN = 3;
|
||||||
|
|
||||||
|
|
||||||
LiquidCrystal lcd = LiquidCrystal(A0, A1, A2, A3, A4, A5);
|
LiquidCrystal lcd = LiquidCrystal(A0, A1, A2, A3, A4, A5);
|
||||||
@ -69,8 +69,8 @@ void printWifiStatus() {
|
|||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
pinMode(WIFI_ENABLE_PIN, INPUT_PULLUP);
|
pinMode(WIFI_ENABLE_PIN, INPUT_PULLUP);
|
||||||
delay(100);
|
delay(500);
|
||||||
wifiEnabled = true; // (digitalRead(WIFI_ENABLE_PIN) != 0);
|
wifiEnabled = (digitalRead(WIFI_ENABLE_PIN) != 0);
|
||||||
|
|
||||||
|
|
||||||
Serial.begin(57600);
|
Serial.begin(57600);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user