学术论文投稿/征稿

欢迎您!请

登录 注册

手机学刊吧

学刊吧移动端二维码

微信关注

学刊吧微信公众号二维码
关于我们
首页 > 学术论文库 > 理工论文 基于 S9KEA128AMLK的智能电磁循迹小车设计与实现论文

基于 S9KEA128AMLK的智能电磁循迹小车设计与实现论文

43

2023-02-15 09:35:14    来源:    作者:lvyifei

摘要:摘要 :基于 S9KEA128AMLK 微控制器 (MCU), 设计并制作了一种靠电磁信号自动循迹的三轮智能小车, 主要由无线充电模块、 电磁信号采集模块 、起跑线与停车线检测模块 、红外避障模块 、超级电容模组 、 电机驱动模块 、 电源管理及整车控制模块及主控 最小系统模块组成 。该智能车首先采集由铺设在道路中间并通交流电的漆包线发出的电磁信号; 归一化处理后, 经滤波 、放大和 检波后输入到 MCU; 再经过计算, 确定小车在道路的相对位置以及控制方向和速度的输出 PWM 信号;

  摘要:基于S9KEA128AMLK微控制器(MCU),设计并制作了一种靠电磁信号自动循迹的三轮智能小车,主要由无线充电模块、电磁信号采集模块、起跑线与停车线检测模块、红外避障模块、超级电容模组、电机驱动模块、电源管理及整车控制模块及主控最小系统模块组成。该智能车首先采集由铺设在道路中间并通交流电的漆包线发出的电磁信号;归一化处理后,经滤波、放大和检波后输入到MCU;再经过计算,确定小车在道路的相对位置以及控制方向和速度的输出PWM信号;最后输入到驱动电机,使小车实现自动识别路径、自动转弯控制、根据情况加减速、自动识别停车线等功能。通过总体设计、硬件设计、控制方案设计、算法和软件设计等过程,最后完成了智能电磁循迹小车的制作,并做了实地测试,行驶效果良好。

  关键词:电磁循迹;电路设计;控制算法;软件设计;PID增量控制

  0引言

  智能汽车是未来汽车的发展方向,在减少交通事故、发展自动化技术、提高舒适性等许多方面发挥很重要的作用[1]。国外的自动驾驶技术起步时间早于国内,技术十分成熟。最具有代表性的就是谷歌公司的Waymo,已经经过了1 000万mile(1 mile=1.6 km)的自动驾驶测试。Waymo的无人车模拟现代驾驶员的思维方式处理问题,实现更智能的驾驶处理。与目前社会大部分自动驾驶技术不同,Waymo不是仅仅依靠GPS,而是依靠自己高精度的传感器建立的详细三维图,识别出路况、车道标志、交通信号灯灯所有道路特征信息。通过软件算法进行对动态对象运动的预测,来决策接下来正确的轨迹、速度、车道、转向操作等。几乎实现了完全不需要人类介入整个动态驾驶任务中,解放双手。

  目前,自动化控制中的智能控制运输在实际应用中也有十分广泛的应用前景,在智能控制运输飞速发展的路上,电磁智能小车的出现,极大促进了智能控制运输的发展。路径信息变成一根简单的通电导线。降低了外部环境因素的干扰,提高控制的精准性和稳定性。本文研制的电磁导航循迹技术,相对于目前现有技术具有稳定性强、成本低及原理简单等特点,并且不受温度、湿度和光线影响,因而具有广阔的发展前景。本文的电磁循迹是指在道路中线铺设有漆包线并通有20 kHz、100 mA交变电流,因而在导线周围产生磁场,智能小车上的电感传感器在磁场中产生感应电动势,靠检测电动势值来确定小车在道路上相对位置,从而实现智能小车的自动循迹行驶[2]。

  1系统总体设计

  主控最小系统模块核心芯片(MCU)是S9KEA128 AMLK,辅以晶振电路、复位电路和控制电路。电磁信号采集模块使用接口PTF4~PTF7;电机驱动控制使用接口PTH0~PTH3;编码器使用接口PTE0和PTC5;人机互交键盘使用接口PTI2~PTI4和PTB5。由于是三轮车,行驶方向由两个驱动电机的转速差控制,没有单独舵机。

  首先,电磁信号采集模块采集电磁信号,并经滤波、放大和检波后,输入核心芯片(MCU)。其次,MCU先把模拟信号转化为数字信号,并识别智能小车所处的道路状况,并按照方向控制算法计算出控制方向的PWM;同时,编码器对电机实际转速进行测速,把设定速度与实际速度的偏差,加入速度环,计算出速度环的PWM,弥补实际速度的偏差;将上述的速度环及方向环进行加权融合,得出最后控制两个电机的PWM信号。最后,把两个PWM信号输入电源管理及整车控制模块,使两个驱动电机以相应的转速转动。

  同时,为了之后更为方便、直观地调试,设置了3个按键、两个拨码开关,作为直接调试参数及模式切换。另外,还设置了4个LED指示灯、一个OLED屏幕查看参数模式切换等。具体的整车控制原理如图1所示,智能车使用各传感器的功能如表1所示。

