浅析C 语言教学辅助系统中机器人传感器的选择及应用
2021-06-15黄鑫
黄鑫
(北京信息职业技术学院,北京 100000)
一、嵌入式机器人主控板的选择及详细接口介绍
本文针对C 语言课程教学,以VB 作为编译软件,特选择AVR 主控板,此主控板采用AVR ATmage128 单片机。128K 字节的系统内可编程Flash;4K 字节的EEPROM,4K 字节的内部SRAM。板内集成电源稳压电路、16×2 字符液晶显示器、声控开关、蜂鸣器、双路直流电机驱动电路等。提供26 个通用I/O 接口,其中8 个可用于模拟输入进行10 位的A/D 转换。另有I2C 和通用串行接口。
(一)电源及下载端口
AVR 主控板自带电源稳压电路,输入电源范围DC 3.6V—6V。与PC 机USB 接口连接实现机器人程序的下载。
(二)液晶显示对比度调节
AVR 主控板上带有LCD1602 液晶显示器,利用电位器调节LCD1602 液晶显示器的对比度。
(三)ISP 下载端口
主控板写入低层程序接口,用于系统的初始化和支持PC 机通过USB接口与主板进行程序的下载。
(四)I/O 端口说明
1.三端连接插座。三端连接插座接口总计18 个,全部可用于数字位的输入输出。其中8 个数字接口(D0-D7);8 个模拟接口(ADC0-ADC7)可接收DC 0-5V 的模拟信号进行10 位的A/D 转换。
2.扩展接口。为需要多端口的外接模块提供连接方便,主控板使用插针方式设置了两组扩展接口。一组4 位(K0-K3),另一组6 位(K4-K9)。
3.I2C 接口。主控板的I2C 通讯采用主从方式。主板CPU 为主机,I2C接口的传感器为从机。作为从机的I2C 传感器各自有固定的地址。主控板只设置一个I2C 接口,多个I2C 传感器可以并联到主机。
4.驱动电机。主控板提供双路直流电机驱动单元,常用于机器人行走电机的驱动控制。采用L298 驱动电路。可提供最高DC36V,总电流4A 的驱动能力。
5.扩展驱动接口。为方便外接驱动电路(步进电机或其它独立的驱动电路),主控板设置了扩展驱动控制接口。本接口可按用户需要提供多种电机驱动方式。
二、传感器的选择及应用
为了让机器人更具有智能化,需要在主控板上连接相应传感器,根据教学需要,特选择三种类型的传感器:数字量传感器、模拟量传感器、I2C 接口传感器。针对这三种传感器,需要集合在软件之中,所以分别采用数字接口传感器、模拟接口传感器和I2C 接口传感器来显示。下面简单介绍一下选择的三种类型的传感器。
(一)数字接口传感器
各种开关量的传感器的检测结果均为二进制的一位数字信号,此类型的传感器均为数字量传感器,如:光电传感器、红外避障传感器和超声波传感器、接触传感器、金属传感器、声控开关等。这些传感器均可配置3线锁紧接插头,与主控板上的三端连接插座配套。推荐使用这些传感器与主控板的D 类接口(D0-D7)连接。若A 类接口(A0-A7)有空余,也可连接到A 类接口。若D 类和A 类接口没有空余,再使用扩展I/O 接口。下面简单介绍一下所选择的数字接口传感器。
1.红外避障传感器。红外避障传感器是一种能够识别障碍物的传感器。机器人在机身的前面、左面、右面、后面四个不同方位各安装了一个红外线传感器,可以实现四个方向的避障,也可根据需要安装更多的红外传感器。
红外避障模块是一种被动式红外线传感器。由石英晶体震荡器、红外发射管和一体化接收器组成。发射管发射调制的红外线信号,遇到障碍物后会反射回来,被接收器接收。当在其有效距离内遇到障碍时,接收器输出低电平。程序通过检测接收器的输出电平,便可知道是否有障碍物存在。避障传感器的避障距离在5-80CM 范围,可根据需要进行调节,调整过程中,有信号指示灯显示,信号指示灯亮说明有避障信号。如图1 所示。
2.光电传感器。光电传感器是可以识别颜色及色差的一种传感器,光电传感器可以识别不同的颜色,如深色呈现高电位(光电传感器的电位显示灭),白色呈现低电位(光电传感器的电位显示亮),利用它的这一特性,我们可以让机器人做多种动作。利用左侧和右侧的接受光强不一致,也可以让机器人走规定路线。
光电传感器由辅助光源(发光二极管)、光敏电阻和比较器组成。它是基于光敏电阻原理设计的,即:光敏电阻的阻值与其接收的光线强度成反比。光线越强,阻值越小。当光敏电阻接收的光强接近时,其阻值较小,与固定电阻Rx 分压后,使比较器的同向输入端电压低于反向输入端,比较器输出低电平。通过调整电位器滑动臂的位置,即可改变使比较器输出低电平时的绝对光强。滑动臂向下调,反向输入端电压降低,需要更强的光照使光敏电阻的阻值更小,才能使同向输入端电压低于反向输入端,输出低电平。反之亦然。光电传感器的缺点是受环境光影响较大,需要根据环境光线强弱的变化随时调整电位器滑臂位置,才能获得较好的效果。理想的经常分压点的电压低于电源电压的1/2,在窗口比较器设定的窗口之内,两个比较器均输出高电平。当其中一个光敏电阻接收光强较强时,分压点的电压将远离电源电压的1/2,超出比较器设定的窗口,相应的比较器输出低电平。如图2 所示。
为使用方便,选择的光电传感器分上下两个部分,上半部分为调节部分,主要用来进行调节对比点;下半部分为检测部分,因为检测部分常常接近被检测物体,所以单独分立出来,便于安装。
(二)模拟接口传感器
模拟接口传感器主要是进行一些模拟量的测量,需要得到变化的数值,此类型传感器需要具有线性变化的特性,检测的结果均为模拟电压信号,必须与A类接口连接。CPU可对A类端口输入的信号进行A/D转换处理。例如:光电接收(光感)传感器、模拟光电(灰度)传感器、红外测距传感器、模拟声控传感器等。下面简单介绍一下所选择的模拟接口传感器
1.模拟光电传感器。模拟光电传感器用来检测场地颜色的,可识别各种颜色,通过主板上的AD 口可以得到不同的数值,此数值在LCD 液晶显示板上可以看见,在浅颜色下数值小,深颜色下数值大。为使用方便,同样选择上下两部分组成。
2.模拟声控传感器。模拟声控传感器是机器人的耳朵,功能是利用声音来控制机器人的运动。例如机器人跳舞就可以利用声控模块来实现。此传感器由话筒、放大电路、整形电路组成。话筒接收到声音信号,经放大、整形后,得到的是高低电平的变化。无声时输出为高电平,有声时输出低电平。如图3 所示。
(三)I2C 接口传感器
I2C 接口的传感器均作为从机与作为主机的主板CPU 进行I2C 通讯。主板中只有一个I2C 插座,但此类传感器均设置双I2C 接口插座。需要使用多个I2C 传感器时,可通过I2C 传感器上的第二个I2C 接口接续连接。在此项目的使用上,我们选择了一个复合寻迹传感器。
下图为复合寻迹传感器接口图,如图4 所示。
复合寻迹传感器并列设置7 个寻迹传感器,适于实现复杂情况的寻线检测。每路寻迹检测设置有指示灯。此传感器上设置有两位DIP 开关,一位开关(1-4)用于选择I2C 通讯地址值,因此可以同时使用两个复合寻迹传感器。另一位开关用于选择检测白线还是检测黑线。使用复合寻迹传感器前,最好在使用现场进行校验。复合寻迹传感器DIP 开关设置如表1所示。
表1 复合寻迹传感器DIP 开关设置
开机后,全部指示灯全亮 1 秒后熄灭,进入正常工作状态。此时,可以将全部寻迹传感器置于引导线上,按S1 校正键,按键后单数1、3、5、7 通道指示灯闪烁,表示正在读取检测数据。各通道数据读完后,全部指示灯闪亮,提示将全部传感器放置到引导线外,放置好后,再次按动校正键,此时,双数2、4、6 通道指示灯闪烁,表示正在第二次读取检测数据。第二次数据读完,校验正确,灯熄灭。若校验不正确,单数1、3、5、7 通道指示灯闪烁,返回读取第一次数据的状态,重新进行校验。复合寻迹传感器通讯协议表如表2 所示。
表2 复合寻迹传感器通讯协议表