일단 메시지로 보아 컴파일에는 문제 없는 것으로 판단됩니다.
하드웨어 문제나 결선의 문제일 가능성이 높습니다.
1. 전원을 공급하여도 모터가 움직이지 않는다면 L298N 드라이버 보드의 결선이 가장 의심됩니다.
L298N 공급전압이 +12V, GND 를 통해 아두이노 보드의 Vin GND로 연결되었는지 확인해 보시기 바랍니다.
2. 아래 링크의 튜토리얼이나 기타 자료를 참조하여 MPU6050센서의 이상 유무를 체크해보시기 바랍니다.
http://scipia.co.kr/blog/245
[ Original Message ]
---컴파일 완료시 뜨는 오류?(컴파일은 되긴함)---
.
.
.
MPU6050.cpp:45:1: note: implicit this pointer type mismatch
MPU6050::MPU6050(uint8_t address):devAddr(address) {
MPU6050.h:436:7: note: type 'struct MPU6050' itself violates the C++ One Definition Rule
class MPU6050 {
MPU6050.h:436:7: note: the incompatible type is defined here
class MPU6050 {
MPU6050.cpp:45:1: note: '__comp_ctor ' was previously declared here
MPU6050::MPU6050(uint8_t address):devAddr(address) {
MPU6050.cpp:45:1: note: code may be misoptimized unless -fno-strict-aliasing is used
스케치는 프로그램 저장 공간 17144 바이트(53%)를 사용. 최대 32256 바이트.
전역 변수는 동적 메모리 639바이트(31%)를 사용, 1409바이트의 지역변수가 남음. 최대는 2048 바이트.
.
.
.
이런식으로 오류나는 것처럼 보이다가 컴파일이 완료가 됩니다.
(이게 보통 이렇게 주황글씨가 나오는거면 정상적인건 아닌거로 알고 있거든요)
(대충 해석해서보면 호환이 안된다는 것 같은데;;)
그래서 이걸 업로드를 하면 시리얼 모니터에 좌표 값? 이 좌르르 나오기는 하고
처음에만 되는것 같이 먼가 찔끔찔끔 움직이는데
컴퓨터에서 포트를 분리하고 따로 외부전원(AA건전지 6개) 를 연결하고 하면 아무런 동작도 안합니다
참고로 건전지는 새로 사서 했습니다.
그 이후에 컴퓨터에 연결하고 다시 시리얼 모니터를 확인하면
밑에 보이는 것처럼 나옵니다.
---시리얼모니터----
Initializing I2C devices...
Testing device connections...
MPU6050 connection failed
DMP Initialization failed (code 1)
참고로 처음에는 부품이 불량인가? 하고 부품들만 따로 실험을 해봤을 때에는 아주 잘됩니다.
회로연결은 두말 할 것 없이
http://scipia.co.kr/blog/227
여기 사이트에서 나오는데로 조립 및 회로연결도 다하고
잘못 연결된것은 없는지 10번도 넘게 봤습니다.
그리고 밑에 나와있는 이 기기를 움직이게 하는 예제?소스코드를 그대로 사용 하였고
라이브러리도 첨부된
이 세가지 전부 다운받아 라이브러리에 적용도 시켰습니다.
제가 사용하는 아두이노 버전이 1.8.16 이긴한데 버전 문제는 아닌것 같고
왜 안움직이는지 알고 싶습니다.
회원에게만 댓글 작성 권한이 있습니다.