0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >工业控制 > 基于SensComp 600系列声纳传感器和C8051F040单片机的测距系统设计方案

基于SensComp 600系列声纳传感器和C8051F040单片机的测距系统设计方案

来源: chinaaet
2020-07-09
类别:工业控制
eye 281
文章创建人 拍明

原标题:基于声纳传感器和C8051F040的测距系统设计方案

  摘要: 采用SensComp 600声纳传感器和单片机C8051F040设计实现了声纳测距,系统所需硬件少,测量量程为15~1 070 cm。在45~500 cm范围内,最大误差为2.34 cm。系统除用于测距外,还可用于障碍物检测、倾斜角度测量、车辆定位与导航和液位测量、农业物料检测等领域应用。 不足之处是单片机C8051F040功能非常多,但在此系统中未充分应用,因此还能利用C8051F040设计更多的功能,来以扩充该系统;此外,该系统的测量误差相对较大,可以在程序中进行误差补偿等处理,使系统测量精度更高。

  超声波测距具有迅速、方便、且计算简单,测量精度高等诸多特点,因此在倒车雷达、测距仪、移动机器人和农产品无损检测等广泛应用。声纳(Sonar)是声音导航测距(Sound Navigation and Ranging),广泛用于对水下目标进行探测、定位、跟踪、通信和导航等。在此,介绍采用SensComp公司600系列高灵敏声纳传感器和SliconLabrary公司单片机C8051F040设计测量系统。该系统设置有键盘和LCD人机操作界面,可提供RS 232和控制器局域网(CAN)两种总线输出,方便实际应用。

  1 声纳传感器及测距原理

  SensComp 600系列声纳传感器实物照片如图1所示,它整合了6500测距模块和600系列超声波探头,探头中心频率50 kHz,具有极好的接收灵敏度。触发方式可选内部触发(触发频率5 Hz)或外部触发,I/O接口均兼容TTL逻辑电平,正常工作电压范围为6~24 VDC。与其他超声波传感器相比,其声波强度的中部明显大于旁瓣的强度,波束角度15°。

  

SensComp 600系列声纳传感器实物照片

  超声波测距的原理是测出声波从发射点至目标物体往返传输所需的时间,在一定环境下声波的传输速率是不变的。根据式(1)的超声波测距数学式可测算得到距离。

  

公式

  式(1)中:D为声波发射点与目标物体的距离,(单位为m);t为声波往返发射点和目标物体的时间。式(2)中:c0为声波,在0℃时,空气中的传播速度为331.4 m/s;T为绝对温度。

  SensComp 600系列声纳传感器有两个基本的操作模式:单回波模式和多回波模式。在单回波模式下。输入引脚INIT电平跳变为高电平时传感器触发发送超声波,然后等待发送的声波信号返回,最后返回的信号被放大,并且在输出引脚ECHO输出高电平。从引脚INIT变为高电平到ECHO跳变为高电平的时间即为声波从传感器至障碍物往返所用的时间。若要重复测量只需按上述循环操作。多回波模式即一次触发多次接收返回的声波信号。在此模式下,当收到返回信号后,将输入引脚BLNK输入持续长于0.44 ms的高电平即可将引脚ECHO变为低电平,接收到下一次回波信号时ECHO又将输出高电平。SensComp 600系列超声波传感器应用于测距时采用单回波模式就能满足要求。

  2 系统硬件设计

  该测量系统采用美国SliconLabrary公司单片机C8051F040作中央处理器。C8051Fxxx系列单片机是完全集成的混合信号系统级芯片,具有与8051兼容的微控制器内核,可与MCS-51指令集完全兼容。除了具有标准8052的数字外设部件之外,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。C8051F040采用高速、流水线结构CIP-51内核(可达25 MIPS),可以使用标准803x/805x的汇编器和编译器进行软件开发,具有强大的功能。如100 kS/s的12位ADC、控制器局域网控制器(CAN),6个捕捉/比较模块的可编程计数器/定时器阵列、温度传感器、可实现硬件的SPI,SMBus/I2C和两个UART串行接口、64 KB可在系统编程的FLASH存储器等。其片内JTAG调试电路允许使用安装在最终应用系统上的产品MCU进行非侵入式(不占用片内资源)、全速、在系统调试,该调试系统支持观察和修改存储器和寄存器,支持断点、观察点、单步及运行和停机命令。在使用JTAG调试时,所有的模拟和数字外设都可全功能运行。因此选用此单片机完全能满足设计要求。设计中运用C8051F040的定时器捕捉功能检测声波传输时间,ADC采集片内温度传感器对声速校正,并有键盘和LCD人机作操作界面,FLASH存储相关设置,同时测量数据通过RS 232和控制器局域网(CAN)两种总线输出。硬件结构图如图2所示。C8051F040具有6个定时器捕捉模块,此硬件设计还能扩展至少5个超声波传感器,以实现更多功能。

  

