콘테스트 프로젝트 진행 상황
각 Quest를 단계적으로 완성하는 프로젝트입니다.
Quest 1: 계회서 - pico-w를 이용한 생활 알람 시스템
2022.08.02
# 개요
바쁜 아침 출근 시간때에 우산을 챙겨야 하는지, 집앞 정류장버스 또는 지하철 등이 몇분 뒤에 오는지등의 생활 정보를 제공하는 시스템
wifi를 이용해 정보를 웹에서 정보를 수집하고.
led를 이용해 관련 정보를 bit로 출력한다.
향후. pico-w web server를 설정하고. 관련 정보를 제공한다. (현재 관련 지식이 없어 학습을 해야함)
# 시스템 개요
웹 <--> pico w <--> 날씨 LED :: 날씨 맑음 - 녹색 , 비 - 빨간색
<--> 버스 도착 LED :: 10분전 도착 - 2초 점멸후 소등 반복
5분전 도착 - 1초 점멸후 소등 반복
# HW 구성
wifi ap <--> pico w <-- power
<-- 적색 LED_1 :: 날씨 알림용
<-- 녹색 LED :: 날씨 알림용
<-- 적색 LED_2 :: 버스 알림용
# SW 구성
- 기상 정보 수집 모듈
05:00 기준 기상 관련 사이트 접속후, 동네 날씨 정보 수집. (온습도, 강수 확률 등)
관련 정보 분석후, 1) LED 출력. 2) 구글 드라이브에 관련 내용 저장
- 버스 시간표 수집 모듈
05:00 부터 깨어나서 10분 단위로 버스 노선 정보 수집.
관심 버스에 대해 현재 위치, 도착시간 정보 확인후 1) LED 출력. 2) 구글 드라이브에 관련 내용 저장
- 클라우드 저장 모듈 (구글 드라이브)
실시간 데이터 로깅.
로깅 데이터 수량, 용량 확인후 백업 관리.
Quest 2: 좌충우돌 개발 환경 구축...
2022.08.17
# 개발 환경 구축
언어는 python으로 고민중으로. 관련 문서에 따라 구축을 했습니다.
처음에는 windows 환경에서 구축하다가 먼가 잘못된거 같아서 wsl ubuntu20.04 환경으로 변경 구축합니다.
## windows micropython 구성 (참고자료 : Raspberry Pi Pico Python SDK Raspberry Pi Pico Python SDK)
.png)
## vscode 구성 (기존 사용중으로 install 화면은 없습니다)

## wsl (ubuntu 20.04) 환경
micropython 소스 컴파일은 실패하고 apt로 설치했습니다.

# IoT cloud 구성 (참고자료 : Google Sheets for IOT : 4 Steps - Instructables)
google sheet를 이용할 계획입니다. iot cloud의 종류가 다양하고 가격도 복잡해서 기존 사무용으로 사용하고 있는 sheet를 연동할 계획입니다.

아마 23일 웨비나를 보고나면 다른 방식으로도 생각하지 않을까 합니다.
Quest 3: quest3 cloud 연결은 다음 생에...
2022.09.09
구성 : raspberrypi pico w 1ea
시나리오 : 내부 온도센서의 값을 anvil web app을 통해 보여준다.
# anvil 소개 Anvil | Build Web Apps with Nothing but Python
파이썬을 이용해서 간단하게 웹앱구현이 가능하다고 하네요.
## anvil 가입은 간단합니다. 사이트에서 가입하고 가입메일에서 링크를 클릭하면 ok.

## raspberry pi pico w 작업순서
1. anvil 에서 제공하는 fimeware를 다운로드합니다
fimeware 설치중에 pico-w안의 .py file이 어떻게 될지 몰라 백업을 진행합니다.
thonny에 일괄 다운로드가 있네요. 진행이 원할하지 않네요. `취소` 를 클릭하니 local에 파일이 백업된걸 확인했습니다.

2. pico_w 드라이브에 boot.py, main.py가 생겼습니다.

