基于ATmegal28L的智能探测车的设计与实现
通过ATmega128L的PA5(AD5)控制PWR UP。当PWR-UP="l"时,表示进入正常工作模式:当PWR-UP="0"时,表示进入接收待机模式。PANAD6) CS="1"时,表示中心频率为434.32 MHz,当CS="0"时,表示中心频率为433.92 MHz。PA7 (AD7)控制nRF40l的TXEN端,当TXEN="1"时,表示进入发送模式,当TXEN="0"时,表示进入接收模式。数据输入端DIN与ATmegal28L的PEO(RXD0)相连。数据输出端DOUT与ATmegal28L的PEl(TXD0)相接。 2.6 充电电路 由于电机启动时瞬间电流很大,且PWM驱动的电动机电流波动较大,导致车载电源电压不稳,从而影响其他电路的正常工作,所以系统采用双电源供电的方法。将电机驱动电源与单片机及传感器电源完全隔离开来,利用耦合器进行连接。 3 软件设计 系统软件的主要功能是:能够根据传感器信息正确避开障碍物:小车与PC的无线通信;预先设定路线;测量物体的大小。为了提高小车避障的智能性,软件设计采用了神经网络自学习。软件设计的重点在于小车的神经网络训练程序和小车与PC机的无线通讯程序。 3.1 神经网络训练程序 BP神经网络应用广泛,具有较好的分类和记忆功能,同时有很强的容错性和鲁棒性。采用两层前向BP网络实现多传感器信息的融合,输入层有6个节点(分别对应6组传感器。其中超声波传感器测得距离在30 cm之内记为1),输出层有4个节点(前进F、左转L、右转R、后退B)。选取的输入输出样本为: 样本确立后,需要进行网络训练。网络训练就是对网络的连接权系数进行学习和调整,使该网络实现给定的输入输出映射关系。权系数修改按照式 BP网络算法采用C语言编程,训练好的网络权系数存放于Flash内存之中。采用的是离线训练方式。 3.2 小车与PC机的无线通讯程序 PC机在小车行驶过程中可以通过无线通讯对小车进行控制。通讯采用中断的方式,流程图如图4所示。 4 结束语 本文讨论了基于ATmega128L的智能探测车的设计思路,对系统中的各个模块接口作了简要描述,利用神经网络来增强小车的智能性,并提出了系统软件的总体设计思想。该电路各部分功能模块化,易于调试,并且容易扩展其他功能。本设计的应用前景广阔,可用于肮脏、危险等不适宜人类工作或者是人类难以到达的环境,可作为特殊应用器材的载体工具,为无线检测、信息传输及远距离控制技术提供了一个很好的应用平台。
(1)进行:
uij(t+1)=uij(t)+λ[dj(t)-yj(t)xi(t)+α△uij(t-1) (1)
式中:λ表示学习速率(取0.3);α表示学习动量(取0.3);dj(t)和yj(t)分别表示j单元在t时刻的目标输出和实际输出;xi(t)表示单元i在t时刻的输入;△uij(t-1)表示前一次迭代中;;单元i和J连接权系数更新增量。
ATmegal28L 智能探测车 EEPROM 相关文章:
- 基于无线传感器网络的煤矿安全监控系统的研究(12-01)
- 嵌入式软件代码保护系统设计(05-08)
- 高密度SPI EEPROM——SA25C020的DSP引导(10-22)
- 提高MSP430G系列单片机的Flash 擦写寿命的方法(11-05)
- 实战经验吐血推荐:怎样在Linux环境下轻松实现基于I2C总线的EEPROM驱动程序(07-25)
- STM8S EEPROM 读写字节操作(12-03)