로봇 공학은 인간의 행동을 모방한 기계를 생산하는 과학과 기술의 독특한 혼합입니다.
2000년대 초반 로봇의 90%는 반복적인 작업을 위해 인간을 대체하는 자동차 제조 공장에 있었습니다. 이제 로봇은 집을 진공 청소기로 청소할 수 있고 심지어 식당에서도 서비스를 제공할 수 있습니다.
로봇은 일반적으로 세 가지 유형의 구성 요소로 구성됩니다. 기계 본체; 전기 골격, 그리고 마지막으로 코드로 만든 두뇌.
이러한 구성 요소를 통해 로봇은 데이터(종종 센서에서)를 수집하고 프로그래밍된 논리를 통해 결정을 내려 행동을 조정하고 작업을 완료할 수 있습니다.
로봇에는 세 가지 유형의 프로그램이 있습니다. 리모콘(RC), 인공 지능 (AI) 또는 하이브리드.
RC 프로그램은 로봇에 코드 실행을 위한 시작 및/또는 중지 신호를 줄 수 있는 사람의 개입이 필요합니다. 프로그램은 각각 다른 기능을 가진 다양한 유형의 알고리즘으로 구성됩니다.
알고리즘이란 무엇입니까?
알고리즘은 로봇이 특정 명령을 수행하는 데 사용할 수 있는 일련의 코드 줄입니다. 개발자의 아이디어를 로봇이 이해할 수 있는 언어로 번역합니다.
알고리즘은 의사 코드, 순서도, 프로그래밍 언어, 또는 제어 테이블.
이 기사에서는 이러한 프로그램에서 사용되는 몇 가지 일반적인 유형의 알고리즘에 대해 설명합니다.
로봇 공학에 사용되는 알고리즘 유형
1. 언제나 A* 알고리즘
A* 알고리즘은 가장 적은 비용으로 두 지점 사이에서 가장 최적의 경로를 찾는 데 사용되는 경로 탐색 알고리즘입니다.
Anytime A* 알고리즘은 시간 비용이 유연하며, 비최적 솔루션을 먼저 생성한 다음 최적화하므로 중단되더라도 최단 경로를 반환할 수 있습니다.
이를 통해 로봇은 처음부터 시작하는 대신 이전 계산을 기반으로 구축할 수 있으므로 더 빠른 의사 결정을 내릴 수 있습니다.
어떻게 진행합니까?
시작 노드에서 종료 기준이 트리거될 때까지 확장되는 '트리'를 형성하여 이를 수행합니다. 이는 사용 가능한 비용이 덜 드는 경로가 있음을 의미합니다.
2D 그리드는 장애물로 만들어지고 시작 셀과 대상 셀은 핀 포인트됩니다.
알고리즘은 매개변수 g(시작 노드에서 해당 노드로 이동하는 비용)와 h(해당 노드에서 대상 노드로 이동하는 비용)의 합인 f로 노드의 '값'을 정의합니다.
어플리케이션
많은 게임과 웹 기반 지도는 최단 경로를 효율적으로 찾기 위해 이 알고리즘을 사용합니다. 이동 로봇에도 사용할 수 있습니다.
다음과 같은 복잡한 문제도 해결할 수 있습니다. 뉴턴-랩슨 숫자의 제곱근을 찾는 데 적용되는 반복입니다.
그것은 또한 공간에서 물체의 움직임과 충돌을 예측하기 위해 궤적 문제에서 사용됩니다.
2. D* 알고리즘
D*, Focused D* 및 D* Lite는 두 지점 사이의 최단 경로를 찾는 증분 검색 알고리즘입니다.
그러나 A* 알고리즘과 알려지지 않은 장애물에 대한 정보를 지도에 추가할 수 있는 새로운 발견이 혼합되어 있습니다.
그런 다음 화성 탐사선처럼 새로운 정보를 기반으로 경로를 다시 계산할 수 있습니다.
어떻게 진행합니까?
D* 알고리즘의 작동은 A*의 작동과 유사하며 알고리즘은 먼저 f, h를 정의하고 개방 및 폐쇄 목록을 생성합니다.
이후 D* 알고리즘은 인접 노드의 g 값을 사용하여 현재 노드의 g 값을 결정합니다.
각 인접 노드는 현재 노드의 g 값을 추측하고 가장 짧은 g 값을 새 g 값으로 적용합니다.
어플리케이션
D* 및 그 변형은 모바일 로봇 및 자치 차량 항해.
이러한 항법 시스템에는 화성 탐사선 Opportunity and Spirit에서 테스트한 프로토타입 시스템과 수상 경력이 있는 항법 시스템이 포함됩니다. DARPA 도시 챌린지.
3. PRM 알고리즘
PRM 또는 확률적 로드맵은 주어진 지도에서 비어 있는 공간과 점유 공간을 기반으로 하는 가능한 경로의 네트워크 그래프입니다.
복잡한 계획 시스템에서 사용되며 장애물 주변의 저렴한 경로를 찾는 데도 사용됩니다.
PRM은 로봇 장치가 이동할 수 있는 맵의 임의 샘플을 사용하여 최단 경로를 계산합니다.
어떻게 진행합니까?
PRM은 구성 및 쿼리 단계로 구성됩니다.
첫 번째 단계에서는 환경에서 가능한 움직임을 대략적으로 나타내는 로드맵이 그래프로 표시됩니다. 그런 다음 임의 구성이 생성되어 일부 이웃에 연결됩니다.
시작 및 목표 구성은 쿼리 단계에서 그래프에 연결됩니다. 경로는 다음으로 얻습니다. 다익스트라의 최단 경로 질문.
어플리케이션
PRM은 알고리즘이 두 지점, 즉 초기 지점과 목표 지점 사이의 직선 경로를 계산하는 로컬 플래너에서 사용됩니다.
이 알고리즘은 경로 계획 및 충돌 감지 응용 프로그램을 개선하는 데에도 사용할 수 있습니다.
4. 제로 모멘트 포인트(ZMP) 알고리즘
Zero Moment Point(ZMP 기술)는 로봇이 바닥의 반력과 반대 방향으로 전체 관성을 유지하는 데 사용하는 알고리즘입니다.
이 알고리즘은 ZMP를 계산하는 개념을 사용하여 이족보행 로봇의 균형을 맞추는 방식으로 적용합니다. 매끄러운 바닥 표면에서 이 알고리즘을 사용하면 로봇이 마치 아무 순간도 없는 것처럼 걸을 수 있습니다.
ASIMO(Honda)와 같은 제조 회사는 이 기술을 사용합니다.
어떻게 진행합니까?
보행 로봇의 움직임은 각운동량 방정식을 사용하여 계획됩니다. 생성된 관절 모션이 로봇의 동적 자세 안정성을 보장하는지 확인합니다.
이 안정성은 미리 정의된 안정성 영역의 경계 내에서 제로 모멘트 지점(알고리즘에 의해 계산됨)의 거리로 정량화됩니다.
어플리케이션
제로 모멘트 포인트는 경사로와 장애물을 탐색할 때 iRobot PackBot과 같은 로봇의 전복에 대한 안정성을 평가하는 척도로 사용할 수 있습니다.
5. 비례 적분 미분(PID) 제어 알고리즘
비례 적분 차동 제어 또는 PID는 오류 값을 계산하여 기계 구성 요소에 대한 설정을 조정하는 센서 피드백 루프를 생성합니다.
이 알고리즘은 세 가지 기본 계수, 즉 비율, 적분 및 미분을 모두 결합하여 제어 신호를 생성합니다.
실시간으로 작동하며 필요한 경우 수정 사항을 적용합니다. 이것은에서 볼 수 있습니다 자가 운전 자동차.
어떻게 진행합니까?
PID 제어기는 정확하고 최적의 제어를 적용하기 위해 출력에 대한 비례, 적분 및 미분 영향의 세 가지 제어 항을 사용합니다.
이 컨트롤러는 원하는 설정값과 측정된 프로세스 변수 간의 차이로 오류 값을 지속적으로 계산합니다.
그런 다음 제어 변수를 조정하여 시간 경과에 따른 오류를 최소화하도록 수정을 적용합니다.
어플리케이션
이 컨트롤러는 측정 가능한 출력, 해당 출력에 대해 알려진 이상적인 값, 측정 가능한 출력에 영향을 미칠 프로세스에 대한 입력이 있는 모든 프로세스를 제어할 수 있습니다.
컨트롤러는 온도, 압력, 힘, 무게, 위치, 속도 및 측정이 존재하는 기타 변수를 조절하기 위해 업계에서 사용됩니다.
결론
그래서 이들은 로봇 공학에서 사용되는 가장 일반적인 알고리즘 중 일부였습니다. 이러한 모든 알고리즘은 물리, 선형 대수 및 통계가 혼합되어 동작과 움직임을 매핑하는 데 사용되므로 매우 복잡합니다.
그러나 기술이 발전함에 따라 로봇 알고리즘은 더욱 복잡해질 것입니다. 로봇은 더 많은 작업을 완료하고 스스로 더 많이 생각할 수 있습니다.
이 기사가 재미 있었다면 HashDork's Weekly 구독하기 최신 AI, ML, DL, 프로그래밍 및 미래 기술 뉴스를 공유하는 이메일을 통한 업데이트.
댓글을 남겨주세요.