나는 10 초마다 직렬 출력으로 라인을 제공하는 arduino에서 데이터를 기록하기 위해 OrangePI 보드를 사용하고 있습니다.Python Script? - arduino에서 시리얼 출력 로깅
20.0/12.0 V
온도는 arduino에 부착 된 온도 센서로 측정 한 온도와 배터리 절약 목적의 전압입니다.
저는 웹에서 수집 된 스 니펫과 제안을 바탕으로 정확하게 필요한 것을 수행하는 스크립트를 만들었습니다.
#!/bin/bash
# Script will run at reboot.
echo "Beginning Temperature Log!"
NOW=$(date +"%Y-%m-%d")
LOGFILE="log-$NOW"
name=$LOGFILE
if [[ -e $name ]] ; then
i=2
while [[ -e $name-$i ]] ; do
let i++
done
name=$name-$i
fi
ts </dev/ttyUSB0>$name
스크립트는 매끄럽게 작동하는 cron @reboot를 설정하여 컴퓨터를 부팅 할 때마다 실행됩니다. 전압이 일정 수준 이하가되면
은 지금은 시리얼 출력에 경고를 보냅니다 "배터리 가드"로 아두 이노 코드를 확장 할 계획 OrangePI는 중단해야이 시점에서
20.0/9.0 V/BAT!
/종료 및 arduino가 릴레이를 비활성화하고 전체 시스템을 끌 수 있도록 "종료 안전"상태 인 경우 arduino에 특정 문자를 보냅니다.
그래서 OrangePI는 항상 "BAT!"문자열의 arduino 출력에서 마지막 줄을보아야한다고 가정합니다. 그런 다음 종료를 트리거합니다.
나는 또한이 프로젝트 아두 이노 코드
에 대한 개념 그러나 리눅스에서 코딩하는 방법에 대한 어떤 생각의 harware 부분에 대한 개념을 가지고있다. 어쩌면 접근법이 잘못되었거나 모든 것이 파이썬이나 다른 것으로 코딩되어야 할 것 같은가?
의견을 보내 주셔서 감사합니다.
이것은 * Python *처럼 보이지 않습니다. 사실 * Bash * 스크립트입니다. –
그 파이썬이 아니고, 질문입니다.이 모든 것을 bash에서 관리 할 수 있습니까? 아니면이 모든 것을 파이썬으로 다시 작성해야합니까? 가능하다면 C 나 (arduino 때문에) – Georg91