STM32驱动舵机.pdf

上传人:小** 文档编号:86979330 上传时间:2019-03-26 格式:PDF 页数:45 大小:1.81MB
返回 下载 相关 举报
STM32驱动舵机.pdf_第1页
第1页 / 共45页
STM32驱动舵机.pdf_第2页
第2页 / 共45页
STM32驱动舵机.pdf_第3页
第3页 / 共45页
STM32驱动舵机.pdf_第4页
第4页 / 共45页
STM32驱动舵机.pdf_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《STM32驱动舵机.pdf》由会员分享,可在线阅读,更多相关《STM32驱动舵机.pdf(45页珍藏版)》请在金锄头文库上搜索。

1、STM32驱动舵机驱动舵机 /45 STM32驱动舵机驱动舵机 STM32驱动舵机实例驱动舵机实例 4 舵机的控制方法舵机的控制方法 3 2 软件环境安装软件环境安装 1 硬件硬件连接连接方法方法 2 /45 1 MDK集成开发环境集成开发环境 1.1首先安装首先安装J-Link驱动驱动 开发软件开发软件Setup_JLinkARM_V468,双击要安装,双击要安装的的 “Setup_JLinkARM_V468.exe”, 安装过程全选“安装过程全选“next”直到安装成功,”直到安装成功, 将将JLINK插接到电脑的插接到电脑的USB口,即可在我的电脑口,即可在我的电脑管理管理 设备管理器设

2、备管理器通用串行总线控制器中看到一个通用串行总线控制器中看到一个J-Link driver。 安装程序来源:安装程序来源: /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 点击点击 Next。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 把勾勾上,点击把勾勾上,点击 Next。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a

3、.exe”, 选择安装选择安装目录目录C:keil,点击,点击 Next。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 在用户名中填入名字(可随便写或者空格),在邮件地在用户名中填入名字(可随便写或者空格),在邮件地 址那里填入邮件地址(可随便写或者可空格),点击址那里填入邮件地址(可随便写或者可空格),点击 Next。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 正在安装,请耐心等待。正在安装,请耐

4、心等待。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 点击点击Finish,安装完成。,安装完成。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 点击点击Finish,安装完成。,安装完成。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 05-开发软件开发软件2-MDK 运行运行“MDK472_a.exe”, 点击点击Finish,安装完成。,安装完成。 /45 1 MDK集成开发

5、环境集成开发环境 1.2 安装安装MDK 破解破解MDK 安装完安装完MDK开发环境后,在编译程序的时候会有开发环境后,在编译程序的时候会有40K 的代码的代码限制限制 开发开发软件软件MDK 找到找到KEIL_Lic.exe。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 破解破解MDK 点击点击KEIL_Lic.exe,在,在 弹出的界面中的弹出的界面中的CID选选 项框中填入项框中填入MDK的的CID。 /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 破解破解MDK 以管理员身份运行“以管理员身份运行“Keil uVision4”,在”,在MDK

6、开发环开发环 境中的菜单栏境中的菜单栏FileLicense Managemant 中获取中获取到到CID /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 破解破解MDK 在在Target下拉框中选择下拉框中选择ARM /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 破解破解MDK 然后然后点击点击Generate按钮,复按钮,复 制产生的制产生的CID Code /45 1 MDK集成开发环境集成开发环境 1.2 安装安装MDK 破解破解MDK MDK环境菜单环境菜单栏栏FileLicense Managemant,把刚刚,把刚刚 在注册机复制在注册机

7、复制到的到的CID Code粘贴到粘贴到New License ID Code (LIC):框中,然后点击框中,然后点击 Add LIC,点击,点击close /45 1 MDK集成开发环境集成开发环境 1.3 编译、下载编译、下载 Translate:编译修改过的文件,只检查语法错误,:编译修改过的文件,只检查语法错误, 不链接库也不生成可执行文件不链接库也不生成可执行文件 Build:编译修改过的工程,检查语法、链接动态库:编译修改过的工程,检查语法、链接动态库 文件、生成可执行文件文件、生成可执行文件 Rebuild:重新编译整个工程的所有文件,耗时较长:重新编译整个工程的所有文件,耗时

8、较长 Load:程序下载:程序下载 /45 2 硬件连接硬件连接方法方法 2.1电源及下载线电源及下载线连接连接 /45 2 硬件连接硬件连接方法方法 2.1电源及下载线电源及下载线连接连接 /45 2 硬件连接硬件连接方法方法 2.1电源及下载线连接电源及下载线连接 /45 2 硬件连接硬件连接方法方法 2.1电源及下载线连接电源及下载线连接 /45 2 硬件连接硬件连接方法方法 2.2舵机线连接舵机线连接 s+- s+- s+- /45 2 硬件连接硬件连接方法方法 2.2舵机线连接舵机线连接 多功能支架多功能支架 6个个 短短U支架支架 2个个 长长U支架支架 4个个 L型支架型支架 8

