본문 바로가기

라즈베리파이

5. WebIOPi을 활용한 라즈베리파이 LED 제어


WebIOPi을 활용한 라즈베리파이 LED 제어

WebIOPi는 라즈베리파이에서 코드 작성 없이 웹브라우저(Web Browser) 또는 앱(App)에서 라즈베리파이의 GPIO 핀을 직접 제어할 수 있다.

WebIOPi 개념


이 외에도 센서 또는 Converter 등 다양한 기능을 제어, 디버깅 할 수 있다.


가장 장점은 웹 페이지에서 GPIO 핀을 빠르게 디버깅하고 제어가 가능한 것이다.


라즈베리파이에서 코드 작성 없이 웹 페이지에서 LED를 On/Off 제어하기 위해서 우선 라즈베리파이에 WebIOPi를 설치하여야 한다.


터미널 창을 열고 하나 씩 실행해보자.


1. WebIOPi를 다운로드 하기

pi@raspberrypi:~ $ sudo wget http://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz


2. 다운로드 받은 파일 압축 풀기

pi@raspberrypi:~ $ sudo tar xvzf WebIOPi-0.7.1.tar.gz


3. 압축 푼 폴더로 이동하기

pi@raspberrypi:~ $ cd WebIOPi-0.7.1

pi@raspberrypi:~/WebIOPi-0.7.1 $ 


4. 라즈베리파이 B+를 위해 파일 패치하기
pi@raspberrypi:~/WebIOPi-0.7.1 $ sudo wget https://raw.githubusercontent.com/doublebind/raspi/master/webiopi-pi2bplus.patch


pi@raspberrypi:~/WebIOPi-0.7.1 $ sodu patch -p1 -i webiopi-pi2bplus.patch


5. 설치 파일 실행하기

pi@raspberrypi:~/WebIOPi-0.7.1 $ sudo sudo ./setup.sh


6. [y/n] 선택 요청 시 : y 입력

7. 재 부팅 실시
pi@raspberrypi:~/WebIOPi-0.7.1 $ sodo reboot

8. 터미널 창을 열어서 WebIOPi 실행하기
pi@raspberrypi:~ $ sudo /etc/init.d/webiopi start

◆ 여기서 잠깐 ! !  ☞ WebIOPi 시작하고 종료하기 


[시작하기] $ sudo /etc/init.d/webiopi start

[종료하기] $ sudo /etc/init.d/webiopi stop

[부팅 시 자동 실행하기] $ sudo update -rc.d webiopi defaults

[부팅 시 자동 실행 해제] $ sudo update -rc.d webiopi remove


9. 인터넷 창을 열어서 주소 자리에 라즈베리파이의 IP 와 포트(port) 번호(8000)을 입력 한다.

http://192.168.219.103:8000 (※ 192.168.219.103 대신에 본인의 라즈베리파이 IP를 입력)


10. 아이디와 비밀번호 입력하기

별도로 아이디와 비밀번호를 변경하지 않았다면 초기 값으로 다음과 같이 설정되어 있어요.

 - 아이디 : webiopi

 - 비밀번호 : raspberry



아래의 페이지를 볼 수 있어요.

WebIOPi Main Menu

네트워크에 연결된 다른 장치(PC 또는 스마트폰)의 웹 브라우저에서도 http:라즈베리파이 IP:8000/으로 주소 창에 입력하면 똑같은 화면을 볼 수가 있어요 


WebIOPi Main Menu는 다음과 같이 총 4개의 링크로 구성되어 있습니다.

GPIO Header

GPIO List

Serial Monitor

Devices Monitor


WebIOPi Main Menu 페이지에서 GPIO Header 링크를 클릭하면 라즈베리파이 보드의 GPIO 핀의 UI를 볼 수 있습니다.

WebIOPi GPIO Header


◆ GPIO 핀의 입력/출력을 변경 - OUT 또는 IN 이라 적힌 버튼을 클릭

    IN을 클릭하면 OUT으로 변경되고 OUT을 클릭하면 IN으로 변경됩니다.

    WebIOPi In Out 버튼


◆ GPIO 핀의 Low/High 상태를 변경 - 핀 번호가 적힌 버튼을 클릭

    버튼의 배경 색이 검은색에서 주황색으로 변경되고 한 번 더 클릭하면 주황색에서 검은색으로 변경됩니다.

    WebIOPi Port 선택시 활성화




여기까지 확인되었으면 실제 하드웨어를 구성하고 웹 브라우저에서 버튼을 클릭했을 때 LED가 On / Off 되는지 확인해보자.


1. 라즈베리파이 GPIO17 핀에 적색 LED 연결한다.

gpio17 LED



2. 라즈베리파이 터미널에서 WebIOPi를 실행한다.

webiopi start



3. 스마트폰 또는 PC 또는 라즈베리파이에서 웹 브라우저의 주소 창에 http:라즈베리파이 IP:8000/ 입력한다.

webio main menu 화면



4. WebIOPi Main Menu에서 GPOI Header 링크를 선택 후 GPIO17 핀에 IN을 클릭하여 OUT 변경하고 GPIO17 오른쪽 11이라 적힌 버튼을 클릭한다.

webiopi_버튼


5. 라즈베리파이 GPIO17에 연결된 실제 LED가 ON된다. 

   

6. 한 번 더 클릭하면 LED가 Off된다.


지금까지 따라 진행하면서 궁금한 점이 있으면 댓글 주세요~