寮步做网站公司,与恶魔做交易的网站,制作个人网站的软件,深圳动画设计制作哪些类型一、sg90简介
首先介绍说一下什么是舵机。舵机是一种位置#xff08;角度#xff09;伺服的驱动器。适用于一些需要角度不断变化的#xff0c;可以保持的控制系统。sg90就是舵机的一种。 舵机的工作原理比较简单。舵机内部有一个基准电压#xff0c;单片机产生的PWM信号通…一、sg90简介
首先介绍说一下什么是舵机。舵机是一种位置角度伺服的驱动器。适用于一些需要角度不断变化的可以保持的控制系统。sg90就是舵机的一种。 舵机的工作原理比较简单。舵机内部有一个基准电压单片机产生的PWM信号通过信号线进入舵机与舵机内部的基准电压作比较获得电压差输出。电压差的正负输出到电机驱动芯片上从而决定正反转。开始旋转的时候舵机内部通过级联减速齿轮带动电位器旋转使得电压差为零电机停止转动。
二、引脚连接
sg90有三个引脚分别是红线VCC棕线GND和橙线信号线。通常使用5V供电信号线接单片机引脚用老来接收单片机发送的PWM。
三、控制方法
控制sg90舵机旋转也比较简单只需要给它输出PWM波修改占空比就可以调整角度。sg90的控制一般需要一个20ms 左右的时基脉冲脉冲的高电平部分一般在0.5ms~2.5ms。高电平持续时间与旋转角度的对应关系如下
高电平持续时间/ms舵机角度/°0.501.0451.5902.01352.5180
四、程序设计
这里以180°的sg90来展示一下程序设计
4.2 编写控制程序
根据高电平持续时间与角度关系对应表格来编写sg90的控制程序 while(1){TIM_SetCompare1(TIM3,195); // 旋转到0°delay_ms(500);TIM_SetCompare1(TIM3,190); // 旋转到45°delay_ms(500);TIM_SetCompare1(TIM3,185); // 旋转到90°delay_ms(500);TIM_SetCompare1(TIM3,180); // 旋转到135°delay_ms(500);TIM_SetCompare1(TIM3,175); // 旋转到180°delay_ms(500);}文部分内容转载自STM32外设系列—sg90舵机 (jnnr.cn)感谢分享
看上面这个代码就是采用调用函数的方式来控制旋转角度所以这个函数就是一个产生PWM的函数