9、个个 大脚板大脚板 2个个 U型梁型梁 1个个 杯士轴承杯士轴承 6个个 /45 3.1 什么是舵机什么是舵机 舵舵机是一种位置(角度)伺服的驱动器,机是一种位置(角度)伺服的驱动器,适用于需要适用于需要角角 度不断变化并可以保持的控制系统度不断变化并可以保持的控制系统。舵。舵机是一种俗称,机是一种俗称, 其实是一种伺服马达其实是一种伺服马达。 3 舵舵机的控制方法机的控制方法 25 /45 3.2 舵舵机工作原理机工作原理 控制信号控制信号由接收机的通道进入信号调制芯片,获得直流偏由接收机的通道进入信号调制芯片,获得直流偏 置电压置电压。 内部内部有一个基准电路,产生周期为有一个基准电路,产

10、生周期为20ms,宽度为,宽度为1.5ms 的基准信号,将获得的直流偏置电压与电位器的电压比较,的基准信号,将获得的直流偏置电压与电位器的电压比较, 获得电压差输出获得电压差输出。 电电压差的正负输出到电机驱动芯片决定电机的正反转。当压差的正负输出到电机驱动芯片决定电机的正反转。当 电机转速一定时,通过级联减速齿轮带动电位器旋转,使电机转速一定时,通过级联减速齿轮带动电位器旋转,使 得电压差为得电压差为0,电机停止转动,电机停止转动。 3 舵机的控制方法舵机的控制方法 26 /45 3.3 舵机控制舵机控制 舵舵机的控制一般需要一个机的控制一般需要一个20ms左右的时基脉冲,该脉左右的时基脉冲

11、,该脉 冲的高电平部分一般为冲的高电平部分一般为0.5ms2.5ms范围内的角度控制范围内的角度控制 脉冲部分脉冲部分。 以以180度角度伺服为例,那么对应的控制度角度伺服为例,那么对应的控制关系:关系: 0.5ms- 0度度 1.0ms- 45度度 1.5ms- 90度度 2.0ms-135度度 2.5ms-180度。度。 3 舵舵机的控制方法机的控制方法 27 /45 舵舵机的控制一般需要一个机的控制一般需要一个20ms左右的时基脉冲,该脉冲左右的时基脉冲,该脉冲 的高电平部分一般为的高电平部分一般为0.5ms2.5ms范围内的角度控制脉冲范围内的角度控制脉冲 部分部分。 以以180度角度

12、伺服为例,那么对应的控制度角度伺服为例,那么对应的控制关系:关系: 28 3 舵舵机的控制方法机的控制方法 /45 小型小型舵机的工作电压一般为舵机的工作电压一般为4.8V或或6V,转速也不是很快,转速也不是很快, 一般为一般为0.22/60度或度或0.18/60度,所以度,所以假如更改假如更改角度控制脉冲角度控制脉冲 的宽度太快时,舵机可能反应不过来。如果需要更快速的的宽度太快时,舵机可能反应不过来。如果需要更快速的 反应,就需要更高的反应,就需要更高的转速。转速。 舵舵机上有三根线,分别为机上有三根线,分别为VCC、GND、信号、信号线,不线,不需要另需要另 外接驱动模块,直接用单片机的管

13、脚外接驱动模块,直接用单片机的管脚控制,控制信号控制,控制信号一般一般 要求周期为要求周期为20ms的的PWM信号。信号。 如果如果要更为精确的控制舵机(转动角度差要更为精确的控制舵机(转动角度差=1;angle-) SetJointAngle(4, angle); SetJointAngle(5, angle); SetJointAngle(6, angle); SetJointAngle(7, angle); SetJointAngle(8, angle); SetJointAngle(9, angle); SetJointAngle(10, angle); SetJointAngle(1

14、1, angle); SetJointAngle(12, angle); SetJointAngle(13, angle); SetJointAngle(14, angle); SetJointAngle(15, angle); Delay(0x000FFFF); 12.4 STM32驱动舵机实例驱动舵机实例 /45 4.4 定时器初始化定时器初始化 pwm.c中中函数函数TIM_PWM_Init() 配置配置TIM: void TIM_PWM_Init (u16 arr,u16 psc) /定义初始化结构体定义初始化结构体 GPIO_InitTypeDef GPIO_InitStructur

15、e; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure; / 使能定时器时钟使能定时器时钟TIM3/TIM4/TIM5 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3 | RCC_APB1Periph_TIM4 | RCC_APB1Periph_TIM5, ENABLE); /使能使能GPIOA/GPIOB外设时钟使能外设时钟使能 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB , ENABLE); 34 12.4 STM32驱动舵机实例驱动舵机实例 /45 4.4 定时器初始化定时器初始化 pwm.c中中函数函数TIM_PWM_Init() 配置配置TIM: void TIM_PWM_Init (u16 arr,u16 psc) /初始化初始化GPIO /设置复用设置复用输出功能输出功能,TIM3 、TIM5 GPIO_InitStruct

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号