当前位置: 首页 > news >正文

广州制作网站友情链接检索

广州制作网站,友情链接检索,上海网站建设哪家技术好,网站建设计算机人员招聘大气质量数据监测站用于测试空气质量监测及数据采集#xff0c;实现野外或者室内空气质量的检测。并通过网络将数据上传到OneNet​显示。​ 1、项目概述 本项目是一个定制项目#xff0c;要求采集大气的压力、温度、湿度、PM25、位置等数据并上传到指定的后台服务器。但有时…大气质量数据监测站用于测试空气质量监测及数据采集实现野外或者室内空气质量的检测。并通过网络将数据上传到OneNet​显示。​ 1、项目概述 本项目是一个定制项目要求采集大气的压力、温度、湿度、PM25、位置等数据并上传到指定的后台服务器。但有时候因为没有条件或因为各种原因不能联网则采用本地保存的方式本地保存我们决定使用SD卡来实现。除此外为了实现显式需求还需要配套一些东西来实现隐式的需求如实时时钟记录上传联网方式的选择等。 2、硬件设计 本项目涉及到的硬件并不复杂我们对其中几个实用比较多的电路做一个说明。首先说一下串口通讯电路在本项目中激光PM25传感器、气体质量流量控制器、SD读卡器等都是使用串口来实现通讯所以我们采用如下的串口电路设计 该方式即可支持RS232也可实现RS485当然简单的TTL也没问题只需要根据自己的不同需求焊接不同的元器件就可实现。 接下来我们说一说PWM控制电路其实用的是计时器来实现由于电机需要12V-24V的电源所以我们外加一部分电路来实现电机的驱动而PWM信号则有MCU产生并能够通过电路提升电压。 最后我们说一下联网部分联网有多种方式有线连接、wifi连接都支持首先说一说wifi我们使用了ESP8266来实现这一需求之所以选择ESP8266是因为软硬件实现都比较简单而且我们对通讯的要求并不十分高因为10m秒钟记录一个数据就好了所以成本就是主要理由了。 至于有线我们使用W5500来实现在以前的文章中已经多次说明过这一次就不再重复了。 3、软件设计 接下来我们说一说软件的设计软件的设计较硬件要繁杂的多我们选取其中一部分前面没有说明过的做一些说明。首先我们说一下PWM控制每台采集站有2路进气所以我们需要控制两个气泵以及2路的PWM每路可以单独控制在试验时我们使用50%的占空比。 void PWM_Configuration(void) {//计算初始化的频率和占空比TimerPeriod PWMTimePeriod;//计算用于设置ARR寄存器的值使产生信号的频率为17.57 KhzPWM1Pulse (uint16_t) (((uint32_t) 5 * (TimerPeriod - 1)) / 10);//计算CCR1寄存器的值在通道1和1N产生50%占空比用于TIM1PWM2Pulse (uint16_t) (((uint32_t) 5 * (TimerPeriod - 1)) / 10);//计算CCR1寄存器的值在通道1和1N产生50%占空比用于TIM8PWM_InitProcess(TIM1,TimerPeriod,PWM1Pulse); } 其次我们说一说I2C控制有好几路传感器都使用的是I2C数据通讯来实现我们在这里我们只说两个基本的I2C操作函数一个是下发命令一个是读取数据。所有的操作都可以通过调用这两个函数来实现。 /*向I2C从站下发指令指令格式均为1个字节*/ void SendCommandToI2CSlave(I2C_TypeDef* I2Cx,uint8_t deviceAddress,uint8_t command) {uint16_t i2cTimeoutTimeoutPeriod;/*产生I2C起始信号*/I2C_GenerateSTART(I2C2, ENABLE);/*检测 EV5 事件并清除标志*/while (!I2C_CheckEvent(I2Cx, I2C_EVENT_MASTER_MODE_SELECT)){if ((i2cTimeout--) 0) return ;}/*发送I2C从站的地址*/I2C_Send7bitAddress(I2Cx,deviceAddress,I2C_Direction_Transmitter);i2cTimeoutTimeoutPeriod;/*检测 EV6 事件并清除标志*/while (!I2C_CheckEvent(I2Cx, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED)){if ((i2cTimeout--) 0) return ;}/*下发操作命令*/I2C_SendData(I2Cx, command);i2cTimeoutTimeoutPeriod;/*检测 EV8 事件并清除标志*/while (!I2C_CheckEvent(I2Cx, I2C_EVENT_MASTER_BYTE_TRANSMITTED)){if ((i2cTimeout--) 0) return ;}/* 产生I2C停止信号 */I2C_GenerateSTOP(I2Cx, ENABLE); }/*从I2C从站读取多个字节数据的值*/ void GetBytesFromI2CSlave(I2C_TypeDef* I2Cx,uint8_t deviceAddress,uint8_t *pData,uint16_t bytesNum) {uint16_t i2cTimeoutTimeoutPeriod;/*如果I2C总线忙则等待一段时间*/while (I2C_GetFlagStatus(I2Cx, I2C_FLAG_BUSY)){if ((i2cTimeout--) 0) return ;}/* 产生 I2C 起始信号 */I2C_GenerateSTART(I2Cx, ENABLE);/*检测 EV5 事件并清除标志*/while (!I2C_CheckEvent(I2Cx, I2C_EVENT_MASTER_MODE_SELECT)){if ((i2cTimeout--) 0) return ;}/*发送I2C从站的地址*/I2C_Send7bitAddress(I2Cx,deviceAddress1,I2C_Direction_Receiver);i2cTimeoutTimeoutPeriod;/*检测 EV6 事件并清除标志*/while (!I2C_CheckEvent(I2Cx, I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED)){if ((i2cTimeout--) 0) return ;}while(bytesNum){if(bytesNum1){I2C_AcknowledgeConfig(I2Cx, DISABLE);//关闭应答I2C_GenerateSTOP(I2Cx, ENABLE);//停止信号}i2cTimeoutTimeoutPeriod;/*检测 EV7 事件并清除标志*/while (!I2C_CheckEvent(I2Cx, I2C_EVENT_MASTER_BYTE_RECEIVED)){if ((i2cTimeout--) 0) return ;}/*通过 I2C从设备中读取一个字节的数据 */*pDataI2C_ReceiveData(I2Cx);pData;bytesNum--;}/*使能应答方便下一次 I2C 传输*/I2C_AcknowledgeConfig(I2Cx, ENABLE); } 接下来我们看看将数据存储到本地SD卡的操作过程数据保留2位小数并且采用4舍5入处理。 //将数据写入到SD卡 void WriteDataToSDCard(void) {//将数据写入SD卡saveData[0]((int16_t)(tempProcessValue*1000.5))/100.0;//温度测量值saveData[1]((int16_t)(presProcessValue*1000.5))/100.0;//压力测量值saveData[2]((int16_t)(flowProcessValue1*1000.5))/100.0;//流量计1的标况流量saveData[3]flowTatolVolume1;//流量计1的工况累计流量saveData[4]flowStdTatolVolume1;//流量计1的标况累计流量saveData[5]((int16_t)(flowProcessValue2*1000.5))/100.0;//流量计2的标况流量saveData[6]flowTatolVolume2;//流量计2的工况累计流量saveData[7]flowStdTatolVolume2;//流量计2的标况累计流量saveDate[0]systemYear;saveDate[1]systemMonth;saveDate[2]systemDate;saveDate[3]systemHour;saveDate[4]systemMinute;saveDate[5]systemSecond;    SDCardFileOperation(); } 4、结果展示 我们在OneNET上创建了一个产品6台设备以及4个应用来验证方案的效果在测试过程中我们使用了Wifi方式来进行此次测试因为这也是我们正是产品主要使用的连网方式。我们看一看数据上传的趋势图 接下来我们看看显示位置及温湿度的应用截图 我们再来看看显示大气压、温度和湿度的截图 我们再来看看气体流量及柱状图显示 至此我们完成了空气质量数据获取项目程序的基本测试。 欢迎关注
http://www.yutouwan.com/news/122119/

