聚丰项目 > 自动循迹小车

自动循迹小车

小车采用一片 TI公司LDC1314或LDC1000电感数字转换器作为循迹传感器,在规定的平面跑道自动按顺时针方向循迹前进。跑道的标识为一根直径0.6~0.9mm的细铁丝

kidsure kidsure

分享
9 喜欢这个项目
团队介绍

kidsure kidsure

团队成员

kidsure 创客

分享
项目简介
小车采用一片 TI公司LDC1314或LDC1000电感数字转换器作为循迹传感器,在规定的平面跑道自动按顺时针方向循迹前进。跑道的标识为一根直径0.6~0.9mm的细铁丝
硬件说明

电机数量方案

方案一:采取四驱驱动方案,因其动力输出以及重力配比均衡,行驶稳定性好,但是由于循迹小车对于车体的灵活性以及方向可控度要求都比较高,所以四驱驱动并不是特别合适。

方案二:采取二驱加双万向轮驱动方案,这种驱动方案可以最大限度的保持整个系统的灵活性,在小车的循迹过程中保持小车最大灵活的方向实时调整以及小车的稳定行驶。但这种方案限制了小车的动力空间。同时通过调整电机型号,最大程度的改善了本方案限制电机动力空间的弊端。

综上所述,本系统采用方案二。

控制器模块方案

方案一:采用传统的 51 单片机,运用比较广泛,有良好的知识作为基础,上手很快。但是本系统的程序量较大,要求数据处理能力高,需要的I\O 口资源较多,51单片机难以胜任。

方案二:采用ST公司的STM32F103单片机,ARM高速内核,超强性能,片内资源非常充足,虽然STM32操作比传统51单片机复杂的多,但是STM32有丰富的库函数资源,操作方便,功能强大,能非常良好的完成任务。

综上所述,在保证系统稳定性,以及满足任务要求的情况下,本系统采取方案二。

 

 

电机驱动模块方案

方案一:利用 H 桥电路的电机驱动模块。此种电路包含若干个三极管及外围电阻等器件,通用性强, 功能强大。 通过对相关端口的写入, 能够实现两电机正反转和PWM调速。 但是,由于三极管本身工作电流的限制,此电路不能够驱动大功率电机,并且电路暴露在外部导致稳定性不高,所以放弃使用该方案。

方案二:基于 L298N 的电机驱动模块。 L298N 是一款专门用于驱动电动机的芯片,具有高集成度、高功率的特点,其输出电流为2A ,最高电流 4A ,最高工作电压 50V ,可以驱动感性负载,如大功率直流电机,步进电机,减速电机,伺服电机,电磁阀等,较少的外围电路(仅需要保护用的二极管和滤波电容)便可以很好地驱动大功率的电机。其输入端可以与单片机直接相联,从而很方便地受单片机控制。当驱动直流电机时,可以直接控制两路电机,并可以实现电机正转与反转,实现此功能只需改变输入端的逻辑电平。而且模块体积小,稳定性高。

综合上述两个方案,本系统选择方案二QQ图片.jpg.png



软件说明

1金属探测模块采集与计算

金属探测LDC1314是根据电磁感应原理制成的,将一金属置于变化的磁场当中时,根据电磁感应原理就会在金属内部产生涡流,涡流产生的磁场反过来又影响原磁场,这种变化可以转换为电压幅值的变化,供相关电路进行检测。通过改变金属和线圈之间的距离得到不同的值,对前端探测到的数据进行再处理和分析,当其中一个线圈探测到铁丝则让小车向相反方向前进,若发现附近有硬币存在该探测器发出声音警报。

LDC1314可以同时测量阻抗和频率。LDC1314是通过调节振荡器的幅度同时检测LC的谐振损耗来实现这个测量的。通过检测注入到LC谐振单元的能量,可以计算出RP。在LDC1000中RP值被转化为数字量,数值跟RP的值成反比。LDC1314可以检测到LC的谐振频率。谐振频率用于计算LC中的L值。频率值也有LDC1314转换为数字量。谐振LC中的C是已知的(电板上焊接),所以根据谐振频率就能计算出L值。根据衰减振荡的曲线可以计算出RP。

