APP下载

模拟月球探测控制系统的设计

2018-01-18张安莉

自动化与仪表 2017年1期
关键词:月球车上位小车

谢 檬,张安莉

(西安交通大学城市学院 电气与信息工程系,西安 710018)

月球是地球的近邻,也是地球惟一的天然卫星。从20世纪50年代末至70年代初苏联共向月球发射了47个无人探测器,与此同时,美国也向月球发射了36个无人探测装置[1-4]。人们通过全球性合作研究,对月球表面环境、土壤物理化学性质、陨石坑的分布以及月球资源的开发前景等进行了系统的研究,获得了大量的科学依据,人们惊奇地发现原来月球的资源是非常丰富的,开发利用的前景非常广阔[5-7]。另外,开展月球探测不仅有重要的科学技术意义,而且有极其深远的社会和经济意义,以及重要的军事政治意义。开发利用月球矿产资源、能源和特殊环境,建设月球基地,为人类社会的可持续发展服务,已成为新世纪月球探测的总体目标[8-10]。本文以MSP430F5438微控制器作为主控器,通过MSP430内置的串口连接无线模块与计算机连接的无线串口模块通信,完成接收指令、寻找目标、获取坐标、前进避障、立即拍照等操作,并预留了部分按键,可以随时进行功能扩展。

1 月球车控制系统的硬件结构

1.1 系统结构

系统的工作基本原理是上位机发送定位信号,下位机接收到定位信号后中断当前操作,进入定位模块,开始调整小车与周围挡板夹角使其与周围挡板垂直,然后发出超声波信号测量x,y距离,在测得坐标之后将数据返回上位机,发送完毕之后将小车姿态调整到定位之前姿态,进入中断之前的操作。其结构如图1所示。

图1 控制系统结构Fig.1 Structure block diagram of the control system

MSP430F5438单片机完成控制芯片之间的协调工作,并接收上位机下达的指令,使系统有序地完成各项任务。定位系统采用L298N芯片作为直流电动机的驱动芯片,驱动2个直流电动机。模拟月球车根据上位机下达的任务指令在2 m×2 m平面范围内运动,返回当前坐标。模拟月球车的主要技术指标为车身重量:2.5 kg;通信距离:200 m;工作时间:20 min;系统功耗:3 W;目标光通量:500 lm;工作电压:1.2 V/A×6.9 V;外部电源输入:12 V/2 A。

1.2 电子指南针定位模块

电子指南针模块返回的角度通过单片机串口获得以调整小车与2 m×2 m方形场地的夹角,当夹角调整为0°的时候利用车体上的2个垂直摆放超声波测距模块测量距离,此时测得的距离即为横纵坐标,如图2所示。

图中X1,Y1为超声波所测与周围挡板的距离,由此可知模拟车此时坐标就是(X1,2-Y1)。超声波模块只能测量与其所发射超声波垂直物体的距离,因此必须使用指南针模块在测距命令发出后,立即调整模拟车车身位置使得车载的超声波与周围挡板垂直。本模块使用的电子指南针模块型号为GY-26,其工作原理是通过磁传感器中2个相互垂直轴同时感应地球磁场的磁分量,从而得出方位角度[11]。此罗盘支持RS232协议和I2C协议与其他设备通信,精度高、稳定性高、并且具有重新标定的功能,能够在任意位置得到准确的方位角,其输出的波特率是9600 b/s,有连续输出与询问输出2种方式,具有磁偏角补偿功能,可适应不同的工作环境[12]。

图2 电子指南针定位模块示意Fig.2 Schematic diagram of electronic compass positioning module

1.3 超声波测距模块

超声波测距模块使用了一体化超声波发射、接收头模块HR-SR04,该模块可提供2~400 cm的非接触式距离感测功能,测距精度可达到2 mm。模块包括超声波发射器、接收与控制电路,测距开始后由I/O口向模块Trig端子发送至少10 μs的高电平信号,此时模块会自动发送8个40 kHz的方波,并且自动检测信号的返回,有信号返回,则通过模块Echo端子输出高电平,高电平持续的时间就是超声波从发射到返回的时间。即:

