arduino uno를 사용하여이 라인 팔로워 로봇을 디자인 한 후이 컴퓨터 제어 로봇을 개발했습니다. 컴퓨터를 통해 제어 할 수 있으며 특정 키보드 키를 사용하여 이동할 수 있습니다. 이전 프로젝트 인 PC 제어 홈 자동화에서 이미 논의한 직렬 통신을 통해 실행됩니다.
필요한 구성 요소
- Arduino UNO
- DC 모터
- 노트북
- 모터 드라이버 L293D
- 9 볼트 배터리
- 배터리 커넥터
- USB 케이블
- 로봇 섀시
개념 및 세부 사항
이 PC 제어 로봇 회로를 다른 세그먼트로 나눌 수 있으며 센서 섹션, 제어 섹션 및 드라이버 섹션입니다. 개별적으로 살펴 보겠습니다.
명령 또는 PC 섹션: 이 섹션에는 PC, 노트북 등과 같은 직렬 통신 장치가 있습니다.이 프로젝트에서는 데모를 위해 노트북을 사용했습니다. 하이퍼 터미널 또는 하이퍼 터미널, Hercules, 퍼티, arduino의 직렬 터미널 등과 같은 다른 직렬 터미널에 문자를 입력하여 arduino에 명령을 보냅니다.
제어 섹션: Arduino UNO는 로봇의 전체 프로세스를 제어하는 데 사용됩니다. Arduino는 랩톱에서 보낸 명령을 읽고 정의 된 문자 또는 명령과 비교합니다. 명령이 일치하면 arduino는 적절한 명령을 드라이버 섹션에 보냅니다.
드라이버 섹션: 드라이버 섹션은 L293D 모터 드라이버 IC와 2 개의 DC 모터로 구성됩니다. arduino가 모터에 충분한 전압과 전류를 공급하지 않기 때문에 모터 구동기는 모터 구동에 사용됩니다. 따라서 모터에 충분한 전압과 전류를 얻기 위해 모터 드라이버 회로를 추가합니다. arduino에서 명령을 수집하여 모터 드라이버는 명령에 따라 모터를 구동합니다.
일
직렬 통신을 통해 PC에서 arduino로 보내는 일부 명령에 의해 실행되도록 PC 제어 로봇을 프로그래밍했습니다. (아래 프로그래밍 섹션 참조)
'f'또는 'F'를 누르면 로봇이 전진하기 시작하고 다음 명령이 내려 질 때까지 계속 이동합니다.
'b'또는 'B'를 누르면 로봇은 상태를 변경하고 다른 명령이 주어질 때까지 뒤로 이동하기 시작합니다.
'l'또는 'L'을 누르면 로봇은 다음 명령까지 좌회전합니다.
'r'또는 'R'을 누르면 로봇이 오른쪽으로 회전합니다.
그리고 로봇을 멈추기 위해 우리는 arduino에 's'또는 'S'명령을 내립니다.
회로도 및 설명
위의 그림은 Arduino 기반 PC 제어 로봇의 회로도입니다. 로봇 구동을 위해 모터 드라이버 IC 만 arduino에 연결됩니다. 로봇에 명령을 보내기 위해 노트북과 USB 케이블을 사용하여 내장 된 직렬 데이터 변환기를 사용했습니다. 모터 드라이버의 입력 핀 2, 7, 10 및 15는 각각 arduino 디지털 핀 번호 6, 5, 4 및 3에 연결됩니다. 여기서는 모터 구동기 3과 6의 출력 핀에 하나의 모터가 연결되고 11과 14에 다른 모터가 연결되는 로봇을 구동하기 위해 두 개의 DC 모터를 사용했습니다. 모터 구동 용 모터 구동기에 전원을 공급하기 위해 9 볼트 배터리가 사용됩니다.
프로그램 설명
먼저 프로그래밍에서 모터에 대한 출력 핀을 정의했습니다.
그런 다음 설정에서 직렬 통신을 고정하고 시작하는 지침을 제공했습니다.
그 후 "serial.read ()"함수를 읽어 직렬 버퍼를 읽고 그 값을 임시 변수로 가져옵니다. 그런 다음 "if"문을 사용하여 정의 된 명령과 일치시켜 로봇을 작동시킵니다.
이 PC 제어 로봇을 이동하기위한 조건은 아래 표와 같습니다.
입력 명령 |
산출 |
로봇의 움직임 |
||||
왼쪽 모터 |
오른쪽 모터 |
|||||
|
|
|
|
|||
에스. |
|
|
|
|
|
중지 |
|
|
|
|
|
|
우회전 |
|
|
|
|
|
|
왼쪽으로 돌아 |
|
|
|
|
|
|
뒤로 |
|
|
|
|
|
|
앞으로 |
위의 표 조건에 따라 프로그램을 작성했습니다. 완전한 코드는 다음과 같습니다.