OCROBOT mangoII arduino+w5100+乐联网组建家庭环境监测系统
在极客工坊淘宝店买了arduino套装,最近又在arduino city拿到了W5100网络模块,周日研究了一上午,arduino+W5100也没有搞通,下午在乐联网老刘,和乐联网技术支持群里的Jak和疯子的指导下,终于搞清楚了W5100上传乐联网传感器数据,并成功建立了家庭监测系统,虽然还只是传上去一个LM35温度,但已经感受到了群里面众兄弟的热情支持和帮助。先发个题目,实验内容及图片随后附上。大家可以先看一下我的监测系统的门户首页。http://www.lewei50.com/home/gatewaystatus/855经过几天的琢磨以及各位高人指点下,成功实现了DHT11湿度、温度、DSM501A颗粒物传感器连接与数据上传。在此要特别感谢物联网老刘无偿提供的DMS501A颗粒物传感器和不厌其烦的指点。
所需的库文件附上:
代码如下:
#include <SPI.h>
#include <Ethernet.h>
// #include <Arduino.h>
#include <dsm501.h>
#include <LeweiClient.h>
#define LW_USERKEY "6f7ce35ca209470c95fc8d9d2f513ce4"
#define LW_GATEWAY "01"
dsm501 pm25Sensor;
#include <dht11.h>
dht11 DHT11;
#define DHT11PIN 2
//#define MY_NAME "UNO1"
//#define MY_DESC "virtual gate"
//char my_addr="http://192.168.1.233/api";
//int port =80;
LeWeiClient *lwc;
// unsigned long lastConnectionTime = 0; // last time you connected to the server, in milliseconds
//boolean lastConnected = false; // state of the connection last time through the main loop
//const unsigned long postingInterval = 30*1000; //delay between updates to cosm.com
// unsigned long duration;
unsigned long starttime;
//LM35
//int potPin = 0; //设置模拟口0为LM35的信号输入端口
//float temperature = 0; //设置temperature为浮点变量 //设置val为长整数变量
//long val=0; //定义变量来存储读取的数值
void setup() {
pm25Sensor.setDatapin(8); //设置DSM501数据引脚
// start serial port:
// Serial.begin(9600);
lwc = new LeWeiClient(LW_USERKEY, LW_GATEWAY);
starttime = millis();
}
void loop() {
//LM35
//val=analogRead(potPin);//温度传感器LM35接到模拟PIN0上;val变量为从LM35信号口读取到的数值
//temperature = (val*5.0/1023.0*100);//把读取到的val转换为温度数值,系数一:0.00488125=5/1024,0~5V对应模拟口读数1~1024,
//系数二:100=1000/10,1000是毫伏与伏的转换;10是每10毫伏对应一度温升。
//DSM501A
//Serial.print("particle concentration: ");
//如果数据需要滤波
//pm25Sensor.enableFilter();
int p=0;
p=pm25Sensor.getParticles();
//Serial.println(p);//取得颗粒物浓度
//DHT11
int chk = DHT11.read(DHT11PIN);
floath = DHT11.humidity;
float t = DHT11.temperature;
//Serial.print("Humidity (%): ");
//Serial.println((float)DHT11.humidity, 2);
//Serial.print("Temperature (oC): ");
//Serial.println((float)DHT11.temperature, 2);
// Serial.print("Tep=");
// Serial.print(temperature);
// Serial.println(" C");
lwc->append("TEMP", t);
lwc->append("HM", h);
lwc->append("PM1", p);
lwc->send();
delay(10000);//延时10秒,这里也就是刷新速度。
} 顶起。。。。。。。。。。 代码及库已经更新。 顶{:soso_e179:} 这个必须顶一下。 好贴,我最近想也要做这个,向基于beaglebone来做,楼主的代码有有借鉴意义。 你好,我想请教一个问题,就是DSM501A最后的数据结果单位是:pcs/每立方英尺,我想问是怎样得出你图中空气质量的标准,我在网上找很多,他们空气质量标准的单位都是微克/每立方米,没有以pcs/每立方英尺为单位的。
请教一下,怎么通过低脉冲比率计算出颗粒数目,看不懂说明书上的特征曲线 trochili 发表于 2014-2-10 18:04 static/image/common/back.gif
请教一下,怎么通过低脉冲比率计算出颗粒数目,看不懂说明书上的特征曲线
不好意思,我也不懂啊,只是比葫芦画瓢
philhoo 发表于 2014-2-14 22:26 static/image/common/back.gif
不好意思,我也不懂啊,只是比葫芦画瓢
W5100模块在哪里买的?我想买个试试 long 发表于 2014-3-7 13:23 static/image/common/back.gif
W5100模块在哪里买的?我想买个试试
我的现在没有用了,可以转让给你。联系我QQ:834790 楼主,我毕业设计是相关的内容啊,可以加你扣扣请求指导么?!{:soso_e154:} 代理PM2.5粉尘传感: 夏普、三瀛、GE、神荣VOC空气质量:QS-01、TGS2600、MS1100、MS1200英国达特甲醛传感器、红外二氧化碳传感器、空气质量模块 全新原装现货供应 有需要请联系 杨先生 13530889446QQ:530820608
页:
[1]