基于my-DAQ的温室迷你温室设计
这是一个小项目,采用NI的my-DAQ做数据采集,需要采集的数据有温度(LM35),气体(MQ2),需要控制的设备有风扇、加热棒,另外还有光照亮度调节。
一、数据采集
1.LM35
LM35是模拟输出的温度监控芯片,其输出电压和摄氏温度成线性比列关系,本项目采用的是TO92封装的LM35D,温度监测范围为0~100℃,工作电压在-0.2~+36V,其封装和引脚对应的关系如图1,需要注意的是,该图是底部视角。

图1.LM35D引脚对应关系
如果要简单使用,则GND接地,VSS接+5V,VOUT接my-DAQ的模拟输入端口即可。在这里我做了一个放大,用LM358,非轨对轨的运放,因此后面在调试的时候因为用错了反馈电阻,发现电压到不了+5V。附上运放电路,简单的同相比例放大。

图2 LM35+LM358电路图
可以算出,电压放大4倍,剩下的直接在LabVIEW中用公式即可计算出对应的温度,附上LM35D温度计算公式,注意在LabVIEW中还要除以4。

2.MQ2
这个没啥好说的,买的模块,有两种输出方式,一种是数字,一种是模拟,并且可通过电位器调整输出高电平的阈值。这里采用数字输出,直接在my-DAQ中检测数字量。
二、控制设备
需要从my-DAQ的数字输出端口输出信号控制这两个设备,这里用MOSFET作开关控制。采用的是IR7843 N沟道的MOSFET,在栅极串接一个20Ω的电阻,在栅源之间并联一个10k的下拉电阻,确保没有信号输入的时候是低电平,注意这个下拉电阻不能少,否则可能MOSFET不受控制。

图3 风扇、加热棒控制电路
三、亮度调节
这里采用光敏电阻+LM317自动控制的方式。电路图如下。

图4 光照亮度调节电路
四、总结
在做的过程中,有些小错误,在此记录一下。
1.栅源之间没有下拉电阻,导致MOSFET不受控;
2.LM35D和LM317的引脚对应错误,后来割线才解决;
3.输入输出接口准备采用接线端子,却画的2.54mm间距的孔,而现在主流都是间距5mm的接线端子,下次要注意。
附上电路图,PCB,实物照片

图5 总电路图

图6 PCB

图7 实物
如有需要,请加微信:SkyLine5277
基于my-DAQ的温室迷你温室设计的更多相关文章
- 基于 Angularjs&Node.js 云编辑器架构设计及开发实践
基于 Angularjs&Node.js 云编辑器架构设计及开发实践 一.产品背景 二.总体架构 1. 前端架构 a.前端层次 b.核心基础模块设计 c.业务模块设计 2. Node.js端设 ...
- 基于特定领域国土GIS应用框架设计及应用
基于特定领域国土GIS应用框架 设计及应用 何仕国 2012年8月16日 摘要: 本文首先讲述了什么是框架和特定领域框架,以及与国土GIS 这个特定领 ...
- 【科研论文】基于文件解析的飞行器模拟系统软件设计(应用W5300)
摘要: 飞行器模拟系统是复杂飞行器研制和使用过程中的重要设备,它可以用来模拟真实飞行器的输入输出接口,产生与真实系统一致的模拟数据,从而有效避免因使用真实飞行器带来的高风险,极大提高地面测发控系统的研 ...
- 基于UML的高校教务管理系统的设计与实现
一.基本信息 标题:基于UML的高校教务管理系统的设计与实现 时间:2018 出版源:南昌航空大学 领域分类:教育信息化:教务管理系统:UML:SSH:Oracle 二.研究背景 问题定义:高校教务管 ...
- Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理
基于python+mysql浅谈redis缓存设计与数据库关联数据处理 by:授客 QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3 ...
- 基于SSH框架的考勤管理系统的设计与实现
基于SSH框架的考勤管理系统的设计与实现
- 基于Redis的限流系统的设计
本文讲述基于Redis的限流系统的设计,主要会谈及限流系统中限流策略这个功能的设计:在实现方面,算法使用的是令牌桶算法来,访问Redis使用lua脚本. 1.概念 In computer netw ...
- 文献综述十七:基于 sql环境下超市管理系统的设计与实现
一.基本信息 标题:基于 sql环境下超市管理系统的设计与实现 时间:2018 出版源:智能计算机与应用 文件分类:uml技术的研究 二.研究背景 从超市管理系统的实际应用出发,在系统分析过程中,从功 ...
- 基于React的贪吃蛇游戏的设计与实现
代码地址如下:http://www.demodashi.com/demo/11818.html 贪吃蛇小游戏(第二版) 一年半前层用react写过贪吃蛇小游戏https://github.com/ca ...
随机推荐
- Python-生成器实现简单的"生产者消费者"模型
一.使用生成器实现简单的生产者消费者模型, 1.效果截屏 代码如下: import time def consumer(name): print('%s 开始买手机' %name) while Tru ...
- Vue中使用axios发送ajax请求
作为前后端交互的重要技巧--发送ajax请求,在Vue中我们使用axio来完成这一需求: 首先是下载axios的依赖, npm install --save axios vue-axios 然后在ma ...
- (一)iview的校验TypeError: Cannot read property 'validateField' of undefined"
一.问题描述 我是在自己封装了一个地址级联选择,然后想要每次改变了其中数据的时候,就进行一次单独校验,所以用到了iview对部分表单字段进行校验的方法validateField.其实一开始使用的时候是 ...
- IDEA报错:Could not find resource com/liwen/bean/userMapper.xml
主要原因设idea无法识别src路径下的xml文件,要把xml文件建立在resources文件下
- [JVM教程与调优] 什么是JVM运行时参数?
我们接着上一章节[JVM教程与调优] JVM都有哪些参数类型?的内容继续讲解,这章我们来介绍一下:如何查看JVM运行时参数.这一点十分重要,因为我们在进行JVM参数调优的时候,我们首先得知道目前系统运 ...
- PAT-B 1003. 我要通过!(20) Java版
"答案正确"是自动判题系统给出的最令人欢喜的回复.本题属于PAT的"答案正确"大派送 -- 只要读入的字符串满足下列条件,系统就输出"答案正确&quo ...
- ML Lecture 0-1: Introduction of Machine Learning
本博客是针对李宏毅教授在Youtube上上传的课程视频<ML Lecture 0-1: Introduction of Machine Learning>的学习笔记.在Github上也po ...
- 强化学习之二:Q-Learning原理及表与神经网络的实现(Q-Learning with Tables and Neural Networks)
本文是对Arthur Juliani在Medium平台发布的强化学习系列教程的个人中文翻译.(This article is my personal translation for the tutor ...
- RabbitMQ AMQP 事务机制
1,在之前的文章中介绍了RabbitMQ的五种队列形式 其中,在工作队列中,为了保证消费者的公平性,采用了channel.basicQos(1),保证了每次只发一条消息给消费者消费,并且使用手动签收的 ...
- Nginx 简介与安装
1,简介 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄 ...