7주차, 2022.10.19 임베디드 시스템 수업 보고서 - Teddysir/rasberrypi GitHub Wiki

라즈베리파이와 Node-Red를 카메라와 연동하여 촬영하기


1. 라즈베리파이에 접속 후 fswebcam 설치

image

sudo apt install fswebcam

위 와 같은 명령어를 입력하여 설치하여줍니다.

카메라를 실행시키기 위한 명령어 입니다.

2. 노드레드 접속 후 팔렛트 설치 과정

image

image

image

노드레드 접속후 팔렛트 관리에 들어간 후

base64를 검색후 팔렛트를 설치해줍니다.

위 팔렛트는 여러 객체를 base64형태로 변환 및 포멧시켜 사용할 수 있도록 해주는 팔렛트 입니다.

image

또 다른 팔렛트로 image-output을 검색 후 설치해줍니다.

위 팔렛트는 base64로 포멧시킨 이미지 형식을 미리보기로 출력해주는 팔렛트입니다.

image

마지막 팔렛트 설치로는 usbcamera를 검색 후 설치해줍니다.

위 팔렛트는 usb카메라로 촬영한 이미지를 가져와 주는 팔렛트입니다.

3. inject, rpi-dht22 노드 구성

image

image

위 사진과 같이 inject 노드를 가져와 아무런 설정을 않고 가져다줍니다.

rpi-dht22 노드는 위 와 같이 설정해줍니다.

4. usbcamera 노드 구성

image

image

위 사진과 같이 usbcamera 노드 설정을 buffer 형식으로 바꾸어 줍니다.

사진을 buffer 형식으로 받아온다는 의미입니다.

5. image preview 노드 구성

image

image preview 노드를 설정 없이 놓아줍니다.

6. 테스트 이미지 출력

image

우선 배포를해줍니다.

image

이후 inject 버튼을 누르게 되면 찍은 사진이 출력됩니다.

7. base64 노드 구성

image

위 와 같이 base64 노드를 끌어와 usbcamera 노드와 연결해준 후 추가적인 설정은 해주지 않습니다.

8. templete 노드 구성

image

image

위 와 같이 templete 노드를 설정해 주기 위해 더블클릭 후 다음과 같은 코드를 입력해줍니다.

<img width="320" height="240" src="data:image/png;base64,{{payload}}">

8-1. 대쉬보드 templete 노드 구성

image

image

대쉬보드 templete 노드를 구성해준 후 위 사진과 같이 그룹 설정 및 사이즈를 지정해줍니다.

9. 대시보드 이미지 출력

image

배포하기를 눌러 배포해줍니다.

image

아까와 같이 inject를 누르게 되면 사진이 출력이됩니다.

이제 대쉬보드에도 잘 출력이 되는지 확인해야합니다.

image

image

image

위 와 같은 과정으로 대쉬보드에도 출력이 잘 되는지 확인해줍니다.

잘 출력이 된다면 위 와 같이 작동이 됩니다.

10. slider 노드 구성

image

image

위 와 같이 slider 노드를 갖고와 설정해줍니다.

11. text 노드 구성

image

image

위 와 같이 설정해주면서 label value를 선택해줍니다.

12. 대쉬보드 UI 확인

image

위 와 같이 배포해줍니다.

image

대쉬보드를 확인해보면 slider 위젯, text 위젯이 대쉬보드에 출력되는것을 확인 할 수 있습니다.