Weather casting with Machine Learning (SVM and SRNN).

Dependencies:   EthernetInterface GraphicHandler NTPClient SRNN SVM SensorModule mbed-rtos mbed

Committer:
yukari_hinata
Date:
Thu Feb 19 19:21:16 2015 +0000
Revision:
5:b61f3f5b0fc8
Parent:
3:5add3759e08a
Have a bug. This program CANNOT operate permanentry

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yukari_hinata 0:f6cdb984f638 1 #ifndef SHARE_H_INCLUDED
yukari_hinata 0:f6cdb984f638 2 #define SHARE_H_INCLUDED
yukari_hinata 0:f6cdb984f638 3
yukari_hinata 2:20ecfe6edd71 4 #include "mbed.h"
yukari_hinata 2:20ecfe6edd71 5
yukari_hinata 2:20ecfe6edd71 6 /* 共通のパラメタ類をマクロで定義 */
yukari_hinata 2:20ecfe6edd71 7
yukari_hinata 5:b61f3f5b0fc8 8 #define PREDICT_LENGTH (4) // 予測系列長
yukari_hinata 5:b61f3f5b0fc8 9 #define PREDICT_INTERVAL_TIME (1 * 60 * 60 * 1000) // 予測間隔 : 1h
yukari_hinata 2:20ecfe6edd71 10 #define LEN_DATA_SEQUENCE (50) // 観測データの履歴長
yukari_hinata 1:8538381cae81 11 #define NUM_WEATHERS (4) // 気候の種類
yukari_hinata 1:8538381cae81 12 #define DIM_SIGNAL (3) // 信号の次元(=センサの数)
yukari_hinata 2:20ecfe6edd71 13 #define MCSVM_NUM_SAMPLES (120) // MCSVMのサンプル数
yukari_hinata 5:b61f3f5b0fc8 14 #define MAX_LOG_LENGTH (1000) // 観測データファイルの最大行数(これをこえるとやばい値)
yukari_hinata 5:b61f3f5b0fc8 15 #define SUITABLE_LOG_LENGTH (500) // 切り詰め後の最適なデータファイルの行数
yukari_hinata 2:20ecfe6edd71 16
yukari_hinata 5:b61f3f5b0fc8 17 #define BUF_SIZE (100) // fprintfの時などに使われる文字列バッファの長さ
yukari_hinata 3:5add3759e08a 18
yukari_hinata 5:b61f3f5b0fc8 19 /*
yukari_hinata 3:5add3759e08a 20 #ifdef DEFAULT_STACK_SIZE
yukari_hinata 3:5add3759e08a 21 #undef DEFAULT_STACK_SIZE
yukari_hinata 5:b61f3f5b0fc8 22 #define DEFAULT_STACK_SIZE ((WORDS_STACK_SIZE*4) * 2.25)
yukari_hinata 5:b61f3f5b0fc8 23 #endif */ /* DEFAULT_STACK_SIZE */
yukari_hinata 5:b61f3f5b0fc8 24
yukari_hinata 5:b61f3f5b0fc8 25
yukari_hinata 5:b61f3f5b0fc8 26 #ifdef OS_MAINSTKSIZE
yukari_hinata 5:b61f3f5b0fc8 27 #undef OS_MAINSTKSIZE
yukari_hinata 5:b61f3f5b0fc8 28 #define OS_MAINSTKSIZE (DEFAULT_STACK_SIZE*8)
yukari_hinata 5:b61f3f5b0fc8 29 #endif /* OS_STKSIZE */
yukari_hinata 5:b61f3f5b0fc8 30
yukari_hinata 5:b61f3f5b0fc8 31 #define OS_STKCHECK // スタックオーバーフローの監視
yukari_hinata 3:5add3759e08a 32
yukari_hinata 3:5add3759e08a 33 #ifdef BUFSIZ
yukari_hinata 3:5add3759e08a 34 #undef BUFSIZ
yukari_hinata 3:5add3759e08a 35 #define BUFSIZ (512)
yukari_hinata 3:5add3759e08a 36 #endif /* BUFSIZ */
yukari_hinata 2:20ecfe6edd71 37
yukari_hinata 2:20ecfe6edd71 38 #define SEQUENCE_DATA_NAME "/local/SEQ_DAT.CSV" // 系列データのファイル名
yukari_hinata 2:20ecfe6edd71 39 #define PREDICT_DATA_NAME "/local/PRE_DAT.CSV" // 予測データのファイル名
yukari_hinata 1:8538381cae81 40
yukari_hinata 5:b61f3f5b0fc8 41 // 気候のインデックス
yukari_hinata 2:20ecfe6edd71 42 typedef enum {
yukari_hinata 2:20ecfe6edd71 43 TEMPERATURE = 0, // 気温
yukari_hinata 2:20ecfe6edd71 44 AIR_PRESSURE = 1, // 気圧
yukari_hinata 2:20ecfe6edd71 45 HUMIDITY = 2, // 湿度
yukari_hinata 5:b61f3f5b0fc8 46 } WEATHER_ID;
yukari_hinata 1:8538381cae81 47
yukari_hinata 0:f6cdb984f638 48 // 天候を表す列挙型
yukari_hinata 0:f6cdb984f638 49 typedef enum {
yukari_hinata 0:f6cdb984f638 50 SHINY = 0, // 晴れ
yukari_hinata 0:f6cdb984f638 51 CLOUDY = 1, // 曇
yukari_hinata 0:f6cdb984f638 52 RAINY = 2, // 雨
yukari_hinata 0:f6cdb984f638 53 SNOWY = 3, // 雪
yukari_hinata 0:f6cdb984f638 54 } WEATHER_STATUS;
yukari_hinata 0:f6cdb984f638 55
yukari_hinata 0:f6cdb984f638 56 #endif /* SHARE_H_INCLUDED */