基于Proteus的温控超声波测距半物理仿真系统设计

2022-05-30 12:09冯飞李国利赵恒孙幸懿
电子产品世界 2022年8期
关键词:下位测距上位

冯飞 李国利 赵恒 孙幸懿

摘 要:针对单片机开发学习过程中实物硬件短缺或易损,以及仿真软件库中缺少元器件模型,实验现象不明显等问题,提出了基于Proteus的半物理电路仿真的设想和方法,即由PC机上的Proteus仿真软件作为上位机,实物硬件电路作为下位机,使其互相通讯完成预期的功能。并设计了基于Proteus的温控超声波测距半物理仿真系統,用以阐述具体的实现过程。设计过程中发现实物硬件与Proteus仿真电路之间可通过RS-232-C异步串行接口进行通信。通过进一步实验,发现传统的USB串行总线式接口也可实现通信功能。实验表明,此方法能降低开发成本,缩短开发周期,提高软硬件的兼容性,为后续单片机学习与开发提供了新的参考方向和思路。

关键词:超声波测距;半物理仿真;Proteus;RS-232-C;单片机

0 引言

目前,在我国无论是开展单片机教学活动、单片机竞赛、嵌入式开发还是因为个人兴趣学习单片机,大多使用市面上已经集成好了的单片机开发板或试验箱进行实验学习,其硬件电路固定,存在限制学习人员进行一些具有创新想法的实验研究情况,且学习过程中会出现元器件短缺、较贵或易损坏等问题。随着计算机科学技术的日益发展,各行各业各领域内都出现了仿真技术。仿真技术的出现和发展极大的节省了开发成本,缩短了开发周期[1]。Proteus正是在这种大环境下产生并快速发展的仿真软件[2]。但Proteus仿真同样存在一定问题,例如有的元器件模型软件库里没有,有的元器件使用麻烦且效果不明显等。

经过实验发现使用基于Proteus的半物理电路仿真技术可以解决上述问题,所谓基于Proteus的半物理电路仿真,又称基于Proteus的硬件在回路仿真[3],就是指通过PC机的串口或并口使Proteus搭建的虚拟仿真电路和实际硬件电路进行通讯的联合仿真[4]。此技术的最大特点就是将软件仿真技术与硬件系统联合起来,简化了设计过程。可以有效的加快系统开发的速度和质量,缩短研发周期,同时可以提高软硬件的兼容性[5]。

综上所述,本文下面将以基于Proteus的温控超声波测距半物理仿真系统为例,详细说明基于Proteus的半物理电路仿真的实现过程。

1 基本原理和设计方案

本文设计了一种基于Proteus的温控超声波测距半物理仿真系统,采用超声波脉冲回波法对目标物体进行测量分析,系统整体框架结构如图1所示,整个系统以STC89C516为控制核心,连接有HC-SR04超声波模块,LCD1602液晶显示模块,无源蜂鸣器,DS18B20温度测量模块以及发光二极管等外设。本系统分为由实物硬件电路组成的下位机和由Proteus虚拟仿真电路组成的上位机,两部分通过RS-232-C异步串行接口相连。虽然51系列单片机系统内部封装有通用异步串行收发器,可以实现单片机系统与外界的串口通迅[6]。但TTL串口电平标准为+5 V,0 V,RS-232-C的串口电平标准为(-3 ~ -15)V,(+3 ~ +15)V[7]。因此想要使用RS-232-C异步串行接口将实物与仿真连接进行通信,电路还需搭载MAX232电平转换芯片。具体连接过程为下位机通过RS-232-C异步串行接口与PC机接口相连,上位机中的COMPIM虚拟接口编号设置为与下位机相连的PC机的接口编号。整体系统通过上位机与下位机之间的相互通信,实现温度检测、超声波测距及警报功能。

2 电路设计

2.1 下位机电路设计

由于Proteus中超声波模块和蜂鸣器模块,与实物使用存在一定差别,为使实验便于操作,实验结果更加直观,设计如图2所示的下位机电路,该电路搭载有电源模块、RS-232-C异步串行接口、蜂鸣器模块、单片机控制模块、DS18B20温度传感器、MAX232电平转换模块以及HC-SR04超声波测距模块。可实现目标距离和环境温度的测量,将测量到的信息上传给上位机进行数据处理,并将处理好的数据发回实物单片机上,控制警报系统。

2.2 上位机电路设计

在Proteus中搭建如图3所示的上位机电路,该部分由LCD1602液晶显示模块、STC89C516控制模块、MAX232电平转换模块、RS-232-C模块以及LED状态指示模块组成。由于上位机与下位机通过RS-232-C异步串行接口相连,上位机电路的晶振频率应与实物电路的晶振频率相同为12 MHz。当下位机将测得的数据传输给上位机时,上位机开始处理数据,并控制LCD1602实时显示目标距离。如果目标距离小于20 cm,红色指示灯亮起,并将处理好的数据传输给下位机,使下位机发出警报,否则,绿灯亮起。

3 系统软件设计

3.1 超声波测距模块原理

