회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
55 Software & IDEs HOTAllegro OrCAD 16.6 파일 보내주실 수 있나요?2 jihE 468 2018.01.28
54 Software & IDEs 소스 분석툴 관련 질문드려요2 아톰신 146 2017.01.02
53 Software & IDEs 리눅스 커널에 대해 공부하려고 하는데 서적 한부 추천 부탁드립니다.1 아톰신 135 2017.01.02
52 Software & IDEs PADS.9.4.1 받을수 있는 방법(훈련병)2 하운드 287 2016.07.13
51 Software & IDEs 리눅스는 여기 사이트와 거리가 먼거죠?1 pcb훈련변 162 2016.06.05
50 Software & IDEs epm3128act100-10n 프로그램 확인 땡쟁이 188 2015.12.17
49 Software & IDEs 신입생입니다.3 sunni 208 2015.12.09
48 Software & IDEs gps단말기 펌웨어질문입니다1 힘술쟁이 228 2015.11.18
47 Software & IDEs HOTUSB를 사용하는 디바이스 펌웨어 개발 책? 문서?1 베이아터 464 2014.01.09
46 Software & IDEs HOT큐블럭 프로그래밍 관련 질문 올립니다.1 행복이아빠 582 2013.08.22
45 Software & IDEs HOTProteus 7.7 Professional2 Keyshaun 745 2013.07.12
44 Software & IDEs HOTmsp430f1611을 사용하고 있는데 ADC에서 읽어들인 값하고 직접 테스터기로 찍은 값이 달라요1 김진성짱 799 2013.06.25
43 Software & IDEs HOTOV9620 SXGA 모드 설정 좀 도와주세요1 로미옹 502 2013.03.25
42 Software & IDEs HOT주차 시스템 회로 구성하는데요.. peng2 1190 2011.10.09
41 Software & IDEs HOTFreescale 질문인데 아시는 분 없나요? ㅠㅠ2 jzho 1530 2011.07.19
40 Software & IDEs HOTkey board 관련1 jjhuem 2442 2011.07.06
39 Software & IDEs HOT펌웨어 하다가 막히는 부분이 있어서 질문 드립니다. 마모루 1547 2011.06.13
38 Software & IDEs HOT어셈블리어 공부하기1 아이스으 2172 2011.03.22
37 Software & IDEs HOT스마트폰 앱 개발시 음성필터요..1 귤씅 2193 2011.01.28
36 Software & IDEs HOTWDK 관련 문의 입니다.1 소보루 1280 2010.11.18
  • 교양 교육의 기본목표는 인간을 자유롭게 하여, 그들의 잠재능력을 최대한으로 발휘하게 하는 것이다.
    - 화이트
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.