>

Raspberry Pi 3(debain stretch 실행)이 릴레이 보드에 연결되어 있습니다.

두 개의 Python 스크립트가 켜거나 끕니다. 스크립트를 수동으로 실행할 때 crontab에서 "on"만 수행하면 작동하는 것 같습니다. 내가 뭘 잘못했는지 알 수 없습니다.

일부 게시물을 읽었으며 shebang을 포함하고 파일을 쓸 수있게 만들었습니다 ...

on.py

#!/usr/bin/python3
from gpiozero import OutputDevice
light = OutputDevice(2)
light.on()

off.py

#!/usr/bin/python3
from gpiozero import OutputDevice
light = OutputDevice(2)
light.off()

" crontab -e 에서

"내가 작성했습니다 :

0 11 * * * /home/pi/Desktop/off.py

  • 답변 # 1

    파이썬이 보는 것처럼 오류의 자세한 텍스트를 트랩하십시오. 이 업데이트 된 버전의 크론은 트릭을 수행해야합니다.

    0 11 * * * /home/pi/Desktop/off.py 1> /tmp/myerr.txt 2>&1
    
    

    ... 그리고 다시 실패하면 텍스트 편집기를 사용하여 /tmp/myerr.txt에 오류 메시지가 있는지 확인하십시오.

    파이썬이 gpio 라이브러리를 찾거나 실행하는 데 오류가있는 경우 다음 제안이 도움이됩니다.

    파이썬에게 사용중인 라이브러리의 위치를 ​​알려주는 한 가지 방법은 다음과 같습니다.

    PYTHONPATH=/foo/bar/baz python somescript.py somecommand
    
    

    이 투표에 대한 답변에 자세히 설명되어 있습니다.

    cron 호출과 수동 호출 모두에서 PYTHONPATH의 파일/폴더에 대한 절대 경로를 사용해야합니다. 이렇게하면 상대 경로 문제로 인해 cron이 라이브러리를 찾지 못할 가능성이 사라집니다.

    PYTHONPATH의 대안으로 여기에 설명 된대로 sys.path.append를 사용할 수 있습니다.

    이 링크와이 링크는 gpiozero 설치 문제에 도움이 될 수 있습니다.

관련 자료

  • 이전 전체 화면 안드로이드
  • 다음 php - 클래스 메소드 리턴 값에 대한 올바른 주석