基于IPv6的环境监测系统的开发和应用

大气环境传感器的选择
目前,大气环境监测节点可通过采集板连接PM2.5、PM10、SO2、NO2、CO、O3等传感器,并预留了额外的接口用于接入其他传感器。对SO2、NO2、CO、O3等气体的检测方法主要有光谱吸收法、电化学法和各种化学方法26,27,28。化学实验的方法不能应用于在线监测站。红外线检测法由于其传感器成本较高,不适合大面积的监测站。因此,在线监测设备中一般采用电化学传感器。PM2.5和PM10是颗粒污染物。传统的重力测量法和微型振荡天平法在实验室中普遍使用,而激光散射法可以通过使用小型和低成本的传感器自动监测颗粒物的浓度29。系统中选择了一个激光散射传感器进行监测。该传感器的模型和详细参数见表1。该传感器的测量范围可以完全满足大气环境监测的需要,其较短的响应时间可以减少系统的功耗。

数据存储驱动器
嵌入式系统设备通常需要大容量的存储设备来存储数据。目前,可以集成通用的可擦写可编程只读存储器(EEROM)、FLASH(闪存)和安全数字存储器(SD)卡。前两种SD卡的容量通常小于1MB。SD卡的存储容量通常大于1GB。本系统使用SD卡来存储传感器数据,SD卡具有可拆卸的特点,便于直接读取传感器数据。在本设计中,大气数据是单一的,为了节省处理器资源,所以只使用SD卡作为节点的大容量数据存储单元,没有复杂的文件系统。系统中实现了SD卡的初始化和单块读写操作。

如图4所示,SD卡与ARM之间的通信采用了发送-回复机制,SD卡与ARM之间的数据交换通过SDIO总线进行。

基于IPv6的环境监测系统的开发和应用

要初始化SD卡,请完成以下软件配置。

1.SD的默认工作模式是SD。为了简化读写操作,它被配置为工作在SPI模式。首先,STM32F107初始化SDIO总线,将SPI设置为工作在三线制,并将工作频率设置为400kHz以下。

2.打开SD电源,将芯片选择信号CS设置为高电平,等待SD内部存储的初始化完成,这至少需要80个SPI时钟周期。

3.通过降低芯片选择信号CS,启用SD卡。STM32F107向SD卡发送CMD0命令,SD卡进入SPI模式。

4.发送CMD1命令并返回正确的响应0×00后,SD卡初始化成功,数据传输开始。

SD卡的数据传输主要是通过命令交互完成的。SD卡的数据读取过程如下。

1.拉下芯片选择信号,发送CMD17命令后接收R1正确响应。

2.在收到令牌0XFE后,发送开始数据。

3.对收到的数据进行CRC完整性检查。

4.数据接收完毕,拉起芯片选择信号,无SD卡。

在SD卡上写入数据的过程如下。

1.拉下芯片选择信号,发送CMD24命令后接收R1的正确响应。

2.发送开始写入令牌0XFC后,写入数据。

3.发送要写入的数据,然后发送数据块的两个字节的CRC校验码。

4.接收数据写入状态,写入失败后再次写入,写入数据成功结束后,拉高芯片选择信号CS。

原创文章,作者:中国IPv6网,如若转载,请注明出处:https://www.ipv6s.com/basis/application/202209222268.html

(4)
中国IPv6网的头像中国IPv6网
上一篇 2022年9月22日 下午3:49
下一篇 2022年9月22日 下午4:30

相关推荐

  • 元宇宙会成为IPv6的拐点吗?

    元宇宙应该是IPv6普及之路上的一大契机,未来几何让我们拭目以待 “如无必要,勿增实体”的奥卡姆剃刀原则,从IT人士的角度来看就是“只要能运行,就千万不要改”,而且各种“杀个程序员…

    2021年11月16日
    77400
  • win7下ipv6无法连接

    最近学校封bt了,没有办法准备用ipv6。 弄了两天,参考了很多,毕竟水平有限,一直不能上。 我是win7的操作系统,不需要安装ipv6,在cmd下也安不进去,非可执行命令! 由于…

    应用技术 2011年2月20日
    2.8K00

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注