欢迎来到天天文库
浏览记录
ID:57908564
大小:207.50 KB
页数:5页
时间:2020-04-03
《单片机控制8路舵机.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、机械臂机械臂主要由手部和运动机构组成。手部是用来抓持物品的部位,运动机构使手部完成各种转动、移动或复合运动来实现规定的动作。为了抓取空间中任意位置和方位的物体,采用6个自由度,用六个舵机来控制。由MCU产生六路占空比可调的PWM信号来控制机械手的运动。利用上位机与单片机通信,改变占空比从而控制机械臂。为了使机械手运动时保持一定的连贯性,同时刻到达指定位置,机械手不同部位运动的速度应该不同,转一个小角度时舵机的速度应该慢一些,所以在上位机设计上采用了拉杆及按键控制,从实现对机械臂的柔性控制。机械臂部分关键器件和基本参数:机械臂参数:1、整臂长464mm;2、臂重(含舵机):1.5Kg;
2、3、机械臂转动范围:180度;4、机械爪最大张角宽度:55mm;5、机械臂夹重:0.5Kg。伺服电机MG995、MG996具体参数:1、工作扭矩:13Kg/cm;2、工作电流:100mA;3、转动角度;180度;4、反应转速:53-62R/M;5、使用电压3-7.2V。6、控制精度:3度MCU控制模块:1、2、3、4、工作原理说明及计算1、PC机与单片机通信在控制系统中,各种数据的采集和执行机构的控制都是由下位机来完成。由于单片机具有体积小、价格低廉、可应用于恶劣工业环境的特点,在分布式控制系统中大多采用单片机作为下位机来进行数据采集和现场控制。在这些应用中,单片机只是直接面向被控对
3、象底层。而对采集到的数据进行进一步分析和处理的工作是由功能强大的主控PC机来完成的。因此,PC机和单片机之间就有着大量的数据交换。通常PC机和单片机之间的通信是通过串行总线RS-232实现的。但实际需要要求操作系统实现无线控制,因此采用蓝牙串口通讯方式代替有线数据传输。其原理和方法适用于PC机与不同单片机之间的串行数据通信。2、舵机的结构舵机简单的说就是集成了直流电机、电机控制器和减速器等,并封装在一个便于安装的外壳里的伺服单元。能够利用简单的输入信号比较精确的转动给定角度的电机系统。舵机安装了一个电位器(或其它角度传感器)检测输出轴转动角度,控制板根据电位器的信息能比较精确的控制和
4、保持输出轴的角度。这样的直流电机控制方式叫闭环控制,所以舵机更准确的说是伺服马达,英文servo。舵机的主体结构有五个部分:外壳、减速齿轮组、电机、电位器、控制电路。工作原理:控制电路接受来自信号线的控制信号,控制电机转动,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是相连的,舵盘转动的同时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板,进行反馈,然后控制电路板,根据所在位置决定电机的转动方向和速度,从而达到目标停止。舵机的输入线共有三条,红色中间,是电源线,一边黑色的是地线,这辆根线给舵机提供最基本的能源保证,主要是电机的转动消耗。电源有两种
5、规格,一是4.8V,一是6.0V,分别对应不同的转矩标准,即输出力矩不同,6.0V对应的要大一些;另外一根线是控制信号线,一般为桔黄色。舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0-180度,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机内部有一个基准电路,产生周期20ms,宽度1.5ms的基准信号,有一个比较器,将外加信号与基准信号相比较,判断出方向和大小,从而产生电机的转动信号
6、。由此可见,舵机是一种位置伺服的驱动器,转动范围不能超过180度,适用于那些需要角度不断变化并可以保持的驱动当中。舵机的外壳一般是塑料的,特殊的舵机可能会有金属铝合金外壳。金属外壳能够提供更好的散热,可以让舵机内的电机运行在更高功率下,以提供更高的扭矩输出。金属外壳也可以提供更牢固的固定位置。MG995、MG996型舵机的内部电路标准舵机示意图舵机输出转角与输入信号脉冲宽度的关系舵机具备操作简单,控制方便,低能耗等优点,所以应用已经扩展到各种机电产品中来,在机器人控制中应用也越来越广泛。3、用单片机来控制舵机舵机的控制信号是一个脉宽调制信号,所以很方便和数字系统进行接口。只要能产生标
7、准的控制信号的数字设备都可以用来控制舵机。我们使用单片机产生舵机的控制信号来进行控制的方法,编程语言为C51。单片机有两个(或两个以上)内部计数器,我们就用它来产生周期20ms的脉冲信号,根据需要,改变输出脉宽。脉冲信号的输出是靠定时器的溢出中断函数来处理,时间很短,因此在精度要求不高的场合可以忽略。因此如果忽略中断时间,从另一个角度来讲就是主程序和脉冲输出是并行的,因此,只需要在主程序中按要求改变标志位的值,例如让标志位从500变化到2500,就可以让舵
此文档下载收益归作者所有