自动化专业综合课程设计1
课程设计报告
系 别: 机电与自动化学院 专业班级: 自动化0902 学 号: 20091184078 学生姓名: 邹建伟 指导教师: 李川香
2012年 6 月 24日——2012年 7 月华中科技大学武昌分校
1
日)
(课程设计时间: 2
目录
1 课程设计目的 ................................................... 2 2 课程设计题目描述和要求..........................................2 3 课程设计报告内容................................................2 3.1.1 电机的选择 .................................................. 2 3.1.2 传感器的选择 ................................................ 3 3.1.3 直线算法的选择 .............................................. 3 3.1.4 画圆算法的选择 .............................................. 3 3.1.5 画笔的控制 .................................................. 3 3.1.6 方案的确定 .................................................. 4 3.2 系统软件介绍 ................................................. 4 3.2.1 软件流程图...................................................5 3.2.2 坐标点参数的计算 ............................................ 5 3.2.3 直线的计算 .................................................. 5 3.3 系统单元电路设计 ............................................. 6 3.3.1 红外传感器连接电路 .......................................... 6 3.3.2 步进电机驱动电路 ............................................ 6 3.3.3 画笔设计 .................................................... 7 3.4 系统软、硬调试过程 ............................................ 7 3.4.1 画直线功能测试 .............................................. 7 3.4.2 画圆功能测试 ................................................ 7 3.4.3 循迹功能测试 ............................................... 7 4 总结...........................................................8 参考文献 ..........................................................9
1
1 课程设计目的
以低功耗MSP430F1611单片机系统平台为控制核心,由步进电机控制模块、红外传感和人机交互3个功能部分组成。由MSP430F1611实现相应算法产生不同状态的PWM波,以控制电机的运动,从而实现对画笔的控制。系统可通过键盘任意设置坐标点参数;控制质量大于100g的物体在仰角不大于100°的80 cmx100 cm白板上做自行设定的运动,并在白板上画出运动轨迹;控制物体沿白板上按标出的任意黑色间断曲线运动。画笔坐标点及各运动状态实时显示在LCD上,人机界面友好。
2 课程设计题目描述和要求 一 任务
设计一电机控制系统,控制物体在倾斜(仰角≤100度)的板上运动。在一白色底板上固定两个滑轮,两只电机(固定在板上)通过穿过滑轮的吊绳控制一物体在板上运动,运动范围为80cm×100cm。物体的形状不限,质量大于100克。物体上固定有浅色画笔,以便运动时能在板上画出运动轨迹。板上标有间距为1cm的浅色坐标线(不同于画笔颜色),左下角为直角坐标原点。 二 要求
(1)控制系统能够通过键盘或其他方式任意设定坐标点参数;
(2)控制物体在80cm×100cm的范围内作自行设定的运动,运动轨迹长度不
小于100cm,物体在运动时能够在板上画出运动轨迹,限300秒内完成; (3)控制物体作圆心可任意设定、直径为50cm的圆周运动,限300秒内完成; (4)物体从左下角坐标原点出发,在150秒内到达设定的一个坐标点(两点间
直线距离不小于40cm)。
3 课程设计报告内容 3.1.1 电机的选择
方案一:使用直流电机驱动画笔。直流电机能实现连续运转,只要型号选择合适,其驱动能力足以使画笔在限定的时间内画出足够长的线。但直流电机运行时的惯性比较大,不同的运行方式进行切换时,延时较长,画出的图形不能满足题目要求。
2
方案二:选用步进电机。步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响;而且步进电机只有周期性的误差而无累积误差,因而用步进电机来控制位置比用直流电机简单,故采用此方案,使用两相四线式步进电机。 3.1.2 传感器的选择
方案一:可见发光二极管与光敏二极管组成的发射-接收电路。这种方案的缺点在于其他环境光源会对光敏二极管的工作产生很大干扰,一旦外界光照条件改变,就很可能造成误判和漏判:虽然采取超高亮发光管可以降低一定的干扰,但这又将增加额外的功耗。
方案二:采用反射式红外发射—接收器。由于采用红外管代替普通可见光管,可以降低环境光源干扰。一般光源红外线频段能量较弱,对红外传感器的干扰较小,且红外线波长大,近距离衰减小,因此用红外传感器探测近距离黑线更加可靠。因此采用此方法。 3.1.3 直线算法的选择
方案一:采用Bresenham画直线算法,用一段连续线段逼近直线。根据起点和终点计算出直线的斜率,在根据程序中设置的最小△x得出△y,结合起点得出下一点的位置(x’,y’),一次类推,就可画出一整条直线。但是Bresenham算法速度慢。
方案二:采用DDA画直线算法,求出坐标起点和终点距离差值,把距离进行N等分,再分别求出x方向和y方向的增量,此增量就是步进电机每次走的长度。
此方法速度快,精度高,故采用此方法。 3.1.4 画圆算法的选择
方案一:采用Bresenham画直线算法,先用类似Bresenham画直线算法画出1/8圆,并把每个点的坐标存起来,在根据对称性,调整坐标的顺序,就能画出剩下的圆。缺点是此方法画出的圆不是很圆,需要进行补偿。
方案二:采用查表法,先用matlab生成相应的圆坐标,再用查表法查出电机要走的每个点的坐标,这种方法简单可行,画出的圆也比较圆滑。因此采用此方法。
3.1.5 画笔的控制
3
我们使用直线舵机来控制画笔的伸缩,这样能更好的控制画笔,能够自由发挥,画出更多的图形。 3.1.6 方案的确定
图1 系统方案图
经过上述的比较,我们选择MSP430F1611单片机作为系统控制器;利用键盘设置点的坐标;使用LCD12864显示运动方式、设置的坐标值及计时的时间;采用L297_L298芯片混合式步进电机驱动器;使用直线舵机来控制画笔的伸缩。 3.2 系统软件介绍 3.2.1 软件流程图
开始液晶。中断初始化是否有键按下是否直线运动画圆运动循迹运动自由运动否是否有键按下是设定坐标确定运行完成返回 图2 软件流程图
4