node.js(자바스크립트)를 이용한
사물인터넷 개발

line
  • 과정번호1546400710
  • 교육시간3일 / 21시간
  • 교육시간5일 / 35시간
  • 수강료950,000원

교육모집정보

교육기간(시작일~종료일) 수업시간 환급여부 수강료 환급금액우선대상(대기업) 신청하기
2019-04-08 ~ 2019-04-12 09:30 ~ 17:30 \950,000

SA바우처 : 일

교육쿠폰 : 9일

\
(\)
수업 신청하기
line

교육개요

사물인터넷의 핵심은 사물들과의 연동을 통해서 사물 노드에서 처리되고 혹은 명령을 내릴 있는 통합적으로 관리 있는 서비스를 통해서 제공하는 것입니다. 최근 클라우드와 빅데이터 등의 서비스의 등장으로 이런 서비스를 데스크탑과 모바일 임베디드 기기에서 일관되게 포괄적으로 개발할 필요성이 커지고 있습니다. 사물인터넷을 위한 통신 서비스를 위해서 RESTFull 기반의 Open API 사용자 경험을 제공하는 Front-end 일관된 Back-end 결합하기 위해서 MongoDB, Express.js, React.js, Node.js 결합한 MERN Stack 개발이 화두로 등장하고 있습니다. 과정은 라즈베리 파이와 node.js(MERN Stack) 활용하여 하드웨어와 소프트웨어가 융합된 다양한 IoT 서비스를 직접 구현해보는 과정입니다. 즈베리 파이에 전자부품과 응용소프트웨어를 연결하여 다양한 IoT 서비스 기능을 구현해 봄으로써 자신만의 IoT 서비스를 구현할 있는 역량을 키울 있습니다.


line

교육대상

IoT 서비스를 위한 자바스크립트 프로그래밍을 경험해 보고 사람

라즈베리 파이와 센서의 연결에 대해 알고 싶은 개발자

node.js MERN 스택에 대해 배우고 싶은 개발자

IoT 프로젝트 수행을 앞둔 개발자

IoT 통해 소프트웨어와 하드웨어가 결합된 서비스를 구현하고자 하는 개발자

Front-End Back-end에서 JavaScript 서버 구축에서 하드웨어 제어까지 구현하고자 하는 개발자

오픈소스 하드웨어 또는 IoT 관심 있는 개발자

최신 개발 기술 트렌드를 경험하고자 하는 개발자


line

특이사항

