장바구니 담기 close

장바구니에 상품을 담았습니다.

사물인터넷을 품은 라즈베리 파이

사물인터넷을 품은 라즈베리 파이 사물인터넷 프로그래밍의 모든 것

  • 김성우
  • |
  • 제이펍
  • |
  • 2016-01-25 출간
  • |
  • 620페이지
  • |
  • 188 X 245 mm
  • |
  • ISBN 9791185890432
★★★★★ 평점(10/10) | 리뷰(1)
판매가

30,000원

즉시할인가

27,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
27,000

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

목차

CHAPTER 1 라즈베리 파이 소개 1
1.1 개요 1
1.2 시스템 구성 2
1.3 라즈비안 설치 7
1.4 라즈베리 파이 부팅 및 설정 9
1.5 라즈비안의 구성 14
1.6 한글 및 네트워크 설정 18
1.7 라즈베리 파이 관련 사이트 21

CHAPTER 2 리눅스 환경 23
2.1 리눅스 접속 23
2.2 리눅스 파일 시스템 29
2.3 기본 명령어 31
2.4 일반 명령어 37
2.5 시스템 관리 명령 45
2.6 파일 편집 54
2.7 셸 환경 63
2.8 셸 프로그래밍 70

CHAPTER 3 파이썬 환경 73
3.1 파이썬 개요 73
3.2 파이썬 실행 74
3.3 변수와 자료형 75
3.4 구문과 프로그램 제어 82
3.5 함수형 프로그래밍 84
3.6 클래스와 객체 91
3.7 입출력과 예외 92
3.8 모듈 96
3.9 파이게임 모듈 97

CHAPTER 4 웹 서버 구축 107
4.1 웹 서버 개요 107
4.2 웹 서버 설치 110
4.3 파이썬 웹 프로그래밍 118
4.4 Bottle 웹 응용 프레임워크 129
4.5 MySQL 데이터베이스 138
4.6 파이썬 MySQL 프로그래밍 154
4.7 SQLite 160
4.8 REST API 설계 167

CHAPTER 5 GUI 프로그래밍 177
5.1 그래픽 윈도우 시스템 개요 177
5.2 Tkinter 파이썬 GUI 프로그래밍 180
5.3 Qt/PySide 프로그래밍 187
5.4 Qt Designer를 이용한 프로그래밍 216
5.5 Qt Quick을 이용한 프로그래밍 229

CHAPTER 6 하드웨어 제어 251
6.1 GPIO 개요 251
6.2 GPIO 디지털 입출력 제어 259
6.3 GPIO 직렬 통신 제어 271
6.4 적외선 센서 모듈 292
6.5 디스플레이 장치 실습 297

CHAPTER 7 카메라 장치 활용 309
7.1 카메라 연결 개요 309
7.2 USB 웹캠 연결 310
7.3 라즈베리 파이카메라 연결 314
7.4 motion 프로그램을 통한 원격 감시 시스템 318
7.5 mjpg-streamer 프로그램을 통한 원격 스트리밍 321
7.6 VLC 프로그램을 통한 원격 스트리밍 323
7.7 PIL 및 matplotlib 모듈을 활용한 이미지 처리 324
7.8 OpenCV를 활용한 영상 처리 327
7.9 라즈베리 파이 카메라 제작 336

CHAPTER 8 모터 연결 및 RC 카 제어 339
8.1 모터 개요 339
8.2 서보모터 제어 340
8.3 DC 모터 제어 343
8.4 RC 카 제어 347
8.5 UPnP를 이용한 RC 카 제어 355

CHAPTER 9 위치 및 방향 측정 장치 활용 361
9.1 GPS 수신기 개요 361
9.2 GPS 수신기 연결 362
9.3 지도 위에 현재 위치 나타내기 366
9.4 날씨 예보 장치 만들기 368
9.5 Navit 내비게이션 프로그램 구동 374
9.6 IMU 센서 활용하기 382

CHAPTER 10 아두이노 보드 연결 395
10.1 아두이노 소개 395
10.2 아두이노 프로그래밍 397
10.3 UART를 이용한 연결 399
10.4 PyFirmata를 사용한 아두이노 포트 제어 402
10.5 Xbee 모듈을 이용한 통신 404
10.6 와이파이 모듈을 이용한 통신 409
10.7 블루투스 4.0 BLE를 이용한 통신 434

CHAPTER 11 사물인터넷 보드 활용 447
11.1 사물인터넷 보드 개요 447
11.2 파티클 코어 활용 448
11.3 NodeMCU 보드 활용 470

CHAPTER 12 사물인터넷 서비스 활용 485
12.1 사물인터넷 개요 485
12.2 WebIOPi 웹 서버 연결 486
12.3 The Thing System 494
12.4 openHAB 509
12.5 클라우드 데이터 저장 서비스 532
12.6 사물인터넷 연동 서비스 540

CHAPTER 13 사물인터넷 통신 563
13.1 사물인터넷 통신 개요 563
13.2 BLE 비콘 564
13.3 인터넷 통신 프로토콜 개요 574
13.4 MQTT 프로토콜 575
13.5 MQTT와 증강 현실을 이용한 온실 제어 589

찾아보기 599

도서소개

사물인터넷의 중심에 라즈베리 파이 놓기 !

