IEEE1888 GateWay sample that handles only 1 sensor. This is older repository, see IEEE1888_MULTI_SENSOR_GW. The newer version can handle multiple sensors.

Dependencies:   EthernetInterface FiapV2 HTTPClientForSOAP NTPClient mbed-rtos mbed spxml

Fork of temp_FIAP by Yasushi TAUCHI

This program sends only *1* data to FIAP storage with IEEE1888 format.

The data represents temperature degree Celsius taken from LM35 at P20. The LM35 is temperature sensor made by National Semiconductor.

Note 1: Newer repository is available. IEEE1888 (FIAP) multi sensor gateway can handle multiple sensors.

NOTE 2: You should define 2 constants at least before using this program. The constants are FIAP_STORAGE and POINT_ID, contained in main.h file. And You can also define other constants in main.h .

from here, in Japanese. これは、IEEE1888 形式でデータを *1種類だけ* 送信するプログラムです。 このプログラムは、P20 に接続した温度センサー LM35 の値を送信します。

注意: 下記のリポジトリーのプログラムは、複数のセンサーのデータをまとめて送信したい場合を考慮した、新しい Version です。 IEEE1888 (FIAP) multi sensor gateway

また、使用前に、main.h ファイルの定数を定義する必要があります。 (少なくとも FIAP_STORAGE および POINT_ID の2つ )

/media/uploads/strysd/fiap_node.jpg

Files at this revision

API Documentation at this revision

Comitter:
yueee_yt
Date:
Mon Aug 20 12:05:25 2012 +0000
Child:
1:ddf5d6f68d58
Commit message:
1st
;

Changed in this revision

EthernetInterface.lib Show annotated file Show diff for this revision Revisions of this file
FiapV2.lib Show annotated file Show diff for this revision Revisions of this file
HTTPClient.lib Show annotated file Show diff for this revision Revisions of this file
NTPClient.lib Show annotated file Show diff for this revision Revisions of this file
TextLCD.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-rtos.lib Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
spxml.lib Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/EthernetInterface.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/EthernetInterface/#a0ee3ae75cfa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/FiapV2.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/yueee_yt/code/FiapV2/#2ba00be13585
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HTTPClient.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/yueee_yt/code/HTTPClientForSOAP/#e09afb9ca1cd
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/NTPClient.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/donatien/code/NTPClient/#881559865a93
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TextLCD.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/simon/code/TextLCD/#44f34c09bd37
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,77 @@
+#include "mbed.h"
+#include "TextLCD.h"
+#include "EthernetInterface.h"
+#include "NTPClient.h"
+#include "fiap.h"
+
+#define NTPServer "ntp.cc.yamaguchi-u.ac.jp"
+
+EthernetInterface eth;
+NTPClient ntp;
+Ticker timer1;
+time_t ctTime;
+
+TextLCD lcd(p24, p26, p27, p28, p29, p30);
+AnalogIn ain(p15);
+DigitalOut led(LED1);
+char timezone[] = "+09:00";  // JST
+FIAP fiap("http://192.168.1.3/axis2/services/FIAPStorage");
+struct fiap_element element[]= {
+    {"http://csse-tech.jp/temp_tauchi",NULL,NULL,NULL,NULL,NULL,NULL,NULL,timezone},
+};
+
+
+void tick(void )
+{
+    float temp;
+    char buffer[9];
+    led=!led;
+    temp=ain*3.3*100.0;
+    ctTime = time(NULL);
+    strftime(buffer,9,"%X",localtime(&ctTime));
+    lcd.locate(0,1);
+    lcd.printf("%s %4.1fDeg",buffer,temp);
+// Save to FIAPStorage
+    char atemp[6];
+    sprintf(atemp,"%4.1f",temp);
+    struct tm t = *localtime(&ctTime);
+    element[0].value=atemp;
+    element[0].year=t.tm_year+1900;
+    element[0].month=t.tm_mon+1;
+    element[0].day=t.tm_mday;
+    element[0].hour=t.tm_hour;
+    element[0].minute=t.tm_min;
+    element[0].second=t.tm_sec;
+    fiap.post(element,1);
+}
+
+int main()
+{
+//Ethernet Initialize
+    eth.init(); //Use DHCP
+    eth.connect();
+    lcd.cls();
+    lcd.locate(0,0);
+    lcd.printf("%s", eth.getIPAddress());
+    printf("Trying to update time...\r\n");
+    if (ntp.setTime(NTPServer) == 0) {
+        printf("Set time successfully\r\n");
+        time_t ctTime;
+        ctTime = time(NULL);
+        ctTime+=32400;
+        set_time(ctTime);
+        ctTime = time(NULL);
+        printf("Time is set to (JST): %s\r\n", ctime(&ctTime));
+        printf("finish \n");
+    } else {
+        lcd.locate(0,1);
+        lcd.printf("Error");
+        return -1;
+    }
+    //fiap.debug_mode=true;
+    //eth.disconnect();
+    while(true) {
+        tick();
+        wait(2);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-rtos.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed-rtos/#9654a71f5a90
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/10b9abbe79a6
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/spxml.lib	Mon Aug 20 12:05:25 2012 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/hlipka/code/spxml/#3fa97f2c0505