Вывод данных в СОМ порт
Материал из ЭНЭ
Версия от 16:00, 14 июня 2023; Woronin (обсуждение | вклад)
Вывод данных в СОМ порт
Для вывода данных в командную строку, в ОС Линукс выполняем настройку COM порта, в нашем случае это /dev/ttyUSB0, задаем ему скорость обмена 115200 бод и запускаем сам вывод данных
/bin/stty -F /dev/ttyUSB0 raw -echo 115200 /usr/bin/cat < /dev/ttyUSB0
В том случае, если же мы хотим, чтобы результат вывод данных складывался бы в файл лога, для дальнейшей обработки и загрузки данных в HomeAssistant , то мы можем объединить эти команды в один скрипт и запускать его при старте системы, как сервис
#!/bin/bash /bin/stty -F /dev/ttyUSB0 raw -echo 9600 /usr/bin/cat < /dev/ttyUSB0 > /config/catusb.log &
После того как скрипт начнет работать можно будет посмотреть содержимое файла - последнюю строчку следующей командой
cat /config/catusb.log |tail -n 2|head -n 1|awk '{print $0}'
Вывод будет примерно в таком виде:
14:57:19.647 -> ec_raw1= 964.781 ec_raw2= 486.868 ec_1= 1.225 ec_2= -15.191 T1= 24.0 H1= 39.0 Wlevel= 289.00 t_raw= 286.00 14:58:19.661 -> ec_raw1= 964.653 ec_raw2= 486.867 ec_1= 1.220 ec_2= -15.191 T1= 24.0 H1= 40.0 Wlevel= 292.00 t_raw= 278.00 14:59:19.662 -> ec_raw1= 964.651 ec_raw2= 486.849 ec_1= 1.220 ec_2= -15.192 T1= 24.0 H1= 40.0 Wlevel= 290.00 t_raw= 276.00