회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
226 개발용역 DC SMPS 출력 조절 PCB 개발 노력달성 164 2024.07.03
225 개발용역 H/W OEM & ODM(회로설계, FPGA설계, MCU, DSP 등)2 bobby 301 2024.05.20
224 개발용역 H/W, S/W, F/W 개발, PCB 설계&제작, SI/PI 시뮬레이션, SMT 및 완제품 조립생산, KC/CE 인증지원 _ 엠테크 입니다. 나비71548 373 2024.04.26
223 개발용역 출력 전압 조정 보드 개발 요청 주재영 148 2023.10.04
222 개발용역 아트웍 부탁드립니다.1 책꽂이 219 2023.02.12
221 개발용역 자동차 전장 설계(펌웨어) 개발 의뢰1 민아아빠 260 2022.04.20
220 개발용역 IMM board2 강동하하 132 2022.03.05
219 개발용역 HOTPCB Artwork/개발용역 피씨비아트3 피씨비아트 436 2021.11.05
218 개발용역 PCA9957 이용 가능자 찾습니다.2 List302 170 2021.09.29
217 개발용역 HOTBLDC 컨트롤 프로그램 해석 수정가능자 찾습니다.3 카드론 468 2021.03.17
216 개발용역 HOT18F계열 사용가능한 펌웨어 프로그램어 알바 및 정규직원을 모집 18F66K80 -2744 408 2020.03.23
215 개발용역 HOT[회사소개] 전자회로 & PCB설계, S/W개발, 산업용 Control 보드 & 시스템개발, ODM & EMS "엠테크"입니다. 나비71548 554 2020.01.23
214 개발용역 HOTPCB 설계 및 제작, SI/PI 분석, 회로 설계 합니다.2 김가 615 2019.11.07
213 개발용역 HOT[회사소개] 전자회로 & PCB설계, SI & PI분석, FPGA보드, 반도체 TEST보드 "엠테크"입니다.1 나비71548 522 2019.10.18
212 개발용역 하드웨어 개발/제작 (FPGA/MCU/각종 Analog-Front End회로/Power모듈/배터리보호회로/배터리팩/ 등 하드웨어 전반 ukine**** 341 2019.07.19
211 개발용역 HOTPCB 아트웍 해드립니다! (포트폴리오O)2 -4228 519 2019.06.28
210 개발용역 HOT회로설계 / PCB설계 ( ARTWORK ) / 제작 / 조립2 空智 461 2019.06.18
209 개발용역 PCB 설계 믿고 맡겨주세요. ^^1 하재필 370 2019.04.24
208 개발용역 대학원생 포트란 과제 의뢰드립니다. -3800 334 2019.01.14
207 개발용역 HOTmatlab 대학생 과제 의뢰1 우어어억 487 2018.11.30
Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
  • 어떤 일이건 60분을 계속 생각하면 결국 도달하는 것은 혼란과 불행이다.
    - 제임스 사버
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.