7. Jasper

강의 내용 훑어보기

이번 강의는 음성인식 & IPA, Jasper, Jasper (hardware), Jasper (software), Jasper (configure), **Jasper (write your apps)**에 대한 내용을 다루고 있습니다.

음성인식 & IPA

IPA(Intelligent Personal Assistant)에 대해 알아보고 그 중 많이 사용되는 Jasper가 음성을 인식하는 과정에 대해 설명합니다.

Jasper

음성으로 제어하는 오픈 소스 플랫폼 Jasper에 대해 간략하게 설명합니다.

Jasper (haredware)

Jasper를 사용하기 위해 하드웨어 설정을 진행합니다. 음성을 듣기 위해 이어폰 설정과 음성을 녹음하기 위해 마이크 설정을 합니다.

Jasper (software)

github에서 Jasper를 다운로드 한 후 추가적으로 STT와 TTS 엔진을 설치합니다.

Jasper (configure)

Jasper의 기본 환경설정 파일을 생성하고 STT 사용을 위해 Google Speech API Key를 발급받습니다.
Jasper에서 사용하는 Google STT와 TTS의 기본 언어를 한글로 변경한 후 예시로 Time과 Weather 모듈을 한글로 변경합니다.

Jasper (write your apps)

Jasper의 구조를 알아본 후 표준 모듈(Standard module)과 알림 모듈(Notification module)에 대해 알아 본 후 음성으로 LED를 키고 끌 수 있는 LED 표준 모듈을 만드는 실습을 합니다.

6. Extra GPIO

강의 내용 훑어보기

이번 강의는 카메라(V2), 온습도(SZH-EK024), 조도(BH1750), 초음파(HC-SR04) 센서에 대한 내용을 다루고 있습니다.

카메라(V2)

간단하게 카메라(V2) 모듈에 대해 알아보고 사진 캡쳐, 영상 촬영, 효과 주기, 웹 서버를 통해 스트리밍해보는 실습을 합니다.

온습도(SZH-EK024)

온습도 센서를 통해 온도와 습도를 측정하고 이전 시간에 배운 LED를 통해 현재의 온습도 상태를 표시하는 실습을 합니다.

조도(BH1750)

I2C 버스 인터페이스를 사용하기 위한 설정을 하고 센서를 사용합니다.

초음파(HC-SR04)

초음파 센서가 거리를 측정하는 방법에 대해 알아보고 LED를 통해 현재의 거리 정도를 표시하는 실습을 합니다.

5. GPIO, LED, BreadBoard

강의 내용 훑어보기

이번 강의는 GPIO, LED, **BreadBoard**에 대한 내용을 다루고 있습니다.

GPIO

GPIO의 정의와 작동원리에 대해 알아봅니다.

LED

파이썬을 이용해서 간단하게 LED를 켜고 끄는 실습을 합니다.

BreadBoard(빵판)

BreadBoard(빵판)의 원리에 대해 알아본 후 여러개의 LED를 갖고 실습을 합니다.

4. bash 설정, vim 설정, gist 사용하기

강의 내용 훑어보기

이번 강의는 bash 설정, vim 설정, **gist 사용하기**에 대한 내용을 다루고 있습니다.

bash 설정

bash 쉘에 대해 간단하게 알아본 후 .bashrc 파일을 수정하여 프롬프트(prompt)의 색상 정보를 변경하고, .dircolors 파일을 수정하여 터미널의 폴더 색상을 변경하는 실습을 합니다.

vim 설정

**apt**를 사용하여 vim을 설치하고 .vimrc 파일을 수정하여 vi 편집기를 좀 더 편리하게 사용할 수 있도록 설정을 추가합니다.

gist 사용하기

**gist**에 대해 알아본 후 지금까지 실습한 자신만의 설정파일을 gist에 업로드 합니다.

3. 사용자 관리, 원격접속 vi 편집기

강의 내용 훑어보기

이번 강의는 사용자 관리(추가 & 삭제), 원격접속(VNC, SSH), **vi 편집기**에 대한 내용을 다루고 있습니다.

사용자 관리(추가 & 삭제)

Unix와 Linux에서 사용자를 추가하고 삭제해보며, sudoers 파일을 수정해 root 권한을 사용할 수 있도록 수정해 봅니다.

원격접속(VNC, SSH)

