액츄레이터(LED, 물펌프, 산소발생기, 로봇컨베이어)
from flask import Flask, render_template, request
import requests as req
import time
import RPi.GPIO as gp
btn=req.get("get방식으로 받을 서버주소")
print(btn)
btn.text
print(btn.text)
act1 = btn.text[0]
act2 = btn.text[1]
act3 = btn.text[2]
act4 = btn.text[3]
gp.setmode(gp.BCM)
gp.setup(17, gp.OUT)
gp.setup(18, gp.OUT)
gp.setup(22, gp.OUT)
gp.setup(23, gp.OUT)
while(1) :
gp.output(17, act1)
gp.output(18, act2)
gp.output(22, act3)
gp.output(23, act4)
delay(2000)
gp.cleanup()
--------------------------사용할 라이브러리------------------------
from flask import Flask, render_template, request # flask, request 라이브러리
import requests as req request 받을 라이브러리
import time delay를 사용할 time 라이브러리
import RPi.GPIO as gp GPIO핀을 사용할 gp 라이브러리
------------------------------------------------------------------------
서버응답코드
btn=req.get("get방식으로 받을 서버주소") # btn = 서버응답코드 200 이면 성공
print(btn)
btn.text # 서버에서 받은 내용 문자열 출력
print(btn.text)
------------ 받은 값을 인덱싱하여 act1~4(액츄레이터)까지로 저장 ------------
act1 = btn.text[0]
act2 = btn.text[1]
act3 = btn.text[2]
act4 = btn.text[3]
라즈베리파이의 GPIO핀번호
gp.setmode(gp.BCM) # BCM타입으로 핀번호 설정
------------------- 17, 18, 22, 23번 핀을 출력핀으로 설정-----------------
gp.setup(17, gp.OUT)
gp.setup(18, gp.OUT)
gp.setup(22, gp.OUT)
gp.setup(23, gp.OUT)
while(1) : # 무한루프로 서버값을 받아옴
gp.output(17, act1) # (act1의 값(0,1)에 따라 17번핀 출력)
gp.output(18, act2) # (act2의 값(0,1)에 따라 18번핀 출력)
gp.output(22, act3) # (act3의 값(0,1)에 따라 22번핀 출력)
gp.output(23, act4) # (act4의 값(0,1)에 따라 23번핀 출력)
delay(2000)
gp.cleanup() # 파이썬 프로그램 안에서 초기화했던 핀 설정들을 모두 '청소'(clean up)해주는 기능
'개발 공부 > 프로젝트' 카테고리의 다른 글
flask에서 request.args.get()의 의미 (0) | 2023.11.23 |
---|---|
프로젝트 : 적외선 송신기 만들기3 (0) | 2023.10.20 |
프로젝트 : 적외선 송신기 만들기2 (0) | 2023.10.20 |
프로젝트 : 적외선 송신기 만들기1 (0) | 2023.10.20 |
프로젝트 ESP32를 이용해 센서값 서버로 보내기(map 함수를 이용한 % 변경) (0) | 2023.10.20 |