Toggle navigation
Toggle navigation
This project
Loading...
Sign in
2020-2-capstone-design1
/
JSH_project
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
FriedBob
2020-12-13 00:07:12 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
e6f7d86c4df3a6fdfc4694c5d104d5a251e6ee04
e6f7d86c
1 parent
b7ec5712
충격량,진동강도 Arduino-Android app 간 전송 updated
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
50 additions
and
18 deletions
Project_source/temp/shock_detect.ino
Project_source/temp/shock_detect/shock_detect.ino
Project_source/temp/shock_detect.ino
View file @
e6f7d86
// I2Cdev and MPU6050 must be installed as libraries, or else the .cpp/.h files
// for both classes must be in the include path of your project
// 전처리부
#include <SoftwareSerial.h>
#include <SoftwareSerial.h>
// 0,1번핀 제외하고 Serial 통신을 하기 위해 선언
#include "I2Cdev.h"
#include "MPU6050.h"
...
...
@@ -11,8 +11,11 @@
#define mpu_add 0x68
#define Pin_Relay 13
#define BT_RXD 7
#define BT_TXD 6
#define rxPin 7
#define txPin 6
SoftwareSerial
mySerial
(
6
,
7
);
MPU6050
mpu
;
...
...
@@ -182,14 +185,13 @@ void Shock_Sensing(){
}
// BLUETOOTH TRANSACTION
SoftwareSerial
bluetooth
(
BT_RXD
,
BT_TXD
);
// 블루투스 모듈
/*main 함수부*/
void
setup
()
{
Serial
.
begin
(
9600
);
// 시리얼 속도 설정
mySerial
.
begin
(
9600
);
// 블루투스 통신 시작
Serial
.
println
(
"Initializing I2C devices..."
);
bluetooth
.
begin
(
9600
);
// 블루투스 속도 설정
//
bluetooth.begin(9600); // 블루투스 속도 설정
Serial
.
println
(
"Initializing Bluetooth devices..."
);
mpu6050_init
();
// 가속도 센서 초기화
...
...
@@ -200,7 +202,7 @@ void setup() {
digitalWrite
(
Pin_Relay
,
LOW
);
// HIGH - LED on, LOW - LED off (DEFAULT : OFF)
}
char
char_maker
(
char
x
){
// 백그라운드 앱에 전송할 충격을 구분해서 char값으로 반환하는 함수
char
char_maker
(
long
x
){
// 백그라운드 앱에 전송할 충격을 구분해서 char값으로 반환하는 함수
if
(
x
<=
15000
){
return
'L'
;
}
...
...
@@ -215,6 +217,7 @@ char char_maker(char x){ // 백그라운드 앱에 전송할 충격을 구분
void
loop
()
{
value_init
();
//가속도-각도 관련 초기값 선언
// softwareSerial.print("test");
//---------dump--------------------do not erase yet-
//unsigned long currentMillis = 0;
//previousMillis = currentMillis;
...
...
@@ -222,15 +225,28 @@ void loop() {
//if(currentMillis - previousMillis >= interval){
//--------------------------------------------------
Shock_Sensing
();
if
(
State_Parameter
==
true
){
shock_sum
+=
deltha
;
//currentMillis = millis();
//
currentMillis = millis();
}
if
(
State_Parameter
==
false
&&
shock_sum
!=
0
){
bluetooth
.
write
(
char_maker
(
shock_sum
));
// 블루투스로 충격정도 전송 (shock_maker 라는 char 리턴함수를 통해 진동강도 전송)
if
(
Serial
.
available
()){
// 블루투스로 충격정도 전송 (shock_maker 라는 char 리턴함수를 통해 진동강도 전송)
mySerial
.
write
(
char
(
char_maker
(
shock_sum
)));
Serial
.
println
(
char_maker
(
shock_sum
));
Serial
.
println
(
"send complete"
);
}
//bluetooth.write(char_maker(shock_sum));
Serial
.
print
(
"누적 충격값 : "
);
Serial
.
println
(
shock_sum
);
// 충격 누적값 전송
shock_sum
=
0
;
// 충격의 지속이 끝났으니 원래값인 0으로 초기화
}
if
(
mySerial
.
available
()){
// 안드로이드 쪽에서 값을 아두이노로 가져오는 코드, 필요없을거 같아서 주석처리
Serial
.
write
(
mySerial
.
read
());
}
}
\ No newline at end of file
...
...
Project_source/temp/shock_detect/shock_detect.ino
View file @
e6f7d86
// I2Cdev and MPU6050 must be installed as libraries, or else the .cpp/.h files
// for both classes must be in the include path of your project
// 전처리부
#include <SoftwareSerial.h>
#include <SoftwareSerial.h>
// 0,1번핀 제외하고 Serial 통신을 하기 위해 선언
#include "I2Cdev.h"
#include "MPU6050.h"
...
...
@@ -11,8 +11,11 @@
#define mpu_add 0x68
#define Pin_Relay 13
#define BT_RXD 7
#define BT_TXD 6
#define rxPin 7
#define txPin 6
SoftwareSerial
mySerial
(
6
,
7
);
MPU6050
mpu
;
...
...
@@ -182,14 +185,13 @@ void Shock_Sensing(){
}
// BLUETOOTH TRANSACTION
SoftwareSerial
bluetooth
(
BT_RXD
,
BT_TXD
);
// 블루투스 모듈
/*main 함수부*/
void
setup
()
{
Serial
.
begin
(
9600
);
// 시리얼 속도 설정
mySerial
.
begin
(
9600
);
// 블루투스 통신 시작
Serial
.
println
(
"Initializing I2C devices..."
);
bluetooth
.
begin
(
9600
);
// 블루투스 속도 설정
//
bluetooth.begin(9600); // 블루투스 속도 설정
Serial
.
println
(
"Initializing Bluetooth devices..."
);
mpu6050_init
();
// 가속도 센서 초기화
...
...
@@ -200,7 +202,7 @@ void setup() {
digitalWrite
(
Pin_Relay
,
LOW
);
// HIGH - LED on, LOW - LED off (DEFAULT : OFF)
}
char
char_maker
(
char
x
){
// 백그라운드 앱에 전송할 충격을 구분해서 char값으로 반환하는 함수
char
char_maker
(
long
x
){
// 백그라운드 앱에 전송할 충격을 구분해서 char값으로 반환하는 함수
if
(
x
<=
15000
){
return
'L'
;
}
...
...
@@ -215,6 +217,7 @@ char char_maker(char x){ // 백그라운드 앱에 전송할 충격을 구분
void
loop
()
{
value_init
();
//가속도-각도 관련 초기값 선언
// softwareSerial.print("test");
//---------dump--------------------do not erase yet-
//unsigned long currentMillis = 0;
//previousMillis = currentMillis;
...
...
@@ -222,15 +225,28 @@ void loop() {
//if(currentMillis - previousMillis >= interval){
//--------------------------------------------------
Shock_Sensing
();
if
(
State_Parameter
==
true
){
shock_sum
+=
deltha
;
//currentMillis = millis();
//
currentMillis = millis();
}
if
(
State_Parameter
==
false
&&
shock_sum
!=
0
){
bluetooth
.
write
(
char_maker
(
shock_sum
));
// 블루투스로 충격정도 전송 (shock_maker 라는 char 리턴함수를 통해 진동강도 전송)
if
(
Serial
.
available
()){
// 블루투스로 충격정도 전송 (shock_maker 라는 char 리턴함수를 통해 진동강도 전송)
mySerial
.
write
(
char
(
char_maker
(
shock_sum
)));
Serial
.
println
(
char_maker
(
shock_sum
));
Serial
.
println
(
"send complete"
);
}
//bluetooth.write(char_maker(shock_sum));
Serial
.
print
(
"누적 충격값 : "
);
Serial
.
println
(
shock_sum
);
// 충격 누적값 전송
shock_sum
=
0
;
// 충격의 지속이 끝났으니 원래값인 0으로 초기화
}
if
(
mySerial
.
available
()){
// 안드로이드 쪽에서 값을 아두이노로 가져오는 코드, 필요없을거 같아서 주석처리
Serial
.
write
(
mySerial
.
read
());
}
}
...
...
Please
register
or
login
to post a comment