Course Outline
주 01
소개
- 로봇을 똑똑하게 만드는 것은 무엇일까?
실제 로봇과 가상 로봇
- Smart Robots, 스마트 머신, 센티언트 머신 및 Robotic Process Automation (RPA) 등.
Robotics에서 Artificial Intelligence (AI)의 역할
- "if-then-else"와 학습 머신을 넘어서
- AI의 알고리즘
- 머신러닝, 컴퓨터 비전, 자연어 처리(NLP) 등
- 인지 로봇공학
Robotics에서 Big Data의 역할
- 데이터와 패턴에 기반한 의사결정
클라우드 및 Robotics
- 로봇공학과 IT의 연결
- 더 많은 정보에 접근하고 협업하는 보다 기능적인 로봇 구축
사례 연구: 산업용 로봇
- 기계 로봇
- 백스터
- 핵 시설의 로봇
- 방사선 탐지 및 보호
- 핵 React 또는 로봇
- 방사선 탐지 및 보호
로봇의 하드웨어 구성 요소
- 모터, 센서, 마이크로컨트롤러, 카메라 등
로봇의 공통 Element
- 머신 비전, 음성 인식, 음성 합성, 근접 감지, 압력 감지 등
Programming 로봇을 위한 개발 프레임워크
- 오픈소스 및 상용 프레임워크
- 로봇 운영 체제 (ROS)
- 아키텍처: 작업 공간, 토픽, 메시지, 서비스, 노드, actionlibs, 도구 등
Languages 로봇 Programming에 대한
- C++ 저수준 제어용
- Python 오케스트레이션을 위해
- Python 및 C++의 Programming ROS 노드
- 다른 언어들
물리적 로봇 시뮬레이션을 위한 도구
- 상용 및 오픈 소스 3D 시뮬레이션 및 시각화 소프트웨어
주 02
개발 환경 준비
- 소프트웨어 설치 및 설정
- 유용한 패키지 및 유틸리티
사례 연구: 기계 로봇
- 핵기술 분야의 로봇
- 환경 시스템의 로봇
Programming 로봇
- Programming Python 및 C++의 노드
- ROS 노드 이해
- ROS의 메시지 및 주제
- 출판/구독 패러다임
- 프로젝트: Bump & Go 실제 로봇
- 문제 해결
- Gazebo를 이용한 로봇 시뮬레이션 / ROS
- ROS의 프레임 및 참조 변경
- OpenCV을 이용한 카메라의 2D 정보 처리
- 레이저의 정보처리
- 프로젝트: 색상별 객체 안전 추적
- 문제 해결
주 03
Programming 로봇 (계속...)
- ROS의 서비스
- PCL을 이용한 RGB-D 센서의 3D 정보 처리
- ROS를 사용한 지도 및 항해
- 프로젝트: 환경에서 객체 검색
- 문제 해결
Programming 로봇 (계속...)
- 액션립
- Speech Recognition 및 음성 생성
- MoveIt!을 이용해 로봇 팔을 조종하세요!
- 활성 시야를 위한 로봇 목 제어
- 프로젝트 : 사물 검색 및 수집
- 문제 해결
로봇 테스트
- 단위 테스트
주 04
Deep Learning를 사용하여 로봇의 기능 확장
- 인식 - 시각, 청각 및 촉각
- 지식 표현
- NLP(자연어 처리)를 통한 음성 인식
- 컴퓨터 비전
Deep Learning의 충돌 과정
- 인공Neural Networks(ANN)
- 인공적Neural Networks 대 논리적Bio
- 피드포워드Neural Networks
- 활성화 함수
- 인공 훈련 Neural Networks
Deep Learning의 충돌 과정(계속...)
- Deep Learning 모델
- 합성 네트워크와 순환 네트워크
- 합성곱 Neural Networks (CNN 또는 ConvNets)
- 합성 레이어
- 풀링 레이어
- 합성곱 Neural Networks 아키텍처
주 05
Deep Learning의 충돌 과정(계속...)
- 반복 Neural Networks (RNN)
- RNN 훈련
- 훈련 중 기울기 안정화
- 장기 단기 기억 네트워크
- Deep Learning 플랫폼 및 소프트웨어 라이브러리
- Deep Learning ROS에서
로봇에서 Big Data 사용
- 빅데이터 개념
- 데이터 분석 접근 방식
- Big Data 툴링
- 데이터의 패턴 인식
- 연습: NLP 및 Computer Vision 대규모 데이터 세트
로봇에서 Big Data 사용(계속...)
- 대용량 데이터 세트의 분산 처리
- Big Data과 Robotics의 공존 및 교차수정
- 데이터 생성기로서의 로봇
- 거리 측정 센서, 위치, 시각, 촉각 센서 및 기타 모달리티
- 감각 데이터 이해(감각-계획-행동 루프)
- 연습: 스트리밍 데이터 캡처
Programming 자율 Deep Learning 로봇
- Deep Learning 로봇 구성요소
- 로봇 시뮬레이터 설정
- Cafe를 사용하여 CUDA 가속 신경망 실행
- 문제 해결
주 06
Programming 자율 Deep Learning 로봇 (계속...)
- 사진이나 비디오 스트림에서 객체 인식
- OpenCV을 사용하여 컴퓨터 비전 활성화
- 문제 해결
데이터 분석
- 로봇을 사용하여 새로운 데이터를 수집하고 구성
- 데이터를 이해하기 위한 도구 및 프로세스
로봇 배치
- 시뮬레이션된 로봇을 물리적 하드웨어로 전환
- 물리적 세계에 로봇 배치
- 현장에서 로봇 모니터링 및 서비스
로봇 보안
- 허가받지 않은 변조 방지
- 해커가 민감한 데이터를 보거나 훔치는 것을 방지합니다.
로봇을 협력적으로 구축하다
- 클라우드에서 로봇 구축
- 로봇 커뮤니티에 가입하기
과학 및 에너지 분야의 로봇의 미래Outlook
요약 및 결론
Requirements
- Programming C언어 경험 또는 C++
- Programming Python에 대한 경험 (유용하지만 필수는 아님; 과정의 일부로 가르칠 수 있음)
- Linux 명령줄에 대한 경험
청중
- 개발자
- 엔지니어
- 과학자들
- 기술자
회원 평가 (1)
I feel I get the core skills I need to understand how the ROS fits together, and how to structure projects in it.