CSDN话题挑战赛第2期
参赛话题:学习笔记

#【国庆活动】带上CSDN一起玩转国庆#

最近遇到一个使用Arduino Uno控制板的项目,利用热敏电阻和LIAT中的热敏电阻函数节点,通过Arduino Uno控制板的模拟端口采集与热敏电阻串联电阻的分压值上传给LabVIEW软件,并除以温度系数以获得温度值,实现一个温度计的功能。

为啥用labview呢,因为LabVIEW是NI的数据采集创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于图形语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。

Arduino Uno是Arduino的典型控制器,拥有Arduino所有的基本功能,使用最为广泛,而且本书的应用篇和项目篇都是基于Arduino Uno来设计的,所以接下来重点介绍Arduino Uno的硬件部分,其他型号Arduino控制板硬件介绍可以参考Arduino官方网站:www.arduino.cc。

1.控制器
❑处理器:ATmega328
❑工作电压:5V
❑输入电压:(推荐)7~12V
❑输入电压:(范围)6~20V
❑数字I/O接口:14路(其中6路作为PWM输出)
❑模拟输入接口:6路
❑I/O接口直流电流:40mA
❑3.3V接口直流电流:50mA
❑Flash Memory:32KB(ATmega328,其中0.5KB用于Bootloader)
❑SRAM:2KB(ATmega328)
❑EEPROM:1KB(ATmega328)
❑工作时钟:16MHz
2.电源
Arduino Uno可以通过3种方式供电,而且能自动选择供电方式。
❑外部直流电源通过电源插座供电。
❑电池连接电源连接器的GND和VIN引脚。
❑USB接口直接供电。
电源引脚说明:
❑VIN:当外部直流电源接入电源插座时,可以通过VIN向外部供电;也可以通过此引脚向Uno直接供电;VIN有电时将忽略从USB或者其他引脚接入的电源。
❑5V:通过稳压器或USB输出的5V电压,为Uno上的5V芯片供电。
❑3.3V:通过稳压器产生的3.3V电压,最大驱动电流50mA。
❑GND:电源负极。
3.存储器
ATmega328拥有片上32KB Flash,其中0.5KB用于Bootloader,同时还有2KB SRAM和1KB EEPROM。通常情况下,Arduino的存储空间即其主控芯片所集成的存储空间,也可以通过使用外设芯片的方式扩展Arduino的存储空间。
❑Flash:32KB。其中0.5KB分作BOOT区,用于储存引导程序,实现串口下载程序的功能,另外的31.5KB作为用户存储程序的空间,可以满足一般的应用设计。
❑SRAM:2KB。SRAM相当于计算机的内存,在CPU运算时,需要在其中开辟一定的存储空间。当Arduino断电或者复位后,其中的数据都会丢失。
❑EEPROM:1KB。EEPROM全称为电可擦写可编程只读存储器,是一种用户可更改的只读存储器,特点是Arduino断电或者复位后,其中的数据不会丢失。
4.输入/输出
❑14路数字输入/输出接口:工作电压为5V,每一路输出或输入的最大电流为40mA。每一路配置了20~50kΩ的内部上拉电阻(默认不连接)。除此之外,有些引脚有特定的功能,具体说明如下:
串口信号RX(0号)和TX(1号):与内部ATmega16U2USB-to-TTL芯片相连,提供TTL电压水平的串口接收信号。
外部中断(2号和3号):触发中断引脚,可设成上升沿、下降沿或同时触发。
脉冲宽度调制PWM(3、5、6、9、10、11):提供6路8位PWM输出。

❑6路模拟输入A0~A5:每一路具有10位的分辨率(即输入有1024个不同值),默认输入信号范围为0~5V,可以通过AREF调整输入上限。除此之外,有些引脚有特定功能。
 ○TWI接口(SDA A4和SCL A5):支持通信接口(兼容I2C总线)。
❑AREF:模拟输入信号的参考电压。
❑Reset:信号为低时复位单片机芯片。
5.通信接口
❑串口:ATmega328内置的UART可以通过数字口0(RX)和1(TX)与外部实现串口通信;ATmega16U2可以通过访问数字口0和1实现USB上的虚拟串口。
❑TWI(兼容I2C)接口:A4(SDA)、A5(SCL),可用于TWI通信,兼容I2C通信。
❑SPI接口:10(SS)、11(MOSI)、12(MISO)、13(SCK),可用于SPI通信。

(1)项目最终效果
利用热敏电阻和LIAT中的热敏电阻函数节点,通过Arduino Uno控制板的模拟端口采集与热敏电阻串联电阻的分压值上传给LabVIEW软件,并除以温度系数以获得温度值,实现一个温度计的功能。

(2)硬件连接
将热敏电阻与10kΩ电阻串联起来,热敏电阻另一端接至Arduino Uno控制板上的+5V,10kΩ电阻另一端接至Arduino Uno控制板上的GND上,将热敏电阻与10kΩ电阻的连接处接至模拟引脚A2上,如图所示。

(3)程序设计
LabVIEW的前面板和程序框图如图1和图2所示。
LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后进入While循环中,在循环中不断调用热敏电阻专用的Thermistor Read函数节点来读取温度值。最后,断开与Arduino Uno控制板的连接。

