산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

전시:원시 전시

전시:기본 디스플레이 이 매우 간단한 프로팁은 LCD를 Raspberry Pi에 연결하여 온도 센서의 판독값과 같은 필요한 모든 데이터를 표시합니다.

스토리

소개

LCD는 모든 프로젝트에 매우 유용한 추가 기능입니다. 이 매우 간단한 프로팁은 LCD를 Raspberry Pi에 연결하여 필요한 모든 데이터를 표시합니다. 우리의 경우 온도 센서의 판독값을 표시합니다.

하드웨어

저렴한 HDD44780 호환 LCD, Raspberry Pi 3 및 온도 및 습도 센서 DHT11, 마이크로 SD 카드 및 전원, 1-2개의 전위차계, 브레드보드 및 일부 전선이 필요합니다. 이 키트에는 LCD, 브레드보드, 전선, 전위차계 및 센서가 포함되어 있습니다. 우리는 6개의 GPIO 핀을 사용하여 LCD를 연결할 것입니다. I2C를 사용하여 연결하는 방법이 있지만 이것이 가장 직접적인 방법이며 중요한 이점이 있습니다.


연결하기

LCD 화면을 연결하는 몇 가지 옵션이 있습니다. 하나의 전위차계를 사용하여 대비 및 밝기를 처리하는 간단한 4비트 연결과 2개의 전위차계로 대비 및 밝기에 대한 고급 제어가 가능한 좀 더 복잡한 8비트 연결입니다. 전위차계는 1K 또는 3K Ohm 저항으로 교체할 수도 있습니다.

각 문자와 명령은 데이터의 바이트(8비트)로 LCD에 전송됩니다. 따라서 4비트 모드에서 바이트는 4개의 데이터 와이어를 통해 차례로 전송되는 4비트의 두 세트로 분할됩니다. 이론상 8비트 모드는 4비트 모드보다 두 배 빠른 속도로 데이터를 전송합니다. 전체 바이트가 8개의 데이터 와이어를 통해 한 번에 모두 전송되기 때문입니다. 그러나 LCD 드라이버는 데이터를 처리하는 데 상대적으로 시간이 오래 걸리므로 어떤 모드를 사용하든 8비트와 4비트 모드 간의 데이터 전송 속도의 실질적인 차이를 느끼지 못할 것입니다.

LCD 핀 레이아웃

데이터 핀 (DB0-7 핀 7-14)은 간단합니다. 그들은 디스플레이에 데이터를 보내고 있습니다(높음/낮음 전환). 쓰기 모드만 사용하고 데이터를 읽지 않습니다.

등록 선택 핀 (RS 핀 4)는 두 가지 용도가 있습니다. 낮추면 LCD에 명령을 보낼 수 있습니다(예:이동할 위치 또는 화면 지우기). 이를 명령 또는 명령 레지스터에 쓰거나 화면에 데이터를 전송한다고 합니다.

읽기/쓰기 핀 (R/W 핀 5)는 이 프로팁에서 LCD에만 쓰기 때문에 로우(쓰기 전용)로 당겨집니다.

활성화 핀 (E 핀 6)은 레지스터에 데이터를 쓰도록 토글됩니다.

간단한 LCD 연결

간단한 LCD 연결 회로도

고급 LCD 연결

고급 LCD 연결 회로도

흥미로움:

이제 2개의 전위차계가 있습니다. 왼쪽은 대비를 담당하고 오른쪽은 밝기를 담당합니다. 밝기를 담당하는 두 번째 전위차계가 있기 때문에 추가 전압 처리가 필요하지 않기 때문에 대비 전위차계에서 5V 와이어(빨간색 하나)를 제거했음을 알 수 있습니다.

DHT11 센서 연결

DHT11 센서는 3개 또는 4개의 핀 옵션을 가질 수 있지만 어떤 경우에도 3개의 핀만 사용하여 데이터를 읽기 때문에 문제가 되지 않습니다. 4개의 핀 센서가 있는 경우 Vcc, 신호만 연결해야 합니다. /Data 및 Ground 핀을 제거하고 네 번째 핀을 무시하십시오. 위의 회로도에서 4핀 센서 연결을 볼 수 있습니다.

DHT11 센서:3 및 4 핀 옵션

중요:

DHT11 센서에는 3.3V ~ 5V가 필요합니다. 먼저 DHT11 센서를 3.3V Raspberry Pi 핀 1에 연결해 보겠습니다. 작동하는 경우 이 전압이면 충분합니다. 판독값이 이상하거나 판독값이 전혀 없으면 5V Raspberry Pi 핀 2에 연결해 봅니다. 이 프로팁은 3.3V를 사용합니다.

지금까지는 Vcc와 접지 핀을 연결한 후 센서의 신호 커넥터를 Raspberry Pi 물리적 핀 12(GPIO 18)에 연결해야 합니다.

필수 라이브러리

정확한 코딩을 진행하기 전에 디스플레이 및 센서에 필요한 라이브러리가 있는지 다시 확인하고 누락된 경우 설치해야 합니다.