搜狗截图23年02月15日0928_3.png

  2硬件电路设计

  硬件主要包括五大模块:主控最小系统模块;电源管理及整车控制模块;电磁信号采集模块;电机驱动模块;起止线检测和人机互交模块。下面分别说明。

  2.1主控最小系统模块

  最小系统是主控单片机(MCU)运行所需的最小系

  统,为单片机提供基本的外围使用电路。其核心芯片(MCU)是恩智浦公司生产的S9KEA128AMLK。Kinetis KEA128系列芯片内核基于32位ARM Cortex-M0+设计,工作频率48 MHz,使用4~24 MHz的外部晶振;多达128 kB闪存、256B EEPROM和16 kB RAM;一个12位模数转换器(ADC),具有多达16个通道,两个模拟比较器(ACMP),带内部6位数模转换器(DAC);一个全功能型6通道FlexTimer(FTM),两个双通道FTM,具有基本TPM功能,双通道周期性中断定时器(PIT);两个8位串行外设接口(SPI),两个I2C模块,3个通用异步收发器(UART)模块,一个MSCAN[3]。这些特点能很好地满足智能车的要求,其具体设计如图2所示。

搜狗截图23年02月15日0928_4.png

  2.2电源管理及整车控制模块

  该模块的主要功能:给其他各模块提供所需的稳定工作电压;整车的输入信号汇总于此模块传入单片机;此模块上还有人机互换的功能,方便人们调试与观察智能车的技术状况。

  该智能车上的需要电压有5 V、12 V两种。12 V电压为电机驱动模块使用,使用MC34063芯片将5 V电压升压至12 V,其电路设计如图3所示。5 V电压是智能车各模块需要最多的工作电压,智能车上使用5 V为工作电压的有单片机、电机控制、OLED屏、电磁信号采集模块、起止线检测模块、编码器等。本着可靠、高效、简洁的目标,综合考虑使用ASM1117稳压芯片。

搜狗截图23年02月15日0928_5.png

  经过多番实验,将电机控制所需的5 V稳压电路和驱动所需要12 V升压电路放置于电机驱动模块抗干扰性更强,所以将这两部分移至电机驱动模块。并且OLED屏、编码器、起止线检测模块共用一块5 V的稳压芯片。

  2.3电磁信号采集模块

  该模块的主要功能是检测电磁循迹信号。本设计采用的传感器为10 mH工字电感,规格为8×10。传感器直接获得的信号强度较微弱并存在一些干扰电波,所以首先要进行滤波,放大和检波3个步骤的处理。谐振电容的容值选择6.8 nF,采用OPA2350集成运放芯片对该信号进行放大,选用常见的的肖特基二极管SS14进行检波。电磁信号采集模块的电路设计如图4所示。

搜狗截图23年02月15日0929_6.png

  2.4电机驱动模块

  该模块的主要功能是接收来自单片机的控制信号,对电机转速进行控制,满足智能车所需的方向和速度要求。该智能车采用分立N沟道MOS管配合专用栅极驱动芯片的方案。分立N沟道MOS管具有极低的导通电阻,可以大大减小电枢回路总电阻;专用的栅极驱动电路可以提高MOSFET的开关速度,使PWM控制方式的调制频率可以得到提高,从而减少电枢电流脉动,并且专用栅极驱动芯片通常具有防同臂导通、硬件死区、欠电压保护等功能,可以提高电路工作的可靠性。电机驱动电路采用单极性的控制模式,由两片IR2104S栅极驱动芯片及4个R7843 MOS管组成。同时,为了减少干扰加入了一块隔离芯片74HVC45,信号只能单向传输,即PWM信号可以输入到电机驱动电路,反之则被隔离芯片隔断传输线路[4]。驱动模块整体设计如图5所示。

