아두이노 배우면서 사물 인터넷(loT) 직접 코딩하기

책 소개
이 책이 속한 분야
- 국내도서 > 컴퓨터/IT > 컴퓨터공학 > 마이크로프로세서 > 아두이노
- 국내도서 > 컴퓨터/IT > 컴퓨터공학 > 사물인터넷
- 국내도서 > 컴퓨터/IT > 대학교재
- 국내도서 > 대학교재 > 컴퓨터
책은 440쪽의 분량에 아두이노를 이용하여 프로젝트를 수행할 때 도움이 될 수 있는 2가지 스케치 구성법을 소개하고 있습니다.
첫 번째는 슈퍼루프 방식의 스케치 구조이며, 두 번째는 RTOS를 이용하는 방법입니다.
사물인터넷(IoT) 시대의 중심 소프트웨어는 RTOS와 리눅스가 중심이 될 것입니다. 그래서 이 책에서는 아마존의 FreeRTOS 상에서 여러 가지 기능을 여러 개의 작은 main 함수로 구성하는 방법을 소개하고 있습니다. FreeRTOS는 아마존에서 사물 인터넷(IoT)을 구성할 수 있도록 사용자들에게 제공하는 RTOS입니다.
이 책은 〈아두이노로 만드는 사물인터넷〉의 완전 개정판이며, 아두이노 메가 2560을 사용하여 예제를 구성하였습니다.
아두이노 메가 2560은 아두이노 우노에 비해 더 많은 메모리 용량과 더 많은 통신 인터페이스를 제공합니다. 예를 들어 시리얼 포트가 4개가 제공되어 아두이노 우노에 비해 사물 인터넷에 좀 더 적합합니다. RTOS도 일반 아두이노 스케치보다 규모가 크기 때문에 그에 적합하게 아두이노 메가 2560을 사용하였습니다.
시중에는 이미 많은 아두이노 책들이 나와 있습니다. 대부분의 책들에서 기본적인 내용을 다루고 있습니다. 예를 들어, LED를 켜고 끄거나 버튼 입력 또는 센서 입력을 받거나, 모터를 구동 시키는 등의 단편적인 예제 들을 많이 다루고 있습니다. 그래서 이러한 책들을 충분히 본 독자들이라면 서너 가지 정도의 기능을 동시에 수행할 수 있는 아두이노 프로젝트를 수행하고 싶어 할 것입니다. 이 책에서는 간단한 아두이노 예제들을 하나로 묶어 좀 더 복잡한 아두이노 프로젝트를 수행하는 방법에 대해 자세히 소개하고 있습니다. 기초 단계부터 올라가는 과정을 소개하기 때문에 처음 아두이노를 접하는 독자들도 책의 내용을 이해하는데 크게 어렵지게 단계별로 난이도를 구분하여 구성하였습니다.
이 책은 최근에 이슈가 되고 있는 사물 인터넷에 관심이 있는 사람들을 대상으로 진행한 실무 교육을 바탕으로 구성되었고, 그 교육 중에는 소프트웨어 엔지니어들이 하드웨어를 쉽게 이해하여 응용할 수 있도록 유도하는 교육도 포함되어 있습니다. 대학의 강의 교재에도 잘 활용할 수 있도록 약 40시간 정도의 강의 분량을 표현되었으며, 또한 독학하는 분들을 위해 쉬운 예제부터 수준 높은 사물 인터넷 프로젝트까지 실제 강의를 듣는 느낌이 들도록 구성하였습니다.
북 트레일러: 도서와 관련된 영상 보기
- 출판사의 사정에 따라 서비스가 변경 또는 중지될 수 있습니다.
- Window7의 경우 사운드 연결이 없을 시, 동영상 재생에 오류가 발생할 수 있습니다. 이어폰, 스피커 등이 연결되어 있는지 확인 하시고 재생하시기 바랍니다.
작가정보

