|
|
| 当前位置:首页 > 机器人开发 > 机器人舵机的控制:PWM信号,周期是20ms, 脉冲的宽度从1~2ms 秒之间 |
机器人舵机的控制:PWM信号,周期是20ms, 脉冲的宽度从1~2ms 秒之间 |
| 来源:机器人的天空 时间:2026/3/17 |
|
舵机的控制方法其实和我们学过的直流减速电机的控制方法是很相似的。我们都采 用PWM 信号来控制它们,但 PWM 信号的作用又有所不同。控制舵机所使用的PWM 信号是有些特殊的,它的周期是20ms, 脉冲的宽度从1~2ms 秒之间,脉冲的宽度就对应 了电机从0°~180°的不同角度。我们希望舵机转动到哪个角度,就用主控板发出那个角 度所对应占空比的PWM 信号就可以了。舵机的PWM 控制如图11-3所示。当然,在此 之前,舵机肯定要连接到主控板上有PWM 功能的端口才行。
了解这些原理后,下一个问题自然是:该如何编写程序让主控板能够控制舵机的运 动呢?其实也没那么复杂,我们的Arduino 中天然就有了舵机控制的功能,它自带了一个 用于控制舵机的“库”。只要用它生成一个“舵机对象”,然后使用“舵机对象”的函数就行 了。至于什么是“库”、什么是“对象”,就属于C 语言中比较高J的内容了。我们目前在 使用舵机时只要掌握它们的使用方法就足够了。下面是一段Z简单的应用“舵机库”控制 舵机运动的程序 。
#include const int ServoPin=9; Servo myServo; void setup(){ myServo.attach(ServoPin); void loop(){ myServo.write(0); delay(500); //用这个语句引人舵机库 //选用有PWM功能的9号端口作为舵机端口 //创建一个叫 myServ o 的舵机对象 //将舵机对象和端口绑定起来 //让舵机转动到0°的位置 //等待一段时间让舵机转动到位 myServo.write(180); delay(500); //让舵机转动到180°的位置 //等待一段时间让舵机转动到位 } 在这个程序中,我们把舵机插到主控制板的9号端口上,然后让它在0°~180°之间不 停地反复运动。同学们以后自己使用舵机时,只要将舵机插到任何一个有PWM 功能的 端口上,然后将上面程序中的myServo 改为你选定的名字,再之后就可以用write 函数照 猫画虎地控制舵机的位置了。
|
| 相关推荐 |
|
»
机器人挥舞手臂需要的器材:机器人,USB下载线,主控制器 ,舵机
» 机器人巡线挑战赛的器材与步骤:机器人,绝缘胶布1卷,制作货仓和卸货塔的硬纸板,检测传感器 » 灭火机器人的技能:接近火源和灭火装置 » 机器人的舵机:对电机转动位置的精确控制 » 会走迷宫的机器人需要的材料:主控制器,地面灰度检测传感器模块4块,红外避障传感器1个,黑色胶带1卷 » 机器人学会探测障碍:红外避障传感器的模块 » 机器人过丁字路口:并排安装4个地面灰度传感器 » 机器人直线行走的编程-接口、传感器的读数、地面的灰度阈值 » 智能巡线机器人的制作:digitalRead 、digitalWrite 、analogRead 、analogWrite、 pinMode 、delay » 微触开关传感器-很简单的传感器,用程序就能很准确地检测到它的开闭变化 » 为机器人安上转向灯:连接机器人,编写程序,观察现象 » 简单机器人的主控制器与扩展板 » 机器人中最为流行的驱动方式-双轮差速驱动 |
![]() ![]() ![]() |
![]() |
|
|
|||||||||||||||||||||||||||||||||||||||||
| 版权所有 © 创泽智能机器人集团股份有限公司 中国运营中心:北京·清华科技园C座五楼 生产研发基地:山东日照太原路71号 电话:4008-128-728 |