测试距离=(高电平时间×声速)/2

1.4 系统供电模块

人造航天器无一例外的具有电源储备系统。本系统使用直流稳压电源作为外置电源,模拟太阳能电池。根据不同模块对电源的要求,采用LM7805、LM317等稳压管设计输出3.3 V、5 V和9 V 3种电压。

1.5 电机驱动模块

电机驱动芯片选用L298N,内部包含4通道逻辑驱动电路,可以方便地驱动2个直流电机,输出电压最高可达50 V,持续输出电流可达2 A,采用标准TTL逻辑电平信号控制,为防止因芯片损坏而烧毁微控制器,采用光耦隔离,不但可以保护控制部分电路的安全,而且还可以防止电机的感应电压干扰控制电路,增强系统的抗干扰能力。

1.6 键盘控制模块

月球车键盘控制模块有8个按键,全部安排在车体一侧,分2组放置,第一组为系统及任务控制区,第二组为系统辅助控制功能区。各个按键的地址和功能如表1所示。

表1 按键的地址和功能表Tab.1 Address and function table

2 控制系统的软件设计

2.1 上位机监控软件界面

上位机监控软件主要收集月球车上传的一些状态信息及检测得到的环境数据,并将这些数据加以处理、显示在界面特定区域内。用户即可以根据这些数据判断月球车的工作状态。用户也可以通过上位机界面按钮向月球车下达控制指令,例如启动系统、停止系统、启动任务、停止任务、获取坐标、立即拍照和手动控制月球车运动等功能。上位机监控界面如图3所示。

图3 上位机监控主界面Fig.3 PC monitoring main interface

1)控制界面菜单栏项目包括“文件”、“设置”、“任务”、“帮助”。菜单功能如下:

(1)“文件”:打开串口调试窗口,向下位机发送调试指令;也可以选择退出上位机控制程序。

(2)“设置”:打开“设置”窗口,在这里可以修改上位机串行口通信的具体参数、对小车指南针进行校准和复位、修改超声波测距的相关参数等操作。

(3)“任务”:控制系统任务的启动或停止。

(4)“帮助”:显示帮助信息、关于信息。

2)“快捷设置”区:可以快速选择串口号,设置所需控制的下位机ID;“运行状态监测”区显示小车当前状态,“坐标”栏显示小车当前所在坐标信息;“当前角度”栏显示小车当前所处的角度,以正东方向为0度;“温度”栏显示小车环境温度;“最后通讯时间于”栏显示小车与上位机最后建立通讯的时间。

3)“功能”区:用于向小车下达控制指令,在这可以远程启动小车、停止小车;启动任务、停止任务;下方可以设置小车功能开关,例如自动拍照、信息上传、自动避障、获取坐标、立即拍照等功能。

4)“手动控制”区:可以手动控制小车移动,当小车处于“待命”状态时,该功能可用。

2.2 系统任务程序流程

系统任务主要是完成自动寻找目标光源、跟踪光源、自动避障、定位、到达目标光源前以后停止任务,并自动请求拍照上传的任务。在执行任务中若遇到上位机发送的定位信号,小车可自动调整方位并获取坐标并将当前坐标返回上位机,发送完毕之后小车会自动调整到之前中断任务时的状态。任务程序流程如图4所示。

当系统处于激活状态,并且任务已下达,系统开始控制车身左右旋转寻找光源。车身默认旋转方向为左,转动弧度由车轮上安装的旋转编码器测量,测量值保存在系统全局变量中,在程序开始计数时先将所使用的计数器清零,然后驱动小车运动。这时旋转编码器会返回脉冲,引起中断,计数过程由中断服务程序完成,即编码器每输出1个脉冲都会引起1个中断,中断自动判断脉冲来源于哪个编码器,并使相应的计数变量值自加1。当计数值达到预设值后,旋转停止,程序将计数值清零。