硬件结构图

  3 系统软件设计

  系统的软件由主程序、定时器2中断程序以及PCA捕捉中断程序组成。主程序主要完成系统的初始化,并从FLASH读入以前的设置参数。图3(a)为定时器2中断程序流程图和PCA捕捉中断程序流程图。定时器2中断频率为10 Hz,中断中读取按键值、CAN总线输入值和串口UART0输入值,若这些值与之前的设置不同,则将写入FLASH中保存。之后程序根据当前的超声波传输时间和环境温度计算出此次测量距离,并发送至CAN总线和UART0,且在LCD上显示。PCA捕捉中断程序,流程图如图3(b)所示,主要任务是完成超声波传输时间检测,PCA设置为上升沿捕捉模式。在超声波传感器引脚INIT上升沿起,PCA开始计时,当PCA的引脚跳变为高电平时,即传感器ECHO变为高电平时计时结束。若超过一定时间仍未收到回波,则放弃本次测量,重新触发下次测量。

  

系统软件设计

  4 系统调试及精度测量试验

  4.1 系统调试

  调试采用Tektronix Tds3034B四通道彩色数字示波器中的两个通道,检测出传感器INIT和ECHO两引脚波形跳变,如图4所示。可由两电平跳变之间的时间与单片机检测时间对比,检查捕捉计时程序是否准确。系统所测数据由CAN总线发出,调试时通过USB转CAN接口在电脑上接收到的数据,示波器检测到CAN总线上波形,如图5所示。

  

传感器引脚电平波形

  

CAN消息波形

  4.2 测量精度试验

  为标定系统测量精度,用200 cm×100 cm×2 cm硬平木板作障碍物进行测量,并用钢卷尺测量实际距离。系统测量量程为15~1 070 cm。在45~500 cm范围内进行了误差分析试验,其结果如图6所示。由此可得测量系统的最大误差为2.34 cm,平均误差为0.49 cm。

  

