데이터베이스 구조] 1. 논리적 구조 : 일반 사용자 관점에서 본 구조. 2. 물리적 구조 : 저장 장치 관점에서 본 구조. - 종래 자료처리 시스템의 문제점 1. 데이터 종속성 종속성이 심하다는 말은 독점데이터를 쓸수 없다는 뜻. 2. 데이터 중복성 중복성이 심하다는 말은 자료의 불일치성을 높일수 있다. 불일치성이 높다는것은 정확성이 떨어짐과 동시에 무결성 유지 곤란. 중복성이 높으면 사용자의 실수가 높아지기 마련이다. 장점은 회복이 좋다. - 데이터 베이스 관리 시스템 (DBMS : DataBase Management System) - 데이터베이스와 응용프로그램들 사이에 위치한다. 1) 독립성이 높다. -> 공용 데이터 2) 중복성이 최소화. -> 자료의 일치성이 높아지고 정확도, 무결성유지에도 좋다..
외부 라이브러리 설치: sudo apt-get install libatlas-base-dev libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev libgflags-dev lib google-glog-dev liblmdb-dev protobuf-compiler gitlib과 google-glog-dev를 찾을수 없다. caffe 다운로드 git clone https://github.com/BVLC/Caffe.git g++ 설치 sudo apt-get install g++-4.6 gedit cpu 동작하도록 설정 변경
시뮬레이션 로봇 : Turtlebot 강의를 통해서 배울 내용 : 1. ROS 프로그램 구조화 및 실행2. C++기반을 통한 기본 ROS 프로그램 생성 3. 기본 ROS의 개념들 (노드화 , 매개 변수 , 환경 변수 등등) ROS 프로그램을 통하여 간단하게 로봇을 움직여 보자! 먼저 벽앞에 터틀봇이 놓여 있다. $ roslaunch turtlebot_teleop keyboard_teleop.launch로봇을 원격으로 조종하기 위한 명령어이다. 로봇을 위와 같은 키입력으로 원격 제어 할수 있다. 로봇을 (,) 키 입력을 통해 뒤로 후진 시켜 벽에서 멀리 떨어 트린 모습이다. 위와 같은 과정에서 우리가 사용한 명령어 roslaunch에 대해 알 필요가 있다. roslaunch의 명령어 구조 : roslaun..
ROS로 로봇을 프로그래밍하려면 무엇을 배워야합니까? ROS를 배우기 위해 알아야 할 첫 번째 사항은 topic를 다루는 방법입니다. topic는 아마도 ROS의 가장 중요한 부분이므로주의 깊게 학습해야합니다. ROS는 topic를 통한 거의 모든 커뮤니케이션을 처리합니다. 결국 service 나 action과 같은 더욱 복잡한 통신 시스템은 결국 topic에 의존합니다. ROS topic를 통해 로봇을 움직이거나 로봇의 센서 판독 값을 읽는 등 로봇과 통신 할 수 있습니다. $ roslaunch publisher_example move.launch 로봇을 움직이기 위한 명령어이다. $ roslaunch publisher_example stop.launch 로봇을 멈추기 위한 명령어이다. Ctrl + C..
Pure pursuit algorithm History 1. 여러 해동안 로봇 연구소등에서 사용되었다. 2. 그 뒤로 Nav-lab에서 사용한다. http://www.navlab.it/web11/chi-siamo.html Pure pursuit 알고리즘은 로봇이 경로를 되찾아 가기위해서 원 호(arc)를 그리며 찾아가는데 , 이때 필요한 원 호(arc)를 계산하는 방법으로 고안이 되었다. 이 알고리즘은 80년대 초 , 위 사진에 보이는 Terragator라고 하는 6륜 기계에 적용이 되었습니다. 나아가 Nav-Lab에서도 접근하여 수 많은 path tracking 알고리즘을 시도해 보았는데 , 많은 알고리즘들 중에 Pure pursuit을 구현한 결과가 가장 견고하고 믿을만하다는것을 알수 있었다고 합니다.
인터넷의 보급이 우리생활에 긍정적으로 작용했다고 생각하는지, 부정적으로 작용하고 있다고 생각하는지에 대하여 주관적으로 인터넷 보급이 우리생활에 부정적인 영향을 끼친부분이 분명히 있지만 나는 긍정적으로 작용한 부분이 훨씬 크다고 생각한다. 첫째, 인터넷은 인간의 학습에 큰 긍정적 영향을 끼쳤다고 생각한다. 임상여성학이라는 강의도 인터넷을 통한 온라인 학습이다. 만약 이 강의가 온라인 학습이 아니었다면, 해당 강의실을 때에 맞추어 찾아가서 수강 하여야 한다. 다행히도 인터넷 보급으로 인해 정해진 기간안에 수강생이 원하는 때에 맞추어 집이든, 카페든, 인터넷이 구성된 장소면 어디든지 강의를 들을 수 있다. 이러한 실용적인 부분뿐 아니라 인터넷은 다양한 지식들을 나눌수 있는 큰 인프라를 가지고 있다. 근처 맛집..
1. 리눅스, 유닉스에서는 모든 개체가 파일로 표시된다. 2. low level 시스템 콜 살펴보기 유닉스, 리눅스 환경에서는 모든 개체들이 파일로 되어있다. 가장 대표적인 것 : 디바이스 파일들 ex) /dev/tty, /dev/ttySO 시스템 정보들 ex) /proc/cpuinfo 실제로는 존재하지 않지만 리눅스 유닉스 체계에서는 파일로서 표시해준다. 파일 디스크립터 open("hello.txt", ) 오픈이라는 함수를 사용하면 파일 디스크립터라는것을 얻게 된다. write나 read와 같은 함수들은 이와 같은 파일 디스크립터를 가지고 동작하게 된다. 모든 파일을 사용할때에는 명시적으로 open을 사용해야 한다. 하지만 이미 open이 되어있어서 바로 사용 가능한 파일이 딱 세가지가 있다. 알아보자..
☞ 간단한 인터넷 역사 60년대 초 : 패킷 교환을 개발 하였다. 70년대 초 : 독점 네트워크와 인터 네트워킹을 시작하였다. 80년대 초 : 네트워크가 널리 확산 되었다. 90년대 이후 : 인터넷이 급증하였다. ☞ 인터넷 계층 살펴보기 인터넷은 위 사진과 같이 5계층 구조로 이루어져 있다. 각 계층을 살펴보자 1. Application 계층 프로토콜 : HTTP, SMTP FTP 등등 End system에 있는 응용 프로그램이 다른 응용 프로그램과 정보 패킷을 교환하기 위해 위에 적은 3가지의 프로토콜들을 사용한다. application 계층에서 이러한 정보 패킷을 Message라고 한다. 2. Transport 계층 프로토콜 : TCP,UDP 클라이언트, 서버 간에 Application 계층 메세지를..