采用高精度的LCD1314电磁传感器,不断采集由传感器的通道1和通道0采集的谐振频率的数据。LCD1314和所有设备寄存器之间的通信采用400kHzI2C接口,实现高速连信,精确测量采集的谐振的频率,在通过内部的12AD的转换将其测量的模拟量转化为可输出的数字量读取测量数据,然后通过输出到STM32单片机自带的LCD,实时的检测数据。但由于LCD1314的传感器受到电流、温度的影响,因此需要一定的补偿X。小车采用了两只5V 2.5A直流电机,作为运动系统的驱动,传感器实时检测谐振,并且转换成数据量,单片机处理传来的数据量,调节输出PWM占空比,控制两只电机的运动的状态。从而实现小车的寻迹。

    本系统对比控制法,和软件滤波。当两个通道不接触铁丝是,测得数据居为date0 

date1.由于传感器的收到干扰。补偿为实时检测的数据为date0(t),date1(t)。采用软件滤波,对date0date1采样十次测平均值。

date0(t)>=date0+MA[N] 则控制左边的电机速度减慢,右边加快

date1(t)>=date1+MA[N] :   则控制右边的电机速度减慢,左边加快

date0(t)<=date0 +MA[N] && date1<=date1+MA[N] :  则左右前进

其中,MA[N] :新的平均值;MA[n-1]:上一个移动的平均值;N:要求的平均值的样本;X[n]:当前LDC样本。

2循迹小车运动控制分析

采用了占空比可调的周期矩形信号控制。脉冲频率对电动机转速有影响,脉冲频率高连续性好,但带带负载能力差脉冲频率低则反之。经试验发现,脉冲频率在40HZ以下,电动机转动平稳,但加负载后,速度下降明显,低速时甚至会停转;脉冲频率在10HZ以下,电动机转动有明显跳动变化。

  理论计算后得,脉冲频率在15HZ到30HZ时效果最佳。而具体采用的频率可根据个别电动机性能在此范围内调节。通过第一端口输入信号,第二端口输入低电平与第一端口输入低电平,第二端口输入信号分别实现电动机正转与反转功能。通过对信号占空比的调整来对车速进行调节。速度微调方面,可以通过对占空比跨度渐增或渐减分别对速度的逐加和逐减。

 因为本系统采用了四个金属探头来探测跑道铁丝标识,所以采用了5种行驶模式:前进模式,左转模式,右转模式,行驶左转模式,行驶右转模式来解决应对跑道中不同类型的道路,前进模式,行驶左转模式,行驶右转模式,以前面两个金属探头为主,后面两个金属探头为辅助,而左转模式和右转模式以后面两个探头为主,前面两个探头作为辅助;这样做的好处在于能够更好的适应跑道,加强小车的行驶稳定性,当在直道行驶过程中,一旦当小车因为速度过快惯性跑出,前面的探头检测不到跑道时候,而后面探头却能检测到跑道,此时调用行驶左转或者右转模式来迅速校正小车头向,最大限度避免惯性的影响,而正常情况下采用前进模式,而左转模式与右转模式刚好与之前相反,当前面探头一侧检测到跑道另一侧却没有,而后面探头不能检测到铁丝的时候(铁丝在两个探头中间),此时可以确定为弯道,此时调用左转模式与右转模式;这样用不同的模式在加上PID算法来应对不同的情况,能够最大限度的提升小车的行驶稳定性的情况下,还能够加强小车的行驶速度。

 

3控制算法分析

   在模拟控制系统中,控制器最常用的控制规律是PID控制。PID控制器又称PID调节器,是工业控制中系统中常用的有源校正装置。可以用软件实现PID控制算法,而且可以利用计算机的逻辑功能,使PID控制更加灵活。数字PID控制生产过程是一种最普遍采用的控制方法

系统的传感器得到的测量结果 控制器作出决定 通过一个输出设备来作出反应 控制器从传感器得到测量结果,然后用需求结果减去测量结果来得到误差。然后用误差来计算出一个对系统的纠正值来作为输入结果,这样系统就可以从它的输出结果中消除误差。

最为理想的控制当属比例-积分-微分控制规律。它集三者之长:既有比例作用的及时迅速,又有积分作用的消除余差能力,还有微分作用的超前控制功能。

当偏差阶跃出现时,微分立即大幅度动作,抑制偏差的这种跃变;比例也同时起消除偏差的作用,使偏差幅度减小,由于比例作用是持久和起主要作用的控制规律,因此可使系统比较稳定;而积分作用慢慢把余差克服掉。只要三个作用的控制参数选择得当,便可充分发挥三种控制规律的优点,得到较为理想的控制效果。

本方案采用单回路PID控制方案,选取电机转动值作为反馈信号,此方案间接对电机进行控制



演示效果

QQ图片20170303180817.png

评论区(2 )
  • 明明就是你: 111

    回复

  • 明明就是你: 有没有完整的文档?

    回复