Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed mbedTimer SDFileSystem MU2 GPS
Diff: main.cpp
- Revision:
- 20:b70e877cdc0f
- Parent:
- 19:75067f4d49b6
- Child:
- 21:fa4360ec5014
diff -r 75067f4d49b6 -r b70e877cdc0f main.cpp
--- a/main.cpp Sat Sep 07 22:07:18 2019 +0000
+++ b/main.cpp Mon Sep 09 05:41:18 2019 +0000
@@ -1,3 +1,9 @@
+/*******************************************************************************
+2019.09.07
+This is a test program!
+*******************************************************************************/
+
+
#include "mbed.h"
#include "MU2.h"
#include "GPS.h"
@@ -5,19 +11,19 @@
#include "inletclose.h"
#include "mbedTimer.h"
-#define WAITTIME 60 //フライトピン抜けてからの待機時間 60
+#define WAITTIME 10 //フライトピン抜けてからの待機時間 60
#define FIRETIME 5 //溶断時間を設定 5
-#define FALLTIME 420 //シェンロン展開してインレットを閉鎖するまでの時間を設定 420
+#define FALLTIME 60 //シェンロン展開してインレットを閉鎖するまでの時間を設定 420
#define THRESHOLID 0.45 //感圧のしきい値 0.45
#define SAMPLENUMBER 5 //しきい値判定に用いるサンプル数 5
#define CLOSETIME 60 //しきい値超えてからのインレット閉鎖機構の稼働時間を設定 60
-#define LIMITTIME 1800 //しきい値超えなくてもインターバルモードへ移行
-#define INTERVALTIME 7200 //インターバルモードの時間 1800
+#define LIMITTIME 60 //しきい値超えなくてもインターバルモードへ移行
+#define INTERVALTIME 60 //インターバルモードの時間 1800
#define INTERVAL_HIGH 5 //インターバルモードでモーター回す時間 5
#define INTERVAL_LOW 20 //インターバルモードでモーター止める時間 20
-char fname[]="/sd/CanSat/log0904EtoE2.csv";//ファイル名をここで設定
-char fname2[]="/sd/CanSat/sensor0904EtoE2.csv";//感圧センサーのログファイル
+char fname[]="/sd/CanSat/log0907GPStest1.csv";//ファイル名をここで設定
+char fname2[]="/sd/CanSat/sensor0907GPStest1.csv";//感圧センサーのログファイル
////////////////フライトピンが抜ける→シェンロン展開→インレット閉鎖→待機
//シーケンス番号//1//////////////////2///////////3///////////4///
@@ -83,8 +89,8 @@
val=timer_rec.read();
myTimer.sendMessage(val);
fprintf(fp, "%s CanSatStart!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("CanSat Start!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("CanSat Start!\r\n");
/*******************************************************************************
溶断まで待機
@@ -97,12 +103,12 @@
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s GPSstart!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("GPS start!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("GPS start!\r\n");
while(1) {
myled=0;
- myled2=1;
+ myled2=0;
mygps.getGPGGA();
if(mygps.GPSread) {
@@ -110,8 +116,8 @@
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
timer++;
}
@@ -136,7 +142,7 @@
//溶断機構部分
fprintf(fp, "FireStart!\r\n");
- MuPort.send("Fire Start!\r\n");
+ //MuPort.send("Fire Start!\r\n");
FIRE=1;
myled=1;
@@ -144,16 +150,16 @@
FIRE=0;
myled=0;
- /*wait(3);
+ wait(3);
FIRE=1;
myled=1;
wait(3);//溶断にかかる時間TBD秒
FIRE=0;
- myled=0;*/
+ myled=0;
fprintf(fp, "FireFinish!\r\n");
- MuPort.send("Fire Finish!\r\n");
+ //MuPort.send("Fire Finish!\r\n");
//溶断機構終わり
@@ -173,8 +179,8 @@
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
timer++;
}
@@ -206,8 +212,8 @@
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s ClosingModeStart!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Closing Mode start!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Closing Mode start!\r\n");
timer=0;//モーター時間で止める用
timer2=0;
@@ -236,10 +242,10 @@
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
snprintf(sensorMessage, 128, "%f", ave_sensor);
- MuPort.send(sensorMessage);
+ //MuPort.send(sensorMessage);
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
timer++;
}
@@ -254,8 +260,8 @@
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s Get the rigidity!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Get the rigidity!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Get the rigidity!\r\n");
timer=0;//モーター時間で止める用
@@ -278,10 +284,10 @@
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
snprintf(sensorMessage, 128, "%f", ave_sensor);
- MuPort.send(sensorMessage);
+ //MuPort.send(sensorMessage);
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
timer++;
}
@@ -297,15 +303,15 @@
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- fprintf(fp, "%s ClosingModeFinish!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Closing Mode Finish!\r\n");
+ fprintf(fp, "%s TimeOverClosingModeFinish!\r\n",myTimer.timeMessage);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Time over. Closing Mode Finish!\r\n");
fclose(fp);
fclose(fp2);
break;
}
-
+
if(val>=1800) {
//timer_rec.stop();
@@ -315,15 +321,15 @@
val=0;
}
-
+
if(timer>LIMITTIME) {
inlet.Stop();
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s ClosingModeFinsh!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Closing Mode Finish!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Closing Mode Finish!\r\n");
fclose(fp);
fclose(fp2);
break;
@@ -344,8 +350,8 @@
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s IntervalModeStart!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Interval Mode start!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Interval Mode start!\r\n");
fclose(fp);
timer=0;//モーター時間で止める用
@@ -377,10 +383,10 @@
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
snprintf(sensorMessage, 128, "%f\n", ave_sensor);
- MuPort.send(sensorMessage);
+ //MuPort.send(sensorMessage);
fp= fopen(fname, "a");
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
fclose(fp);
@@ -394,15 +400,15 @@
if(timer3>=INTERVAL_HIGH) {
inlet.Stop();
- myled=0;
- myled2=0;
- myled3=0;
- myled4=1;
timer3=0;
timer4=0;
while(1) {
+ myled=0;
+ myled2=0;
+ myled3=0;
+ myled4=1;
mygps.getGPGGA();
val=timer_rec.read();
@@ -417,14 +423,14 @@
timer2++;
if(mygps.GPSread) {
- myled3=1;
+ myled2=1;
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
snprintf(sensorMessage, 128, "%f\n", ave_sensor);
- MuPort.send(sensorMessage);
+ //MuPort.send(sensorMessage);
fp= fopen(fname, "a");
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
fclose(fp);
@@ -459,8 +465,8 @@
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s IntervalModeFinish!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Interval Mode finish!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Interval Mode finish!\r\n");
fclose(fp);
fclose(fp2);
break;
@@ -480,8 +486,8 @@
val3=val+val2;
myTimer.sendMessage(val3);
fprintf(fp, "%s StandbyModeStart!\r\n",myTimer.timeMessage);
- MuPort.send(myTimer.timeMessage);
- MuPort.send("Standby mode start!\r\n");
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send("Standby mode start!\r\n");
fclose(fp);
@@ -489,16 +495,16 @@
myled=0;
myled2=0;
myled3=0;
- myled4=1;
+ myled4=0;
mygps.getGPGGA();
if(mygps.GPSread) {
- myled3=1;
+ myled4=1;
val=timer_rec.read();
val3=val+val2;
myTimer.sendMessage(val3);
- MuPort.send(myTimer.timeMessage);
- MuPort.send(mygps.getGPS);
+ //MuPort.send(myTimer.timeMessage);
+ //MuPort.send(mygps.getGPS);
fp= fopen(fname, "a");
fprintf(fp, "%s %s\n",myTimer.timeMessage,mygps.getGPS);
fclose(fp);