(4)实验与演示
点击运行按钮,LabVIEW程序开始执行,在Analog Pin选择A2,可以看到前面板上的温度计显示当前的温度。

LabVIEW热敏电阻温度计程序相关推荐

  1. LabVIEW生成应用程序(exe)和安装程序(installer)

    目录 1.生成应用程序(exe) 2.生成安装程序(installer) 使用LabVIEW编写好的程序最后往往需要将程序拿到目标电脑上去运行,如何将程序从开发电脑上移植到目标电脑上呢?有两种方法: ...

  2. labview如何弹出提示窗口_以实例跟我学如何将LabVIEW的VI程序打包成安装程序

    当我们在LabVIEW平台上辛辛苦苦编写完成测试软件程序时,一般很少情况将程序源代码分发给用户,而是将VI程序制作成可执行的安装包程序,供用户安装使用. 那么,如何将LabVIEW中的VI程序打包成安 ...

  3. LabVIEW编程LabVIEW开发 旧程序升级维护

    LabVIEW编程LabVIEW开发 旧程序升级维护 前段时间遇到一个LabVIEW软件维护的项目.系统是RT测试,和上位机有通讯,用的都是NI的控制器和板卡,只是时间比较久了,软件是用LabVIEW ...

  4. 用c语言编写热敏电阻温度计,基于51单片机的热敏电阻温度计的设计.doc

    摘 要 随着科学技术的不断进步与发展,热敏电阻温度计已开始逐渐替代传统的玻璃水银体温计.温度控制系统在国内各行各业的应用虽然已经十分广泛,传统的温度控制方式,主要缺点是温度波动范围大,不能满足高精度, ...

  5. LabVIEW设置应用程序显示标签透明

    在美化应用程序时,有时候需要将某些标签设置为透明状态,之前在LabVIEW设计自定义滚动条博文中制作的滚动条是一种方式,但是这种方式明显过于复杂. 本篇博文将介绍一种简单方法,还是以我们分享的LabV ...

  6. LabVIEW实现应用程序停止或退出

    我们在做应用程序开发时,最后必然会用到应用程序停止或退出功能,本篇博文将分享实用LabVIEW如何实现应用程序停止或退出. 其实非常简单,两个组件就可以实现,在LabVIEW中右键鼠标:编程→应用程序 ...

  7. 基于LabVIEW的示波器程序

    CSDN话题挑战赛第2期 参赛话题:学习笔记 学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程.这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路.学习之乐,独乐乐,不如众乐 ...

  8. LabVIEW多路数据采集程序

    CSDN话题挑战赛第2期 参赛话题:学习笔记 学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程.这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路.学习之乐,独乐乐,不如众乐 ...

  9. LabVIEW修改应用程序窗口外观

    之前我们分享的LabVIEW实现科学计算器小项目,打包成EXE可执行文件后,运行时可以看到:标题栏.菜单栏.垂直滚动条.水平滚动条等信息,十分不美观,如下图所示: 那有没有办法去除这些不需要的外观信息 ...

最新文章

  1. pandas使用query函数查询指定日期索引之间对应的dataframe数据行(select rows date index between a certain date interval)
  2. 独家 | 用pandas-profiling做出更好的探索性数据分析(附代码)
  3. 【算法30】从数组中选择k组长度为m的子数组,要求其和最小
  4. 关于手思3.0 代码规范
  5. Jackson学习笔记
  6. 【模拟】生日蛋糕(jzoj 1613)
  7. Div+CSS布局入门教程(一) 页面布局与规划
  8. spark应用程序的运行架构(简单到复杂)
  9. seo模拟点击软件_网站排名优化第一课:如何看待快排?SEO排名工具到底香不香!...
  10. PyQt4日历部件QXalendarWidget
  11. 大数 Buy the tickey玄学
  12. 求树中某结点的父结点(长子-兄弟表示法)
  13. 文科女生转行软件测试之路
  14. 域名是什么?怎样注册一个域名?
  15. 论文阅读笔记: (2022.05, icra) Traffic Context Aware Data Augmentation for Rare Object Detection in Autonom
  16. 怎么查询英语四六级证书编号
  17. 5年以上旧电脑如何升级
  18. vue 路由三种写法方式
  19. 数据结构进阶 哈希表
  20. EPLAN P8部件库 EPLAN P8部件库,包含低压电气 控制系统设计常用品牌型号,全部部件均为本人整理自己创建,可大大提高电气控制行业同仁的工作效率!

热门文章

  1. #include指令引号与尖括号的区别
  2. ec20 以太网_以太网光纤收发器有什么作用?
  3. Scratch中基本演绎法小故事
  4. 【MySQL:Use Of MySQL】使用记录
  5. HJ42 学英语(递归)
  6. DSA算法实现数字签名--java实现
  7. 用python画枫叶代码-Python自定义函数基础
  8. 重庆邮电大学计算机2019湖北分数线,2019重庆邮电大学录取分数线
  9. 数值分析中对有效数字的定义
  10. Python老司机带你快速搞定日志分析工具