3. boot.py 의 wifi_ssid, wifi_password를 변경합니다.
동작 확인을 위해 hw reset을 했는데. 잘안먹히네요. usb 전원케이블을 다시연결해서 reset합니다.
4. main.py를 수정합니다. 참고페이지에선 lcd등을 이용하는건데. 현재 제가 따로 가지고 있는게 없어 해당 설정은 넘어갑니다.
내부 온도센서에 대한 내용을 추가합니다.
파이썬 데코레이터 관련된 내용을 잘 모르른 내용이라 추가로 학습해야겠네요.
5. anvil에서 `blank app`을 만들고.. 내부온도를 표현하기 위해 작업을 합니다.

.png)
6. pico_w 와 anvil간에 관련 link를 설정합니다.
아래 참조 사이트에서 친절하게 설명이 되었는데. 이부분이 화면이 바꿨는지 조금 헤멨습니다. 왼쪽 `톱니바퀴`를 클릭하면 uplink 화면이 보입니다. 이 화면에서 `server mode` 로 uplink key를 할당받습니다.
이 키를 main.py에 반영합니다.
7. anvil run을 실행하면 디자인 화면에서 `내부 온도센서` 값을 확인할수 있습니다.

## 기타
중간 avil를 사용하면서 pico_w reset이 안되고. thonny 접속이 안되는등 다양한 문제가 보였습니다.
그러다가 어느순간 다시 thonny로 접속이 가능해지고.. 이런 부분에서 개인적인 경험부족이라고 생각합니다.
다들 넉넉한 한가위 보내시기 바랍니다.
참고자료 : How To Build a Raspberry Pi Pico W Web App With Anvil | Tom's Hardware (tomshardware.com)
프로젝트 갤러리
프로젝트 제작 과정과 최종 결과물을 담은 이미지 갤러리입니다.


.png)






프로젝트 자료실
프로젝트를 재현하거나 학습하는데 필요한 모든 자료를 제공합니다.
등록된 자료가 없습니다.
프로젝트 소개
아직 등록된 프로젝트 소개가 없습니다.
코드 & 회로도
등록된 코드/회로 자료가 없습니다.
댓글 9개
다른 분들 계획서를 보니 기술이 대단하네요.. 부족함을 많이 느낍니다.
틈틈이 관련 자료를 보고 있습니다. 깊이있게 읽지는 못하지만 다양한 가능성을 확인하고 있습니다.
추가로 c를 잘 모르지만 c로된 sdk에서는 따라하기가 되네요. https://datasheets.raspberrypi.com/pico/getting-started-with-pico.pdf
ch2. the sdk 에서 install the toolchain, updating the sdk, building "blink" 까지 진행할수 있습니다. 3.2 부터는 hw가 필요하네요. micropython에서는 어떻게 진행되는지 찬찬히 봐야겠습니다.
머릿속에서 간단한데..
머릿속에서 간단한데.. 남들이 만들어 놓은 것을 하나하나 따라가기가 만만찮네요.. 수행을 하면서 문제가 안생긴걸 다행이라고 생각하고. mqtt 등 다음 단계로 가기 위해 좀더 노력해야겠습니다. 그리고 다양한 서비스들이 꽤나 잘 만들어졌다고 생각합니다. 안정성은 모르겠지만. 간단한 아이디어를 검색해보고 빠르게 결과를 낼수 있다는게 참 신기합니다.
머릿속에서 간단한데.. 다른분들이 만들어 놓은 것을 하나하나 따라가기가 만만찮네요.. 수행을 하면서 문제가 안생긴걸 다행이라고 생각하고. mqtt 등 다음 단계로 가기 위해 좀더 노력해야겠습니다. 그리고 다양한 서비스들이 꽤나 잘 만들어졌다고 생각합니다. 안정성은 모르겠지만. 간단한 아이디어를 검색해보고 빠르게 결과를 낼수 있다는게 참 신기합니다.
@e4dslab 아. 그렇군요.. 제가 미션 이해를 잘못했네요.. 아직 cloud, web app 등의 개념이 부족한가 봅니다. quest 를 수행하면서. 주관적, 객관적으로 부족한 항목들이 눈에 보였고.. 차근차근 알아가며 준비해야겠네요.

등록된 글 수정이 안되네요.. 오타는 넘어가주시고 ^^ 계획서는 현재 제가 할수 있을까? 하는 수준에서 작성했습니다.