다시 확인하기 위해(약간의 편집증 :)) 필요한 모든 Python 항목이 있습니다.

sudo apt-get install build-essential python-dev

RPLCD 파이썬 라이브러리

RPLCD 라이브러리는 Python 패키지 색인 또는 PIP에서 설치할 수 있습니다. Raspbian에 이미 설치되어 있을 수 있지만 그렇지 않은 경우 다음 명령을 실행하여 설치하십시오.

sudo apt-get install python-pip

PIP를 설치한 후 다음을 입력하여 RPLCD 라이브러리를 설치합니다.

sudo pip install RPLCD

Adafruit DHT11 Python 라이브러리

Adafruit DHT11 Python 라이브러리를 사용하고 있습니다. Git을 사용하여 라이브러리를 다운로드할 수 있으므로 Raspberry Pi에 Git이 설치되어 있지 않은 경우 다음 명령을 실행하십시오.

sudo apt-get install git

또는 다음을 시도할 수 있습니다.

sudo apt-get install git-core

중요:

대체 Git 설치에 오류가 발생하면 다음을 실행하세요.

sudo apt-get 업데이트
sudo apt-get install git-core

이제 Git에서 라이브러리를 다운로드하는 명령을 실행합니다.

자식 클론 https://github.com/adafruit/Adafruit_Python_DHT.git

다음을 사용하여 새 디렉토리로 이동:

cd Adafruit_Python_DHT

다음으로 라이브러리를 설치합니다.

sudo 파이썬 setup.py 설치

스크립팅으로 이동합니다.

Python 스크립트

파이썬을 사용하여 디스플레이와 센서를 프로그래밍할 것입니다. 저는 Visual Studio를 IDE로 사용하지만 작업하고 싶은 다른 무엇이든 사용할 수 있습니다.

먼저 SSH를 통해 Pi에 연결해야 합니다(예:PuTTY 사용). 그런 다음 temperature.py라는 스크립트를 사용합니다.

스크립트를 생성하기 위해 나노 편집기를 사용할 수 있습니다. Pi에 연결한 후 다음 명령을 실행하여 temperature.py라는 파일을 만듭니다.

sudo 나노 온도.py

그런 다음 다음 코드(8비트 옵션)를 해당 파일에 붙여넣고 CTRL-X를 눌러 종료하고 Y를 눌러 메시지가 표시되면 저장하십시오.

#!/usr/bin/python
RPi.GPIO를 GPIO로 가져오기
시간 가져오기
Adafruit_DHT 가져오기
RPLCD에서 가져오기 CharLCD
# 빌드된 RPi.GPIO를 호출합니다. -in function GPIO.cleanup() 우리가 사용한 모든 포트를 정리합니다
GPIO.cleanup()
# 이제 LCD 디스플레이 핀을 설정합니다(8비트 모드)
lcd =CharLCD (numbering_mode=GPIO.BOARD, cols=16, rows=2, pin_rs=37, pin_e=35, pin_data=[40, 38, 36, 32, 33, 31, 29, 23])
# senosr 가져오기 판독값을 읽고 루프에서 렌더링합니다.
while True:
# 센서 판독값 가져오기
# 중요:11은 센서 유형(DHT11)이고 18은 GPIO 번호(또는 물리적 핀 12)입니다.
습도, 온도 =Adafruit_DHT.read_retry(11, 18)
print('Temp:{0:0.1f} C 습도:{1:0.1f} %'.format(온도, 습도))
# LCD 디스플레이의 초기 커서 위치 지우기 및 설정
lcd.clear()
lcd.cursor_pos =(0, 0)
# 온도 판독값 렌더링
lcd.write_string(“ Temp:%d C” % temperature)
# 커서를 두 번째 행으로 이동
lcd.cursor_pos =(1, 0)
# 습도 판독값 렌더링
lcd.write_string(“습도:%d %%” % 습도)
# 5초 동안 실행 일시 중지
time.sleep(5)

위의 예는 BCM 또는 GPIO 번호가 아닌 LCD 디스플레이용 Raspberry Pi의 물리적 핀 번호와 함께 8비트 연결 옵션을 사용합니다. 위의 다이어그램과 같은 방식으로 LCD를 연결했다고 가정하지만 필요한 경우 항상 핀을 변경할 수 있습니다. 간단한 4비트 연결 코드는 코드 섹션에 첨부되어 있습니다.

자세히 보기:전시:원시 전시


제조공정

  1. 롤링 핀
  2. 볼링 핀
  3. 액정 디스플레이(LCD)
  4. Linux 장치 드라이버 개발:핀 제어 하위 시스템
  5. 드론 파이
  6. Dedge The Defs!
  7. 휴대용 점자 디스플레이의 5W
  8. 74LS74:이중 플립플롭에 대한 포괄적인 가이드
  9. 2017 WIN Expo에 전시할 Atlas Copco
  10. 아트라스콥코, NPE2018:The Plastics Show에 전시