코코랩스(kocolabs.co.kr) 대표
연세대학교 정보산업공학 학사
MDS 아카데미 드론/리눅스커널포팅/드라이버 교육
대한상공회의소 서울기술교육센터 출강
LG 전자 신입사원 C/C++ 교육
SK 하이닉스 RTOS 교육
삼성전자 리눅스 드라이버/RTOS 교육
Xilinx FPGA/HDL 교육
ETRI verilogHDL 교육
숭실대 아두이노 IoT 교육
국민대 Cortex-M3 교육
[저서]
아두이노 배우면서 사물 인터넷(IoT) 직접 코딩하기(2019. 07 앤써북)
한 권으로 끝내는 아두이노 입문 + 실전(종합편)(2019. 02 앤써북)
아두이노 사용자를 위한 라즈베리 파이 드론 만들고 직접 코딩하기(2018. 07 앤써북)
아두이노처럼 사용하는 라즈베리 파이 3 직접 코딩하기(2018. 03 앤써북)
아두이노 피지컬 컴퓨팅 다두블럭으로 만들고 엔트리로 코딩하기(2017. 09 앤써북)
아두이노 자율주행 RC카 만들고 직접 코딩하기(2017. 07 앤써북)
아두이노 드론 만들고 코딩하고 날리기 입문 (2017. 03 앤써북)
아두이노 드론 만들고 직접 코딩하기(2017. 01 앤써북)
아두이노로 만드는 사물인터넷(2016. 02 앤써북)
아두이노와 안드로이드로 45개 프로젝트 만들기(2014. 9 앤써북)
목차
- Chapter 01 아두이노 준비하기
Lesson 01 아두이노 기본기 다루기
01 _ 아두이노란 무엇인가?
02 _ 아두이노의 종류
03 _ 아두이노로 무엇을 할 수 있을까요?
04 _ 아두이노 메가 살펴보기
05 _ 부품 소개
06 _ 아두이노 메가와 우노 비교하기
Lesson 02 아두이노 개발 환경 구성하기
01 _ 아두이노 소프트웨어 설치하기
02 _ 아두이노 소프트웨어 IDE 화면구성 살펴보기
03 _ 아두이노 보드와 컴퓨터 연결하기
04 _ 아두이노 보드와 시리얼 포트 선택하기
05 _ “Hello Arduino” 스케치 작성하기
06 _ 아두이노 오류 발생 시 대처방법
Lesson 03 아두이노 스케치 구조 이해하기
01 _ 아두이노 스케치 기본 함수
02 _ 숨겨진 main 함수
03 _ 메시지 출력 방법
04 _ 아두이노 소프트웨어 환경 설정하기
05 _ 아두이노 메가 핀 살펴보기
디지털 출력과 입력
아날로그 출력(PWM 출력)
아날로그 입력
통신 입출력
Lesson 04 슈퍼루프 구조와 RTOS 구조
01 _ 슈퍼루프 아두이노의 구조
02 _ RTOS 아두이노의 구조
Chapter 02 슈퍼루프 아두이노 프로젝트 만들기
Lesson 01 간단한 LED 회로 구성하기
01 _ 아두이노란 무엇인가?
02 _ Blink 예제 수행하기
03 _ Fading 예제 수행하기
[Special Page] _ PWM 살펴보기
[Special Page] _ PWM 장치들
04 _ Blink, Fading 두 예제를 합쳐 다중 기능 구현하기63
05 _ delay 함수 간섭 문제 이해하기
06 _ millis 함수로 문제 해결하기
millis 함수 사용해 보기
millis 함수값 읽어보기
millis 함수 주기 루틴
millis 함수로 문제 해결하기
[Special Page] _ millis 함수
[Special Page] _ 타이머 인터럽트
TimerOne 라이브러리 설치하기
TimerOne 라이브러리 사용해 보기
[Special Page] _ timerlsr과 loop의 공유영역 문제
[Special Page] _ nolnterrupts, interrupts 함수
[Special Page] _ PWM 장치들
Lesson 02 슈퍼루프 아두이노 프로젝트
01 _ 디지털/아날로그 출력하기
필요한 부품 살펴보기
[Special Page] _ 저항의 역할
회로 구성하기
arduino_superloop 프로젝트 생성하기
LED Blink 기능 추가하기
LED Fading 기능 추가하기
RGB LED Blink 기능 추가하기
RGB LED Fading 기능 추가하기
[Special Page] _ 왜 LED에는 220, 330Ω 저항을 사용할까?
사용자 입력 기능 추가하기
블루투스 통신 기능 추가하기
와이파이 통신 기능 추가하기
02 _ 디지털/아날로그 입력하기
푸쉬 버튼
[Special Page] _ 디지털 입력 값
[Special Page] _ 아날로그 입력 값
회로 구성하기159
LED Blink 버튼 입력 기능 추가하기
[Special Page] _ 외부 인터럽트
[Special Page] _ buttonlsr과 loop의 공유영역 문제
LED Fading 외부 인터럽트 기능 추가하기
RGB LED Blink 버튼 입력 기능 추가하기
RGB LED Fading 외부 인터럽트 기능 추가하기
[Special Page] _ 왜 버튼에는 저항이 필요한가?
03_ 아날로그 ADC 센서 입력받기
[Special Page]_ 아날로그 센서의 원리
회로 구성하기
arduino_superloop_adc 프로젝트 생성하기
가변 저항 LED 밝기 조절 기능 추가하기
온도 센서 LED 깜빡임 기능 추가하기
빛 센서 RGB LED 점등 기능 추가하기
거리센서 RGB LED 밝기 조절 기능 추가하기
사용자 입력 기능 추가하기
블루투스 통신 기능 추가하기
와이파이 통신 기능 추가하기
04_ 아날로그 PWM 출력하기
[Special Page] _ 모터 회로
[Special Page] _ 트랜지스터
[Special Page] _ H브리지
회로 구성하기
arduino_superloop_pwm 프로젝트 생성하기
멜로디 기능 추가하기
기울기 스위치 멜로디 기능 추가하기
가변 저항 서보 모터 각도 조절 기능 추가하기
가변 저항 DC 모터 속도 조절 기능 추가하기
사용자 입력 기능 추가하기
블루투스 통신 기능 추가하기
와이파이 통신 기능 추가하기
Chapter 03 FreeRTOS 아두이노
Lesson 01 FreeRTOS와 태스크
01 _ FreeRTOS 라이브러리 설치하기
02 _ FreeRTOS 사용법 익히기
FreeRTOS 틀
태스크 생성하기
[Special Page] _ 언제, 어디서, 어떻게 CPU는 태스크를 옮겨갈까?
태스크 이동경로 1
[Special Page] _ 태스크간의 공유영역 문제
[Special Page] _ 태스크간의 공유영역 문제 해결 1
인터럽트 막기
태스크 인자 넘겨주기
태스크 우선순위 설정하기
[Special Page] _ 언제, 어디서, 어떻게 CPU는 태스크를 옮겨갈까?
태스크 이동경로 2
외부 인터럽트 추가하기
인터럽트 함수에서 태스크로 메시지 보내기
[Special Page] _ 메시지 큐 내부는 어떻게 구현될까?
[Special Page] _ 언제, 어디서, 어떻게 CPU는 태스크를 옮겨갈까?
태스크 이동경로 3
태스크에서 태스크로 메시지 보내기 1
태스크에서 태스크로 메시지 보내기 2
[Special Page] _ 언제, 어디서, 어떻게 CPU는 태스크를 옮겨갈까?
태스크 이동경로 4
[Special Page] _ 태스크간의 공유영역 문제 해결 2 - 메시지 큐
[Special Page] _ 태스크간의 공유영역 문제 해결 3 - 세마포어
Lesson 02 RTOS 활용하기
01 _ 디지털/아날로그 출력하기
회로 구성하기
arduino_rtos 프로젝트 생성하기
LED Blink 태스크 추가하기
LED Fading 태스크 추가하기
RGB LED Blink 태스크 추가하기
RGB LED Fading 태스크 추가하기
사용자 입력 기능 추가하기
블루투스 통신 기능 추가하기
와이파이 통신 기능 추가하기
02_ 디지털/아날로그 입력하기
회로 구성하기
LED Blink 태스크 버튼 입력 기능 추가하기
LED Fading 태스크 외부 인터럽트 기능 추가하기
RGB LED Blink 태스크 버튼 입력 기능 추가하기
RGB LED Fading 태스크 버튼 입력 기능 추가하기
03_ 아날로그 ADC 센서 입력하기
회로 구성하기
arduino_rtos_adc 프로젝트 생성하기
가변 저항 태스크 추가하기
온도 센서 LED 깜빡임 태스크 추가하기
빛 센서 RGB LED 점등 태스크 추가하기
거리 센서 RGB LED 밝기 조절 태스크 추가하기
사용자 입력 기능 추가하기
블루투스 통신 기능 추가하기
와이파이 통신 기능 추가하기
04_ 아날로그 PWM 출력하기
회로 구성하기
arduino_rtos_pwm 프로젝트 생성하기
기울기 스위치 멜로디 태스크 추가하기
기울기 스위치로 멜로디 울리기
가변 저항 서보 모터 각도 조절 태스크 추가하기
가변 저항 DC 모터 속도 조절 태스크 추가하기
사용자 입력 기능 추가하기
블루투스 통신 기능 추가하기
와이파이 통신 기능 추가하기
출판사 서평
이 책은 간단한 기초 예제부터 만들어보고 여러 가지 아두이노 기능들을 하나로 묶어 좀 더 복잡하고 수준 높은 사물 인터넷(IoT) 프로젝트까지 만들 수 있게 구성하였습니다!
책은 아두이노 우노보다 사물 인터넷 프로젝트를 구현하기에 더 적합한 아두이노 메가 2560을 활용하여 다음과 같은 프로젝트 구성법을 자세히 소개하였습니다.
- 아두이노 메가 2560을 활용한 아두이노 프로젝트 구성법
- 아마존 FreeRTOS를 활용한 아두이노 프로젝트 구성법
- NodeMCU(ESP8266)을 활용한 사물 인터넷 프로젝트 구성법
이 책은 크게 세 부분으로 구성되었습니다.
ㆍ Chapter 01 아두이노 준비하기
아두이노가 무엇인지, 아두이노로 무엇을 할 수 있는지, 아두이노를 작동시키기 위한 준비물은 무엇인지 아두이노 개발과 관련된 전반적인 내용을 소개합니다.
ㆍ Chapter 02 수퍼루프 아두이노 프로젝트 만들기
슈퍼루프 기반으로 아두이노 스케치를 구성하는 방법을 소개합니다. 슈퍼루프란 여러 가지 기능을 하나의 큰 main 함수에서 처리하는 방법으로 펌웨에서 사용하는 소프트웨어 구조입니다. NodeMCU를 이용하여 WiFi를 통해 인터넷에 연결하는 방법도 자세히 설명하였습니다.
ㆍ Chapter 03 FreeRTOS 아두이노 프로젝트 생성하기
아마존의 FreeRTOS 상에서 여러 가지 기능을 여러 개의 작은 main 함수로 아두이노 스케치를 구성하는 방법을 자세히 설명하였습니다.
ㆍ 단원의 [Special Page]
아두이노 메가 2560을 제대로 활용하기 위해 꼭 필요한 기초 지식과 심층 내용은 스페셜 페이지에 설명하였습니다.
기본정보
ISBN | 9791185553542 |
---|---|
발행(출시)일자 | 2019년 07월 10일 |
쪽수 | 440쪽 |
크기 |
191 * 257
* 26
mm
/ 1148 g
|
총권수 | 1권 |
Klover 리뷰 (5)
구매 후 리뷰 작성 시, e교환권 200원 적립
사용자 총점
67%의 구매자가
추천해요 라고 응답했어요
집중돼요
도움돼요
쉬웠어요
최고예요
추천해요
문장수집 (0)
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립
-
반품/교환방법
* 오픈마켓, 해외배송 주문, 기프트 주문시 [1:1 상담>반품/교환/환불] 또는 고객센터 (1544-1900) -
반품/교환가능 기간
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내 -
반품/교환비용
-
반품/교환 불가 사유
(단지 확인을 위한 포장 훼손은 제외)
2) 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
예) 화장품, 식품, 가전제품(악세서리 포함) 등
3) 복제가 가능한 상품 등의 포장을 훼손한 경우
예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
4) 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
5) 디지털 컨텐츠인 ebook, 오디오북 등을 1회이상 ‘다운로드’를 받았거나 '바로보기'로 열람한 경우
6) 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
7) 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
8) 세트상품 일부만 반품 불가 (필요시 세트상품 반품 후 낱권 재구매)
9) 기타 반품 불가 품목 - 잡지, 테이프, 대학입시자료, 사진집, 방통대 교재, 교과서, 만화, 미디어전품목, 악보집, 정부간행물, 지도, 각종 수험서, 적성검사자료, 성경, 사전, 법령집, 지류, 필기구류, 시즌상품, 개봉한 상품 등 -
상품 품절
-
소비자 피해보상 환불 지연에 따른 배상
2) 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함
상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)
기분 좋은 발견
이 분야의 베스트
이 분야의 신간
-
AI와 토탈 뷰티 색채(큰글자책)10% 22,500 원
-
AI와 토탈 뷰티 색채10% 10,800 원
-
AI와 음악 산업(큰글자책)10% 22,500 원
-
AI와 음악 산업10% 10,800 원
-
온-디바이스 인공지능(큰글자책)10% 22,500 원