小车旋转时,如果发现光源强度已经达到预定的停止值,小车会立即结束寻光,保存当前亮度值,开始向光源所在方向运动,跟踪光源。跟踪光源时会反复由超声波传感器判断前方是否有障碍物,如果有则避障,同时也会反复判断光强是否达到停止值,如达到则任务结束,小车停止,执行拍照程序。

图4 任务流程Fig.4 Task flow chart

2.3 通信协议

模拟月球车通讯协议分为下位机部分和上位机部分,属于服务器/客户机协议。下位机主要以指令接收、信息上传为主,上位机则偏重处理下位机上传的信息,并下发控制指令。上位机通过控制界面按钮向下位机发送数据包,本系统的通信协议控制指令共分为5段,包括接收方ID、发送方ID、信息类型、信息内容、数据。ID标识用来指示数据的流向,信息类型目前只有控制指令,信息内容包括系统状态控制、任务状态控制、运动控制、系统设置、请求应答。小车接收到指令数据字节后会根据数据字节内容修改对应系统状态标志或控制系统做相应的功能。

2.4 状态及定位信息上传

系统工作时需要将自身所处环境的基本信息上传至控制台,便于操作人员监控月球车的运行状态,并适时向月球车下达新的控制指令,程序流程如图5所示。

2.5 定位系统的软件设计

定位系统的软件实现方法是通过上位机发送定位信号,下位机接收到定位信号后中断当前操作,进入定位模块。首先调整小车与周围挡板夹角使其与周围挡板垂直,然后发出超声波信号测量x,y距离,在测得坐标之后将数据返回上位机,发送完毕之后将小车姿态调整到定位之前姿态,进入中断之前的操作,程序流程如图6所示。

图5 定位信息上传流程Fig.5 Positioning information upload flow chart

图6 定位系统程序流程Fig.6 Positioning system program flow chart

定位系统有2种工作方式:手动控制与自动寻找。月球小车上电初始化时会自动获取并记录当前角度和坐标,作为系统默认值。刚上电的小车处于“停止”状态,此时只能接受开机指令。上位机通过控制界面向小车发送“启动小车”指令,小车随即进入“待命”状态,此时可以接受任务指令,等待主控机下达任务指令。主控机通过控制界面向小车下达执行任务的指令,此时小车状态为“任务执行中”,小车立刻开始控制自身旋转,自动寻找目标并确定目标物相对自身的角度,然后向目标物前进,同时反复判断是否走偏、是否前方有障碍物,如有障碍物则自动进行避障。小车执行任务的过程中可以接受新的控制指令,包括停止系统、结束任务、获取信息等。系统执行任务时,控制人员可随时按下“获取坐标”按钮,执行此操作后小车会立即暂停当前任务,调整自身角度为初始化时自动记录的角度值,然后通过超声波传感器测量自身坐标并返回至上位机控制界面显示,坐标测量完成后小车会回到任务打断时的角度恢复任务过程。

3 系统的测试及结果分析

在设计的控制系统中进行定位测试,系统硬件的调试采用模拟环境调试,环境尺寸为2 m×2 m自制二维瓦楞纸板立于测试场地的左、上两相邻边,高度超出车身高度5~10 cm。具体步骤为

(1)将小车放置场地中任意位置,但要保证车头朝向场地正前方,车身与左侧边平行;

(2)启动光源,将障碍物放置于小车与光源路径中央,障碍物尺寸为60 cm×50 cm×10 cm;

(3)小车上电,绿色指示灯点亮,蜂鸣器鸣响一声,系统初始化成功。初始角度已经被程序记录,小车此时处于停止状态;

(4)连接无线收发模块电缆到计算机空闲USB插口中。确认收发模块红色电源指示灯点亮;

(5)启动上位机的控制界面,如果不知道收发器所在串口,则在菜单栏选择“设置”、“自动检测端口”,程序会自动检测端口(请确认下位机已上电);如果已知端口号可以直接在“当前串口”下拉菜单中选择,并单击“串口已关闭”按钮,程序将自动尝试打开串口;

