728x90

DC모터 7

아두이노 로봇 제작 - 진행 현황 현재까지 진행된 상태는 지난번 초음파 센서 장착 이후 아두이노 코드와 이를 제어할 유니티의 코드를 수정하고 추가하는 작업을 진행했다.이에 따라 사물을 인식 및 추적하면 현재의 화면에서 위치를 잡을 수 있다. 그리고 일정 거리가 될 때까지 가까이 이동한다.그러면 최종적인 위치에 다가갈때까지 천천히 이동한 뒤 잡을 수 있는 거리가 되면 로봇암이 동작하게 된다.대충 아래의 동영상과 같다. 현재는 제자리에서 바퀴만 회전다록 했다. 이유는 아래에 있다. 위의 제자리 이동의 이유에는 몇가지 문제가 있다. 이것은 프로그램적인 것보다는 제품의 문제가 크다. 일단 DC모터가 계산대로 세밀하게 움직이지 못하는 점, 바퀴가 생각보다 쉽게 미끄러지는 점이 있다.물론 DC모터를 서서히 움직이는 가속코드를 넣어둔 것이 있긴 하지.. 개발 관련/프로젝트 2024. 8. 12.
아두이노 로봇제작 DC모터와 서보모터 전압 분리 지난번 서보모터 기준으로 전압을 6V로 설정했더니 DC모터의 출력이 너무 떨어지는 바람에 너무 약한 동작을 보여주었다. 따라서 이전 포스팅에서 언급한 것처럼 우선 현재 상태에서 할 수 있는 사항은 여분의 DC-DC컨버터를 이용해서 서보모터와 DC모터의 전압을 따로 주는 것이다. 즉, 서보모터는 6V의 전압을 주고 DC모터는 9V의 전압을 주는 것이다. 최종적으로 장착하고 테스트를 진행하였다.  보는 바와 같이 DC모터 쪽이 훨씬 더 힘 있게 시원스럽게 동작하는 것을 볼 수 있다.(관련 이전 포스팅을 보면 이동시 힘이 없다는 것을 보면 알 수 있다.)더불어 서보모터도 정상적으로 동작하였다.  이제 하드웨어는 특별한 사항이 없는 한 이대로 유지하고 프로그램 쪽을 보완하고 추가해야겠다. 개발 관련/프로젝트 2024. 6. 19.
로봇제작 - 전압 보완 지난번 마지막 하드웨어 업데이트에서 전압을 다시 6V로 내렸다. 서보모터들의 문제가 될 수 있기 때문이다. 서보모터의 문제는 해결되었는데 문제는 DC모터다. 생각보다 전체 무게가 좀 나가서 6V로 DC모터를 움직이기에는 힘이 너무 약하다. 그때 촬영한 동영상을 보면 회전 시 한쪽은 아예 잘 돌지 않는다. 원래 같이 돌아야 회전이 빠르다. 따라서 이번에 전압을 따로 적용하기로 하여 서보는 그대로 6V 전압을 주고, DC모터 쪽은 9V의 전압을 주는게 좋을 것 같아서 각각 주기로 한 것이다.인터넷에 자료를 찾아보니 저항으로 분배하는 방법이 있는데, 현재 가지고 있는 저항이 33KΩ과 220Ω 밖에 없어서 33KΩ을 연결했으나 0.3V밖에 안줄어든다. 100KΩ 몇개는 붙여야 9V에서 6V로 줄어들 것 같아서.. 개발 관련/프로젝트 2024. 6. 13.
로봇제작 - 아두이노 PWM 충돌 문제 기존에 합치는 작업으로 테스트 중이었는데 문제가 발생했다. 바로 서보모터 작동 후 DC모터의 한쪽이 멈추는 것이다. 일단 서보모터 작동 후에 반드시 이 오류가 발생한다. 처음에는 초기화가 잘못된 줄 알고 코드만 열심히 고쳐가며 테스트를 했는데 뭔 짓을 해도 같은 오류가 발생하여 난감하였다. DC모터 쪽만 PWM을 주고 나머지 서보모터는 일반 디지털포트만 할당했음에도 문제가 발생했다. 또한 작동 이후 다시 서보모터를 동작시키면 서보 모터쪽도 부르르 떨면서 오작동 된다....;;;; 이에 여러 검색을 해도 잘 안나와서 해외 아두이노 포럼에서 정답을 찾았다. Problem using both a dc motor and servo - Projects Discussion and Showcase / Interact.. 개발 관련/프로젝트 2024. 4. 11.
로봇제작 - 로봇암의 아두이노 코드 완성? 드디어 로봇암을 제어하는 코드를 완성?? 최종적인 것은 이전에 만들었던 DC모터 제어 및 블루투스 통신 부분과 합치는 것이겠다. 아래의 코드는 일단 로봇암 제어하는 부분을 일단은 완성했다고 볼 수 있겠다. 다만... 이 부분은 내용을 끝자락에서 다시 설명하겠다. 아래의 코드를 간략히 설명하면 작동은 크게 3가지로 구분된다. 첫 번째는 리셋모드로 중간의 어떤 동작에서 바로 초기세팅으로 돌아갈 때 팍 하고 움직이는 것이 아니라 부드럽게 원래 상태로 돌아가는 거라 보면 된다. 두 번째는 입력모드는 시리얼 통신으로 입력된 string 배열을 한 번에 가져와 명령어별로 구분하여 동작하는 방식이다. 실시간 제어도 가능하겠지만 문제는 사물인식과 음성인식 등으로 모바일 환경에서 렉이 걸릴 확률이 높을 것 같아서 선택한.. 개발 관련/프로젝트 2024. 4. 5.
로봇제작 - 로봇암 전체 동작 테스트 아직 배선 정리가 잘 안 되지만 지난번 조립한 것을 전체 동작을 확인해 보기 위해 아두이노 자체적으로 테스트 코드를 작성하였다. 결과적으로 동작이 너무 휘청휘청 거린다..;;; 이건 뭐 어쩔 수 없겠다. 담엔 좀 더 튼튼한 프레임으로 해봐야겠다. 모두 완성되면 현재의 프레임을 3D나 이미지로 출력한 곳에 측정 수치를 별도로 적어놔야겠다. 어쨌든 프로토타입의 하드웨어 부분은 완성되었다고 보면 될 것 같다. 다만 배선 부분은 첫 번째 프레임 밑에 아크릴을 뚫어서 그쪽으로 배치해야겠다. 자꾸 걸려버린다.;;; 아두이노의 테스트 코드는 아래와 같다. 배터리 절약을 위해 로봇암을 움직이지 않을 때는 연결을 해제하고 움직일 때 연결하도록 코드를 구성했다. 모터 동작 소리가 자꾸 거슬려서 그렇게 처리했더니 조용하다... 개발 관련/프로젝트 2024. 3. 28.
DC모터 동작 테스트 사물인식은 아무래도 다른 방법으로 좀 고려해 봐야 할 것 같다. CPU는 펜티엄 골드 + GTX1050인데 아무래도 CPU가 지원을 안 하는 것 같다. 집 컴은 AMD라 안되고... 아무튼 이 부분을 계속 붙잡고 있으니 방법 찾는데 오래 걸릴 것 같아 다른 부분을 진행하기로 하였다. 지난번 서보 테스트 이후 DC기어모터 달린 부품을 샀다. 아마도 아두이노 로봇으로 가장 많이 등장하는 샘플이지 않을까 한다. 그만큼 널리 테스트용으로 사용된다. 근데 문제는 여기에 한층 더 올리고 싶은데 마땅한 부품을 팔지 않는다. 그렇다고 두 개 살 수는 없고 해서, 이 위에 얹을 아크릴을 구매했다. 여기에 필요한 구멍은 2.5파이 드릴로 뚫으면 딱 맞을 것 같다. 그리고 어차피 지금 빵판이 너무크고 선도 테스트용이라 좀 .. 개발 관련/프로젝트 2024. 1. 12.
728x90