2014-10-07 3 views
3

그래서 DHT22 습도 센서를 BeagleBone Black Rev C에 올바르게 연결했습니다. Macbook Pro에서 OS 매버릭스를 실행 중이며 Adafruit에서 제공 한 지침에 따라 DHT22를 사용합니다.DHT22 센서 가져 오기 Adafruit_DHT 오류

내가 사용

웹 사이트는 꽤 분명했다 : https://learn.adafruit.com/dht-humidity-sensing-on-raspberry-pi-with-gdocs-logging/software-install-updated

또한 여기에 내가 클로닝 GitHub의 파일입니다 : https://github.com/adafruit/Adafruit_Python_DHT

나는이 줄에 넣어 :

git clone https://github.com/adafruit/Adafruit_Python_DHT.git 

cd Adafruit_Python_DHT 

sudo apt-get upgrade 

sudo apt-get install build-essential python-dev 

sudo python setup.py install 

cd examples 

sudo ./AdafruitDHT.py 22 P8_11 

마지막 줄까지 성공했습니다. 나는 것을 입력하면 마지막 줄 (sudo는 ./AdafruitDHT.py 22 P8_11), 나는 다음과 같은 오류 메시지가 얻을 : Adafruit_DHT 파일이 어딘가에 내가 아는

Traceback (most recent call last): 
    File "./AdafruitDHT.py", line 23, in <module> 
    import Adafruit_DHT 
ImportError: No module named Adafruit_DHT 

가있는 Adafruit_Python_DHT 디렉토리에있는 I LS, 내가 얻을 때 때문에 이 :

[email protected]:~/Adafruit_Python_DHT# ls 
Adafruit_DHT examples ez_setup.py ez_setup.pyc LICENSE README.md setup.py source 

나는 setup.py를 재설치하려했지만 결과는 여전히 동일하다.

나는 Adafruit이 제공 한 모든 지시 사항을 따라 왔지만, 나는 이것을 지나갈 수없는 것 같습니다. 무슨 일이 벌어지고 있는지에 대한 어떤 생각? 그것은 단순한 문제처럼 보입니다. 그러나 DHT22를 읽는 데있어서 하나의 큰 장애물이 될 수 있습니다. 이 문제를 해결하는 데 도움이되는 정보가 더 있으면 알려주십시오.

답변

0

스크립트가 "Adafruit_DHT"모듈을 찾을 수없는 것 같습니다. 두 가지 방법이 있습니다.

  1. 은 스크립트의 첫 번째 줄에 다음 코드를 추가 "파이썬 Adafruit_Python_DHT"

  2. 과 같이 터미널에서 파일을 실행합니다. Should I put #! (shebang) in Python scripts, and what form should it take?

+0

나는 많은 도움을 주셔서 감사합니다. 나는 당신이 말한대로 "파이썬 Adafruit_Python_DHT"로 터미널에서 파일을 실행하여 {/ usr/bin/python : Adafruit_Python_DHT에서 '_____main_____'모듈을 찾을 수 없음} 성공적으로 BMP180 센서를 실행했습니다. Adafruit의 코드로 나의 beagleboneblack에서 나는 _____main_____ 모듈을 가지고 있지 않다는 것을 알았습니다 .Adafruit은 "이 튜토리얼은 DHT 인터페이스 드라이버를 개발하는 첫 번째 시도입니다. 작동이 보장되지 않으며 실험 및 해킹을위한 것입니다! " 그래서 이것이 작동하지 않는 이유라고 생각합니다. 일반적으로 많은 것들이 빠져 있습니다.좋아 – FooLingYu2

+0

, 당신이 시도하고 추가 할 수 있습니다 __name__ == '__main__'의 경우 : 주()이 Adafruti의 코드에서 두 줄 "__main__"/ 주() 다른 이름에있을 수 있습니다. – PSone

+0

어떻게 추가 할 수 있는지 이해할 수 없습니다. 가져 오기 전에 Adafruit_DHT를 추가 하시겠습니까? 두 줄은 무슨 소리 야? 경우 __name__ == '__main__': 주() 수입 Adafruit_DHT – FooLingYu2

0

좋아 는, "sudo는"이 스크립트를 실행 해보십시오.

import sys 
import Adafruit_DHT 

def main(): 
    sensor_args = { '11': Adafruit_DHT.DHT11, 
         '22': Adafruit_DHT.DHT22, 
         '2302': Adafruit_DHT.AM2302 } 
    if len(sys.argv) == 3 and sys.argv[1] in sensor_args: 
     sensor = sensor_args[sys.argv[1]] 
     pin = sys.argv[2] 
    else: 
     print 'usage: sudo ./Adafruit_DHT.py [11|22|2302] GPIOpin#' 
     print 'example: sudo ./Adafruit_DHT.py 2302 4 - Read from an AM2302 connected to GPIO #4' 
     sys.exit(1) 

    humidity, temperature = Adafruit_DHT.read_retry(sensor, pin) 

if humidity is not None and temperature is not None: 
    print 'Temp={0:0.1f}*C Humidity={1:0.1f}%'.format(temperature, humidity) 
else: 
    print 'Failed to get reading. Try again!' 

if __name__ == '__main__': 
    main() 
+0

'루트 @의 beaglebone : 마찬가지로 ~ #에서 cd ​​Adafruit_Python_DHT 루트 @의 beaglebone : ~/Adafruit_Python_DHT # CD를 예를 루트 @의 beaglebone : ~/Adafruit_Python_DHT/예 # 나노 hope.py 루트 @의 beaglebone : ~/Adafruit_Python_DHT/예제 # sudo는 파이썬 hope.py 역 추적 (마지막으로 가장 최근 통화) : 수입 Adafruit_DHT에서 파일 "hope.py", 2 호선, ImportError : 모듈 이름이 Adafruit_DHT ' 같은 문제 :/i don Adafruit_BHT가 BMP180 센서에서 정상적으로 작동하면 Adafruit_DHT를 가져올 수없는 이유를 모르겠습니다. 폴더 레이아웃은 매우 유사합니다. 코드 코딩에 누락 된 것이 틀림 없습니다. 노력해 주셔서 감사합니다. – FooLingYu2

+0

btw hope.py에 스크립트를 복사했습니다. – FooLingYu2

+0

드라이버를 다시 설치하면 어떻게됩니까? 어쩌면 그렇게 될 것입니다. – PSone

1

쉬운 수정 :

cd Adafruit_Python_DHT 

sudo apt-get update 

sudo apt-get install build-essential python-dev python-openssl 

sudo python setup.py install 

봅니다 다시

당신은 제대로 설치 프로그램을 실행하는 것을 잊었다 수도 sudo ./AdafruitDHT.py ## ## ... 파일을 실행합니다.