总体系统概述
整个机器人系统由以下几个部分:控制系统、驱动系统、巡线系统、人机接口、单片机控制程序。这些系统的设计关系到机器人巡线的效率和准确性。
2.1 机器人控制系统
机器人控制系统采用SPCE061A单片机作为控制核心,通过设计单片机控制程序来控制单片机系统的输出信号,从而控制机器人的驱动系统,使机器人按照导引线行进,在行驶的过程中,巡线系统不断地检测机器人当前的位置状态,将此刻位置状态与理论正确状态相比较、判断,随时纠正机器人行驶方向的偏差,确保机器人巡线行驶。其控制系统的关系图如图2-1所示。
图2-1控制系统的关系图
2.2 机器人驱动系统
机器人驱动系统在机器人的设计和制作中是非常重要的一个环节。驱动系统设计和制作的好与坏决定了机器人的运动性能,包括机器人的运动速度、转弯性能、加减速性能等重要指标。驱动系统由单片机进行控制,在驱动系统中动力来源于直流电机,通过单片机控制脉冲,带动机器人的驱动轮,从而控制机器人的运动。我们将机器人设计成四轮支撑的移动式,前面是两个万向轮,后面是两个驱动轮。其驱动系统的控制关系图如图2-2所示。
图2-2驱动系统的控制关系图
2.3 机器人巡线系统
巡线系统是机器人的一种简单“视觉”,为机器人运动过程中位置的准确性提供了保障。一般一个机器人需安装多个巡线系统的检测点,每一个点由光发射接收板和A/D转换两大部分组成。光发射接收板主要功能是完成光的发射、接收和将光信号转换为模拟信号。A/D转换部分主要功能是将光发射接收板输入的模拟信号经A/D后,转换为数字信号,供后级单片机进行巡线判断。本课题采用 SPCE061A单片机作为控制核心,它内部自带有7通道10位电压模-数转换器(ADC),并且巡线系统只需要5个检测点就能达到设计要求,所以我们直接将光发射接收板的模拟信号输入到SPCE061A单片机中,由单片机对输入的模拟信号定时采样进行A/D转换,用于后期巡线判断,简化了电路。整个巡线系统的控制关系框图如图 2-3 所示。
图2-3 巡线系统的控制关系框图
2.4 人机接口部分
单片机应用系统中,通常都要有人机对话功能。它包括人对应用系统的状态干预与数据输入,以及应用系统向人报告运行状态与运行结果。通常人对系统状态的干预和数据输入方式中最常用的是键盘和鼠标输入,以及触摸屏和语音输入。系统向人报告运行状态及运行结果最常用的有各种报警指示灯、LED/LCD 显示器以及能永久保持结果数据、状态的打印机等。良好的人机接口设计是智能化仪器系统的重要环节,它直接关系到用户使用方便性。
本课题设计了简单的外部控制按键,人能通过按键对单片机进行中断控制,从而控制驱动系统调节机器人行驶速度。并具有数码显示功能,能实时显示机器人巡线行驶的速度等级。人机接口控制关系如下图2-4所示。
图2-4 人机接口控制关系图
2.5 单片机控制程序
机器人控制系统的软件设计是非常重要的。它关系到机器人巡线信号的判读,驱动系统的控制。单片机控制程序由主程序、中断服务程序、巡线系统的信号检测和A/D转换程序以及延时修正程序等几个部分组成。
SPCE061A的开发可以用汇编语言,也可以用C 语言。汇编语言的优点在于运用速度快、可以充分利用芯片的硬件特性,但开发速度较慢,程序的可读性差;C语言的优势在于编程容易、调试较快、可读性好,可以大大缩短开发周期。本系统采C语言和汇编混合编译器进行软件开发。