코스 개요

1주차

1일차

소개

  • 어떤 것이 로봇을 똑똑하게 만드나?

물리적 로봇 vs 가상 로봇

  • 스마트 로봇, 스마트 머신, 인지 기계 및 로봇 프로세스 자동화(RPA) 등

인공지능(AI)이 로봇 기술에 미치는 영향

  • "if-then-else"를 넘어서 학습 머신
  • AI 뒤의 알고리즘
  • 기계학습, 컴퓨터 비전, 자연어 처리(NLP) 등
  • 인지 로봇 기술

2일차

빅데이터가 로봇 기술에 미치는 영향

  • 데이터와 패턴을 기반으로 한 의사 결정

클라우드와 로봇 기술

  • IT와의 연계
  • 더 많은 정보에 접근하고 협업할 수 있는 더 기능적인 로봇 구축

사례 연구: 산업용 로봇

  • 기계 로봇
    • Baxter
  • 원자력 시설에서의 로봇
    • 방사선 감지 및 보호
  • 원자로에서의 로봇
    • 방사선 감지 및 보호

3일차

로봇의 하드웨어 구성 요소

  • 모터, 센서, 마이크로컨트롤러, 카메라 등

로봇의 공통 요소

  • 기계 비전, 음성 인식, 음성 합성, 근접 감지, 압력 감지 등

4일차

로봇 프로그래밍을 위한 개발 프레임워크

  • 오픈소스 및 상용 프레임워크
  • Robot Operating System (ROS)
    • 아키텍처: 워크스페이스, 토픽, 메시지, 서비스, 노드, 액션 라이브러리, 도구 등

로봇 프로그래밍을 위한 언어

  • 하위 수준 제어를 위한 C++
  • 오케스트레이션을 위한 Python
  • Python과 C++로 ROS 노드 프로그래밍
  • 다른 언어

5일차

물리적 로봇을 시뮬레이션하기 위한 도구

  • 상용 및 오픈소스 3D 시뮬레이션 및 가시화 소프트웨어

로봇의 물리적 특성을 설계하기 위한 도구

  • 상용 및 오픈소스 CAD 소프트웨어

사례 연구: 기계 로봇

  • 원자력 기술 분야에서의 로봇
  • 환경 시스템에서의 로봇

2주차

6일차

Python 입문 강좌

  • 소프트웨어 설치 및 설정
  • 유용한 패키지와 유틸리티
  • Python 데이터 구조, 연산자, 루프, 조건문, 함수, 메서드 등 사용하기
  • 샘플 프로그램 작성하기
  • 팀 프로젝트

7일차

로봇 개발 준비하기

  • 개발 환경 설정(예: Arduino IDE)
  • Arduino 언어(C/C++) 구문 탐색
  • 코딩, 컴파일, 마이크로컨트롤러에 업로드하기
  • Arduino 로봇의 하드웨어 구성 요소 조립하기

8일차

Arduino 컴포넌트 사용하기

  • 아날로그 센서
  • 디지털 센서

Arduino 통신 모듈 사용하기

  • 블루투스 모듈
  • Wi-Fi 모듈
  • RFID 모듈
  • I2C 및 SPI
  • 이동 인터넷

9일차

로봇 제작하기

  • 로봇의 기능과 특징 계획하기
  • 로봇 이동 구현하기

팀 프로젝트

  • 토론 및 검토

10일차

로봇 제어하기

  • 컨트롤러 구현하기
  • 유선 및 무선으로 로봇 연결하기

팀 프로젝트

  • 토론 및 검토

3주차

11일차

로봇 프로그래밍하기

  • Gazebo/ROS로 로봇 시뮬레이션하기
  • ROS 노드 이해하기
  • Python과 C++으로 노드 프로그래밍하기
  • ROS에서 메시지와 토픽
  • 발행/구독 패러다임

팀 프로젝트

  • 실제 로봇으로 부딪히고 이동하기
  • 토론 및 검토

12일차

로봇 프로그래밍(계속...)

  • ROS에서 프레임과 참조 변경
  • OpenCV로 카메라의 2D 정보 처리하기
  • 레이저 정보 처리하기

팀 프로젝트

  • 색상으로 물체 안전 추적하기
  • 토론 및 검토

13일차

로봇 테스트하기

  • 코드를 테스트하는 도구
  • 단위 테스트
  • 테스트 스위트 생성하기
  • 테스트 자동화하기
  • 문제 해결하기

팀 프로젝트

  • 색상으로 물체 안전 추적하기
  • 토론 및 검토

14일차

로봇 프로그래밍(계속...)

  • ROS에서 서비스
  • PCL로 RGB-D 센서의 3D 정보 처리하기
  • ROS에서 맵과 이동

15일차

로봇 프로그래밍(계속...)

  • ActionLib로 작업 완료하기

팀 프로젝트

  • 환경에서 물체 검색하기

4주차

16일차

로봇 프로그래밍(계속...)

  • ActionLib로 작업 완료하기

17일차

로봇 프로그래밍(계속...)

  • 음성 인식과 음성 생성
  • 문제 해결하기

팀 프로젝트

  • 음성으로 로봇 제어하기

18일차

로봇 프로그래밍(계속...)

  • MoveIt!으로 로봇 팔 제어하기
  • 활동적 시각을 위한 로봇 목 제어하기
  • 문제 해결하기

팀 프로젝트

  • 물체 검색 및 수집하기

19일차

로봇 배포하기

  • 물리적 세계에서 로봇 배포하기
  • 현장에서 로봇 모니터링 및 유지보수하기
  • 모바일 앱을 사용하여 로봇 제어하기

로봇 보안

  • 비인가 조작 방지
  • 해커로부터 민감한 데이터를 보기 및 절취하는 것을 방지하기

20일차

데이터 분석

  • 로봇이 생성한 데이터 수집 및 정리하기
  • 시각화 도구와 프로세스를 통해 데이터 이해하기

협업으로 로봇 구축하기

  • 클라우드에서 로봇 구축하기
  • 모바일 앱을 사용하여 로봇과 상호 작용하기
  • 로봇 커뮤니티에 참여하기

과학 및 에너지 분야에서의 로봇 미래 전망

요약 및 결론

요건

  • C 또는 C++ 프로그래밍 경험
  • Python 프로그래밍 경험(유용하지만 필수는 아님; 코스에서 가르칠 수 있음)
  • Linux 명령줄 사용 경験

대상자

  • 개발자
  • 엔지니어
  • 과학자
  • 기술자
 80 시간

참가자 수


참가자별 가격

회원 평가 (1)

예정된 코스

관련 카테고리