两轮自平衡智能车硬件系统计
- 格式:pdf
- 大小:282.55 KB
- 文档页数:2
自平衡两轮电动车运动控制系统的硬件设计及实现作者:王娜孙思远来源:《科技视界》2016年第14期【摘要】两轮自平衡小车是一种不稳定系统,只有通过调节两轮的运动快慢和方向才能使其达到动态的平衡。
本文基于stm32系列单片机,从硬件原理开始分析说明,阐述了控制系统的硬件设计,对陀螺仪和加速度传感器测量实际倾角的过程和方法做了仔细分析说明,并设计了双闭环 PID 控制器,同时对系统中涉及的滤波算法和PID控制算法做了理论分析,给出了整个系统的软件控制流程。
通过实验表明两轮自平衡小车基本能够实现直立控制。
【关键词】平衡控制;PID控制器;卡尔曼滤波;STM32;传感器0 引言移动机器人技术是目前科学技术发展最活跃的领域之一,而两轮自平衡小车又是移动机器人研究中的一个重要领域[1],两轮自平衡小车系统具有本质不稳定、多变量、非线性、强耦合等特点,并且涉及到复杂的运动学、动力学系统和很多控制算法[2]。
本文在对该控制理论分析的基础上通过PID控制和卡尔曼滤波,最终实现对平衡车的系统设计。
1 自平衡两轮电动车的运动控制原理由于该模型是单轴双轮,所以在车体与竖直方向产生倾角的时候,小车就会在车体重力沿水平方向的分力作用下运动而不能保持静止,但是我们可以通过电机控制两个轮子的转速和转向,从而使其抵消其倾斜的趋势,这样便可以使两轮小车保持自平衡。
[3]两轮自平衡小车的总体控制原理如图1所示。
整个系统的核心是STM32F103C8T6单片机,该系统主要由运动处理传感器、电机驱动、电源管理电路、串口通信、直流无刷电机和磁电编码器组成。
MPU6050内部集成陀螺仪和加速度计,分别用于测量角速度和角加速度,并将采集到的数据存放到FIFO寄存器,通过I2C协议传输给单片机后进行卡尔曼滤波,就可以得到正确的倾角。
而电机的转速则是由磁电编码器返回到单片机并计算出一定时间内的计数来判断车速的大小和方向。
电机驱动则选用TB6612FNG来控制两个直流电机的正转、反转、制动和调速功能。
两轮自平衡智能车硬件系统计摘要:针对智能车为两轮直立行走的要求,提出了系统的设计方案。
微处理器采用MC9S12XS128,用加速度传感器检测车的倾角,陀螺仪检测车的角加速度;通过控制两个电机的加减速实现车的自平衡控制。
实验表明:该方法制作的两轮自平衡车构造简单,控制方便,能够较好的实现自平衡控制。
关键词:自平衡;智能车;传感器;驱动两轮自平衡小车本质上是一类两轮智能机器人,是机器人研究领域中一个崭新的方向。
与传统的机器人相比,它具有更广阔的发展前景。
开展该领域的研究,对拓展机器人的应用范围、提高国内两轮机器人的研究水平和机器人控制水平有重要的理论和现实意义。
本文以MC9S12XS128为微处理器,采用MMA7260加速度传感器和NEC-03陀螺仪共同检测车模的角度信息,通过控制两个电机的加减速度来实现了智能车的自平衡控制,实验表明:该方法制作的两轮自平衡车构造简单,控制方便,适应性强、响应迅速快,能够较好的实现自平衡控制并有很强的抗干扰能力。
1.设计原理两轮车是一个高度不稳定系统,在重力作用下车体姿态本征不稳定,致使在没有外加调控下必然倾倒的现象。
因此,要保持车的平衡只有通过控制轮子转动,抵消车体倾斜的趋势以保持平衡。
为了保持智能车的直立自平衡状态,需要满足以下两个条件:一是需要准确测量车体的倾角和角加速度的大小,以得到车的状态和趋势;二是需要控制车轮的速度和加速度,使智能车保持直立的状态。
因此,从控制角度来看,将智能车作为一个控制对象,两个车轮的转动速度为控制输量。
整个控制系统又可分为三个子系统:(1)智能车的平衡控制:车的倾角为输入量,通过控制两个电机的加速度保持小车衡。
(2)智能车的速度控制:在保持平衡的基础上,改变车的倾角来调节车的速度,实际上还是通过对电机的控制来实现速度控制。
(3)智能车方向控制:控制两个电机的转速差来实现车的转向。
2.自平衡智能车系统结构自平衡智能车系统主要包括系统主要由以下几个模块组成:MC9S12XS128单片机最小系统硬件设计、电源模块硬件设计、倾角传感器信号调理电路设计、电机驱动电路设计、速度检测电路。
TECHNOLLGY APPLICATION基于单片机的智能两轮自平衡车的设计■■沈阳工学院:赵一澎■■唱红■■夏靖坤■何金■刘莹1.■引言如今移动机器人面临的环境和任务越来越繁杂,在这种情况下,就需要移动机器人必须能够适应一些复杂的环境和危险的任务。
因此开展对两轮自平衡小车的研究,这项研究在该领域的科研水平具有很重要的现实意义。
1.1 两轮自平衡小车的研究意义在面临一些复杂环境和艰巨的任务时,移动机器人通常会碰到一些狭隘的危险工作,在面对这样如此艰难的环境,研究者们针对移动机器人如何灵活快捷的执行任务的问题进行了深度的研究。
正是在这样一个背景下两轮自平衡小车的概念被提出来。
两轮自平衡小车的优点在于可以适应复杂的环境和控制任务,可以保持车身的平衡,在安防或者军事上会有更广阔的应用前景。
1.2 两轮自平衡小车的技术1.2.1 数学建模建立系统的模型,建立的重点在于动力学方面,两轮自平衡小车的结构主要由车身和双轮子两部分构成。
对两轮自平衡小车的建模方法,采用经典的力学方法,对小车进行受力分析,可分为车轮模型和车身模型两部分,最后通过对两者的稳定型和能观性的分析判断出系统的最优状态方程。
1.2.2 姿态检测两轮自平衡小车通过检测小车的姿态来对小车进行控制。
加速度计和陀螺仪等惯性传感器可以实时、准确的检测两轮自平衡车的倾角。
因此,采用陀螺仪和加速度两个传感器相结合,通过融合的算法对于两轮自平衡小车来说是实现有效控制的关键所在。
1.2.3 控制算法控制技术是运动控制的核心,两轮自平衡车属于本质不稳定系统,利用传统的PID技术进行可行性分析,传感器将车体的运动速度和倾角等信息传递给系统控制器,是车轮转速与角度值保持一致,系统控制器将最终命令传递给电机驱动器来完成系统的闭环控制。
2.■系统概述两轮自平衡小车的组成很简单,保持小车平衡和运动都是通过控制两个车轮完成的。
在未对系统进行控制时,小车处于静止的状态,此时的车身的状态可能会出现前倾或后倾。
基于STM32的两轮自平衡小车控制系统设计本文主要对两轮自平衡小车的姿态检测算法、PID控制算法两方面进行展开研究。
用加速度传感器和陀螺仪传感器融合而成的姿态传感系统与互补滤波器组合得到自平衡小车准确而稳定的姿态信息,然后PID调节器则利用这些姿态信息输出电机控制信号,控制电机的转动,从而使小车得以平衡。
标签:STM32;自平衡小车;控制系统;控制算法1 研究意义应用意义:两轮平衡车是一种新型的交通工具,它与电动自行车和摩托车车轮前后排列方式不同,而是采用两轮并排固定的方式,就像一种两轮平行的机器人一样。
两轮自平衡控制系统是一种两轮左右平行布置的,像传统的倒立摆一样,本身是一个自然不稳定体,必须施加强有力的控制手段才能使之稳定。
两轮平衡车具有运动灵活、智能控制、操作简单、节省能源、绿色环保、转弯半径为0等优点。
因此它适用于在狭小空间内运行,能够在大型购物中心、国际性会议或展览场所、体育场馆、办公大楼、大型公园及广场、生态旅游风景区、城市中的生活住宅小区等各种室内或室外场合中作为人们的中、短距离代步工具。
具有很大的市场和应用前景。
理论研究意义:车体状态运算主要是将各传感器测量的数据加以融合得出车体倾斜角度值、倾斜角速度值以及行车速度等。
平衡控制运算根据车体状态数据,计算保持平衡需要的行车速度和加速度,或者转弯所需要的左右电机速度变化值,向电机控制驱动模块发送控制指令。
运算模块相当于两轮自平衡电动车的大脑,它主要负责的工作是:控制电机的起停,向控制模块发出加速、减速、电机正反转和制动等速度控制信号,接收电机Hall信号进行车速度计算,并通过RS 一232串口向PC发送车速数据以供存储和分析。
另外,还负责接收车体平衡姿态数据,进行自平衡运算。
现有的自平衡车结构种类繁多,但车体都归根于由三层的基本结构组成,从上到下依次是电池层、主控层、电机驱动层。
电池层用于放置给整个系统供电的6V锂电池,主控层由主控芯片系统和传感器模块组成,电机驱动层接受单片机信号,并控制电机。
文章编号:1007-757X(2021)01-0010-03基于STM32F103C8T6的两轮自平衡车系统设计聂茹(华南理工大学广州学院电子信息工程学院,广东广州510800)摘要:在STM32F103C8T6微控制器芯片基础上,提出了两轮自平衡车系统的一种设计方案。
系统方案包括STM32F103C8T6微控制器电路设计、车体姿态传感器MPU6050检测电路设计、电机驱动电路设计、以PID控制器为核心的软件设计。
经过测试,两轮自平衡车系统样机能够保持车体自我平衡并简单的直立行走,验证了硬件设计和软件设计的有效性和可靠性。
关键词:MPU6050;STM32;PID控制器;自平衡车中图分类号:TP212.9文献标志码:ADesign of Two-wheel Self-balancing Vehicle System Based on STM32F103C8T6NIE Ru(School of Electronic Information Engineering,Guangzhou College of SouthChina University of Technology,Guangzhou510800,China)Abstract:On the basis of STM32F103C8T6microcontroller chip,this paper presents a design scheme of two-wheel self-balancing vehicle system.The system scheme includesthe circuit design of STM32F103C8T6microcontroller,the detection circuit design of vehicle body attitude sensor MPU6050,the circuit design of motor drive,software design with PID controller as the core.After test,two-wheel self-balancing vehicle system prototype can maintain the self-balance of the car body and simply walk upright,which verifies the effectiveness and reliability of hardware design and software design.Key words:MPU6050;STM32;PID controller;self-balanced vehicle0引言当今社会,生活向着智能化、便捷化发展,两轮平衡车顺应时代潮流,成为适合多种场合使用的代步工具。
双轮自平衡车的双闭环式PID控制系统设计与实现摘要:双轮自平衡车是一种集环境感知、规划决策、自主驾驶等功能为一体的综合性系统。
提出了一种双闭环式PID控制系统实现双轮自平衡车的控制。
针对传统的PID控制算法的缺陷,该系统引入了双闭环式PID改进平衡车的控制算法。
同时对平衡车的硬件系统与软件控制系统进行了设计、实现与分析。
实验表明:所提出的控制系统是有效可行的,提高了平衡车的稳定性和动态响应性。
关键词:双轮自平衡车;PID控制算法;双闭环式PID控制系统传统的PID控制算法在平衡车控制系统中的应用存在很大的缺陷。
在传统的PID控制器中,积分控制环节的引入是为了消除被控量的静态误差,以提高控制精度;在平衡车控制系统中,由于平衡车在启动过程或车体在较差的路况中运行,车体倾角会发生大幅度地变化,平衡车系统在较短的时间内会产生较大的输出偏差。
此时,PlD控制器中的积分控制环节会导致系统产生较大的超调,甚至导致平衡车产生较大的震荡。
除此之外,传统的PID控制器忽略了平衡车中两个电机的性能差异,对两个电机采用同一个PID控制器,容易引起车体产生震荡。
本文提出了一种双闭环式PID控制系统,其避免了PID控制器中的积分环节在平衡车的倾角发生大幅度地变化的情况下引起的超调和震荡,解决平衡车两个电机性能差异对平衡车控制系统的干扰,提高了平衡车控制系统的稳定性。
1平衡车的优势及机械结构1.1平衡车的优势l、转向半径小,小巧灵活,适合在原地频繁转向和狭小空间的场合下使用;2、结构简单,由于可以通过直接控制电机驱动来完成启动、加速、匀速、减速等动作,省略刹车和离合等装置,使得整车结构设计更为简单。
3、绿色环保,可以作为短途代步工具,用于上下班或者出去购物游玩,可以穿梭与人流密集的闹市区,减少城市道路交通行驶车辆,既可以解决交通堵塞问题,又可以减少碳的排放,做到环保出行。
1.2机械结构本文研制的平衡车高57.8cm,宽41.5cm,两轮直径为8cm。
双轮智能自平衡车的设计作者:王兆宇赵明明张宏川黄怡宁来源:《科学与财富》2017年第12期摘要:本文设计了一款人可以搭乘的自平衡车,本文利用飞思卡尔公司的一款基于ARM 内核的芯片MK60FN1M0VLQ15,平衡车的传感器采用的是加速度计MMA7361与陀螺仪ENC03MB组合而成的传感器模块,其能直接输出稳定的合成角度信号,并且利用光码盘做速度检测。
同时增加了一款黑白摄像头,用于环境的拍摄。
本文完成了硬件的搭建,完成了软件设计。
对传感器信号做了平滑处理,同时使用卡尔曼滤波处理后使其所得信号更加接近真实,保证了平衡车的站立。
关键词:自平衡车;加速度计;陀螺仪自平衡车属于倒立摆的一种形式,它是结合动力学和自动控制理论而成的项目,对它的研究,也推动了相关学科的发展。
在本质不稳定系统中,如最优控制、比例积分微分控制、模糊控制、神经网络控制都将得到实践验证。
总的来说,由于自平衡车车的平衡性是一个理论与实践相结合的产物,具有一定的理论意义和应用价值,引起了极大的研究兴趣,并让全世界的科学家聚焦于此。
1 两轮自平衡车的电路硬件设计1.1两轮自平衡车硬件电路总体设计硬件电路主要由电源稳压模块、控制芯片、陀螺仪和加速度传感器模块、摄像头模块,液晶屏模块,电机驱动模块,串口通信模块,测速模块等组成,如图1.1所示。
采用飞思卡尔的32位微控制器MK60FN1M0VLQ15作主控芯片,工作标准频率150MHZ。
微控制器通过ENC03和MMA7361采集的数据进行相应的算法运算,从而得到对电机驱动的较为精确的控制。
电机驱动采用用MOSFET管搭成的内阻很小的H桥电路。
1.2主要硬件选择陀螺仪与加速度计部分:加速度传感器选用飞思卡尔公司的MMA7361芯片,加速度传感器可以测量由地球引力作用或者物体运动所产生的加速度。
MMA7361选用了半导体表面微机械加工和集成电路技术,传感器体积小,重量轻等优点尤为突出。
测速模块:测速模块采用带有相位差的光点码盘,其可以利用FTM模块测出正反转。
两轮自平衡车控制系统的设计与实现一、自平衡车系统概述1、定义自平衡车是一种以双轮直立结构/双轮平移结构的小型无线遥控电动车,最初由电动车作为主要的运动机构,但也有可能有其他特殊机构,进行实时控制,使其能够在平衡和模式控制下,保持水平稳定态,实现自动平衡、自主康复和自由行走。
2、系统功能自平衡车系统的功能是通过实时控制平衡并实现模式控制,使自平衡车实现自动平衡、自主康复和自由行走,从而达到智能化的操作目的,解决双轮自行车无主动平衡功能的问题。
二、系统设计1、硬件系统自平衡车的硬件系统由电池、ESC(电子转向控制器)、遥控组件、周边传感器组件、电路板组件等构成。
2、软件系统自平衡车的控制系统主要由ARMCortex-M0 MCU、单片机程序、PID算法组成。
三、系统实现1、硬件系统实施(1)第一步,在自平衡车上安装ESC,ESC的电池由智能充电器连接,使自平衡车进行自动充电;(2)第二步,给控制器方向键插上遥控器,使用户可以控制车辆移动;(3)第三步,在车辆上安装多个传感器,在控制板上增加芯片,使用户可以对车辆进行实时监测;(4)第四步,在控制板上安装一个ARM Cortex-M0 MCU处理器,将控制算法由单片机程序烧录形成可控制的处理系统。
2、软件系统实施(1)随着ARM处理器的安装,自平衡车可以被SONI的特殊的烧录器进行烧录,该程序可以控制车辆的转向和速度;(2)安装完毕后,需要建立多个变量从传感器接受数据,读取车辆的平衡状态,并控制车辆前后左右的运动;(3)最后,我们选择PID算法来实现车辆实时的控制,根据车辆当前的实际情况,调节PID距离和速度增量使自平衡车实现实时的模式控制。
四、结论本文介绍了自平衡车控制系统的设计思想和实现步骤,通过控制平衡,实现自动平衡、自主康复和自由行走,使得自平衡车有更多的功能,在以后的应用中,自平衡车的研究和应用实际会有很大的推动作用。
基于单片机的两轮自平衡车控制系统设计摘要两轮自平衡车是一种高度不稳定的两轮机器人,就像传统的倒立摆一样,本质不稳定是两轮小车的特性,必须施加有效的控制手段才能使其稳定。
本文提出了一种两轮自平衡小车的设计方案,采用重力加速度陀螺仪传感器MPU-6050检测小车姿态,使用互补滤波完成陀螺仪数据与加速度计数据的数据融合。
系统选用STC公司的8位单片机STC12C5A60S2为主控制器,根据从传感器中获取的数据,经过PID算法处理后,输出控制信号至电机驱动芯片TB6612FNG,以控制小车的两个电机,来使小车保持平衡状态。
整个系统制作完成后,小车可以在无人干预的条件下实现自主平衡,并且在引入适量干扰的情况下小车能够自主调整并迅速恢复至稳定状态。
通过蓝牙,还可以控制小车前进,后退,左右转。
关键词:两轮自平衡小车加速度计陀螺仪数据融合滤波PID算法Design of Control System of Two-WheelSelf-Balance Vehicle based on MicrocontrollerAbstractTwo-wheel self-balance vehicle is a kind of highly unstable two-wheel robot. The characteristic of two-wheel vehicle is the nature of the instability as traditional inverted pendulum, and effective control must be exerted if we need to make it stable. This paper presents a design scheme of two-wheel self-balance vehicle. We need using gravity accelerometer gyroscope sensor MPU6050 for the inclination angle of vehicle, and using complementary filter for the data fusion of gyroscope and accelerometer. We choose an 8-bit microcontroller named STC12C5A60S2 from STC Company as main controller of the control system. The main controller output control signal, which is based on the data from the sensors, to the motor drive chip named TB6612FNG for controlling two motors of vehicle, and keeping the vehicle in balance. After the completion of the control system, the vehicle can achieve autonomous balance under the conditions of unmanned intervention, the vehicle can adjust automatically and restored to a stable state quickly in the case of giving appropriate interference as well. In addition, we can control the vehicle forward, backward and turn around.Key words: Two-Wheel Self-Balance Vehicle; Accelerometer; Gyroscope; Data fusion; Complementary filter; PID algorithm1 绪论 (1)1.1自平衡小车的研究背景 (1)1.2 自平衡小车研究意义 (1)1.3 论文的主要内容 (2)2 课题任务与关键技术 (2)2.1 主要任务 (2)2.2关键技术 (2)2.2.1 系统设计 (2)2.2.2 数学建模 (2)2.2.3姿态检测 (3)2.2.4 控制算法 (3)3 系统原理分析 (3)3.1 控制系统任务分解 (3)3.2 控制原理 (4)3.3 数学模型 (5)4 系统硬件设计 (6)4.1 STC12C5A60S2单片机介绍 (7)4.2 电源管理模块 (8)4.3 车身姿态感应模块 (9)4.3.1 加速度计 (10)4.3.2 陀螺仪 (12)4.4 电机驱动模块 (14)4.5 速度检测模块 (16)5 系统软件设计 (16)5.1 软件系统总体结构 (17)5.2 单片机的硬件资源配置 (18)5.2.1定时/计数器设置 (18)5.2.2 PWM输出设置 (20)5.2.3 串行通信设置 (23)5.2.4 中断的开放与禁止 (26)5.3 MPU6050资源配置 (27)5.3.1 普通IO口模拟IIC通讯 (28)5.3.2 MPU6050资源配置 (32)5.4 系统控制算法设计 (34)5.4.1 PID算法 (34)5.4.2 互补滤波算法 (35)5.4.3 角度控制与速度控制 (35)5.4.4 输出控制算法 (36)6 总结与展望 (37)6.1 总结 (37)6.2 展望 (37)参考文献 (38)1 绪论1.1自平衡小车的研究背景近几年来,随着电子技术的发展与进步,移动机器人的研究不断深入,成为目前机器人研究领域的一个重要组成部分,并且其应用领域日益广泛,其所需适应的环境和执行的任务也更复杂,这就对移动机器人提出了更高的要求。
2016年第3期 重庆三峡学院学报 No.3.2016 第32卷(163期) JOURNAL OF CHONGQING THREE GORGES UNIVERSITY V ol.32 No.163收稿日期:2016-02-15作者简介:余世干(1982-),男,安徽定远人,阜阳师范学院讲师,主要研究嵌入式系统开发,数字图像.基金项目:安徽省教育厅自然科学研究项目(编号:2015FXTZK01);安徽省质量工程项目(编号:2014sxzx049,2013jyxm555);安徽省大学生创新创业训练项目(AH201413619001);阜阳师范学院自然科学研究项目(编号:2013FSKJ15)阶段性成果两轮自平衡智能车寻迹系统设计与实现余世干 苗 清 张廉洁 周红志(阜阳师范学院信息工程学院,安徽阜阳 236037)摘 要:文章设计和实现了基于单片机的两轮自平衡自动循迹的智能车.系统采用飞思卡尔公司的mc9s12xs128的单片机芯片和两轮的智能小车模型;软件设计采用CodeWarrior 作为开发平台,C 语音作为开发工具.最后通过系统测试,智能小车能够较好的在预定轨道上自动寻迹而且速度较快,各项性能稳定.关键词:智能车;自平衡;模块;PD 算法中图分类号:TP242.6 文献标识码:A 文章编号:1009-8135(2016)03-0043-04智能车技术是一种综合的新技术,由于可控制性和方便性的特点,其在未来生活中将发挥广泛应用.在教育部创办的智能车竞赛的背景下,本文的智能车自动导航系统能在45 cm 宽的规定白板,两边各有2.5 cm 宽黑线为引导线的道路上,在无人操作下通过识别路况信息实现自动导航、控制车体速度和方向.本系统是以飞思卡尔公司的MC9S12XS128单片机为主控制器,设计出的智能车系统能自动采集、处理路面信息,在无人操作的情况下实现自动循迹导航的功能.本文主要是设计与实现两轮自平衡车自动循迹的过程[1].1 系统实现的理论基础1.1 车体直立的原理两轮直立车体,顶端相对于底端为相对静止,顶端相对于底端总会有向前或者向后的运动速度,若想保持直立,则需要使得底端和顶端的运动速度方向、大小一致.而车体底端的电机,通过轴承驱动轮子,则可以保证车体底端和顶端的运动速度方向、大小的一致,从而保持车体直立[1-2].1.2 车体运动时保持直立的原理将车体看作一个整体,车体直立时,整体相对于地面来说相对静止.若车体开始倾斜,车体顶端相对于地面来说有了一定的速度大小和方向,想要保持车体倾斜的角度不再加剧,车体底端需要在车体倾斜的过程中,达到与顶端有着相同方向大小的速度.这样才能保证车体倾斜的角度不再会变化,但是整体对于地面来说,是从静止到匀速运动的过程、是从直立静止到保持一定的倾斜角度匀速运动的过程.1.3 道路识别原理实际道路的情况极其复杂,为了实现这一功能,此设计在有限的条件下进行到道路模拟.采用的是以白色KT 板为道路主体,以黑色线条为道路边界,具体实物如图1所示.使用简单的模型来模拟实际道路,分析道路情况可得知,道路分为直道,弯道,十字路口.只要能够获得黑线的走向,即可获得道路情况,使得小车在黑色线条围成的封闭“道路”DOI:10.13743/ki.issn.1009-8135.2016.03.011余世干苗清张廉洁周红志:两轮自平衡智能车寻迹系统设计与实现中运动.2 系统硬件结构本系统以MC9S12XS128单片机为核心,外围扩展了速度检测、道路信息检测、电源、直流电机驱动、陀螺仪以及电机差速转向控制等模块,具体系统结构[3]37-78如图2所示,系统组成实物如图3.图2 系统硬件结构图 图3 系统组成实物图2.1 陀螺仪模块与加速度传感器此设计选定了村田公司出产的ENC-03陀螺仪作为角速度传感器,飞思卡尔公司的MMA7361加速度传感器.使用两个陀螺仪来分别采集车体与地面的角度,车体与“道路”边界的角度.这两种芯片都是模拟信号输出,便于采集.加速度传感器能够检测由地球引力作用或者物体运动所产生的加速度.MMA7361加速度传感器是一种模拟量输出的三轴加速度传感器,测量其中一个方向上的加速度值,经过受力分析就可以计算出车模倾角.例如车模直立时,将加速度传感器的Z轴固定在水平方向上,此时输出信号是零偏电压信号.当车模不平衡时,重力加速度G则会在 Z 轴方向产生加速度分量,从而引起Z轴输出电压变化.陀螺仪、加速度传感器模块实物如图4所示.2.2 直流电机驱动模块车模采用的是直流电机,改变电流的流向即可改变电机旋转的方向.此类对电机的驱动电路大多数采用H桥电路,其原理为:用四个NMOS管构成可控制电流流向的电路从而驱动电机.在构建电机驱动电路时,要注意电机最大电流值,测量电机最大电流值,可将电机转子固定,然后根据电机可工作电压范围,选择最大电压,进行测量电流,图5为系统设计的电机驱动电路原理图.2.3 速度检测模块速度检测模块采用编码器来完成,通过侦测车轮运动的速度、角度、距离、位置以及计数,再把相关信息反馈给主程序以便主程序更好的控制.MC9s12xs128芯片内部集成了一个PCA模块,可用于捕获外部脉冲并且计数.关于两个电机转速的采集,使用一个外部计数器和内部PCA模块,分别采集两个电机的转速.外部计数器原理图如图6所示.2.4 电源模块本次方案使用的单片机芯片,传感器为5 V供电电压,其中比较特殊的就是陀螺仪和加速度模块,此模块采用3.3 V供电电压.针对这两种供电要求,此设计选取了LM2940作为5 V稳压芯片,LM1117-3.3作为3.3 V稳压芯片.这两种芯片的性价比较高,而且可以满足此系统地供电要求.同时考虑到整体系统需要电流的大小此设计采用将最小系统供电电源与传感器供电分别用两个5 V电源来进行供电,保证系统的正常工作[4].图7,图8分别为5 V稳压电路、3.3 V稳压电路原理图.2.5 其他模块键盘模块是用来调整软件程序的输入参数和其他辅助信息以实现在更好的调试智能车运行状态.道路信息检测模块是这个系统中重要的一环,在本系统中采用TSL1401线性CCD传感器,其内部具有128个光电二极管,每个光电二极管通过积分电路所感知的光强以电压的形式输出,其电压与光照图4 陀螺仪与加速度传感器模块重庆三峡学院学报强度强度和积分时间成正比.同时,该芯片的采集时间,也是此设计在编写底层驱动程序是需要考虑的,TSL1401芯片最小的采集时间为12 ms,在此方案中,采用的采集频率为50 HZ.核心控制器MC9S12XS128是智能车的“大脑”,它是飞思卡尔公司的一种16位单片机,其片上资源包含有时钟和复位发生器,128K FLASH,8K ROM,2K EEPROM,8位/16位脉冲累加计数器;128KB 程序Flash,8 KB RAM、8 KB数据Flash等功能资源,非常丰富,足以满足此方案中各种功能需求.在此单片机芯片上再辅助设计电源电路,振荡器电路,复位电路,BDM下载硬件电路等电路组成最小系统,从而实现对智能小车的整体综合控制.系统硬件电路的设计的工具采用Altium Designer 09,它整合了原理图、PCB图,包含很多芯片厂家的原理图库,使得开发电子线路变得十分方便,同时也拥有者DRC检测机制等功能.图5 直流电机驱动原理图 图6 外部计数器CD4520原理图图7 5v稳压电源电路图 图8 3.3v稳压电源电路图3 系统软件设计系统软件算法[1]设计是建立与硬件之上,决定着智能小车在实际道路的自动运行以及实际运行的效果,是智能小车设计的不可缺少的重要一环.系统设计需要先进行对于程序框架的设计.通过分析系统功能可知,首先需要完成单片机的初始化,使得单片机能够正常的进行工作.对于传感器数据的采集,此设计需要使用中断服务程序(ISR),这样设计才能够精确的按照单位时间来采集需要的数据,采集数据完毕之后,需要对数据进行处理,因为直立控制的精度要求较高,因此需要控制信号处理时间,这需要放在中断服务程序中来进行.对于算法需要进行优化,否则在中断中容易锁死.CCD传感器的采集时间较长,因此不能放在中断服务程序中.然后需要考虑到在调试过程中的便捷性,由于每次烧写程序会消耗大量时间,此设计采用按键来设置核心参数的方法,这样就可以直接在源程序上进行修改,而不需要再一次在IDE中进行修改和烧写[6-7].在采集到CCD信号时,需要通过陀螺仪与加速度传感器完成对车体的整体平衡的控制,然后完成对CCD 信息的处理以及对电机的控制,在电机控制过程中,采用了比较典型的PD算法,其原理源自于PID算法,是过程控制中一种模糊自适应算法,用过去,和现在的状态来预算未来的状态.用陀螺仪反馈出的角度来对电机状态来进行比例控制,用陀螺仪反馈角速度对电机状态来进行微分控制.比例控制代表着直接控制电机输出得到的结果,微分控制代表着直接控制电机输出得到的车体整体效果,其物理意义对应为电机速度和加速度,而电机的加速度影响着车体回复直立的速度,则可以用角度来代替.在直立的前提下,对电机进行速度控制和方向控制,速度控制是利用光电编码器的负反馈系统.其余世干苗清张廉洁周红志:两轮自平衡智能车寻迹系统设计与实现中Pspeed为上一次脉冲计数和此时脉冲数的差值,对电机进行比例控制,Dspeed为上一次差值与这一次差值之差对对采样时间进行微分运算,从而对电机进行控制.方向控制使用的是另一个陀螺仪的负反馈,算法过程与直立控制过程相同.按照上述设计出控制车体的控制程序,车体能直立沿着路面自动循迹.程序框架如图9所示.图9 程序框架图4 系统测试与实现系统的测试主要是完成对系统的整体结构检查是否实现预期功能,系统设计最后一环,在本系统测试中主要包括系统中的稳压电路测试,最小系统电路测试,光电编码器测试,陀螺仪、加速度模块测试,车体单片机与PC机通信电路测试,电机驱动电路测试,线性CCD模块测试,通过对各模块的测试发现,各模块功能均正常,能够完成预定目标[8-9].综上所述,本文针对两轮智能车完成了自动循迹系统的设计,实现了智能车在规定的直行、S型、十字交叉路口、斜坡、自动避障等赛道上自助循迹行使,速度能达到1.8 m/s的速度.另外基于本文所设计的智能车的控制系统的方法,也可以在其他自动控制领域发挥作用.参考文献:[1] 卓晴,黄开胜,邵贝贝,等.学做智能车—挑战“飞思卡尔”杯[M].北京:北京航空航天大学出版,2007.[2] 吴怀宇.大学生智能汽车设计基础与实践[M].北京:电子工业出版社,2008.[3] 王威.HCS12微控制器原理及应用[M].北京:北京航空航天大学出版社,2007.[4] 马福良.智能车规划与控制系统的设计与实现[D].吉林:吉林大学,2012.(责任编辑:涂正文) Design and Implementation of Two Wheels Self-Balancing Intelligent Car Tracing System YU Shigan MIAO Qing ZHANG Lianjie ZHOU Hongzhi(College of Information Engineering, Fuyang Teachers’ College, Fuyang, Anhui 236000) Abstract: In this paper, the two wheels and self-balancing intelligent car, which can automatic tracking on the road, is designed and realized based on single chip microcomputer. In this system, the single chip microcomputer MC9S12XS128 of Free scale and the model of two wheels intelligent car are adopted. The software is developed based on CodeWarrior with using C language tool as development environment. Finally after testing system, intelligent car can track the scheduled track with high speed and has stable performance.Keywords: intelligent car; self-balancing; module; PD algorithm。
两轮自平衡智能车硬件系统计
发表时间:2017-09-06T11:16:11.530Z 来源:《电力设备》2017年第14期作者:胡巍郑琼伟毛玉列刘青松[导读] 摘要:针对智能车为两轮直立行走的要求,提出了系统的设计方案。
微处理器采用MC9S12XS128,用加速度传感器检测车的倾角,陀螺仪检测车的角加速度;通过控制两个电机的加减速实现车的自平衡控制。
(嘉兴学院浙江嘉兴 314001)
摘要:针对智能车为两轮直立行走的要求,提出了系统的设计方案。
微处理器采用MC9S12XS128,用加速度传感器检测车的倾角,陀螺仪检测车的角加速度;通过控制两个电机的加减速实现车的自平衡控制。
实验表明:该方法制作的两轮自平衡车构造简单,控制方便,能够较好的实现自平衡控制。
关键词:自平衡;智能车;传感器;驱动
两轮自平衡小车本质上是一类两轮智能机器人,是机器人研究领域中一个崭新的方向。
与传统的机器人相比,它具有更广阔的发展前景。
开展该领域的研究,对拓展机器人的应用范围、提高国内两轮机器人的研究水平和机器人控制水平有重要的理论和现实意义。
本文以MC9S12XS128为微处理器,采用MMA7260加速度传感器和NEC-03陀螺仪共同检测车模的角度信息,通过控制两个电机的加减速度来实现了智能车的自平衡控制,实验表明:该方法制作的两轮自平衡车构造简单,控制方便,适应性强、响应迅速快,能够较好的实现自平衡控制并有很强的抗干扰能力。
1.设计原理
两轮车是一个高度不稳定系统,在重力作用下车体姿态本征不稳定,致使在没有外加调控下必然倾倒的现象。
因此,要保持车的平衡只有通过控制轮子转动,抵消车体倾斜的趋势以保持平衡。
为了保持智能车的直立自平衡状态,需要满足以下两个条件:一是需要准确测量车体的倾角和角加速度的大小,以得到车的状态和趋势;二是需要控制车轮的速度和加速度,使智能车保持直立的状态。
因此,从控制角度来看,将智能车作为一个控制对象,两个车轮的转动速度为控制输量。
整个控制系统又可分为三个子系统:(1)智能车的平衡控制:车的倾角为输入量,通过控制两个电机的加速度保持小车衡。
(2)智能车的速度控制:在保持平衡的基础上,改变车的倾角来调节车的速度,实际上还是通过对电机的控制来实现速度控制。
(3)智能车方向控制:控制两个电机的转速差来实现车的转向。
2.自平衡智能车系统结构
自平衡智能车系统主要包括系统主要由以下几个模块组成:MC9S12XS128单片机最小系统硬件设计、电源模块硬件设计、倾角传感器信号调理电路设计、电机驱动电路设计、速度检测电路。
自平衡智能车系统结构框图如图1所示。
图1自平衡智能车系统结构框图
通过加速度传感器和陀螺仪共同检测智能车的角度信息(即角度和角速度信息),智能车使用H桥驱动来驱动直流电机;为了实现对车速精准的控制,需要测速模块。
2.1 加速度传感器
本系统采用的加速度计是飞思卡尔公司三轴加速度计MMA7260。
可以同时输出3个方向上的加速度模拟信号,该加速度传感器是一种低g值的传感器,输出信号很大,不需要再进行放大。
电路搭建简单,测量精度高。
2.2 陀螺仪
陀螺仪可以用来测量物体的旋转角速度,因此,本系统采用陀螺仪进行角速度的测量。
根据精度需要选用了村田公司出品的ENC-03系列的加速度传感器,是一种低成本压电式陀螺仪,利用陶瓷双压电片受振动来检测哥式加速度,响应范围从 DC到50Hz。
它利用了旋转坐标系中的物体会受到科里奥利力的原理,当旋转器件时会改变振动频率从而反映出物体旋转的角速度。
2.3 电机驱动电路设计
由于两轮自平衡车在平衡过程中需要不断前后运动调整车身姿态,因此需要电机能够实现双向转动。
为此,系统采用两片专用半桥驱动芯片BTS7960构成全桥式驱动电路。
由单片机的PWM模块产生驱动波形,通过改变PWM占空比实现直流电机的调速功能。
驱动芯片BTS7960在工作时,阻抗典型值为16 mΩ(IOUT=9 A,Ti=25℃),最大驱动电流为43 A。
由于内部集成控制电路具有逻辑电平输入功能,因此方便与单片机的接口电路连接,该集成驱动电路还具有转换率调整、电流检测能力的状态标志诊断、还具有锁定行为的过热关断、欠压锁定、过压锁定、过流以及短路保护等功能,驱动电路图如图2所示。
图2 驱动电路图
由于电机启动瞬间电流很大,会将整个系统电压拉低,造成其他设备如单片机的工作不正常,因此要在电池电源输入侧加上较大滤波电容。
如图2所示,PWM1和PWM2分别为两个半桥的控制端口。
当PWM1为高电平,PWM2为低电平时,MOTOR1口即输出高电压,MOTOR2输出低电压,此时电机正转;当PWM1为低电平而PWM2为高电平时,MOTOR1口即输出低电压,MOTOR2输出高电压,此时电机反转。
通过改变PMW1和PWM2端口的驱动波形占空比改变输出端电压,从而实现电机调速的目的。
2.4 速度检测电路。
两轮自平衡小车的原理是利用地面对车轮的摩擦力抵消车受到的重力,在本系统的控制环节中有两路闭环控制,即倾角闭环控制以及速度闭环控制。
为实现速度的闭环控制,必须加入速度检测装置实现速度闭环控制中的反馈环节。
本系统测速模块采用OMRON(欧姆龙)公司500线增量式旋转编码器,编码器内部为一个中心有轴的光电码盘,其上有环形通、暗的刻线,由光电发射和接收器件读取,编码器的脉冲信号可连接计数器,单相联接,可进行单方向计数,单方向测速,两相联接,用于正反向的判断和计数、速度测量。
三相联接,可用于用于基准点定位的位置测量。
本测速模块构造简单,抗干扰能力强,可靠性高。
3通讯电路设计
本设计中涉及多种传感器的应用,为使系统工作稳定,完成设计要求,需要检测各传感器的工作状态。
同时还要对数据融合波形以及控制算法进行实时监测,并对相关参数进行调整。
为此本设计需要设计辅助调试模块,本设计采用RS232串口通信作为调试方法。
计算机与MC9S12XS128之间使用RS232进行数据传输。
4结语
本文阐述了系统硬件电路的设计。
整个系统硬件电路平台搭建后实验结果表明,本系统方法简单实用,可以很好地实现预期的功能,即实现小车的动态自平衡适应性强的特点,有很好的实用价值。
参考文献:
[1] 蔡述庭“飞思卡尔”杯智能汽车竞赛设计与实践—基于S12XS和KinetisK10.北京航空航天大学出版社.2010
[2] 余世干,苗清,张廉洁,周红志.两轮自平衡智能车寻迹系统设计与实现.重庆三峡学院学报,2016,32(3):43-46 基金项目:本文得到嘉兴学院大学生创新项目资助
作者简介:
胡巍,女,1996年生,杭州人,嘉兴学院南湖学院电气工程及其自动化专业学生,研究方向为电气控制。