微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > FPGA和CPLD > 基于nRF24L01和Actel FPGA的智能探测系统设计

基于nRF24L01和Actel FPGA的智能探测系统设计

时间:12-28 来源:互联网 点击:
3、系统软件设计

3.1车载控制系统软件设计

车载系统是本系统的核心部分,它担负着现场环境探测,远距离数据传输以及未知区域检测等重要功能。因此该部分的设计对可靠性和稳定性要求较高。系统的软件流程图如图4所示。



图4车载控制系统流程图

车载系统软件包含两部分功能:采集现场各种参数和实现各种运行模式。通过温湿度传感器和人体红外传感器采集温湿度值以及现场环境是否有人信号;通过无线返;回参数决定当前小车的运行模式,包括自动运行模式、半遥控模式和全遥控模式。自动运行模式下小车会根据采集到的光电对管组信息分析当前的路况,从而作出相应运行路径修正处理;半遥控模式下通过鼠标控制Windows界面的参数来控制小车的行动;全遥控模式下通过操控键盘可直接操控小车运行。

车载系统自动运行时,通过内部算法进行路径选择和障碍规避。由于光电对管组信息相对较少,故采用查表映射法进行舵机电机驱动控制,即将光电对管组采集到的信息进行分类,根据不同的信息赋予小车不同的电机和舵机驱动值,而光电对管组采集得到的信息为6 bit数据,也就是数值为0~63,将其作为数组的下标,在数组内容中根据下标所表征的类型设置不同的经验值,通过大量的运行测试即可得到比较理想的参数。车载系统检测到小障碍物时,查表得到舵机电机参数,转过一定角度绕开障碍物继续运行;检测到较大障碍物且无法绕过时,车载系统倒车回到安全区域继续运行。

由于光电对管组存在干扰信号,在算法上进行了如下滤波处理:利用记忆功能将前几次的行进路线保存,通过与当前输出状态的比对,判断是否为干扰信息以决定是否摒弃当前控制量。

以上算法保证了车载系统在运行中出错概率降到最低。

3.2人机交互界面设计

A机交互界面是采用微软基础类(MFC)开发的基于对活框架构的应用程序。采用CMSComm类处理中转板与PC之间的串口通信,同时通过截获软件系统的消息传递函数来实现对键盘值的判断。

本文详细介绍了nRF24L01无线芯片的DPL和ACKPAYLOAD等功能,实现了车载系统与上位机之间的双向通信,使用Actel公司的CoreConsole工具构建SoPC片上系统,同时设计了PC机上人机交互界面,完善了系统的运行和控制,实现了具有实时数据传送、自动避障、远程操控等功能的智能探测系统。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top