飞思卡尔直立平衡智能车的制作
智能车电磁组比赛技术报告
第七届“飞思卡尔”杯全国大学生智能汽车竞赛电磁组技术报告学校:河南理工大学队伍名称:志成队参赛队员:杨宗保黄号凯毛学宇指导教师:张新良摘要本文介绍了基于MC9S12XS128控制器的直立小车的设计方案。
目的是仿照两轮自平衡电动车的行进模式,让车模以两个后轮驱动进行直立行走。
I目录第一章绪论 (7)第二章原理分析 (10)2.1直立行走任务分解 (10)2.2车模平衡控制 (10)2.2车模角度和角速度测量 (15)2.3 车模速度控制 (22)2.4 车模方向控制 (27)2.5车模直立行走控制算法总图 (29)第三章电路设计 (31)3.1 整体电路框图 (31)3.2 XS128介绍与单片机最小系统 (32)3.3 倾角传感器电路 (37)3.4 电机驱动电路 (39)3.5 速度传感器电路 (40)3.6 电磁线检测电路 (41)3.7 电源模块 (43)第四章、机械设计 (43)4.1 车模简化改装 (43)4.2 传感器安装 (46)第五章程序设计 (49)5.1 相关模块初始化 (49)II5.2 软件功能与框架 (54)5.3 主要算法及其实现 (56)5.3.1 算法框图与控制函数关系 (56)5.4 参数整定 (62)5.4.1角度参数整定 (62)5.4.2速度参数整定 (63)5.4.3补偿时间常数整定 (63)III图表索引图1- 1 电磁组规定的C车车模 (7)图1- 2 电磁组车模运行状态 (7)图1- 3 车模控制任务 (8)图1- 4 车模制作调试流程图 (9)图 2- 1保持木棒直立的反馈控制 (11)图 2- 2通过车轮运动保持车模平衡 (11)图 2- 3车模简化成倒立的单摆 (12)图 2- 4普通单摆受力分析 (12)图 2- 5在车轮上的参照系中车模受力分析 (13)图 2- 6 电机在不同电压下的速度变化线 (15)图 2- 7 加速度传感器原理 (16)图 2- 8 MMA7260三轴加速度传感器 (16)图 2- 9 车模运动引起加速度信号波动 (17)图 2- 10 车模运动引起加速度 Z轴信号变化 (18)图 2- 11 角速度传感器及参考放大电路 (19)图 2- 12 角速度积分得到角度 (19)图 2- 13 角速度积分漂移现象 (20)图 2- 14 通过重力加速度来矫正陀螺仪的角度漂移 (20)图 2- 15 角度控制框图 (21)图 2- 16电机速度检测 (22)图 2- 17车模倾角给定 (23)图 2- 18 车模倾角控制分析 (24)图 2- 19车模运动速度控制简化模型 (25)IV图 2- 20 车模角度和速度控制框图 (26)图 2- 21改进后的速度和角度控制方案 (27)图 2- 22检测道路中心电磁线方式 (28)图 2- 23车模方向控制算法 (29)图 2- 24 车模运动控制总框图 (30)图 3- 1直立车模控制电路整体框图 (32)表格1 XS128端口说明 (32)图 3- 2 XS128LQFP封装引脚图 (34)图 3- 3最小系统板(112针脚) (35)图 3- 4系统板与下载器BDM的连接图 (36)图 3- 5 V3.0系统板112原理图 (37)图 3- 6 陀螺仪加速度计模块 (38)图 3- 7 陀螺仪加速度计二合一模块实物图 (38)图 3- 8 电机驱动模块实物图 (39)图 3- 9 电机驱动原理图 (40)图 3- 10速度传感器电路 (41)图 3- 11 LM386引脚图 (42)图 3- 12 LM386典型应用电路 (42)图 3- 13 传感器电路图 (43)图 3- 14 电源模块原理图 (43)图 4- 1 完整的 C型车模底盘 (44)图 4- 2 简化后的 C型车模底盘 (44)图 4- 3 使用热熔胶固定电机支架与车模底盘 (45)图 4- 4 去掉后轮之后的车模底盘 (46)V图 4- 5使用复合胶水固定光电编码盘 (47)图 4- 6固定好的光电码盘和光电检测管 (47)图 4- 7电磁传感器支架 (48)图 4- 8 陀螺仪加速度计安装示意图 (49)图 5- 1 主程序框架 (55)图 5- 2中断服务程序 (55)图 5- 3 算法框图中与控制相关的软件函数 (56)图 5- 4 控制函数调用与参数传递关系 (57)VI7第一章 绪论本次全国大学生智能汽车竞赛电磁组要求采用飞思卡尔半导体公司的 8 位、16 位处理器(单核)作为唯一的微控制器,采用C 型车模。
两轮自平衡车控制系统的设计与实现_周牡丹
4 | T echniques of Automation & Applications两轮自平衡车控制系统的设计与实现周牡丹,康 恺,蔡普郎,黄天健(厦门大学嘉庚学院电子工程系,福建 漳州 363105)摘 要:根据飞思卡尔智能车竞赛的要求,设计了基于MC9S12XS128单片机的两轮自平衡智能车控制系统。
介绍了该智能车系统的硬件模块电路设计、控制系统的构成及核心控制算法的实现。
在此基础上详细介绍了用于智能车直立控制、速度控制和方向控制的参数调试时简单易行的关键技术。
经过反复多次的实验表明,本文设计的两轮自平衡车控制系统性能可靠,在车身保持直立平衡的同时能够沿着赛道快速平稳运行.关键词:两轮自平衡车;PID控制;CCD路径检测;直立控制中图分类号:TP273 文献标识码:B 文章编号:1003-7241(2014)10-0004-05Design and Implementation of Two-WheeledSelf-Balancing Vehicle Control SystemZHOU Mu-dan, KANG Kai, CAI Pu-lang, HUANG Tian-jian( Dept.of Electronic Engineering, TKK College, Xiamen University, Zhangzhou 363105 China )Abstract: For Freescale smart car contest requirements, a two-wheeled self-balancing intelligent vehicle control system based onMC9S12XS128 is designed. This article introduces the design of the hardware module circuit, the structure of control system, and the implementation of the core control algorithm about the vehicle. The key technologies for debugging the upright control, speed control and direction control of the intelligent vehicle are also discussed in the paper. After repeated experiments , it shows that the design of the two-wheeled self-balancing vehicle control system is feasible and reliable. The vehicle can run quickly and smoothly along with the track while maintaining upright balance.Key words: two-wheeled self-balancing vehicle; PID control; CCD path detection; upright control收稿日期:2014-05-201 引言近年来,两轮自平衡电动车以其绿色节能、灵活便捷等优点而得到很大的发展。
基于MFC的飞思卡尔智能车上位机设计
基于MFC的飞思卡尔智能车上位机设计众所周知,上位机在智能车调试中起着重要作用,尤其是通过无线串口,实现数据实时发送接收,极大方便了智能车调试。
作者以VC6.0为平台使用微软MFC,简单介绍串口上位机设计,抛砖引玉。
STEP1.新建MFC工程STEP2.加入串口类VC6.0进行串口开发主要有两种方式,一种是利用微软控件MScomm,一种是利用开源类CSerialPort。
但是前者编译生成的程序在其他电脑上运行还要注册控件,略显麻烦。
而后者属于对windows API封装,使用方便,兼容性强。
本文重点介绍CSerialPort的使用。
在/serialport.html下载最新CSerialPort类,工程中添加.h 和.cpp文件,如下图。
在serialDlg.cpp和serialDlg.h中包含Cserialport头文件同时在serialDlg.h中定义对象CSerialPort m_SerialPort; //CSerailPort类对象STEP3. Cserialport必备函数STEP4.窗口布局设置成员变量(Ctrl+W ),四个编辑框对应四个UNIT成员变量STEP5.串口初始化OK,所有前期工作准备完成,开始串口操作按钮“打开串口”,双击,创建消息函数void CSerialDlg::OnOpenserial() 实现串口初始化,代码如下按钮“关闭串口”,双击,创建消息函数void CSerialDlg::OnCloseserial() 函数功能为进行串口初始化,代码如下STEP6.串口数据发送按钮“发送”,双击,创建消息函数,代码如下STEP7.串口数据接收手工建立WM_COMM_RXCHAR的消息映射处理函数OnComm() 首先在serialDlg.h中添加响应函数声明在serialDlg.cpp中添加消息响应At last,VC串口通讯程序基本功能,打开串口,关闭串口,接收数据,发送数据均以完成。
自制两轮平衡车
制作:朱兆丰
控制器:ATmega16;8MHz; 加速度传感器:MMA2260;陀螺仪: EWTS82; 传感器的融合:卡尔曼滤波; 马达:EN_2342CR(速比64)+双路12脉 冲编码器+CD40106对信号整形; 驱动板芯片:CD4001+IR2111+IRF1404 (驱动电流可以很大); 制作资料在压缩包里面,供参考;
accelgyro.initialize(); delay(500); pinMode(22,OUTPUT); pinMode(23,OUTPUT); pinMode(24,OUTPUT); pinMode(25,OUTPUT); pinMode(2,OUTPUT); pinMode(3,OUTPUT);
/********** 互补滤波器参数 *********/ //unsigned long preTime = 0; // 采样时间 //float f_angle = 0.0; // 滤波处理后的角度值
*********** PID控制器参数 *********/ //unsigned long lastTime; float Output; //;, Setpoint,Input; //double errSum, lastErr; float kp, ki, kd,kpp; //int SampleTime = 0.1; //1 sec //float Outputa = 0.0; float angleA,omega; //double Kp, Ki, Kd; float P[2][2] = {{ 1, 0 },{ 0, 1 }}; float Pdot[4] ={ 0,0,0,0}; static const double Q_angle=0.001, Q_gyro=0.003, R_angle=0.5,dtt=0.007,C_0 = 1; float q_bias, angle_err, PCt_0, PCt_1, E, K_0, K_1, t_0, t_1; float angle, angle_dot; // aaxdot,aax; float position_dot,position_dot_filter,positiono; //double Speed_Need=0; //float K_angle=2; //float K_angle_dot=0.5; //float K_position=0.1; 256对应10V; //float K_position_dot=1;
两轮自平衡小车控制系统的设计
两轮自平衡小车控制系统的设计摘要:介绍了两轮自平衡小车控制系统的设计与实现,系统以飞思卡尔公司的16位微控制器MC9S12XS128MAL作为核心控制单元,利用加速度传感器MMA7361测量重力加速度的分量,即小车的实时倾角,以及利用陀螺仪ENC-03MB测量小车的实时角速度,并利用光电编码器采集小车的前进速度,实现了小车的平衡和速度控制。
在小车可以保持两轮自平衡前提下,采用摄像头CCD-TSL1401作为路径识别传感器,实时采集赛道信息,并通过左右轮差速控制转弯,使小车始终沿着赛道中线运行。
实验表明,该控制系统能较好地控制小车平衡快速地跟随跑道运行,具有一定的实用性。
关键词:控制;自平衡;实时性近年来,随着经济的不断发展和城市人口的日益增长,城市交通阻塞以及耗能、污染问题成为了一个困扰人们的心病。
新型交通工具的诞生显得尤为重要,两轮自平衡小车应运而生,其以行走灵活、便利、节能等特点得到了很大的发展。
但是,昂贵的成本还是令人望而止步,成为它暂时无法广泛推广的一个重要原因。
因此,开展对两轮自平衡车的深入研究,不仅对改善平衡车的性价比有着重要意义,同时也对提高我国在该领域的科研水平、扩展机器人的应用背景等具有重要的理论及现实意义。
全国大学生飞思卡尔智能车竞赛与时俱进,第七届电磁组小车首次采用了两轮小车,模拟两轮自平衡电动智能车的运行机理。
在此基础上,第八届光电组小车再次采用两轮小车作为控制系统的载体。
小车设计内容涵盖了控制、模式识别、传感技术、汽车电子、电气、计算机、机械及能源等多个学科的知识。
1 小车控制系统总体方案小车以16位单片机MC9S12XS128MAL作为中央控制单元,用陀螺仪和加速度传感器分别检测小车的加速度和倾斜角度[1],以线性CCD采集小车行走时的赛道信息,最终通过三者的数据融合,作为直流电机的输入量,从而驱动直流电机的差速运转,实现小车的自动循轨功能。
同时,为了更方便、及时地观察小车行走时数据的变化,并且对数据作出正确的处理,本系统调试时需要无线模块和上位机的配合。
智能直立循迹小车的控制方案
赵继 强
摘要 本 系统采 用 飞思卡 尔M C 9 S 1 2 G 1 2 8 M L L 单 片机 为控制核 心 ,控制 小车直立 循迹 行驶 。通过调 节P W M 输 出分别单独控 制左 右两个 车轮 电机 ,利 用加速度 传感 器、 陀螺仪 以及 红外光 电传 感器的检 测 信号反馈给 单片机 ,通过运算输 出控 制 小车按 照预 定路 线直 立行驶 。实验表 明 ,本 系统结构 简单 ,在一 定程度 上 体现 了小车智能化运作 ,具有较好的 鲁棒 性 。 关键词
化。
2 理论分 析
2 . 1车 模平 衡控 制
通过负反馈 ,可以实现车模的平衡控制。因为车模两 轮 着 地 ,车 体 只会 在 轮子 滚 动 的方 向上 发 生倾 斜 。因此 通 过 控 制 电机 带 动轮 子 转 动 ,抵 消在 一个 方 向上 倾 斜 的趋 势
便 可 以保 持车 体 的平衡 。 倒 立摆 之 所 以不 能 像单 摆 一样 可以 稳 定在 垂直 位 置 , 就 是 因 为在 它偏 离 平 衡位 置 时 ,所 受到 的 回复力 与位 移 方 向相 同 。 因此 ,倒 立 摆 便 会 加 速 偏 离 垂 直 位 置 ,直 至 倒
中 国科 技信 息 2 0 1 3年 第 2 O期 ’ C HI N A S C I E N C E AN D T E C H N OL O G Y I N F OR MA T I ON O c t . 2 0 1 3
信 息 科 技
智 能直立循迹 小车 的控制方案
赵继强 陈建国 林荣群
当前车 模 方 向 。同时 检 查车 模是 否 跌 倒 ,跌倒 判 断可 以通
3系统程序设计
“飞思卡尔”智能汽车系统设计
作为最为普遍的交通工具之一 , 汽车与人们的生活息息相关。 一旦智能汽 车得到普及势必会走向量产化, 而在智能汽车普及之前应该制定出相关的设计 标准作为智能汽车的标杆。 智能汽车系统所包含的内容甚多, 如信息控制、 系统 结构、 数据采集、 系统数据库等方面都属于智能汽车系统所涵盖的范畴, 如果没 有统一的标尺, 则会让各个模块之间出现很大的差异化, 这样就会带来一系列 的问 题, 同时也会让智能汽车的构建变得繁琐、 复杂。 通过制定出 统一的标准 , 让系统兼容性得以保证的同时让整个智能汽车系统设计更加规范, 从而带动智 能汽车产业的发展[ 1 】 。
1 . 2 控制模 块
控制系统是智能汽车系统重要的组成部分 , 是实现人机交互的关键。 从当 前的汽车控制来看还是不能离开人工操作 , 只有在驾驶员存在的情况下才能保 证汽车的正常工作。 在驾驶的过程中, 如果时间较长则会给驾驶员带来极大的 疲劳感, 这样就 间接带来了交通事故隐患。 而在智能化汽车将能够摆脱人工操
科 学论 坛
l 蕾
C h i n a s c i e n c e a n d T e c h n o ] o g y R e v i e w
“ 飞 思卡 尔 ” 智能 汽 车 系统 设 计
王贯 安
( 中南大学 湖南 长沙 4 1 0 0 1 2 )
[ 摘 要] 随着 科 技的进 步 , 汽 车产 业也 发生 了翻天 覆地 的变 化 。 在计 算机 技术 、 网络技术 、 电子 技术等 高端 技术 的推动 下 , 智 能汽车 得到 了实 现 , 相信 随着 时 间的推移 。 智能汽车也将有着更加广阔的发展空间。 要让汽车实现智能化, 智能系统设计是十分重要的一个环节。 本文对智能汽车系统进行了综合性的阐述 , 并以 “ 飞思卡尔智” 能汽车比赛对智能汽车系统设计进行了探讨。 [ 关键 词] 飞思 卡 尔 智 能 汽车 系统 设计 中图分类号 : D4 1 2 . 3 文献标识码 : A 文章编号 : 1 0 0 9 - 9 1 4 X ( 2 0 1 4 ) 0 1 —0 2 2 4 一 O 1
第七届全国大学生“飞思卡尔”杯智能汽车竞赛电磁组直立行车参考设计方案(版本2.0)官方方案2.0
第七届全国大学生“飞思卡尔”杯智能汽车竞赛电磁组直立行车参考设计方案(版本2.0)目 录目录 (2)图表索引 (3)一、前言 (7)二、原理篇 (9)2.1直立行走任务分解 (9)2.2车模直立控制 (11)2.3 车模角度和角速度测量 (19)2.3车模速度控制 (26)2.4车模方向控制 (33)2.6车模直立行走控制算法总图 (36)三、电路设计篇 (37)3.1整体电路框图 (37)3.2 DSC介绍与单片机最小系统 (39)3.3倾角传感器电路 (42)3.4电机驱动电路 (44)3.5速度传感器电路 (45)3.6电磁线检测电路 (46)3.7 角度计算电路 (50)3.8 车模控制电路全图 (55)四、机械设计篇 (57)4.1车模简化改装 (57)4.2传感器安装 (59)4.3注意事项 (63)五、软件开发篇 (64)5.1软件功能与框架 (65)5.2 DSC的硬件资源配置 (68)5.3主要算法及其实现 (69)六、车模调试篇 (82)6.1 调试参数 (82)6.2调试条件 (85)6.3 桌面静态参数调试 (91)6.4 现场动态参数调试 (101)6.5 方案改进与车模整体水平提高 (101)七、结束语 (102)附录: (103)图表索引第一章图1- 1 电磁组车模直立运行模式 (7)图1- 2参考设计方案内容 (8)图1- 3 车模制作路线图 (9)第二章图2- 1 车模控制任务分解 (10)图2- 2 车模倾角会引起车速速度变化 (10)图2- 3 三层控制之间相互配合 (11)图2- 4 保持木棒直立的反馈控制 (12)图2- 5 通过车轮运动保持车模直立 (12)图2- 6 车模简化成倒立的单摆 (13)图2- 7 普通单摆受力分析 (13)图2- 8 不同阻尼力下的单摆运动 (14)图2- 9 在车轮上的参照系中车模受力分析 (14)图2- 10 车模控制两个系数作用 (16)图2- 11 车模运动方程 (16)图2- 12 加入比例微分反馈后的系统框图 (17)图2- 13 电机在不同电压下的速度变化曲线 (18)图2- 14 加速度传感器原理 (19)图2- 15 MMA7260三轴加速度传感器 (20)图2- 16 车模运动引起加速度信号波动 (21)图2- 17 实际测量MMA7260Z轴信号 (21)图2- 18 车模运动引起加速度Z轴信号变化 (22)图2- 19角速度传感器及参考放大电路 (22)图2- 20 角速度积分得到角度 (23)图2- 21 角速度积分漂移现象 (23)图2- 22 通过重力加速度来矫正陀螺仪的角度漂移 (24)图2- 23 双加速度传感器获得车模角加速度 (25)图2- 24 角度控制框图 (25)图2- 25 电机速度检测 (26)图2- 26 车模倾角给定 (27)图2- 27 车模倾角控制速度中的正反馈 (28)图2- 28 车模倾角控制分析 (29)图2- 29 车模运动速度控制简化模型 (29)图2- 30 增加微分控制后的系统 (30)图2- 31 改进的微分控制 (30)图2- 32 车模角度和速度控制框图 (31)图2- 33 速度角度控制方案的改进 (32)图2- 34 改进后的速度和角度控制方案 (32)图2- 35 检测道路中心电磁线方式 (33)图2- 36 通过电机驱动电压的差动控制控制车模方向 (34)图2- 37 检测车模转动速度的陀螺仪 (34)图2- 38 电感线圈的偏角影响感应电动势 (35)图2- 39 车模方向控制算法 (35)图2- 40 车模运动控制总框图 (36)第三章图3- 1 直立车模控制电路整体框图 (39)图3- 2 56F8013内部资源示意图 (40)图3- 3 F8013最小系统电路 (41)图3- 4 F8013最小系统电路实物 (42)图3- 5 陀螺仪、加速度传感器电路 (43)图3- 6 车模倾角传感器电路实物图 (43)图3- 7 双电机驱动电路 (44)图3- 8单极性PWM、双极性PWM (45)图3- 9 两片33886组成的电机驱动电路 (45)图3- 10 速度传感器电路 (46)图3- 11 基于三极管的电磁信号放大检波电路 (47)图3- 12 基于三极管的电磁放大检波电路实物图 (48)图3- 13 使用R-R运放进行电磁信号放大检波 (49)图3- 14 LMV358放大检波输出波形 (49)图3- 15 基于LMV358放大检波电路实物图 (50)图3- 16 双加速度测量角速度电路 (51)图3- 17 双加速度计测量角度波形图 (51)图3- 18 简化角速度电路 (52)图3- 19 实测车模角速度信号波形 (52)图3- 20 角度信号处理电路 (53)图3- 21 不同角速度比例情况下输出波形 (53)图3- 22 角度计算环节的传递函数 (54)图3- 23 一个运算放大器实现角度计算 (54)图3- 24 不同P1阻值对应的输出波形 (55)图3- 25 简化的角度和角速度处理电路 (55)图3- 26 车模控制电路全图 (56)第四章图4- 1 完整的C型车模底盘 (57)图4- 2 简化后的C型车模底盘 (57)图4- 3 使用热熔胶固定电机支架与车模底盘 (58)图4- 4 去掉后轮之后的车模底盘 (58)图4- 5 电机引线转接板 (59)图4- 6 使用复合胶水固定光电编码盘 (59)图4- 7 固定好的光电码盘和光电检测管 (60)图4- 8 电磁传感器支架 (61)图4- 9 车模组装全图 (64)第五章图5- 1 主程序框架 (65)图5- 2 中断服务程序 (66)图5- 3 任务中断时间波形 (67)图5- 4 算法框图中与控制相关的软件函数 (70)图5- 5 控制函数调用与参数传递关系 (71)图5- 6 程序中变量命名规范 (72)图5- 7 电机死区补偿 (78)第六章图6- 1 调试车模参数复杂而关键 (82)图6- 2 需要调整的参数和相关的单位 (84)图6- 3 车模运动坐标定义 (85)图6- 4 电源检查 (86)图6- 5 单片机串口通信 (86)图6- 6 PWM信号输出 (87)图6- 7 采集电机光电码盘信号 (87)图6- 8 陀螺仪、加速度传感器AD采集信号 (88)图6- 9 车模静态参数调整桌面 (88)图6- 10车模动态参数调试场地 (89)图6- 11 监控软件界面 (89)图6- 12 无线遥控开关 (90)图6- 13 无线通信模块进行参数监控 (90)图6- 14 F8013内部FLASH应用划分 (91)图6- 15 需要整定的传感器参数 (91)图6- 16 车模保持垂直静止 (92)图6- 17 测量加速度传感器的极值 (92)图6- 18测量陀螺传感器比例因子,角度补偿回路断开 (93)图6- 19 几种不同陀螺仪比例因子角度输出 (94)图6- 20 车模控制参数 (95)图6- 21 角度参数调整过程 (96)图6- 22 速度参数调整过程 (97)图6- 23 方向参数调整过程 (98)图6- 24 角度补偿时间常数调整 (99)图6- 25 Z轴附加信号分析 (100)图6- 26 死区常数调整 (100)附录图7- 1 参考设计方案视频截图 (103)图7- 2 参数整定与调试指南 (104)图7- 3 软件控制算法全图 (106)图7- 4 参考方案电路全图 (107)第一章、前言为了提高全国大学生智能汽车竞赛创新性和趣味性,激发高校学生参与比赛的兴趣,提高学生的动手能力、创新能力和接受挑战能力,智能汽车竞赛组委会将电磁组比赛规定为车模直立行走,如图1- 1所示。
两轮自平衡小车毕业设计!!_修改
自平衡小车设计摘要这些年来,两轮自平衡车的应用获得了十分快速的应用和发展。
本文提出了一种两轮的自平衡小车的设计,采用陀螺仪ENC-03以及MEMS加速度传感器MMA7260构成小车姿态检测装置,使用卡尔曼滤波完成陀螺仪数据与加速度计数据的数据融合。
系统选用飞思卡尔16位单片机MC9S12XS128为控制核心,完成了传感器信号的处理,滤波算法的实现及车身控制,人机交互等。
整个系统在制作完成后,各个模块之间能够协调工作,小车也可以在无人干预的条件下达到自主平衡。
同时在引入适量的干扰情况下小车也能够自主调整状态并迅速恢复稳定的状态。
小车可以被控制实现前进、后退、左右转向等动作。
关键词:自平衡stm32 姿态滤波IDesign of Self-Balance VehicleAbstractIn recent years, the application of two wheeled self balancing vehicle has been very rapid application and development. In this paper, we propose a two rounds of self balance car design, car attitude detection device by gyroscope enc-03 and MEMS accelerometer MMA7260 and Kalman filtering is used to complete data of a gyroscope and accelerometer meter data fusion. The system selects the flying thought Carle 16 bit single chip microcomputer MC9S12XS128 as the control core, completed the sensor signal processing, the filter algorithm realization and the vehicle body control, human computer interaction and so on.After the completion of the entire system, the various modules can work in coordination, the car can also be under the conditions of unmanned intervention to achieve self balancing. At the same time in the introduction of the amount of interference in the case of the car can also adjust the state and quickly return to a stable state. The car can be controlled to achieve forward, backward, left and right steering and so on.Key Words: Two-Wheel Self-Balance; Gyroscope; Gesture detection; Kalman filter; Data fusionII目录1.绪论 (1)1.1研究背景与意义 (1)1.3本文主要研究目标与内容 (1)1.4论文章节安排 (2)2.系统原理分析 (3)2.1控制系统要求分析 (3)2.2平衡控制原理分析 (3)2.3自平衡小车数学模型 (4)2.3.1两轮自平衡小车受力分析 (4)2.3.2自平衡小车运动微分方程 (7)2.4 PID控制器设计 (8)2.4.1 PID控制器原理 (8)2.4.2 PID控制器设计 (9)2.5姿态检测系统 (10)2.5.1陀螺仪 (10)2.5.2加速度计 (11)2.5.3基于卡尔曼滤波的数据融合 (12)2.6本章小结 (14)3.系统硬件电路设计 (15)3.1 MC9SXS128单片机介绍 (15)3.2单片机最小系统设计 (17)3.3 电源管理模块设计 (19)3.4倾角传感器信号调理电路 (20)3.4.1加速度计电路设计 (20)3.4.2陀螺仪放大电路设计 (20)3.5电机驱动电路设计 (21)3.5.1驱动芯片介绍 (22)3.5.2 驱动电路设计 (22)III3.6速度检测模块设计 (23)3.6.1编码器介绍 (23)3.6.2 编码器电路设计 (24)3.7辅助调试电路 (25)3.8本章小结 (25)4.系统软件设计 (26)4.1软件系统总体结构 (26)4.2单片机初始化软件设计 (26)4.2.1锁相环初始化 (26)4.2.2模数转换模块(ATD)初始化 (27)4.2.3串行通信模块(SCI)初始化设置 (28)4.2.4测速模块初始化 (29)4.2.5 PWM模块初始化 (30)4.3姿态检测系统软件设计 (30)4.3.1陀螺仪与加速度计输出值转换 (30)4.3.2卡尔曼滤波器的软件实现 (32)4.4平衡PID控制软件实现 (34)4.5两轮自平衡车的运动控制 (35)4.6本章小结 (37)5. 系统调试 (38)5.1系统调试工具 (38)5.2系统硬件电路调试 (38)5.3姿态检测系统调试 (39)5.4控制系统PID参数整定 (41)5.5两轮自平衡小车动态调试 (42)5.6本章小结 (43)6. 总结与展望 (44)6.1 总结 (44)6.2 展望 (44)参考文献 (45)IV附录 (46)附录一系统电路原理图 (46)附录二系统核心源代码 (47)致谢 (50)V常熟理工学院毕业设计(论文)1.绪论1.1研究背景与意义近应用意义。
智能车内部资料—直立控制篇
智能车内部资料—直⽴控制篇智能车内部资料—直⽴控制篇注:不要将思维局限于以下的资料,任何⽅案都要进⾏辨证,以下资料仅限于参考。
关于智能车的直⽴控制,最早源于第七届电磁车,在看本篇之前,请参看《电磁组直⽴⾏车参考设计⽅案2.0》和《电磁组直⽴车模调试指南》,有不懂之处,需要多看⼏次技术⽂档,并且利⽤好⽹络的资源,百度、智能车论坛、CSDN(需要淘宝购买积分)、PUDN这⼏个⽹站是制作智能车的好助⼿,可以搜集的⼏乎所有做车过程中遇到的问题及资料,值得⼀提的是,要时刻与智能车论坛保持联系,不懂的问题可以在上⾯发问,只要不是太幼稚的问题,都会得到很多⼈的解答,这样可以认识很多⼈,要和论坛的⼀些⼤神保持联系,定期询问进度(加QQ,要电话号码…),在做车过程中,发现东北赛区的同学⽐较热情,乐于分享。
好了,废话不多说了。
⼀:AD采集关于直⽴控制,需要⽤到陀螺仪和加速度计,通过与⽹友的交流,发现使⽤模拟模块⽐数字模块的要多,很多⽹友反映IIC通信占⽤时间⽐较长,⽽直⽴控制对时间要求⽐较苛刻,因此在本届⽐赛中我们使⽤的是模拟模块(学弟学妹们可以尝试⽐较⼀下优缺点,毕竟那个enc-03的陀螺仪确实很渣),事实上AD读取花费的时间也不少,AD_ACC_Z=ad_ave(ADC1,AD13,ADC_12bit,6);//加速度AD_GYRO =ad_ave(ADC1,AD15,ADC_12bit,4); //陀螺仪以分别读取6次和4次来说,⼤约44us,若分别读取10和10次,⼤约80us,若分别读取3和3次,⼤约28us (关于时间测量,在后⾯的⽂档中将会提及)。
⼆:滤波融合AD读取完成后,需要对两者(即加速度计和陀螺仪)的信号进⾏滤波、融合,关于滤波⽅法⼤致分为清华⽅案、互补滤波、卡尔曼滤波,以上3种⽅案共4种⽅法经过筛选,最终选择了清华⽅案,以下将介绍这⼏种⽅法。
1、清华⽅案,具体原理看《电磁组直⽴⾏车参考设计⽅案2.0》。
飞思卡尔直立车经验总结范文(2篇)
飞思卡尔直立车经验总结范文脚踏实地艰苦风斗我有幸能够参加____年全国点学生飞思____智能车竞赛,在这次竞赛中我们学到了很多,有专业方面的知识,比如单片机,各类传感器,不同芯片间的通信等等,也学会了一些书本上没有的东西,比如团队合作,如何网上购买到好的元器件,如何布局pcb板上各个元器件的位置等。
为了这次比赛,学校提前好久就开始准备了。
只是我们的课程比较多,平时去实验室的机会不是很多,为此我们也很伤脑筋。
终于等到寒假了,我们几个全身心的投入到这次比赛的准备中。
每天早上起来买点早餐就直奔实验室,白天动手做下硬件,晚上回到宿舍在就看下理论,联系编程。
这样的日子我们一点都没有感觉到累,每天都希望自己会学到更懂得东西,好似饿了许久的动物,得到了食物一般。
每天感觉都那么充实,想想大学里前两年学到的东西还没有那个寒假学到的东西多。
寒假里我们把历届的技术报告都看了看,这期间学到不少东西,尤其是对各类元器件的认识及使用。
真是受益匪浅。
接下来就是一些以前失败的经验,希望能有所参考。
比赛前在不注重实际赛道和自己练习赛道的区别,赛道一变,以前调试的结果都将无效。
所以,谨记一点,一定要吧硬件做好,比赛前一定好好利用好试车时间,多注意自己的赛道和比赛的赛道的区别,注意摩擦程度,光线的亮暗,空气的潮湿程度等。
其次是传感器的____,这次我们选用的是激光做传感器。
这个传感器相比其它传感器有很多优点,比光电的射的远,而且稳定性高,但是激光的很贵,所以提前一定要看好电路图,____一定要够稳固,不然后期传感器坏起来就头疼了。
我们以前有好多关键时刻传感器出问题失败的例子,不胜枚举,经验惨痛。
如果____不好,系统不够稳定,导致在比赛失败,而且平时调试浪费了好多宝贵的调试时间。
这一点,谨记,硬件固定一定要牢固。
其次是装配,各个模块间的连接线固定不牢靠。
使得导线接触不良,导致小车参赛时好几次冲出跑道(其中一个传感器的输入信号接触不良造成的)。
飞思卡尔直立车
随着社会的快速发展,人们的生活质量在不断的提高,夜晚出行是人们生活当中的一部分,天黑以后,道路两边的路灯开启,这给人们出行带来很大的方便。但是,如果路上没有行人或者车子,路灯依然开启,这就会造成不必要的浪费。
基于上述情况,我打算以51单片机为主控制器,设计一个智能路灯控制系统。以达到节能并且智能控制的目的。本设计采用声音传感器和光照传感器来实现声响和光照强度的采集,以AT89S52单片机作为主要的控制器,来实现路灯的智能控制。整个设计以节能为主要特色。
LM393电压比较器是集成运放的非线性应用电路,广泛的应用在各种各样的电子设备之中,他的原理是将一个模拟量电压信号和一个参考电压信号进行比较,在二者幅度相等的附近,输出电压将产生跃变,响应输出高电平或者低电平,比较器可以应用于非正弦波波形的电路或者应用于模拟与数字信号进行相互转换的地方,由此,我们可以知道,光敏电阻通过采集,得到的信号是模拟信号,可以通过LM393电压比较器将其转换为干净的数字信号,这样就使得输出的信号更干净,使得单片机检测到的信号更好。
2.5本章小结
本章分别对光照传感器检测电路,声音传感器检测电路的方案进行了设计和选择,并且简单的进行了可行性分析。
第3章
3.1
3.1.1
电路图原理图部分
原理图实现的原理分析
光敏电阻对周围环境亮度的变化感应非常的敏感,可以用来检测周围环境光线亮度的变化。光照越强,电阻越小,通过的电流越大。
当有光线照在光敏电阻上时,光照越强,光敏电阻的阻值越小,这就会导致比较器输入正极的电压随之变化,当比较器输入负极电压小于输入正极电压时,比较器输出低电平,此时信号灯亮,证明光照强度很高。单片机检测到低电平时,会触发外入中断,进行相应的操作。反之,当光照弱时,光敏电阻的阻值非常大,使得比较器的输入负极电压高于输入正极电压,比较器输出高电平,状态指示灯不亮,单片机检测到高电平,不能够触发中断。
关于直立平衡和智能循迹的小车控制系统结构设计
关于直立平衡和智能循迹的小车控制系统结构设计第一章引言1.1 智能车的发展历史智能车的研究始于20世纪50年代初美国 Barrett Electric 公司开发出的世界上第一台自动引导车辆系统(Automated Guided Vehicle System,AGVS)。
1974年,瑞典的Volvo Kalmar轿车装配工厂与Schiinder-Digitron公司合作,研制出一种可装载轿车车体的AGVS,并由多台该种AGVS组成了汽车装配线,从而取消了传统应用的拖车及叉车等运输工具。
20世纪80年代,伴随着与机器人技术密集相关的计算机、电子通信技术的飞速发展,国外掀起智能机器人研究热潮,其中各种具有广泛应用前景和军用价值的移动式机器人受到西方各国的普遍关注。
全国大学生智能汽车竞赛是在统一汽车模型平台上,使用飞思卡尔半导体公司的8位、16位微控制器作为核心控制模块,通过增加道路传感器、设计电机驱动电路、编写相应软件以及装配模型车,制作一个能够自主识别道路的模型汽车,按照规定路线行进,以完成时间最短者为优胜。
该竞赛涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的大学生课外科技创意性比赛。
1.2 智能车竞赛内容和主要研究全国大学生智能汽车竞赛已经成功举办了七届,比赛规模不断扩大、比赛成绩不断提高。
该竞赛涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的大学生课外科技创意性比赛。
通过比赛培养大学生的综合知识运用能力、基本工程实践能力和创新意识,激发大学生从事科学研究与探索的兴趣和潜能,倡导理论联系实际、求真务实的学风和团队协作的人文精神。
赛车采用飞思卡尔32位微控制器MK60作为核心控制单元,由学生自主构思控制方案及系统设计,包括传感器信号采集处理、控制算法及执行、动力电机驱动、直立转向控制等,完成智能车工程制作及调试。
为完成本系统,主要做得内容分为以下几部分:(1)对车模机械部分进行详细的分析和调整;(2)分析控制电路各模块的要求,计算出各模块器件的参数,设计完成硬件控制电路;(3)通过CCD传感器采集赛道信息;(4)对数据进行分析,设计控制算法并编写控制程序。
(完整word版)飞思卡尔智能车技术报告
集成化的设计思路的好处是原件密度高,系统可以小型化一体化,通过综合考虑各方面因素,在确定了系统最终硬件方案不做大的更改的情况下,在确保了系统可靠性的前提下,最终选择了一体化,集成化的硬件设计思路。使车体硬件电路布局紧凑,稳定可靠。
3、大前瞻,高分辨率方案。
在光电传感器的安装不影响赛车行驶的前提下,尽可能的提高传感器前瞻,更大的前瞻,能为赛车提供更多的信息,更能让赛车提前作出决策。
3.5.2主销内倾角
主销内倾角是指主销在汽车的横向平面内向倾斜一个角度,即主销轴线与地面垂直线在汽车横向断面内的夹角。主销内倾角也有使车轮自动回正的作用。通常汽车主销内倾角不大于80。
2.5.3前轮外倾角
通过车轮中心的汽车横向平面与车轮平面的交线与地面垂线之间的夹角称为“前轮外倾角”。轮胎呈现“八”字形张开时称为“负外倾”,而呈现“V”字形张开时称为“正外倾”。一般前轮外倾角为10左右。
4.5速度检测模块
为了使车在跑的过程中能快速加速,及时减速除了要有好的算法来控制,还依赖于速度闭环返回的速度脉冲值的可靠度和精确度,因此为了提高检测精度,最后选用了精度较高的光电编码器,光电编码器使用5V-24V电源,输出12.5%-85%VCC的方波信号。
9.2存在的不足
9.3可改进的方法
第十章参考文献
第一章引言
1.1方案介绍
系统硬件设计可以说是整个智能车设计的基础和重中之重。正确的硬件设计方向与思路,是系统稳定可靠的基础,功能强大的硬件系统,更为软件系统的发挥提供了强大的平台。、
1、整车低重心设计。
通过以往几届比赛的经验我们看到,往往重心低,体积小巧,布局紧凑的赛车更能取得好的成绩。、于是,我们通过合理布局电路板和各种传感器,尽可能地降低整车重心。在不影响传感器前瞻,或者不过度牺牲传感器性能的情况下,尽量降低光电传感器的高度,以提高赛车的侧翻极限。
飞思卡尔智能车竞赛设计方案
飞思卡尔智能车竞赛设计方案清晨的阳光透过窗帘,洒在书桌上那厚厚一摞方案草稿上。
我泡了杯咖啡,打开电脑,准备着手写这个“飞思卡尔智能车竞赛设计方案”。
10年的方案写作经验告诉我,这是一个充满挑战的任务,但也是展示自己才华的舞台。
一、项目背景飞思卡尔智能车竞赛是一场针对大学生的科技竞赛,旨在培养创新精神和实践能力。
参赛队伍需要设计一款智能车,通过传感器、控制器、执行器等部件,使车辆在规定的赛道上自主行驶,完成各种任务。
这场比赛既考验技术,也考验团队协作。
二、设计方案1.车辆整体设计车辆整体设计要兼顾美观、实用和稳定性。
外观上,我们采用流线型设计,减少空气阻力;内部结构紧凑,降低重心,提高稳定性。
车辆尺寸符合比赛规定,确保在赛道上行驶自如。
2.传感器配置(1)激光雷达:用于实时获取车辆周围环境信息,绘制三维地图。
(2)摄像头:用于识别赛道标志、障碍物等。
(3)超声波传感器:用于检测前方障碍物距离,避免碰撞。
(4)红外传感器:用于检测赛道边缘,防止车辆出轨。
3.控制器设计(1)路径规划:根据传感器信息,实时规划车辆行驶路径。
(2)速度控制:根据赛道状况,调整车速,确保稳定行驶。
(3)避障策略:当检测到前方有障碍物时,及时调整行驶方向。
4.执行器设计(1)电机驱动:驱动车辆前进、后退、转向。
(2)舵机:用于调整摄像头角度,获取更多赛道信息。
(3)电磁阀:用于控制车辆制动。
三、团队协作一个优秀的团队是项目成功的关键。
我们团队成员各司其职,密切配合:1.项目经理:负责整体进度把控,协调各方资源。
2.硬件工程师:负责车辆整体设计和传感器、执行器选型。
3.软件工程师:负责控制器设计和程序编写。
4.测试工程师:负责车辆调试和性能测试。
四、项目实施1.初期准备:收集比赛相关信息,了解赛道状况,确定设计方案。
2.设计阶段:根据设计方案,绘制图纸,选型采购。
3.制作阶段:组装车辆,调试传感器、控制器和执行器。
4.测试阶段:进行多次试验,优化控制策略,提高车辆性能。
电磁直立循迹智能汽车毕业论文
摘要本文详细叙述了对两轮电磁寻迹直立智能车的运动控制设计过程。
随着科技技术迅猛发展和生活水平的提高,人们对于汽车的安全性、方便性要求也越来越高。
智能车辆的使用可以改善道路安全状况,提高道路的利用率。
对于智能汽车的传感技术和数据分析技术的研究能够有效地提高智能汽车对于复杂环境道路的通过性,从而让智能车的运用能够更加方便、快捷、安全的为我们服务。
“飞思卡尔智能车竞赛”是由教育部主办的全国大学生智能汽车竞赛,目前已经成功举办了六届。
该竞赛根据传感器的不同分别设立了:光电组,电磁车组和电磁组。
本文主要研究的是两轮寻迹电磁智能车。
两轮电磁寻迹直立智能车的原理是通过电磁传感器采集赛道信息,同时电子陀螺仪和加速度传感器采集直立智能车的当前车身信息,再交由单片机对路况信息进行识别、分析和信息处理,最后再交由单片机给出控制信号来控制车的双电机让小车在保证直立的状态下沿着指定路线行驶。
在工作中主要用到的编程环境使比赛组委会提供的CodeWarrior。
设计过程主要运用了汇编语言和单片机的相关知识以及PID控制算法。
关键词:智能车;单片机;两轮循迹直立电磁车;PID;陀螺仪;加速度传感器AbstractThis paper illustrate details of the design process of the upright two electromagnetic tracing smart car's motion control . With the rapid development of science and technology and the improvement of living standards,people's requirements of vehicle safety, convenience become higher and higher. The use of intelligent vehicles can improve road safety conditions and the utilization of the road. To study the smart car by testing sensing technology and data analysis techniques can effectively improve its ability for passing complex environment of the road , so that the use of smart cars can be more convenient, faster and safer for our services.Freescale Smart Car Competition "organized by the Ministry of Education of the National Smart car race has already hold for 6 sessions. The contest was set up according to the different sensors: photoelectric group, camera group and electromagnetic group. This paper studies the two tracing electromagnetic smart car.The principle of two electromagnetic tracing upright to intelligent vehicles is to track information collected through electromagnetic sensors, electronic gyroscopes and acceleration sensors collect current body upright smart car, then the microcontroller on the traffic information to the identification, analysis and information handling. Finally, the microcontroller gives the control signal to control the car motor car traveling along the designated route in the state to ensure vertical. The programming environment primarily used in the work so that the competition provided by the organizing committee of the CodeWarrior. The design process is the main use of assembly language and knowledge of the microcontroller and the PID control algorithm.Keywords: Smart car; microcontroller; two tracking upright electromagnetic vehicle; the PID; gyroscope; accelerometer.摘要 (1)Abstract (2)第一章绪论 (5)1.1 国外的发展趋势 (6)1.2 国内发展 (7)1.3 电磁循迹直立智能车的比赛特点 (7)1.4 课题意义 (9)1.5 本课题研究主要内容 (10)第二章电磁寻迹直立智能车的系统构建 (11)2.1 电磁寻迹原理 (11)2.2 电磁直立循迹智能车总体构成 (13)2.3 功能模块介绍 (14)2.3.1 加速度传感器 (14)2.3.2 电子陀螺仪 (17)2.3.3 电磁传感器 (18)2.3.4 编码器 (19)2.3.5 电机驱动电路 (20)第三章电磁寻迹直立智能车智能软件系统的设计 (21)3.1 智能控制概论 (21)3.1.1 模糊控制 (21)3.2 系统辨识的基本概念 (23)3.3 车直立系统的设计 (24)3.3.1 平衡思想 (24)3.3.2 直立系统中具体的控制过程 (25)3.4 采样方法和采样间隔的选择 (29)3.4.1 电磁传感器采样选择 (30)3.5 路径检测算法的设计 (30)3.6 路径算法的优化处理 (30)3.7 车行驶中直立控制策略 (31)3.8 两轮车转向系统设计 (31)3.9 PID控制 (33)3.9.1 不完全微分PID (34)3.9.2 微分先行PID (35)3.9.3 前馈控制的应用 (36)3.9.4 在速度控制中的应用 (37)3.10 调速控制策略与行车车速优化策略 (38)3.11 底层设置 (38)第四章调试说明 (38)4.1 调试策略及步骤 (38)4.1.1 调试参数 (38)4.1.2调试条件 (39)4.2 调试经验总结 (41)第五章总结与展望 (41)参考文献 (42)第一章绪论随着现代高新技术的迅速发展,信息化和智能化越来越多的应用到人类社会的生产、生活的各个方面,曾经只能在科普小说中看到的智能汽车已经不再是虚幻的,人们在不久的将来将能在现实中看见智能汽车。
基于CCD的两轮自平衡智能车系统设计
o f he t s y s t e m.T he f u n c t i o n o f d y n a mi c s e f l - b a l a n c e nd a a u t o a t m i c t r a c k i n g a r e a c h i e v e d a t l a s t .
s y s t e m b a s e d o n CCD
WA NG J u n,XU L i n ,YU E Do n g ,L I De - l i a n g ,WANG Y u e
( S c h o o l o f I n f o r ma t i o n E n g i n e e r i n g ,S o u t h we s t U n i v e r s i t y o f S c i e n c e a n d T e c h n o l o g y ,
2 0 1 3 年第8 期
文章编号 : 1 0 0 9— 2 5 5 2 ( 2 0 1 3 ) 0 8— 0 1 7 9— 0 4 中图分类号 : T P 2 4 2 . 6 文献标识码 : A
基于 C C D的 两轮 自平衡 智能 车 系统 设 计
王 俊 ,许 林 ,岳 东 ,李德亮 ,王 悦
R a c i n g ’ S r e q u e s t s ,v i a f e e d b a c k r e g u l a t i o n t o r e a l i z e dc e a n d s p e e d a d j u s t me n t b y
飞思卡尔直立车经验总结_
飞思卡尔直立车经验总结_先静下心来看几篇技术报告,能够是几个人一起看,边看边讨论,大致熟悉智能车制作的过程及所要完成的任务。
看完报告之后,对智能车也有了大概的熟悉,事实上总结起来,要完成的任务也很简单,即输入模块——操纵——输出。
(1)输入模块。
各类传感器(光电,电磁,摄像头),原理不一致,但功能都一样,都是用来采集赛道的信息。
这里面就包含各类传感器的原理,选用,传感器电路的连接,还有传感器的安装、传感器的抗干扰等等需要大家去解决的问题。
(2)操纵模块。
传感器得到了我们想要的信息,进行相应的ad转换后,就把它输入到单片机中,单片机负责对信息的处理,如除噪,筛选合适的点等等,然后对不一致的赛道信息做出相应的操纵,这也是智能车制作过程中最为艰难的过程,要想出一个可行而又高效的算法,确实不是一件容易的事。
这里面就涉及到单片机的知识、c语言知识与一定的操纵算法,有的时候为了更直观地动态操纵,还得加入串口发送与接收程序等等。
(3)输出模块。
好的算法,只有通过实验证明才能算是真正的好算法。
通过分析操纵,单片机做出了相应的推断,就得把操纵信号输出给电机(操纵速度)与舵机(操纵方向),因此就得对电机与舵机模块进行学习与掌握,还有实现精确有效地操纵,又得加入闭环操纵,pid算法。
明确了任务后,也有了较为清晰的操纵思路,接下来就着手弄懂每一个模块。
尽管看似简单,但实现起来非常得不容易,这里面要求掌握电路的知识,基本的机械硬件结构知识与单片机、编程等计算机知识。
最最困难的是,在做的过程中会遇到很多想得到与想不到的情况发生,一定得细心地发现问题,并想办法解决这些问题。
兴趣是首要的,除此之外,一定要花充足的时间与精力在上面,毕竟,有付出就会有收获,最后要明确分工与规划好进度。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
其中: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控 制的公式:
V _ control _ out P *err I *int egration
其中:P为比例项系数,I为积分项系数
小车的方向控制
小车的方向控制需要用到两个传感器。一 个是陀螺仪+加速计模块上的陀螺仪(注: 此模块上一共有两个陀螺仪,它们相互垂 直,一个负责测量模块竖直方向上的角速 度,另一个负责测量模块水平方向上的角 速度),负责测量小车转向的时候车身转 动的角速度。 另一个是线性CCD模块TSL1401CL。 TSL1401CL 线性传感器由 128×1 列光电二 极管,内部集成了电荷放大器电路,以及 像素数据保持功能,可同时集成启动和停 止所有像素位。 该阵列由 128 个像素构成, 每个像素点都有一个 3,524.3 平方微米的光 敏区域,读取 AO 口的电压就可以完成数据 采集。
小车的电机驱动
电机驱动模块如右图所示。该 模块采用的是经典的MOS管搭 建的H桥电机驱动,作用是使 双路电机能够调速和换向。控 制信号是PWM信号。
单片机程 序下载口
液晶显示 屏接口
电机驱动模块原理图
小车的方向控制
我们对小车进行方向控制,就是希望小车沿着跑道的中间线跑,所以跑道 的中线值mid_line就是我们对小车进行方向控制的期望。通过线性CCD传感 器采集回来的数据可以计算出小车当前实际的方向值direct_value。跑道的 中线值与小车当前实际的方向值作比较,可以算出当前小车偏离跑道中线 多少位置,即方向偏差err。在这里,小车的方向控制采用PID控制策略中 P(比例)D(微分)控制。方向偏差err作为PD控制中P项的输入,陀螺仪检测到 的小车转动方向上的角速度angular作为PD控制中的D项的输入。(注:角 度的微分就是角速度,小车偏离跑道中线多少位置可以理解为小车偏离跑 道中线多少角度)。由此可以得到小车的方向控制公式:
小车的直立控制
小车的直立控制需要用到陀螺仪和加速度 计两种传感器,它俩儿都集成在了一个模 块上(如右图所示)。 加速度计是测量角度的传感器,有X、Y、Z 三个轴,这里我们只用到Z轴。其输出值的 大小随着模块倾角变化而变化,当模块不 动时候,输出值保持,即一个输出值代表 模块的一个角度。 陀螺仪是测量角速度的传感器,输出值的 大小与模块角度变化的剧烈程度有关,模 块角度变化越剧烈,模块的角速度越大, 陀螺仪的输出值也越大。当模块不动时候, 即没有角速度,其输出值为0。 陀螺仪和加速度计两个传感器采集回来的 都是电压值,所以需要经过单片机的AD转 换才能得到我们想要的角度和角速度(模 块与单片机的连接如右图所示)
两轴陀螺仪+三 轴加速计模块
主控制板
小车的直立控制
有了小车直立方向上的角度值和角速度值后, 就可以说说怎么让小车平衡地立起来了!!!
给定一个小车的角度值作为期望u(注意:此角度值 为小车处于直立平衡位置时加速度计采集回来的角 度值)与加速计实时采集回来的小车当前的直立角度 值c作比较,得到期望值与实际值的偏差err。 同时, 小车上的陀螺仪采集到一个小车直立方向的角速度 值angular。应用PID控制中的P(比例)D(微分)控制, 以角度值偏差err作为P项的输入,以角速度值 angular作为D项的输入(注:因为角度的微分就是 角速度,所以用角速度值angular作为微分项的输 入),从而得到以下小车直立控制的关系式:
L _ moto angle _ control _ out V _ control _ out direct _ control _ out
R _ moto angle _ control _ out V _ control _ out direct _ control _ out
直立平衡车的制作
两个轮子的直立小车怎么在 跑道上匀速跑?
这是一个关于“控制”的故事!!!
“控制”的一个基本概念:
期望u 偏差err
反馈c
PID控制 输出out 传感器
执行机构
控制 目标
要让直立小车在赛道上跑起来,需要对小车作三个方面的控制, 分别为直立控制、速度控制和方向控制。(注意:这三个方面的 控制都是类似的,都是基于上面的结构框图,只不过它们的期望、 传感器和控制目标不一样而已)