相关文章:

  • 牛商网做网站多少钱WordPress程序漏洞
  • 烟台做网站价格政务服务和数字化建设局网站
  • 关于网站平台建设调研的函不利于网站收录
  • 辽宁省建设工程招标协会网站做国际网站怎么能快速打开
  • 网站建设找盖亚科技新手建站详细步骤
  • 东莞网站制作企业网站做网站视频下载
  • 自己做网站怎么发布济南网站备案程序
  • 推广计划展示型网站一样做seo优化吗
  • 那个网站做logo兼职公司网站开发与维护
  • 验证码网站搭建北京到安阳多少公里路
  • 建站之星服务器做外国网站百度搜到
  • 网站建设栏目分级外贸wordpress收款插件
  • 南浔区建设局 网站做电影资讯网站算侵权吗
  • 基于ASP与Access数据库的网站开发ai可以用来做网站吗
  • unix做网站常用的数据库百度帐号登录
  • 手机网站公司wordpress后台重定向
  • 舟山建设信息港网站wordpress_zh
  • 杭州企业网站设计好公司wordpress 乱码
  • 手机网站推广方案大连工程信息网
  • 襄阳网站建设找下拉哥科技大宗商品最新交易平台
  • 网站建设硬件条件国内做网站
  • 网站地址栏图标文字上海网站建设电影联
  • 海南省住房和城乡建设厅官方网站深圳做网站的地方
  • 重庆网站建设工业设计是什么
  • 高密做网站哪家强代理网页风格设计
  • 比较著名的seo网站购物网站网页设计图片
  • 阿里云 网站接入方式电子商务公司名称大全简单大气
  • 阿里云的云服务器做网站用哪种手表常用网站
  • 本溪网站开发公司郑州网站建站模板
  • 网站制作软件 aws湖南在建工程查询