基于树莓派的舵机控制原理

基于树莓派的舵机控制原理舵机控制原理。分为数字舵机和模拟舵机。数字舵机,又称伺服电机。舵机的控制原理舵机一般由三根线组成。灰线GND,红线电源,黄线信号线。舵机的控制,通过PWM波调制,发出控制电平,产生控制电压与舵机内的电位器作比较,获得电压差输出。最后由电压差,决定舵机转向的角度。SR-1501舵机,是一种不错的标准的机器人舵机。数字舵机的代码编程控制。一般原理:

大家好,又见面了,我是你们的朋友全栈君。

舵机控制原理。

分为数字舵机和模拟舵机。

数字舵机,又称伺服电机。

舵机的控制原理

舵机一般由三根线组成。灰线GND,红线电源,黄线信号线。舵机的控制,通过PWM波调制,发出控制电平,

产生控制电压与舵机内的电位器作比较,获得电压差输出。最后由电压差,决定舵机转向的角度。

SR-1501舵机,是一种不错的标准的机器人舵机。

数字舵机的代码编程控制。

一般原理:

                当在20ms内,连续地通过gpio模拟输出高电平(即PWM波),在0.5ms~2.5ms时间内,舵机就能线性地转角0度—180度,

即(当给0.5ms高电平给舵机,它就会转为对应的0度,当给1.5ms高电平给舵机,它就会转为对应的90度角)。

SR-1501舵机总结:

                基于SR-1501舵机,当给定一个合适的PWM波给舵机,舵机就会转向一个特定的角度。并且舵机会通过内部的调正,会固定在一个角度中,

即(只要输出一次转角的PWM波,舵机就会一直维持在那个角度中,直到下一次产生角度的变化,就算拔出信号线,也不影响角度的固定,除非拔掉电源线)。

基于树莓派16路舵机控制原理。

                 在Linux系统下,由于通过模拟PWM波的输出,需要通过内核控制物理硬件,很浪费时间,从而产生精度不能很好地控制。在linux系统中,

有一些定时器 ,如usleep()的api,settimer(),select().,都可以名义上的微秒级别的api,但是,实际上还是有所差别。

通过定时器settimer(),定义系统中断,产生一个定时周期,来处理16路舵机的控制。为了保持一定精度,由于基于Linux操作系统级别的控制,系统

的运行会执行时间片轮转的方法。所以精度难于控制,因而通过设置程序的优先级,就可以在一定的范围稳定地完成任务。

                              

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151103.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 记一次CTF的USB流量分析

    记一次CTF的USB流量分析最近在研究鼠标流量,找到如下的文章:https://www.cnblogs.com/hackxf/p/10670844.html根据这个师傅的说法,不同的鼠标抓到的流量不一样,一般的鼠标流量是四个字节,第一个字节表示按键指示左键右键,第二个字节表示水平位移,为正(小于127)是向右移动,为负(补码负数,大于127小于255)是向左移动。第三个字节表示垂直位移,为正(小于127)是向上移动,为负…

    2022年5月29日
  • PyCharm P2021.3.2 激活码 注册码【2021最新】

    (PyCharm P2021.3.2 激活码 注册码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月28日
  • JAVA数据库连接池_java与数据库的连接怎么实现

    JAVA数据库连接池_java与数据库的连接怎么实现一般来说,Java应用程序访问数据库的过程是:  ①装载数据库驱动程序;  ②通过jdbc建立数据库连接;  ③访问数据库,执行sql语句;  ④断开数据库连接。publicclassDBConnection{ privateConnectioncon; //定义数据库连接类对象 privatePreparedStatementpstm; pr

    2022年9月17日
  • 微软edge浏览器无法访问此页面_0x80070035无法访问

    微软edge浏览器无法访问此页面_0x80070035无法访问转载于:https://www.cnblogs.com/real9527/p/6705752.html

    2022年9月15日
  • EJB学习一

    EJB学习一一、一个企业级Bean是由几个文件共同组成:1、Bean类SessionBean实现javax.ejb.SessionBean接口;EntityBean实现javax.ejb.EntityBean接口。2、EJB接口(远程接口或者本地接口)和EJB对象远程接口继承javax.ejb.EJBObject接口;本地接口继承javax.ejb.EJBLocalObject接口。3、Home接口(远程…

    2022年9月1日
  • pycharm最新激活码【注册码】

    pycharm最新激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号