※ IoT기반 스마트 시티 엔지니어링 과정 
분야

교육 과정명

교육 상세 내용

Language

및 System

C Programming 입문, 실무

- 전처리, 컴파일, 링크 과정 이해, C프로그래밍의 형태 (메인함수, 출력함수, 저장, 입력함수)
- 정수형, 실수형, 문자형, 문자열형 데이터 처리
- 강제형변환과 자동형변환
- printf(), scanf()함수의 동작원리 이해
- 선택문, 반복문, 분기문
- 사용자 정의 함수 작성법, 다양한 형태의 함수
- 1차원 배열과 포인터, 문자열의 처리
- auto, static, extern 변수의 이해
- 2차원 배열과 포인터 배열의 활용
- 다중포인터, 배열포인터, 함수포인터
- 동적할당 함수, 메인함수의 전달인자
- 구조체 기본 개념 이해, 구조체 배열 및 포인터
- 파일입출력 기본개념, 다양한 파일입출력 함수
- 전처리 명령어, const의 사용법, 분할 컴파일

IoT를 위한
JAVA 프로그래밍

- 객체 지향에 대한 이해
- Java 언어 기본 문법 이해
- Java 언어 메서드와 레퍼런스 이해
- Java 언어 배열과 레퍼런스 이해
- Java 언어 클래스와 레퍼런스 이해
- Java 언어 파일 입출력 이해
- Java GUI 프로그램의 구조 이해
- 배치 관리자의 이해
- Java GUI 이벤트 발생과 처리 이해
- 컴포넌트 기반 프로그램 이해
- Graphics 객체 기반 프로그램 이해

IoT기반 임베디드
시스템 이해

- Embedded System 구조 및 이해
- Embedded Processor
- Firmware기반 Embedded System
- OS(Operating System) 기반

취업 특강, 취업 상담

- 취업 의식 함양
- 이력서 작성 스킬 교육
- 면접 스킬 향상
- 1:1 모의 면접
- 이력서 검토 및 수정 방향 제시
- 취업 전략 및 진로 선택 상담

IoT System 및
Application

IoT를 위한 스마트 홈 구축

- 표준 기반 IoT 플랫폼 이해
- 전체 IoT 시스템 설계
- IoT 네트워크 구성 이해와 구축
- LWM2M configuration
- 스마트 보안 기기에 대한 이해와 구성
- 스마트 조명 혹은 스마트 팬 기기에 대한 이해와 구성
- WiFi 모듈을 이용하여 IoT 플랫폼에 연결 실습
- Android App 설치하여 IoT 시스템 제어 및 모니터링 실습
- 원격 펌웨어 업데이트 실습
- MS Azure cloud 서버 기반 IoT 활용 실습
- 음성 인식, 영상 인식 기능 실습

IoT기반 스마트
홈 디바이스 제어

- 표준 IoT 플랫폼 기반의 IoT 스마트 홈의 전체 IoT기기 구성 및 아키텍쳐 설계
- 아두이노 기반 스마트 조명, 스마트 팬 설계 및 개발
- 표준 IoT 플랫폼에 연결 및 제어
- Cortex M 기반 도어락 및 경보 기기 설계 및 개발
- 표준 IoT 플랫폼에 연결 및 제어
- 라즈베리 카메라 및 LCD를 이용한 IoT CCTV 개발
- 표준 IoT 플랫폼에 연결하여 IoT 스마트 홈 시스템 완성 실습 (안드로이드 앱으로 제어 확인)

IoT를 위한 안드로이드
애플리케이션 프로그래밍

- 안드로이드 플랫폼
- UI 와 UI Event
- Thread / Handler
- Resources & Assets 및 Data Storage
- 안드로이드 Component 및 고급 관리
- Task 관리
- Intent 활용한 Project
- 자원 공유 기법
- AppWidgetProvidder
- 상태유지와 Parcelable
- Permission / Pattern
- Sample Project 분석

IoT를 위한 안드로이드 App 제어

- 안드로이드 SDK 설치하기
- 안드로이드 앱 프로그램의 구조 이해
- 배치 관리자의 이해
- 이벤트 발생과 처리 이해
- 위젯 기반 프로그램 이해
- Canvas 객체 기반 프로그램 이해

IoT를 위한 센서 &
안드로이드 네트워크

- Android App Overview
- Process간의 통신
- Android Device Communication(I)
- Android Device Communication(II)
- Android Socket / Web Programming
- Android & HTTP

OS
SYSTEM

IoT를 위한 임베디드
리눅스 시스템 프로그래밍

- 임베디드 리눅스 소개 및 특징
- 임베디드 리눅스 개발환경 구축
- 프로세스 상태 개념 및 스레드 동기화
- IPC 및 리눅스 커널 구조
- 메모리 관리 및 System Call

IoT를 위한 임베디드
리눅스 디바이스 드라이버

- 개발환경 설정 및 커널 설정 컴파일
- 부팅과정 이해 및 루트 파일시스템 구성
- 임베디드 리눅스 디바이스 드라이버 구조
- 임베디드 리눅스 디바이스 동작 방식 이해
- 디바이스의 종류 및 디바이스 드라이버의 모델 이해
- 제작된 디바이스 드라이버 구조 분석 능력 배양

IoT 시스템 개발 응용 프로젝트

- 참여기업 맞춤형 고급 SW개발 프로젝트
- 융합 SW 프로젝트 교육
- 현직 개발자(연구) 멘토 및 기업 프로젝트