和12岁小同志搞创客开发:遥控舵机
目录
1、舵机控制理论
2、舵机控制实践
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧。
项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html
之前讲到了设计一款亮度可调节灯,在此基础上,实现旋转电位器控制舵机转动。
本项目使用的舵机是180°微型舵机,该舵机采用高强度ABS透明外壳配以内部高精度尼龙齿轮组,加上精准的控制电路、高档轻量化空心杯电机使该微型舵机的重量只有9克,而输出力矩达到了惊人的1.6kg*cm,可满足基本的项目应用。
1、舵机控制理论
控制舵机转动,本质上也是PWM(脉冲宽度调制),通过一个固定的频率,给其不同的占空比来控制舵机不同的转角。
舵机的频率一般为频率为50HZ,也就是一个20ms左右的时基脉冲,而脉冲的高电平部分一般为0.5ms~2.5ms范围,来控制舵机不同的转角,0.5ms~2.5ms的PWM高电平部分对应控制180度舵机的0~180度。
以180度角度伺服为例,那么对应的控制关系如下所示:
0.5ms-------------0度
1.0ms------------45度
1.5ms------------90度
2.0ms-----------135度
2.5ms-----------180度
下图演示占空比从1ms变化到2ms时,转角的变化:
2、舵机控制实践
在设计一款亮度可调节灯中使用旋钮电位器ADC采样数值的范围是0~1023之间,但是舵机可接收的旋转角度是:0~180度,故建立转换关系:
所以,旋转电位器ADC数值 X 180 = 舵机旋转度数 X 1023, 故,舵机旋转度数 = 旋转电位器ADC数值 X 180 / 1023。
当旋转电位器ADC数值为0时,带入公式,舵机旋转度数为0;当旋转电位器ADC数值为1023时,舵机旋转度数为180。
遥控舵机程序设计如下所示:
在实际的开发过程中,发现如果直接使用旋转电位器ADC数值 X 180 / 1023,数值会超出变量定义的极限,所以将此步骤分为:旋转电位器ADC数值 X 18 / 1023,然后得到的结果再放大10倍。
效果如下所示:
快来试试吧~
和12岁小同志搞创客开发:遥控舵机相关推荐
- 和12岁小同志搞创客开发:手撕代码,做一款遥控灯
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
- 和12岁小同志搞创客开发:手撕代码,做一款数字骰子
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
- 和12岁小同志搞创客开发:手撕代码,做一款密室自动门
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
- 和12岁小同志搞创客开发:手撕代码,做一款亮度可调节灯
目录 1.PWM呼吸灯 2.亮度可调节灯 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/ca ...
- 和12岁小同志搞创客开发:手撕代码,做一款声控灯
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
- 和12岁小同志搞创客开发:手撕代码,做一款人体感应灯
目录 1.传感器原理 2.代码实践 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/categ ...
- 和12岁小同志搞创客开发:如何驱动红外遥控器?
目录 1.红外遥控器通信原理 2.NEC协议 3.实践 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_3810 ...
- 和12岁小同志搞创客开发:手撕代码,做一款温湿度检测器
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
- 和12岁小同志搞创客开发:手撕代码,做一款火焰报警器
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
- 和12岁小同志搞创客开发:手撕代码,做一款节拍电子鼓
机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_38106923/category_11097422.html ...
最新文章
- c语言如何跟进自定义赋值,用最简单的C语言编写自定义函数之数字后移
- 十、散列表(Hash Table)
- 【ARM-Linux开发】内核3.x版本之后设备树机制
- python葡萄酒数据集_利用python分析红葡萄酒数据
- 图片资源 php,php URL图片资源传参生成对应尺寸图片
- 一、【Collection、泛型】
- 国漫《大闹天宫》4K修复版上线西瓜视频、鲜时光
- 玩转springboot2.x 通过druid-spring-boot-starter整合Druid(Mybatis版)
- 前端开发的难点到底在什么地方?
- 扇贝python课程免费_扇贝新推出的python课程值得买吗?
- webstrom 常用的快捷键
- MATLAB小技巧(7)简单帧差法实现
- 感性负载与容性负载的区别
- json.loads()的字符串中为单引号引发的错误
- WPF动画——故事板(Storyboard)
- VSCode 配置 python环境 相对齐全 有遇到问题欢迎投稿哈
- CAD出图、标书装订、晒图、工程复印、彩色打印/复印
- 最新表情包小程序+前后端去授权版/最火表情包小程序源码
- android中生成excel
- eclipse快捷键——复制当前行到上一行或者下一行
热门文章
- PRIMARY KEY,key,unique key
- matlab绘制erp波形图,eeglab教程系列(9)-绘制ERP图像
- 学编程,有哪些必备的在线教程网站?
- 回归聊天本质!IM即时通讯有哪些好处?
- 计算机环境艺术设计专业,计算机基础课程在环境艺术设计专业中的运用
- 与OneNote 2007共享OneNote 2010笔记本
- express ajax 304缓存禁用,NodeJS / express:缓存和304状态代码
- 利用 Python 计算资产 beta 值和市场 beta 值
- 松江区专利工作试点和示范企业认定政策解读
- 十八、redis6从入门到高级