(6)单击上位机“功能”区中的“启动小车”按钮,此时小车蜂鸣器会鸣叫一声,代表小车成功启动,稍后上位机“运行状态监测”区显示“下位机状态”为“待命”;

(7)单击上位机控制界面“执行任务”按钮,小车立即开始执行任务,上位机运行状态监测区显示“正在执行任务”,小车自动完成寻光、跟光、避障等一系列控制功能;

(8)系统执行任务时,控制人员可随时按下“获取坐标”按钮,执行此操作后小车会立即暂停当前任务,调整自身角度为初始化时自动记录的角度值,然后通过超声波传感器测量自身坐标并返回至上位机即控制界面显示,坐标测量完成后小车会回到任务打断时的角度恢复任务过程;

(9)任务执行结束后,系统自动恢复为“待命”状态。

小车接收到上位机的任务指令后可以立即启动系统,系统可以在前进中自动调整车身,使行进方向更加准确。系统执行任务时,控制人员可随时按下“获取坐标”按钮,执行此操作后小车会立即暂停当前任务,调整自身角度为初始化时自动记录的角度值,然后通过超声波传感器测量自身坐标并返回至上位机即控制界面显示,坐标测量完成后小车会回到任务打断时的角度恢复任务过程。

4 结语

本系统以MSP430微控制器为主控,电子指南针模块作为系统方向导航功能模块,用超声波传感器作为系统定位及运动避障传感器,通过下位机软件直接调用各个模块读取数据,根据数据作出预定的功能,并将相关数据上传至上位机控制界面上,完成接收指令、寻找目标、获取坐标、前进避障、立即拍照等操作,并预留了部分按键,可以随时进行功能扩展。经过对定位系统的工作测试,该系统完全符合系统实时性和精确性的要求。

[1]梁斌,王巍,王存恩.未来我国发展月球车的初步设想[J].中国航天,2003(1):29-33.

[2]欧阳自远.我国月球探测的总体科学目标与发展战略[J].地球科学进展,2004,19(3):351-358.

[3]郑伟,许泽厚,钟敏,等.月球探测计划研究进展[J].地球物理学进展,2012,27(6):2296-2307.

[4]熊盛青.月球探测与研究进展[J].国土资源遥感,2009(4):1-7.

[5]张永红,郭健,张继贤,等.月球探测50年[J].测绘通报,2007(12):24-26,51.

[6]李培佳.我国月球探测工程中的定轨和定位[J].天文学报,2015,56(4):412-414.

[7]杨飞,邓宗全,陶建国,等.月球探测车车轮数目的选取[J].吉林大学学报:工学版,2012,42(5):1113-1119.

[8]熊坤,程荫杭.串行通信在无线机车信号地面控制系统中应用的研究[J].铁路计算机应用,2005,14(3):45-47.

[9]马中胜,王树勋,燕学智,等.基于无线定位的自动引导车辆系统[J].试验技术与试验机,2004,44(1):22,56.

[10]胡明,邓宗全,王少纯,等.月球探测车移动系统的关键技术分析[J].哈尔滨工业大学学报,2003,35(7):795-798.

[11]桑玉民,张跃,余军涛,等.用虚拟现实技术研究月球探测中的开拓性问题[J].系统工程与电子技术,2002,24(3):95-98.

[12]丘富占,崔平远,崔祜涛,等.月球巡视探测器定位技术研究[J].机器人,2006,28(2):235-240.

猜你喜欢

月球车上位小车
大车拉小车
自制小车来比赛
月球车之最
刘老师想开小车
要攻城略地关键要有好筹码,这匹水产动保“黑马”如何能迅速上位?
特斯拉 风云之老阿姨上位
两轮自平衡小车的设计与实现
基于ZigBee和VC上位机的教室智能监测管理系统
玉兔号月球车正式停止工作
Mining the Moon Becomes a Serious Prospect