From f4930deecfa45b95e3ad40643d9f0eb09b0029f4 Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Sun, 25 Aug 2024 16:43:34 -0500 Subject: [PATCH] update --- defaults.inc | 2 +- inc/power.inc.sh | 51 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/defaults.inc b/defaults.inc index c44d1683..db036de8 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,6 +1,6 @@ #!/usr/bin/env bash -VERS='2.7.94-08222024' +VERS='2.7.95-08252024' noheader=' update service dailytemp confsync -r -report test ' diff --git a/inc/power.inc.sh b/inc/power.inc.sh index 17b12c1c..4586e116 100644 --- a/inc/power.inc.sh +++ b/inc/power.inc.sh @@ -169,6 +169,18 @@ CHECKPOWER(){ VOLT_DROP=`echo "scale=1; ${OUTPUTV2}-${SVRRM_VOLTIN}" | bc` fi + ### KYLE + KYLE_INFO=$(curl -m 3 -s http://${PW_REMOTE_SENSORS['KP-Power']}:8888/status/${PW_SENSOR_DEVICEID['KP-Power']} | jq '.dps') + if [ "${KYLE_INFO}" != "" ]; then + KYLE_AMP=$(echo "${KYLE_INFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_AMP=$(ROUND_NUMBER $(echo "scale=3; ${KYLE_AMP}/1000" | bc -l) 2) + KYLE_WATT=$(echo "${KYLE_INFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_WATT=$(echo "scale=1; ${KYLE_WATT}/10" | bc -l) + else + KYLE_AMP=0 + KYLE_WATT=0 + fi + [ ${REPORT} -eq 0 ] && echo -en "\r\033[K" echo -e "${idsCL[White]}Inverter State ${idsCL[Default]}: ${INV_STATE_disp}" if [ ${REPORT} -eq 0 ]; then @@ -293,6 +305,27 @@ CHECKPOWER(){ fi DIVIDER . lightCyan ${PRI_WIDTH} + + #### KYLE + AD=$(IDS_NUMBER_FORMAT ${KYLE_AMP} 2 yes); c=0; spc=''; spc1=`expr ${wspc} - ${#AD}`; until [ ${c} = ${spc1} ]; do spc="${spc} "; ((c++)); done + MSG="${idsBG[Blue]}${idsCL[White]}Kyle Total Power Usage ${idsCL[Default]}: ${idsCL[White]}${AD}'A${spc}`IDS_NUMBER_FORMAT ${KYLE_WATT} 1 yes`'W ${idsBG[Default]}" + echo -en "${MSG}" + if [ "${avgdays}" != "" ]; then + echo -en "${idsCL[Yellow]} Calculating Kyle Total Power Averages ... " + + KYLE_POWER_avg=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['KP-Power']} ${avgdays} both) + KYLE_AMP_avg=$(echo ${KYLE_POWER_avg} | cut -d'~' -f 1) + KYLE_WATT_avg=$(echo ${KYLE_POWER_avg} | cut -d'~' -f 2) + echo -en "\r\033[K" + + AS=$(IDS_NUMBER_FORMAT ${KYLE_WATT} 1 yes); c=0; spcA=''; spc1=`expr ${wspc} - ${#AS} + 4`; until [ ${c} = ${spc1} ]; do spcA="${spcA} "; ((c++)); done + AD=$(IDS_NUMBER_FORMAT ${KYLE_AMP_avg} 2 yes); c=0; spcB=''; spc1=`expr ${wspc} - ${#AD}`; until [ ${c} = ${spc1} ]; do spcB="${spcB} "; ((c++)); done + echo -e "${MSG}${idsBG[Blue]}${spcA}${idsCL[LightYellow]}${AD}'A${spcB}`IDS_NUMBER_FORMAT ${KYLE_WATT_avg} 1 yes`'W ${idsBG[Default]}" + else + echo -e "${idsBG[Default]}" + fi + + DIVIDER . lightCyan ${PRI_WIDTH} fi [ ${REPORT} -eq 0 ] && echo -e "${idsCL[Default]}" @@ -985,6 +1018,24 @@ POWERLOGGER_SERVICE(){ AIRCON_AMP=0 fi + ### KYLE + KYLE_INFO=$(curl -m 3 -s http://${PW_REMOTE_SENSORS['KP-Power']}:8888/status/${PW_SENSOR_DEVICEID['KP-Power']} | jq '.dps') + if [ "${KYLE_INFO}" != "" ]; then + KYLE_AMP=$(echo "${KYLE_INFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_AMP=$(ROUND_NUMBER $(echo "scale=3; ${KYLE_AMP}/1000" | bc -l) 2) + KYLE_WATT=$(echo "${KYLE_INFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_WATT=$(echo "scale=1; ${KYLE_WATT}/10" | bc -l) + KYLE_VOLT=$(echo "${KYLE_INFO}" | grep '"20":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_VOLT=$(echo "scale=3; ${KYLE_VOLT}/10" | bc -l) + + QRY="INSERT INTO power_data (\`sensorid\`, \`date\`, \`volt\`, \`amp\`, \`watt\`) VALUES ('${PW_POWERSENSOR_ID['KP-Power']}','${LogDataTime}','${KYLE_VOLT}','${KYLE_AMP}','${KYLE_WATT}')" + ${mysql_conn} -e "USE servermonitor; ${QRY}" + + else + KYLE_AMP=0 + KYLE_WATT=0 + fi + if [ "${SVRRM_WATT}" != "" ]; then SVRRM_AMP_WAC=$(echo "scale=2; ${SVRRM_AMP}+${AIRCON_AMP}" | bc -l) SVRRM_WATT_WAC=$(echo "scale=2; ${SVRRM_WATT}+${AIRCON_WATT}" | bc -l)