회원가입 ID/PW 찾기
AA

모터작동 이전까지는 값을 잘 출력하다가 모터를 켤 때마다 통신이 끊깁니다.

이렇게 한번 끊기고 나서는 통신을 재개하여도 보낸 데이터를 계속 보내는 현상또한 발생합니다. 좀 기다리면 새로운 데이터를 보내는데 이러면 또 몇초동안 같은 데이터를 반복하고 몇초 뒤 다른 데이터를 몇초동안 보내고 무한반복힙니다.

 

vertical horizontal 두 방향으로 모터에 센서 장착했고요 모터는  200W AC모터 사용합니다. 

코드 첨부합니다.

 

#include <Wire.h> //horizontal

#define I2C_Address 0x53

//ADXL345 register address

#define POWER_CTL 0x2D

#define DATA_FORMAT 0x31

#define X_axis 0x32

#define Y_axis 0x34

#define Z_axis 0x36

#define Range_2g 0

#define Range_4g 1

#define Range_8g 2

#define Range_16g 3

void setup() {

 Wire.begin(); // 센서 작동 시작

 Serial.begin(9600); // 통신속도 9600으로 설정

 Init_ADXL345(Range_4g);

 Serial.println("CLEARDATA");

 Serial.println("X,Y,Z");

}

void loop() {

 //3축 출력

 Serial.print("DATA,");

 Serial.print(Read_Axis(X_axis));

 Serial.print(", ");

 Serial.print(Read_Axis(Y_axis));

 Serial.print(", ");

 Serial.print(Read_Axis(Z_axis));

Serial.println();

 delay(20);

}

//I2C인터페이스를 통해 축을 읽음

int Read_Axis(byte a) {

 int data;

 Wire.beginTransmission(I2C_Address);

 Wire.write(a);

 Wire.endTransmission();

 Wire.beginTransmission(I2C_Address);

 Wire.requestFrom(I2C_Address, 2);

 if (Wire.available()) {

 data = (int)Wire.read();

 data = data | (Wire.read() << 8);

 }

 else {

 data = 0;

 }

 Wire.endTransmission();

 return data;

}

//ADXL345 초기화

void Init_ADXL345(byte r) {

 Wire.beginTransmission(I2C_Address);

 //감도설정

 Wire.write(DATA_FORMAT);

 Wire.write(r);

 Wire.endTransmission();

 //측정모드로 전환

 Wire.beginTransmission(I2C_Address);

 Wire.write(POWER_CTL);

 Wire.write(0x08);

 Wire.endTransmission();

}

    

댓글 1
  • No Profile

    모터 노이즈의 의한 물리적인 노이즈 간섭이 아니고

    단순히 제어 코드 문제라면요

    제어 코드에서 모터를 읽는 구문이 동기인지 비동기인지, 탈출 조건이 있는지도 점검해 보세요

     

    제어권을 마스터가 오롯이 가지는 등

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
2687 자유주제 납 쌓기 너무 힘듭니다 ㅠㅠ1 watt 24 2024.11.12
2686 자유주제 pads 9.5 윈도우11에서 잘돌아가나요?2 watt 12 2024.11.12
2685 자유주제 전자회로 문제 부탁드립니다 ㅠㅠ Hanroro 180 2024.06.14
2684 자유주제 안녕하십니까 !! 람다 130 2024.06.08
2683 자유주제 안녕하세요? 혹시 판넬 전장 설계 쪽에 전문가 분 있으실까요?1 오린이 141 2024.02.27
2682 자유주제 pads 설치2 dkwkjd 254 2023.11.19
2681 자유주제 필요한 파트 어떻게 찾으시나요?3 2445 238 2023.08.23
2680 자유주제 [(주)MDS테크] NVIDIA 개발자 밋업(4/20, 온라인) - '스마트팩토리' 및 '물류자동화' 무료 사전 등록 안내2 MDS테크 235 2023.04.17
2679 자유주제 HOT하드웨어 직무랑 pcb 설계랑 많이 다른가요?5 패즈em 1031 2023.03.22
2678 자유주제 pads 프로그램 무료로 받을방법 없나요?2 패즈em 299 2023.03.21
2677 자유주제 아트웍 공부2 렌지오 275 2023.02.22
2676 자유주제 kicad 와 pads 호환1 렌지오 314 2023.02.22
2675 자유주제 OrCAD Layout 로고넣기 할줄 아시는분?1 페스코 144 2023.01.13
2674 자유주제 PADS 9.5 EFA 파일 어떻게 설치하나요..1 -1333 214 2022.12.10
2673 자유주제 AutoCAD로 PADS에서 하는 작업을 할 순 없겠죠?1 응애개발자 111 2022.11.25
2672 자유주제 PADS 라이브러리 파일 따로 받는 사이트는 없겠죠??1 응애개발자 216 2022.11.25
2671 자유주제 사이트 들어오기5 영원한 211 2022.10.24
2670 자유주제 전기회로 저주파응답 FET응답기 관련 질문 드립니다 ㅜㅜ2 히중 127 2022.09.28
2669 자유주제 [회사소개] ONE STOP Board & Product Solution 엠테크1 나비71548 146 2022.06.16
2668 자유주제 HOT오랜만에 조립 PC 맞추고 MSI MAG B660M 사용기 적어보기3 글레이치 522 2022.04.27
Prev 1 2 3 4 5 6 7 8 9 10 ... 135 Next
  • 가정은 삶의 보물상자가 되어야 한다.
    - 코르뷔제
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.