测距误差图

  5 结 语

  在此,采用SensComp 600声纳传感器和单片机C8051F040设计实现了声纳测距,系统所需硬件少,测量量程为15~1 070 cm。在45~500 cm范围内,最大误差为2.34 cm。系统除用于测距外,还可用于障碍物检测、倾斜角度测量、车辆定位与导航和液位测量、农业物料检测等领域应用。 不足之处是单片机C8051F040功能非常多,但在此系统中未充分应用,因此还能利用C8051F040设计更多的功能,来以扩充该系统;此外,该系统的测量误差相对较大,可以在程序中进行误差补偿等处理,使系统测量精度更高。

     c8051F040

  Cygnal公司的51系列单片机C8051F040是集成在一块芯片上的混合信号系统级单片机,在一个芯片内集成了构成一个单片机数据采集或控制的智能节点所需要的几乎所有模拟和数字外设以及其他功能部件,代表了8位单片机控制系统的发展方向。

  基本信息

  Cygnal公司的51系列单片机C8051F040是集成在一块芯片上的混合信号系统级单片机,在一个芯片内集成了构成一个单片机数据采集或控制的智能节点所需要的几乎所有模拟和数字外设以及其他功能部件,代表了8位单片机控制系统的发展方向。

  芯片上有1个12位多通道ADC,2个12位DAC,2个电压比较器,1个电压基准,1个32kB的FLASH存储器,与MCS-51指令集完全兼容的高速CIP-51内核,峰值速度可达25MIPS,并且还有硬件实现的UART串行接口和完全支持CAN2.0A和CAN2.0B的CAN控制器。

  C8051F040是高度集成的混合信号SoC级微控制器芯片,具有与8051单片机兼容的高速CIP-51微控制器内核,除了标准8051的数字外设部件外,片内还集成了数据采集与控制系统中常用的模拟部件及其它一些数字外设部件。

  基本功能

  (1)增强型8051CPU-CIP-51微控制器

  C8051F040单片机系统控制器的内核采用CIP-51微控制器,它与MCS-51指令集完全兼容,可以使用标准803x/805x汇编器和编译器进行软件开发。CIP-51内核具有标准8052的所有外设部件,包括5个16位的计数器/定时器、两个全双工UART串行接口、256字节内部RAM、128字节特殊功能寄存器(SFR)地址空间及8个8位宽的I/O端口。

  (2)速度提升

  CIP-51采用流水线结构,与标准的8051结构相比指令执行速度有很大的提高。在标准8051中,除MUL和DIV以外所有指令都需要12或24个系统时钟周期,最大系统时钟频率为12-24MHz。而对于CIP-51内核,70%的指令的执行时间为1或2个系统时钟周期,只有4条指令的执行时间大于4个系统时钟周期。CIP-51共有111条指令。CIP-51工作在最大系统时钟频率25MHz时,其峰值性能达到25MIPS。下表列出了指令条数与执行

  时所需的系统时钟周期数的关系:

  (3)功能改进

  C8051F040系列MCU对CIP-51内核和外设有几项关键性的改进,提高了整体性能,更易于最终应用。标准8051只有7个中断源,C8051F04x系列MCU通过对内核中断系统的扩展,可向CIP-51提供20个中断源。允许大量的模拟和数字外设中断微控制器。

  MCU可有多达7个复位源:一个片内VDD监视器、一个看门狗定时器、一个时钟丢失检测器、一个由比较器0提供的电压检测器、一个软件强制复位、CNVSTR0输入引脚及/RST引脚。/RST引脚是双向的,可接受外部复位或将内部产生的上电复位信号输出到/RST引脚。除了VDD监视器和复位输入引脚以外,每个复位源都可以由用户用软件禁止。

  (4)其他设备

  ◆控制器局域网(CAN2.0B)控制器,具有32个消息对象,每个消息对象有其自的标识符;

  ◆全速、非侵入式的在系统调试接口(片内);

  ◆100 ksps的12位ADC,带PGA和8通道模拟多路开关;

  ◆允许高电压差分放大器输入到12位ADC(60V峰-峰值),增益可编程;

  ◆500 ksps的8位ADC,带PGA和8通道模拟多路开关;

  ◆两个12位DAC,具有可编程数据更新方式;

  ◆64KB的可在系统编程的FLASH存储器;

  ◆4352(4K+256)字节的片内RAM;

  ◆可寻址64KB地址空间的外部数据存储器接口;

  ◆硬件实现的SPI、SMBus/I2C总线接口;

  ◆具有6个捕捉/比较模块的可编程计数器/定时器阵列;

  ◆片内看门狗定时器、VDD监视器和温度传感器。

  (5)可编程数字I/O端口和交叉开关

  C8051F040中除具有4个标准的8051端口P0、P1、P2、P3外,还附加了4个端口P4、P5、P6、P7。这64个多功能的I/O端口每个引脚都可以被配置为漏极开路或推挽输出方式,方便用户使用[6]。

  特性

  可通过设置交叉开关控制寄存器将片内的计数器/定时器、串行总线、硬件中断、ADC转换启动输入、比较器输出以及微控制器内部的其它数字信号配置在端口I/O引脚。这一特性允许用户根据自己的特定应用选择通用端口I/O和所需数字资源的组合。





责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