GUI 환경으로 작업이 가능한(VNC)와 CUI 환경인 SSH 접속을 통해 원격으로 라즈베리파이를 다룰 수 있는 실습을 합니다.

vi 편집기

IDE(통합 개발 환경)와 vi(편집기)의 공통점과 차이점에 대해 알아보고 vimtutor.txt 파일을 통해 vi 실습을 합니다.

2. Unix / Linux 소개

강의 내용 훑어보기

이번 강의는 운영체제(OS), 커널, 쉘, Unix & Linux, **간단한 명령어 실습**에 대한 내용을 다루고 있습니다.

운영체제(OS), 커널, 쉘

Unix와 Linux에 대해 알아보기 전 간단히 운영체제(OS), 커널, 쉘의 역할과 정의에 대해서 알아봅니다.

Unix & Linux

Unix의 역사와 Linux가 만들어지게 된 배경에 대해 설명하고, 리눅스의 특징에 대해 설명합니다.

간단한 명령어 실습

Unix와 Linux의 디렉터리 계층 구조를 살펴보고 terminal을 통해 자주 사용되는 명령어를 실습합니다.

1. 라즈베리파이 OS 설치 & 설정

강의 내용 훑어보기

이번 강의는 아두이노와 라즈베리파이 비교, 라즈베리파이에 OS(라즈비안) 설치, **라즈베리파이 설정(인터넷, 한글)**에 대한 내용을 다루고 있습니다.

아두이노와 라즈베리파이 비교

아두이노와 라즈베리파이는 서로의 연관검색어 상단에서 볼 수 있는 만큼 유사한점이 많지만 다른점이 분명히 있습니다. 아두이노와 라즈베리파이의 다른점에 대해 알아보고 언제 어떤것을 사용하는것이 효율적일지 알아봅니다.

라즈베리파이에 OS(라즈비안) 설치

라즈베리파이에 라즈비안을 설치합니다. 설치 시 NOOBS 프로그램을 통해 더욱 간편하게 OS를 설치할 수 있습니다.

라즈베리파이 설정(인터넷, 한글)

라즈베리파이3는 라즈베리파이2와 달리 무선 LAN 카드를 내장하고 있기 때문에 기존 모델과 달리 Wifi 동글을 사용하지 않아도 Wifi 사용이 가능합니다. 간편하게 GUI 상에서 Wifi 설정하는 법을 알아보고 학교와 같은 고정IP를 사용해야 하는 경우에도 대비해 고정IP 설정하는 법을 알아봅니다.

추가적으로 라즈비안을 처음 설치했을 경우 한글폰트가 설치되어있지 않기 때문에 한글 폰트 설치 및 언어 설정을 합니다.

0. 라즈베리파이 강의 소개

오랜만에 포스팅을 하는 것 같습니다. 그간 회사에서 운이 좋게 3주간 보조 강사로 강의를 할 수 있는 기회를 얻어 강의를 하고 있습니다. 신기하게도 제가 졸업한 인천대학교에서 강의를 하고있습니다.

강의 주제는 **라즈베리파이에 음성인식 서비스(STT, TTS)와 GPIO를 활용해 나만의 비서**를 만들기 입니다. 라즈베리파이 같은 경우 이전에 친구들과 스마트미러를 만들며 사용했던 경험이 있었기에 낯설지 않았지만, 강의를 준비하고 강의자료를 만들면서 생각보다 여러가지로 고난을 겪었습니다…

단순히 발표자료가 아닌 누군가에게 지식을 잘 전달할 수 있도록 만들어야 하다보니 생각보다 만드는게 쉽지 않았습니다. 그래도 혹시나 필요하신 분이 있을까 하여 만들었던 강의자료를 공개합니다. 파이썬 관련된 부분은 책을 많이 참고하였기에 생략하고 라즈베리파이와 GPIO, 그리고 음성인식 프레임워크로 사용했던 Jasper에 대한 강의자료를 업로드하겠습니다. 다음은 강의 목차입니다.

- 라즈베리파이 강의 목차 -

  1. 라즈베리파이 OS 설치 & 설정
  2. Unix / Linux 소개
  3. 사용자 관리, 원격접속 vi 편집기
  4. bash 설정, vim 설정, gist 사용하기
  5. GPIO, LED, BreadBoard
  6. Extra GPIO
  7. Jasper

앞으로 강의에 대한 **간단한 내용정리**와 사용한 **pdf 파일**을 업로드하도록 하겠습니다.