搜狗截图23年02月15日0929_7.png

  2.5其他模块

  包括起止线检测模块和人机交互模块。起止线检测模块通过霍尔元件检测运行路径上的强磁,实现智能车的自动起跑和停车。

  人机交互模块包括OLED显示屏、按键和拨码开关。单片机通过SPI通信方式可以在OLED屏上显示当前电量、速度、电磁信号偏差等信息,这让使用者清楚了解智能车当前的状态;按键与拨码开关,两者触发信号的原理基本相:同接通时,与之相连的单片机接口接收一个低电平单片机即收到信号。按键用于微调参数,利于调整智能车形态,拨码开关用于选择工作模式,进行控制策略选择,适应不同环境运行。

  3控制项目的方案选择

  3.1传感器布置方案

  传感器布置在与智能车行驶方向垂直并距车前方25 cm左右的平面上,左右两边对称布置4个电感传感器。与地垂直的两个电感距离为20 cm,高度为17 cm,主要用来识别圆环路径;与地面平行的两个电感距离为23 cm,高度为17 cm,主要用来检测其他路径。

  3.2偏差计算方案

  经过实验得出,左右两端电感的偏差值随着与电磁引导线(在道路中间)距离的增加而增加,随着与电磁引导线距离的减小而减小。本文采取的偏差计算是差比和,差比和是将左右对称位置的电感值之差比上两电感值之和。具体差比和偏差计算公式如下://偏差量

  dir_error=2000*(AD_va1_2-AD_va1_ 1)/(AD_va1_2+AD_va1_ 1);

  3.3核心算法

  本智能小车采取的核心算法是目前最为典型的传统反馈控制,以结构简单、稳定性高和鲁棒性好等优点的增量式数字PID[5]。具体的表达式如下:

  u(t)=Kp[e(t)+∫e(t)dt+TD](1)

  为了便于计算机实现PID,表达式改为离散式。程序源码如下:

  turnpwm=(int16)(DuoP*dir_error+DuoD*(dir_error-dir_error_pre));

  3.4输出控制方案

  本文使用的输出方案为一万向前轮和分别由两个电机控制的两个后轮,方向由两后轮的转速差决定。电机控制需要满足灵活操控、电机死区小、扭矩高、效能高等要求。所以电机选择了RS380马达。空载电流小于630 mA,最大功率大于20 W,空载转速(15 000±3 000)r/min。

  3.5速度闭环控制测量方案

  在控制上采用了速度闭环控制,采用编码器测量电机实际转速,实现更精确的控制。编码器采用逐飞科技的Mini1024Z编码器。该编码器的工作电压为3.3~5 V;工作电流为13.6 mA;输出脉冲数为1 024线;自带方向输出功能,Dir为转动方向引脚、LSB为步进脉冲引脚、Z相为零位引脚。

  4软件设计

  4.1程序基本结构框架

  首先程序上电运行,便开始单片机的初始化。初始化中分为两部分,一部分是对单片机各个需要应用的模块进行初始化。另一部分则为应用程序的初始化,是对控制算法程序中所设置的变量值进行定义初始化。

  每当10 ms时触发一次定时器中断,进入定时器中断服务函数,dcnt变量加1,变量dcnt等于1,进入方向环。采集4路当前道路交变磁场信号,进行判断当前智能小车所处位置,计算得出当前方向环PWM脉冲宽度调制的值,并将PWM输出给电机进行控制,清除定时器中断标志位以退出中断服务函数。

  将速度环与方向环1∶1加权相加得出最终控制电机的PWM,并且方向环的PWM值每40 ms变化两次输出,速度环控制每40 ms变化一次输出。由此来降低速度环对方向环的干扰,提高三轮智能小车的转向灵活性和直道速度。

  当下一个10 ms触发定时器中断时,进入定时器中断服务函数,dcnt变量加1,dcnt等于2时,速度环计数变量speedcnt加1,变量dcnt清零。当速度环计数变量speedcnt为2时,进入速度环控制。访问FTM计数器模块,返回编码器脉冲计数值,将编码器脉冲的计数值与目标速度进行比较并计算出速度环的PWM值。

  本程序是基于逐飞的库函数[6]进行开发,控制流程如图6所示。

