Published Book on Amazon
![]() |
All of IOT Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 1 |
![]() |
All of IOT Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 2 |
출판된 한글판 도서
![]() |
최신 라즈베리파이(Raspberry Pi)로 시작하는 사물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (상) |
![]() |
최신 라즈베리파이(Raspberry Pi)로 시작하는 사물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (하) |
Original Book Contents
목 차
2.1.2 Raspberry Pi의 model 특성 비교
2.4.1 Micro USB power supply port
2.5.4 3.5mm audio jack and composite video
3.5 power adapter 및 전원공급 cable
3.6.1 WAN 접속 장비, LAN Hub 및 공유기
3.8.1 HDMI cable 및 HDMI 지원 모니터
3.9.3.1 일반 가시광선(visible-light) camera
3.9.3.3 Raspberry Pi 전용 카메라 H/W 설치하기
4.1 운영체제(OS, Operating System) 종류
4.3.2 <NOOBS> utility와 SD card format
4.4.1 Raspberry Pi homepage에서 download
4.5.2 <NOOBS> utility 프로그램 download 및 시스템 준비
4.5.2.1 <NOOBS> utility 프로그램 download
4.5.2.2 SD card에 <NOOBS> utility 파일 복사
4.5.2.3 hardware 시스템 및 인터넷 접속 준비
4.5.3.3 <NOOBS> utility boot 화면
4.5.3.5 <NOOBS> utility 화면의 버튼 기능
4.5.3.6 <NOOBS> utility 화면이 보이지 않을 때
4.5.4 <NOOBS> utility을 이용한 운영체제 설치
4.5.4.2 <NOOBS> utility를 이용한 복수 운영체제 설치하기
4.5.5 운영체제 설치 후의 <NOOBS> utility 활용
4.5.5.1 <NOOBS> utility boot 화면
4.5.5.3 <NOOBS> utility recovery mode
4.6.1 운영체제 image 파일 download 및 준비
4.6.2 SD card에 image 파일 copy하기
5.1.4 booting할 때 화면이 보이지 않을 때 조치
6.1.2.2 Terminal 접속과 Desktop GUI 접속
6.2.1 console에서의 terminal 진행 흐름
6.2.3.2 terminal logon 및 Shell 프로그램 시작
6.2.3.3 Shell Terminal 화면에서 Desktop window 시작하기
6.2.4.1 local Desktop GUI 접속 및 login
6.2.4.2 Desktop window에서의 terminal Shell 사용
6.3.3 Desktop window에서의 시스템 종료
7.3.2.4 프로그램에 대한 특성(Properties) 확인
7.3.3 Application Launch Bar (작업시작)
7.5.1.1 File Manager (PCManFm)
7.5.1.6 Image Viewer (GPicView)
7.5.1.7 Calculator (Galculator)
7.5.2.1 Mathematica & Wolfram language
7.5.3 Internet Web Browser (EpicHany)
7.7.1 Mouse and Keyboard Settings
7.7.2 Theme and Appearance Settings
Chapter 8 Terminal과 Shell 프로그램
8.2.1 Shell 과 BASH (Bourne Again Shell)
9.2.1 "raspi-config" 명령을 이용한 설정 방법
9.2.2 Desktop window를 이용한 설정 방법
9.4 default user "pi"에 대한 사용자 암호 변경
9.6 Internationaliation Options 설정
9.6.1 Internationaliation Options 설정 공통 메뉴
9.10.1 SPI (Serial Peripheral Interface) 설정
9.10.2 I2C (Inter-Integrated Circuit) 설정
10.1.4.1 화살표 키를 이용한 history 활용
10.2.1.4 "unset" 명령 – 변수의 정의 삭제
10.2.1.5 "set" 명령 - Shell 호출 parameter 설정
10.2.2 환경변수(environment variable)
10.2.2.2 "export" 명령 - 환경변수의 정의
10.4.3 "man" 명령 - 명령에 대한 도움말 보기
10.6.1 "&&" 명령 – "and" 형식의 명령 실행
10.6.2 "||" 명령 – "or" 형식의 명령 실행
10.7.1 "which" 명령 - 실행파일의 path name 확인
10.7.3 프로그램 background/foreground 실행
10.7.3.1 "&" 명령 - background 처리
10.7.3.2 "jobs" 명령 - 현재 background 작업 상태 보기
10.7.3.3 Foreground 작업을 Background로 옮기기
10.7.3.4 "fg" 명령 - background 작업 foreground로 전환하기
10.7.3.5 "bg" 명령 - 중단된 background 작업 다시 실행하기
10.7.3.6 background 실행 작업을 중지 상태로 만들기
10.8.2 redirection 명령 - 입력, 출력 장치 변경
10.10.1 "date" 명령 - 시간정보 조회 및 변경
11.1.2 "ifconfig" 명령 - network 장치 상태 및 IP 주소 확인하기
11.6.1 DHCP 서버에서 고정 IP address를 지정하는 방법
11.6.2 Raspberry Pi 시스템에서 고정 IP address 지정하는 방법
11.7.1 "ifup"과 "ifdwon" 명령을 이용한 network 활성화 및 중단
11.7.2 "ifconfig" 명령을 이용한 활성화 및 중단
11.8.1 Raspberry Pi를 외부 Bluetooth 기기에 공개하기
11.8.2 Raspberry Pi에 Bluetooth 기기 등록 및 해제하기
12.1.3.3 "sudo" 명령을 이용하여 super user로 작업하기
12.1.3.4 "su" 명령을 이용하여 super user로 작업하기
12.1.3.5 "visudo" 명령 - super user 권한의 통제
12.2.1.2 Desktop window에서 logon 사용자 확인하기
12.2.1.3 terminal에서 logon 사용자 확인하기
12.2.2.2 terminal 정보로 현재 사용자 확인하기
12.2.2.3 "whoami" 명령으로 작업 사용자 확인하기
12.2.2.4 "su" 명령으로 작업 사용자 변경하기
12.6.2.3 시스템 기본 사용자 "pi"에 대한 암호 변경
12.7.4 사용자와 사용자 그룹의 관계에 대한 시스템 관리
12.7.5 "addgroup" 명령 - 사용자 그룹의 정의
12.7.6 "delgroup" 명령 - 사용자 그룹의 삭제
12.7.7.2 "adduser" 명령을 이용한 사용자 그룹 지정
13.1 파일 권한(file permission) 체계 이해
13.1.3 파일에 대한 소유 사용자 및 소유 그룹의 체계
13.2.1.1 "chown" 명령 – 파일의 소유 사용자(owner user) 변경
13.2.1.2 "chgrp" 명령 – 파일의 소유 그룹(owner group) 변경
13.2.2.1 "chmod" 명령을 이용한 권한 변경
14.1.1 device 종류와 /dev directory
14.1.3.4 "blkid" 명령 - block device 정보 확인
14.1.4.2 network device 종류 및 이름 규칙
14.2.2.2 USB 장치와 다른 device와의 관계
15.1.1.2 "cfdisk" 명령 - 메뉴기반 디스크 작업
15.1.2.2 "mkfs" 명령 - 디스크 format하기
15.1.3.3 mount directory에 대한 권한 조정
15.1.3.4 "mount" 명령 - device에 대한 directory 지정
15.1.3.6 "umount" 명령 - device에 대한 directory 해제
16.1.1.1 폴더(folder) 또는 directory
16.2.1.1 "mkdir" 명령 – directory 생성
16.2.2.1 "mv" 명령 – directory와 파일의 이름 변경
16.2.3.1 "touch" 명령을 이용한 파일 생성
16.2.3.2 "echo"와 ">" 명령을 이용한 파일 생성
16.2.3.3 text editor 프로그램을 이용한 파일 생성
16.2.4.1 "mv" 명령 - 파일/directory 이동 처리
16.2.5.1 "cp" 명령 – directory와 파일 복사
16.2.6.1 rmdir 명령 - directory 삭제
16.2.6.2 rm 명령 - directory와 파일 삭제
16.2.6.3 Desktop window에서의 삭제 처리
16.2.7 [Trash Can]에 있는 자료의 관리 및 복구
16.2.7.1 [Trash Can]에서 있는 자료의 조회
16.2.7.2 [Trash Can]에 있는 자료의 완전 삭제
16.2.7.3 [Trash Can]에 있는 자료의 복구
16.3.4.1 "grep" 명령 - 파일 내용으로 파일 검색
16.3.5 directory와 파일의 사용 저장공간 확인
16.3.5.1 "du" 명령 - directory와 파일의 사용 저장공간 확인
16.3.7.1 "ls" 명령– directory의 내용 확인
16.3.7.2 Desktop window에서의 내용 확인 방법
16.3.8.1 "cat" 명령을 이용한 파일 내용 확인
16.3.8.2 "more" 명령을 이용한 파일 내용 확인
16.3.8.3 "less" 명령을 이용한 파일 내용 확인
16.3.8.4 텍스트 편집기 프로그램을 이용한 파일 내용 확인
16.3.8.5 Desktop window에서의 내용 확인 방법
17.1.4 package repository의 source list 629
17.2.4 package 관리도구 – aptitude
17.4.1 package repository에 등록된 프로그램 이용 방법
17.4.2 "wget" 명령으로 인터넷에서 download하는 방법
17.4.3 GitHub를 이용해서 인터넷에서 download하는 방법
17.5.1 source 배포 방식에 따른 프로그램 설치 비교
17.5.2 package repository로 배포되는 프로그램 설치
17.5.3 package 형식의 파일로 배포되는 프로그램 설치
17.5.4 일반 파일 형식으로 배포되는 프로그램 설치
17.6.1.3 "apt-get autoremove" 명령
17.6.2.2 "apt-get autoclean" 명령
17.7.2 "apt-get update" 명령 - local package database 정보 갱신
17.7.3 "apt-get upgrade" 명령- 설치 프로그램 수정 반영
17.8 system kernel 및 firmware upgrade
18.1 원격 접속(remote connection) 개요
18.2.3 Unix/Linux 계열 및 Apple Mac에서의 SSH 연결
18.2.4 <PuTTy> 프로그램을 이용한 MS Windows에서의 SSH연결
18.3.1 <XRDP> 프로그램 이용 MS Windows 원격 데스크탑 연결
18.3.2 VNC 프로그램을 이용한 Desktop GUI 접속
18.3.2.1 <TightVNC> server의 설치
18.3.2.2 <TightVNC> server 의 자동 시작
18.4.1 <Samba> 프로그램 이용한 원격 드라이브 접속
18.4.1.1 <Samba> server 프로그램의 설치
18.4.2 SCP 프로그램을 이용한 원격 드라이브 접속
18.4.2.1 SSH server 프로그램의 설치/활성화
19.1.1.1 "top" 명령 - 시스템 주요 정보 확인
19.1.1.2 "free" 명령 - memory 현황
19.1.1.3 "ps" 명령 - process snapshot
19.1.1.4 Desktop window를 통한 시스템 monitoring
19.1.2.1 "kill" 명령 - PID를 이용한 process 종료
19.1.2.2 "killall" 명령 - name을 이용한 process 종료
19.1.2.3 Desktop window을 이용한 process 종료
19.2.1.1 "df" 명령 - file system 디스크 공간 확인
19.2.1.2 "du" 명령 - directory별 디스크 사용 확인
19.2.1.3 Desktop window를 이용한 디스크 사용 상태 확인
19.3.3 "/proc/<PID>/"의 개별 process 정보 확인
20.2.2.1 kernel의 system call 종류
20.2.2.2 명령의 종류에 따른 Shell의 처리방법
20.2.4.1 대입 연산(assignment operation)
20.2.4.2 참조 연산(reference operation)
20.2.4.3 정수형 산술 연산(integer type arithmetic operation)
20.2.4.4 실수형 산술 연산(real type arithmetic operation)
20.2.4.5 논리 연산(logical operation)
20.3.1.2 "runlevel" 명령 - run level 확인
20.3.1.3 "telinit" 명령 - run level 전환
20.3.2.2 "pstree" 명령 - booting process tree
20.3.3.2 run level 연동 init script 작성 방법
20.3.3.3 application daemon 실행 init script 작성 방법
20.3.4 run level 연동 booting 자동 실행
20.3.4.2 "update-rc.d" 명령 - init script 자동 등록
20.3.5 run level 무관 booting 자동 실행
20.4.2 "crontab" 명령 - crontab 관리
Chapter 21 Office 및 Utility 프로그램
21.1.2.2 <Libre Office> 프로그램 설치
21.1.2.3 <Libre Office> 프로그램의 실행 및 사용
21.3.2 <Scrot> 프로그램을 이용한 화면 캡쳐
21.4.3 <CUPS> 프로그램을 이용한 printer server 설정
22.1.1.1 Raspberry Pi 전용 camera 설치
22.1.1.2 Raspberry Pi camera 활성화 및 GPU memory 조정
22.1.2 Raspberry Pi camera 처리 API
22.1.2.1 MMAL (Multi-Media Abstraction Layer)
22.1.2.2 V4L2 (Video For Linux2)
22.1.3 Pi camera를 이용한 사진 및 동영상 촬영
22.1.3.2 "raspistill" 명령을 이용한 사진 촬영하기
22.1.3.3 "raspivid" 명령을 이용한 동영상 촬영하기
22.1.4.1 <OMXplayer> 프로그램를 이용한 동영상 상영
22.1.4.2 <Mplayer> 프로그램을 이용한 동영상 상영
22.1.5 <FFMPEG> 프로그램을 이용한 동영상 format 변환하기
22.1.6.1 동영상 자료 송신/수신의 기본 framework
22.1.6.2 <Netcat> 프로그램으로 네트워크 동영상 송수신
22.1.6.3 raspivid 명령으로 Raspberry Pi에서 동영상 전송
22.1.6.4 Linux 컴퓨터에서 동영상 받아 보기
22.1.6.5 MS Windows 컴퓨터에서 동영상 받아 보기
22.1.7.1 동영상 자료 Web 전송 framework
22.1.7.2 <VLC> server – Raspberry Pi에서 동영상 전송
22.1.7.3 <VLC> client - MS Windows에서의 동영상 확인
22.1.8 동작 감지 web camera - <Motion> 프로그램
22.1.8.1 동작 감지 동영상 Web 접속 framework
22.1.8.2 Raspberry Pi 시스템에서 동작 감지 작동
22.2.1 <SSMTP> 프로그램 - 메일 전송 에이전트
22.2.2 <MUTT> 프로그램 - 메일 전송 보조 도구
23.2 Mathematica 또는 Wolfram language
23.2.3.1 Mathematica에서의 Program 작성방법
23.3.3.1 Step 1 - Sonic Pi로 처음 소리 내기
23.3.3.3 Step 3 - MIDI 음표와 음악의 음표
23.3.3.4 Step 4 - synthesizer를 이용한 sound 변경
23.3.3.6 Step 6 – 두 곡조를 동시에 연주하기
23.4.5.2 [Cat] Sprite의 외관모양 바꾸기
23.5.3.3 프로그램 들여쓰기(indentation)
23.5.3.11 순환 처리(loop processing)
23.5.4.1 IDLE에서 Python 프로그램 파일 만들기
23.5.4.2 Shell에서 Python 프로그램 파일 실행하기
23.5.4.3 실행가능 Python 프로그램 파일 이용하기
24.2.3.1 <MySQL Administrator> – "mysqladmin" 명령
24.2.3.2 <MySQL Shell> – "mysql" 명령
24.2.3.3 <MySQL Backup>– "mysqldump" 명령
24.2.3.4 <MySQL Import> – "mysqlimport" 명령
24.2.4 <MySQL Shell> 사용 – "mysql" 명령
24.2.4.2 <MySQL Shell> 프로그램 시작하기
24.2.5.2 database 정보 조회 - "SHOW" SQL
24.2.5.3 database 생성 – "CREATE DATABASE" SQL
24.2.5.4 database 삭제 – "DROP DATABASE" SQL
24.2.5.5 DB user 생성 – "CREATE USER"/"DROP USER" SQL
24.2.5.6 user 권한 관리 – "GRANT"/"REVOKE" SQL
24.2.5.7 table 생성 – "CREATE TABLE" SQL
24.2.5.8 table 삭제 – "DROP TABLE" SQL
24.2.5.9 table 정보 조회 – "EXPLAIN SQL"/"DESCRIBE" SQL
24.2.5.10 table 자료 입력 – "INSERT" SQL
24.2.5.11 table 자료 조회 – "SELECT" SQL
24.2.5.12 table 자료 변경 – "UPDATE" SQL
24.2.5.13 table 자료 삭제 – "DELETE" SQL
24.3.2.1 <Apache web server> 설치
24.4.4.4 증가(incremental)/감소(decremental) 연산자
24.4.9.1 "include" 문 및 "require" 문
24.4.9.2 "include_once" 문과 "require_once" 문
24.4.10 PHP 전송방식 및 주요 Global 변수
24.4.10.1 HTTP의 POST/GET 방식과 PHP에서의 처리
24.4.11.2 <mysqli>의 interface 방식
24.4.11.3 <mysqli> object-oriented interface 상세
24.4.11.4 [mysqli] Object-oriented interface 사용법
24.4.12.2 database 및 table 준비 작업
24.4.12.4 database table 자료를 조회하는 script 작성
24.4.12.5 database table 자료 수정 script 작성
24.4.12.6 database table "employee" 관리 화면 진행 흐름
25.1 Raspberry Pi와 외부 Interface
25.3.1.2 전압(voltage)과 전위(electric potential)
25.4.2 저항의 직렬(series)과 병렬(parallel)l
25.4.2.1 저항의 직렬 접속(series connection)
25.4.2.2 저항의 병렬 접속(parallet connection)
25.4.4 키르히호프의 법칙(Kirchhoff’s laws)
25.4.5 Pull-up 저항과 Pull-down 저항
25.4.5.1 floating 상태(floating state)
25.4.5.2 Pull-up 및 pull-down에서 저항을 사용하는 이유
25.6.2.1 <WiringPi> library 개요
25.6.2.2 <WiringPi> library 의 pin map
25.6.2.3 <WiringPi> library 설치
25.6.2.5 <WiringPi> library 기본 사용법
25.6.3.1 <RPi.GPIO> library 개요
25.6.3.2 <RPi.GPIO> library 설치
25.6.3.3 <RPi.GPIO> library 사용법
25.7.1 Digital 출력 – LED On/Off
25.7.1.2 <WiringPi> library를 이용한 사례
25.7.1.3 <RPi.GPIO> library를 이용한 사례
25.7.2.1 <RPi.GPIO> library의 입력 방식
25.7.2.2 push button 연결 및 회로 설명
25.7.2.3 falling 방식의 push button 입력 처리하기
25.7.2.4 interrupt 방식의 push button 입력 처리하기
25.8.2 digital sensor DS18b20를 이용한 온도 측정
25.8.2.2 Raspberry Pi와 sensor의 연결
25.8.2.3 1-Wire bus protocol의 활성화
25.8.2.4 DS18B20의 온도 측정 값 interface 파일
25.8.3 Digital DHT11 Humidity/Temperature Sensor 활용
25.8.3.2 <WiringPi> library를 이용한 프로그램 작성
25.8.3.3 <RPi.GPIO> library를 이용한 프로그램 작성
25.8.3.4 Raspberry Pi와 실시간 처리(real time processing)
25.10.1 I2C (Inter-Integrated Circuit) device
25.10.2 SPI (Serial Peripheral Interface)
25.10.3 UART (Universal Asynchronous Receiver/Transmitter)