커리큘럼

  • 1

    Day

  • Module 1 : 사물인터넷과 라즈베리 파이

     · 제4차 산업혁명과 사물 인터넷​

       1) 네트워크와 스마트 디바이스

       2) 오픈 소스 하드웨어와 라즈베리 파이


     · 라즈베리 파이를 위한 준비

       1) 라즈베리 파이를 위한 환경 설정

       2) 디스크 이미지의 준비

    

     · 라즈베리 파이의 설정

       1) 리눅스의 구조

       2) 라즈베리 사용을 위한 리눅스 기본 명령어​


    Module 2 : 리눅스와 라즈베리 파이의 사용

     · vi 에디터 

     · 라즈베리 파이의 개발환경과 GCC

     · 소스코드 빌드 과정과 GCC의 옵션

     · 빌드 자동화와 make의 사용

     · 디버깅과 GDB의 사용 리눅스에서 라이브러리 만들기

    Module 3 : 라즈베리 파이의 GPIO Ⅰ

     · 하드웨어 스케치와 fritzing

     · 라즈베리 파이와 LED의 연결

     · 전자공학의 기본 소자와 저항

     · GPIO를 위한 sys 파일과 echo 명령어

     · wiringPi 라이브러리

     · GPIO 명령어와 wiringPi의 핀 번호

     · 스위치의 원리와 택(Tact) 스위치 사용을 위한 프로그래밍

  • 2

    Day

  • Module 4 : 라즈베리 파이의 GPIO Ⅱ

     · 스피커와 피에조 부저의 연결

       1) 소리의 원리와 주파수

       2) 사운드 연주를 위한 프로그래밍

     · 센서와 라즈베리 파이의 사용

       1)​ 조도 센서와 회로 구성

       2) 조도 센서의 사용을 위한 프로그래밍

     · 모터의 종류와 DC 모터의 사용

       1) 트랜지스터의 원리와 스위치 작용

       2) 모터 사용을 위한 프로그래밍

     · 7세그먼트와 숫자의 표시

       1) IC와 74 시리즈

       2) 7세그먼트의 사용을 위한 프로그래밍​

    Module 5 : HTML5와 자바스크립트

     · 사물인터넷 서비스 분석

     · HTML5의 구성과 구조

     · CSS3 UI 프레임워크

     · 자바스크립트의 기초와 자바스크립트 프로그래밍

     · jQuery의 기본과 객체의 접근

    Module 6 : MERN/MEAN 스택과 node.js

     · node.js의 개요와 설치 그리고 npm

     · Event-driven 서버 프로그래밍

     · HTTP 메시지의 구조와 상태 메시지

     · GET 메소드의 파싱과 모듈의 분리

     · 요청 핸들러와 넌블로깅

     · 뷰로직과 POST 메시지의 처리

     · 이벤트 처리와 이벤트 핸들러

     · 이벤트의 전파 

  • 3

    Day

  • Moduel 7 : node.js와 라즈베리 파이의 GPIO 제어

     · node.js를 이용한 GPIO의 제어

     · node.js를 위한 회로의 구성

     · ​onoff 모듈을 이용한 LED 제어

     · pigpio 모듈과 설치

     · PWM ​신호와 led로 펄스 내보내기

     · 스위치와 인터럽트 핸들링

     · 모터의 종류와 서브 모터의 연결

     · 초음파 센서와 서브 모터의 제어


    Module 8 : node.js 모듈 만들기

     · node.js의 Addon

     · C언어와 node.js​와의 바인딩

     · 사용자 정의 패키지 만들기

     · 사운드의 출력를 위한 패키지 제작

    Module 9 : node.js와 express.js

     · 빠른 미들웨어 개발 express.js

       1) express.js 와 express generator

       2) package.json

    

     · ​PUG와 ejs를 이용한 웹 서비스의 개발

       1) PUG의 기본 문법과 node.js와의 연동

       2) 웹을 통한 PGIO 제어를 위한 회로 구성

       3) ejs의 기본 문법과  ejs를 이용한 화면의 구성

       4) LED 제어를 위한 ejs의 사용​ 

  • 4

    Day

  • Module 10 : socket.io를 이용한 통신

     · 웹 통신과 socket.io의 개요

     · socket.io를 이용한 채팅 프로그래밍

     · 채팅 클라이언트와 서버의 제작

     · socket.io를 이용한 GPIO의 제어

     · socket.io를 이용한 버튼의 제어

     · LED를 제어하는 클라이언트와 서버

    Module 11 : node.js와 클라우드 서비스

     · 클라우드 서비스와 MS 윈도 Azure

     · IoT Hub의 생성과 장치 등록

     · I2C의 사용을 위한 라즈베리 파이의 설정

     · Azure를 사용하기 위한 회로의 구성

     · Azure IoT 허브와 통신


    Module 12 : node.js와 react.js

     · react.js의 개요

     · JSX와 컴포넌트 프로그래밍

     · react의 라이프 사이클 API

     · VirtualDom과 CSS처리

     · react.js를 이용한 MVVM 개발

     · react.js와의 사용을 위한 회로의 구성

     · 원격 접속을 통한 데이터의 확인

     

  • 5

    Day

  • Module 13 : node.js와 mongoDB

     · NonSQL과 mongoDB의 개요

     · mongoDB의 기본 API와 CRUD

     · node.js를 위한 mongoDB의 설치

     · node.js와 MongoDB의 연동

     · mongoDB에서 데이터 가져오기

     · node.js에서 momgoDB로 데이터 저장

    Module 14 : node.js와 사물인터넷 통신

     · ​라즈베리 파이로 IoT 서비스 구현하기

     · 사물인터넷을 위한 통신 프로토콜​ : MQTT, CoAP, MXPP

     · MQTT의 사용을 위한 Mosquitto

     · 실시간 온도 센서 전송을 위한 회로의 구성

     · MQTT를 이용한 실시간 데이터 전송

     · socket.io를 이용한 클라이언트와 서버 간의 통신 프로그래밍

     · IBM IoT 클라우드 : Watson과 Raspberry Pi