change CT behavior
This commit is contained in:
parent
b5689804b6
commit
0e614c960a
2 changed files with 21 additions and 39 deletions
53
src/main.cpp
53
src/main.cpp
|
|
@ -9,12 +9,12 @@
|
|||
bool analogCardAvailable = false;
|
||||
AnalogCard analogCard = AnalogCard();
|
||||
float voltage = CT_RMS_VOLTAGE;
|
||||
CurrentTransformerCard ct_light_phase1 = CurrentTransformerCard(&analogCard, CT_PIN_AC_PHASE1, &voltage, &adcToCurrent, 1000);
|
||||
CurrentTransformerCard ct_light_phase2 = CurrentTransformerCard(&analogCard, CT_PIN_AC_PHASE2, &voltage, &adcToCurrent, 1000);
|
||||
CurrentTransformerCard ct_socket = CurrentTransformerCard(&analogCard, CT_PIN_SOCKET, &voltage, &adcToCurrent, 1000);
|
||||
CurrentTransformerCard ct_ac_phase1 = CurrentTransformerCard(&analogCard, CT_PIN_AC_PHASE1, &voltage, &adcToCurrent, 1000);
|
||||
CurrentTransformerCard ct_ac_phase2 = CurrentTransformerCard(&analogCard, CT_PIN_AC_PHASE2, &voltage, &adcToCurrent, 1000);
|
||||
CurrentTransformerCard ct_ac_phase3 = CurrentTransformerCard(&analogCard, CT_PIN_AC_PHASE3, &voltage, &adcToCurrent, 1000);
|
||||
CurrentTransformerCard ct1 = CurrentTransformerCard(&analogCard, 0, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct2 = CurrentTransformerCard(&analogCard, 1, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct3 = CurrentTransformerCard(&analogCard, 2, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct4 = CurrentTransformerCard(&analogCard, 3, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct5 = CurrentTransformerCard(&analogCard, 4, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct6 = CurrentTransformerCard(&analogCard, 5, &voltage, &adc2current, 5000);
|
||||
|
||||
// Remote Variables
|
||||
RemoteVariable pm25_in = RemoteVariable();
|
||||
|
|
@ -30,13 +30,6 @@ float adc2current(uint16_t adc_val) {
|
|||
|
||||
#define CT_INTERVAL 5000
|
||||
|
||||
CurrentTransformerCard ct1 = CurrentTransformerCard(&analogCard, 0, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct2 = CurrentTransformerCard(&analogCard, 1, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct3 = CurrentTransformerCard(&analogCard, 2, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct4 = CurrentTransformerCard(&analogCard, 3, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct5 = CurrentTransformerCard(&analogCard, 4, &voltage, &adc2current, 5000);
|
||||
CurrentTransformerCard ct6 = CurrentTransformerCard(&analogCard, 5, &voltage, &adc2current, 5000);
|
||||
|
||||
// Light Configuration
|
||||
uint8_t row = 4;
|
||||
uint8_t column = 2;
|
||||
|
|
@ -83,15 +76,6 @@ ClimateCard climateCard_york = ClimateCard(AIR_CONDITIONER_YORK_IR_PIN, ac_york,
|
|||
AC_SENSOR_TYPE_NONE, 0,
|
||||
AIR_CONDITIONER_RMT_CHANNEL1);
|
||||
|
||||
float adcToCurrent(uint16_t adc_value)
|
||||
{
|
||||
// 16 bit ADC value to current in amps
|
||||
// ADC Range is 0-65535, It have an input range of 0-3.3V
|
||||
// However, it have a resistor network that map 0-3.3V to 0-12V
|
||||
// The current transformer output 0-10V with 0V as 0A and 10V as 50A
|
||||
return (adc_value / 65535.0) * 12.0 / 10.0 * 50.0;
|
||||
}
|
||||
|
||||
void handleMqttMessage(char *topic, char *payload)
|
||||
{
|
||||
// Unused for now
|
||||
|
|
@ -253,19 +237,18 @@ void setup()
|
|||
if (analogCardAvailable || CT_FORCE_ENABLE)
|
||||
{
|
||||
ESP_LOGV("ISE OS", "Analog card available, installing current transformer cards");
|
||||
espmega.installCard(5, &ct_light_phase1);
|
||||
ct_light_phase1.bindFRAM(&espmega.fram, 5010);
|
||||
espmega.installCard(6, &ct_light_phase2);
|
||||
ct_light_phase2.bindFRAM(&espmega.fram, 5020);
|
||||
espmega.installCard(7, &ct_socket);
|
||||
ct_socket.bindFRAM(&espmega.fram, 5030);
|
||||
espmega.installCard(8, &ct_ac_phase1);
|
||||
ct_ac_phase1.bindFRAM(&espmega.fram, 5040);
|
||||
espmega.installCard(9, &ct_ac_phase2);
|
||||
ct_ac_phase2.bindFRAM(&espmega.fram, 5050);
|
||||
espmega.installCard(10, &ct_ac_phase3);
|
||||
ct_ac_phase3.bindFRAM(&espmega.fram, 5060);
|
||||
espmega.iot->registerCard(4);
|
||||
espmega.installCard(5, &ct1);
|
||||
ct1.bindFRAM(&espmega.fram, 5010);
|
||||
espmega.installCard(6, &ct2);
|
||||
ct2.bindFRAM(&espmega.fram, 5020);
|
||||
espmega.installCard(7, &ct3);
|
||||
ct3.bindFRAM(&espmega.fram, 5030);
|
||||
espmega.installCard(8, &ct4);
|
||||
ct4.bindFRAM(&espmega.fram, 5040);
|
||||
espmega.installCard(9, &ct5);
|
||||
ct5.bindFRAM(&espmega.fram, 5050);
|
||||
espmega.installCard(10, &ct5);
|
||||
ct6.bindFRAM(&espmega.fram, 5060);
|
||||
espmega.iot->registerCard(5);
|
||||
espmega.iot->registerCard(6);
|
||||
espmega.iot->registerCard(7);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue