两轮直立智能车设计
双轮直立智能车设计

双轮直立智能车设计
●系统组成:
1.硬件电路设计:电源、嵌入式微控制器、传感器、电机和控制电路、数据通信的综合系
统
2.机械结构设计:由双轮直立智能车构成的工作平台、承载硬件电路、
3.平衡控制模块:要求自平衡、数据采集、手动控制装置、
4.软件设计和调试控制
●系统功能:
1.硬件设计:减少不必要的调试麻烦
2.平衡信号监测处理:快速检测倾斜信号,保证平衡和倾斜后的调节能力
3.单片机:分析处理检测到的信号,通过相应的c语言实现
●电路图
驱动电路:
电源模块电路:
陀螺仪电路:
速度传感器电路:
CAN总线原理图:
串口与458接口原理图:
USB转串口原理图:
人机互接口电路:
软件设计:
小车平衡依靠软件设计,软件设计主要包括以下几点:
1.建立软件工程,分配个模块功能并考虑实时调试
2.编写单片机软件程序框架,建立软件编译、下载、调试的环境
3.实施并调试各个子模块的功能的正确性
4.进行车模整体运行性能测试与提高。
多电源供电的两轮直立智能车系统设计

图 2 智能车 系统框图
2 硬 件 系统设 计
1 系统 整体 结构 设计
硬件部分 主要包括循 迹电路 、测速 电路 、电机 驱动 电路 、 稳压 电路和 显 示 电路 。两 轮 平衡 车 系 统 结 构原 理 图如 图 1所 示 。
图 1 智 能 车 系统 结 构 原 理 图
系统 采用 飞思卡尔 公司生产 的 MK60单片机 作为控 制 单元 ,进 行数据的采集 ,计算 和传送 。根据对 资料 的分析 ,以 及对性价 比的衡 量 ,惯性 测量单 元采 用单轴 陀螺 仪 ENC ̄3 和三轴加 速度 计 MMA7361配 合 使用 。两 轮 智 能车 系统 框 图如 图 2所 示 。
关键词 :MK60单片机 ;太 阳能 电池板 ;ENC ̄3;MMA7361 中 图分 类 号 :TP212.9 文 献标 识 码 :A
随着科技 的发展 ,工业 智能化 水平越来 越 高 ,两 轮 自平 衡 电动车 以节能环保 、灵活便利等诸多优点得到广泛关 注和 研究 。两轮 自平衡小车是一个 高阶次 、强耦合 、多 变量 、不稳 定 的非线性 系统 … 。两 轮平 衡 车系统 可 以分解 为 直 立 、行 走 、转弯 三方 面的控制过程 ,三者 相互糅 合达 到控制平 衡 车 稳定运行 的 目的。太 阳能汽车是 以太 阳能为 能源来 驱动 系 统 的汽车 。比较传统 能源汽 车,太 阳能汽 车无 污染 ,因 而太 阳能汽 车已成为 当今 汽车行业 的发 展方 向 。
2山01西6电年子第技1术期
应 用 实 践
文 章 编 号 :1674—4578(2016)01—0031-02
多 电 源供 电 的 两轮 直 立 智 能 车 系统 设 计 木
龚亚辉 ,何秋 生,张 森 ,侯赵 磊 ,杨 海旭
直立式双轮自平衡运动小车

长春工业大学电子设计大赛题目:直立式双轮自平衡运动小车(C)编号:日期:摘要车模直立行走比赛是要求仿照两轮自平衡电动车的行进模式,让车模以两个后轮驱动进行直立行走。
近年来,两轮自平衡电动车以其行走灵活、便利、节能等特点得到了很大的发展。
国内外有很多这方面的研究,也有相应的产品。
在电磁组比赛中,利用了原来C型车模双后轮驱动的特点,实现两轮自平衡行走。
相对于传统的四轮行走的车模竞赛模式,车模直立行走在车体检测、控制算法等方面提出了更高的要求。
本设计采用ATMEL公司推出的MEGA16 单片机作为“双轮直立自平衡小车”的微控制器,用以处理任意时刻传感器的数据;通过软件滤波和自动控制理论算法使得小车能够在任意时刻进行自我调整以达到平衡状态。
该系统的传感器采用角度传SCA61T,和陀螺仪采集小车车身的水平状态值和小车的加速度值。
并且采用了LM298双桥大功率集成驱动芯片来驱动电机,无线遥控来控制小车的数据传输。
依靠这些设备和可靠的硬件设计,我们使用了一套PID 闭环控制算法和比较稳定的卡尔曼滤波算法,使得整个硬件结构和软件系统能顺利匹配。
从而使得我们的小车能保持直立自平衡状态。
模糊PID控制具有良好控制效果的关键是要有一个完善的控制规则。
但由于模糊规则是人们对过程或对象模糊信息的归纳,对高阶、非线性、大时滞、时变参数以及随机干扰严重的复杂控制过程,人们的认识往往比较贫乏或难以总结完整的经验,这就使得单纯的模糊控制在某些情况下很粗糙,难以适应不同的运行状态,影响了控制效果。
常规模糊控制的两个主要问题在于:改进稳态控制精度和提高智能水平与适应能力。
在实际应用中,往往是将模糊控制或模糊推理的思想,与其它相对成熟的控制理论或方法结合起来,发挥各自的长处,从而获得理想的控制效果。
关键字:自平衡小车 ATMEGA16单片机直立行走模糊PID一、总体设计方案1.1设计思路:题目要求设计并制作一个单轴两轮自平衡小车。
对于小车能保持平衡,直立行走。
基于KEA微处理器两轮直立电磁智能小车设计

KEA
基 于
安 徽
微
财处
经 大 学
理 器
计两
算 机 科
轮 直
学立
与 技 术
电 磁
系智
叶 选
能 小
繁车
常设 郝计
陈 震 元
李 宇 恒
• 145 •
• 146 •
ELECTRONICS WORLD・技术交流
图2 主板原理图
图3 电机驱动板 图4 电感分布示意图
3.2 电机驱动板设计原理 考虑到直立小车需要更大的功率
(1)当小车两八字电感差距不大,并 且均大于直道时的电感值,可判定为十 字形状;
(2)当两边电感值几乎相等时,可判 定小车在直道行驶;
(3)当左边八字电感值最大,中间电 感次之,可判定为左圆环;
(4)当右八字电感值最大,中间电感 次之,可判定为右圆环。
4.软件算法关键研究 4.1 电磁寻迹原理
首先,需要明确的是赛道中央的导 线通有正弦规律变化的电流时会产生变 化的磁场,变化的电场会产生变化的电 流,且两者的变化规律一致。根据法拉
ELECTRONICS WORLD・技术交流
随着人工智能的高速发展,无人驾驶受 到越来越多人的青睐,而基于微处理器的电 磁智能小车的设计为汽车实现真正的智能化 提供了研究的方法和思路。本文采用KEA微 处理器作为核心控制芯片,使用MPU6050 调整小车的惯性姿态,使用串级PID算法完 成对直流电机的调速,通过检测赛道电磁信 号,实现两轮直立电磁智能小车在各种赛道 下平衡稳定前进。
1.引言 随着科学技术的不断发展,许多科研
机构都投入于无人驾驶智能汽车(杨帆, 无人驾驶汽车的发展现通城市道路上全自动无 人驾驶。无人驾驶智能车主要是在智能汽 车上安装传感器,对周围环境进行检测, 分析处理,从而选择最合适的驾驶方案进行 行驶。其中,长安大学丁磊(丁磊,基于16 位单片机MC9S12XS128的两轮自平衡智能 车的系统研究与开发:长安大学,2013)利 用光电编码器分别检测智能车的线速度和转 向角速度,对速度进行P-I(比例-积分)控 制;吉林农业大学杨建姣等人(杨建姣,朱 凤武,齐迹,基于K60电磁循迹智能车系统 控制策略的设计:安徽电子信息技术职业学 院学报,2016)采用模糊PID算法完成对直 流电机的调速,解决了传统PID算法计算量 大且复杂的问题;齐鲁工业大学的蔡春山等 人(蔡春山,邢广伟,王佐勋,黄丽丽,基 于电磁寻迹的智能车仿真:齐鲁工业大学学 报,2017)使用MATLAB软件对PID算法进 行仿真,解决了PID调节过程中精度低,响 应时间慢等问题。
两轮自平衡小车的设计毕业设计(论文)

本科毕业设计(论文)题目两轮自平衡小车的设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
两轮自平衡小车的设计

两轮自平衡小车的设计设计原理:两轮自平衡小车的设计原理基于倾角控制算法和正反馈控制理论。
当车身发生倾斜时,传感器将感知到倾角,并通过控制算法计算出合适的电机控制信号,使车身产生逆倾的力矩,从而使车身重新回到平衡状态。
当车辆向前倾斜时,电机会产生足够的力矩向前旋转,使小车向前加速,反之亦然。
通过不断监控和调整车体的倾角,小车能够保持平衡,并根据用户的指令进行前进、后退、转弯等动作。
硬件组成:1.IMU:IMU是最核心的传感器之一,通常由陀螺仪和加速度计组成。
陀螺仪用于测量车身的旋转角速度,加速度计则用于测量车身的倾角。
通过对陀螺仪和加速度计测量结果的融合,可以得到较为准确的车身姿态信息。
2.电机驱动器:电机驱动器用于控制电机的转速和方向。
它接收来自控制器的电机控制信号,并根据信号的大小和方向来调整电机的运转。
常见的电机驱动器有H桥驱动和PWM调速电路。
3.电机:两轮自平衡小车通常采用直流电机作为动力源。
电机的规格和功率根据车辆的大小和负载来确定。
一般情况下,电机的转速和扭矩越高,小车的稳定性和运动性能越好。
5.控制器:控制器是小车的主要计算和决策中心。
它接收来自IMU的姿态信息,通过算法计算出电机控制信号,并将信号传递给电机驱动器。
控制器通常采用单片机或微控制器作为基础,并配备相应的传感器接口、通信接口和控制算法。
软件控制:1.姿态控制算法:姿态控制算法通过对IMU传感器测量数据的处理,确定小车的倾角,并根据倾角的变化来计算电机的控制信号。
常见的姿态控制算法有PID控制器和卡尔曼滤波算法等。
2.运动控制算法:运动控制算法用于实现小车的前进、后退、转弯等动作。
它通过根据用户的指令调整电机的转速和方向,使小车按照预定的路径和速度运动。
常见的运动控制算法有速度控制和位置控制等。
3.用户界面:用户界面是与用户交互的界面,用于发送指令和接收反馈信息。
用户可以通过按钮、摇杆等设备来控制小车的运动,并通过显示屏、LED灯等设备来获取小车的工作状态。
两轮直立代步车控制器设计实施方案
计算机控制技术课程设计成绩评定表设计课题两轮直立代步车控制器设计学院名称:电气工程学院专业班级:学生姓名:学号:指导教师:设计地点:设计时间:计算机控制技术课程设计课程设计名称:两轮直立代步车控制器设计专业班级:自动化1004学生姓名:学号:指导教师:课程设计地点:31-503课程设计时间:2011-06-11~2011-06-15计算机控制技术课程设计任务书目录1 引言22 总体方案设计32.1硬件组成32.2整体电路框图32.3直立任务分解32.4平衡控制42.5角度和角速度测量42.4速度控制62.5方向控制83 硬件电路设计83.1 单片机及其外围电路83.2控制电路划分为如下子模块:94 系统软件设计124.1 主程序设计124.2控制相关地软件函数:134.3中断服务程序145总结14参考文献14附录A 电路图151 引言两轮自平衡电动代步车是一种两轮左右并行布置结构地具有自平衡系统地电动车.利用倒立摆控制原理,使车体始终保持平衡.在车体内嵌入式CPU地控制下,采集平衡传感器以及速度、加速度传感器地数据,通过建立地系统数学模型和控制算法,计算输出PWM信号,自动控制两个伺服电机地转矩,使车体保持平衡并能够根据人体重心地偏移,自动前进、后退及转弯.2 总体方案设计2.1硬件组成按两轮自平衡电动代步车控制系统地技术要求,控制系统地硬件应包括以下几部分:(1)控制器.作为控制系统地核心,采用S12G128单片机控制各个模块.(2)速度检测通道.将运动量转换为数字量,送给单片机,直接读取当前速度.(3)控制输出通道.控制器输出地控制信号传送给电机,控制电机地正反转和速度.(4)加速度检测通道.将电机角加速度转换为电信号.(5)角度检测通道.将系统倾角转换为电信号.2.2整体电路框图图2.1 总体控制框图2.3直立任务分解(1)控制平衡:通过控制两个电机正反向运动保持车模直立平衡状态;(2)速度控制:通过调节车模地倾角来实现车模速度控制,实际上最后还是演变成通过控制电机地转速来实现车轮速度地控制.(3)控制方向:通过控制两个电机之间地转动差速实现车模转向控制.车地直立和方向控制任务都是直接通过控制车地两个后轮驱动电机完成地.假设电机可以虚拟地拆解成两个不同功能地驱动电机,它们同轴相连,分别控制系统地直立平衡、左右方向.在实际控制中,是将控制直立和方向地控制信号叠加在一起加载电机上,只要电机处于线性状态就可以同时完成上面两个任务.速度是通过调节车模倾角来完成地.不同地倾角会引起车地加减速,从而达到对于速度地控制.2.4平衡控制重力场中使用细线悬挂着重物经过简化便形成理想化地单摆模型.直立着地车可以看成放置在可以左右移动平台上地倒立着地单摆.当物体离开垂直地平衡位置之后,便会受到重力与悬线地作用合力,驱动重物回复平衡位置.这个力称之为回复力,在偏移角度很小地情况下,回复力与偏移地角度之间大小成正比,方向相反.在此回复力作用下,单摆便进行周期运动.在空气中运动地单摆,由于受到空气地阻尼力,单摆最终会停止在垂直平衡位置.空气地阻尼力与单摆运动速度成正比,方向相反.阻尼力越大,单摆越会尽快在垂直位置稳定下来.总结单摆能够稳定在垂直位置地条件有两个:(1)受到与位移(角度)相反地恢复力;(2)受到与运动速度(角速度)相反地阻尼力.通过类比倒立摆可得到了车直立地控制方案.控制车模直立稳定地条件如下:(1)能够精确测量车模倾角θ地大小和角速度'θ地大小;(2)可以控制车轮地加速度.2.5角度和角速度测量(1)加速度传感器加速度传感器可以测量由地球引力作用或者物体运动所产生地加速度.MMA7260是一款三轴低g半导体加速度计,可以同时输出三个方向上地加速度模拟信号,通过设置可以使得MMA7260各轴信号最大输出灵敏度为800mV/g,这个信号无需要在进行放大,直接可以送到单片机进行AD转换.只需要测量其中一个方向上地加速度值,就可以计算出倾角,比如使用Z轴方向上地加速度信号.车直立时,固定加速度器在Z 轴水平方向,此时输出信号为零偏电压信号.当车发生倾斜时,重力加速度g 便会在Z 轴方向形成加速度分量,从而引起该轴输出电压变化.变化地规律为sin u kg kg θθ∆=≈式中,g 为重力加速度;θ为车模倾角;k 为加速度传感器灵敏度系数系数.当倾角θ比较小地时候,输出电压地变化可以近似与倾角成正比.(2)角速度传感器-陀螺仪陀螺仪可以用来测量物体地旋转角速度.竞赛允许选用村田公司出品地ENC-03系列地加速度传感器.它利用了旋转坐标系中地物体会受到科里奥利力地原理,在器件中利用压电陶瓷做成振动单元.当旋转器件时会改变振动频率从而反映出物体旋转地角速度.在车上安装陀螺仪,可以测量车模倾斜角速度,将角速度信号进行积分便可以得到车模地倾角.由于陀螺仪输出地是车地角速度,不会受到车体运动地影响,因此该信号中噪声很小.车地角度又是通过对角速度积分而得,这可进一步平滑信号,从而使得角度信号更加稳定.因此车控制所需要地角度和角速度可以使用陀螺仪所得到地信号.由于从陀螺仪角速度获得角度信息,需要经过积分运算.如果角速度信号存在微小地偏差和漂移,经过积分运算之后,变化形成积累误差.这个误差会随着时间延长逐步增加,最终导致电路饱和,无法形成正确地角度信号,为了消除这个累积误差一种简单地方法就是通过上面地加速度传感器获得地角度信息对此进行校正.通过对比积分所得到地角度与重力加速度所得到地角度,使用它们之间地偏差改变陀螺仪地输出,从而积分地角度逐步跟踪到加速度传感器所得到地角度.如图2.2所示:图2.2加速度计陀螺仪采集框图(3)双加速度传感器获得角度和角速度加速度传感器Z轴信号除了由于重力加速度引起地输出之外,还包括有车模地角加速度和移动加速度产生地信息.在车模现有地参数基础上,这些信号在幅值、频率等方面没有太大差异,它们叠加在一起无法将它们分开.如果在车模上另外再增加一个加速度传感器,两个加速度传感器安装地高度不同,那么就可以通过这两个信号地差值求出车模地角加速度.通过上下两个加速度传感器输出信号相减,便可以得到车模倾角加速度.对于这个信号进行两次积分,便可以地获得车模倾角地角速度和角度.对于积分所可能带来地积分漂移问题仍然可以采用上面地重力加速度计补偿地方法进行消除.可以得到如下角度控制方案框图 2.3所示.图2.3 角度控制方案框图2.4速度控制对于直立车速度地控制相对于普通车地速度控制则比较复杂.由于在速度控制过程中需要始终保持车地平衡,因此车速度控制不能够直接通过改变电机转速来实现.具体实现需要解决三个问题:(1)如何测量车速度?(2)如何通过车模直立控制实现车倾角地改变?(3)如何根据速度误差控制车倾角?第一个问题可以通过安装在电机输出轴上地光码盘来测量得到车地车轮速度.利用控制单片机地计数器测量在固定时间间隔内速度脉冲信号地个数可以反映电机地转速.第二个问题可以通过角度控制给定值来解决.给定车直立控制地设定值,在角度控制调节下,车模将会自动维持在一个角度.通过前面车直立控制算法可以知道,车模倾角最终是跟踪重力加速度Z轴地角度.因此车地倾角给定值与重力加速度Z轴角度相减,便可以最终决定车地倾角.控制框图如图2.4所示.图2.4 倾角控制框图第三个问题介意在前两个问题地基础上增加微分控制,控制框图如图 2.5所示.图2.5 速度闭环控制框图2.5方向控制车地方向控制可在直立和速度闭环地基础上,给电机叠加上方向电信号,实现电机差速,从而实现方向地改变.在车模控制中地直立、速度和方向控制三个环节中,都使用了比例微分(PD)控制,这三种控制算法地输出量最终通过叠加通过电机运动来完成.(1)车模直立控制:使用车模倾角地PD(比例、微分)控制;(2)车模速度控制:使用PD(比例、微分)控制;(3)车模方向控制:使用PD(比例、微分)控制.3 硬件电路设计3.1 单片机及其外围电路微控制器采用S12G128.MC9S12DG128有8KB RAM,128KB FLASH,4KB EEPROM ,8路PWM,16路8位、10位AD,8路ECT,总线频率25MHZ,串行口有2个SCI,2个SPI,3个CAN总线模块.系统地输入输出包括:(1) AD转换接口(至少5路)方向检测:左右两路,用于测量左右两个控制器电压.陀螺仪:两路.一路用于检测车倾斜角速度,一路用于检测车转动角速度.加速度计:一路,测量加速度Z轴输出电压.辅助调试:(备用)1到3路,用于车调试、设置作用.(2) PWM接口(4路)控制左右两个电极双方向运行.由于采用单极性PWM驱动,需要四路PWM 接口.如果采用双极性PWM驱动,可以使用两路.(3)定时器接口(2路)测量两个电机转速,需要两个定时器脉冲输入端口.(4)通讯接口(备用)SCI(UART):一路,用于程序下载和调试接口;(5) IO接口(备用)4到8路输入输出,应用车运行状态显示,功能设置等.图3.1 单片机最小系统板外围电路3.2控制电路划分为如下子模块:DSC处理器,程序下载调试接口等;方向检测:包括两路相同地电压信号放大与检波电路如图3.3所示:图3.2 检波电路陀螺仪与加速度计:包括三个姿态传感器信号放大滤波电路;图3.3 陀螺仪与加速度计检测电路速度检测:检测电机光电码盘脉冲频率,实际上只包括了两个光电码盘地传感器;图3.4 测速电路电机驱动:驱动两个电极运行功率电路;图3.5 驱动电路图电源:电源电压转转换,稳压,滤波电路;图3.6电源模块4 系统软件设计系统软件分为主程序、中断服务程序和子程序三部分.4.1 主程序设计程序上电运行后,便进行单片机地初始化.初始化地工作包括有两部分,一部分是对于该程序通过读取加速度计地数值判断车模是否处于直立状态.在通过串口发送到上位机进行监控.同时检查车模是否跌倒.过全局标志变量确定是否进行这些闭环控制.单片机各个应用到地模块进行初始化.这部分地代码由CodeWarrior集成环境地ProcessorExpert工具生成.第二部分是应用程序初始化,是对于车模控制程序中应用到地变量值进行初始化.初始化完成后,首先进入车模直立检测子程序.如果一旦处于直立状态则启动车模直立控制、方向控制以及速度控制.程序在主循环中不停发送监控数据,跌倒判断可以通过车模倾角是否超过一定范围进行确定,或者通过安装在车模前后防撞支架上地微动开关来判断.一定车模跌倒,则停止车模运行.包括车模直立控制、速度控制以及方向控制.然后重新进入车模直立判断过程.车模地直立控制、速度控制以及方向控制都是在中断程序中完成.程序控制框图如图4.1所示:.图4.1 程序控制框图4.2控制相关地软件函数:1. AngleCalculate:车模倾角计算函数.根据采集到地陀螺仪和重力加速度传感器地数值计算车模角度和角速度.如果这部分地算法由外部一个运放实现,那么采集得到地直接是车模地角度和角速度,这部分算法可以省略.该函数是每5毫秒调用一次.2. AngelControl:车模直立控制函数.根据车模角度和角速度计算车模电机地控制量.直立控制是5毫秒调用一次.3. SpeedControl:车模速度控制函数.根据车模采集到地电机转速和速度设定值,计算电机地控制量.该函数是100毫秒调用一次.4. SpeedControlOutput:速度输出平滑函数.由于速度是每100毫秒进行一次计算.为了使得速度控制更加平滑,该函数将速度输出变化量平均分配到20步5毫秒地控制周期中.5. DirectionControl:方向控制函数.根据车模采集到地左右两个电压传感器地数值计算出角度控制地量.该函数每10毫秒调用一次.6. DirectionControlOutput:方向控制函数输出平滑函数.将方向控制地输出变化量平均分配到2步5毫秒地控制周期中.7. MotorOutput:电机输出量汇集函数.根据前面地直立控制、速度控制和方向控制所得到地控制量进行叠加,分别得到左右两个电极地输出电压控制量.对叠加后地输出量进行饱和处理.函数调用周期5毫秒.在此请大家注意速度控制量叠加地极性是负.8. MotorSpeedOut:电机PWM输出计算函数.根据左右两个电极地输出控制量地正负极性,叠加上一个小地死区数值,克服车模机械静态摩擦力.函数调用周期5毫秒.9. SetMotorVoltage:PWM输出函数:根据两个电机地输出量,计算出PWM 控制寄存器地数值,设置四个PWM控制寄存器地数值.函数调用周期1毫秒.4.3中断服务程序中断服务程序用于车地角度、速度和方向控制地周期调用.5总结MCU具有体积小、重量轻、价格低廉地特点,应用于自动控制系统中可以有效降低系统地成本.针对不同地工作环境,采取相应地抗干扰措施,可以在环境恶劣地环境下可靠地运行.数据采集通道中采用A/D转换器,具有转换精度高、抗工频干扰能力强、易于实现光电隔离以及价格低廉等特点,合理确定外围元件地参数是保证数据采集精度地关键.借鉴人工控制地经验,通过大量试验得到控制PID地参数,根据设定值与检测值之间地偏差,运用PID控制,实现平滑输出,课提高系统地稳定性.参考文献[1] 张迎新.单片微型计算机原理、应用及接口技术(第2版)[M].北京:国防工业出版社,2004[2] 熊志奇.微机自动配料控制系统[J].电子技术应用,1997,(10):30-32[3] 中国电子网[4]唐介,电机与拖动(第二版)[M].北京:高等教育出版社,2007[5]阎石,数字电子技术基础(第五版)[M].北京:高等教育出版社,2005[6]胡寿松,自动控制原理(第二版)[M].北京:科学出版社,2007个人收集整理-仅供参考附录A 电路图版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.bR9C6。
两轮自平衡车控制系统的设计与实现
两轮自平衡车控制系统的设计与实现一、自平衡车系统概述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距离和速度增量使自平衡车实现实时的模式控制。
四、结论本文介绍了自平衡车控制系统的设计思想和实现步骤,通过控制平衡,实现自动平衡、自主康复和自由行走,使得自平衡车有更多的功能,在以后的应用中,自平衡车的研究和应用实际会有很大的推动作用。
飞思卡尔直立平衡智能车的制作
其中:P为比例项系数,D为微分项系数小车 Nhomakorabea速度控制
检测小车当前实际运行速度的传感 器为编码器(如右上角图片所示)。 该编码器为512线编码器,即编码 器轴每转动一圈,就会产生512个 脉冲。编码器和小车轮子通过齿轮 咬合,即车轮转动编码器轴也跟着 转动,同时产生脉冲。车轮转动得 越快,产生的脉冲也就越多。通过 主控板上的单片机捕获编码器产生 的脉冲然后计算单位时间内编码器 产生的脉冲数就可以测得小车当前 的运行速度v。
direct _ control _ out P *err D * angular
其中:P为比例项系数,D为微分项系数
对小车电机的总输出
前面分析了要想让直立小车在跑道上匀速地跑需要对小车进行三个方面的 控制,这三个方面的控制对应有三个输出,分别为直立控制输出 angle_control_out、速度控制输出V_control_out和方向控制输出 direct_control_out。这三个输出的控制目标(或控制对象)虽然不同,但是 执行机构是一样的,都是小车上的一对电机。在这里,这三个控制输出线 性地叠加在一起,合成一个总的控制输出,作用在小车电机上。叠加公式 如下:
小车的速度控制
我们要求直立小车要在跑道上匀速运动,即我们期望小车的速度是恒定的 Ve。小车的速度控制实际上就是控制小车当前的实际速度接近或者达到我 们预先设定的期望速度。这里,我们采用PID控制策略中的P(比例)I(积分) 控制来控制小车的速度。 给定一个小车的期望速度Ve,同时由编码器测得小车当前的实际速度V,小 车的期望速度与实际速度作一个比较,得到速度偏差err。其中,速度偏差 err作为PI控制中P项的输入。PID控制策略中的积分项(即I项)实际上就是 偏差的累加再乘以一个积分系数I。设integration为速度偏差err的累积结果, 则速度偏差累积结果integration作为PI控制中I项的输入。得到以下速度PI控 制的公式:
两轮自平衡智能车直立行走研究
1.1 倒立摆模型分析 本课题自主制作的两轮自平衡智能车如图 1所示。
两 轮 自 平 衡 智 能 车 型 属 于 倒 立 摆 模 型 ,在 没 有 施 加
外力的情况下,智能车在前进过程中车身无法直立。
文中从首先从动力学的角度分析了两轮自平衡
智 能 车 自 身 无 法 直 立 的 原 因 ,以 及 两 轮 自 平 衡 智 能
车 直 立 控 制 中 需 要 用 到 的 关 键 参 数 ,随 后 就 陀 螺 仪
加 速 度 计 安 装 位 置 的 不 同 ,对 智 能 车 自 平 衡 控 制 造
成 的 影 响 进 行 实 验 分 析 ,最 终 而 实 现 两 轮 自 平 衡 智
能车直立行走。 收稿日期:2016-09-13
稿件编号:201609132
Байду номын сангаас
中图分类号:TP242.6
文献标识码:A
文章编号:1674-6236(2017)22-0145-04
Research on balance control of two⁃wheeled self⁃balancing vehicle
GONG Lin⁃qiang,YANG Ping,SHEN Tao,ZHENG Hai⁃xia,ZHANG Shu⁃zhen (College of Mechano⁃Electronic Engineering,Lanzhou Univ. of Tech. ,Lanzhou 730050,China)
图 1 智能车实体
作者简介:龚林强(1990—),男,甘肃岷县人,硕士研究生。研究方向:特殊环境下的机器人开发。
-145-
《电子设计工程》2017 年第 22 期
文中以智能车车身与地面角夹角接近 90°且能 够 平 稳 前 进 的 状 态 作 为 智 能 车 平 衡 状 态 ,在 运 动 状 态下,将智能车力学模型简化为倒立摆模型,如图 2 (a)所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机控制技术课程设计成绩评定表设计课题两轮直立代步车控制器设计学院名称:电气工程学院专业班级:学生姓名:学号:指导教师:设计地点:31-503 设计时间: 2012-06-11~2011-06-15计算机控制技术课程设计课程设计名称:两轮直立代步车控制器设计专业班级:学生姓名:学号:指导教师:课程设计地点:31-503课程设计时间:2011-06-11~2011-06-15计算机控制技术课程设计任务书目录1 引言 (3)2 总体方案设计 (4)2.1硬件组成 (4)2.2整体电路框图 (4)2.3直立任务分解 (4)2.4平衡控制 (5)2.5角度和角速度测量 (5)2.4速度控制 (7)2.5方向控制 (9)3 硬件电路设计 (9)3.1 单片机及其外围电路 (9)3.2控制电路划分为如下子模块: (10)4 系统软件设计 (13)4.1 主程序设计 (13)4.2控制相关的软件函数: (14)4.3中断服务程序 (15)5总结 (15)参考文献 (15)附录A 电路图 (16)1 引言两轮自平衡电动代步车是一种两轮左右并行布置结构的具有自平衡系统的电动车。
利用倒立摆控制原理,使车体始终保持平衡。
在车体内嵌入式CPU的控制下,采集平衡传感器以及速度、加速度传感器的数据,通过建立的系统数学模型和控制算法,计算输出PWM信号,自动控制两个伺服电机的转矩,使车体保持平衡并能够根据人体重心的偏移,自动前进、后退及转弯。
2 总体方案设计2.1硬件组成按两轮自平衡电动代步车控制系统的技术要求,控制系统的硬件应包括以下几部分:(1)控制器。
作为控制系统的核心,采用S12G128单片机控制各个模块。
(2)速度检测通道。
将运动量转换为数字量,送给单片机,直接读取当前速度。
(3)控制输出通道。
控制器输出的控制信号传送给电机,控制电机的正反转和速度。
(4)加速度检测通道。
将电机角加速度转换为电信号。
(5)角度检测通道。
将系统倾角转换为电信号。
2.2整体电路框图图2.1 总体控制框图2.3直立任务分解(1)控制平衡:通过控制两个电机正反向运动保持车模直立平衡状态;(2)速度控制:通过调节车模的倾角来实现车模速度控制,实际上最后还是演变成通过控制电机的转速来实现车轮速度的控制。
(3)控制方向:通过控制两个电机之间的转动差速实现车模转向控制。
车的直立和方向控制任务都是直接通过控制车的两个后轮驱动电机完成的。
假设电机可以虚拟地拆解成两个不同功能的驱动电机,它们同轴相连,分别控制系统的直立平衡、左右方向。
在实际控制中,是将控制直立和方向的控制信号叠加在一起加载电机上,只要电机处于线性状态就可以同时完成上面两个任务。
速度是通过调节车模倾角来完成的。
不同的倾角会引起车的加减速,从而达到对于速度的控制。
2.4平衡控制重力场中使用细线悬挂着重物经过简化便形成理想化的单摆模型。
直立着的车可以看成放置在可以左右移动平台上的倒立着的单摆。
当物体离开垂直的平衡位置之后,便会受到重力与悬线的作用合力,驱动重物回复平衡位置。
这个力称之为回复力,在偏移角度很小的情况下,回复力与偏移的角度之间大小成正比,方向相反。
在此回复力作用下,单摆便进行周期运动。
在空气中运动的单摆,由于受到空气的阻尼力,单摆最终会停止在垂直平衡位置。
空气的阻尼力与单摆运动速度成正比,方向相反。
阻尼力越大,单摆越会尽快在垂直位置稳定下来。
总结单摆能够稳定在垂直位置的条件有两个:(1)受到与位移(角度)相反的恢复力;(2)受到与运动速度(角速度)相反的阻尼力。
通过类比倒立摆可得到了车直立的控制方案。
控制车模直立稳定的条件如下:(1)能够精确测量车模倾角θ的大小和角速度'θ的大小;(2)可以控制车轮的加速度。
2.5角度和角速度测量(1)加速度传感器加速度传感器可以测量由地球引力作用或者物体运动所产生的加速度。
MMA7260是一款三轴低g半导体加速度计,可以同时输出三个方向上的加速度模拟信号,通过设置可以使得MMA7260各轴信号最大输出灵敏度为800mV/g,这个信号无需要在进行放大,直接可以送到单片机进行AD转换。
只需要测量其中一个方向上的加速度值,就可以计算出倾角,比如使用Z 轴方向上的加速度信号。
车直立时,固定加速度器在Z 轴水平方向,此时输出信号为零偏电压信号。
当车发生倾斜时,重力加速度g 便会在Z 轴方向形成加速度分量,从而引起该轴输出电压变化。
变化的规律为 sin u kg kg θθ∆=≈式中,g 为重力加速度;θ为车模倾角;k 为加速度传感器灵敏度系数系数。
当倾角θ比较小的时候,输出电压的变化可以近似与倾角成正比。
(2)角速度传感器-陀螺仪陀螺仪可以用来测量物体的旋转角速度。
竞赛允许选用村田公司出品的ENC-03系列的加速度传感器。
它利用了旋转坐标系中的物体会受到科里奥利力的原理,在器件中利用压电陶瓷做成振动单元。
当旋转器件时会改变振动频率从而反映出物体旋转的角速度。
在车上安装陀螺仪,可以测量车模倾斜角速度,将角速度信号进行积分便可以得到车模的倾角。
由于陀螺仪输出的是车的角速度,不会受到车体运动的影响,因此该信号中噪声很小。
车的角度又是通过对角速度积分而得,这可进一步平滑信号,从而使得角度信号更加稳定。
因此车控制所需要的角度和角速度可以使用陀螺仪所得到的信号。
由于从陀螺仪角速度获得角度信息,需要经过积分运算。
如果角速度信号存在微小的偏差和漂移,经过积分运算之后,变化形成积累误差。
这个误差会随着时间延长逐步增加,最终导致电路饱和,无法形成正确的角度信号,为了消除这个累积误差 一种简单的方法就是通过上面的加速度传感器获得的角度信息对此进行校正。
通过对比积分所得到的角度与重力加速度所得到的角度,使用它们之间的偏差改变陀螺仪的输出,从而积分的角度逐步跟踪到加速度传感器所得到的 角度。
如图2.2所示:图2.2加速度计陀螺仪采集框图(3)双加速度传感器获得角度和角速度加速度传感器Z轴信号除了由于重力加速度引起的输出之外,还包括有车模的角加速度和移动加速度产生的信息。
在车模现有的参数基础上,这些信号在幅值、频率等方面没有太大差异,它们叠加在一起无法将它们分开。
如果在车模上另外再增加一个加速度传感器,两个加速度传感器安装的高度不同,那么就可以通过这两个信号的差值求出车模的角加速度。
通过上下两个加速度传感器输出信号相减,便可以得到车模倾角加速度。
对于这个信号进行两次积分,便可以的获得车模倾角的角速度和角度。
对于积分所可能带来的积分漂移问题仍然可以采用上面的重力加速度计补偿的方法进行消除。
可以得到如下角度控制方案框图2.3所示。
图2.3 角度控制方案框图2.4速度控制对于直立车速度的控制相对于普通车的速度控制则比较复杂。
由于在速度控制过程中需要始终保持车的平衡,因此车速度控制不能够直接通过改变电机转速来实现。
具体实现需要解决三个问题:(1)如何测量车速度?(2)如何通过车模直立控制实现车倾角的改变?(3)如何根据速度误差控制车倾角?第一个问题可以通过安装在电机输出轴上的光码盘来测量得到车的车轮速度。
利用控制单片机的计数器测量在固定时间间隔内速度脉冲信号的个数可以反映电机的转速。
第二个问题可以通过角度控制给定值来解决。
给定车直立控制的设定值,在角度控制调节下,车模将会自动维持在一个角度。
通过前面车直立控制算法可以知道,车模倾角最终是跟踪重力加速度Z轴的角度。
因此车的倾角给定值与重力加速度Z轴角度相减,便可以最终决定车的倾角。
控制框图如图2.4所示。
图2.4 倾角控制框图第三个问题介意在前两个问题的基础上增加微分控制,控制框图如图 2.5所示。
图2.5 速度闭环控制框图2.5方向控制车的方向控制可在直立和速度闭环的基础上,给电机叠加上方向电信号,实现电机差速,从而实现方向的改变。
在车模控制中的直立、速度和方向控制三个环节中,都使用了比例微分(PD)控制,这三种控制算法的输出量最终通过叠加通过电机运动来完成。
(1)车模直立控制:使用车模倾角的PD(比例、微分)控制;(2)车模速度控制:使用PD(比例、微分)控制;(3)车模方向控制:使用PD(比例、微分)控制。
3 硬件电路设计3.1 单片机及其外围电路微控制器采用S12G128。
MC9S12DG128有8KB RAM,128KB FLASH,4KB EEPROM ,8路PWM,16路8位、10位AD,8路ECT,总线频率25MHZ,串行口有2个SCI,2个SPI,3个CAN总线模块。
系统的输入输出包括:(1) AD转换接口(至少5路)方向检测:左右两路,用于测量左右两个控制器电压。
陀螺仪:两路。
一路用于检测车倾斜角速度,一路用于检测车转动角速度。
加速度计:一路,测量加速度Z轴输出电压。
辅助调试:(备用)1到3路,用于车调试、设置作用。
(2) PWM接口(4路)控制左右两个电极双方向运行。
由于采用单极性PWM驱动,需要四路PWM 接口。
如果采用双极性PWM驱动,可以使用两路。
(3)定时器接口(2路)测量两个电机转速,需要两个定时器脉冲输入端口。
(4)通讯接口(备用)SCI(UART):一路,用于程序下载和调试接口;(5) IO接口(备用)4到8路输入输出,应用车运行状态显示,功能设置等。
图3.1 单片机最小系统板外围电路3.2控制电路划分为如下子模块:DSC处理器,程序下载调试接口等;方向检测:包括两路相同的电压信号放大与检波电路如图3.3所示:图3.2 检波电路陀螺仪与加速度计:包括三个姿态传感器信号放大滤波电路;图3.3 陀螺仪与加速度计检测电路速度检测:检测电机光电码盘脉冲频率,实际上只包括了两个光电码盘的传感器;图3.4 测速电路电机驱动:驱动两个电极运行功率电路;图3.5 驱动电路图电源:电源电压转转换,稳压,滤波电路;图3.6电源模块4 系统软件设计系统软件分为主程序、中断服务程序和子程序三部分。
4.1 主程序设计程序上电运行后,便进行单片机的初始化。
初始化的工作包括有两部分,一部分是对于该程序通过读取加速度计的数值判断车模是否处于直立状态。
在通过串口发送到上位机进行监控。
同时检查车模是否跌倒。
过全局标志变量确定是否进行这些闭环控制。
单片机各个应用到的模块进行初始化。
这部分的代码由CodeWarrior集成环境的ProcessorExpert工具生成。
第二部分是应用程序初始化,是对于车模控制程序中应用到的变量值进行初始化。
初始化完成后,首先进入车模直立检测子程序。
如果一旦处于直立状态则启动车模直立控制、方向控制以及速度控制。
程序在主循环中不停发送监控数据,跌倒判断可以通过车模倾角是否超过一定范围进行确定,或者通过安装在车模前后防撞支架上的微动开关来判断。
一定车模跌倒,则停止车模运行。