您好,欢迎来到百家汽车网。
搜索
您的当前位置:首页基于Arduino与Python搭建的温度与光照监测平台

基于Arduino与Python搭建的温度与光照监测平台

来源:百家汽车网
*

基于A与搭建的温度与光照监测平台rduinoPthony

李允译

()河北农业大学理工学院,黄骅061100

摘要:基于P构建了一个多功能监测平台。使用N光thon编写上位机交互窗口,Arduino作为下位机,TC温度传感元件、y

敏电阻同时进行温度与光强度数据的采集,并将采集到的数据由A并进行自rduino下位机发送至Pthon上位机交互窗口,y动化记录与数据处理,并对温度传感器与光照传感器进行校正与检验,得到温度传感器校正后的精度为0相对误差.5℃,

,在1光照度传感器校正后的精度为0相对误差在2运行良好。%之内,.5Lux%之内。该监测平台数据记录平稳,

;;关键词:A监测平台;传感器校正rduinoPthonATmea328;yg

中图分类号:TP23 文献标识码:A

TemeratureandLihtMonitorinlatformBasedonArduinoandPthonpggPy

LiYuniy

:,,AbstractInthepaeramulti-functionmonitorinlatformisbuiltwhichisbasedonPthonwritinheuercomuterinteractionpgpygtppp

(,,)ColleeofScienceandTechnoloHebeiAriculturalUniversitHuanhua061100,Chinaggygyg

,atureandlihtintensitataatthesametimeandthecollecteddataissentfromtheArduinolowercomutertotheinteractivewindowgydp

windowandArduinoasthelowermechanism.NTCtemeraturesensinlementsandphotosensitiveresistorsareusedtocollecttemer-pgep

,0.5℃,therelativeerroriswithin1%,theprecisionofthelihtsensorcalibrationis0.5Luxrelativeerroriswithin2%.Thedatare-gcordinisstableandtheplatformrunswell.g

,ofthePthonuercomuterandautomaticrecordinnddataprocessinreconducted.Thetemeraturesensorcalibrationprecisionisypppgagap

:A;;KeordsrduinoPthonATmea328;monitorinlatform;sensorcalibrationyggpyw

引 言

体系光照强度的变化会引起温度的变化,为能够同时

与温度进行测量与数据发送,串口连接使用Pthon构建y的上位机交互窗口,接收数据后对其进行数据记录以及处理。后续通过实验校正温度传感器与光强度传感器得到传感器校正后的精度与相对误差,验证其实用性。

本文使用A对光照强度rduino构建下位机硬件电路,

测量温度与光照强度两个物理量,并对数据进行持续记录以及数据分析处理工作,本文设计了一个简单高效的监测平台。光照强度与温度两种传感器联合使用,Arduino作为下位机硬件,采用串口与使用Pthon编写的上位机交y互窗口进行数据通信。

编程简单易学的开源电子原Arduino是款便捷灵活、

1]

,型平台[是目前全球流行的开源硬件之一,也是硬件开

2]3]

