정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

앱 인벤터 아두이노 led가 켜지면 알림이 울리는 앱 인벤터 블록 코딩 질문이요 ㅜ
왕초보초보맨 | 2018-05-02

안녕하세요.

 

최종 목표는 자이로 센서가 180도 돌아가면 앱 인벤터로 만든 어플리케이션에 경고 알림이 울리도록 하는 작업을 하려고 합니다.

하지만 자이로 센서 값이 너무 복잡하여 180도가 돌아가면 led가 켜지고 led가 켜진값으로 블록을 코딩하여 어플리케이션에 알림이 울리도록 하려고 하는데요. 어떻게 해야 되는지 감이 안잡혀서 도움을 구합니다.

 

아두이노 코딩

#include<Wire.h>

const int MPU=0x68;  //MPU 6050 의 I2C 기본 주소
int16_t AcX,AcY,AcZ,Tmp,GyX,GyY,GyZ;
int ledpin = 11;

 


void setup(){
  Wire.begin();      //Wire 라이브러리 초기화
  Wire.beginTransmission(MPU); //MPU로 데이터 전송 시작
  Wire.write(0x6B);  // PWR_MGMT_1 register
  Wire.write(0);     //MPU-6050 시작 모드로
  Wire.endTransmission(true);
  Serial.begin(9600);
  pinMode(ledpin,OUTPUT);
 
 
}

void loop(){
  Wire.beginTransmission(MPU);    //데이터 전송시작
  Wire.write(0x3B);               // register 0x3B (ACCEL_XOUT_H), 큐에 데이터 기록
  Wire.endTransmission(false);    //연결유지
  Wire.requestFrom(MPU,14,true);  //MPU에 데이터 요청
  //데이터 한 바이트 씩 읽어서 반환
  AcX=Wire.read()<<8|Wire.read();  // 0x3B (ACCEL_XOUT_H) & 0x3C (ACCEL_XOUT_L)   
  AcY=Wire.read()<<8|Wire.read();  // 0x3D (ACCEL_YOUT_H) & 0x3E (ACCEL_YOUT_L)
  AcZ=Wire.read()<<8|Wire.read();  // 0x3F (ACCEL_ZOUT_H) & 0x40 (ACCEL_ZOUT_L)
  Tmp=Wire.read()<<8|Wire.read();  // 0x41 (TEMP_OUT_H) & 0x42 (TEMP_OUT_L)
  GyX=Wire.read()<<8|Wire.read();  // 0x43 (GYRO_XOUT_H) & 0x44 (GYRO_XOUT_L)
  GyY=Wire.read()<<8|Wire.read();  // 0x45 (GYRO_YOUT_H) & 0x46 (GYRO_YOUT_L)
  GyZ=Wire.read()<<8|Wire.read();  // 0x47 (GYRO_ZOUT_H) & 0x48 (GYRO_ZOUT_L)
 
  //시리얼 모니터에 출력
  Serial.print("AcX = "); Serial.print(AcX);
  Serial.print(" | AcY = "); Serial.print(AcY);
  Serial.print(" | AcZ = "); Serial.print(AcZ);
  Serial.print(" | Tmp = "); Serial.print(Tmp/340.00+36.53); 
  Serial.print(" | GyX = "); Serial.print(GyX);
  Serial.print(" | GyY = "); Serial.print(GyY);
  Serial.print(" | GyZ = "); Serial.println(GyZ);
  Serial.print("\n");
 
  if(AcX < 1)
  {
    if(AcY < 1300)
    {
      if(AcZ < 1)
      {
        digitalWrite(ledpin, HIGH);
        delay(5000);
      
      }

    }
 
  }
  else
  {
    digitalWrite(ledpin, LOW);
  }
 


   
  delay(1000);
}

 

이전글   |    오랜지보드wifi 날씨관련 질문 2018-05-02
다음글   |    처음 제작하는 데 도움을 주세요 2018-05-03