2011 年全国大学生电子设计竞赛
基于自由摆的平板控制系统(B 题)
【本科组】
2011 年 9 月 3 日
摘
要
本系统以单片机为控制核心,采用增量旋转编码器实时采集自由摆旋转角
度及方向,通过步进电机开环控制平板旋转角度,以实现控制要求。此外,为
方便实验和调试,专门设计了独立的单片机角度显示电路。本设计以旋转编码
器的脉冲触发单片机的中断来控制平板角度的调整,这种外部事件驱动的程序
设计方法能够及时响应摆杆角度的变化,避免了复杂的定时采样程序设计,总
体程序设计简洁,响应时间快,控制精度高。在激光笔瞄准时采用了查表法,
避免了单片机进行复杂三角函数运算造成的舍入误差对实验精度的影响,从而
达到了在一个周期里电机精确旋转一周;平板角度调整速度快,8 枚硬币滑动小
无跌落;实时控制激光笔保持静态水平误差在 1cm 以内;动态控制误差在 2cm
以内的实验效果。
关键字:外部事件驱动程序设计
旋转编码器
平板精确控制
II
目
录
1 系统方案分析.....................................................................................................1
1.1.1 控制器选用.................................................................................................2
1.1.2 控制系统方案选择.....................................................................................2
1.2 角度测量模块的论证与选择........................................................................2
1.3 步进电机及其驱动模块的论证与选择........................................................2
2 系统理论分析与计算........................................................................................3
2.1 自由摆平板控制系统的分析....................................3
2.1.1 自由摆平板系统模型建立.........................................................................4
2.1.2 角度测量原理分析.....................................................................................5
2.1.3 平板角度的分析.........................................................................................5
2.2 角度测量的计算.............................................................................................7
2.2.1 单位脉冲转过角度计算.............................................................................7
2.2.2 编码器可行性计算.....................................................................................7
2.3 步进电机模块的论证分析......................................7
2.3.1 步进电机节拍数与螺旋码盘输出脉冲之间关系.....................................7
2.3.2 步进电机最大空载启动频率分析与计算.................................................7
3 电路与程序设计.................................................................................................8
3.1 电路的设计.....................................................................................................8
3.1.1 系统总体框图.............................................................................................8
3.1.2 整体电路原理图.........................................................................................9
3.1.3 显示子系统框图与电路原理图................................................................9
3.2 程序的设计...................................................................................................10
3.2.1 程序功能描述...........................................................................................10
3.2.2 具体的程序分析设计...............................................................................12
4 测试方案与测试结果.......................................................................................13
4.1 测试方案.......................................................................................................13
4.2 测试条件与仪器..........................................................................................13
4.3 测试结果及分析..........................................................................................14
4.3.1 测试结果(数据).......................................................................................14
4.3.2 测试分析与结论.......................................................................................16
5.实验总结..........................................................................................................16
参考文献..............................................................................................................17
附录 1:电路原理图...........................................................................................18
附录 2:源程序...................................................................................................21
附录 3:主要元器件清单...................................................................................22
III
基于自由摆的平板控制系统 (B 题)
【本科组】
1 系统方案分析
系统设计任务为一种基于自由摆的保持平板平衡的控制系统。基本要求是保持平板
上硬币的平衡滑动小或滑落少,进一步的要求是让平板上激光笔射在靶纸上的光斑偏移
量尽可能小。在实时控制时,对自由摆的摆角、摆速及摆动方向的测量十分关键,平板
角度的控制精度和相应速度也直接决定着最终的控制效果。据此,本系统采用以单片机
为核心的自由摆控制系统主要由以下几个功能模块构成:
1、单片机控制模块
2、角度测量获取模块
3、平板平衡控制模块
4、电机驱动模块
5、角度值显示模块
系统框图如图一所示。
角度测量
获取
单片机控制
角度值显示
驱动
平板平衡
控制
图一 系统组成框图
1
1.1 主控制器件的论证与选择
1.1.1 控制器选用
我们选用 STC89C51 单片机作为控制核心,它具有 8k 字节 Flash,256 字节 RAM, 32 位 I/O 口
线,看门狗定时器,2 个数据指针,三个 16 位 定时器/计数器,一个 6 向量 2 级中断结构,全双工
串行口,片内晶振及时钟电路。
1.1.2 控制系统方案选择
方案一:采用在面包板上搭建简易单片机系统
在面包板上搭建单片机系统可以方便的对硬件做随时修改,也易于搭建,但是系统
连线较多,不仅相互干扰,使电路杂乱无章,而且系统可靠性低,不适合本系统使用。
方案二:自制单片机印刷电路板
自制印刷电路实现较为困难,实现周期长,此外也会花费较多的时间,影响整体设
计进程。不宜采用该方案。
方案三:采用单片机最小系统。
单片机最小系统包含了显示、矩阵键盘、A/D、D/A 等模块,能明显减少外围电路的
设计,降低系统设计的难度,非常适合本系统的设计。
1.2 角度测量获取模块的论证与选择
方案一:采用加速度传感器
加速度传感器采用模拟量输出,需要放大电路及 A/D 完成角度的测量,由于在传输
回路中模拟信号易受干扰,测量结果容易产生误差,通过数字滤波等技术虽然能够在一
定程度上消除干扰造成的误差,但是,滤波运算增加了 CPU 的负荷。
方案二:采用电位器作为角度传感器
自由摆系统的角度测量也可采用可变电阻器。精密的可变电阻器具易获得、价格低
廉、重复性高、分辨率高、高频响应特性好、易使用等特点。但是可变电阻器也是模拟
信号输出,需要 A/D 信号的转换,增加系统复杂性,而且安装要求较高,带来了硬件设
计的不便。
方案三:采用增量式光电旋转编码器
光电编码器是一种角度(角速度)检测装置,它将输入给轴的角度量,利用光电转
换原理转换成相应的电脉冲。旋转编码器具有体积小,精度高,工作可靠,接口数字化
等优点。此外旋转编码器安装较为方便,接口电路较为简单,能够减少系统硬件电路的
工作量。
综合以上三种方案,我们选择方案三。最终我们选择了欧姆龙的 1000 线高精度旋
转编码器 E6B2C 它测量精度高,分辨率达到了 0.36°。
1.3 步进电机及其驱动模块的论证与选择
步 进 电 动 机 的 驱 动 电 路 可 采 用 配 套 的 高 性 能 步 进 电 机 驱 动 器 ZD-6209-V2 。
ZD-6209-V2 高性能步进驱动器具有集成度高可靠性好抗高频干扰强,并且接口采用超高
速光耦隔离等特点。能够对整步、半步、四细分、八细分、十六细分可调;输出电流线
行可调支持脱机、使能、锁定等功能。
最终选定的步进电机型号为 42BYG250-48。该电机为两相步进电机,它的步距角仅
为 1.8°扭矩为 0.50N/m,有较高的空载启动频率,在十六细分后能实现 0.225°的步距
2
角能够满足本系统的控制要求。
2 系统理论分析与计算
2.1 自由摆平板控制系统的分析
2.1.1 自由摆平板系统模型建立
(1)建立自由摆运动模型,由于系统是由轻杆和步进电机等组成,相较于步进电
机,轻杆质量很小,可以近似认为旋转臂重心在平板附近,平板沿半径为 L 的弧长自由
摆动。示意图如图二
①在最低位置时平板将达到最大速度,因此在不计空气阻力及固定点摩擦力的情况
图二 自由摆模型示意图
下利用能量守恒定律有:
mg
(1 cos
)
m
( )
2
v
l
,得出
v
lg(1 cos
)
( )
在θ不超过 60°,l=1.0m 的情况下。计算得 v=2.236m/s,由角速度与线速度之间
的关系,得出= v
l
=2.236rad/s=128/s
②自由摆周期计算
根据单摆的周期计算公式
3
T
2
l
g
;
得单摆周期 T=1.986ms
(2)使硬币不滑落的模型分析
在自由摆在一个小角度时摆动时,自由摆运动模型便是一个化为物理单摆模型。因
在实际中自由摆臂质量集中在端点的电机上,受力分析如图三所示。
图三
硬币受力模型
硬币受到重力 mg,板的支持力合外力方向垂直与摆臂,大小为 F 合。
根据单摆的物理规律平板随自由摆摆臂运动的加速的 a 方向将始终垂直与摆臂,为
保证平板上硬币不会滑落平板需要保证硬币在沿平板方向上没有分力的作用,也就是硬
币与平板是没有摩擦力的。也即平板对硬币力的作用方向始终在垂直于平板方向上,
当摆角 30°-45°之间时,经过推算,硬币会受到平板沿平板方向上微弱的分力作
用,但是考虑到两者之间的摩擦力作用,静摩擦力要远大于沿平板方向分力作用,是不
会使硬币发生位移。因此只要保持平板与摆臂的垂直就能保证硬币不会滑落。
自由臂开始运动时平板保持水平位置,而要保证硬币不从平板上滑落则需要平板尽
快保持与自由臂垂直,因此在放开平板时需要让平板带动硬币尽快达到与自由臂垂直位
置。
2.1.2 判断正反转原理分析
角度测量模块由高精度旋转编码盘构成,编码盘转轴随自由摆旋转臂转动,当旋转
臂摆过一个角度后旋转编码盘将输出一串脉冲通过对脉冲的计数可以算出转臂摆过的
角度。
旋转编码的输出信号 A、B 时序图如图四所示。
当转轴正转时 A 相输出脉冲超前 B 相输出脉冲,反转时则相反。通过单片机检测 A、
B 相输出脉冲的相位关系可以精确地判断自由摆臂的正反转。
4
图四 旋转编码器判断正反转
2.1.3 自由摆旋转角度与电机旋转角度关系建模与分析
对于基础部分,为使硬币不从平板上滑落,需要保持平板始终垂直与自由摆臂垂直,
而在初始时刻,平板保持水平,与自由摆臂夹角达到 30-45°左右,为保证硬币不滑落,
需要在自由摆开始摆动时刻步进电机控制平板尽快达到与自由摆臂垂直位置。而在以后
的摆动过程中,保持平板方向不变便能满足硬币不滑落的要求。
对于发挥部分,由图五可知,在摆杆在靠近平板位置:
AB=2sin(θ/2)
AM=1.5m
有正弦定理有:
)
)
sin(
2
sin(
1.5
2sin(
)
2
所以:
3 tan(
(
ABM
)
得出:
cos( )+sin( ))=4sin( )tan(
ABM
)
2
2
2
3sin( )
2
2
4sin( ) 3cos( )
2
tan(
ABM
=
)
转过角度:
=
2
ABM
当摆杆在远离平板位置时,同理:
5