本实验采用型号为HC-SR04的超声波测距模块,该模块集成有超声波发射器、接收器与控制电路,具有性能高,精度高,盲区小等优点[8]。其工作时序图如图4所示,当单片机I/O口发送一个至少10 μs以上的高电平至该模块的Trig控制信号输入引脚时,超声波测距模块内自动发出8个方波信号,其周期为40 kHz,同时检测是否有返回信号。如果检测到有信号返回,Echo回响信号输出引脚输出高电平[9]。所测的距离与回响信号的脉冲宽度成正比,因此通过计算高电平持续的时间可以计算目标距离。公式如(1)所示

3.2 DS18B20温度补偿模块

由于环境温度对声速影响较大,声波在大气中传播时,声速随环境温度升高而增大,所以该系统在实际应用中,需要使用温度补偿的方式来提高测距的精度。本系统采用DS18B20测温模块检测环境温度。DS18B20是一种单总线数字温度传感器,主要由配置寄存器、64位ROM、温度传感器、非挥发的温度报警触发器TH和TL四个部分组成[10]。具有体积小,硬件开销低,抗干扰能力强,精度高的特点[11]。系统搭载DS18B20模块后可实时计算当前环境温度下的声速,以减小测量目标距离时的误差。具体公式如(2)所示

3.3 下位机软件设计

整体系统采用上位机与下位机分别编程的方法,开发环境为Keil uVision5,Proteus8.6版本。下位机电路主程序流程图如图5所示,系统上电后,先进行单片机,定时器初始化操作,然后启动超声波模块和DS18B20温度模块开始测量目标距离及环境温度,处理测量数据,将数据发送给上位机。其中超声波模块程序流程图如图6所示,该模块上电后先进行初始化操作,随后Trig引脚发出高电平,当模块接收到回波信号时,Echo引脚发出回响高电平信号,系统开始计算目标距离。如果目标距离小于20 cm,下位机电路中蜂鸣器响起。

3.4 上位机软件设计

上位机电路主程序流程图如图7所示,系统上电后进行初始化操作,然后接收下位机发送的数据,进行处理并将目标距离实时显示在LCD1602上,当目标距离小于20 cm时红色LED亮起,反之绿色LED亮起。要使上位机和下位机之间可以相互通信,需设置相同的波特率,本实验波特率为4 800 bit/s,定时器工作模式为16位。

4 实验及结果分析

基于Proteus的温控超聲波测距半物理仿真系统搭建好后如图8所示,连接好RS-232-C异步串行接口后,将上位机与下位机上电启动系统。以14 cm为目标初始距离,每次增加20 cm,测量6组数据,到114 cm为止。记录测量数据,与实际距离进行比对分析,数据如表1所示。

从表1中可以看出,随着目标距离不断增大,测量的误差也在不断增大,超声波测距的误差来源有很多,例如测量角度,温度,代码算法,电路等等。本文重点为介绍基于Proteus的半物理电路仿真技术,且碍于篇幅限制,对误差不做过多的分析和探讨。

5 结语

本文设计了基于Proteus的温控超声波测距半物理仿真系统,介绍了基于Proteus的半物理电路仿真技术的实现过程,为后续单片机开发学习过程中实物硬件短缺或易损,以及仿真软件库中缺少元器件模型,实验现象不明显等问题提供了一个切实可行的解决方案。经实验证明,该技术简化了设计的过程,提了高软硬件的兼容性,节约了成本,提高了开发效率,为之后的学习、开发提供了新思路。由此得出,本设计具有一定的参考和推广价值。同时,实验的过程中发现传统USB串行总线式接口也可实现实物电路与虚拟仿真电路之间的通信。受限于篇幅和本人水平,该半物理仿真系统还存在数据误差等问题,后续可通过电路滤波,改进算法或使用更为精密的超声波模块进行改进。

参考文献:

[1] 李承隆.电子产品热设计及热仿真技术应用的研究[D].成都:电子科技大学,2010.

[2] 周灵彬,张靖武.PROTEUS的单片机教学与应用仿真[J].单片机与嵌入式系统应用,2008(01):76-79.

[3] 童小利,金秋春,崔建峰.基于Proteus的半物理电路仿真[J].机床与液压,2011,39(15):119-122.

[4] 刘邹,丁青青.基于Proteus的硬件在回路仿真[J].计算机仿真, 2009,26(02):312-314,328.

[5] 张劲松.基于Proteus的硬件在回路仿真[J].科技信息,2013,(25): 36-37.

[6] 侯友轩,裴福俊,崔平远,等.一种基于传感器触发的组合导航系统平台[J].计算机测量与控制,2010,18(08):1844-1846.

[7] 胡训智.基于GPRS的远程医疗数据传输及管理系统设计[D].呼和浩特:内蒙古大学,2011.

[8] 王廷毓,仝玉强.一种六足仿生机器人的避障和防跌落功能设计[J].电子世界,2018(08):148-149.

[9] 谢翔.教育机器人智能搬运优化设计[J].科技展望,2014(18): 212-214.

[10] 曹美霞.单片机与数字温度传感器DS18B20的接口设计[J].电子制作,2014(11):9-10.

[11] 柳春林.基于ONENET云平台的智能鱼缸研究报告[J].科学技术创新,2019(04):53-55.

猜你喜欢
下位测距上位
类星体的精准测距
发射机房监控系统之下位机
特斯拉 风云之老阿姨上位
浅谈超声波测距
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
景洪电厂监控系统下位机数据传输网络改造
以新思路促推现代农业上位
CAN总线并发通信时下位机应用软件设计
基于PSOC超声测距系统设计