舵机控制编程

简介: 舵机控制编程

博客写作背景----项目中解决的问题

最近遇到一个使用Arduino Uno单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。为啥用labview呢,因为LabVIEW是NI的数据采集创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于图形语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。


下面是我最近写程序的一些知识,进行了部分的整理,发出来和大家一起分享,也方便我以后查找自己的编程过程。


(1)编程知识点–舵机控制编程

利用LIAT函数库通过LabVIEW和Arduino Uno控制板实现对单个舵机转动角度的控制。


(2)硬件连接

将9g舵机的电源线分别接至Arduino Uno控制板上的5V和GND引脚上,信号线接至数字引脚D2上,如图1所示。


11a1b3c03ea94c6db0654ea6ff61ec8b.png


(3)程序设计

本例修改自LabVIEW Interface for Arduino函数库中的示例,位于函数选板“函数”→"Arduino"→"Example"→"Servo Example",修改后的LabVIEW前面板和程序框图如图2和图3所示。


a6191c14aedb4ccbaa07552241f126b1.png

18c3cd9130044221ac34a39b06619e10.png


LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用Servo函数库中的Set Number of Servo和Configure Servo函数节点以设置舵机的数目为1和舵机的连接引脚,接着进入While循环并不断调用Servo Write Angle和Servo Read Angle函数节点先向舵机写入转动的角度值,并读取舵机当前的角度值。最后,断开与Arduino Uno控制板的连接。


点击运行按钮,LabVIEW程序开始执行,通过调节设置角度的旋钮,可以看到舵机随着角度的改变而转动,同时,当前角度值也随着舵机的转动而实时改变。


多个舵机的控制

将两个9g舵机的电源线分别接至Arduino Uno控制板上的5V和GND引脚上,信号线分别接至数字引脚D2和D3上.


修改LabVIEW Interface for Arduino函数库中的示例,位于函数选板“函数”→"Arduino"→"Example"→"Servo Example",修改后的LabVIEW前面板和程序框图如图1和图1所示。


577d6a0d6dfb49c19611c5fc125d3dda.png577b7f9099334170a19d97a4b90ecff1.png


LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用Servo函数库中的Set Number of Servo和Configure Servo函数节点以设置舵机的数目为2和每个舵机所连接的引脚,接着进入While循环并不断调用Servo Write Angle和Servo Read Angle函数节点向指定舵机写入转动的角度值,并读取出指定舵机当前的角度值。最后,断开与Arduino Uno控制板的连接。


点击运行按钮,LabVIEW程序开始执行,通过舵机1和舵机2的调节设置角度旋钮,可以看到舵机1和舵机2随着角度的改变而转动,同时,舵机1和舵机2的当前角度值也随着舵机1和舵机2的转动而实时改变。


目录
相关文章
|
2月前
详解步进电机的结构和三种控制模式
详解步进电机的结构和三种控制模式
149 0
详解步进电机的结构和三种控制模式
|
2月前
串口通信如何控制步进电机转动?
串口通信如何控制步进电机转动?
40 3
|
10月前
第五章:单片机控制
第五章:单片机控制
62 0
|
11月前
|
JavaScript BI
5 控制转移指令【微机原理】
5 控制转移指令【微机原理】
65 0
|
11月前
【单片机期中测试】2.独立按键控制LED移位
【单片机期中测试】2.独立按键控制LED移位
87 0
LabVIEW控制Arduino实现舵机联控(基础篇—9)
本篇博文将通过LabVIEW和Arduino Uno控制板实现对单个和多个舵机转动角度的控制。
舵机应该如果选择?讲讲模拟舵机,数字舵机和总线舵机的区别
舵机应该如果选择?讲讲模拟舵机,数字舵机和总线舵机的区别
852 0
STM32智能小车控制舵机转向
STM32智能小车控制舵机转向
225 0
|
算法 芯片 C++
基于单片机控制的开关电源设计
基于单片机控制的开关电源设计
334 0
基于单片机控制的开关电源设计