Raspberry Pi Hardware Control with node.js: 두 판 사이의 차이
둘러보기로 이동
검색으로 이동
imported>Dustjrdk |
|||
| (사용자 9명의 중간 판 76개는 보이지 않습니다) | |||
| 6번째 줄: | 6번째 줄: | ||
* Go - Attendee | * Go - Attendee | ||
* Koo - Attendee | * Koo - Attendee | ||
* Yeon - Wiki | * Yeon - Wiki (http://dustjrdk.iptime.org/) | ||
* PYTELL - Attendee | * PYTELL - Attendee | ||
* YC - Photographer | * YC - Photographer (https://sk8erchoi-tech.blogspot.kr/search/label/RPi) | ||
* Jang - Attendee | * Jang - Attendee | ||
* Drake - Exhibitor | * Drake - Exhibitor | ||
| 29번째 줄: | 29번째 줄: | ||
==== Javascript란 무엇인가? ==== | ==== Javascript란 무엇인가? ==== | ||
* 원래 웹브라우저에서 돌아가는 자바스크립트에 대한 내용 설명 | * 원래 웹브라우저에서 돌아가는 자바스크립트에 대한 내용 설명 | ||
* 자바스크립트 오픈튜터리얼 홈페이지 | * 자바스크립트 오픈튜터리얼 홈페이지[https://opentutorials.org/course/743]의 강의 참조 | ||
==== 다음 과제 ==== | |||
* 슬라이드 만들어오기(애니메이션 / 디자인은 각자 능력껏) | |||
* - 좌우로 버튼을 만들어 다음이미지를 볼 수 있게 | |||
==== 연관 강의 ==== | ==== 연관 강의 ==== | ||
=== 3. What is node.js?, 20. Jan === | === 3. What is node.js?, 20. Jan === | ||
==== 출석체크 ==== | ==== 출석체크 ==== | ||
* Drake, Yeon, PyTell, YC | |||
==== node.js란 무엇인가? ==== | ==== node.js란 무엇인가? ==== | ||
* node.js [https://opentutorials.org/course/86/650 오픈튜토리얼]의 강의 참조 | |||
* node.js 탄생배경 : 구글의 많은 사람들이 개발, 웹디자이너들이 자바스크립트를 많이 아니까 서버에서도 쓰면 좋지 않을까? | |||
* node.js는 비동기 소켓이라서 빠르다.(다른 요인도 있긴 있다.) [http://bcho.tistory.com/876 참조] | |||
==== 다음과제 ==== | |||
* 라즈베리파이에 node.js(버전 0.10이상)설치 후 Hello world, (서버의)현재시간 출력 | |||
** <b>결과물</b> : Yeon - http://dustjrdk.iptime.org/?p=271<br /> | |||
** <b>결과물</b> : PYTELL - https://github.com/jgyuseok/MyPiFace<br /> | |||
==== 연관 강의 ==== | ==== 연관 강의 ==== | ||
* 현재 로컬 로케일을 정의하는 방법 | |||
<source lang="bash"> | |||
sudo dpkg-reconfigure locales | |||
</source> | |||
* nodejs에서 80번 포트를 사용하려면 root 권한이 필요하다. | |||
=== 4. LED && CLCD Control with node.js, 27. Jan === | === 4. LED && CLCD Control with node.js, 27. Jan === | ||
==== 출석체크 ==== | ==== 출석체크 ==== | ||
* Drake, Yeon, Koo, PyTell, YC | |||
==== Character LCD 컨트롤 ==== | ==== Character LCD 컨트롤 ==== | ||
* piface의 lcd 설치 및 작동 방법(http://www.piface.org.uk/guides/setting_up_pifacecad/fitting_PiFace_Control_and_Display/) | |||
** <b>결과물</b> : YC - https://sk8erchoi-tech.blogspot.kr/2016/02/pifacecad.html<br /> | |||
==== 다음 과제 ==== | |||
* score Board 제작 | |||
* 버튼(reset, A팀, B팀)을 이용해서 점수를 올리고 내리고를 한다. | |||
* 부가설명 : A팀 버튼을 누르면 A팀 점수가 올라가고, B팀 버튼을 누르면 B팀 점수가 올라간다. 리셋을 누르면 초기화. | |||
==== 연관 강의 ==== | ==== 연관 강의 ==== | ||
=== 5. Basic node.js Server, 3. Feb === | === 5. Basic node.js Server, 3. Feb === | ||
==== 출석체크 ==== | ==== 출석체크 ==== | ||
* Drake, Koo, PyTell, YC | |||
==== node.js 서버 기본 ==== | ==== node.js 서버 기본 ==== | ||
==== 연관 강의 ==== | ==== 연관 강의 ==== | ||
* Wi-Fi 잡는 방법 | |||
# /etc/wpa_supplicant/wpa_supplicant.conf 에 network 부분을 추가 | |||
<source lang="plain"> | |||
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev | |||
update_config=1 | |||
network={ | |||
ssid="Drake 2.4G" | |||
psk="비밀번호" | |||
} | |||
network={ | |||
ssid="DHLTOZ" | |||
psk="비밀번호" | |||
} | |||
</source> | |||
# /etc/network/interfaces 에 다음의 내용을 추가 | |||
<source lang="plain"> | |||
allow-hotplug wlan0 | |||
auto wlan0 | |||
iface wlan0 inet dhcp | |||
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf | |||
</source> | |||
# 재부팅! | |||
==== 다음 과제 ==== | |||
* MP3 Player 만들기 | |||
** <b>결과물</b> : YC - https://sk8erchoi-tech.blogspot.kr/2016/02/raspberry-pi-mp3-player.html<br /> | |||
* 언어 무관 | |||
=== 6. Web Server with node.js, 17. Feb === | === 6. Web Server with node.js, 17. Feb === | ||
==== 출석체크 ==== | ==== 출석체크 ==== | ||
* Drake, Koo, PyTell, Yeon, YC | |||
==== node.js로 웹서버 구축 ==== | ==== node.js로 웹서버 구축 ==== | ||
* node.js로 웹서버 만들때 express가 필요하다. 웹서버를 만드는데 도와주는 패키지 (npm(노드 패키지 매니저)으로 다운로드받아야한다.) | |||
** <b>결과물</b> : YC - https://sk8erchoi-tech.blogspot.kr/2016/02/installing-nodejs-on-raspberry-pi.html <br /> | |||
* ejs(asp, jsp, php) | |||
==== 연관 강의 ==== | ==== 연관 강의 ==== | ||
* [$ npm install ~] 을 사용하면 현재 디렉토리에만 사용가능하게 되는데(현재 디렉토리에 /node_modules로 다운된다), [$ npm install -g ~] 처럼 -g(글로벌) 인자를 이용하면 모든 디렉토리에서 사용가능하다. | |||
==== 다음 과제 ==== | |||
* node.js로 만든 웹페이지에서 (html언어 : Text Box, Button 등) 문자열을 입력받아 라즈베리파이 LCD에 출력하기 | |||
=== 7. Build up my first web LED, 24. Feb === | === 7. Build up my first web LED, 24. Feb === | ||
==== 출석체크 ==== | ==== 출석체크 ==== | ||
* Yeon, YC, PyTell | |||
==== 웹으로 Character LCD 제어하기 ==== | ==== 웹으로 Character LCD 제어하기 ==== | ||
* 라즈베리파이가 서버가 되는 웹브라우저에 글자를 입력하면 라즈베리파이의 LCD에 글자가 출력해라 | |||
** <b>결과물</b> : Yeon - http://dustjrdk.iptime.org/?p=289<br /> | |||
==== 연관 강의 ==== | ==== 연관 강의 ==== | ||
* 스터디 chapter 2 주제: USB마이크를 이용한 음성제어 with raspberry pi (스터디명 : Piri) | |||
** 관련 아이디어 : 1. 마이크 2개를 이용하여 음성이 큰 쪽으로 향하는 작품 | |||
==== 다음 과제 ==== | |||
* 외부 네크워크로 집에 있는 라즈베리파이를 제어하자. | |||
* message queue, Rabbit MQ | |||
=== | === Next Study === | ||
* [[Pi-ri]] | |||
2016년 9월 24일 (토) 13:06 기준 최신판
개요[편집]
- Raspberry Pi를 활용하여 웹을 이용하여 하드웨어 제어를 해보자.
Stage 1[편집]
참여자[편집]
- Go - Attendee
- Koo - Attendee
- Yeon - Wiki (http://dustjrdk.iptime.org/)
- PYTELL - Attendee
- YC - Photographer (https://sk8erchoi-tech.blogspot.kr/search/label/RPi)
- Jang - Attendee
- Drake - Exhibitor
1. Preparing, 6. Jan[편집]
준비[편집]
- 준비물 체크 및 구입방법 설명
- OS 설치 방법 등
- 참가자 닉네임 혹은 이름 등록, 출석체크에는 이니셜로 표기.
- 역할 분담(위키러, 포토그래퍼 등)
- GitHub 이용 방법 설명
- 커리큘럼이 널널한것 같지만, 삼천포를 생각하면 그렇게 널널한편은 아님.
연관 강의[편집]
추가 아이디어 : Pi-Phone, Pi-CCTV, Amazon dash
2. What is javascript?, 13. Jan[편집]
출석체크[편집]
- Koo, Yeon, PYTELL, YC, Drake
Javascript란 무엇인가?[편집]
- 원래 웹브라우저에서 돌아가는 자바스크립트에 대한 내용 설명
- 자바스크립트 오픈튜터리얼 홈페이지[1]의 강의 참조
다음 과제[편집]
- 슬라이드 만들어오기(애니메이션 / 디자인은 각자 능력껏)
- - 좌우로 버튼을 만들어 다음이미지를 볼 수 있게
연관 강의[편집]
3. What is node.js?, 20. Jan[편집]
출석체크[편집]
- Drake, Yeon, PyTell, YC
node.js란 무엇인가?[편집]
- node.js 오픈튜토리얼의 강의 참조
- node.js 탄생배경 : 구글의 많은 사람들이 개발, 웹디자이너들이 자바스크립트를 많이 아니까 서버에서도 쓰면 좋지 않을까?
- node.js는 비동기 소켓이라서 빠르다.(다른 요인도 있긴 있다.) 참조
다음과제[편집]
- 라즈베리파이에 node.js(버전 0.10이상)설치 후 Hello world, (서버의)현재시간 출력
- 결과물 : Yeon - http://dustjrdk.iptime.org/?p=271
- 결과물 : PYTELL - https://github.com/jgyuseok/MyPiFace
- 결과물 : Yeon - http://dustjrdk.iptime.org/?p=271
연관 강의[편집]
- 현재 로컬 로케일을 정의하는 방법
<source lang="bash"> sudo dpkg-reconfigure locales </source>
- nodejs에서 80번 포트를 사용하려면 root 권한이 필요하다.
4. LED && CLCD Control with node.js, 27. Jan[편집]
출석체크[편집]
- Drake, Yeon, Koo, PyTell, YC
Character LCD 컨트롤[편집]
- piface의 lcd 설치 및 작동 방법(http://www.piface.org.uk/guides/setting_up_pifacecad/fitting_PiFace_Control_and_Display/)
다음 과제[편집]
- score Board 제작
- 버튼(reset, A팀, B팀)을 이용해서 점수를 올리고 내리고를 한다.
- 부가설명 : A팀 버튼을 누르면 A팀 점수가 올라가고, B팀 버튼을 누르면 B팀 점수가 올라간다. 리셋을 누르면 초기화.
연관 강의[편집]
5. Basic node.js Server, 3. Feb[편집]
출석체크[편집]
- Drake, Koo, PyTell, YC
node.js 서버 기본[편집]
연관 강의[편집]
- Wi-Fi 잡는 방법
- /etc/wpa_supplicant/wpa_supplicant.conf 에 network 부분을 추가
<source lang="plain"> ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1
network={
ssid="Drake 2.4G" psk="비밀번호"
}
network={
ssid="DHLTOZ" psk="비밀번호"
} </source>
- /etc/network/interfaces 에 다음의 내용을 추가
<source lang="plain"> allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
</source>
- 재부팅!
다음 과제[편집]
- MP3 Player 만들기
- 언어 무관
6. Web Server with node.js, 17. Feb[편집]
출석체크[편집]
- Drake, Koo, PyTell, Yeon, YC
node.js로 웹서버 구축[편집]
- node.js로 웹서버 만들때 express가 필요하다. 웹서버를 만드는데 도와주는 패키지 (npm(노드 패키지 매니저)으로 다운로드받아야한다.)
- ejs(asp, jsp, php)
연관 강의[편집]
- [$ npm install ~] 을 사용하면 현재 디렉토리에만 사용가능하게 되는데(현재 디렉토리에 /node_modules로 다운된다), [$ npm install -g ~] 처럼 -g(글로벌) 인자를 이용하면 모든 디렉토리에서 사용가능하다.
다음 과제[편집]
- node.js로 만든 웹페이지에서 (html언어 : Text Box, Button 등) 문자열을 입력받아 라즈베리파이 LCD에 출력하기
7. Build up my first web LED, 24. Feb[편집]
출석체크[편집]
- Yeon, YC, PyTell
웹으로 Character LCD 제어하기[편집]
- 라즈베리파이가 서버가 되는 웹브라우저에 글자를 입력하면 라즈베리파이의 LCD에 글자가 출력해라
- 결과물 : Yeon - http://dustjrdk.iptime.org/?p=289
- 결과물 : Yeon - http://dustjrdk.iptime.org/?p=289
연관 강의[편집]
- 스터디 chapter 2 주제: USB마이크를 이용한 음성제어 with raspberry pi (스터디명 : Piri)
- 관련 아이디어 : 1. 마이크 2개를 이용하여 음성이 큰 쪽으로 향하는 작품
다음 과제[편집]
- 외부 네크워크로 집에 있는 라즈베리파이를 제어하자.
- message queue, Rabbit MQ