사물인터넷은 물건을 나타내는 원자 세계와 인터넷을 통하여 정보를 나타내는 비트 세계의 만남이다. 라즈베리 파이는 아두이노와 더불어 사물인터넷을 위한 소프트웨어를 프로그래밍할 수 있는 대표적인 오픈소스 교육용 컴퓨터이다. 그리고 이 책은 라즈베리 파이를 활용하여 사물인터넷 프로그래밍을 하려는 사람들을 위해 집필되었다.

리눅스 환경에서 파이썬으로 작성된 웹 서버를 구축하고, 센서 등의 입출력 장치를 제어하며, 다른 컴퓨터 및 클라우드 서버와 네트워크를 통해 연동하는 다양한 방법을 다룬다. 라즈베리 파이를 사용하여 사물인터넷 장치를 만들고 구현하려는 사람들에게 이 책에서 다루는 다양한 기술과 예제들이 실질적인 도움을 줄 것이다.

ㆍ라즈베리 파이의 리눅스 사용 환경
ㆍ파이썬 웹 서버 구축 및 데이터베이스 활용
ㆍ파이썬 GUI 프로그래밍
ㆍ입출력 포트를 이용한 하드웨어 제어
ㆍ카메라/모터를 통한 영상 처리 및 RC 카 제어
ㆍGPS/가속도/자이로/지자기 센서 활용
ㆍ아두이노를 포함한 사물인터넷 보드 연동
ㆍ홈 자동화 서버 및 클라우드 데이터/연동 서비스 활용
ㆍ사물인터넷 네트워크 프로토콜을 활용한 프로젝트

책속으로

리눅스 시스템을 잘 이해하고 프로그래밍하기 위해서는 먼저 사용 환경에 익숙해져야 한다. 리눅스 시스템은 유닉스(Unix)의 많은 기능을 가져왔으므로 유닉스의 파일 시스템, 텍스트 셸 환경, 명령어 등에 대해서도 잘 이해하여야 한다. 이번 장에서는 리눅스를 접속하는 방법, 파일 시스템, 기본 명령어들에 대해 다루기로 한다. _23쪽

파이썬 프로그램은 파이썬 인터프리터가 실행한다. 파이썬 인터프리터는 보통 텍스트 명령 셸에서 ‘python’을 입력하여 실행하거나 IDLE와 같은 통합 개발 환경(IDE, Integrated Development Environment)을 통해 실행할 수 있다. IDLE 아이콘을 클릭하여 파이썬 인터프리터를 실행시켜 보자(다음부터 python 2.7 버전 및 IDLE을 기준으로 설명한다. 참고로 python 3.x 버전에서는 문법이 상당 부분 바뀌었다). _74쪽

MySQL은 C, 파이썬, 펄, PHP 등의 다양한 프로그래밍 언어에서 처리할 수 있는 커넥터 또는 라이브러리를 제공한다. 여기서는 MySQL을 파이썬 프로그램에 적용하는 방법에 대해 다룬다. 그러기 위해서는 우선 MySQL 클라이언트 프로그램 개발을 위한 패키지를 설치하여야 한다. 파이썬을 위한 MySQL 클라이언트 패키지를 설치하는 명령은 다음과 같다. _154쪽

GPIO는 특별한 기능을 가진 수십 개의 32비트 레지스터를 이용하여 제어할 수 있다. 라즈베리 파이의 BCM2835 CPU에는 총 41개의 GPIO와 관련된 제어 레지스터가 있다. ARM CPU는 종류에 따라 보통 수십 개에서 수백 개의 GPIO 포트를 지원하는데, 라즈베리 파이의 CPU인 BCM2835는 52개의 GPIO 포트를 지원한다. 그런데 그중에서 외부로 연결할 수 있는 포트 핀은 제한되어 있다. _252쪽

이제 로봇을 조립하여 라즈비로봇 보드와 배터리팩과 파이캠이 연결된 라즈베리 파이를 연결하고, RC 카의 앞뒤 모터에 라즈비로봇 보드의 모터 출력 포트를 연결하고, RC 카 본체에 탑재한다. 여기서는 전방 조향 모터와 후방 구동 모터를 각각 1, 2번 드라이브에 연결하였다. 만약 라즈비로봇 보드와 같은 모터제어 보드가 없다면 앞서 DC 모터 제어에서 다룬 것처럼 L293D/SN754410/L298 드라이버 칩을 사용하여 회로를 구성하는 방법도 가능하다. 주의할 점은 라즈베리 파이와 모터에 공급하는 전원을 각각 구분하여 공급해야 한다는 점이다. _348쪽

사물인터넷을 위한 임베디드 보드도 마찬가지이다. 아두이노가 선구적인 길을 걸었고, 라즈베리 파이와 비글본(BeagleBone)을 비롯한 수많은 보드가 그 길을 따라가고 있으며, 이외에도 수많은 보드들이 있다. 2015년 말에는 10달러 미만의 가격으로 리눅스가 구동되는 보드가 만들어질 수도 있다. 여기서는 이러한 보드들 중 20달러 미만이면서도 와이파이 기능이 포함된 두 종류의 MCU 보드를 소개하고 활용 가능성을 살펴보고자 한다. _448쪽

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.