#!/bin/sh
PORT=$1
readingThread() {
dd if=$PORT of=/root/dump.txt &
P=$!
sleep 10
kill -9 $P
}
writingThread() {
echo -en '/?!\x0d\x0a' > $PORT
sleep 1
echo -en '\x06030\x0d\x0a' > $PORT
}
setup() {
stty -F $PORT intr undef quit undef erase undef kill undef eof undef start undef stop undef susp undef rprnt undef werase undef lnext undef flush undef min 1 time 5 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke
}
setup
readingThread &
sleep 1
writingThread
sleep 11
cat dump.txt | grep -e '1.8.L1' | sed -e 's/^.*(//' -e 's/[^0-9]//g'
úterý 1. března 2016
Odečet IEC62025 elekrtoměru z příkazové řádky, pro openwrt
Elektroměr má nastavenu navazovací i komunikační rychlost na 2400bd, odpověď se nijak neparsuje, počítá se s tím, že odečet bude do 10s hotový. Pro mne je důležitá pouze hodnota registru 1.8.L1 a mám nastaven pevný počet desetiných míst před i po desetiné čárce, proto si do výsledku beru pouze znaky 0-9.
Přihlásit se k odběru:
Komentáře k příspěvku (Atom)
Žádné komentáře:
Okomentovat