User Tools

Site Tools


amc2022:grouph:link

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
amc2022:grouph:link [2022/09/10 00:02] gustavo001amc2022:grouph:link [2023/01/05 14:38] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ===== Build ====== ===== Build ======
 {{ :amc2022:grouph:voltage_divider.jpeg?nolink&400 |}} {{ :amc2022:grouph:voltage_divider.jpeg?nolink&400 |}}
 +| //**figure 5.1**// Setup showing the connections for battery voltage reading on ESP32 | 
  
 ===== Schematics ===== ===== Schematics =====
  
 {{ :amc2022:grouph:batt_schematics.png?nolink&400 |}} {{ :amc2022:grouph:batt_schematics.png?nolink&400 |}}
 +| //**figure 5.2**// Schematic for battery voltage reading | 
  
 ===== Code & Description ====== ===== Code & Description ======
Line 59: Line 61:
   }   }
  
 +*//For the conversion between the actual Analog reading to a percentage we use a mapFloat function 
 +*//It uses the input range from the analog sensor to produce another set of useful values 
 +*//float values will allows to get decimal numbers and a more accurate reading  
 +*//We use a the min voltage value, then max voltage value, and min percentage and max percentage 
 +*//Then we ask the program to give us the corresponding percentage value within the parameters
  
      
Line 69: Line 75:
  
                
-  if (voltage > 7.0 && voltage < 8.2) // THIS VALUES HAVE TO CHANGE ACCRODING TO SOURCE+  if (voltage > 7.0 && voltage < 8.2)            // THIS VALUES HAVE TO CHANGE ACCOrDING TO SOURCE
   {Serial.print("Low bat");                      // USE VOLTMETER TO FIND THE ACCURATE VOLTAGE   {Serial.print("Low bat");                      // USE VOLTMETER TO FIND THE ACCURATE VOLTAGE
   }   }
-  if (voltage <6.5)                //cut-off value is at 6V according to specification , we use 6.5V+  if (voltage <6.5)                              //cut-off value is at 5.4V according to specification , we use 6V
   {Serial.print("Replace Battery");   {Serial.print("Replace Battery");
   }   }
Line 78: Line 84:
  
    
 +*//We have included a notification that will tell us what is going on with the voltage and overall battery status
 +*//We include a parameter that will produce 2 warning signs: 
 +*// LOW BAT means that our battery is within 7 to 8.2V
 +*// REPLACE BATTERY means voltage has dropped below 6.5V, number obtained from data sheet
 +
 } }
 } }
Line 85: Line 96:
   return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;   return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
 } }
 +
 +*//here we include the parameters and equation that will serve as the backbone for the mapFloat function above.
 +
  
 void loop() void loop()
Line 92: Line 106:
  
  
-                                     // NO LOOP NEEDED,,, ONE VALUE WITH WARNING SHOULD BE DISPLAYED ON GRAFANA+*// NO LOOP NEEDED,,, ONE VALUE WITH WARNING SHOULD BE DISPLAYED ON GRAFANA
      
  
Line 101: Line 115:
 ===== Issues & Characteristics ====== ===== Issues & Characteristics ======
  
-*//The actual voltage will not be 100% accurate because the ADC pins have a non-linear  +The actual voltage will not be 100% accurate because the ADC pins have a non-linear behavior. This means according to the Figure # down below that, above a certain threshold the reading will produce equal inputs, thus we consider that from 3 to 3.3V the battery is at a 100% charge. 
  
 +Additionally we can see that the discharge behavior of the battery we are using, which is a model 6F22 is a curve that has a specific equation, we could find the curve's equation and use it to better represent the discharge values, however since we plan to upgrade our battery system we purposely used a simpler version in our code to achieve good enough results.  
  
-<WRAP group> +{{ :amc2022:grouph:9v_battery_.png?400&nolink }}  ^ {{ :amc2022:grouph:adc_behaviour.png?nolink&600 |}}  ^ 
-<WRAP half column> +|  //**figure 5.3**// Graph depicting battery discharge for battery model 6F22 9v Source:https://www.mega-piles.com/im/PANASONIC-6F22-9V-CARBONE-ZINC_550.pdf                                                 | //**figure 5.4**// Graph depicting ADC voltage VS reading behavior for ESP32 micro controller. Source:https://microcontrollerslab.com/adc-esp32-measuring-voltage-example/                                                     |
-{{:amc2022:grouph:9v_battery_.png?nolink&300 |}} +
-</WRAP>+
  
-<WRAP half column> 
-{{:amc2022:grouph:adc_behaviour.png?nolink&2000 |}} 
-</WRAP> 
-</WRAP> 
  
  
amc2022/grouph/link.1662760923.txt.gz · Last modified: 2023/01/05 14:38 (external edit)