基于P87C591的CAN总线超声测距系统设计
引言
移动机器人的安全避障问题一直是该项研究的基本问题,目前解决此问题的基本方法是采用多路超声波传感器通过适当的安装角度达到获取多路测量信息的目的。对于多路超声波传感器的扩展,一般是在机器人系统控制核心之上进行。这样做的缺点在于,超声波传感器的扩展占用了大量的系统硬件资源,另外大量的测量信息的处理也浪费了系统软件资源。针对这一问题,笔者采用CAN总线扩展多路超声波传感器的作法。这种作法有几个优点: 首先,CAN总线具有良好的传输防错设计,保证了数据通信的可靠性;其次,多路超声波传感器的设计可由CAN总线智能节点实现,大大节省了系统硬件资源和软件资源;第三,由于CAN总线对于网络内的节点数在理论上不受限制,所以随着对移动机器人研究的不断深入,对于整个机器人系统的总体设计可以灵活地在CAN总线上进一步开发。本文介绍的CAN总线智能节点的设计以Philips公司的P87C591作为超声波传感器的控制核心。由于P87C591具有片上自带的CAN控制器并且为CAN的应用提供了许多专用的硬件功能,因此又将它作为了系统的CAN总线控制器,大大节省了主控系统的资源。CAN总线的收发器采用TJA1040。系统总体结构框图如图1所示。
机器人系统控制核心由ARM实现。其主要功能是处理需要复杂计算的信息,将经过处理的信息再送回CAN总线,并对整个网络进行管理。超声波智能节点控制系统的主要功能就是判断障碍物位置,将对移动机器人前进方向有阻碍的障碍物信息通过CAN总线传回主控系统,由主控系统作出相应处理并进行避障动作。本文将着重介绍超声波智能节点控制系统。
图1 系统总体结构框图
1 超声波智能节点控制系统的硬件设计
超声波智能节点控制系统的硬件电路如图2所示。P87C591是51系列单片机,对于大部分熟悉51单片机的使用者来说它的使用方法十分简单。下面分别介绍各个组成部分。
图2 超声波智能节点控制系统
1.1 控制部分
超声波传感器的控制部分采用Philips半导体公司生产的P87C591。它是一个单片8位高性能微控制器,具有片内CAN控制器,是从80C51微控制器家族派生出来的。它采用了强大的80C51指令集,并成功地包括了Philips半导体公司SJA1000 CAN控制器的PeliCAN功能;全静态内核提供了扩展的节电方式;振荡器可停止和恢复而不会丢失数据;改进的1∶1内部时钟预分频器在12 MHz外部时钟速率时,实现500 ns指令周期;内部具有的16 KB内部程序存储器完全满足本系统要求。
相关文章
- 2023-09-06清华大学精密仪器环境振动影响评价
- 2023-08-05电导变送器的研究与应用
- 2022-06-15恒温槽(炉)温场检测/校准的几点技巧
- 2021-12-25分布式Zigbee多节点传感器数据融合轨迹关联
- 2023-07-17OMRON柔性运动控制器FQM1在高速绕线机中应用的探讨
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。