>

라즈베리 파이를 사용하여 기상 관측소를 만들고 있으며 풍향 센서 (12 비트 ADS1015 아날로그-디지털 변환기를 통해 수신 대기 중)를 추가하려고합니다. 파이썬 에서이 작업을 수행하는 방법에 대해 한동안 둘러 보았지만 원시 값을 실제 바람 방향으로도 단위로 변환하기 위해 arduino에서 작동하는 1 조각의 코드 만 얻을 수있었습니다.

이제 라즈베리 파이에서 파이썬으로 같은 일을하고 싶습니다.

라즈베리 파이에서 3.3V에 연결된 12 비트 ADC를 사용한다고 가정하면 ADC에서 원시 신호를 어떻게 변환합니까 ( adc_value = adc.read_adc(1, gain = 1) 를 사용하여 얻음)  ADC의 Adafruit 라이브러리를 사용하여 실제 바람 방향으로도? 센서의 아날로그 전압은 입력 전압의 5 % (0도 표시)에서 입력 전압의 95 % (360도 표시)까지입니다. 지도를 작성하는 방법을 잘 모르겠습니다.

  • 답변 # 1

    스프레드 시트에서 약간의 모델링을 수행했는데, 이는 과거에 이러한 장치에 대한 선형 매핑을 도출 한 방법입니다. 범위에 걸쳐 선형성을 가정합니다 :

    그래프 및 표는 데이터 시트에 따라 잠재적 ADC 값의 5 %에서 95 %까지 다양한 선형 범위를 보여줍니다. 고점과 저점을 기록한 후 20 도마 다 델타 ADC를 계산했습니다. 그런 다음이를 플로팅하고 결과적인y = mx + b수식과 함께 선형 추세선을 포함 시켰습니다. 사용해야하는 원시 ADC 값 (3.3V 기준)에 대한 변환 공식입니다.

    이제 Pi의 파이썬 에서이 작업을 수행하는 방법에 관해서는 또 다른 문제입니다. 사용중인 장치는 I2C 장치입니다. 이 주제에 대한 많은 자습서가 있습니다.

    <올>

    먼저 Pi의 Linux에서 I2C를 활성화해야합니다.

    I2C 장치 구성 및 배선에 대한 온라인 자습서를 참조하십시오. 기기 용 Digikey의 데이터 시트는 시작하기에 좋은 장소입니다.

    핀으로 선택한 주소를 사용하여 예를 들어 온라인에서 널리 사용 가능한 Python 라이브러리를 사용하여 장치를 읽습니다.

  • 이전 Ubuntu에서 키를 사용하여 Github에 복제하고 읽고 쓰는 방법은 무엇입니까?
  • 다음 java - 다른 클래스에서 arraylist 목록이 인식되지 않습니다