제조공정
Pi 설정 수분 센서를 읽고 필요할 때 물을 주어 자동으로 집 식물을 돌봅니다.
이 게시물은 다음 두 가지 사실로 시작됩니다.
실내에서 식물이 얼마나 잘 자랄 수 있는지 읽은 후 자동화가 건강한 식물로 가는 길이라고 생각하기 시작했습니다. 그래서 나는 최소한의 것을 만들기로 결정했습니다. 식물, 펌프, 물 센서를 구입하는 것입니다. 물 센서가 "여기에 물이 없습니다"라고 표시되면 펌프를 사용하여 물을 거기에 넣으세요.
또한 RPi GPIO와 상호 작용하기 위한 핑계로 Raspberry Pi를 통해 모든 것을 실행하기로 결정했습니다.
제가 해낸 방법입니다!
가장 먼저 한 일은 USB 케이블로 5V 전원 공급 장치를 만드는 것이었습니다. 나는 오래된 아이폰 케이블을 사용하여 아이폰 측면을 잘라내고 빨간색과 검은색 와이어를 낚아챘다. 나는 이것에 더 튼튼한 전선을 납땜하고 벽 어댑터에 꽂았습니다. 전압계로 확인해보니 5V 출력이 나왔다.
이제 GPIO를 사용할 시간입니다.
이 GPIO 레이아웃을 따름:
물 센서 – 물 센서의 양극 리드를 핀 2에 연결하고 음극 리드를 핀 6에 연결합니다. 신호 와이어(노란색)를 핀 8에 연결합니다.
릴레이 - 핀 7의 양극 리드를 릴레이 보드의 IN1에 연결합니다. 또한 핀 2를 VCC에 연결하고 핀 5를 릴레이 보드의 GND에 연결합니다.
펌프 – 펌프를 전원에 연결하고 계전기 모듈 1의 슬롯 B와 C 사이에 검은색 접지선을 연결합니다(RPi가 핀 1에 0v의 LOW 신호를 보내면 닫힙니다. 펌프를 켜는 회로).
이 다이어그램은 Raspberry Pi 3를 사용하는 한 올바른 GPIO를 캡처해야 합니다. RPi의 다른 전원은 표시되지 않습니다.
배선이 완료되면 플랙시블 호스를 펌프에 부착하고(전 전기 테이프 사용) 물병에 떨어뜨립니다. 호스의 다른 쪽 끝을 식물에 연결합니다.
이제 모든 전원을 연결합니다(그리고 Raspberry Pi가 여기에서 이와 같은 일부 버전의 운영 체제를 실행하고 있는지 확인하세요).
참고:위에서 설명한 대로 배선이 정확하게 이루어지면 다음 섹션의 코드는 수정 없이 작동합니다. 이 설정에는 두 부분이 있습니다. 한 파일은 모든 GPIO 및 회로 로직을 제어하고 다른 파일은 로컬 웹 서버를 실행합니다.
모든 파일:
GPIO를 제어하는 코드부터 시작하겠습니다. 이를 위해서는 다음과 같이 Raspberry Pi에 설치할 수 있는 RPi.GPIO python 라이브러리가 필요합니다.
$> python3.4 -m pip install RPi.GPIO
이를 설치하면 여기에서 찾을 수 있는 water.py 스크립트를 사용할 수 있습니다. 다음과 같이 대화형 Python 세션을 실행하여 이것이 올바르게 작동하는지 테스트할 수 있습니다.
$> python3.4>>> import water>>> water.get_status()>>> water.pump_on() 이는 센서가 젖었는지 건조한지(get_status())에 대한 설명을 인쇄하고 전원을 켜야 합니다. 1 초 동안 펌프. 이러한 작업이 예상대로 작동하면 상태가 양호한 것입니다.
이 시점에서 물 센서를 보정할 수도 있습니다. 식물 상태가 올바르지 않은 경우 2차 표시등이 켜질 때까지 축축한 토양에 있는 동안 센서의 작은 나사(전위차계)를 돌려보십시오.
이 프로젝트의 다음 측면은 웹 서버를 설정하는 것입니다. 이 코드는 여기 web_plants.py라는 파일에서 찾을 수 있습니다. 이 python 스크립트는 위에서 설명한 스크립트에서 다양한 작업을 가능하게 하는 웹 서버를 실행합니다.
위에서 설명한 water.py 및 auto_water.py와 같은 디렉토리에 web_plants.py를 보관해야 합니다. 여기에 main.html이라는 html 파일이 포함된 '템플릿'이라는 하위 디렉터리도 필요합니다.
플라스크와 psutil을 다음과 같이 설치해야 합니다.
$> python3.4 -m pip 설치 플라스크 $> python3.4 -m pip 설치 psutil
위의 water.py 스크립트와 동일한 디렉토리에 web_plants.py 파일을 배치해야 합니다. 또한 템플릿이라는 하위 디렉터리를 만들고 템플릿 디렉터리에 main.html을 배치해야 합니다. 이제 다음 명령을 실행하여 웹 서버를 시작하십시오.
$> sudo python3.4 web_plants.py 이제 RPi의 IP 주소로 이동하면 다음과 같은 웹 대시보드가 표시되어야 합니다.
버튼을 클릭하여 모든 것이 예상대로 작동하는지 확인하십시오! 그렇다면 경주에 참가한 것입니다. 플라스크 + GPIO에 대한 또 다른 훌륭한 튜토리얼이 있습니다.
마지막으로 RPi가 켜지면 웹사이트가 자동으로 시작되기를 원할 것입니다. 이는 웹사이트를 시작 명령으로 등록하는 cronjob이라는 도구를 사용하여 수행할 수 있습니다.
이렇게 하려면 다음을 입력하십시오.
$> sudo crontab -e
텍스트 편집기가 나타납니다. 다음과 같은 한 줄을 추가합니다(그리고 아래에 한 줄은 비어 있어야 함).
@reboot cd
이제 파이를 재부팅하면 서버가 자동으로 시작됩니다.
자세히 보기:웹사이트를 통한 라즈베리 파이 자동 식물 급수
제조공정
구성품 및 소모품 Arduino UNO × 1 라즈베리 파이 2 모델 B 어떤 것이든 작동해야 함 × 1 라즈베리 파이 카메라 모듈 × 1 Arduino 이더넷 쉴드 2 × 1 릴레이(일반) × 1 OpenBuilds 유선 케이블 - 도보 × 1 포토 저항기 × 1 워터 펌프(일반) × 1 팬(일반) 오래된 컴퓨터의 것을 사용했습니다. × 1 범용 트랜지스터 NPN
구성품 및 소모품 토양 수분 센서 아날로그 출력이 있는 모든 토양 수분 센서를 사용할 수 있습니다. 두 개의 전극과 전압 분배기도 사용할 수 있습니다. 선택 사항입니다. × 2 레인 센서 × 1 우유 용기 물을 담을 수 있고 절단할 수 있고 표면에 고정할 수 있는 모든 용기가 적합합니다. 높은 표면에 장착해야 합니다. × 1 부드러운 플라스틱 유연한 중공 튜빙 어떤 종류의 튜빙도 가능합니다. 나는 매우 유연하고 중앙이 비어 있기 때문에 끝이 잘린 줄넘기를 사용했습니다.