Lettura indicators corrente errata
Inviato: 02/04/2016, 1:25
Ciao a tutti,
ho finito di configurare metern 0.8.2.1 sulla nuova distro jassie e con il nuovo contatore sdm120, è stata dura ma alla fine ce l'ho fatta a farlo funzionare a dovere... ora però mi rimane solo un errore banale ma che mi piacerebbe risolvere.
Ho configurato gli indicators tensione, corrente e cos pi e tensione e cos pi funzionano a dovere mentre l'indicatore della corrente visualizza la tensione.
Spulciando un pò i file ho capito che le varie grandezze solo lette dal pooler485 che gli assegna i numeri (2_1, 2_2, etc) che vengono poi scritti in metern2.txt, guardando il pooler485 e la stringa inserita sembra tutto corretto ma poi nel metern2.txt il valore di tensione e corrente sono sempre identici posto di seguito i vari file:
pooler485
metern2.txt
allego anche uno screen di putty in cui lancio la stringa di pooler485 da terminale e come si vede su più prove solo una volta il risultato della corrente è identico al voltaggio però su metern l'amperaggio corretto non si visualizza mai
Dove sta l'errore?
ho finito di configurare metern 0.8.2.1 sulla nuova distro jassie e con il nuovo contatore sdm120, è stata dura ma alla fine ce l'ho fatta a farlo funzionare a dovere... ora però mi rimane solo un errore banale ma che mi piacerebbe risolvere.
Ho configurato gli indicators tensione, corrente e cos pi e tensione e cos pi funzionano a dovere mentre l'indicatore della corrente visualizza la tensione.
Spulciando un pò i file ho capito che le varie grandezze solo lette dal pooler485 che gli assegna i numeri (2_1, 2_2, etc) che vengono poi scritti in metern2.txt, guardando il pooler485 e la stringa inserita sembra tutto corretto ma poi nel metern2.txt il valore di tensione e corrente sono sempre identici posto di seguito i vari file:
pooler485
Codice: Seleziona tutto
#!/bin/bash
ADDRESSES="$1"
BAUD_RATE="$2"
DEVICE="$3"
ADDR_ARR=$(echo $ADDRESSES | tr "," "\n")
while [ true ]; do
ID=0
POWER=""
ENERGY=""
for ADDRESS in $ADDR_ARR
do
#((ID++))
ID=$ADDRESS
CMD="sdm120c -a ${ADDRESS} -b ${BAUD_RATE} -z 10 -i -p -v -c -f -g -P N -j 5 -w 10 -q ${DEVICE}"
#echo $CMD
VALUE=`$CMD`
VOLTAGE=$(echo ${VALUE} | awk '{print $1}')
CURRENT=$(echo ${VALUE} | awk '{print $2}')
POWER=$(echo ${VALUE} | awk '{print $3}')
FACTOR=$(echo ${VALUE} | awk '{print $4}')
FREQUENCY=$(echo ${VALUE} | awk '{print $5}')
ENERGY=$(echo ${VALUE} | awk '{print $6}')
if [ "$ENERGY" != "0" -a x"$ENERGY" != x -a "$POWER" != "0" -a x"$POWER" != x ]; then
echo -e "$ID($POWER*W)\n$ID($ENERGY*Wh)\n${ID}_1($VOLTAGE*V)\n${ID}_2($CURRENT*A)\n${ID}_3($FREQUENCY*Hz)\n${ID}_4($FACTOR*F)" > /run/shm/metern${ADDRESS}.txt
#echo -e "$VALUE" > /run/shm/metern${ADDRESS}.txt
fi
sleep 5s
done
done
metern2.txt
Codice: Seleziona tutto
2(566.90*W)
2(102801*Wh)
2_1(231.00*V)
2_2(231.00*A)
2_3(50.00*Hz)
2_4(0.99*F)
allego anche uno screen di putty in cui lancio la stringa di pooler485 da terminale e come si vede su più prove solo una volta il risultato della corrente è identico al voltaggio però su metern l'amperaggio corretto non si visualizza mai
Dove sta l'errore?