搜狗截图23年02月15日0929_8.png

  4.2方向控制环设计

  为了避免在多弯道和急弯的情境下出现转向不足,这时不采取PID转向,而用最大转向PWM直接输出,以弥补转向不足,即所谓的丢线处理[7-8]。圆环路径控制采取将电感归一化最大值限制解除、仍限制最小值的策略,同时将圆环元素分割为5大部分并设置成dirflag(环岛标志位):1为检测到圆环并开始圆环直道辅助程序,进行检测识别圆环为左环还是右环;2为检测圆环中心;3为检测圆环入口,进圆环控制;4为检测是否进环成功,停止进环控制;5为识别出环口,避免再次入环;0为回归正常道路清零。

  4.3速度控制环设计

  速度控制直接决定道路行驶效率。速度环首先利用编码器采集两个驱动轮实际转速并检测Dir转动方向。将两个驱动轮的速度取平均得到车模当前实际速度,将当前速度与上一次速度带入PD公式中计算当前速度控制PWM[9-10]。将本次速度记录为上次速度。由于电机死区特性的存在,所以在加上测量的电机死区值弥补速度控制环输出。

  检测到无方向环输出时,判定小车当前行驶为直道,速度环按设定的速度全速输出,以提高速度。当方向环输出较大时,判定当前小车行驶至弯道,由于直道速度电机功率几乎等于额定功率,所以在弯道时需要降低速度环输出,提高转向灵活性。弯道速度环设定为额定功率的70%。

  5测试与结果分析

  实际制作的智能小车如图7所示。测试用道路采用PVC耐磨塑胶地板材料制作,道路中心铺设了一条直径为0.1~1.0 mm的漆包线,接入道路电源(20 kHz、100 mA的交变电流)作为电磁引导线产生变化磁场。道路的宽度为45 cm,相邻的两条道路的边缘相距不小于15 cm,含有弯道、直道、十字交叉路口、圆环、起止线等道路元素,道路曲线的曲率半径不小于50cm,道路总长度为57m。

搜狗截图23年02月15日0929_9.png

  在各种阀值和参数都调整到最佳后,测试了3次,走完全程平均用时13 s,且运行平稳,控制良好,没有行驶出边界。

  实际测试结果表明:电磁循迹技术成熟可用;本次设计的控制方案、各电路模块设计选择合理、经济实用[11-12];基于S9KEA128AMLK单片机开发的C语言控制软件高效可行;小车整体性能优良,能顺利实现自动循迹。

  6结束语

  本次设计的智能小车整体系统由3大系统组成,包括机械系统、电路硬件系统和软件程序系统。其中硬件部分包括无线充电接收模块、电磁信号采集模块、起止线检测模块、红外避障模块、超级电容模组、单电机驱动模块、电源管理及整车控制模块和主控最小系统模块。软件部分包括归一化所采集的路面信息,使用PID等控制方法处理复杂的道路元素以及信号,将其转化为线性规律的数据,并计算出当前控制量。最后的实测结果表明:电磁循迹技术成熟可用,本文的控制方案、各电路模块设计选择合理、经济实用,小车整体性能优良,能顺利实现自动循迹。

  参考文献:

  [1]张昊飏,马旭,卓晴.基于电磁场检测的巡线智能车设计[J].电子产品世界,2009.11(11):48-51.

  [2]李仕伯,马旭,卓晴.基于磁场检测的巡线小车传感器布置研究[J].电子产品世界,2009,12(12):41-44.

  [3]KEA128编程参考手册[Z].https://max.book118.com/html/2018/0224/154491818.shtm.

  [4]袁任光,张伟武.电动机控制电路选用与258实例[M].北京:机械工业出版社,2005.

  [5]孙亮.自动控制原理[M].北京:北京工业大学出版社.1999.

  [6]逐飞科技KEA128库例程V2.2.7.[Z].http://www.51hei.com/bbs/dpj-139855-1.html.

  [7]赵世强,许杰,荆炳礼,等.电子电路EDA技术[M].西安:西安电子科技大学出版社,2000.

  [8]戴莹.基于单目视觉的物体随动跟踪[D].北京:北京工业大学,2017.

  [9]王静,金建,陈凯,等.基于归一化算法智能车的设计与实现[J].电脑知识与技术,2015,11(8):72-77.

  [10]王金晨,纪成,何印洲.基于PWM的可调速电动汽车模型控制系统的设计[J].智能机器人,2011(6):42-45.

  [11]Freescale Semiconductor,Inc.MC33886 datasheet[Z].http://www.zfa.cn.

  [12]赵婷.汽车无刷直流电动机的控制策略研究[J].机电工程技术,2021,50(1):3