728x90

아두이노 28

아두이노 로봇 제작 - 진행 현황 현재까지 진행된 상태는 지난번 초음파 센서 장착 이후 아두이노 코드와 이를 제어할 유니티의 코드를 수정하고 추가하는 작업을 진행했다.이에 따라 사물을 인식 및 추적하면 현재의 화면에서 위치를 잡을 수 있다. 그리고 일정 거리가 될 때까지 가까이 이동한다.그러면 최종적인 위치에 다가갈때까지 천천히 이동한 뒤 잡을 수 있는 거리가 되면 로봇암이 동작하게 된다.대충 아래의 동영상과 같다. 현재는 제자리에서 바퀴만 회전다록 했다. 이유는 아래에 있다. 위의 제자리 이동의 이유에는 몇가지 문제가 있다. 이것은 프로그램적인 것보다는 제품의 문제가 크다. 일단 DC모터가 계산대로 세밀하게 움직이지 못하는 점, 바퀴가 생각보다 쉽게 미끄러지는 점이 있다.물론 DC모터를 서서히 움직이는 가속코드를 넣어둔 것이 있긴 하지.. 개발 관련/프로젝트 2024. 8. 12.
아두이노 로봇제작 상황 이 프로젝트를 구상한 지 거의 1년이 다 되어 간다. 시간이 참 빨리 흘러 가고 있다. 단지 이 프로젝트는 먼저 1차적인 프로토타입을 만드는 것인데 너무나도 더디게 진행되는 것 같다.  현생을 하면서 틈나는대로 하고 있지만 진도가 너무 느리다.마음먹고 시간을 좀더 투자한다면 적어도 2~3개월 이내에는 프로토타입을 거의 완성할 것인데 말이다.프로토타입에 너무 정성을 들이는 게 아닌가 한다. 따라서 이번 프로토타입은 이번 8월내에 마무리를 해야겠다. 프로그램적인 부분은 좀 미흡할 것 같으나 본격적인 프로젝트에서 이를 보완하여 진행해야겠다. 다음번엔 아예 3D 프린터를 구입하는 게 여러모로 빠르고 좋을 것 같다. 진행이 더딘 가장 큰 원인은 아마도 여러 가지 오류에 대한 해결이 늦어지는 탓일 것이다.특히나 p.. 개발 관련/프로젝트 2024. 8. 1.
아두이노 로봇제작-HC-SR04 초음파센서 장착 드디어 초음파 센서를 장착했다.그전에 원하는 기능으로 테스트를 진행하였다. 매번 거리값을 호출하는 것이 아니라 필요에 따라 호출해서 사용할 예정이다. 장착 시 디지털 핀이 남는 게 거의 없었다. 난감했으나 DC모터와 서보모터 충돌 방지차 9, 10번은 비워두었는데 여기에 설치하여 테스트했다.물론 아직 전체 동작을 테스트해 볼 수는 없었다.  초음파 센서는 가이드를 만들어서 장착했다. 완전 고정은 아니며 위로 쉽게 뺄 수 있도록 했다.가이드를 만드는 과정에서 설계미스가 있어 볼트 고정을 2곳 생각했으나 한 곳밖에 사용할 수 없다. 하지만 큰 지장은 없다. 미스는 설계도를 토대로 만든 3D와 실물의 몸체 프레임 고정 구멍의 위치가 다르기 때문에 나타났다..;; 아무튼 그래서 아래와 같이 고정하였다.  테스트.. 개발 관련/프로젝트 2024. 7. 26.
로봇제작 - 음성인식 대기 기능 개발 음성인식 테스트 중에 한 가지 필요한 기능이 생각나서 만들었다. 뭐냐면 음성을 인식하기 위해서는 계속 반복적으로 돌아간다. 인식이 없어도 돌아간다. 기능을 다 이용하지 못하기 때문에 조치가 필요하다. 매번 버튼을 눌러 껐다 켤 수는 없다.   따라서 만든 기능이 음성인식이 몇 회 이상 없을 경우 일반 소리인식으로 변경하는 것이다. 즉, 특정 크기의 소리가 인식되면 음성인식 모드로 전환하는 것이다.   아래 영상에서 디버그 메시지에 표시를 해 두었다. 아울러 앱에도 메시지창이 뜨도록 만들었다. 개발 관련/프로젝트 2024. 7. 20.
아두이노 HC-SR04(초음파센서) 로봇 프로젝트에서 사용하고자 HC-SR40 초음파 센서를 이용하기로 하였다.관련된 자료는 인터넷에 널렸다.다만 나는 항상 사용하는 것이 아닌 필요할 때마다 사용할 것이므로 약간은 수정하였으며 유니티에서 필요할 때 특정 명령어로 호출할 것이다.아래와 같은 코드로 진행 할 것으로 실제 유니티로 회신할 요소는 거리값만 전달할 것이다.비교적 간단하게 처리된다.12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#define TRIG 10  // 송신 > 14(A0)#define ECHO 11  // 수신 > 15(A1) float _t;char _inString; void setup() {  Serial... 개발 관련/HW 관련 2024. 7. 13.
아두이노 로봇제작 전압분배 관련 전압분배에 대해 추가적인 설명을 하자면, 간단한 사항이다.보조배터리에서 나온 5V를 DC-DC컨버터 2개를  병렬로 연결하여 한쪽은 9V 출력, 다른 한쪽은 6V 출력을 하도록 한다.그림으로 표현하자면 아래와 같다. 마침 하나의 USB를 micro 5p 짜리 2개로 분배해 주는 제품이 있어서 딱 맞게 사용하였다. 사실 이렇게 해도 되는지는 잘 모르겠다. 어쨌든 각각 동작하는데 문제가 없으니까.다만 배터리 소모에 대해서도 잘 모르긴 하지만 더 빨리 소요되지 않을까 한다. 아래 영상처럼 각각 아주 잘 작동한다. 이것으로 만족한다.아울러 UI요소 배치가 해상도 변경 시 적용이 안되었던 것을 다시 적용하였다. 일단 화면 기준비율은 16:9이다. 개발 관련/프로젝트 2024. 6. 22.
아두이노 로봇제작 DC모터와 서보모터 전압 분리 지난번 서보모터 기준으로 전압을 6V로 설정했더니 DC모터의 출력이 너무 떨어지는 바람에 너무 약한 동작을 보여주었다. 따라서 이전 포스팅에서 언급한 것처럼 우선 현재 상태에서 할 수 있는 사항은 여분의 DC-DC컨버터를 이용해서 서보모터와 DC모터의 전압을 따로 주는 것이다. 즉, 서보모터는 6V의 전압을 주고 DC모터는 9V의 전압을 주는 것이다. 최종적으로 장착하고 테스트를 진행하였다.  보는 바와 같이 DC모터 쪽이 훨씬 더 힘 있게 시원스럽게 동작하는 것을 볼 수 있다.(관련 이전 포스팅을 보면 이동시 힘이 없다는 것을 보면 알 수 있다.)더불어 서보모터도 정상적으로 동작하였다.  이제 하드웨어는 특별한 사항이 없는 한 이대로 유지하고 프로그램 쪽을 보완하고 추가해야겠다. 개발 관련/프로젝트 2024. 6. 19.
로봇제작 - 로봇암 음성인식 제어 테스트 현재는 로봇암의 음성인식 테스트를 진행 중이다.뭐 빈캔 정도는 들어 올리는데 문제는 없겠다.간혹 튀는 점이 있긴 하는데... 원인은 잘 모르겠다. 시간 되면 고쳐봐야겠다. 아울러 몇 가지 버그를 수정 중이다. 그중 하나가 이동 중에 장애물 근처로 가면 IR센서 감지에 의해 멈추는데,, 음성인식으로는 더 이상 움직이질 않는다. 수동은 잘되는데...아마도 센서에 계속 감지가 되기 때문에 그런 것 같다. 이는 후진으로만 움직일 수 있도록 예외처리가 필요한 부분이다.이런 것에 대한 버그들을 고치고 있다.최종적으로는 사물인식과 합쳐서 스스로 물건을 찾아서 쓰레기 통에 넣는 기능을 구현하고자 한다.과연 잘 될지.. [영상의 음성은 느끼하다.] 어느 정도 수정을 하고 나면 MG995 서보모터로 교체를 먼저 진행한 뒤.. 개발 관련/프로젝트 2024. 5. 4.
로봇제작 - 아두이노 PWM 충돌 문제 해결 드디어 충돌 문제를 모두 해결했다. 더 이상의 오작동은 발견되지 않았다.. 다만.. 배터리가 작아서 같이 쓰면 힘이 약하다. 배터리를 적절하게 분배하는 최적화를 진행해야 할 것 같다. 이로서 서보모터 4개, DC모터 2개를 정상적으로 원하는 대로 움직일 수 있다. 이전에 포스트에서는 다 된 줄 알았는데, 한 곳이 해결되면 다른 쪽이 안 되는 등 뭔가 한 개씩 문제가 있었다. 여러 가지 자료를 찾아보고 결론 내린 것이 핀을 적절하게 배치해야 된다는 것이다. 아두이노의 PWM 핀중에서 다음과 같은 것이 같은 타이머를 사용한다고 한다.(내용은 뭐 잘 모르니까 일단 참고..) 5, 6 : 카운터/타이머 0 사용 9, 10 : 카운터/타이머 1 사용 3, 11 : 카운터/타이머 2 사용 이런 쪽은 잘 안 써서 잘.. 개발 관련/프로젝트 2024. 4. 14.
로봇제작 - 아두이노 PWM 충돌 문제 기존에 합치는 작업으로 테스트 중이었는데 문제가 발생했다. 바로 서보모터 작동 후 DC모터의 한쪽이 멈추는 것이다. 일단 서보모터 작동 후에 반드시 이 오류가 발생한다. 처음에는 초기화가 잘못된 줄 알고 코드만 열심히 고쳐가며 테스트를 했는데 뭔 짓을 해도 같은 오류가 발생하여 난감하였다. DC모터 쪽만 PWM을 주고 나머지 서보모터는 일반 디지털포트만 할당했음에도 문제가 발생했다. 또한 작동 이후 다시 서보모터를 동작시키면 서보 모터쪽도 부르르 떨면서 오작동 된다....;;;; 이에 여러 검색을 해도 잘 안나와서 해외 아두이노 포럼에서 정답을 찾았다. Problem using both a dc motor and servo - Projects Discussion and Showcase / Interact.. 개발 관련/프로젝트 2024. 4. 11.
728x90