。李儒骁等人[发的趋势[联合MATLAB和Arduino设

计了一种小型机械臂控制系统,利用MATLAB开发的

1 平台系统整体架构

软件交互窗口两部分。硬件部分使用Arduino微控制器作为下位机,连接温度传感器与光强度传感器两类传感器,对体系的温度以及光强度物理量进行监测。同时采用利用串口协议进行数Pthon语言编写上位机交互窗口,y

据通信,从而完成数据记录与分析处理的功能。

基于Arduino与Pthon的平台系统包括硬件部分与y

成同样的功能,所需的代码往往只有其他语言(如C、

//的1C++和Java等)5~13。Pthon另一个强大的优y

4]

。势在于它具有强大丰富的库[

通过AGUI界面人机交互,rduino控制机械臂运动。相对

于MATLAB软件的庞大,Pthon语言以其简洁的优势完y

2 Arduino下位机设计

2.1 电路设计

接口,传感器及驱动模块与ArduinoUNO的电路连接和

)。河北省大学生创新创业训练计划项目(*基金项目:No.201810086063

Arduino具有13个数字接口、6个模拟接口以及串口

6 0

Microcontrollers&EmbeddedSstems 2019年第6期ywww.mesnet.com.cn

程序相互对应是该系统正常工作的前提。该系统的电路图与实物图如图1所示。

4 传感器校正

4.1 温度传感器

半导体热敏电阻器是利用半导体材料的电阻率随温度变化的性质制成的温度敏感元件,按其温度特性分为正温度系数(热敏电阻器、负温度系数(热敏电阻PTC)NTC)

5]

。电阻随器和临界温度系数(热敏电阻器等几类[CTR)

温度升高而减小的热敏电阻为负温度系数(热敏电NTC)

6]

,阻[NTC热敏电阻的电阻值与温度值间具有强烈的非

线性特征,需要将其进行线性处理,以方便测量使用。

4.1.1 线性处理

图1 电路图与实物图

采用二甲基硅油作为介质,科瑞仪器的DF101S集热式恒温加热磁力搅拌器的温度示数作为标准温度计,NTC热敏电阻全部浸入二甲基硅油介质,使用ArduinoIDE的串口

2.2 程序设计

温度传感器采用半导体热敏电阻与一定值电阻串联,,即半导体热敏电阻的分压)获得一in模拟引脚的电压(p

个0~1该数值和p023之间的数值,in模拟引脚上的电压值是成正比的。由于某一温度对应某一电阻,随之确定该电阻的分压,再读取该分压,即完成了温度的测量。使用同样的方法对光强度变化有电阻值变化响应的光敏电阻)对环境光进行监测。使用S函数打开串口,erial.bein(g()()调用S与S函数将各种传感器erial.rinterial.rintlnpp得到的数值以字符类型通过串口发送给Pthon交互窗y口,而后清除串口缓存。

在程序部分调用a函数,naloRead(in)Arduino会读取gp

监视器记录了由90℃自然降温到40℃每1℃间隔Arduino()中a函数返回的数值,如表1所列。naloReadg

表1 温度监测表

温度/℃温度/K404142434445474849505152535455565758596061626365313.15314.15315.15316.15317.15318.15319.15320.15321.15322.15323.15324.15325.15326.15327.15328.15329.15330.15331.15332.15333.15334.15335.15336.15337.15338.15()()analoReadanaloReadgg温度/℃温度/K函数返回值函数返回值6386296206126035945865775685605505425335245165074984814704624524434344254174076667686970717273747576777879808182838485868780339.15340.15341.15342.15343.15344.15345.15346.15347.15348.15349.15350.15351.15352.15353.15354.15355.15356.15357.15358.15359.15360.15361.15362.15363.153993913843753673603533453373303233163093032962902832762702652592532482432383 Pthon上位机设计y

交互窗口程序。此外引用Serial库、xlwt库、xlrd库、ilp库以及t作图等功能的上位机ime库建立具有数据记录、()交互窗口。调用S使用s函数与erial库,erial.Serial

利用tPthon拥有丰富的库,kinter库方便地建立了y

()()()读取串口的字符类型数据,函数将line.decodeslitp得到的字符串型数据分割成列表型数据,并将列表中的数据转化为浮点型,赋值给分配的变量,完成数据接收。_s()文件,函数建立新的工作表,并用循环体中的addheet()据,最后s函数保存该e完成数据记录。类avexcel文件,似地,调用p完成基于il库、tkinter库等库文件的函数,

()函数打开A并用roenrduino设备所连接的串口,ead-p

)调用x使用w函数建立新的elwt库,orkbook(xcel

()函数不断向ewritexcel文件的sheet工作表中写入数

作图功能。Pthon上位机的数据记录、y

敬请登录网站在线投稿 2019年第6期

6 1

(的线性关系对NlnRNTC)TC热敏电阻具有较好的描

7]

,)述[所以将a函数返回值与温度T进行关naloRead(g联,是实现温度监测的重要关系式。

/系,根据欧姆定律可得到电压与电阻的关系,而1T与

()由于a函数返回值与电压具有正比例关naloReadg

续表

温度/℃温度/Kanaloreadg585960616263656667686970717273747576777879808182

331.15332.15333.15334.15335.15336.15337.15338.15339.15340.15341.15342.15343.15344.15345.15346.15347.15348.15349.15350.15351.15352.15353.15354.15355.15356.15357.15358.15359.15360.15361.15362.15363.15

470462452443434425417407399391384375367360353345337330323316309303296290283276270265259253248243238

0.00302/1T

1696.75114.1281580.4201524.9571471.1861419.0321373.9701319.2871276.8001235.3871200.0001155.6241117.1991084.3371052.1611016.200981.0771951.0086921.54072.65548.3357840.4993813.1868790.1907763.8327737.9679716.1804698.2872677.1242656.2905639.1753622.2791605.5980RNTC

(lnRNTC)7.43707.4049667.3654467.3297217.2938247.2577307.2254607.1848477.1521127.1191407.0900777.0523967.0185806.9887246.9586016.9238266.8886516.8575236.8260476.7942016.7619616.7339966.7009616.6722746.6383496.6039006.5739326.5486316.5178556.4866046.4601796.43336.406216

0.0030110.0030020.0029930.0029840.0029750.0029660.0029570.0029490.0029400.0029310.0029230.0029140.0029060.00270.00280.0028810.0028720.00280.0028560.0028480.0028400.0028320.0028240.0028160.0028080.0028000.0027920.0027840.0027770.0027690.0027610.002754

可得:

()根据a函数返回值与电压的正比例关系,naloReadg

()函数返回值的最大值,为1analoRead023;Readmin为g

()函数返回值的最小值,为0。analoReadg

根据欧姆定律U=IR可得:

I=

E-UNTC

θ2R

E

()UNTC=Read1

Readmax-Readmin

()式中,UNTC指NTC热敏电阻的分压;Read为analoReadg

函数返回值;为5V;E为电源的电压,Readmax为

式中,其阻值为1kR为标准电阻,Ω;I为通过该支路的

θ

()2

电流。

式中,RNTC为NTC热敏电阻的阻值。

UNTC=IRNTC

()3

)将上面3式联立,解得RNTC与a函数返naloRead(g回值的关系:

2RRead

RNTC=

Readmax-Read

将表1的数据进行计算,得出表2。

θ

()4

表2 表1的数据计算结果

638629620612603594586577568560550542533524516507498481

0.0031930.0031830.0031730.0031630.0031530.0031430.0031330.0031240.0031140.0031040.0030950.0030850.0030760.0030660.0030570.0030470.0030380.003029/1T

温度/℃温度/Kanaloreadg4041424344454748495051525354555657

313.15314.15315.15316.15317.15318.15319.15320.15321.15322.15323.15324.15325.15326.15327.15328.15329.15330.15

3305.6993184.8103069.3072970.87428.6082762.7912675.7992581.6552491.2282413.7932320.6752248.9632171.0792096.0002031.4961961.31513.5361771.639

RNTC

(lnRNTC)8.1034038.0661488.0292077.9966117.9601877.9239977.20037.8561867.8205317.78557.7496137.7182247.77867.6165287.5813717.5462017.4796607.68298

838485868780

/(所示,得出1线性关系的具体表达式为:T与lnRNTC)

3938.5

=lnRNTC-4.4505

T

/(将表2中1数据进行线性拟合,如图2T与lnRNTC)

()5

)的关系,式(得出了T与RNTC的关系,故联立两式可以5()得出T与a返回值的关系表达式,即naloReadg

Read=

Readmax

θ2R

+13938.5

4.4505T-e()由于式(揭示了RNTC与a函数返回值4)naloReadg

()6

6 2

Microcontrollers&EmbeddedSstems 2019年第6期ywww.mesnet.com.cn

续表

随机温度796376907242

温度/K352.15336.15349.15363.15345.15315.15

)式(计6

算的值302.6313426.6393323.5036235.7050353.07623.6670

()analoReadg

函数值

301423322235351620

相对误差/%-0.53904-0.85301-0.479-0.29912-0.59183-0.58798

/(图2 1线性拟合T与lnRNTC)

4.1.2 随机验证其精度与误差

3938.5

T=θ

2RRead

4.4505+ln

Readmax-Read

()7

4.2 光照传感器

精度为0.相对误差在1%之内。5℃,

由2该温度传感器校正后的0组随机检验结果所知,

半导体光敏电阻器是利用半导体材料的电阻率随光强度变化的性质制成的光敏感元件,电阻随光强度升高而减小。

为检验该关系式的准确性以及温度传感器的稳定性,对其进行随机检验,即在40~90℃范围内随机抽取某一温度,由式(得出其对应6))的a函数返naloRead(gIDE串口监视器得到的

()函数返回值analoReadg函数在40~90之间生成2随机数0个随机数,如图3所示,随机检验结果如表3所列。

温度/K313.15321.15323.15318.15316.15320.15354.15330.15343.15319.15362.15349.15313.15322.15

4.2.1 线性处理

数,使用ArduinoIDE的串口监视器记录了由55.8Lux

采用GM1020数字光度计示数作为标准光度计读

回值,将该值与Arduino

,()自然降到4以A函数返回1.3Luxrduino中analoReadg的数值每变化5为间隔,记录的GM1020数字光照计示数

进行比较,得出其误差。)使用Pthon的random(y

如表4所列。

光照计读数55.855.555.054.453.753.152.251.350.549.6表4 光度计示数

()analoReadg序号函数值62563063505650655660665670111213141516171819光照计读数48.747.846.945.945.044.043.142.141.3()analoReadg函数值675680685690695700705710714序号1234相对误差/%-0.920750.247150.67000

5678109()analoReadg

函数值

637567550593611576288476366585240322637559

图3 生成的20个随机整数

表3 随机检验结果

)式(计6

算的值2.9197565.6021546.3395594.6365614.0029575.26862.3472480.3431368.6218584.9491241.1812323.50362.9197555.9568

随机温度404850454347815770467049

-0.27522-0.407-0.46560-0.90418-0.71123-0.475-0.479-0.920750.547380.008700.12715

()线性拟合,如图4所示,得出a函数返回与光naloReadg度计示数线性关系的具体表达式:

()将表2中a函数返回与光度计示数进行naloReadg

analoRead=-5.8723x+959.2g)/x=-(analoRead-959.25.8723g

()8()9

4.2.2 随机检验及其误差

为检验该关系式的准确性以及光度传感器的稳定性,对其进行随机检验,即在41.3~55.8Lux范围内随机抽取某一

敬请登录网站在线投稿 2019年第6期

6 3

该光强度传感器校正后的 由5组随机检验结果所知,

相对误差在2%之内。

结 语

稳可靠、结构简单、成本低廉。该平台还可增加压力传感器、颜色传感器、压强传感器等多种传感器模块,丰富该平

()图4 a函数返回与光度计示数线性拟合naloReadg

本文基于Pthon与Arduino构建的监测平台运行平y

台的监测种类,同时使用更精密的传感器或优化传感器电路,以增强该平台监测能力。

参考文献

[]田华.]基于A农1rduino的简易水情检测系统设计与试验[J.

GM1020数字光度计得

到的示数进行比较,得出

光强度,由式(得出其对应的光度计示数,将该值与9)

)函数在6random(30~710的范围内生成5个随机整数,随机数如图5所

图5 生成的5个随机整数

其误差。使用Pthon的y

[]桂淮濛.]基于A电脑编程技巧与2rduino的电子产品设计[J.

()业工程,2018,87.()维护,201.

示,其随机检验结果如表5所列。

序号12345

光照

计读数46.151.4.542.453.2

()analoReadg

函数值

690666699709650

[]杨儒骁.基于MA3TLAB和Arduino的小型机械臂控制系统

表5 随机检验结果

计算的光照

计数值45.8423445750.9510753944.3097253242.6068150552.65398566

误差/%-0.5505495-1.257605838-0.427583549-1.0263427420.487771337

[]李俊华.]基于P电子技术与软件工程,4thon的数据分析[J.y

]()设计[工业控制计算机,J.201831.

[]李加升.]荆门职业技术学5NTC热敏电阻及其应用分析[J.

()201817.

[]胡润峰.]()传感器世界,6NTC热敏电阻温度传感器[J.20017.

()院学报,20076.

[]孙庆龙.]大学物理实验,7NTC热敏电阻温度特性研究[J.

()2013,2.

()责任编辑:薛士然 收稿日期:2019-02-14

Semtech发布LoRaBasics

将在Semtech的LoRa开发人员门户上作为开源文件提供。LoRaBasics带来的推动力是提取常用的

即所有终端设备、网关或基于L并提供一LoRaWAN功能,oRaWAN解决方案的开发人员都必须实现的功能,

)。所有的L件构建模块,以帮助解决方案开发人员快速实现其客户所期望的投资回报(ROIoRaBasics版本都

高性能模拟和混合信号半导体产品及先进算法领先供应商SemtechCororation正式推出LoRaBasics软p

组与规范兼容的、免费的、可提供支持的开源软件套件。该组构建模块代表了基于LoRaWAN的技术实现的最佳实践。这样开发人员就可以专注于开发其解决方案,同时以更低的成本、更快的将应用推向市场。

“执行官R我们相信这将有助于实现obinDuke-WoolleLoRaBasics为市场带来了一个受欢迎新生事物,y说道,”这一目标,并帮助开发人员更多地关注新的增值机会。

“”物联网市场确实需要简化物联网解决方案的开发并加速部署,物联网分析公司BeechamResearch首席第一个基本软件构建模块LoRaBasicsStation已于2019年1月在GitHub上宣布并同时发布。LoRaBas-基于L具有安全可靠的数据通信和远程网关管理协icsStation是一款全新的、oRaWAN的网关数据包转发器,

议,该协议同样适用于基于Linux的网关和资源受限的嵌入式网关。它还提供一个事件驱动的LoRaWAN的无线电提供了所需要的固件。除了完全兼容LoRaWAN的协议之外,运行时间,带有电源管理、计时器处理和灵活的仿真环境,以方便调试和回归测试。,以及用于LoRaBasics套件未来关注的领域包括终端设备和后端服务器上的无线固件远程升级(FUOTA)离线性能分析的数据科学记事本。

第二个基本构建模块L该构建模块为终端设备开发人员启用并运行基于oRaBasicsMAC于近日发布,

6 4

Microcontrollers&EmbeddedSstems 2019年第6期ywww.mesnet.com.cn

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baijiahaobaidu.com 版权所有 湘ICP备2023023988号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务